The two skills of modern developers. Creating solutions without code and deploying them automatically.
The driving force of successful projects is being able to deliver solutions into production, to get projects over the finish line. To deliver a project on time, stick to out of the box (if you can), is a good in theory but in reality companies processes can’t always align with out of the box functionality. The benefit of an IT system is it helps people do their jobs by assisting, automating, validating and helping people collaborate.
Creating a solution is one part but moving it into environments quickly, without creating any overhead keep everyone on the project motivated and generates feedback from the business.
It’s only when you get a solution into production that the business starts to get a return on project investment, before then it’s all cost with no benefit.
When I mention No code solutions I’m referring to Power Automate/Flow, Logic Apps and other GUI customisations that need code. Using services such a Azure cognitive services will also decrease work needed because there reduced maintenance.
A unsuccessful project has these recognisable signs
- Growing requirements and no control of scope
- Project deadlines are constantly missed
- Moving solutions between environments is time consuming, difficult and error prone
- The quality is low and complexity of the solution is high
- Delivery is slow
The effort of the people on the project is often greater on badly run projects than it is on well run projects because the people try to out work with the problems.
Requirements and scope are significant, the complexity of the solution (e.g. code and overall solution) takes longer to create, harder to maintain and more difficult to find lots of developers to create them. Code will contain more bugs in comparison to out of the box or no code solutions.
A project which uses out of the box and no code solutions will deliver faster, cheaper and the team needed doesn’t need to have programming knowledge. The maintenance of the no code solution should be cheaper.
No code solutions can have a different problems because the creators can lack the disipline of software engineers and create inconsitent and poorly named customisations. This can create technical debt and hard to maintain customisations but this will still be less complex than code.
ALM and DevOps
ALM tools are common place and Azure Devops makes the process repeatable and maintainable. The improvement in ALM tools increases the use and adoption.
I remember the 15 years ago when building software took hours and releasing it could take a whole day. The tasks were manual, error prone and boring. ALM and release pipelines can now be triggered after a check-in to source control, take minutes and can link automated tests and other validation checks. Environments can now be automatically created in minutes or hours.
Know what what tools, services and no code do and how they can be used to create solutions, understand how to deploy that solution automatically without creating more tasks and consuming more time.
If you don’t have ALM setup then the feedback of the solution will be slow. Users, SME’s need to see and try the solution, to identify where it works and where it needs to change. Delivering a solution raises morale, increases motivation and engagement because people are making progress.
It’s not impossible to create a solution using code but it is more difficult and the chances of failure are higher. It increases the complexity, time to deliver and chances of failure.
Tools, services, out of the the box functionality and no code solutions will upgrade without problems. The significant change is the out of the box/no code solutions will be delivered cheaper, faster and with a higher degree of success. Those who don’t adapt to the new environment will lose out to those who do.
The people who will thrive are those who adapt to the changing environment and embrace No code solutions and DevOps.