Like other users, I really, really wanted this submission to be accurate, because I am interested in salary information myself. However, that didn't stop me from questioning it.
I've noticed that few submitters or commenters ever take a few minutes to question how the data might have been collected and/or measured before contributing.
Here's a simple way to "test" results to see if any "bugs" exist. The user input could be misleading, the algorithms could be way off, or whatever. There is a lot of statistical terminology describing ways a conclusion could be flawed. Is the article is on the front page because it is accurate, or simply because users found it was novel? Is any of the results worth a damn?
It's very simple to replace Programmer with Engineer to mix things up. This changed results as follows:
C: (-24K), from 118K to 94K
Matlab: (+33K), from 70K to 103K
Also, the gap between Python and Ruby salaries increases from 8K to 19K.
Thus, instead of trying to derive meaning from nonsense, it's better to move on.
EDIT: The submitter of this article has "machine learning" in the about section of his or her profile. Isn't that statistics?
EDIT2: And if you unclick "search titles only" for my query, then
Java, C++, C#, Python, Ruby, and Perl salaries are all 100K +/- $2K (99K to 102K.) One could probably create a query that shows anything they wanted...
Small sample size leads to greater variance, naturally. Better samples with no location:
The point is, changing programmer to engineer changes the rankings and salaries dramatically. pg called it noise.
don't assume that any links here withstood the submitter's professional scrutiny (are you serious?)
It wasn't a link; my understanding is the submitter (who happened to be you) specifically typed in all those parameters themselves. I apologize for coming off a bit cross; I almost always avoid that.
I'm not seeing this
I said the query I posted (with Engineer), not yours.
Anyway, it was a great idea, and anybody should be able to submit whatever they want and let the public judge; in this case, the post title seemed to overstate what it was showing. It was called "Salaries in SF (2009)", as if it was a report with analysis, but it was something linking to a search result, something likely to be different two weeks or two days from now. Maybe a blog post would have been better, as it would allow for multiple runs, analysis of the strengths and weaknesses of the methodology, and preserve the state of the results in the form of charts, as well.
I wonder why C programmers make so much compared to other developers. Prbably because they are experts in some very specific domain and they happen to need C to fulfil their needs; they're really network stack developers, cryptohgraphy developers, compiler developers etc. So simply learning C wouldn't get you those salaries, both the fact that they use C and that they earn that much in comparison are the consequences of them being experts. Another example of correlation not being causation.
Like it or not, Javascript is one of the most important languages around. It's also the language that people feel they can code without knowing -- hence all the shoddy JS out there. While it's not perfect, JS frameworks help, and I think someone should be looked down upon for wanting to know which one is the best use of their time.
laughs Come on paddy_m, it was mostly a joke. Last year at work, we compared lots of javascript libraries out there and discovered that they are mostly pretty difficult to compare. You have to get past the similarities and style semantics to discover which one to use.
Some points of comparison I thought were not too valuable had traction with developers while some that I thought were important were not. This was just another inane data point showing the current popularity of various javascript libraries.
One thing that is ironic is that, at least when I generated the statistics, the easiest to use library, jQuery, also had the highest paying jobs associated with it. I suppose ease of use generates higher usage, which means more popularity of the framework, which translates into higher pay for those that get it.
FYI, BGI in San Francisco (large institutional investor firm) uses visual basic on their core trading platform (handles all instrument classes). Their visual basic developers there make more than 100k. Their bonuses are big too -- 50% of their salary usually.
Wouldn't this data be seriously skewed by not including Silicon Valley where a lot of developers in San Francisco commute to? Silicon Valley has much less financial companies, most of established tech companies, many start-ups? [Edit: added this] I'd imagine the (more established tech companies, less financial companies) should seriously skew the supply/demand for developers.
Of course, the data is noisy and many of the samples are statistically insignificant.
I just did listings for Mountain View and they were basically the same. Off by maybe $1-2K. The language pattern was the same: C had the highest salaries, then C++, Python, Ruby were all fairly high, Java was a bit less, Basic was the least.
Are there really programming jobs where you only use one language? I'd prefer to work with people who use the right tool for the job. I work with C/Java/Perl on a daily basis and occasionally modify Ruby or Python. I've also used quite a lot of C# in the past.
In general, I have no language preferences. It's just C# for Windows front-ends, Java for management layer, Perl for configuration, C for core software.
False. I started out in C straight out of school 3 years ago. Like you say, it depends on the domain, but C is still used all over the place. I loved every minute of it (before I left my job to do my startup), but then again I may be insane :)
Ah, I see what you meant: "No one starts learning to program in C anymore," correct? I thought you meant, "no one starts out their career in C." In that case, yes, I started programming in BASIC when I was very young, then several other languages, and then C during college.
Don't forget Basic, visual or not ;)
Matlab is also very popular in engineering.
Personally, I started with toy programs in QBasic that an uncle taught me, then playing around on the TI-80, then Matlab when I entered uni (first 'real' programming).
I've noticed that few submitters or commenters ever take a few minutes to question how the data might have been collected and/or measured before contributing.
Here's a simple way to "test" results to see if any "bugs" exist. The user input could be misleading, the algorithms could be way off, or whatever. There is a lot of statistical terminology describing ways a conclusion could be flawed. Is the article is on the front page because it is accurate, or simply because users found it was novel? Is any of the results worth a damn?
It's very simple to replace Programmer with Engineer to mix things up. This changed results as follows:
C: (-24K), from 118K to 94K
Matlab: (+33K), from 70K to 103K
Also, the gap between Python and Ruby salaries increases from 8K to 19K.
Python: (-4K), 92K to 88K
Ruby: (+7K), from 100K to 107K
http://www.indeed.com/salary?q1=Engineer%2C+Java&l1=San+...
Thus, instead of trying to derive meaning from nonsense, it's better to move on.
EDIT: The submitter of this article has "machine learning" in the about section of his or her profile. Isn't that statistics?
EDIT2: And if you unclick "search titles only" for my query, then Java, C++, C#, Python, Ruby, and Perl salaries are all 100K +/- $2K (99K to 102K.) One could probably create a query that shows anything they wanted...