Tuesday, November 25, 2008

15 Things Every Web Developer Should Be Thankful For

With Thanksgiving only a couple days away, it’s appropriate to look back on the things that we appreciate best about our jobs. Let’s face it: Web Developers have the best jobs around, right? We’re incredibly lucky to have the professions we do.

Here are 15 things that we all should be thankful for. These are the technologies that we couldn’t live without, or that have previously paved the way and allowed us to be web developers.

1. Mosaic
Graphic designers everywhere should reserve a day in November to give thanks to the software that’s enabled our careers. Without Mosaic’s picture support, the Internet doesn’t need good design. The 1993 launch of this web browsing software opened up a brand new world to web developers and web browsers alike.

2. Firefox
Firefox ended the long tyranny of IE oppression for experienced web users. The extension-enabled browser has forced IE to play catch up and improve their lukewarm browser, which hadn’t seen an update for 5 years.

Aside from pushing a standards-based browsing initiative, the ability to extend Firefox has made the developers life much easier. There are oodles of extensions that are nearly essential to the developer.

3. Browsershots.org
Every web developer knows the awful pain that is making designs constant across different browsers. Thanks to Browsershots, we can easily see a screenshot of any page across a multitude of different browsers, showing potential problems that might arise across different browsers, and giving new reason to invent curses for legacy IE versions.

4. Firebug
Thanks to Firefox, we now have a browser that is also an important tool for the web developer. Firebug is a must-have extension for the web developer. With this nifty little extension you can view just about any aspect of the web page, visible or behind the scenes, and modify it real-time. It’s incredibly useful for designers and programmers alike.

5. Google Code
If you’re trying to find a useful snippet of code, there’s no place better than Google Code. Not only is it a great place to search for entire libraries, you can find useful bits of code that might be hard to find otherwise. If you’re wanting to house a project, you’ll be especially thankful for G Code, as it’s a free and easy way to have a working community for a project without hosting costs.

Also, with Google Code you can use Google’s bandwidth for the javascript libraries included in your projects. Using jQuery? Just call Google’s hosted version and be on your way. No need to slow your own server down with Google’s gracious offer.

6. Frameworks

Frameworks have given developers a major reason to be thankful. Gone are the days of building websites around repetitive code. Using frameworks like Rails, Django or CakePHP on websites needing database interaction and user permissions takes a major burden off of the programmer. They can spend less time on common, tedious code and more on the interesting and unique. It’s a powerful paradigm shift in programming.

Here are some of the major frameworks used today, in no particular order.

- Ruby on Rails (Ruby)
- CakePHP (PHP)
- Django (Python)
- Zend (PHP)
- CodeIgnitor (PHP)
- Symfony (PHP)

7. Open Source projects
Mad props should be bestowed upon the Open Source Initiative and all the software it promotes. It is a fact that we wouldn’t have a) the Internet or b) much of the technology that it runs on without open source projects. Most of the biggest and best projects are open sourced software, and they all run on the basis that the people building and contributing to them are doing it for free. Granted, these folks might make a hefty profit on consulting services and other opportunities around the projects, they’re still opening up the code base for developers to modify and improve, as they see fit.

Open Source is the Internet’s best contribution yet. The free exchange of ideas encouraged by Open Source is the best thing that’s happened to the web, especially for web developers. Show of hands: Who hasn’t ever used open source software to build a site or project? I’m guessing none of us. That is plenty to be thankful for.

8. Creative Commons
On the heels of Open Source is Creative Commons licensing. You can modify, reuse and redistribute Creative Commons-licensed material, in exchange for (at the most) attribution. Ultimately, Creative Commons protects the original work, but allows people to modify and reuse at will.

Creative Commons is a very big benefit for designers and bloggers alike. The pictures seen in posts on this blog? Creative Commons licensed. There is absolutely nothing better for content producers than free media that can be reused and remixed.

9. Paypal
Love ‘em or hate ‘em, Paypal and other payment gateways have made collecting payments a much friendlier task on the web. Sure, there are horror stories and bad experiences using their product, but Paypal has revolutionized the way money is exchanged on the Internet. They have an easy to use API, and if you’re wanting something even simpler, they offer a painless web interface to receive money from.

If Paypal has done you wrong in the past and you’re looking for a better alternative to send and receive money, you might check out a CNN article on five Paypal alternatives. Definitely worth the read.

10. Javascript Libraries
Javascript is always one of the most popular aspects of web development, and a big reason for that is the advent of Javascript libraries. Javascript libraries, (like frameworks), have eliminated the much of the need for custom Javascript programming. Aside from the fact that the core files in the Javascript libraries do a great many functions themselves, the ability to use custom plugins gives even more functionality to the library.

Not having to do custom Javascript programming for specific effects has given me a much greater respect for Javascript libs this holiday season. Here are some of the more popular Javascript libraries:

- jQuery
- Dojo
- Scriptaculous
- Prototype
- MooTools
- MochiKit

11. Amazon S3 and EC2

Amazon’s on demand services S3 and EC2 have developer’s lives a lot simpler. Not only do they not have to worry about traffic influxes and scaling headaches, they don’t have to spend buckets of cash on reserve servers. The pay-what-you-use business model to web hosting and file serving is a godsend for developers.

The launch of these “cloud” services has also spawn the change of many hosts to move to the pay-as-you-go model. Amazon’s innovation has helped spurn change for the betterment of web development.

12. Anti-RSI software


There is no friend like RSI-preventing software. RSI (or Repetitive Strain Injury) is typically in the form of carpal tunnel for web developers and typing zealots. Because the typical developer or designer spends at least 8 hours sitting in front of a computer screen all day, there is a likelyhood that RSI will creep into the wrists, hands, forearms, elbows, shoulders, back… and the list can go on and on.

Thanks goodness for RSI software that forces you to take breaks on a regular basis. Many times I’ll find myself fixated at the computer until I finish xyz, and consequently it’s over 50 minutes before I’ve gotten out of my chair away from the computer. With RSI software, you can have a reminder flash on your computer at set intervals that ensures you’re moving your limbs and warding off RSI. If you’re on a Mac, try AntiRSI, Windows and Linux users can try Workrave.

13. Advanced Text Editors
Advanced text editors have sped up the development time by adding a myriad of useful features that can benefit nearly anyone who writes in code, blogger to advanced programmer. Whether you prefer Textmate, Emacs, Vim or some other editor, text editors can save plenty of time on the development cycle.

14. CSS
CSS seems to be one of those technologies that is taken for granted. Can anyone remember what the pre-CSS days were like? It wasn’t pretty. Modifying a web layout’s design meant going through each page and changing each inline style. Ugh. Thanks to the wonderment that is CSS, we can make one change in a single file, and Poof!, it’s reflected across the entire site. Simple, clean, and much less involved.

There are times when I’m not that thankful for CSS (see: Internet Explorer), but for the most part it’s a technology that we’re much better off having.

15. Laptops
Laptops can completely change the effectiveness of a developer. Instead of being confined to the same room, chair, keyboard and monitor each day, the laptop allows for a much-needed change. While the screen real estate may not be as big as your office setup, it offers one thing the other can’t: Variety. Laptops enable you to work from anywhere.

Read More..

No comments: