Site down at the moment, so use the cached page.
PostgreSQL -> MySQL?! I just.. I don’t.. oh no.
Uber wrote a pretty good article about why they switched from Postgres to MySQL. https://eng.uber.com/mysql-migration/
However this is a and extremely specific case and overall I tend to agree with you.
I was surprised to see so many are leaving Lisp for Python… but then I remembered one popular company did exactly that, and everybody spent the next decade rehashing the decision.
I love Lisp, truly, but for modern workloads, the ecosystem is there for Python and it’s not there for Lisp (which Lisp? Common Lisp? Scheme? Which implementation of CL?).
If I want to connect to some Amazon API, there’s already a library in Python that’s well-supported, well-documented, and has tens of thousands of users. If I want to do that in Lisp, there may or may not be a library that may or may not work and may or may not be kept up to date. Python has networking and encryption in the standard library, etc, etc.
I remember reading an article by…Paul Graham?…about writing early web apps in Common Lisp (I think it was the original Yahoo! Market, but don’t quote me on that). All of the things he talked about were revolutionary, and he was right that nobody could do what they were doing at the time…but that was because nobody had written it in any other language either. When you’re starting from absolute scratch, Lisp will win, but very, very few projects are started absolutely from scratch anymore.
I remember reading an article by…Paul Graham?…about writing early web apps in Common Lisp (I think it was the original Yahoo! Market, but don’t quote me on that)
You remember correctly. http://paulgraham.com/avg.html
Most things in technology are there because of legacy and overriding commercial imperatives.
Alas, very seldom in this industry does the best technology win.
I’m mainly a Python programmer these days. I know that there are a few irritating things about it, and this might be why some people decided to switch.
I’ve never worked seriously with Go. I’ve just created a few simple programs here and there. So I can’t really speak about it.
I’m curious; for those of you who code in Go daily, and who have already coded in Python for several years, what are the real advantages of Go that justify a switch?
off the top of my head; type safety, real concurrency, some machine density / performance gains.
more than anything i just really like the choices the language designers have made, it leads to clearer programs that are easier to maintain.
it did not replace python as my “batteries included” scripting language. go is great for medium to large projects but struggles a bit for very quick tasks still.
There are a lot of cool analyses that can be written based on this data.
Some interesting paths I saw:
Haskell -> Erlang -> Python
Haskell -> Scala -> Java
R -> C
One thing that doesn’t quite make sense in this analysis is that it implies that Objective C will be more popular than Swift.
I’m guessing that’s from people that tried to jump right into Swift, but got bitten by immaturities in the language/toolchain & are switching back; plus, Objective-C → Swift is probably such an obvious transition that there aren’t many blog posts about it.
On the last point, that’s definitely something any use of this data set needs to take into account: it’s not a measurement of how often people are switching languages, but of how often people are blogging about switching languages, which may or may not be a good proxy.
It’s odd to me that the post didn’t at least acknowledge that confounding factor in its list of caveats. In fact it seems to sort of state the opposite:
We can actually treat this as probabilities from switching between languages and say something about what the future language popularities will be.
Does anyone else find it interesting that according to this C will become more popular? (along the lines of Go)
But anyway, I nevertheless think that “writing about” is especially not in IT reflecting usage a lot. Especially not outside early stage startups. So I think one shouldn’t make business decisions on such data. Go is in a state where Ruby was a few years ago. It’s not considered the very new thing anymore, serious work has been done with it. There is a couple of companies using it. And no, there wasn’t just RoR. See the DevOps tools (Vagrant, Chef, Puppet, etc.).
Currently Go is mostly very big in the DevOp scene as well. And while I am not saying that Go will go the same way as Ruby (I really hope it won’t) I think it just shows how hard these things are to predict.
Another thing I find interesting is the X is dead assumption. Here it is very clear that the job market diverges a lot from assumptions. PHP, Perl, etc. all have jobs from startups to enterprises and from 40k to 200k and when you look at your average distro you will find that library updates are way more frequent than on other languages, other than C/C++.
I am saying that as someone who doesn’t have PHP or Perl on their resume, but Go and Python.
Maybe it is also a “I did speed up my code from X to C”. That would explain the high frequency for “R to C” and “matlab to C”. Other occurences “Pascal to C”, “Fortran to C” will indeed be more about code-base migrations. I however think the “Fortran to Python” and “C to Python” migrations are just not mentioned as often, they tend to be liberal rewrites, that don’t lend themselves for blog posts.
What I find interesting about the “popularity of C” is, that when I was looking for C/C++ jobs a few years ago, there weren’t many. And I know quite some devs, that tell the story of going from 100% C and C++ programming to not at all or rarely - often without changing jobs.
Just goes to show that Java is indeed the Cobol of the 2000’s.
And that C# is the Visual Basic.