Skip to content

Comment on Why I’m staying with Node

Comments

Hiring for Go — I wouldn’t even know where to start.

Ridiculously simple: Set out to hire a good programmer (as opposed to "a Go programmer"), and make it clear in the job description that they're expected to spend the first 6 months learning Go on the job.

You end up demonstrating to employees that you're willing to give them something useful, gain loyalty; AND end up with someone you can be confident is able to learn whatever else your company might need in the future, and writes better code by way of having a focus on programming knowledge, not language knowledge.

How to train a new employee on Go: Day 1: complete the tour - http://tour.golang.org/ and read "How to Write Go Code" http://golang.org/doc/code.html

Day 2-3: read Effective Go - http://golang.org/doc/effective_go.html

Take a whole week, if you feel it is necessary.

This was exactly how I did it. The Effective Go part took me longer, since I actually jumped into porting a couple of small ruby libraries I picked (not mine, just ones I was familiar with) so that had me jumping to and from the book to the terminal/editor, so it probably took me like 5 days to port both libraries into Go code that I was happy with.

After that I had also read enough online to be familiar with the tools and the environment. Go is a really small language, but the ecosystem is rich.

Yeah, pretty much

You can have them try prototyping stuff on Go on the second week, trying some libraries, examining some existing Go code and that's it

There are good "XX" programmers, but I'd say that they're mostly good programmers and not tied to a specific language. Yeah, there are some niches where someone who's great at that niche may not be so good at other places (front-end, or maybe performance critical programming, or even things like COBOL or Java)

You can learn the syntax and be proficient with linear code in a couple of days but not for the parallelism part. Getting a feeling of good patterns with goroutines and channels takes a couple of tries before it becomes right.

they're expected to spend the first 6 months learning Go on the job.

Of course like in everything you have different levels of expertise. But I can tell you first hand that most developers can be productive in Go within 2 weeks if not less.

I haven't seen this type of hiring since the .com bubble days.

Nowadays either one has the right keywords on the CV or good luck.

Yeah, but that might have something to do with perceived shortage of developers.

Change 6 months to 6 days -- and agreed. Go has a 50 page SPEC -- the language fits in your head.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.