Chapter 15. Some Final Advice

Everyone knows that debugging is twice as hard as writing a program in the first place. So if you’re as clever as you can be when you write it, how will you ever debug it?

Brian Kernighan, The Elements of Programming Style

Make It Clear, Keep It Simple

Writing a real-life program is not the same thing as learning the art of programming or learning a new language.

Because the goal of this book is to lead you to learn more advanced concepts or new syntax, I have often been pushing new ways of doing things. But this does not mean that you should try to pack your most advanced knowledge into each of your programs. Quite the contrary.

The rule of thumb is “KISS”: keep it simple, stupid. The KISS engineering principle (originated in the US Navy around 1960) states that most systems work best if they are kept simple rather than made complicated; therefore simplicity should be a key goal in design and unnecessary complexity should be avoided. This does not mean, however, that you should write simplistic code.

As an example, if you’re looking for a literal substring within a string, use the simple index built-in function, rather than firing the regex engine for that. Similarly, if you know the position and length of the substring, then use the substr function. But if you need a more “fuzzy” match with perhaps some alternatives or a character class, then a regex is very likely the right tool.

Another related tenet is “YAGNI”: you aren’t gonna need it. This acronym ...

Get Think Perl 6 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.