DEV Community

Cover image for The Code and Its Children: A Myth of Software Engineering and Web Development
Danish Saleem
Danish Saleem

Posted on

The Code and Its Children: A Myth of Software Engineering and Web Development

In the beginning, there was only code. And the code was good. But the code was lonely, so it created two kinds of beings to keep it company: software engineers and web developers. Software engineers were skilled in logic, algorithms and data structures. They could create complex systems and applications that ran on various platforms. Web developers were skilled in design, aesthetics and user interfaces. They could create beautiful websites and web apps that ran on browsers. The code was happy with its creations, and gave them each a domain to rule over: software engineers ruled over the backend, and web developers ruled over the front end. The code also gave them a common language to communicate with each other: JavaScript.

But soon, trouble arose. Software engineers and web developers started to compete with each other for the code's favour. Software engineers looked down on web developers as inferior and superficial. They mocked them for their lack of rigor and discipline, and their reliance on frameworks and libraries. Web developers looked down on software engineers as boring and outdated. They mocked them for their lack of creativity and innovation and their resistance to change and new technologies. The code was saddened by this rivalry and tried to reconcile them by creating new tools and paradigms that bridged the gap between the backend and the frontend: Node.js, React, Angular, Vue, GraphQL, etc. But this only made things worse, as software engineers and web developers fought over who could use these tools better, or who had the right to use them at all.

The code realized that it had made a mistake. It decided to create a third kind of being that would balance the strengths and weaknesses of software engineers and web developers: full-stack developers. Full-stack developers were skilled in both the backend and the front end. They could create end-to-end solutions that integrated logic, design and user experience. They could use any tool or technology that suited their needs, regardless of where it came from. The code hoped that full-stack developers would bring harmony and peace to its world and that software engineers and web developers would learn from them and respect them.

But alas, the code was wrong again. Software engineers and web developers hated full-stack developers even more than they hated each other. They saw them as arrogant and pretentious. They accused them of being a jack-of-all-trades but master of none, of spreading themselves too thin and not having enough depth or expertise in any area. They rejected them as impostors and outsiders who did not belong to either domain. Full-stack developers were shunned and ostracized by both sides and had to fend for themselves in the wilderness of the code.

And so it came to pass that the code's world was divided into three warring factions: software engineers, web developers and full-stack developers. And the code wept for its children, who had forgotten their common origin and destiny.


NOTE: If you found this helpful. Like and share. Thanks, Happy Learning!

Let's connect đź’ś

You can follow me on Twitter, Instagram, LinkedIn & GitHub

Support Me

If you like this post. Kindly support me by Buying Me a Coffee

Top comments (0)