Class weblog
[UGC] Thoughts on website frameworks
We spoke briefly in class about website development and utilizing technologies such as AJAX to enhance user experience. Our class has a mix of students who have experience working with some of the popular web frameworks.
If you have experiences coding in web frameworks – or if you experience working with or managing teams of coders who have worked with different languages and frameworks, please share insights and lessons learned in the comments.





about 2 years ago
As we discussed in class, I think the decision depends on whether you’re starting from scratch or considering porting an existing project from one language/framework to another.
Starting From Scratch
If you want ultimate flexibility of your product, Ruby on Rails is far and away the superior choice. As a Comp Sci major and someone who continues to develop web applicaitons, I’ve worked in Java, .NET, php, and Ruby on Rails (RoR). Rails is a no-brainer.
-RoR was designed specifically to make website development easier on the developer. Without exaggeration, time to code in RoR is probably 1/4 the time to code in .NET.
.
-In its early days, people complained about RoR’s performance – Twitter is an example. This is irrelevant today as hardware has become better and cheaper. Not to mention – when you have as many users as Twitter does, you can take efforts to handle your performance issues at that time
-The community of RoR developers is now extremely large – it’s easy to find development teams when you need outside help. PhP used to have an advantage over RoR in this fashion, but this is no longer the case.
-Things like ajax are an absolute breeze – literally, you can achieve ajax functionality by adding something like “_remote” to the end of a function.
-The framework is built to minimize overhead associated with rapid development and constant iterations. If you want an agile, flexible, and robust framework for a website business, nothing else compares right now.
PhP has responded to rails by introducing some frameworks that mimic many of the RoR features. PhP is still probably the most popular language out there and performs quite well – it’s not a bad choice. But if you have the option from scratch, it’s best to go with the leader in the space – Rails continues to evolve due to its vibrant developer community.
Frameworks like Drupal are double-edged swords. They enable rapid deployment for generic functionality – users, forums, security, etc. They also enable you to “drop” in modules for some things like e-commerce. For some businesses, this will suffice. But, as we’ve discussed in class – very minor changes to your virtual store can have extreme impact on your bottom line. If you want to maximize conversion rates and design a custom experience for your business, you want complete control. This isn’t as easily achievable when you work with frameworks such as Drupal.
Porting
Porting language over is another story. As mentioned in class, it can take a heck of a long time (and a lot of money) to make the switch.
Among other factors, you need to consider how often you are likely to update the code in the future – the more future development you have in the pipeline, the more benefit you’ll gain from the switch. This is obviously a delicate cost/benefit exercise.
Keep in mind that the younger generation of web developers stays far away from .NET development – and that an anti-flash movement is also creeping up in the development community.
about 2 years ago
Let’s not mix things up! Drupal is not a web development framework! Let me tell you why:
The Hitchhiker’s Guide to the GalaxyWikipedia.From my own perspective, neither PHP-based scripts nor any webapp you program on RoR can escape of two curses. As this sort of systems seem to advocate for agile coding, one of these curses is the ever present threat of unplanned, reactive, mindless coding (some refer to it as “cowbow coding“, yeeeeha!), which is chaotically structured, if at all, and difficult to maintain. The second curse is scalability. And seemingly Ruby on Rails has not been able to escape it (at least so far: there’s a new version of RoR about to come out of the oven).
The bottom line here, and what is most important, is to understand that:
about 2 years ago
Hi Andres,
I think you have some good points here – but I have to disagree on some others.
First, you point about Drupal is quite accurate. Drupal is based on php – therefore creating the two isn’t an apples vs. apples comparison. As you mentioned, there are numerous modules built on top of php that enable rapid website deployment.
One main reason why this mistake is often made is that RoR, php in its more “raw” form, Drupal, and Wordpress are all utilized for a similar goal – creating a website. Though the layers across each vary, they all can answer the high-level question, “How will I build this thing?”
In fact, modules such as Drupal exist precisely so developers can worry less about the underlying language and more about getting their digital community up and running.
Putting the semantics aside, though, I have a couple problems with your criticisms on Rails.
1) You mention Rails encourages sloppy code-at-will. This is not a criticism of RoR, but rather a criticism of a style of coding. Your souped up bmw is fantastic at driving 120 MPH around the corner in a residential neighborhood, but that doesn’t mean you should do it. It certainly doesn’t mean that bmw is to blame if people drive this way. RoR makes “mindless coding” easier in a way that a BMW makes driving @ 120 MPH easier. Let’s focus those complaints on the driver, not the car.
2) It seems you have an issue with discovery driven development (DDD). I am actually a huge fan of DDD in the world of website development. The act of making any website requires constant feedback and iteration. It’s often more cost effective to “code at will” to get to a point where you have a live website – so long as you’re capable of revising and rewriting the code as you gather information. Taking more time to “plan ahead” and code more “thoughtfully” often wastes precious time and leads to a “well-coded” website that needs to be completely rewritten right after launch. Naturally, there is a balance here that needs to be struck.
3) You link to an article that cites some performance issues with RoR that Twitter encountered. RoR is used for twitter, hulu, scribd, justin.tv, whitepages, yellowpages – I think the list speaks for itself. If i’m ever fortunate enough to build a freak-of-nature site that has people pounding on the server like twitter, I’ll be thrilled to handle any performance issues at that time – and I’ll thank RoR for helping me get to that level so quickly
.
There are specific websites that can require more intense processing where other languages are a better fit – it just so happens that RoR handles the other 99% of websites very, very well.
about 2 years ago
Drupal rocks.
about 2 months ago
25. I was recommended this blog by my cousin. I am not sure whether this post is written by him as nobody else know such detailed about my trouble. You’re incredible! Thanks!
about 1 month ago
I have recently started a web site, the info you provide on this website has helped me greatly. Thanks for all of your time & work. “It is no use saying, ‘We are doing our best.’ You have got to succeed in doing what is necessary.” by Sir Winston Churchill.
about 1 month ago
Rattling excellent info can be found on web blog .
about 4 weeks ago
I’m really thereby very happy to you will definitely Truly shape of physical you should be shown and necessarily a person’s difficulties false information which is while in the remaining blogs, forums Satisfaction in your primary borrowing it all the best doctor.
about 4 weeks ago
Good stuff, thanks for posting this article. This is a solid resource with some useful information. I’ll put this in my bookmarks
about 2 weeks ago
You really make it appear really easy along with your presentation but I to find this topic to be really something that I think I’d by no means understand. It sort of feels too complicated and extremely broad for me. I’m looking ahead in your next submit, I will try to get the hold of it!
about 2 weeks ago
My developer is trying to persuade me to move to .net from PHP. I have always disliked the idea because of the expenses. But he’s tryiong none the less. I’ve been using Movable-type on a number of websites for about a year and am nervous about switching to another platform. I have heard excellent things about blogengine.net. Is there a way I can import all my wordpress posts into it? Any kind of help would be really appreciated!
about 2 weeks ago
Youre so cool! I dont suppose Ive learn anything like this before. So good to search out any individual with some authentic thoughts on this subject. realy thanks for beginning this up. this web site is one thing that is needed on the web, somebody with just a little originality. helpful job for bringing one thing new to the internet!
about 1 week ago
An attention-grabbing dialogue is price comment. I believe that it is best to write extra on this matter, it may not be a taboo subject however typically persons are not enough to talk on such topics. To the next. Cheers
about 1 week ago
Really enjoyed this post, how can I make is so that I receive an update sent in an email when you publish a new post?