← Back to team overview

elementary-dev-community team mailing list archive

Congratulations Luna developers!



I posted the following message on Google Plus yesterday, but it occurred to
me that the weekend may not be prime time for checking that social network.
I think this message is pretty important, so I want to post it again here:
(I apologize in advance for its length)

Congratulations to all the developers who made Luna such a success!  You've
> done a great job and delivered an incredible Linux experience!
> I know I bring this up periodically, but I'm concerned that Luna + 1 and
> future releases will take more and more time to release, and/or that you
> will quickly reach a ceiling with respect to the amount of code we'll be
> able to maintain before quality degrades.
> The cause for my concern is the nature of complexity: as software grows
> (that is, as code is added), bugs grow exponentially (complexity increases
> exponentially with logic, and bugs grow linearly with complexity). If we
> don't start working toward solutions that will scale with this problem, we
> **will** hit a ceiling with respect to the amount of complexity we will be
> able to support (this means fewer features or less-powerful features). I
> promise.
> I know some in the community are working toward this goal, but I think
> it's going to take a concerted effort on the part of the developers to take
> this problem seriously. I urge you all to take this problem as seriously as
> you take the rest of the user experience (because bugs are, at the end of
> the day, a sharp degradation of the user experience).
> In my experience, the silver bullet for combating this problem is test
> driven development. If you look around the software development industry,
> code is improving, and it's largely because TDD is catching on. And Google
> is a good role model in this regard (not just for us, but for
> everyone--they are pioneers of code quality). If you're a developer and
> you're unfamiliar with TDD, take some time and research it. It will pay
> dividends immediately. If you have any questions about development, I'm
> happy to provide my advice as a professional developer. Also, read up on
> Google's testing strategies (I recommend
> http://www.amazon.com/Google-Tests-Software-James-Whittaker/dp/0321803027_How Google Tests Software_).
> You guys are a _great_ UX shop, now let's become a great code shop. I hope
> this analogy doesn't offend anyone who is passionate about their tech
> brands, but my advice is this:
> Design like Apple, develop like Google.
> I really push you developers to continue to strive to hone your craft the
> way Daniel and Cassidy (and any other UX designers) are learning to hone
> theirs.
> P.S., Sorry for the book, and I hope you all take this as respectful,
> constructive criticism. _Please_ ask me anything about development,
> especially with respect to how we can keep quality high using processes
> rather than sheer developer effort (so as to free you developers to work on
> interesting problems rather than bug hunting).
> Thanks for reading,
> Craig

Follow ups