Demystifying the myth: No Code = No Development
Gemini generated image

Demystifying the myth: No Code = No Development

Despite the significant rise of LCNC and CD in the last 2-3 years, many companies still hold misconceptions about LCNC and the requirements for Citizen Developers.

There are a few misconceptions, myths if you will, but one of the key and core misconceptions is that No Code = No Development.

Is it? Is No Code = No Development?

No! No Code does not mean No Development! On the contrary, it is about development using No Code, meaning development without writing code.

Confused?

According to the Project Management Institute (PMI): “Low Code / No Code (LCNC) development platform - is a visual software development environment that allows citizen developers to drag and drop application components, connect them, and create an app.”

LCNC platforms facilitate development by eliminating the need to write code, but they still require development thinking skills, which is the key challenge for new Citizen Developers and companies entering and looking for CD.

Put it simply:

·????? No need: to understand code or technology

·????? Still need: develop thinking skills and practices.

So, what are these “development thinking skills and practices”?

Put simply, and at the bare minimum, it requires the ability to logically understand, plan, and execute how a given input needs to be broken, processed, manipulated, and transformed to generate a desired output/product/service. This requires the ability to analyze, design, assemble prototypes, test, execute, and more.

Following are some developmental thinking abilities and practices:

  • Systemic thinking and problem-solving-oriented thinking
  • Understanding and breaking down a problem into parts and stages as well as the ability to think multidimensionally (i.e. data, logic, form, system, etc.)
  • Ability to understand and think logically, i.e. (x > y AND x > z) OR (x >= y AND x <= z)
  • Creativity and an open-minded
  • Execution and not just thinking: persistence and fearlessness of failure - test application/prototype/trial and error/”debug”, etc.

These are just some of the abilities required for development. The focus is on development thinking skills, not on writing code or understanding technology. The emphasis is purely on the cognitive aspects of development.

The main challenges for Citizen Developers (CDs) lie in detailed planning, reasoning, and overcoming the fear of failure. These challenges are not related to any specific LCNC platform, tool, or technology, but rather to the ability to think in a development-oriented manner.

Want to have an exercise to showcase this?

  1. Take an idea you want to digitize and turn into an app.
  2. Set aside your LCNC platform and tools, and open a Word document.
  3. Write a detailed description of the steps, logic, and conditions required to transform inputs into outputs, as if the Word document were your 'app-code'.

  • Assume the final app will be executed “word-by-word” as explained in your Word document.

Applying this exercise will showcase:

  1. It takes time! Even if not much overall (depending on your use case), but it still takes extensively more than you originally assumed.
  2. It requires step-by-step planning and reasoning: task breakdown, chronologic order, dependencies, etc.
  3. It requires mature and complete logic: cascading, and/or, mixture etc.
  4. It will require you to look into your “dead spots” as well as the “what-if” type of analysis, those paths that you normally do not consider as they are not in the “happy path”. Here is a sample: Original step: “Get the customer data”. Dead spots: what if cannot connect to the data source? What if customer data is not found? What if more than one customer data is found? Etc.
  5. You’ll find that even your most simple ideas have some complexity which requires proper steps and planning. Those of you who know me – probably heard me say at least once: “Any application/idea can only be simplified within its own complexity” also known as the “art of simplicity” ??

Bottom line

LCNC platforms move the code challenge and many of the technology challenges and heavy lifting, and greatly simplify them to the level of UI Wizards, etc., as well as help in understanding and separating the dimensions and the relationships between them (process, form, information, information source, etc.) - but development thinking is still required.

Note: it is fair to say that the LCNC platform does differ in the way they move code away, the level of abstraction, and more, which can eventually impact the learning curve and some of the thinking skills needed etc.., but this is for another article…

And what about those who don’t have “development-oriented” thinking?

They will get there! The beauty is that it is a muscle, and like any other muscle, it develops over time with proper training, practice, and experience. Just like with anything else, whether it is heavy weight lifting, running, music playing, or even programming. Even professional developers started with simple tasks, like writing a 'hello world' program, and gradually advanced as they gained more practice, skills, and knowledge.

Remember, complexity is a relative term, and the bar keeps rising as you develop your 'muscle.'

Think of it this way: if you move from walking to running and aim to run a 10K, half-marathon, or full marathon, you don't start by running the full distance. Instead, you begin with 1K, then 3K, then 5K, and gradually increase your distance until you reach your goal. During this practice and training, you not only build the strength and capacity to run a marathon but also learn how to train effectively. You discover if you're a morning or night runner, whether you prefer road or cross-country running, if you like running in groups or solo, how to diet, understand your body, and develop speed and rhythm. These experiences ultimately enable you to run long distances, as your body and muscles adapt and build strength and capacity.

