The difference between community-driven and company-driven frameworks
A brief overview of web technologies and who manages them
By Niccolò Maria Menozzi
The web development framework world is a very crowded one. There are bottom-up technologies, made popular by the volunteer contribution of thousands of users and others developed by the IT departments of private companies. In this article we’re going to explain some of the differences between community-driven and company-driven technologies.
We have already spoken about frameworks, so if you don’t know anything about the topic, you can read our article What is a framework? More specifically for our sector, it is software used by web developers to develop online tools that can be accessed with a web browser, the web apps.
Community-driven frameworks come from the independent initiative of one or more founders that set the basis by collaborating with each other. Community-driven technologies are often open source projects, with the aim of making them freely accessible to a wide range of professionals.
International events such as JSConf are opportunities for the frameworks to show their potential. Developers are very active on web platforms such as Twitter, Reddit and Hackernews and word-of-mouth helps to amplify the spread of the more promising technologies.
If the project is successful among developers, new professionals will join the community to use the framework and bring their contribution.
When the project becomes quite well known, the team of creators may decide to organise dedicated conferences to announce news and talk about the achievements reached. Dreamonkey for example, was among the speakers at the first official Quasar conference (you can read our review Quasar Conf 2020: all the latest news).
The founders often coordinate the community, but the frameworks grow with the effort of all the volunteers that use it for their projects, both for professional private use.
Once a main roadmap has been set out, all the activities for revision, bug fixing, implementation of new features and so on are left to the free enterprise of individuals with collaboration between developers being encouraged.
The community usually interacts on platforms such as Github. In this way, those who coordinate the project can keep the framework codebase up to date with all the best user-produced products that have passed the peer review of the others. This reduces the possibility of encountering malfunctioning or incompatible updates.
The company-driven (also enterprise-driven or corporate-driven) frameworks are created and managed by private companies. As opposed to the community-driven versions, the maintenance and improvement are the responsibility of a development team employed by a company to which said team answers.
If certain IT needs cannot be met by existing market services and if the company wants total control over its technological stack, the IT department develops a tailor-made framework so they can have their own development environment for exclusive company use.
A famous example in our sector is Angular, the official Google framework.The American company designed the framework to create many of their web platforms after which Angular was released free for independent use by other developers.
Another very well-known company-driven framework is React, created and managed by Facebook for the development of the famous social network, then also made freely available.
Community-driven frameworks are generally non profit initiatives and those who collaborate do so on a volunteer basis. However, the amount of maintenance and update work requires contributions to help support the more active members. This helps to maintain a good quality standard.
These contributions come in the form of one-off or recurring voluntary donations from users and companies that use the framework or fundraising campaigns aimed at covering expenses for specific needs (such as creating a new feature).
When a project is particularly structured it may integrate paid secondary services, like technical support for example. These services do not affect the free nature of the framework nor its main resources, but offer complementary competences to companies and freelancers who wish to speed up certain development processes or need consultancy services.
With company-driven frameworks for corporate use, instead, there is no real business model. The technology is a simple internal company tool to develop other software that makes up the service sold to the client.
However, it is not unusual for a company-driven framework to be released externally as a service for freelance developers and other companies. In these cases income is generated under a set licensing system.
The Dreamonkey stack
To develop our clients’ projects, we use both kinds of technologies. Our experience over the years has taught us that the two systems have pros and cons, but we would not be completely honest if we were to say that we believe they share the same potential and ethical values.
At Dreamonkey we are great supporters of the community-driven projects. In our opinion they are more transparent technologies. They are mostly concerned with the needs of developers and leave more freedom of movement, which means more customisation for the clients.
Our stack includes Quasar, Vue and Laravel (community-driven) and Angular (company-driven). If you want more details on these technologies, take a look at our frameworks.
Whenever possible, we involve our clients so that every project contributes to the growth of the frameworks we use. We have even become Platinum sponsors of the Quasar framework to support it with our work! If you would like to know more about how this software can help your company contact us.