Required Course Tools

(this may need some updating...)

You will absolutely need:

The following are highly recommended for now, and will will be required for LIS-5364.


Computer

Use a device that's a "real computer" (as opposed to a tablet or phone). Web development and programming is about text, and tablets are generally bad at text.


Web Browser

I highly recommend Firefox over all other major browsers.


Text Editor


The key here is that it should handle (programming type) text well, but it should NOT be an advanced IDE (Integrated Development Environment) just yet. A good rule of thumb; if it writes anything FOR YOU (auto-complete), it should not be used. But "syntax highlighting" is okay. Some examples:


GOOD

(Some of the following have plug-ins or add-ons that will enable auto-complete. Please do not activate those features, yet.)

Probably built in to your machine, the following are fine:
Gedit for Linux
Notepad for Windows
Notepad for Macs


Cross-Platform:
ScITE / Scintilla
jEdit - this is the one I will likely use the most; cross platform and runs on everything.

Linux (Graphical User Interface)
Leafpad
Gedit
Geany

Linux (Command Line)
nano
vi/vim
emacs

Windows
notepad++

Mac (wow, it was hard finding free ones, though I guess I shouldn't be surprised)
TextWrangler (I think)



BAD


No full IDES, for now.
(these are great tools for advanced users, but they do too much of the early work for you, as a result you won't learn)
Netbeans
Eclipse

NO WYSIWYG Editors:
(Ditto, except for the "great tools" part. They're easy, but they tend to lock you in to a particular work-flow)
Bluefish
Dreamweaver

No "In-browser" editors (e.g. Cloud9, jsfiddle) for now. This is very much putting the cart before the horse.


UGLY

These are OBJECTIVELY the wrong tool for this job. They will almost certainly break and screw up your code because they're not at all designed for this. Don't even think about using them for this class. Seriously. Do. Not.

Microsoft Word
Wordpad
LibreOffice


File Transfer (FTP/SFTP)


You will need a program or other method of copying the html files that you create to a webserver. One option is to use the command line; I imagine Linux users will already be somewhat familiar with this approach.

Most of you will likely prefer a Graphical User Interface approach. I'm going to assume you're all somewhat comfortable with standard GUI File Managers, such as the Explorer in Windows and the Finder in Macs. Most file transfer programs have similar approaches (copy/paste, drag and drop, etc.) Additionally, some more advanced file managers have file transfer capabilities built in. (Nautilus/Nemo in Linux is good for this)

Details on Filezilla, a cross-platform program, are available here.


Zim. Zim?


I've ranted about how great this very simple program is, and now that I'm using it for both my website and my slides, along with using its todo functions to plan most of my life, I'm pretty comfortable assigning it at this stage.


Terminal Emulator/ Shell


In LIS-5364, you will be required to do a virtual Linux install; however, you may want to simply do this in this course, and do your development within it; given that many webservers are Linux based, the two will "talk to each other" quite well.

Linux and Mac users have these built in.

Windows users have a slightly confusing range of issues to deal with, since most of the web is a "Unix/Linux/*nix" type of environment, and Microsoft was ill-prepared for the internet generally. Very very recently, Windows has added the use of GNU and Linux shell tools, so you may want to check that out. (Embrace, extend, extinguish?)

PuTTY (and PSCP/PSFTP) is a good choice for basic command-line work,
Cygwin is another interesting option for users who want a more complete option.