5 ms·
I'll actually answer your question. Ruby and Python are now too good at doing webby stuff in that there are not enough Ruby devs to meet the demand of companie
by 3pt14159 15y ago
I'll actually answer your question.
Ruby and Python are now too good at doing webby stuff in that there are not enough Ruby devs to meet the demand of companies without skyrocketing salaries. It is easy to hire good Ruby devs, provided you have $400k to spend per year, but that isn't your real question.
Your real question is what languages will people really, really want to work for my company to use because nobody else is using them. I can only think of a couple: Common Lisp, Closure, Scheme, Smalltalk. There are others that are happy-fun languages but not necessarily I love you languages that few startups are using: Scala, server side CoffeeScript, Io, F#.
But the problem you run into there is that many of these languages don't have as many webby aspects to them which is why fewer startups use them in the first place.
I'd probably recommend Scheme because it has the best book of all time: http://www.amazon.com/How-Design-Programs-Introduction-Programming/dp/0262062186 http://www.amazon.com/How-Design-Programs-Introduction-Progr... That book can teach anyone how to code Scheme. Although all the languages I listed are awesome.
- Murkin 15y agoCan you perhaps point me to one of those $400K Ruby jobs ? Kidding aside, he wanted something with a strong existing application / infrastructure base. And while CLisp, Closure, etc are fun, we can all agree that starting 99% of web projects in them is probably a bad choice.
- 3pt14159 15y agoMaybe Murkin, but Ruby was a bad choice. It's all what you build on it, and part of the fun might just be building and understanding things better than just doing "require 'i18n'". Ruby is an amazing language, I love it, but so many things have been solved already it feels like it is a game of pick the package, rather than actual fun, at least in web development.
- thmzlt 15y agoI felt the same way when I tried to start a "real" web project in a different language, and I got back to Ruby because I was more interested in implementing my own ideas rather than re-implementing existing solutions. It means you should try to understand the libraries you're using instead of arbitrarily picking packages. Devise (https://github.com/plataformatec/devise https://github.com/plataformatec/devise) is a great example of that as they explicitly tell people not to use it unless they have a good understanding of the Rails framework.
- Murkin 15y agoIn our startup we choose Ruby&Rails, might not be the most fun language and framework. But the #1 priority of our dev team, is to build the product - fast/simple/modifiable. Same goes for Python&Django. I personally believe in to choosing the best tool for the job - not the most fun/esoteric/interesting/etc one.
- hello_moto 15y agoI'm a little bit surprised that Ruby and Rails are considered no longer fun. What's fun these days? LISP and JS?
- sanderjd 15y agoMight be a good way to know if you're doing something boring if you're just playing the pick-the-package game. If what you're doing is less interesting than re-implementing all those packages, then it might not be worth doing.
- cppsnob 15y agoOh, that's what he's asking? To the OP: do your startup in Java. Then at least you'll be hiring devs who give a damn about building your product, rather than ones who just want to screw around in whatever's shiny and new.
- hello_moto 15y agoI don't know why you guys downvote cppsnob (unless if he's being sarcastic). Some of the Java startups look more solid than the rest. Zimbra, SpringPad, LinkedIN.
- cppsnob 15y agoThanks hello_moto. I wasn't being sarcastic -- I mean what I said earnestly. Put another way: find developers who want to work for you because they want to build what you want to build, not ones who will only work for you because you chose "technology X" to build it. One way to guarantee that is to choose a tech that you're positive can do the job and is boring... Java is that tech.
- olliesaunders 15y agofind developers who want to work for you because they want to build what you want to build, not ones who will only work for you because you chose "technology X" to build it Some people will be perfectly content to build anything just as long as it’s written in <their choice obscure language>. For other people it might be really important that you use agile, or that they are given a greater level of control over the development process, or that they can work from home, or whatever it is that they care about. So really I’m saying is that you should generalize your advice here: find people who care about what you care about. Don’t try to guess what that is. And to do that, go away and figure out what exactly you care about, ask other people to do the same and compare notes.
- hello_moto 15y agoThis is the way to go: people that are in the same page with you. Leading such group is definitely far easier. Ask yourself who you are and find the same people.
- SoftwarePatent 15y agoThat's a good book. Here's a link to the complete text online, on the official website. http://www.htdp.org/2003-09-26/ http://www.htdp.org/2003-09-26/
- sanderjd 15y agoNit-pick: it's actually spelled "Clojure" - wouldn't matter, except for the existence of Google's tool set called "Closure", which Clojure's browser hosted version uses, leading to lots of room for confusion.
- SkyMarshal 15y agoI can only think of a couple: Common Lisp, Closure, Scheme, Smalltalk. There are others that are happy-fun languages but not necessarily I love you languages that few startups are using: Scala, server side CoffeeScript, Io, F#. That's Clojure (http://clojure.org/ http://clojure.org/), not Closure, unless you're referring to Google's JavaScript compiler (http://code.google.com/closure/compiler/ http://code.google.com/closure/compiler/). And I wouldn't call Scala a 'happy-fun language but not necessarily an I love you language' (what's the difference b/t the two?). Twitter is using it to replace the non-scalable parts of Rails, and FourSquare and BankSimple are built on it from the get-go. Also, anything based on the JVM, especially Scala and Clojure, have tons of 'webby' libraries and frameworks out there. Start with the Lift and Play web frameworks, respectively, and the Netty async server, among other things.