This is a list of information to help you continue with your work as web designers, artists, programmers, etc. It’s mostly Javascript, PHP, Python, and Ruby. Of course programming is not limited to these four languages, but this list is not meant to be totally exhaustive.

For those interested in web art I highly recommend John Gray’s Processing class at Hunter. Processing is essentially an easier way to write a Java applet and is geared toward artists and learning the fundamentals of programming. You can find information on processing here: http://processing.org/

MIT press is putting out a introductory book on Processing in a few months:
http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=11251

On to the list.

Finding a host
##################################

Now that you have all that awesome code, you need some place to put it(hosting) and a domain name that isn’t
fmundergrad.hunter.cuny.edu/~yourname/stuff/myprojects/project.html

There are many options. Go for cheap for now!!!
http://www.dreamhost.com/

Blogging
##################################

There are a few ways to go about getting a blog started.

The easiest is to sign up for something like blogger or wordpress though you will be limited to the templates available through the service.

Or:

Some hosts have easy install options for getting a wordpress blog going. Such a host is Dream Host. Going this route gives you more flexibility(you can use your own CSS, change and add code, etc). This puts the worpress application on your server where you have access to its files(CSS, php, etc).

If you want to develop a Wordpress blog on your own computer and then upload it to your host(best way) then you will need to do a few things to get your local environment going; install PHP, mysql(database), and Apache(if you are not using a mac).

Check out wordpress.org for more info.

Javascript
##################################

You should now that Javascript is different than the other languages listed here. It’s a “client side programming language” as opposed to a “server side”. This means that Javascript runs in your browser as opposed to on a server somewhere. Also, Javascript is NOT Java.

###########

Books:
http://www.oreilly.com/catalog/learningjvscpt/
http://www.apress.com/book/bookDisplay.html?bID=10134

Other support:
http://developer.mozilla.org/en/docs/Javascript
http://jibbering.com/faq
http://lists.evolt.org/mailman/listinfo/thelist

Blogs:
http://adactio.com/articles/
http://www.snook.ca/archives/javascript/

###########

Your Browser:
If you have been using Firefox(as you should) then there are some handy dandy features that make writing Javascript a little easier. If you look to the very left of your developer toolbar you should see either a green circle with a check or a red circle with an exclamation mark. Click this and it will open the Javascript debugger. You can also open the debugger by going to Tools->Error Console at the top of your screen. The Error Console will tell you if your Javascript code has errors and where/what those are(but not how to fix them).

You can use javascript to dynamically rewrite your html code but if you “view source” you will not see these changes. From the developer toolbar View Source->View Generated Source to see javascript generated changes.

PHP
##################################

http://www.php.net/

###########

On OSX:
To use php you need both php and the apache web server. On Mac OSX Apache is “built in”.

To turn Apache on simply go to System Prefrences->Sharing and turn on “Personal Web Sharing”.
Turn on your firewall as well!
You now have the Apache web server running. If you open up a browser and enter in the following url:

http://localhost/~your_user_name/

You should see a page that says “Your Website Here” and some other info about personal web sharing. This file is in your Sites folder and is named index.html.

Now that you have Apache running it’s time to install php. You can find an easy installer here:
http://www.entropy.ch/software/macosx/php/

If you have previously turned on the Apache PHP module then you should:
Open the file /etc/httpd/httpd.conf
Add this to the end:
Include /usr/local/php5/entropy-php.conf
Save it.

From here follow Marc’s installation instructions.

###########

On Windows:

Install Apache
http://httpd.apache.org/download.cgi
Get version 2.0.59
Choose to run server on port 80

Install PHP
http://www.php.net/downloads.php
Get version 5.2.2

###########

An intro tutorial:
http://us2.php.net/tut.php

book:
http://www.oreilly.com/catalog/learnphp5/

Resources:
php.net
http://devzone.zend.com/public/view/tag/PHP101
http://www.webmonkey.com/programming/php/

I also recommend a handy application for quickly looking function information up:
http://www.artissoftware.com/phpfi/

###########

Finally, PHP is known for a couple things:
1)Easy to get started
2)Being insecure
You should be aware of both of these aspects. The user community is great, often geared toward people who are just getting started with programming. Lots of resources. But, PHP is know for not encouraging safe programming practices and being susceptible to attack.

Learning Ruby
##################################

http://www.ruby-lang.org/en/

###########

Free Online Books:
http://pine.fm/LearnToProgram/?Chapter=00
http://poignantguide.net/ruby/

###########

Ruby’s flagship for doing web development:
http://www.rubyonrails.org/

Learning Python
##################################

Python is often thought to be the best “learning language”. It’s syntax is very clear and it has great support.

http://www.python.org/

###########

A great book:
http://www.oreilly.com/catalog/lpython/
And a free tutorial:
http://www.ibiblio.org/obp/thinkCSpy/

###########

Web Framework similar to Ruby on Rails:
http://www.djangoproject.com/

JEdit
##################################
For PHP dowload the PHP Parser plugin + Error List. For Ruby the Ruby plugin.
JEdit supports syntax highlighting for all the languages listed. The Error List plugin is really nice of debugging PHP. The Ruby plugin is also quite nice and supports looking up information on that language using rdoc.

Best,
Joe