Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Looking for a Job? Learn Ruby, Python and be a Team Player (infographic) (infochimps.com)
80 points by ddw on Dec 5, 2011 | hide | past | favorite | 38 comments


The part about "team player" doesn't make much sense to me.

How do you decide if someone is an "average team player" or an "above average team player"? Hard overall, impossible from a LinkedIn profile. Unless of course, they base their decision from what the people have entered themselves. But then again, who would put "I'm an average team player"?

That being said, considering the similar setup for comparison, it's interesting that "good communication skills" rates so poorly comparatively to "team player". It's not completely surprising I guess for software development (though I might disagree), but it also means I might want to update my profile/resume…

On another note, even though I rarely take part in the "programmer/developer/engineer" discussions, I find the "Python/PHP/Java… engineer" titles to be odd. These people are probably "software engineers", but "Python/PHP/Java… developers". The specific language doesn't mean much to your ability to engineer software. (unless maybe, you actually work on the language itself)


"above average team player" vs "average team player" literally made me laugh out loud. This whole infographic just an advert for mixtent. No real data posted? Simply percentages and rankings? At a minimum they could have included the sample size.


I was wondering the same thing. The most generous interpretation I can give Mixtent is that the survey asked its respondents to rate these developers as team players and then found that those developers who tended to be ranked as above average team players also tended to be ranked as better overall engineers. But in general, this "finding" destroyed all credibility the article might have had with me.


I think it does have some value.

I, like you, assume they did a cross questionaire (Do you prefer Alice or Bob? Do you think Alice is a better team player than Bob? Do you think Alice has a better work ethic than Bob? etc)

But while this does not tell us much about the fact that "better team players" get chosen more, it does teel that "people who appear more like team players" get chosen more.

Since most of what one puts in resume/cv is _trying to appear something_ the information that appearing a good rails dev is less useful than appearing like a good "team player" has some (arguable) value.


Based on these figures: do NOT learn Ruby. Ruby is dead last in the "face-off", and looks like it would put you at a significant disadvantage compared to Java or Python.

That makes me wonder about two things:

1. Is Mixtent wrong?

2. Do companies really see Ruby on a resume and say "nope! next?"


No. Competent companies don't hire people for "Python" or "Ruby" per se. But the Ruby developer community is disproportionately well-stocked with web "programmers" who know enough Ruby + JQ + "SQL" (read: AR) to make good-looking, fairly functional websites.

It is easy to shoot these superficial programmers down, even from a cursory browse of a resume.

It's not that Ruby signals that you're a superficial programmer; it's that there are fewer superficial Python devs, and more superficial Ruby devs.

For the most part, your choices of programming language are a terrible way to differentiate or market yourself. You are far better off being clever about picking your application domain.


How do you explain Perl not faring so well?


web designers : rails :: sysadmins : perl

I don't like Python; I'm a Ruby developer (actually, I don't know why I stopped calling myself a C dev). But I'll freely admit: most Python programmers know Python because they spend their real day job programming.


I use rails a lot and I don't know much about the methodology used, but some of my non-rails coworkers have said that they view a lot of rails guys as prima donnas. The DHH "fuck you" slide and Zed Shaw's massive flameout probably contribute to that perception too.

Given that another big influence was ability to be a team-player then I can see how ruby guys are perceived lower on the list.


You are correct


Your point #2 is not at all what this data implies. It shows that when presented with two LinkedIn profiles, users chose one developer over another. In that effort, Mixtent found a correlation showing that Python and Java developers were strongly favored in these comparisons.

Hiring decisions aren't typically made in the same way. If you have a Rails app, you need a Ruby developer. Granted, anyone can learn Rails, but I've worked with really talented people who were in the process of learning the Rails framework, and it's not something I'd like to pay for again.


Sounds like another case of causation != correlation. Someone took a bunch of data and made pretty graphs from it.


I don't think they would say "Nope! next?" but there is a really good chance they would be using Python and not Ruby. But that shouldn't matter if that person is a programmer as language semantics can be learned by any decent programmer.


P.S. I have been a long-time Ruby user, and use it frequently for sysadmin/devops/proof-of-concept type stuff. I am not, however, a "Ruby guy" and would list it on my resume along with Python.


> Is Mixtent wrong?

Their raw data may or may not be accurate, it's impossible to say because they fail to present the raw data or detail their methodology.

Their interpretation of the results is at best simplistic and incomplete, and their post title is absolutely wrong.


What is this bullshit? Looking for a job? Convince me you know what you're talking about. Show me something I didn't know and convince me it's worth knowing. Demonstrate you know big 'O' notation (and maybe tell me how little 'o' and \omega are different). Draw me a binary search tree. Show me how a skip list works. Fill in a multithreaded producer / consumer skeleton and get it correct, then make it fast. Explain how UTF-8 works from first principles (i.e. what's wrong with ASCII? How would you fix it? Now how do you optimise the answer?)

