Live data from Hacker News

Ask HN: As a Full stack developer how do you keep up with all the technologies

news.ycombinator.com

31–40 of 59 posts

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#31
post #23

Most people don't keep up. They're on the bleeding edge in some areas and way behind in others.

I used to feel bad there were so many areas I was clueless in, then [about a year or two ago] John Carmack tweeted something along the lines how he knew no SQL and nearly nothing about databases (it's just not something he ever had to deal with) and I realized no matter how good or experienced you are there will always be some areas you know little or nothing about.

Definitely--everyone has their blind spots. Having the best native code developer I know, a guy who's worked at nVidia and Apple and who has forgotten more about GPUs than I will ever know, ask me how to make a web app was an eye-opener.

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#32
I don't, for the most part. The trick that I've found is to understand the underlying theory and don't sweat the individual syntaxes or design patterns. The new platforms of today have a lot in common with the platforms of yesterday. The state of the art languages of today are combining theory and technology which has existed for decades. Tomorrow's Joomla will be doing things in a way very similar to yesterday's Wordpress.

For example, if you understand event driven workflows, you'll be able to pick up react/flux, desktop UI drivers, and video game addons. If you understand continuations (and the various ways to abstract away continuations), you can grok most of Javascript (and by extension, Node.js). If you understand pointers, you'll be able to follow C (though I'd also recommend learning some Assembly as well to really understand C). Pattern matching will get you Haskell and Erlang. And if you can use Google well, everything else is a search away.

Now it is important to note that theory will never make you an immediate expert at every language and platform. However, it does let you bootstrap yourself into a language or framework quickly enough that outsiders will hardly be able to tell the difference.

I've found that once I understand the flow of a program, and ideally the theory driving that flow as well, the syntax required to express the changes you want to make to the flow is merely a few Google searches away.

Another thing to note, if you bounce around like this, you will never get true mastery over a particular language or framework. This is OK for more than 80% of the work you do, but you will end up picking up more information about one language over another - of one framework over another - simply to complete your work. Having this depth of knowledge is not even remotely a bad thing, so long as you keep sight of the bigger picture: don't let the quirks of one language or framework constrain your thinking for all languages.

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#34
post #2

I don't know how js developers deal with explosion of frameworks. The other day I was reading about React and someone was mentioning om, morearty, and omniscient and I had no idea. I was frustrated with reading HN at that point. Lots of learning and forgetting? What a waste. This is where one has to rely on some authority to pick the winners. I dunno. Ignore almost everything and just pick a framework?

The Thoughtworks radar [1] has done a pretty good job in the past of predicting which technologies would catch on and which ones wouldn't.

http://www.thoughtworks.com/radar/

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#35
You jump around jobs and see where it gets you. Eventually, you realize how to pick and choose your tech.

I got real burn out with front end, with emberjs, angularjs, and now react. I'm going to just wait this out until ES6 come about and see where that go.

I think in general I moved toward back end with all the big data and data science is going to be at. And now I'm going back to school to become a data science practicioner.

The trick is to have enough experiences and understanding overall concepts. I've done a variety of MVC in different languages and was thrust upon to do frontend and all that jazz. Those experiences will help you solve problem easier and hone your skill set in finding solutions.

I've seen people talking about how full stack is unicorn. I'm a full stack, I'm experienced in many technologies, master of none but a very small subset. I am constantly surprise how I am way more qualified than some of those frontend programmers or architecturers out there.

The deal is just continue to gain experiences on variety and you'll hone your problem solving skill. You might also be under selling yourself too. There are very few engineers out there and there are tons of pretenders. I've worked with two "front end" and a "acting cto" that specialized in architecture. They were anything but the position they claim to be but they sure do have a purrty linkedin profile with tons of people writing good things about them.

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#36

I don't, for the most part. The trick that I've found is to understand the underlying theory and don't sweat the individual syntaxes or design patterns. The new platforms of today have a lot in common with the platforms of yesterday. The state of the art languages of today are combining theory and technology which has existed for decades. Tomorrow's Joomla will be doing things in a way very similar to yesterday's Wor…

> Another thing to note, if you bounce around like this, you will never get true mastery over a particular language or framework.

I think this is a bit unfair. I find myself rapidly getting to the point of expertise where other people start asking me questions, just because I didn't have to spend time going from "dumb newbie" to "intermediate"--but being able to start at "intermediate" because of the built-up knowledge of everything in my back pocket. Part of it's also that I recognize that technical mastery is mostly just being able to Google faster and better than the next guy, but still.

We're short a letter in English for what I really mean, but there are I-shaped people and T-shaped people--what about U-shaped people? Building on multiple sources of knowledge to join them at the top? =)

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#37

You jump around jobs and see where it gets you. Eventually, you realize how to pick and choose your tech. I got real burn out with front end, with emberjs, angularjs, and now react. I'm going to just wait this out until ES6 come about and see where that go. I think in general I moved toward back end with all the big data and data science is going to be at. And now I'm going back to school to become a data science pra…

> I've seen people talking about how full stack is unicorn. I'm a full stack but I'm experienced in many technologies

Can you debug your runtime (Ruby, Python, the JVM, whatever) in gdb? I can, and I still don't consider myself "full-stack"--both because I leave JavaScript to JavaScript people, but also because if you asked me to debug a kernel I'd look at you and just shrug.

The stack goes down past your application.

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#38
"Never memorize what you can look up in books."

When you do it long enough, you get a really good sense of the structure of programs. Then, it's just a matter of fitting in the best technologies of the time into the 'architecture'.

The full stack is just data storage, data transfer, processing, user interface, system structure, tools, and processes. When you do it long enough, you get a good, general understanding of all of these pieces.

When I take on a new project, I do the following:

1. learn about all the 'current' technologies

2. write simple apps (full stack) in each of them

3. decide on which are best (sometimes I make mistakes, often I use 'old' stuff)

4. cram a bit

5. write a somewhat more complex app

6. learn the rest, as I go

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#39
post #12

After you had to learn to use spice, matlab, VHDL, all the weired stuff of physics (Quantum mechanics, physical stats, relativity...), english and german ... then computer new technologies are laughably neither complex nor disrupting. Most of the new techs are fraud like angular; like in science a new tech should be something that simplifies the world with a simplified view : a map. A map should always be simpler tha…

Even though the OP talks about learning new technology, his meaning is actually very different from yours. You're talking about understanding things. The OP is talking about getting up to speed with something and using it productively. Learning a programming language is easy. Learning how to use it productively includes everything from architecture to testing to style to knowledge of all of the popular libraries and…

I think Julie1 has a point.

As soon as I started watching Computer Science courses that articulately explained the core concepts of a computer I could start looking as languages I was unfamiliar with and at a base level understand what they were trying to do.

Elon Musk says it best...

"“I think it’s important to reason from first principles rather than by analogy. The normal way we conduct our lives is we reason by analogy. [With analogy] we are doing this because it’s like something else that was done, or it is like what other people are doing. [With first principles] you boil things down to the most fundamental truths…and then reason up from there.”

Re: Ask HN: As a Full stack developer how do you keep up with all the technologies

#40

If you don't want to learn new things don't take jobs that require something you don't know. Take jobs that require the skills you already have.

Note that this strategy wears down. If you started this strategy 8 years ago, you'd be making websites with cgi, perl, and asp and desktop apps with Visual Basic and Access.

If you're going to be a developer for more than a handful of years, you're going to need to be prepared to retrain yourself on new things every few years.

Post reply on HN