Conference Summary: ERPNext for Everything

Over 150 people attended the third ERPNext Conference from more than 10 countries. Over two days, we had some amazing discussions, shared feedback and tips and had a lot of fun! This conference was clearly an order of magnitude bigger than the previous conference in terms of the attendees and talks (don’t miss them!).

Most of the people who came, had come to meet other developers and understand the vision and direction of the project from the core team. Over two days we shared and discussed how we plan to take ERPNext forward and enable contributions. Everyone who I talked with was in agreement with the open vision and energized to get started on this new path, lets just call it “ERPNext for Everything”

ERPNext for Everything

Just before the conference we had a lot of internal discussions on what should be the direction for the product. We saw what worked in other open source projects and what did not work. We took a critical look at our strategy to make “apps” and realized that it was not working. There are several reasons.

  1. ERPNext is a fast evolving platform and the apps, even those made by us, were being left behind. The process of making separate branches and releases for each of the apps was not working out great.
  2. Having several (free or paid) apps is bad user experience. If the app eco-system grows, we realized there will be a bunch of un-maintained, competing, paid apps that will turn off users. Imagine going to Wikipedia and finding a paywall (Pay to read) on certain pages.
  3. Having everything in the core product, enables re-use and standardization.
  4. Once a developer makes a contribution, they do not need to worry if it will be “upgrade ready”. Because once a feature is in the “core”, it will be maintained by the core team and community

Once we explained this to the developers, everyone agreed that was a great idea. Then there were a bunch of follow up questions on best practices and what makes something core or non-core.

What Goes In Core?

The simple rule-of-thumb is, if what you are making, can be used by other users, then its core. For example, if you are making a new Kanban view, or a new filter widget, or fixing certain data structures, or adding better email integration, or integration with a phone system. All this can be used by someone else. This can be core.

Domains are also core. If you are building modules for schools, or healthcare, or non profits, or agriculture, or advanced manufacturing, these become part of the core too. These can be small features or reports too.

Localizations like Tax Reports, Chart of Accounts, API connectors to government database can also base used by everyone and are also core.

Integrations to third party services like Payment Gateways, E-Commerce sites and platforms like Magento, Shopify, Amazon and others should also be a part of the core, since everyone can use and maintain them.

Removing Bottlenecks to Contribution

Now that we have identified what goes in core (almost everything!) we need to remove the bottlenecks to contributions. For that we have identified some things we will start doing immediately:

  1. Encourage small pull requests: Smaller pull requests are easy to review and merge. If someone wants to contribute a large feature or module, we will encourage them to break it into small parts. This will make sure that everyone sees progress (release!) and the new additions also get tested as they get built.
  2. Increase the number of maintainers: Since we are a small team, we cannot review all pull requests. To fix this we will invite more maintainers from the community who can take ownership of reviewing requests in their areas of expertise.
  3. Spend more time reviewing than writing new features: Till now most of our energy has been spent on bringing ERPNext to this level, now its our time to change our role and spend more time in guiding and helping other users.
  4. Encourage participation in all areas including documentation, test cases, design, demos etc: Contributions do not always have to be in code. There are lots of users, domain experts who can help in areas other than documentation and we need to identify more ways to encourage the non developer community.

Domain Experts

As we identified, the best features get written with beta-testers and users in the loop. To build the next set of features, we need to invite domain experts from each field (manufacturing, accounting) etc to propose the road-map and also help in beta-testing and feedback. To do this we will plan out each minor release (7.2, 7.3 etc) and have domain experts help us group issues. To make this possible, we are planning to start weekly hangouts with the community. In these hangouts we will propose a topic and invite domain experts to share their views. We will then convert them into GitHub Issues / Milestones and then assign them to developers (within Frappe or the community).

No Paid Apps

Another big decision we made over the conference is that we will not encourage Paid Apps. Paid Apps are generally bad, including for a large number of developers. Very few developers actually make money on Paid Apps and this makes most developers choose this as a monetization model. For the end user, finding a feature in paid apps in a community is like hitting a paywall in Wikipedia.

Also moving away from paid apps will open up the community to collaborate a lot more. There is lots of money to be made in services, hosting, training, implementation, customizations, paid developments etc. Let us focus on building sustainable practices rather than trying to make money from licenses. Paid Apps are anyways disallowed by the General Public License.

Come Be A Part!

ERPNext has grown beyond a simple open source project to a thriving community. Hearing speeches from the community of users and service providers that ERPNext has made meaningful impact on their lives has been truly inspirational. The genie is out of the bottle and there is no going back.