Here is another analogy.

  • Imagine you've always wanted to learn the guitar, but were intimidated by the right-hand and left-hand coordination, fingering, and chords—these represent our code-writing skills.

  • Now, a new digital guitar has come out, eliminating the need for fingering, chords, and hand coordination—this represents our LCNC.

While making music has become much more simplified and accessible, you still need to have 'musical thinking and language,' such as an ear for music and, an understanding of tonality, progression, rhythm, etc.

There is an important lesson here! Running a marathon is more about your training routine and practices than the actual marathon itself, especially if you aim to be a sustained runner. This is similar to playing a concert or building an app.

As an organization, how can you win this?

Build the training and practice routine!

  1. Set a community. Create a supportive community for Citizen Developers (CDs) within your organization. This community can serve as a platform for sharing knowledge, exchanging ideas, and providing mutual support. Encourage regular meetups, workshops, and forums where CDs can collaborate, learn from each other, and celebrate successes.
  2. Create training and educational artifacts and programs. Prepare gradual training programs and resources, starting from the basics of your LCNC tooling oriented and gradually moving up the scales to meet your specific environment, patterns, and needs.
  3. Shadow. Make sure to allow CDs to participate in the project to gain practice with clear mentoring/sponsorship.
  4. Set your catalogs! Most LCNC offers too many features and options which can be overwhelming and confusing, creating stressful ongoing decision-making, especially for newcomers, but not just!.? Spend some time creating your catalog/standards for various aspects of the application resources, i.e. UI, Integration to your various systems, security etc. Formulate this into simple-to-use and follow checklists, do & don’ts, and use-cases with clear samples for each. Aside from this being a massive boost and accelerator for success, knowledge, training, and moving up the scale, it is also highly important, as it will allow you to standardize, reuse, and govern your development across teams and organizations.
  5. Govern! Governing should start with the first App, and even before it. Do not wait for the XX App mark, as this will be too late and hard. Have clear measurable KPIs. Set the rules, norms, language, and practices and make sure they are communicated and clear to all. Focus on the value of your governance elements generate by the CDs going up the scale. If it’s simple and value-oriented – you’ll have a community of success, socially working together, instead of being governed by IT.

In addition to the above, there is one more crucial aspect that applies to everything mentioned, and I cannot stress enough its importance: managing expectations. This cannot be taken for granted, as it is far from obvious. It is critically important because Citizen Developers (CDs) are often heterogeneous groups with varying skills and perspectives. Avoid over-committing and give your team and company the time to adjust, learn, and grow.

Does GenAI Have Any Part in This?

Yes! GenAI will play a key role in onboarding and integrating LCNC for Citizen Developers (CDs). It allows CDs to use natural language prompts to design and build their apps and artifacts, expediting the LCNC and CD initiatives. This will increase the pace, range, and depth of automation and innovation. While GenAI will help ease and reduce some of the development skills and practices, especially for newcomers and during their initial projects, it will not eliminate the need for these skills and practices. More on that would probably be in a future article…?

Integrating Citizen Development into Organizational Practices

Understanding the development life cycle and integrating it into an organizational environment is a challenge for both Citizen Developers (CDs) and IT Development Centers of Excellence (IT Dev COEs). It involves establishing a correct multi-departmental development process for diverse groups of CDs, while ensuring they receive proper support and guidance and adhere to best practices such as governance. Using the Project Management Institute (PMI) methodology for corporate Citizen Developers is highly recommended. This methodology focuses on tools and methods related to management concepts, implementation, and leverage, and it is not tied to specific LCNC tools or vendors. For organizations aiming to embrace Citizen Development, understanding and applying these principles is as crucial as Agile Development is for traditional development teams.

Conclusion

In summary, while LCNC platforms simplify the technical aspects of development, they still require some level of development mindset. By focusing on developing these thinking skills and creating structured training, guidance, and governance practices, organizations can effectively leverage Citizen Development and LCNC tools. Remember, development is a muscle that grows stronger with practice and experience.

Eckhard Hauenherm

Unternehmensinhaber Dr. Hauenherm++

4 个月

You got the point I always try to explain to customers and participants in courses. LCNC is still Development, so you need to understand the logic of your app. I appreciate the Word excercise. Thanks a lot.

Bastian Rang

Coaching for Citizen Development, AI & Solution Architecture | #callmebymyfirstname

4 个月

I really like the No-Code with Word example. Thanks for sharing your ideas.

要查看或添加评论,请登录

Yaniv Levi的更多文章

社区洞察

其他会员也浏览了