Yesterday I came across a quote from George Patton (via), which stuck me as really insightful, but later something burned the quote directly into my brain.
“A good plan, violently executed now, is better than a perfect plan next week.”
It's a quote which rings quite similar to the commonly-said open source phrase, coined by Eric S. Raymond in his article The Cathedral and the Bazaar.
"Release early. Release often."
The thing which burned these ideas into my brain is the discovery of djangoplugables.com. Simply put: this is an excellent site, which follows the ideas that I mentioned above completely. The premise behind it is essentially to list all of the available django reusable applications on google code, and to display a bit of information about each app.
A group of about 5 people, including myself, have been silently working on a very similar site for the past month or so (the bulk of our work took place during PyCon), but we utterly failed to follow the above sentiment. We debated for hours over how users would be able to submit applications, claim them, and how we could ensure that those claims were accurate. We had tagging, voting, comments, voting ON comments, graphs detailing how "hot" each application was (based on a frequency analysis of the votes over time), and OpenID integration.
But all of this functionality took time, and we implemented it behind closed doors, in a vacuum--without ever seriously focusing on the user interface. I don't know yet what will become of all of our work, but I have a feeling that it will be discontinued in favor of the much better-looking and simpler djangoplugables.com. Maybe we'll see parts of it resurface again, but that's not really the message behind this post. The real message to take away from this experience is that we should practice what we so often preach. In the case of web development, execute the good plan now and iterate, versus trying to perfect everything before release.
The upside of all of this is that our goal has been achieved. What we really wanted to accomplish is what now exists: an excellent resource for finding reusable django applications, and no matter who implements it, that's a win for everyone!
All Content