We are all a part of the sharing economy that is transforming how technology is impacting society. With Wikipedia we created a knowledge resource, with Linux we created a common platform for computing devices, with WordPress we created a platform for serving websites, likewise, with ERPNext we will create a resource organizations all over the world can use and contribute to, and one that is owned by all of us!

A big thank you to everyone who made this conference a big success!

41 Likes

Hello,
I’m new in ERPNext, I was not on the conference… but I like what you say in this post.
Great decisions, I hope that you (team) will be consist with it.

1 Like

Amazing stuff.I couldn’t agree more with your decisions. Let’s keep the system open. Thank you!!!

1 Like

It was through conference only that I learnt more about ERPNext but definitely worth attending it - i must say. Thank you so much to the Frappe team - hats off to their team spirit and big thanks to all community members who shared their experiences.

3 Likes

I watched a large part of the web stream for the conference (couldn’t convince my boss to pay for a flight half way around the world), and was very impressed with what was discussed. I’m especially interested in how ERPNext plans to incorporate the domain experts into creating road maps for the modules.

One of the challenges I’ve encountered (being a community member that tries to contribute to the core code) is that there isn’t much transparency in where the product is going until it’s pretty much already developed. You guys are a small team and the product you’re creating is awesome, but I think having the community help set priorities within each module on how it can be improved / which features to add will be a big step forward. I also think that will help the team get new features right the first time (the RFQ document is a great example of soliciting feedback from the community). I really think these milestones should be established on a module by module basis.

I’ve been really impressed with ERPNext and am looking forward to continue contributing.

4 Likes

Just made it back back to the US from the conference.

Congrats frappe/erpnext team! You guys are heading in all the right directions. It was a pleasure to meet so many talented individuals.

As far as contributions, I’ve already started doing pull requests on a few bug fixes and there will be more help coming from us in the future. We would be happy to help in any way.

4 Likes

Nice to know about this decisions. It is towards the right spirit of open source product.

Please keep consider me for any sort of contribution as domain expert for any module, especially for CRM, Manufacturing & Accounting. In fact, I would be happy to be part of weekly hangouts.

With this I suggest to have Overall Roadmap & Modulewise Roadmap published for community to start discussion on the subject, wherein community can throw their ideas during the week and further discussion can be carried out during Hangout on issues which ask for consents.

3 Likes

Thanks everyone for your feedback?

What is a good time to have a weekly hangout and more interestingly what would be the default timezone? Or should we just pick something and start?

Does 12PM (noon) GMT work well for everyone? Maybe this works best for everyone except West Cost in the US. It will be 8AM in East Coast US and 8 PM in Perth Australia.

4 Likes

@rmehta keep in mind DST will end on October 31st

Very nice team and very good conference

I am in the West Coast of Canada (GMT -8) so it’s probably worst for me, but I recognize that we won’t be able to accommodate everyone for this so if that’s what’s decided, I can make it work.

I think I like the way Gitlab has evolved over the last year.
Good transparent milestones along with well moderated feature-requests from the user-base.

The only comment which I guess apply here as well is how to avoid feature-bloat or opening up fo security holes? Gitlab has a few issues like that, some features has generated overly complex UX to add some fine-grained authentication, resulting in something you loose control over, giving that feeling of not knowing if it’s configured in the right or wrong way.

1 Like

That works well for us. GMT/UTC seems most appropriate for an international group of people. :wink:

We will watch out for the notice of the first one.

Back home in the USA with fond memories of our first journey to India to meet some incredible people! A big THANK YOU from everyone at DigiThinkIT to the entire Frappe Team and the ERPNext Community for such a great event.

And an extra special thanks to Superstar Conference Manager… @neilLasrado for teaching me how to jump off of a moving Mumbai Central Train without killing myself!

12 Likes

??? really, how can I (east coast of China be in UTC +8) as well? it’s rather -8 is it?

Sorry, made a mistake. Fixed my original post for clarity

Hi @rmehta

I want to congratulate you and your team on the successful conference. Freppe blog / forum is the place I visit on daily basis. We are not ready to move on from Odoo due to current projects already committed. But we do think ERPNext has the bright future with its real open source vision.

Please keep it up, I am sure many are looking at ERPNext as the next and sustainable move as we do.

Cheers!

1 Like

if you are -8 (4 am @UTC, not workable) and the most + people are +8 (East of China, West Australia) then I’d say the meeting can easily be hold at 2pm UTC (6am for you, 10pm for us here in the east).

Ok, with everybody?

1 Like

toolwise … assuming when you say “hangouts” you refer to “google hangouts”.

From a China perspective (google services blocked) that’s not ideal. would it be workable to meet in a Skype groupchat or does google hangouts provide better features?