Hello, 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 >
-- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp