Linux Tools
A nice thing about Linux is that it exposes you to a range of useful software tools that you are unlikely to bump into as a Windows user. This page lists some of my favourites. Many of these are available under Windows but won't be installed by default and can't be well integrated into the operating system.
Regular Expressions
Regular expressions are system for performing complicated find (and replace) tasks on text. They are ubiquitous, being embedded in many text editors and programming languages. Learning to use regexes can be a real time-saver.
- regular-expressions.info: A big website with lots of tips, tutorials, examples, etc...
- regexbuddy: is the clever software used in regular-expressions.info to annotate and build expressions (Win and Linux).
- regexlib.com: a library of regular expressions
- Regular expressions on Wikipedia
- Intro to Emacs regular expressions: The Emacs text editor as regex support but it's a little different to that found elsewhere. This page highlights the differences.
Emacs
I like the Emacs text editor (others prefer vi, it's a personal choice). Useful Emacs resources are:
- EmacsWIKI.org: vast amounts of information!
Perl
Perl is a very powerful programming language commonly used for text manipulation and web tasks. However, Perl is very flexible and can been used for all sorts of things including complex data analysis. A chap called Steve has a great introductory tutorial to Perl and there are many Perl resources on the net:
- All the Perl O'Reilly books online!
- perl.com and beginner's introduction to Perl
- perldoc.perl.org: documentation and links.
- Quick and useful Perl notes
- comp.leeds.ac.uk/Perl/ University of Leeds Perl tutorial.
Python
One problem with Perl is that the code can be very hard to read. For tasks other than text-processing there's a good argument for favouring Python over Perl. Python is easy to learn, readable, and is a good introduction to object oriented programming.