Software is about people, not code (2020)
Software development prioritizes understanding human needs over coding skills. Successful projects depend on user engagement, collaboration, and communication to ensure solutions effectively address real-world problems.
Read original articleThe article emphasizes that software development is fundamentally about people rather than just code. The author reflects on their early career, where they believed that writing code was the most critical aspect of their job. They engaged in various activities to improve their coding skills, such as creating style guides, researching technologies, and participating in discussions. However, they eventually realized that the success of software projects relies more on understanding and addressing human needs than on the code itself. The author notes that software is created to solve real-world problems for users, who often do not care about the underlying code. The key takeaway is that effective software development requires collaboration and communication with users to ensure that the final product meets their needs, rather than focusing solely on the technical aspects of coding.
- Software development prioritizes human needs over technical coding skills.
- Successful projects require user engagement and feedback.
- Beautifully written code is ineffective if it does not solve real problems.
- Collaboration and communication are essential in software development.
Related
The software world is destroying itself (2018)
The software development industry faces sustainability challenges like application size growth and performance issues. Emphasizing efficient coding, it urges reevaluation of practices for quality improvement and environmental impact reduction.
No Matter What They Tell You, It's a People Problem (2008)
The article emphasizes the crucial role of people in software development, citing teamwork, communication, and problem-solving skills as key factors for project success. It highlights the importance of job satisfaction and team cohesion, underlining the significance of positive personal relationships within development teams.
My pet theory of how great software gets started
The theory discusses how exceptional software emerges from passionate communities. Power users delve into software beyond practicality, inspiring hackers to create innovative solutions, shifting software from tools to passionate creations.
This behavior is by design
The article emphasizes that software design is driven by intentional human decisions, highlighting the impact of design choices, unintended glitches, and the ongoing human influence in AI development.
The 30-Year-Old Problem Still Haunting Developers
Software development faces persistent challenges like effectiveness, efficiency, and robustness, largely due to human factors. A holistic approach integrating people, processes, and technology is essential for improvement.
Of course, life is about people. Business is about people. Plumbing is about people.
But what makes software special is code.
And this sentiment leads to horrible conclusions.
If software is about people, not code, who would you expect to manage it better - an engineer whose undergraduate and graduate training was in code, or a business MBA whose training was in people?
If software is about people not code, then who should be prioritized, management who is managing people, or engineers writing code?
This is similar to the Jack Welch mindset of buisiness are more about playing financial games than building great products and it has resulted in the doors blowing off of airplanes in flight.
Trying to make jr engineers realize this right away (or treat code as an afterthought) is bound to create terminally junior engineers, or worse - senior engineers that simply can't code.
The sentiment expressed in the article is well appreciated by people capable of receiving it and entirely missed by many developers who cannot. While the distinction of people and code is valid it’s not really the problem. The problem is deeper, it’s self orientation versus communal orientation.
A self oriented developer will focus on things like perceptions of easiness and solutions written by strangers. Communal oriented developers will focus more on architecture and documentation because they want the internals of their work to be receptive for other people.
More than knowing what to do, we know what not to do - a perk of having donkey's years behind us.
You have to read the code from last week, last month, last year...
Related
The software world is destroying itself (2018)
The software development industry faces sustainability challenges like application size growth and performance issues. Emphasizing efficient coding, it urges reevaluation of practices for quality improvement and environmental impact reduction.
No Matter What They Tell You, It's a People Problem (2008)
The article emphasizes the crucial role of people in software development, citing teamwork, communication, and problem-solving skills as key factors for project success. It highlights the importance of job satisfaction and team cohesion, underlining the significance of positive personal relationships within development teams.
My pet theory of how great software gets started
The theory discusses how exceptional software emerges from passionate communities. Power users delve into software beyond practicality, inspiring hackers to create innovative solutions, shifting software from tools to passionate creations.
This behavior is by design
The article emphasizes that software design is driven by intentional human decisions, highlighting the impact of design choices, unintended glitches, and the ongoing human influence in AI development.
The 30-Year-Old Problem Still Haunting Developers
Software development faces persistent challenges like effectiveness, efficiency, and robustness, largely due to human factors. A holistic approach integrating people, processes, and technology is essential for improvement.