Developers: please, don’t use your own framework
I’m a software developer. At the beginning of my career I was learning new programming languages by reinventing the wheel and building my own solutions for known problems. Two things were most popular: self-built CMS and self-built framework. As many of you, I’m a self-taught programmer and my first lessons of object-oriented programming consisted in the fact that I tried to build my own CMS. Also, it was my first meeting with PHP5 (fortunately, several months later I felt in love with Ruby). I’m sure, many of you remember those days.
Sadly, many of today’s apps have root in those times. Too many. As a software developer and as a CTO I’m begging you: don’t build your business based on your self-built framework!
I know you’re smart. I believe you’re programmer because you love discover. I know you learn best when you build from scratch, but I’m here to remind you one important thing: every time we’re working for startups, we’re there to take whole business to the next level - as fast and as well as possible.
Now tell me: is your framework well written? Is it well tested and well documented? Is it flexible, scalable, extensible? Look at most popular frameworks and honestly answer to yourself.
Below I present you only few reasons, why you shouldn’t base your apps on self-built frameworks:
- probably startup you’re working for, doesn’t have a time for building everything from scratch. Another solution for authentication? Yet another ORM? Almost everything is done (and is waiting for you),
- probably your work won’t bring as good results as work of dozens, more experienced developers, working on the most popular open-source frameworks since a really long time (think about scalability, optimization, security, tests etc.),
- probably won’t be easy (or maybe impossible) to integrate tons of great open-source libraries with your framework,
- probably your code isn’t well-tested,
- probably your code hasn’t good documentation,
- probably every new developer in your team won’t know anything about your framework and his learning curve will be
so f*****really steep (btw. I hope your CEO is aware of this).
For your startup, time is the new money. Don’t waste it because of your own ambitions. Don’t waste it for building crappy things that world and your business don’t need. Be open-minded, keep looking, trust the others, learn.
Time is the new money. Spend it wisely.