|
| One Hour HTML -
Learn the language of the web in just 60 minutes. |
Python and Ruby: the Newer Alternatives
by Anthony Stai
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.
About
The Author:
Anthony Stai invites you to
take your
website to the next level. Get one of the best Search Engine
Optimization (SEO) books on the market for Free! Learn the techniques
that differentiate the amateurs from the pros. Get your book at http://www.makemoneyonline4you.com/seo.html
|
|
|
|