Hacker News new | ask | show | jobs
by hendrixski 6294 days ago
Wait... there are people who wrote their own framework... in the year 2009?
5 comments

Why is that surprising? General purpose frameworks are always suboptimal, and overly general. There's extra cruft you'd never need, parts you might need optimized aren't, etc etc.

Writing your own is often less work than trying to tailor something existing to your own needs.

it's very easy to write your own framework in python, that does excactly what you need it to do and nothing more. therefore is: scaleable the way you need it for your application. not in your way of doing things. easier to debug.

it's a bit of development overhead in the beginning, but pays of in the long run.

I tend to be the same way.

If I'm just coding up a small app I don't want the overhead of a framework. I might want a bit of routing, possibly some automated mvc and that's about it. Everything else in a framework I usually care little about and just slows stuff down for no benefit to me.

Coding up a "framework" that does only the very little I actually need is fast and very little development overhead considering the number of times I've done it and the fact that I've got code I can re-use.

This isn't business advice however, it's just my own personal project preference. If you're running a business you want to be able to replace developers if they quit so it's often a better idea to go with something more mainstream like a well known framework so that ramp-up time is minimized.

In most cases you're well served by making sure:

a) You have a reasonably-sized developer team

b) They document and test their code

c) No single developer 'owns' any part of the code

That should ensure that your developer team's "bus number" is reasonably high.

Finally:

d) You treat them at least well enough that you're not in danger of the entire team quitting at once.

That said, it can still be useful for many reasons if they base their work on F/OSS code (languages, libraries, tools, frameworks, etc.) that has a reasonably-sized community around it. But if the developers you hire are good that is very likely to happen naturally.

There are always circumstances where writing your own may make sense in the short-term, but unless it has something to do with your business' core-competencies, or otherwise leads to a sustainable business advantage, you're usually well advised not to bother.

Although it's not on the list, WSGI is the framework. The most simple and flexible one (it must be, as all the other frameworks on the list are based on it).

Frameworks are great up to a point. If you burger flip web sites all the time, then they make your life easy.

If you only deal with one site, you will never get the flexibility of pure WSGI with some prefabricated framework.

Well, Django is perhaps the most famous example of people writing their own:

http://docs.djangoproject.com/en/dev/faq/general/#why-does-t...

But I still see it a lot, there's a lot of "not invented here" or "none of the existing frameworks do exactly what we want".

Well, 2007, for me. But I built it over web.py, so I upped both.

(Edit: and I've since mostly switched to PHP)

Heresy! j/k. I'm actually curious why you switched from python to php. Was it your choice or forced upon you? If your choice, can you explain? I usually meet people going the other direction.
Well, I was running a small business at the time, supporting other small businesses and small sites. Virtually all of the ones I hadn't written were using PHP, so as I fixed problems and added features I found that I was building a library of PHP even though I built all "my software" in Python, Common Lisp, and a few other one offs. As I contemplated getting out of the business, it dawned on me that it was going to be terribly difficult and expensive for all these small businesses to find someone to support and extend the apps written in various languages I'd used, and there wasn't anything really novel or language-dependent in the CRUD apps I was writing (mostly because my clients were almost all mainly focused on the look of the site and graphics, which was all handled outside the main code via templating, and which I didn't do myself). So I began to write new things in PHP with an eye to divesting myself of the client base and getting a "real job", as my friends and parents would say. This led, in a very straightforward manner, to my getting PHP positions when I folded the business and moved to the DC area, last year. This turns out to have been fortuitous, since PHP and Java are the main languages represented in web development, at least around here.

Perhaps that was a longer answer than you wanted. :)