Python is also strongly represented, but zero started with back-ends on Java, .Net. PHP, or other more broadly popular options.
This is strong evidence that the startup world is dramatically different from that of enterprises and businesses where tech is ancillary (which dominate total numbers in popularly shared statistics). In many ways it's a vindication of PG's old essays. Though we're not all using Lisp, startups lean towards it.
Alas, with most non-Ruby devs it is nearly impossible to compliment that brilliant, wonderful language (and Rails). It's become popular to look for a reason to hate a language you don't write in, and usually tech stacks are sold by putting down other stacks, like when NodeJS came out.
Also, "dumped" is the wrong word, because you insinuate here that they stopped using ruby altogether. That is not the case; the percentage usage declined in relative terms, but I do not know of any of these companies to have gone down to zero percent in regards to ruby. Which is typical - big companies use all sorts of different languages.
> Alas, with most non-Ruby devs it is nearly impossible to compliment that
> brilliant, wonderful language (and Rails). It's become popular to look for a
> reason to hate a language you don't write in, and usually tech stacks are sold
> by putting down other stacks, like when NodeJS came out.
When it comes to speed, they have a point - there is just no contest between C and C++, when comparing it to ruby or python.
In my opinion, though, most of these who critisized ruby and python, are actually also people who are VERY very bad in either of these two languages. Some of them are still stuck with C and perl, too old to learn anything new. And no, the "I'm gonna learn a new language every week" crowd does not count - I have seen too much atrocious coding pattern by these people.
And of course, everyone understands the speed argument. But that has already been settled. Speed matters when speed is very important. I've seen people
recommend that I stop using Python and learn Rust to create a medium sized API. The average response times for the API that I had already completed was 30ms. That's a fraction of a second. I haven't used Rust yet, so I don't know what the performance difference would be, but why on earth should someone rewrite an application to save themselves a unit of time indiscernible to both the developer and the customer? Even if my load times increased a fair amount, nothing would be lost.
As far as people who don't mind learning another language, I can understand why that's fun, because it is. But when you have work that needs to get done and needs to be done with assurance, you don't have time to learn another language and figure out its quirks, shortcomings, and strengths all while trying to build that feature. My belief is that you should be able to write a language like a member of its community. If you don't have the intention of doing that, then you shouldn't really be messing with it. (for example, don't write Python like it's Ruby)
It has been my experience in New York City that people who criticize Ruby and Python tend to come from languages that are strongly typed and use them at work. It is cool to hate on a language because if you do, then you get to feel better about yourself just by subscribing to another community and hiding underneath that umbrella. You don't have to contribute to open source, answer questions online, or give talks at your local meetup. You get to call yourself a better engineer just by subscribing.
Anyway, I got way off topic. But the point is that when Ruby came out, there were plenty of options. People went with Ruby and Rails probably because it's a lot of fun to finish your work. I know that I really enjoy finishing my work.
That's rubbish. Why should python excel here in biotech
related aspects but ruby not?
Note: I am a molecular biologist by trade who went
into using ruby primarily. I also use python a lot.
I remember the old HUGO project; lots of that code was
written in perl. So why exactly would ruby be unfit here
but python would? Please give your EXACT reasons.
> so Ruby might have had it's day as people are
> building early tech in new fields.
that there ought to be a hype-buzzword trend. The whole
fake AI field ticks me off - they don't understand why
they can never achieve true intelligence, yet they keep
on claiming it. And people parrot how python will be
DOMINATING in the fake AI field. So many fakers.
How many of you guys actually even understand neurobiology?
More technical debt comes from growing quickly (engineers, turnover, employees) and changing business assumptions, not the programming language.
The prebuilt libraries are the main advantage Ruby and Python have. A converter for them to new languages would negate that, though.
And there are many good engineers who are well versed with the language.
While something like kotlin has a small learning curve and gives you a lot of the benefits of scala. And it's backed by google, jetbrains & the investment that goes into android. Most people understand ADTs, nullable types, lambdas and data classes fairly readily.
A more mature company settles into a typed GC language (Java, C#, Golang) and a typed static language for perf benefits when needed (C++, Rust). Yes there are typed versions of various dynamic languages now, but you don't get the speed benefits that the typing gives you, and a large part of the library ecosystem that you will interact with will still be untyped under the hood.
See Rails callback hell as an example.
Now that Shopify, Github is ( or going to be ) Taking more hands on approach in Rails development rather than Basecamp, which other web framework have this luxury of billions dollar companies doing live testing for it?