I don't give a crap if you know $TRENDY_WEB_LANG. We don't write anything in either Python or Ruby, and likely never will.


I thought the content of you comment was interesting (and sounds like interviewing with you might be pretty cool), but the tone was really harsh and unlikely to spark any interesting conversation. Something like this might have worked a bit better:

"It's not the language that matters when looking for a job, it's important that you convince me you know what you're talking about. Show me something I didn't know, then convince me it's worth knowing. Demonstrate you know big 'O' notation (and maybe even tell me how little 'o' and \omega are different). Draw me a binary search tree. Show me how a skip list works. Fill in a multithreaded producer / consumer skeleton and get it correct, then make it fast. Explain how UTF-8 works from first principles (i.e. what's wrong with ASCII? How would you fix it? Now how do you optimise the answer?)

Python and Ruby are both trendy right now, and interesting in their own right, but we don't write anything in either language and likely never will. The underlying technical/CS understanding is not only more important, but common to almost all problems."


Honestly, this tone is better. I downvoted you for suggesting an alternative because, honestly, parent is just as indignant as I am at this article's bullshit.

You generally don't get a job by just learning a language. That's no different than looking for a journalist gig after you've written for a few months. There's much more to do.


seems like you really like the guys who can memorize "cracking the coding interview" and "data structures for interviews"!


I've been in a work place like that. The focus was on optimum algorithms and seeking out the last microsecond of performance. In the mean time, the actual usability was atrocious and took end-users 30mins to figure out how to use the app.

Sometimes you need to see the forest from the trees!


Am I the only one who thinks it's terrible that companies are apparently defining engineers based on languages? I know Python AND Ruby, would that make their heads explode?


