5 ms·
Quite honestly, if someone asks me for a technology for their backend, I'll ask if they need performance or flexibility. The answers will be Java if they want t
by tetha 11y ago
Quite honestly, if someone asks me for a technology for their backend, I'll ask if they need performance or flexibility. The answers will be Java if they want to be fast, or Ruby if they want to be flexible.
Those are not shiny new kids on the block, but they are understood, proven technologies.
- aantix 11y agoFast in what context? Fast web requests? Basecamp 2 had 50 millisecond responses when employing Russian Doll Caching and Turbolinks.
- theodorton 11y agoI believe fast in terms of concurrency. Ruby comes out pretty bad compared to node.js.
- sotojuan 11y agoIf you want concurrency with Ruby-ish syntax (but a vastly different paradigm), check out Elixir.
- auvrw 11y agowhy Ruby instead of Python? why Java instead of... well, i guess there isn't a language w/ GC and an ecosystem as "mature" as Java. with clojure, which is indeed shiny and new, some people have cake and eat it too: speed of the jvm + flexibility of scripting. i guess a samish sort of thing could be accomplished w/ jython+Java if clj is too flashy. anywho, i hear the "don't go for the glamor," thing and indeed try (i.e. make a conscious effort) to lag 'teh new hotness' by some interval. ES5 strict is usually good enough. indeed, tail calls are the one coolest feat.s ES6 to me, and they're pretty much everywhere unimplemented, including Babel, except maybe for some special cases. w/ Java... it's a language i wish would move toward vanishing -- or at least go one layer deeper than everyday application development. when i first started writing applets, it was the coolest thing ever: Sun was awesome, the same program ran everywhere, there was automagic memory management, etc... now, Oracle's laying down all kinds of noise a/b owning the language, there are other runs-everywhere platforms/methods (ES, LLVM), and the Java language itself just looks incredibly noisy unless one uses some of the really excellent (but wo/man-hour costly) tooling expressly designed for handling it.
- tetha 11y ago> why Ruby instead of Python? Partially, because I've been burned too much by pythons packaging madness. But beyond that, there is a bunch of strong, mature tooling done in ruby. Rake as a task runner, Thor as a simple library for more complex tools, guard as a general nice-ness, if you wanna go there, the entire chef-stack. And if your main application is in ruby, there's very little overhead to use these strong tools to make your entire infrastructure better for little additional education, build chains or further investment.