DEV Community

Thomas Hansen
Thomas Hansen

Posted on

What is Software Development?

Most software developers will laugh from the title of this article and claim they already know what it is. Most software developers are simply wrong and have absolutely no idea of what software development is. When I say most, I literally mean 99.999% of the world's software developers.

To understand why, we need to talk about "value propositions", which is a weird word for software developers to be confronted with, because they're not used to think about such axioms.

Economising processes

If I can deliver a software system to a company that somehow reduces the resource requirements for said company to perform some crucial business process, I have by the very definition of the term "economised their processes".

There is literally nothing else that matters to the end customer. The customer does not care about anything else - Assuming the customer has a healthy mind and is interested in creating a sustainable company.

This is what the word "economy" translates to, as in "being able to deliver the same amount of value for less resources."

Software development as a profession can literally be summed up with "economising companies", since our primary value proposition is our ability to optimise processes, resulting in companies becoming capable of delivering more value for less resources.

An example use case

I'm a solo entrepreneur delivering AI solutions. One of my products is that I can create an AI SaaS company in a couple of days. This allows my customers to contact me, and have me create a SaaS company for them in a very short amount of time.

One of my current customers gave me a specification and asked me how much I would need to deliver it to him. I gave him my price, and he chose me. The customer had already asked another company for a quote, and they had told him they could only deliver 50% of his requirements, and they needed 20% more money to deliver. Obviously the customer chose me. This is particularly interesting because the other company was in a low-cost country that traditionally should have been able to deliver the same as I can for roughly 25% of the costs. Still, I was less expensive than the other company.

Assuming you can deliver more value for less money, and your customer believes that your quote is truthful and that you're not lying - The customer will always choose you. Always! Literally, 100% of the time!

The only parts that complicates the above, is that some customers might not believe you are truthful, and that you are exaggerating your claims, and such becomes suspicious towards your ability to actually deliver what you promised.

If you can eliminate the customers suspicions related to your ability to actually deliver what you've promised, and you can deliver what the customer wants for less money, using less time, with more features than others - You basically have a financial monopoly on delivering software, and 100% of all software will over time be created by you, and nobody outside of your company will ever be able to find a job.

If you can do that, you've got a monopoly on software development, implying your annual revenue will become roughly 3 trillion US dollars, and you'll become "super rich"

An Economy Example

Patents

The above is a screenshot of an AI function that adds AI agents capabilities to an AI chatbot based upon OpenAI and ChatGPT. It contains 31 lines of code, including its comments. Below you can see what it does.

Patent details

The little green icon in the above output is the parts that invokes my code, for then to transmit the result of the invocation to ChatGPT allowing it to explain to me the details of the patent.

I already have the frontend required to deliver the chatbot to the customer. I also already have SSO and Stripe payments integrations, allowing customers to create a subscription with the customer. In addition, I've got the backend infrastructure to allow me to connect it to OpenAI and ChatGPT. The total amount of lines of code I need to create to deliver the above functionality therefore becomes 31. If I was to use OOP and start from scratch, I'd have to create thousands of lines of code to deliver the same. The above code is Hyperlambda. However, let me ask you a question ...

Do you think the end customer care about Hyperlambda ...?

The answer is of course no. The end customer could not give less of a sjit about Hyperlambda, OOP, OOD, SOLID, IoC, Clean Architecture, DDD, event sourcing, message brokers, NoSQL, etc, etc, etc. The end customer cares about two things, and two things only:

  1. Does it do what he needs for it to do?
  2. What was the price of creating it?

Everything else is 100% completely irrelevant ...

The problem is that the above acronyms are the only thing software developers care about - As in, the only thing we talk about are things such as:

  • CQRS
  • DDD
  • SOLID
  • Event Sourcing
  • OOP
  • OOD
  • OOA
  • NoSQL
  • Design Patterns
  • O/RM
  • Active Records
  • "... put in your favourite rubbish software development buzzword here"

To deliver the above screenshots using "current software development 'best practices'" would require 50+ files, 11 design patterns, three message brokers, and in the end it would add so many moving parts to the system that it would become impossible to maintain. My solution is 31 lines of code, most of which are comments ...

Bullshit Bingo

I refer to this problem as bullshit bingo. The word bullshit bingo originated from politics, where journalists would attend meetings conducted by politicians, with their own bingo scoresheets, and cross of a word every time some politician mentioned some hype word. The objective of the game is to become the journalist that can shout "BINGO" first.

Software development has been an exercise in bullshit bingo for decades. Every 2 or 3 years, some high functioning autistic software developer has an epiphany of some sort, and creates some new rubbish word trying to "improve the way we work." The problem is that our entire axiom of how we deliver software is created on top of a foundation of mud. So improving the way we work today is equivalent to trying to fix the Titanic with duck tape and chewing gum.

Improving our ability to deliver software by 5% is no feat, because by completely rethinking how we deliver software, it's actually very easy to improving it by 1,000,000 times. Just remove all the bullshit, and start hammering out functionality. In the end, functionality is the only thing the customer cares about - And the customer is the one paying for the party, so he's the only one we should listen to.

Do me a favour, scroll up in this article and look at my two screenshots once more. Then try to imagine how you would solve this using traditional software development methodologies ...

If you're an average software developer, my guess is your "solution" would require weeks of software development, possibly months. I created the Hyperlambda function in some 5 minutes ...

Conclusion

I can deliver software 1,000,000 times faster than you. This is not because I'm smarter than you, or better than you - It's simply because I'm using superior tools. If you took an F16 and traveled back in time to the 15th Century, you'd easily become the Emperor of Europe due to having access to better weapons. The same is true for software development; Better tools, more power!

I'm now at the point where I can deliver a fully functioning AI SaaS company to my clients in less than a week, assuming they don't want too much complexity. Every other company I've seen would need months to deliver the same. If you want to talk to me about my "AI SaaS in a Box", you can contact me below. And yes, in case you wondered, I wrote this article not to teach you about software development - But rather because I wanted to eliminate any remaining doubts about my ability to deliver what I promise ...

As to teaching software developers how to create software? I've given up on that a loooong time ago. They will simply never understand, at least not before they're homeless and unemployed, without the ability to eat anything but garbage, watching their own arrogance sink to the bottom of the sea like the Titanic ...

... trust me, I've tried! To see my attempts, read some of my older articles here, and take especially close notice to their comments. It's simply futile to pour tea into a full cup ...!!

Software development is dead. Devs became arrogant and ignorant to learning new axioms, due to an arrogance created by the false belief in what I refer to as "bullshit BINGO!" Well, I don't play that game. I create stuff, and I create it very, very, very fast!

If you want to play bullshit bingo, there are 30 million software developers in the world, and you're free to contact any of these. If you want to create stuff you can contact me below ...

Top comments (1)

Collapse
 
ivan_c065fa7cad8f1005b75a profile image
Ivan

Rename the title to "What is ChatGPT wrapper development"