Not Invented Here
Leverage as much of other people's work as you (legally) can.
One of the day to day goals of any software engineer should be to reduce the effort required to do their job. We are paid to create systems that reduce work, not to perform the same repetitive actions over and over. It is through this cumulative effort that we create time saving tools together that we could not have created alone. This effort directly relates to the philosophy of D.R.Y. and should be more than enough reason to avoid N.I.H.
Before developing this website I’d never blogged before, and I didn’t really know what was needed. Luckily, the Django developer community is very active, and after a bit of Googling I found source code for a popular Django blog b-list and an example of a simple blog application at the Django Basic Apps repository.
The Django Basic Apps repository offers a variety of boilerplate applications that include templates, unit tests, thorough but not verbose comments, and use many well known Django contrib apps. Chances are that if you are building a website using Django you'll be able to leverage at least some of their source code, if not an entire project.
blog comments powered by Disqus