With the level of knowledge sharing we have today, it can seem impossible to figure out what’s fact and what’s fiction. There are hundreds of false assumptions about technology alone, but today we’ll be righting the wrongs for software development.
In this week’s blog, we’ll be debunking 5 common myths about software development.
Some programming languages are superior
Every programming language has its place, but there are several languages that can accomplish the same thing. In these situations it helps to look at other factors besides the code itself: how widely supported is the language? How long has the language been around? Are there a lot of developers that can write in this language? Is the popularity of the language trending up or down? Making a good choice on a language requires looking at more than just the technical capabilities.
The more programmers, the merrier
Software development is not an assembly-line. When new programmers are added, they’ll have to be brought up to speed on what’s happening. This means that other developers will spend time training instead of continuing to develop, especially if they haven’t worked together. Not only do they have to learn the product, they’ll also have to learn about the team and the process. You’ll have to be more diligent (and spend more of your time) checking their quality and progress.
However, it is possible to add more developers to a project; it just depends on the situation. If you’re developing software with a clear separation of tasks, then you could speed up development. If you have already worked with those developers before, even better: you know what to expect.
In the end, doubling your developers will not double your pace, even in the best of circumstances. The most efficient teams are always small; think Navy Seals or Jeff Bezo’s pizza rule.
You have to stick to the plan
Planning is a necessity, since creating an application is complex and requires lots of coordination. However, most software projects never go according to the script.
A manufacturing operation can repeat its process for every product it makes, but this just isn’t possible in software development. New conditions and ideas can change at a moment’s notice, so your plan should be adaptable and easy to change.
Once you publish the project, you’re done
Ideally you get your product in front of users early and often in the design phase of a project. This will help cut back on the revisions you’ll need to do once it’s released. However, once the working version of your software is in a production environment, the quest is just beginning. After release, the goal should be to get additional user feedback and adapt as necessary.
Everyone has to be in the same location to create software
Clients, developers, and teams no longer have to be in the same room or even the same city to create successful software. Communication tools like email, chat platforms, and video conferencing allow for seamless sharing of information and ideas. No matter where you are in the world, you can gain access to great software developers.
Which debunked myth was the most surprising to you?