I agree with you and what really takes the cake away from taking their research as reliable and valid is not only that they skimmed over any kind of educational background and programming concepts (for the sake of the argument I'll assume that they consider them as granted) but calling out loud that engineers that work for Microsoft are worse than the rest is to my eyes a sad generalization that is used just to pinch nerves and win smiles from people who consciously and for reasons of their own don't like Microsoft products (myself being one of them).


That would be like hiring designers based on whether they know photoshop or coreldraw.


I don't think companies are doing that. The causality just isn't being addressed properly.

I can come up with a lot of plausible reasons why you're more likely to find "good" engineers focusing on Python or Java, and why Ruby developers might be more cross-disciplined, and none of them are because the engineers are defined by the language.

This "study" is laughably poor in presentation, and their interpretation of the results they got is almost certainly unforgivably flawed.


I'll post this for the new HN members, since I would've loved to hear this after joining: the companies you want to work for don't give a damn about what languages you know.

You want a job? Learn how a splay tree performs better than a binary search tree, and what that says about worst-case algorithmic complexity. Grok the difference between training versus inference, and how a well-trained model can completely fail in practice. Learn how programming can be functional, imperative, or logic-based, and then mess around with Haskell, C, and Prolog. Then use Python to see how all three can blend into one dialect (okay maybe not logic-based).

Good companies don't look for languages on your resume--they want people who know their stuff. List comprehensions or decorators don't matter--you have to demonstrate an ability to learn anything, whether it's syntactic sugar or obscure data structures with specific use cases.


False dichotomy. You can be a programmer who "knows their stuff" and also know the right languages.


Are those people really looking for work in this market? Or are they fighting off recruiters from Facebook, Yahoo, and Microsoft?


I don't know what to make of this. I see no actual data (or even a link to it). I don't know if they corrected for other variables and having "python" on your LI profile is predictive or just correlative.

I think I have actually lost knowledge instead of gaining it after reading this infographic.


Is it just me or is the text really, really hard to read? Maybe just today I've finally gotten really old, but please: don't do that. If you have to write your text in a graphic, at least make it easily viewable.


I think the same, it seems that text is too small. Also I don't like 'generic engineer Charlie' vs 'teamworking python engineer Anthony' - no info in this particular part of graphic, just noise taking up half of a box. I'm not sure if those pie charts are a good idea either - it seems that they are rather discouraged (there was a post on HN few months ago discussing it), and making them half-a-pie-charts make them even more confusing.


.NET doesn't even make the cut for consideration? Am I wrong in thinking that there are still plenty of opportunities for Microsoft developers?


I think this survey is dumb. How do we know the first question is not really a "do you think the light-skinned engineer is better than the dark skinned one?"

Also: Any potential client that would rank an engineer's quality based on his programming language alone, is a client to stay away from. These would be the execs who read a magazine in a flight and suddenly think they know how programming works.

So who cares if your language (assuming you are a one language person, which is a different topic onto itself) is perceived as "bad"? There are many world-class engineers that code in shitty languages, or languages that are full of shitty programmers. Programming language alone proves nothing.

I think all of this is just some more skippable junk being added to the web.

For the sake of argument, let's assume that yes, you are perceived to be a better programmer based on your language. What happens after that very first impression? Can you show yourself to be an incompetent ass after stating your flashy language? What if you smell bad? What if you have an annoying voice, or an obnoxious laugh?

Junk, I tell you! This is useless junk.


I can say for certain that the demand for solid .NET devs is really high in the Philadelphia area right now. I am constantly bombarded from recruiters, and now even old employers that are offering me new positions. Beyond this, I've actually gotten a chance to look at some resumes over the last 2-3 months and it seems that the typical applicant who gets at least a decent consideration isn't even all that skilled or experienced.

On the other hand, when I was searching for a new position some 7 to 8 months ago, the few python places here seemed to have unrealistic expectations of their applicants.


The exact same in Minneapolis. I'm definitely not learning Python for a job—it's strictly for fun side projects, which you really don't get in either .NET or Java. The main reason I'd avoid those languages would be to avoid mercenary programmers, and instead find a dev who gives a shit.

Choice quote (paraphrased) from a .NET dev: "who cares what the code looks like, you should be gone by the time anyone would look at it."


If you're wrong in that train of thought, that makes two of us. I just landed my 2nd new job this year, and both new jobs were in .Net development(the first one was a 6-month consulting gig that just ended last week). I don't think it's going away anytime soon.


I think it says:

"learn Python, win over your peers".

"don't be a dick, win over your peers".

"learn ruby, convince your peers you're good at CSS too."

"work at facebook/google and be popular."

Mixtent is a popularity contest. My bet is, if you asked someone on the street with no knowledge of programming "who is a better engineer". Split by name it would be random 50/50. But if you included where they worked, then the Facebook or Google person would win.

It is interesting though.


Interesting information. I am curious if they can tell whether this will be the same over time or if things such as Node.js and other languages will take over.

I figure being a team player will probably never change.


Ruby is actually incredibly beautiful. I used to think Python was beautifully concise and minimalist till I started playing with Ruby.

I don't use Rails, though. But I do write and use Ruby for hundreds of everyday data and text manipulation tasks. Its also great fun for sucking data from a database and slicing and dicing it into a dozen different formats really quickly.

I love its natural language constructs. They're incredibly productive.

Python is like that, too but I find myself drawn to Ruby. It is fun in itself and it does make drudge-programming fun again.




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

Search: