Hacker News new | ask | show | jobs
by fridek 4220 days ago
2) Also, don't write everything from scratch. Research what frameworks or libraries might help accelerate your development. Understand the pros and cons of using them.

That's the most often ignored advice I've encountered. Most frameworks and libraries are written by actually smart people, or at least by very experienced people. While it may not seem as the best solution for any given problem, they solve many basic things that are just hard to get right on the first try.

I started coding about 10 years ago by writing my own CMS. Then I've found it was built on wrong assumptions and wrote another one. Then another. My thinking was - my needs are very simple, I don't need the whole framework, I will be better on my own knowing every line of my code.

This time was almost completely wasted. I've learned what to avoid but not how to do things right. Also my resume was missing hot keywords recruiters are looking for, since I knew the language but not the frameworks. Usually it's ok for companies to train somebody as long as they have a point of reference ("he knows Backbone so he will learn Angular quickly" - not the best thinking, but that's what I've experienced so far).

My advice is do some initial research, see which framework or language suits you best and stick with it. It takes about a year to find all ups and downs of any given solution and many on the first glance look better/worse than they actually are. Good rule of the thumb is to choose something that is past the first iteration, so the initial problems are resolved but haven't had more than few, meaning that involved people are smart enough to not replace one error with another.

1 comments

I'm of two minds on this sort of advice. If you don't at the very least understand the core concepts of DOM event handlers and async callbacks and I guess just the DOM tree in general, jumping right into Angular (when you're looking for front end jobs) is doing yourself a pretty big disservice. But as far as just getting a job jumping from hot framework to hot framework probably is just fine...
Yeah, it's tricky. I guess I should amend the suggestions to be:

A) start by understanding the tools and libraries available to you, and how to integrate them to build product/features faster.

B) start to understand what is going on under the covers in those libraries. it's not uncommon that, as awesome as these libraries can be, you'll have to look at their source code eventually to work through some unintended behavior or corner cases.