Update: We have posted updated roadmap and other details for EasyEngine based on all feedback we have received. Thanks for all your feedback. 🙂
Note: Be assured that our current feature set of EasyEngine will remain free. Even if we decide to refactor EasyEngine on new platform.
If you are following the EasyEngine project for some time, you may have realized that development has slowed down. We missed the deadline for the last few milestones.
To get the project back on track we need to do go through some major changes – technical as well as non-technical. As this could affect you, we thought it is better to get some feedback from you.
Mainly we need answers for following questions:
- Future Development Strategy: Which programming language you would like to see EasyEngine developed on in future?
- What do you think about business/revenue models for EasyEngine?
I will explain these one by one.
Note: EasyEngine commands will not break and will continue to work the same way. Including
ee update command.
We are planning to refactor EasyEngine in higher-level programming language. There are many reason to do this.
It is getting increasingly painful to manage large/modular codebase in bash. Testing is hard. Implementing plugin architecture might be harder.
With every small enhancements, we are spending a lot of time in regression issues. Every time we add a subcommand or even add a flag, we need to spend a lot of time.
Another reason to go for higher level language is – availability of skilled programmers. I personally feel bash as a programming language isn’t taken seriously by developers community.
Most programmers I interviewed were good at writing install scripts, but they were blank when asked about designing a modular, extendable, testable big project in bash.
So we need your opinions about programming language choice. If we have to leave bash behind – which programming language you would like to see EasyEngine version 3 being developed?
Before you jump to any conclusion, let me clarify that current feature set of EasyEngine will remain free. Even if we decide to refactor EasyEngine on new platform.
Until now, EasyEngine was developed mostly in free time. I want to have a dedicated team on it. We already have 3 developers and we are willing to hire many more on the EasyEngine project.
The problem with current model is – EasyEngine project becomes a secondary priority. We first have to focus on serving our paying customers for obvious reasons.
We tested this model with our rtMedia project and at one point, there was so much hard to work on actual project that we abandoned it. But almost a year, we went freemium and since then developing the project has been very smooth ride.
After a lot of thinking, we came up with following new revenue models.
It will be designed for system-admin who do not want to pay high for our premium services but still require some 1-on-1 support with guaranteed response time on ongoing basis.
EasyEngine free version with some premium features delivered as EasyEngine modules (plugins).
This model might be attractive for other developers as well. Hence choice of programming language for next version of EasyEngine is crucial.
Apart from command-line premium modules, we are also planning to start work on web-based version and mobile-apps.
Web-based version will be likely delivered as a service with self-hosted on-premise options for enterprises. It will be much more than just web-interface to EasyEngine commands. That is why it will take big deal of money to develop it!
I am serious enough about this web-based version that for the first time, I am even considering going for external funding! 😉
Be it web or mobile app, both will be using well-documented REST API for project. Hence, REST API is another reason for doing things in high level programming language.
Let us know what do you think about new revenue models?
We reassure you that features you see in today’s EasyEngine will remain free and accessible with same easiness as of today!
Please send your feedback as soon as possible. Because these are the kind of changes which has potential to change course of this project forever.
(image credits: xkcd)