Article Index
10 Easy Ways to Promote Your Website
5 Simple Steps to Accepting Payments
5 Steps to Understanding HTML
5 Ways to Avoid the 1998 Look
6 Reasons Why You Need a Website
7 Ways to Make Your Web Forms Better
A Question of Scroll Bars
Ads Under the Radar Linking to Affiliates
AJAX Should You Believe the Hype
All About Design Principles and Elements
An Introduction to Paint Shop Pro
An Issue of Width the Resolution Problem
Avoiding the Nuts and Bolts Content Management Software
Beware the Stock Photographer Picking Your Pictures
Building a Budget Website
Building Online Communities
Clean Page Structure Headings and Lists
ColdFusion Quicker Scripting at a Price
Column Designs with CSS
Content is King
CSS and the End of Tables
Cut to the Chase How to Make Your Website Load Faster
Designing for Sales
Designing for Search Engines
Dont Be Scared Its Only Code HTML for Beginners
Dreamweaver The Professional Touch
Encryption and Security with SSL
Finding a Good HTML Editor
Focus on the User Task Oriented Websites
Fonts are More Important Than You Think
Free Graphics Alternatives
FrontPage Easy Pages
Hints All the Way
Hiring Professionals 5 Things to Look For
How Databases Work
How the Web Works
How to Get Your Website Talked About on Blogs
How to Install and Configure a Forum
How to Make Visitors Add You to Their Favorites
How to Run Ads Without Driving Visitors Crazy
How to Set Up Your Hosting in 5 Minutes Flat
IIS and ASP Microsofts Server
Image Formats GIF JPEG PNG and More
Its a World Wide Web Going International
JSP Java on Your Server
LAMP The Most Popular Server System Ever
Making Friends and Influencing People the Importance of Links
Making Searches Simple
Offering Free Downloads on Your Website
Opening a Web Shop with E Commerce Software
Perl Cryptic Power
Photoshop a Graphic Designers Dream
PHP Easy Dynamic Websites
Picking a Colour Scheme
Printing and Sending the Two Things Users Want to Do
Putting Multimedia to Good Use
Python and Ruby the Newer Alternatives
Registering a Domain Name
Registering Your Users by Stealth
RSS Really Simple Syndication
Setting Up a Mailing List
Setting up a Test Server on Your Own Computer
Some Places to Go For More Information
Taking HTML Further with Javascript
Taking HTML Further
Taking Your Website Mobile
Text Ads Unobtrusive Advertising
The 5 Principles of Effective Navigation
The Art of the Logo
The Basics of Web Forms
The Basics of Web Servers
The Case Against Flash
The Confusing World of Web Hosting Making Your Decision
The Evils of PDFs
The Importance of Validation
The Many Flavours of HTML
The Smaller the Better Avoiding Graphical Overload
The Top 10 Biggest Web Design Mistakes
The Web Designers Toolbox
The Web is Not Paper
Theres More than One Web Browser
Time for User Testing
Titles and Headlines Its Not a Newspaper
Tracking Your Visitors
Understanding Web Jargon
Uploading Your Website with FTP
Using Flash Sensibly
Using Quizzes and Games to Get Traffic
VBScript Javascript Made Easy
Websites and Weblogs Whats the Difference
What Do You Want Your Website to Do
What You See Isnt Always What You Get
Which Database is Right for You
Why Doing It Yourself is Best
Why Java Will Drive Your Visitors Away
Why Word is Bad for the Web
Why You Should Put Your Content in a Weblog Format
Why You Should Stick to Design Conventions
Working With Templates
Writing for the Web

Python and Ruby the Newer Alternatives

Python and Ruby: the Newer Alternatives.

Thanks to the nature of open source, almost anyone can write a programming language and get a significant number of people to use it: and plenty of people have. Two of the newest and fastest-growing players when it comes to open source web languages are Python and Ruby. Neither of them were web languages originally – they were normal programming languages – but more and more people are starting to use them to power their websites. So what are they, and how do they work? Let's take a look.

Python.

The Python philosophy demands that code should be simple, explicit, and readable. Where Perl wants there to be "more than one way to do it", Python wants there to be only one way of doing each thing – and it wants that way to be obvious. This makes Python code easy to work with, whether it was written by you or by someone else.

The downside to Python, though, is that it can be slow – not as slow as Java, but still much slower than most languages. It is also very picky about indentation (the number of spaces or tabs at the start of each line of code), as part of its effort to make code more readable.

So does anyone use Python? It might surprise you to learn that Google uses a lot of Python code, and the popular BitTorrent file-sharing system is written in Python.

Unfortunately, when it comes to actual web programming, Python isn't quite up to scratch in many ways: it still shows its roots as a programming language for programs instead of one for the web. It's for this reason that Python on the web is still quite rare – but they're working on it.

Ruby.

Ruby is a relatively new programming language from Japan, and it has a lot of evangelists who simply love it. Why? Well, it lets you do complicated things quickly, easily and readably with very little code: in some ways. It's powerful but simple. Here's some sample code, taken from one of the best Ruby books, Why's Poignant Guide to Ruby (www.poignantguide.net):

['toast', 'cheese', 'wine'].each { |food| print( food.capitalize ) }

What does that do? Well, first, it creates an array with the words 'toast', 'cheese', and 'wine'. It then launches into a function, which prints out the name of each food – in capital letters. All that with one line of code. It might not seem like much, but just wait until it comes time to connect to a database, retrieve records, format them the way you want and put them on the screen, all in one easy-to-read line of code.

Now, Ruby is becoming more popular on the web thanks to a web framework that makes developing websites quicker than it's ever been: Ruby on Rails. Rails is only one year old, but it's already got lots of support, thanks to its big feature it handles the database end of things automatically. Rails is growing at a crazy speed, because programmers love it – it stops you from having to write database code over and over again, leaving you free to worry about how your web page works instead of writing SQL.

Rails works using the principle of "convention over configuration": you do things in a standard way instead of spending time setting it up for the way you've decided to do things. Using Rails' scaffolding function, you can be up and running with a simple database page within minutes – then all you have left to do is build the interface.

Watch Out for Web Host Support.

One of the biggest disadvantages of using a minority programming language is that you might find trouble finding a web host that has it installed on their server. You'll pretty much be forced to go with a smaller host: searching for 'ruby host' or 'python host' will turn up plenty of offers, but they won't be from anyone you've heard of, and they're likely to be more expensive than you'd expect. That's the price you pay for using the latest and greatest languages.