By Justin Lilly at 12:17 p.m. on April 10, 2008
Hear Hear! I can't tell you how many times I've had that "killer idea", but either took too long or didn't start on it... then someone rode it to a few million dollars. It makes me sad to be a procrastinator. Viva RERO!
By Marty Alchin at 12:46 p.m. on April 10, 2008
I tend to do reasonably well at that philosophy when it comes to software, though I don't do so well on the "often" part. For some reason, though, I'm terrible about it when it comes to releasing sites. I've got a few things that I've been working on for ages, and I do keep waiting for them to be "perfect" before I release them. Or, worse yet, I wait for them to be perfectly planned before I even start coding.
By Eric Florenzano at 6:54 p.m. on April 10, 2008
That's my problem too. I code it all up but am unwilling to release it until I feel like it's perfect. That's something that I'll have to address sooner rather than later.
By Jannis Leidel at 12:46 p.m. on April 10, 2008
Great article, Eric. Although this is indeed painful I'm also looking forward to see some of the functions in djangoplugables.com. Bryan signalized the chance to incorporate our code so it's not written without cause. It should not be abandoned, IMO.
By Ross Poulton at 6:58 p.m. on April 10, 2008
Eric, you've just summed up many projects perfectly.
I've got so many minor projects underway right now, there is a good chance none will see the light of day this side of the apocalypse. If I were to tone down what I _think_ is important, and focus on the more simplistic functions that do a complex task beautifully, launch would be so much closer and so much more exciting.
I was working on a Django application repository but abandoned it as your project was much more complete, much more usable, and made mine look like mush. That said, what you are offering and what Pluggables is offering is different IMO. You're offering a detailed index of applications, with user interactivity. Pluggables seems to be more of a no-crap listing that shows projects, their recent activity, and a summary. For anything else you follow the link to the Google Code page.
Perhaps both websites can co-exist, each serving a slightly different need without either of them being over-done.
By kevin at 8:15 p.m. on April 13, 2008
eric, once we stop learning we stop living, (deep stuff I know). All your hard work on your project should be seen as a few additional levels of knowledge not gone to waste, and the hard learned lesson of competitive ideas is a lesson better to learn now.
like you said before - you gotta love open source. maybe the best part about this - it never hurts to throw the code up on google code and maybe help a developer learn something new by combing through your work, and it appears there's even a chance for code reuse on this new pluggables app.
win win indeed.
By Sebastian at 3:36 a.m. on April 14, 2008
I said: Let us release right now, even if not everything works, even if there are certain use-cases we currently can't support.
"Let it roll", I said.
But goal was achieved, even if it wasn't the way I expected the problem to be solved. Maybe something interesting to read in addition to Patton:
http://gettingreal.37signals.com/toc.php
By nendyGoarcace at 2:24 p.m. on April 17, 2009
nice, really nice!
By wholesale jewelry at 1:53 a.m. on May 5, 2009
This site is pretty nice,i agree with u.
By korean jewelry at 12:59 a.m. on May 21, 2009
<A href="http://www.china-jewelry-market.com"> Jewelry Market</A>
<A href="http://www.korean-jewelry.com">Korean Jewelry </A>
By ben10 oyunları at 2:57 a.m. on May 25, 2009
it never hurts to throw the code up on google code and maybe help a developer learn something new by combing through your work,
By lingerie at 6:28 a.m. on May 31, 2009
I really like the new layout: A lot cleaner and nothing got lost.
Though I'd put some additional work in the color-scheme - you have used many very different colours which looks a bit cluttered. For example I think there are at least 5 shades of green here. 2 would have done the job just as good, I guess.
By jewelry at 9:21 p.m. on June 3, 2009
jewelry,jewelry wholesale
By jewelry wholesale at 9:22 p.m. on June 3, 2009
jewelry fashion jewelry,jewelry wholesale
By jewelry at 9:23 p.m. on June 3, 2009
fashion jewelry,jewelry ,silver jewelry
By jewelry at 9:23 p.m. on June 3, 2009
jewelry wholesale
By caltin jim at 1:26 p.m. on June 8, 2009
ya, like you said before - you gotta love open source. maybe the best part about this - it never hurts to throw the code up on google code and maybe help a developer learn something new by combing through your work, and it appears there's even a chance for code reuse on this new pluggables app.
By aluny chenny at 1:26 p.m. on June 8, 2009
would have done the job just as good, I guess.
By niki amadas at 1:27 p.m. on June 8, 2009
well done, i agree it.
By conservatories uk at 2:47 a.m. on June 10, 2009
Thanks to share with us this article.
By ed hardy at 5:04 a.m. on June 10, 2009
Official Ed Hardy Store for all tees, caps, hoodies, bags, purses, shoes, swimwear, belts, accessories, sunglasses, knits, jewelry, and much more
By injection molding at 9:33 p.m. on June 13, 2009
Really nice posting!
By jewelry at 8:31 p.m. on June 15, 2009
jewelry
By jewelry wholesale at 8:33 p.m. on June 15, 2009
jewelry wholeale
By silver jewelry at 8:34 p.m. on June 15, 2009
jewelry wholesale
By lingerie show at 3:51 a.m. on June 16, 2009
life seems not easy for every one so do not forget enjoy our life every time. Gisele has a great body,i like view her sexy lingeire show in beach.do you like it ?
By Course work at 12:26 a.m. on June 17, 2009
This site is pretty nice,i agree with u.
By Dissertations at 12:26 a.m. on June 17, 2009
But all of this functionality took time, and we implemented it behind closed doors, in a vacuum--without ever seriously focusing on the user interface.
By Custom Thesis at 12:27 a.m. on June 17, 2009
That's something that I'll have to address sooner rather than later.
By Custom Essay at 12:28 a.m. on June 17, 2009
Nice site could be very useful.
By Cheap WoW Gold at 3:34 a.m. on June 18, 2009
Great work, u can say it again.
By Conveyancing Remortgage at 6:52 a.m. on June 19, 2009
Great job you have done.
By Unique baby Gifts at 12:09 p.m. on June 22, 2009
He who hesitates is often lost. Sometimes if you get the ball rolling, you get momentum on your side and other people involved, and before you know it it's done and you didn't really have to work as hard as you thought you might.
By merchant services company at 8:20 p.m. on June 22, 2009
Thanks a lot folks. Thanks to share with us this article.
By Cherry at 10:28 p.m. on June 25, 2009
Thanks for your kind sharing...
By Stop Dreaming Start Action at 7:05 a.m. on July 2, 2009
hello, this is my first time i visit here. I found so many interesting in your blog especially its discussion. keep up the good work.
By Rusli Zainal Sang Visioner at 7:05 a.m. on July 2, 2009
Got to agree here, info is pretty daymn good. This was just what I was looking for, great resource. Bookmarked
By glasgow cosmetic dentists at 7:40 a.m. on July 2, 2009
Blog shares the best lessons to know and learn lot of things.
By Fisk at 12:47 p.m. on July 2, 2009
How are you. Misquotations are the only quotations that are never misquoted.
I am from Uruguay and learning to write in English, please tell me right I wrote the following sentence: "Flea is the common name for any of the small, wingless, and laterally compressed flea larvae are small, cylindrical, and maggot like in appearance, with."
With love :-), Fisk.