Make the sfdx cli a little easier to use with some useful bash snippets
Everybody Knows that companies need to have processes, but I wouldn't mind betting that if you work in a middling to large enterprise that you can think of at least a couple of processes that are inefficient, cumbersome or even just redundant. True some businesses have been successful thanks to their process and procedure, but what if your processes are actually hurting your business?
Negating the Benefits of Technology Investments
It is only too easy to fall into the trap of using a process because it's simply been in place for a long time; as I have written before, if you don't update your thinking when you update your tools and technology, then there is more than a fair chance that you're not getting the maximum out of your investment.
When Kris and I worked as consultants on Salesforce projects, one of the deliverables expected by clients would be a document outlining what was going to be built before the build took place. This seems perfectly reasonable until you realise that custom objects and fields can be created on the platform faster than they can be captured in a document. What's more, by building a data structure for real you can test and adapt ideas, gaining valuable insight into assumptions and the feasibility of concepts, saving time and money in comparison to the traditional approach. We built the Drop My Dossier app specifically to make the "build first, document later" approach even faster, but this point doesn't only apply to this scenario.
New technologies can only be utilised fully if you update your thinking and practices to take advantage of them; don't get trapped by tradition.
Some processes are put in place for the convenience of few, but at the expense of many. Support centres are a prime example of this. Many support centres rely on outsourced or non-technical front liners to follow scripts, so that simple problems can be resolved without tying up those with greater technical knowledge or more authority on decisions, whose expertise may be required for more complex situations. It is not my intent to belittle those who work in front line support, I'm merely highlighting the difference in cases such as a customer requiring an extra copy of an invoice versus one where a customer is being threatened with legal action over an outstanding, yet erroneous, bill.
I chose this example because it is something I had to contend with last week; in trying to resolve a problem caused by archaic process and thinking, a particular large Australian telecommunications company generated a fee of $1300 due to the cancellation of a contract that they had created and that I had never signed. Because I couldn't easily reach someone who understood the situation in February, a lot of my time, support time and even a third party debt collection agency's time was wasted, eventually costing all three parties money. lf exceptions had been allowed for in the first level support process then the whole issue could have have been resolved much faster, instead I had to describe the situation more times than I could care to count.
Saving time typically saves money, but that does not mean that all time-saving processes are not costing you more than you are saving elsewhere. Assess your processes regularly.
Not Empowering Your Employees
You should never hire someone you don't trust, and if you trust your employees then make sure you don't have processes that suggest otherwise. This example could have fit neatly as an illustration of either point made so far, but to me it appears indicative of a process existing merely to maintain a level of control that verges on freakery. Simply put, we sell an application for a one off fee of 99¢ , and someone who wanted to purchase it had to hold off for a while because their employer required them to raise a purchase order for it.
The only term that seems suitable for this is madness. This isn't maximising the use of the technology available as the person couldn't make direct use of a simple checkout to purchase and install the app in seconds. The time overhead is considerable, and probably involves the time of not just one but two people, and thus implies a communication component as well; I'd be surprised if the actual cost of the purchase was not increased thirty fold due to this process. However the worst thing about this situation is that it rightly or wrongly gives the impression that the employer in question doesn't trust its employees to make a decision over the spending of a single dollar.
Empowered employees are happier employees, not to mention more efficient. Don't let process and procedure stifle innovative and autonomous thinking.
Processes are important when it comes to consistency and making big decisions that could have a large impact, but do not let them get in the way of being successful. An employee might make a few mistakes and incur costs by doing so, yet those costs are likely to be insignificant when compared to the costs created by poor processes. Don't sweat the small stuff, because doing so is expensive.