Last week UI Grid finally had its first stable release.
This has been a long, long (too long) road. It started about 2 years ago as a rewrite of ng-grid, which was itself an AngularJS port of SlickGrid. And now UI Grid is stable!
Well, almost… The core of UI Grid is all stable, but some of the features are a little behind. More on that later.
Thank You
The team and I really want to thank the community for being so great, helpful, and patient with us. I don’t think any of us thought that this project would see so much use, and it’s been a real battle to make time to give you all the support you deserve!
Despite the slow timetable, you all have been super supportive, and that means a ton. Thank you.
Lessons Learned
This is the largest Open Source project I’ve worked on, and I’ve learned a ton. Here’s a few of the most important ones:
1. Start small, even with a rewrite
Our assumption was that because ng-grid had a bunch of features included (grouping, filtering, etc), we needed to include them all. Bzzzt, wrong!
We would have served the community better by getting a small release out the door with little functionality rather than trying to cram in everything v2.x had. This greatly lengthened our time-to-release.
We also ended up including more features that ng-grid did not have. We should have scheduled those for a later release and really focused on getting the core stable and complete.
2. Schedule Responding to User Issues
Responding to issues on GitHub has largely been a catch-as-catch-can operation. I’ve done it when I can make time, and try to hit as many issues as I can.
Instead what I should have done is make a regular time-based schedule for organizing and responding to issues. This would make sure more people get their problems heard, understood, and solved.
3. Set up Style Guide in Advance
We all have our own style when it comes to writing code, and that’s cool, but for a large project having a consistent style is really important. Debugging issues and reading 3 or 4 different ways of writing blocks, variable definitions, etc. gets really tiring.
We should have set up JSCS in advance, instead of late into the rewrite.
4. Trick People into Helping
OK not really.
But getting help is a must for a larger project. Our team has shrunk and grown multiple times over the past few years. Having multiple people means we can cover each other and help our users faster.
We’re incredibly lucky to have people who contribute on such a regular basis, those in the community included.
What’s Next
As I said in the beginning, the core of UI Grid is stable but some features are aren’t. They’re still alpha or beta. You can find a full list of the features on GitHub.
We plan to keep tackling bugs, increasing stability, and addressing new releases of Angular, including Angular 2.
Live Q&A
With 3.0 released, we want to give the chance for the community to ask any and all questions of the team. We also want to know what you’re doing with UI Grid, and what you interested in for the future.
We’ll be doing a live Q&A session on Saturday, August 8th @ 12:00PM CDT. If you want reminders and a link to the recording once it’s over, head on over to the event page.
Or if you just want to join the event live you can go to the Hangout page.
We look forward to seeing you all there!