Hey y'all. Come visit me at dkeithrobinson.com
July 14, 2006 |
38 Comments
I’ve got a small problem. I’m going to approach this small problem like I would a small problem I need to solve at work. First let’s define our goal (without giving away too much):
At Blue Flavor we want to find an open platform or framework that we can start to build “tools” on. We’ve got well thought out ideas for these “tools” and have been looking to find the right technology, and development resources to match. A few more details:
Now let’s talk about our problem…
We’ve looked at Django quite a bit and we really like it. It seems Web publishing focused and very powerful. Our biggest problem right now lies in resources and maturity. It’s young and we’ve had trouble finding people interested in helping out. When compared to Rails it seems very active and enthusiastic yet the pool of resources is much smaller. But maybe we’re not looking in the right spots? Keep in mind, the Seattle dev scene doesn’t seem to be big on Rails or Django…But, again, it could be we just don’t know.
Ruby on Rails is interesting because there are lots of great resources and we feel finding a developer or two would be a bit easier. There are also some open source applications that we could take and fit into our plans, as opposed to developing from scratch. Our biggest problem with Rails (so far) is that I don’t get it. It seems much harder to get to that “limited” understanding I’d like to have. Not sure why…
I’m not a programmer and I’d love something that I can at least understand on a limited level fairly easily. It could be that I just need to spend more time with it and something will click, but as of right now I personally prefer Django because I sort of “get it.”
My fear is that with Rails we know what we’re getting and are fairly sure we’ll have the support right now but that if we go that direction we might be missing out on something really great with Django. As well, both my partners and I get Django a bit better at this point.
In the end the technology we go with isn’t what will make or break our plans. I’m reasonably sure there are many solutions that could work, the trick is finding one that fits Blue Flavor as a company and our internal resources and doesn’t end up costing us an arm and a leg. There are all sorts of cases for and against either one of these, and we’re pretty interested in both. Making that choice, and sticking with it, is kind of a big deal for us.
Yeah right. If I’d had a solution I’d be writing that up instead of this. Oh, and before you make the leap, I do usually get my small problems solved, but we’re still working on this one. This post is “a creative beginning” (I hope) to finding a solution…ahh, yeah it’s Friday.
So, anyone got any advice? ;0)
Filed under: Web Development
Keyword Tags: django rails web+development
Well, you know my opinion, so i won’t harp on that. I will say this, though…
Your concern about Django’s “maturity” is perhaps misguided (or maybe not…just depends what you mean by “maturity”). Django is actually no “younger” than Rails (both were developed at about the same time) and has actually been in use on real-world, production applications longer. I don’t think it would be accurate to say that Django, the framework, is any less mature than Rails. It has, however, been open-source for about a year less than Rails, and it’s true that the community isn’t as large as Rails’ is right now. So, it might be accurate to say the community is less mature.
I really think, when it comes to choosing between these two framework, the deciding factor ought to be the single biggest difference between them (they have a LOT more in common than they do differences). So what’s the single biggest difference? The programming language. Python vs. Ruby.
It’s a personal choice, of course. If you’re already an expert in one or the other, then the choice is obvious. If you’re not? Well, I’ve never used Ruby so I can’t speak to it very well. But, I will say that Python is one of the most popular programming languages in the enterprise world. Major companies like Google and Apple make heavy use of it. What’s the biggest company you can think of that uses Ruby? I’m sure there are some, but the biggest one I know of is 37signals.
The point in all of this, of course, is that you’re looking for a developer or two that know their way around Django or Rails. I think you’re going about it wrong. Any Python programmer can learn Django in a couple of days.
The difference here is that Rails *is* Ruby. No one cared about Ruby before Rails. Rails is Ruby’s killer app. Python, on the other hand, is used for countless things and has a much, much, much larger installed based than Ruby or Rails. Django is one of many great and popular Python projects. It’s not Python’s killer app – it’s just one of many Python projects.
Don’t look for a Django programmer – look for a Python programmer. There are millions of them – far more than there are Ruby programmers, for sure.
Or better yet, don’t look for either one. Find a great programmer and let *them* decide what the best tools are for the way they work.
Posted on July 14, 2006 04:24 PM | #
Oh, one more point that applies to both frameworks (and I’m stealing this directly from Rails creator David Heinemier Hannson, who said it at Snakes vs. Rubies):
You’re concerned because there don’t seem to be that many Rails or Django programmers out there. There are 5 million PHP programmers and only 5000 Ruby programmers (I’m making these numbers up, but the point is the same). But I’d ask you: how many do you need? Do you need five million, or even five thousand, programmers? No, you probably only need one. Or three. Or five.
Point is, there are plenty programmers in whatever language you choose to suit your needs. There’s no lack of people looking for jobs on the Django mailings lists. You can also post your job opening at gypsyjobs.com, which is a Django-related job board. I’m sure Rails has similar resources, I just don’t know what they are.
Posted on July 14, 2006 04:28 PM | #
I’ll keep it short and sweet: http://modxcms.com/
Being the co-founder of the project and virtually code-creating-disabled (but an OK hacker) I can say that it fits the bill of what you’re looking for. And its ubiquitously deployable (and buzzword compliant). If you want a sneak peek at what’s coming, which is way past what’s available today, feel free to contact me.
Posted on July 14, 2006 04:33 PM | #
Someone saved me. I’ve been seriously injured by the buzzwords on the MODx site and I fear I may not make it out alive.
Posted on July 14, 2006 04:35 PM | #
Sorry to spam your comments, Keith, but have you tried to Seattle Python Users Group?
http://www.seapig.org/
Posted on July 14, 2006 04:44 PM | #
I think I will second Jeff Crofts suggestion of taking a closer look at the languages to make a decision. How well you are able to read and understand the frameworks depends a lot on the programming languages themselves.
Regarding modxcms - why is it that the marketing pages are quite elegant in layout and visual esthetics, while the admin interface doesn’t even come close? And it took quite a while to find the demo, since I didn’t think the forum would be the obvious place for a link to a live demonstration.
Posted on July 14, 2006 05:49 PM | #
Ater looking at modxcms.com, that project seems to be more of a CMS thank an application framework (I supposed that’s why they included “CMS” in the domain name). I’m struggling to see what it offers over blogging packages like WordPress and MT. In any case, it’s definitely not the same type of thing as Django or Rails. It’s a CMS, not a framework for building web apps.
Posted on July 14, 2006 06:07 PM | #
I’ve been playing with Rails and went to RailsConf. While I was there, I made sure to attend all of the sessions on deployment. This and not “understanding” seem to be the problems with Rails.
The deployment environment is seriously lacking right now, but there are a whole bunch of reasons this is getting better (Mongrel from Zedas Shaw, Engine Yard from Ezra (something unpronounceable).
When it comes to building client applications, I’ve been using CakePHP (cakephp.org). The community’s really happy to help, the docs are great, the hosting is everywhere (who doesn’t have php installed?), and I know PHP as a language. This makes for a really nice way to produce projects quickly that remain reliable.
Posted on July 14, 2006 06:18 PM | #
I attended RailsConf last month. There is a lot of momentum behind it. Industry leaders like Dave Thomas and brilliant new folks like David Heinemeier Hansson. O’Reilly will be running the conference next year. Frankly, it’s somewhat unstoppable. People are pulled to Rails because of the elegant architecture and then they discover Ruby and they are sold.
Having said that, though, I agree with Jeff’s point about hiring great people and let them work in whatever tools they enjoy and are productive in. No decision is permanent. Find a tool that works for you now, but be comfortable with switching once you bring a new programmer on board for larger projects.
Good luck!
Posted on July 14, 2006 06:27 PM | #
I think you should watch this, then decide.
Why not try a really small project in one of the two, if you’re not hooked at that point fallback on what you’re already familiar with. Then do the same thing again, but with the other framework. I guess that may not be the most practical approach, but it sounds nice on paper.
Posted on July 14, 2006 06:28 PM | #
I think Jeff said it best when he said you should just find a great programmer and let *him* decide.
Programmers that have decent verbal skills shouldn’t have a problem giving you the basics to either Django (Python) or Ruby on Rails.
Posted on July 14, 2006 06:33 PM | #
We’ve tried, and tried, and tried to get Django installed on our production box but with no luck (it’s on a shared server). And we’re not talking script kiddies either - the guy attempting the install has serious skills in PHP, Java and C++. But to no avail.
Compare this to Ruby on Rails, which ahem, was a piece of cake, relatively. With Django, we kept running into permission problems, root access and more. So many steps to plow through.
Based on Jeff’s recommendations, I sent in a contact form to Gypsy Hosting but have heard nothing back in over a week. The list of Django-friendly hosts is shorter than short.
Again, compare this to Ruby on Rails.
I’ve got many more hosts to choose from and in plenty of cases, the framework comes pre-installed. I just need to do the neccesary deployment routines and it’s ready to go.
I want to like Django, I really do.
But when the installation is so difficult and hosting options are extremely limited, it grows less and less appealing. Time is money, and Django has wasted much of ours.
This is not a good place to be if you want to compare Django against, yes dare I say it, a more mature framework like Ruby on Rails.
Posted on July 14, 2006 09:39 PM | #
What’s important is what you and your developers like best. Not what we like best (we invented Rails so we obviously like it best;) or what Jeff likes best or what the media likes best.
As far as Rails in big companies goes, Rails is used internally by some of the world’s largest companies including Google (it’s really picking up steam there). The approval process of about 60% of all home loans in the US includes processing through a Rails app. So if you’re looking for big company justifications, you’ve got ‘em. But that shouldn’t be what drives you anyway. It means nothing.
Use what you enjoy using most. Only when you enjoy the language and environment you’re working in will you be able to produce great work.
Posted on July 14, 2006 09:46 PM | #
If you choose Django, you wont be sorry. Python is so easy to use, and is growing in popularity all the time. Django is also a proven solution that scales really well. You might also want to check out this http://wiki.rubyonrails.com/rails/pages/Framework+Performance
Posted on July 14, 2006 09:49 PM | #
Thanks a bunch for the advice everyone, I really, really, really appreciate it. I can’t really think about it all right this moment, but I’m sure I’ll be doing lots of pondering over the comments here.
On thing I’ll address (to Jeff) is the maturity comment. I think that’s more a perception thing. Rails seems more mature to me because it seems to have a higher visability and I see more people working with it and I’ve been able to find more examples, aps, etc. But again, it could be I’m just looking in the wrong spots.
Most of our ideas are newish and as busy as we are we’ve probably not done as much research, etc. as we should do before making a decision.
“Find a great programmer and let *them* decide what the best tools are for the way they work.” That’s probably the best bet.
Trust me, this stuff really helps and it greatly appriceated. Thanks a TON.
Posted on July 14, 2006 10:48 PM | #
Just two more things:
1. You might want to look a this also:
2. If you are using Windows, don’t even consider Rails. Ruby on Rails creator and uberGeek David Heinemeier Hansson is a fanatic anti-Windows proselytizer. he is anot about to put any energy into making Rails better for Windows users, who he seesm to think are just plain dumb.
Posted on July 15, 2006 12:19 AM | #
I’ve been using Rails for about nine months now. It’s safe to say I have a fairly good grasp. I really loved Rails until a little over a month ago when I started using Django.
The fact that I will never have to build another admin tool again makes me smile.
From my Rails experiences I’ve learned its a bitch to deploy. However, once you get a rhythm down it’s easier. Maybe I’m slow but it took me nine months to get my rhythm. Took me one night to deploy my first Django site.
They’re both great frameworks in the whole scheme of things so best of luck in your choosing.
Posted on July 15, 2006 01:19 AM | #
Uhm. What’s wrong with Rails on Windows?
Ok, I don’t run production on Windows, but for development it is OK (and Radrails is good).
Sure, I still prefer OS X and Textmate ;)
Posted on July 15, 2006 04:17 AM | #
I am positive that CodeIgniter is much too small for your needs, but I thought I might throw in another PHP option just in case.
I think Jeff makes great points all around on this topic.
Posted on July 15, 2006 08:11 AM | #
Along the lines of the “find a programmer and let him/her decide”, make sure one of your most valued qualities in this programmer is the ability to communicate with you effectively. He (or she) needs to have a teaching personality. Sure, he’s gotta be a great programmer, but he also needs to be able to clue you in on how he works and how he thinks. He doesn’t need to teach you how to program, but he needs to be able to help you “get it”.
There are great programmers who have taught me a lot over the years and they are the people I go to to help me understand stuff. There are others who are fantastic programmers but I never understand what they’re saying. Consequently, they are harder for me to trust and I’m less likely to bring them in on a project.
Posted on July 15, 2006 09:16 AM | #
> 2. If you are using Windows, don’t even consider Rails
That’s a terribly misinformed statement to make. InstantRails makes it a one-click install, if you don’t like that you can install Ruby, then RubyGems, then Rails. You’re done.
> he is anot about to put any energy into making Rails better for Windows users
Are you aware that there are more people than just DHH contributing to Rails, and they *do* care about it running on Windows?
Keith, please ignore comments like that :)
Posted on July 15, 2006 09:33 AM | #
Hello Justin,
I just want to say that, if I were a Windows user, I most certainly would not choose to use a web frameworks created by an outspoken anti-Windows person. DHH is the prime mover behind Rails, it is his baby, he created it, he is the spokesperson, without him Rails would not be the huge successful phenomenon that it clearly is. Of course, as you point out, other people contribute to it.
But if I were a Windows user, I certainly would not support and use DHH’s baby on Windows. People should understand that making wild, rabid, insulting remarks about (in this case Windows users but in principle any group of people) has consequences. DHH gets a lot of positive mileage out of his idiosyncrasies and his rabid fan-boy attitude; but I am shocked and surprised at his venom towards Windows users. I don’t see why he goes out of his way to insult Windows users. I also don’t see why a Windows using developer, in particular, would support and use a product made, promoted and fronted by a leader who calls Windows using developers stupid.
Do you?
Posted on July 15, 2006 11:38 AM | #
Hello Justin,
I just want to say that, if I were a Windows user, I most certainly would not choose to use a web frameworks created by an outspoken anti-Windows person. DHH is the prime mover behind Rails, it is his baby, he created it, he is the spokesperson, without him Rails would not be the huge successful phenomenon that it clearly is. Of course, as you point out, other people contribute to it.
But if I were a Windows user, I certainly would not support and use DHH’s baby on Windows. People should understand that making wild, rabid, insulting remarks about (in this case Windows users but in principle any group of people) has consequences. DHH gets a lot of positive mileage out of his idiosyncrasies and his rabid fan-boy attitude; but I am shocked and surprised at his venom towards Windows users. I don’t see why he goes out of his way to insult Windows users. I also don’t see why a Windows using developer, in particular, would support and use a product made, promoted and fronted by a leader who calls Windows using developers stupid.
Do you?
Posted on July 15, 2006 11:39 AM | #
Re: Hosting: The same thing I said about hiring applies to hosting, too. Who cares if there are 5000 hosting companies that provide PHP support, 100 that provides Rails support, and 50 that provide Django support? How many hosting services do you need? One. That’s all.
Re: Rails at Google: I think it’s interesting that Jason says Rails is picking up steam at Google, since Django is also in use at Google. Clearly that company is taking the approach of “use the best tool for the job” and “let our programmers use what woks best for them.” And that still seems like the best approach to me.
Re: Django maturity and perception: Since you seemed somewhat concerned about the maturity (and long-term viability?) of Django, I’ll point out as well, that Django apps are just Python programs. When you write code for Django, you’re writing Python. If Django dies, you’ve still got Python code that can be re-purposed to TurboGears or another Python-based framework without a lot less effort than writing your app all over again. Although i’ve never used Rails, my understanding is that in order to use it, you don’t really learn Ruby, you learn Rails (Rails being somewhat of a domain-specific language atop Ruby). If that’s accurate, it would concern me a bit. If Rails were to go away, or go in a direction you don’t like, you’d be stuck with piles of Rails code that can’t be easily ported to another framework. Since Python has such a huge user base, and there are handful of good frameworks other than Django written in Python, there’s a little more choice. In the end, though, this is probably a bit of a moot point, because I don’t think Rails or Django are going anywhere.
I guess my personal perception problem with Rails (and a perception is all it is, I’ve never actually used the thing) is that I perceive Ruby to be an irrelevant language outside of Rails. I perceive Rails somewhat as a beautiful house built in the middle of nowhere. It’s a great house, and if you never need to go anywhere else, it’s fine. But it seems like as soon as you try to step out of that Rails fence, you’d be in trouble. Python’s much larger community means there are thousands of pre-made libraries and classes to take advantage of, more people available for support, more books on the topic, and more flexibility if you ever decide to leave Django.
Re: One Love: One thing I definitely should have said earlier but didn’t is simply that both Rails and Django are great frameworks, and you’ll be very well-suited to pick either one. Python and Ruby are definitely both beautiful languages that have a lot more in common than either camp is usually willing to admit. Most any Ruby programmer, if you catch them in a moment of honestly, will tell you that if Ruby disappeared tomorrow, they’d probably use Python. And vice-versa. Likewise, I’ve heard several Rails people say that if Rails didn’t exist, they’d probably be using Django (it seems like I head DHH say this somewhere, but don’t quote me on that). And I can tell you for sure that there are several high-profile people in the Django community (including some of the lead developers) that definitely have an affinity for Rails and would probably be using it if Django didn’t exist.
I guess the bottom line is that it’s fine for the two languages and two frameworks to enjoy a friendly rivalry and to debate the differences between them – but let’s do remember that in the end they’re a lot more alike than they are different, and both are trying to solve the same problem (making web apps stupidly fast and easy to create) in mostly similar ways.
And both are doing quite an admirable job, to boot.
Posted on July 15, 2006 01:01 PM | #
You say you’ll be using this to deply for customers…
My advice would be to stick to what you DO know until you have a decent understanding of it, or you’ll look like an idiot when the problems start kicking off.
Just because they’re both ‘cool’ doesn’t mean you have to use them.
Posted on July 15, 2006 02:12 PM | #
Steven-
I doubt Blur Flavor wants to use a web application framework because it’s “cool.” I would image they want to use one because it makes web development faster and easier, which makes them better able to meet their client’s needs, which gets them more clients, which makes them more money. Just a hunch.
But I do agree with your advice – using any technology for a mission critical site before you understand it is a bad idea.
Posted on July 15, 2006 02:29 PM | #
I’ve used both and I like both a lot.
I’ve found Rails to make slightly more elegant use of convention over configuration, and seems to have a better model for managing database migrations. I also like the RJS templates that facilitate AJAX. Django can do AJAX too, but Rails makes it a bit easier.
However, I must say that I prefer Python as a platform because it has more libraries available, and these also seem more mature in the ones I’ve dealt with. With Ruby, I’d find myself writing my own SWIG wrapper for a lot of stuff I’d take for granted on Python. Of course, this really depends on the task at hand.
I find Django *very* robust, and feel perfectly safe using the latest Subversion trunk. I’ve never been let down. Django is a very high quality project, which is amazing considering the constant improvements.
I recommend Django.
Posted on July 15, 2006 04:18 PM | #
Steven - Jeff is right on. Without getting into too many details, our problem is this:
Most of our clients need some sort of CMS or Community Server or what-have-you publishing tool. If they already have one we’ve got to learn it, meaning we’re learning something new every time we turn around. Most of the time most of this knowledge is thrown away.
If not we’ve got to recommend something. Most exisiting tools suck ass or we don’t know ‘em. We sure as heck don’t own them. So we generally recommend something like Movable Type (for a CMS) beacuse it’s relatively cheap and most of us know how to hack it. Not at all ideal, but it works.
Basically we already look like idiots, at least this way we have some sort of say and or control over the outcome. I don’t like relying on someone elses stuff. Call me a control freak.
As well, experience tells me that a CMS (for example) that’s a really great fit would be one that is truly customized to the people using it. My goal is to find a framework that would best facilitate that.
What we’d like to have is a framework on which we can build our own tools. Something we can sort of “own.” Things we like, know how to use, feel comfortable recommending, know we can extend and have the resources to do that, etc. This then means we can save our clients time and money, get more work, look like overachievers, etc.
Our business model is focused on being the best possible value we can buy to our clients while providing A+ service, flexiblity, etc. A framework we like, understand and can quickly turn our ideas and designs into reality, is something we’re really excited about.
Also, if we build up knowledge doing this we can branch out and diversify our business model. We’ve got lots of great and surprising as it might sound unique ideas (not another to-do list here!) and we want to build experience so that we can realize those ideas.
It’s the same exact reason why I jumped on Web Standards WAY early on. I saw a way to save time, money, effort and at the same time do some really great work. If you spend all your time banging your head trying to implement your ideas, pretty soon you’ll give up and the ideas will stop coming. That’s simply not ok in my book.
Cool has nothing to do with it. Frankly the whole concept of “cool” or “rockstar” or “trendy” when it comes to what I do for a living really bothers me. It’s a job. I love it, but I don’t see it as cool.
Cool would be snowboarding for a living…
Posted on July 15, 2006 04:26 PM | #
To add to my last comment…
Another thing to note is that we’re designers, not programmers. We need support in this area and will have to bring talent in. Part of the reason I posted this is because, as a designer, I thought Django was pretty cool because I could somewhat wrap my head around it, and Jeff’s success stories jazzed me as well. Thing is, we’ve had a hard time finding resources…
Our core business will never be development, although we’ll probably always need development support and will likely want full time resources as soon as we can afford it. But it’s not our core competency. This endeavor is our attempt and helping ourselves while hopefully solving some common problems our clients come up against. It may grow beyond that, but right now that’s where we’re at.
If I sound like a n00b, it’s because I am. I can tell you what’s wrong with most CMS systems, and I’ve got some good ideas of how to fix those problems from a blue sky, anything is doable point of view. My parters and I have ideas for applications, etc that I honestly think would be useful. I can’t, unfortunately, make that happen on my own. I’m trying to educate myself to the point where I can make an informed decision about my business when it comes time for us to bring someone in to help make our ideas a reality.
Posted on July 15, 2006 04:36 PM | #
Keith,
As a guy who writes Django apps for a living I’ve got to say that I’ve been blown away with what Jeff and Nathan have accomplished in so short a time.
Sure Jeff’s programming questions get answered quickly and he’s had a little help here and there but he can definitely produce django-powered sites better than I can turn a photoshop comp in to HTML/CSS.
From a designer’s point of view I think you’ll absolutely fall in love with Django’s template system. Definitely check it out if you haven’t already.
I’m obviously a little biased towards Django but I don’t think you can go wrong whichever way you go. There are lots of places to go if you hit a brick wall with either framework: #django and #RubyOnRails on irc.freenode.net, there are online docs and mailing lists that are quite helpful.
Posted on July 15, 2006 05:23 PM | #
I’m again going to complain Rails ignorance as a disclaimer to this comment, but it seems to be a widely held rule of thumb that Django is more well-suited for publishing and Rails is more well-suited for transactional web apps with more “back and forth” business logic (DHH said this himself on his blog.
This is a bit misleading, I think, as the reality is that Django is perfectly capable of transactional web apps and Rails is perfectly capable of publishing. But, I do think there’s some kernel of truth to it. Django came out of publishing – it was built for newspaper sites first, and then refactored into a web framework for all sorts of sites. Rails comes at it from the other way – it was designed for Basecamp first, and then made into something more general-use after the fact.
So, while both are going to work fine for either, I do think that Django has a few features that are especially great for publishing operations – things like the automatic admin interface, the syndication framework for making simple RSS and Atom feeds very quickly, and the generic views for putting up list/detail and date-based views of content with almost no work at all.
I can’t help thinking that if it’s publishing you’re going to be mostly doing, Django may have some niceties for you that Rails doesn’t include.
Posted on July 15, 2006 05:24 PM | #
To tack on to Keith’s original “maturity” comment, a big problem we’ve discovered is there is zero Django developers in Seattle (trust me, we’ve looked everywhere. And we haven’t had much luck looking outside of Seattle either). Whereas with Rails we are finding a ton.
Regardless of how long both the frameworks have been around, the adoption rate and speed in which developers go from apprentice to master just don’t seem to compare.
As Keith mentioned, we’re not going to be a dev shop, so ability to find a few strong resources in the chosen framework to help us achieve our goals is one of the biggest considerations right now.
What is appealing to us about Django is the flexibility to create powerful apps focused on publishing, quickly and easily. We’ve seen teams with fairly small developer to designer ratios do pretty incredible things.
Rails on the other hand seems to require quite a few more resources to keep it afloat. We’ve seen incredible things come from this camp as well, but with much higher developer to designer ratios.
Keeping this ratio reasonable is pretty important and our clients as it effects our overhead, hence client costs.
Posted on July 15, 2006 05:32 PM | #
Brian,
I would suggest you look for Python developers instead of Django developers. Any good Python programmer will come up to speed on Django almost instantaneously. Both Rails and Django are rather new, so no programmer you find is likely to have more than a few months to one year’s experience with either of them. The pool of Rails programmers is almost synonamous with the pool of Ruby developers, since there werren’t many Ruby developers until the explosive growth of Rails in the last 2 years. Python, on the other hand, has had a much larger pool of developers for a long time, and Python develpers tend to be very, very good. You wont have any problem at all if you find a couple of Python developers, and that should be relatively easy.
Good Luck,
Ron Stephens
Posted on July 15, 2006 05:54 PM | #
It is easier these days to find Rails developers than Django developers.
But your problem is that you want to find a good developer, and good developers are damned hard to find regardless of the platform you want them to work on. So, really, you’re back to both platforms being about even.
You could argue that Django is likely to be a more fruitful source of quality developers, because the Python community as a whole is orders of magnitude larger than the Ruby community and includes tons and tons of good programmers who could easily learn Django, whereas the Ruby community is smaller and is probably three-quarters people who learned Ruby for Rails.
Of course, the counterpoint in Rails’ favor is that most Python folks aren’t web developers, and those who are have probably been terminally brain-damaged by Zope. Meanwhile, among people with experience developing for the Web, Rails is enjoying huge gains.
But, then, most of them have been terminally brain-damaged by PHP or (worse) Java.
So, ultimately, it’s likely to be a crap shoot either way you go. I’d say the choice should be motivated by what you think you’re going to need; since you’ve indicated that lots of your clients are going to want CMS-style applications, Django might come out slightly ahead because of its strength in that area, but that may not be enough to sway things one way or the other.
About the best advice I can give you is to look up local Python and Ruby user groups, send out feelers and see what kind of people are available around you and willing to learn the appropriate framework if they don’t know their way around it already; it’s easier to find a good developer and ask him/her to learn something new than to pick something new (and both Rails and Django still are new, in the public eye) and find a good developer who knows it.
Posted on July 15, 2006 07:41 PM | #
Keith:
“Cool would be snowboarding for a living…”
Not really. It’s a super tough job. Riding 200+ days a year, something I’ve done, wears your body down in ways you can’t imagine.
I’ve got a few pro friends and they work very hard, sacrificing their health throughout the year and into the long-term, especially if you ride the big stuff.
You can only do so many 60 ft. switch 7’s in a hardpack terrain park before you start feeling like an old man. Those landings take a toll, no matter how much transition or core fitness you have on your side.
Give me a computer, meetings and whiteboards any day!
Sure it’s boring some weeks, but injuries suck. Especially ones involving your vertebrae :)
The sheer number of ex-pros (after only a few years at the top of their game) hobbling around Whistler village in the spring and summer tells the tale.
Posted on July 15, 2006 09:55 PM | #
I am not a coder or designer (I work in a carpet warehouse) -we do some simple cms stuff with plone. - Last night after watching the screencast at http://webfaction.com - I had the svn version of Django…Postgres…and an oswd template all working in about 2 hours. Could not be easier. With some good ‘tools/products’ I could change the world! -Django is VERY NICE!
Posted on July 16, 2006 09:47 AM | #
Hi all,
Jeff - I wasn’t meaning to be condescending when i said “cool” as I know that Keith etc know better than to jump headlong into something just to get on a bandwagon.
I was just making the point that it might be worth learning the software obsessively before having to support a plethora of angry clients running upon it!
No offence meant! :)
Posted on July 17, 2006 01:28 AM | #
is a writer, designer, etc. in Seattle, Washington.
Home | Search | Archives | Subscribe
Web Sites and Customer Contact
Saving Money With Web Standards
Search Engine Optimization in Marketing News
The highly recommended Dreamhost!