📜 ⬆️ ⬇️

Looking for an idea for an open-source product



In my spare time, I have been creating an open-source framework for writing desktop applications, mostly business-oriented (ERP, WMS, CRM, etc.). Inspired by the reading of the article on the verification of business ideas , I would like to state some of my thoughts about this whole undertaking and hear your feedback. What I would like to hear from you:

Open-source projects also require money.


By itself, the idea of ​​open-source looks very attractive when you act as a user of the product :

If you now look at open-source from the point of view of the project team members , it turns out that all the above advantages require constant work of the project participants:

What did I want to convey by writing these pretty obvious things? A very simple idea is that in order for an open-source product to be high-quality and actively develop, it still needs to be well funded , which is why most large open-source libraries, frameworks and programs are developed in one of the following ways:

All other "ways" of the existence of an open-source project like donations (donate) of users do not work very well, which, for example, is well demonstrated by the story of OpenSSL , when donated money was not even enough for the salary of two developers, which ultimately resulted in the critical vulnerability of heartbleed .

Where did the idea come from



')
A couple of years ago I made an attempt to open my own business in an industry unrelated to IT, but for various reasons it did not go. Everyone knows that even the smallest company in our country is legally required to keep accounting records and my company was no exception. For the purposes of self-education, I decided to conduct accounting myself. I learned in advance from a friend of an accountant which accounting programs of a program can be suitable for a newly opened company in terms of price - functionality.

According to the accountant, the simplest version of 1C was a good candidate. It cost something around 3,000 rubles. Of course, I eventually bought it, but before that I also looked at alternative options. From box products, nothing sensible for the same money was then found (although now it seems to me that I was not looking well enough), but I also looked at cloud solutions for small enterprises (like My Business or Kontur. Accounting ), which were gaining popularity then . The cloud did not suit me for at least two reasons :

Thus, I became the owner of the license for 1C. Simplified. I will not describe in detail my not very pleasant experience with 1C, especially since many of the shortcomings of this program have recently been described in the article . First of all, I am confused by several things :


Time to act




This and much more made me sad on dark evenings in front of a 1C screen. In the end, I decided to try to write a platform that would not have the drawbacks of 1C, and, perhaps, in the future, write on it some alternative to 1C. This is what my technology stack looks like:

In general, as you understand, it also takes time to conduct experiments and select technologies, especially if all this is done in the evenings and on weekends, so immediately before writing the application code I arrived two months ago. What was done at the moment :

Seven times measure cut once




As you have probably understood, I set myself a rather large (perhaps even too large) task - to write something that could completely replace 1C for small enterprises, but at the same time:

How do I see myself solving these problems :
  1. The disadvantages of 1C are leveled using the correct technology stack, which I mentioned above, as well as the correct approach to development, based on the widespread use of CI and covering critical parts of the system with automatic tests
  2. The system kernel and key libraries are published under a free, but NOT copyleft license (for example, Apache License 2.0) on GitHub.
  3. The application is distributed as follows: a set of basic accounting modules like a bank or working with staff is free for everyone, but specialized modules like reporting or production also have open source code, but are sold by subscription for reasonable money. Subscription is once a year for updates, i.e. if you unsubscribe, the program will not stop working, but over time it may lag behind the changes in legislation, the forms of documents may change, etc. Each user has the right to choose a subscription to an arbitrary set of modules in accordance with his needs. Thus, you do not have to pay for the extra functionality immediately and buy it when you need it.
  4. Since the entire technology stack is open, nothing prevents other developers from writing their own modules and selling them by subscription. At the same time, the service of checking the code of third-party modules by the developers of the system’s core becomes available, which is done for a reasonable fee.

It is clear that you need to start with a minimally working prototype. I believe that the minimum prototype should contain the following accounting modules :

Recently, I came to the implementation of accounting functionality in the application and then looked at that very lecture of Arkady Moreynis . This lecture is very sensible and corresponds to what I read and heard before, so I decided to double-check what other accounting programs could be used by small companies. It turned out that in fact there are many accounting programs from various developers. Of course, giants like SAP or Oracle do not fall here because of their high cost. Serious desktop programs include the following:
  1. 1C
  2. Buhsoft
  3. Sail
  4. BEST
  5. Info Accountant

All of them work only under Windows, but at the same time 1C has a client for Linux. In addition to these supported and less updated solutions, there is a huge mass of small unsupported programs from different manufacturers. I really do not want to become another such program, so I’m not quite sure if I can, having solved the 1C problems described above, create at least some competition for the listed companies, because, obviously, this is a very competitive market. In addition, if you follow the logic of Arkady Moreynis, then you should not climb into such an overpopulated market, but you should look for your niche, which is correct. In this regard, I have great doubts whether I should continue to do bookkeeping or should I switch to something else?

If you do not go beyond the scope of applied business solutions, then I see a couple of possible ideas :

I really do not want my work to be wasted. Who cares to see the current version of the code without documentation and comments, you can click here . Thanks to everyone who read to the end!

Source: https://habr.com/ru/post/286288/


All Articles