Programming knowledge is all you need to create software, but why aren’t you a businessman yet?
Have you thought, why if you, the programmer, possess what is necessary, which was not available to the proletariat in classical production, you are still not a capitalist and are usually forced to go to work in an office and the results of your work do not belong to you?
Of course, we are now considering the possibility of developing common applications that do not require anything special. Applications do not require calculations on giant clusters for training neural networks with specialized calculation accelerators, or software-hardware complexes that accelerate the transmission of messages with low delays, non-CAD/CAM systems related to real production, and the field of work is not regulated by the financial sector or medicine. Remember that not all projects require hordes of developers, microservices/kubernetes/kafka and distributed systems!
All you need for development is your experience and knowledge and any computer or laptop. It’s a good thing that personal computers are now a mass commodity and readily available for a programmer to own. Connecting to the Internet is also almost worthless for an ordinary user. Any access to huge arrays of free and high-quality information necessary for learning, even free GPT3.5 can be your junior developer/QA level assistant and in those areas of development where you lack experience. There is a motivation to create, you can take time out of life for a year to do your own thing and not starve to death if you don’t have loans and mortgages. You don’t even need to buy software licenses if you can use Linux and Open Source software packages. You don’t need a large team, all microservices, bugs and other complexities at the initial stage of developing a new product. It would seem that everything necessary for your business is there. So how does it happen that opportunities to create something unique and independent elude you? Some kind of trap!
And now I will express my vision, why even after removing all the obstacles on the way from the idea to the creation of the MVP of the product, it will still be difficult to achieve the goal. This does not mean that it is impossible, just that most likely you will also run into impassable obstacles that will be allowed only by attracting capital to the project.
Classical capitalism was transformed in the post-industrial era. Now, for information products, the means of production are controlled less than the distribution of the product (Google Play, App Store, Steam) and information to end users. You can develop a cool product that solves users’ problems and makes them a little happier, but it won’t be easy for you to reach users.
For some reason, I will share my thoughts like this, collected over the past year in practice:
The decentralization of Internet resources has turned out to be not beneficial for business and authorities around the world. If you have billions of independent agents, this is unnecessary complexity and overhead to control. As a result, computer networks from underground habitats of geeks have turned into “districts, quarters, housing estates” of the inhabitants of the entire planet. Monopolization began with search engines and social networks, hosting services and continues with many services that people use en masse. If the service is a monopoly over the market, it dictates its own rules and raises prices, this is obvious. What are the consequences: you are an indie developer forced to fight for the attention of the audience with a huge retail chain or software development corporation. The audience is the same, the promotion tools are the same, and the budgets are incomparable.
The signal-to-noise ratio is not in your favor. For promotion in social networks, comments on the resources of profile communities, bots and anonymous accounts have been sent for a long time. In addition, your resources in spreading your information about the project are much more limited than those of bot farms. You can share valuable information, but the reader will most likely start reading from the comments on this article, and there may be information that is exactly the opposite of reality, because you are someone’s potential competitor. And here you should not blame people – in the age of huge amounts of information, everyone tries to save their brain energy and read sideways or start with comments. Almost everything read disappears in the short-term memory, only something that is really necessary for this particular reader is remembered for a long time.
Organic traffic is very complex and time-consuming. Is it easier to buy advertising and convey information about the project to the target audience? First of all, everyone is fed up with this online advertising and immediately there will be less trust in advertising information. Many users have been using browser ad blockers for a long time. In addition, your information will be “viewed” by bots on a par with real people, and you will pay for advertising money for all impressions.
The field of software development is still very dynamic and the entry threshold is low. This creates a huge competition between beginners and end users, it is difficult to filter among all the projects that are useful for him. In addition, rushing into the interfaces and buzzwords of popular frameworks can defeat a more developed idea of your project. Technologies are getting old very quickly, especially on the front end – a mess of frameworks and approaches in UI/UX. It will be very difficult for you alone to keep up with it.
In social networks and search engines, a recommender system has long ruled the roost, the algorithms of which are hidden from you and often change. The eternal highly competitive struggle for the attention of users in an attempt to convey the necessary information. Even if you suddenly become a millionaire blogger on some platform, this does not mean that you will not immediately become a micro-influencer when the algorithms and rules of the platform are changed. Let your information be three times unique and useful to people, they may not even see it.
Sustaining attention. For example, people need your service once every 10-15 years or, at best, several times a year. Even if you told the user how you solve his problems and will be useful to him, then until the next moment when he needs it, he will most likely just forget about you. And your program is not a cosmetic for daily care, when it makes sense to constantly remind people of your existence. All the same, there will be only a few usual Internet resources in the open bookmarks of the browser, and several “super apps” on the smartphone.
So you are motivated, experienced, own the means of production and do not need a team, you have created your program and now you are trying to tell potential users about it.
I have been lucky enough to talk to and work with several gurus in technology and IT management. Among them, one of the people worked at Netflix when they first started. And it was interesting to hear his stories about his miscalculations, how he gave an ultimatum and had to leave the company. On his other attempts to start a business, like the first project, he got so caught up in drafting legal documents that he didn’t even make an MVP. How he opened another business that is difficult to scale. Another colleague is a very strong developer and co-owner of a data processing startup. From him I learned a lot about accelerators and investments, marketing and features of the company’s developer-oriented business.
And I also had to work with negative characters who used manipulation, bureaucracy, created security jobs for themselves and used “skunk tactics” to create a specific atmosphere around them and freedom of action for themselves. They also taught me useful skills, how to do things that are more important to the project and users, and not these shots for personal gain. As it turned out, these skills are very necessary to survive in the online environment.
There is a joke that it is better to take risks at the expense of the employer. There is some truth in this joke – you gain experience without risking bankruptcy. As an employee, I have accumulated a lot of experience at someone else’s expense. This also applies to technologies and team management, recruiting candidates. And one of the valuable lessons taught on projects is to do a dry run of a new project, and since I also had enough experience in distributed systems, the Fail-fast approach is also extremely useful for me. I have a great idea, but I don’t want to go bankrupt because of my miscalculations in an unfamiliar area.
Instead of the original idea, I try very similar to it, but from related areas. Pros for me – I collect typical rakes scattered on the way to the goal, recognize players on the market and their methods of working with competitors, get to know the community, try to reach a similar target audience of users, which can then be partially converted to my future project. I hone and scale technologies and at the same time I don’t risk anything in particular. As a byproduct, I give people free real estate information, albeit a niche one, and I find problems in the data and the developer community, trying to improve what I can in the process. Well, I have now implemented almost all my “wishes” and ideas when I was faced with the search for housing, the only thing missing now is access to current prices for objects on the market and true ratings.
For this, I chose geoanalytics on OpenStreetMap open data and a housing search model. He also shared under the Apache license his working toolkit, which he talked about in “How to put the whole world in a regular laptop” and gave a speech at the PGConf.Russia 2023 conference. Well, almost all my geoanalytics articles are based on it.
Along the way, I collected both constructive and helpful criticism and improved the models, data, and code. And a flurry of negativity from several commercial players in the market, who began to fight with me as a competitor in the information space. I also encountered raids by anonymous people (you can’t even imagine how many rude messages I moderated and rejected, I already learned to do it without emotions on the machine) and an online battle with the “big boss” and the publication of disinformation articles in the central and regional press and harmful advice and provocations of several participants open community working for one of the leading vendors on the market. It’s funny how a hobby project can stir up this business “swamp”. If this is how they fight with enthusiasts, then most likely their business is quite simple and vulnerable even for those new independent developers who deliberately did not run far from the “hello world” system. Open OpenStreetMap data and tools for working with them are available, there are models and experience – freedom in processing and calculations!
I am not saying that everything in our profession is rotten and that new programmers will not succeed in changing the industry, as Linus Torvalds or John Carmack did. I just wanted to share my thoughts and you can learn something useful and new for yourself in the comments. Maybe there are many success stories from programmers who developed and earn money from their project themselves, without the involvement of investors.