
I was recently summarizing my thoughts on some of the popular development languages and frameworks and figured I would share those thoughts.
Caveat: Of course there are many more wonderful options. Your mileage may vary and I am sure many people have contrary opinions. Also, I think there are many other considerations and this is not meant to be a comprehensive review. You have been warned. : )
Ruby on Rails
very productive and “fun” language and framework for developers
great to launch a new product with if time to market is critical (when is it not)
not many developers in Houston area, but bunch in Silicon Valley
may see performance issues if the platform scales beyond certain size
will have to invest more in server infrastructure as Rails apps take more memory and are simply slower. There are countless reports of startups going from 20 servers running Rails to 2 runnig Go.
vibrant open-source community
Python with Flask or Django
very productive and “fun”
Flask is lightweight, but Django is batteries included framework like Rails
Django and Rails are about the same choice just philosophy about configuration vs. convention differs
great to launch an new product with if time to market is critical
I think there are more developers in Houston for Python, but have not seen any stats
not as performant as the likes of .NET, Java, GoLang
will have to invest more in server infrastructure as Python apps take more memory and are simply slower
vibrant open-source community
Go
many startups are switching from Ruby and particularly Python to Go.
the language was invented by Google; it’s compiled and statically typed
incredibly fast and low memory usage especially as compared to Ruby and Python
easy to learn
built-in libraries are batteries included
fairly new so the library support is not as mature as other frameworks
not sure about availability of programmers, but it’s 20th most popular language now
good open-source community; most are incredibly passionate about Go
probably the best concurrency model out there
.NET
very productive for developers
Microsoft stepped up its game in recent years and adopted lot of Rails inventions like package management, MVC, etc; recent .NET version is on par with Rails and Django
ton of developers in Houston and elsewhere
often used to create enterprise solutions and not as popular with startups
recently open-sourced by Microsoft (although we’ll see how that works out)
MS announced support for Linux and MacOS X; at the moment that’s still in BETA and fairly immature
Azure is awesome when it comes to cloud hosting and of course MS tools like Visual Studio work with Azure very well
until the open source community really embraces .NET, startups will play in MS’s walled garden (which could be good or bad)
C# is a wonderful language and many developers tend to be passionate about it
can build performant solutions at scale