Back to the bookshelf

Typographic jacket · original cover not fetched

FROM THE SHARED SHELF · 2006–2026 SAMPLE

Mastering Regular Expressions

Jeffrey E. F. Friedl

5 readers recommend it across 5 discussions

Topics are model-inferred labels.

Keep it on your reading list

THE WORD OF MOUTH

What made it worth passing on?

Original Hacker News comments, in the readers’ own words.

hiAndrewQuinn
Naming only ones I haven't seen mentioned in other comments: - Networking for Systems Administrators, by Michael W. Lucas. Its explicit goal is to teach you just enough about networking, from the electron up, that you can talk to an actual network engineer and not make a fool out of yourself. It's a phenomenally high-ROI read if networking isn't your strong suit. - The first 3 chapters of Mastering Regular Expressions. Regexes are up there with Vim keybindings in terms of sheer ubiquitous use no matter what stack you find yourself in. The rest of the book is excellent if you want to actually implement a regex engine. - The Art of Unix Programming. Less technical. Gives you an idea of why exactly 'nix machines are like that, especially older commands. The 18 rules of design are worth committing to memory. - The Linux Programming Interface. More technical. Pairs esp nicely with the above. Lots of practice C code one can run, plenty of short self-contained chapters. - Not a book, but an online paper: https://how.complexsystems.fail . I see echoes of this everywhere I work, and it often helps me understand what kinds of "bad" things are secretly highly evolved resiliency measures.…
nnadams
I came here to post that same book! When I was a kid I wanted to make an IRC chatbot. I didn't know much, but I read online you could use regular expressions to match text commands. I felt like I needed a book, saved up money, and got my mom to drive me to the next town. Our little library didn't have any computer books. I remember her paging through and asking if I really wanted this "technical manual". Mastering Regular Expressions was the start to my programming career as well. Having references to a bunch of other languages spurred my curiosity to learn them. I eventually bought some of the O'Reilly Perl books as well.
dirkgadsden
Mastering Regular Expressions by Jeffrey Friedl, the first edition (a.k.a. "The Perl Edition", http://regex.info/ for more information about the book and its editions) It's my standard litmus test judging a programmer; if you haven't read or don't care to read a book on regular expressions, then I probably don't want to write code with you. It's also useful to remind people who think they're nerds because they own a smartphone and can download "apps" that they're in a league far below.
nikcub
The best way to learn the UNIX tools is in the context of shell scripting and using the combination of tools to achieve a purpose (such as parsing log files, setting up shortcuts as part of your dev toolchain) 1. Understand the philosophy behind UNIX. ie. everything is a file and it is small apps that are very good at a single task that can be combined through pipes etc. to process larger tasks (this has lost its way somewhat in Linux, but still holds true) 2. Look at your computer usage through development, sysadmin, etc. and find parts that you want to automate, and then set out to write scripts to complete these tasks. for eg. in each one of my projects I have a script called start.sh which has a bunch of tasks implemented (eg. backup, serve, dns (to update dyndns for callbacks), push, diff, deploy, stage (run remote commands) etc.). Remember that git is itself a set of shell scripts, as are most server management commands. Take a peak inside each of these to learn how they are implemented.…