A Free Trial That Lets You Build Big!
Start building with 50+ products and up to 12 months usage for Elastic Compute Service
How often does emerge from the cubicle to look around, note new faces or new facial expression on old ones? How often does emerge from you technology stacks to consider better another approaches/practices?
If you do this rarely–bad for you, you'll miss important changes in your environment, loose the track or even worse– You'll work hard in wrong direction. This was important not only to being qualified, but also to being competitive and has broad experience.
But, my time was very valuable, so even downloading something and reading its documentation are an investment I ' d rather sho Rtcut if I can. Therefore I definitely need some I-measure current trends, so I can predict outcome of my investment–diving into NE W Technology (or even technology stack).
As a super-web-developer I ' m about to consider the following frameworks to Learn:ASP.NET MVC, Django Python and Ruby on R Ails.
[Note:i ' m aware that PHP have its own MVC frameworks, the most popular of which I believe is CodeIgniter and CakePHP. While PHP was vastly more popular than any of the frameworks above, I decided to does not consider PHP frameworks and leave them For another post.]
Here is important factors to consider before start learning any new language:
It obvious you can ' t have both. It'll be either limited in functionality, but well tested or would have a lot of libraries (probably third-party) which M Ay not work or require some modifications. I tend to think that ASP. NET MVC is the first case and Django and Ruby are the second. What option was better depends on a project, deadlines and you competency in web-related areas. Hard-to-judge, Really...so lets move on to the next section.Quality of tools
I ' m a big fan of jetbrains company and their products, so I am pleased to find out they has rubymine for Ruby developmen T, Pycharm for Python development. And I ' m pretty satisfied with combo Visual Studio + Resharper in ASP.
I didn ' t review non-windows IDE, so probably I ' ve missed something awesome. Please let me know if something worth-to-checkout are out there.
As a result–i don ' t see a big difference in quality of the tools for those frameworks.Community
Oh, that's really interesting part. Because Here we can measure something (not only rely on our own opinion). I often use Google Trends to measure relative interest in technologies.
Please note that you had to search for "Django Python", otherwise you'll get invalid results– "Django" is a quite popular wo Rd in Non-programmers areas.
"But this ' s not fair" –django-fan would say. Okay, we can do another search by using Google Insights and specifying "programming" category
Interest Level (Click to enlarge)
growth relative to the programming category (Click to enlarge)
On this stage it's obvious that Django and ASP. NET MVC is not so common as the Rails framework. But at the same time, interest to ASP. NET MVC is growing more than to Django and Ruby.
Another-Avoid invalid results for "Django" meaning are to compare frameworks websites popularity:
But it's not so useful as it shows traffic for domain (ASP), but not exact path (ASP.NET/MVC). So we can ' t take it into consideration.
Another good resource for technology statistics are TIOBE programming Community Inex:
|Delta in Position
|Visual Basic. NET
And it ' s not all yet. I ' M proud to is a part of the StackOverflow community, so let's count how many questions each framework rises:
35,182 ASP. NET MVC
75,875 Ruby on Rails
(These numbers is subject to the change of each day, so you'll definitely'll see larger numbers)
Well, the looks like Ruby on Rails have twice as many questions as Django or ASP. To me the indicates pretty clearly that Rails are more active than Django or ASP. Or Rails is more confusing and people ask more questions about it, but I doubt that. Also Remember our findings from Google–ruby community are much bigger than Django or ASP. NET MVC, so StackOverflow Numbers just confirm that.Demand of technology Specialists
This factor is a little bit tricky and probably should was considered along with average salaries per technology. But salary vary from company to company, so let's omit this axis.
Indeed company have good insights on what's going on a market, so let's examine it:
And again, we see the same picture. Ruby on Rails have spread more, but starting from January one, interest to the technology is falling. Some may explain it by recession, but let's take a look in ASP. Mvc–it is growing during the whole T falling (along with other technologies) this year.Summary
Choosing Web Framework is tough task because of the big number of aspects to consider. Some of them we ' ve examined in this post, but there is others such as language beauty, performance, hosting cost, Integra tion cost and so on. It's up-to-decide what the framework to use and I believe your choice may vary from project to project. Despite your choice, make sure to make Data-driven decision.
A nice MARKETING background check. A nice technical check would is also interesting for a developer.
From my own experience with these three platforms, I would has to say that a big part of the supposed "popularity" of Rub Y-on-rails on the sites like StackOverflow, is the massive amount of Googling one have to does to accomplish anything on Ruby . It is the complete opposite of ASP.NET-MVC. With the Microsoft stack (ASP.NET-MVC), things seem to just work. I can grab the latest tool stack, the latest version of the platform, and go. There is great books with tutorials, which does actually work–and just a smidgeon of Googling is required. With Ruby-on-rails (RoR),.. Well, perhaps part of the problem is so you had a zillion script-kiddies shoving incompatible, non-working code into it . It takes a massive number of third-party (that's, from strange unvetted sources) libraries to just get started. And everything is version-dependent, so you had to pull in and learn more tools like RVM, Bundler, Gemsets, rbenv, and de Al with platform differences (Debian vs Red Hat vs Mac etc). I am NOTProud to report the recently spent straight hours trying to get what should has been a very trivial website back on It ' s feet, just because basic tools refused to work. There is Google resources online, true:but 90% is flat-out wrong, or out of date. So, it would surprise me if there were not a massive number of google-searches for the poor developers struggling with try ing to get something into work in Ruby. My experience with Django is not as smooth as ASP.NET-MVC and not nearly so bad as Ruby. It's far from cheaper to spend a little money on a good tool so works, rather than something free that'll bury you in Time-traps. That's being said, if you did insist on implementing with Ror–i ' d advise using a Vsan (I am having great success With VMware Workstation). At each milestone of your development, test your app–and if it still works, create a snapshot. That is, when it gets hopelessly broken (and it'll, many many times) –you can always revert back to thaT last snapshot.
Git and Rails have For me been a joy to work with. Configuration of the different environments is especially painful for the uninitiated, but I ' ve found that I neither requi Red Gems for this purpose, nor has I run into substantial problems with the native framework.
Perhaps I'll find that I enjoy ASP. Better when I get to working with it. Good thoughts.
I agree With more than everything in the comment as well except this tidbit: "It's far, far cheaper to spend a little money on a G Ood tool that works, rather than something free that'll bury you in Time-traps ". OSS does not bury your in time-traps. I know why do you feel this, I too has had the same nightmare of getting a very basic RoR Web site back on it ' s feet aft Er a server migration, it took too long and too many gem versions and Kludgey code. It was a ABSOLUTE nightmare to say the least. I have stopped with the RoR stuff. We use Django and ASP. MVC5 mostly now and there has been no real issues that I can complain about. I find the issue with RoR and PHP was there are far too many script kiddies in both of these communities. I get that both is easy frameworks and languages to learn and it's inviting for newbies to pick-up but it ' s causing probl EMS.
Love how do you compiled Google Trends, indeed.com, and all so to get the big picture. You already cite tags counts from StackOverflow, and you can get a even better picture from data.stackexchange.com. I put together a basic query showing tag trends over time: https://data.stackexchange.com/stackoverflow/query/ 162567/technology-trends-questions-per-tag-per-month#graph
A good worker would always get the work or create their own. All the Nerd-chat tires me, which is the "better" this or that. It doesn ' t matter how clever the latest tech is or whether someone can quote the difference between one set of tools and a Nother. It doesn ' t matter as getting a job or a promotion is usually based on the WHO's know rather than what are you know. A Well networked worker would get promoted over someone with zero or little network even if they has less technical skills . 99% of managers really couldn ' t give a toss if you use Ruby on Rails or ASP. NET MVC or supertech9000 if you show no Enthus Iasm or motivation.
Some people really need to stop being so fucking pretentious and start looking at the bigger picture.
Django is my fav
Choosing Web Framework:ASP.NET MVC vs Django Python vs Ruby on Rails (reprint)
Start building with 50+ products and up to 12 months usage for Elastic Compute Service