Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Software is also weird when it comes to skills. While the total domain knowledge possible in software is absolutely massive, the set of baseline skills required to rapidly learn new domains and perform is surprisingly small. Any good programmer can learn a new language and a new portion of the stack within at least year, probably less, because the core skills of the profession are very very small.

It’s not clear to me how common this is in human endeavors.



That's dated. This used to be true, absolutely. But the size of various eco-systems is such that if you want to really master something now you have to invest a lot of time and if you bet on the wrong horse then you can lose a lot of time and effort for little return. Front end is especially brutal in this sense.


That's because "front-end development", especially with JavaScript frameworks, is a popularity driven hype cycle.


That appears to have calmed down significantly in the past few years, with React in particular showing a level of stability and staying power in this space that I thought was impossible.


Not really, consider all the changes react has made recently. Then consider the cloud of companion libraries that also tend to follow trends.


Anecdotally, I started out working with JS and React about 2 years ago, and while it was extremely easy to get started in terms of architecture and general coding (based on 10 previous years of experience with other languages), we’re also still dealing with bad decisions made because of idiosyncrasies in the language/libraries.


Nonsense. You can migrate a back end developer to the front end in far less time than it takes to train a new front end developer from scratch. The domain knowledge of front end specific tasks must be learned, sure, but the core fundamentals of how to program remain. You don’t suddenly forget how to actually program once you pick up JS, all jokes notwithstanding.


True for the programming part of front end development, not so much for the making things look good part.


Having crossed over from a back end developer to a front-end developer at a design shop, it’s not that hard. Nowhere near as hard as learning to program the very first time. I think that a lot of the discussed differences between different portions of the “stack” is actually the narcissism of small differences [0]; they share more in common than we typically give them credit for.

[0] https://en.wikipedia.org/wiki/Narcissism_of_small_difference...


To make things look good on the Web, you just find something that you think looks good and steal what it's doing.


And if you do it repeatedly, then suddenly one day you'll realize you can make good original work.

The same is true about learning anything else. Personally, when I've been first starting programming, I learned a lot of useful programming techniques by stealing bits and pieces from videogames and demos whose source was available and incorporating them into my own attempts at writing a game engine.


Mastery is hardly needed for the bulk of software development work. Just like with the building trades, most coding can be done "good enough" with apprentice or journeyman skill levels as long as the team has a few masters to provide guidance and check the results.


Also, the cost of mastery is probably too high for some markets and companies.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: