Author and Website

Long-time software developer -- sometimes professionally and sometimes as a hobby. Also a writer with over 200 publications. Turned attention to Web programming in the mid 1990s. Launched hashes.com in 1997, adding the language-dependent features early on. Retired from the dotcom world in the 2000s, no longer tailoring the website to complement a resume. Continue to program for the Web as a hobby.

Inspired by the revolution in both open source software and online communications (blogs, et al), reorganized this website in early 2010 to share insights relevant to part-time web software development. Added Tips section (still under development) and incorporated a blog (Part-time Web Programming), with extensions to a Facebook Page (Hashes Dotcom) and a Twitter presence (hashesdotcomguy).

Target Audience

You are already a Web programmer with at least limited experience. If not at that stage yet, explore classes (online as well as traditional) and the wealth of tutorials available on the Web. Then come back to hashes.com for tools and tips you likely won't find elsewhere.

Similar Programming Languages

Web-related languages fall in two general categories: structured (Java) and loosely structured (PHP, Coldfusion, JavaScript, Perl). I've enhanced my fun and productivity -- fewer coding errors mean less frustration and faster development -- by restricting my work to similar languages. Gone are my books on Java (like C, too structured for my tastes). Gone, too, are Coldfusion tools (Coder's Crib Sheets and books) from my days as a dotcom developer working 60+ hours a week. Few hobbyists will be working in Coldfusion, as it isn't free. Yes, there are other relevant languages, such as ASP and Python, which may appeal to language aficionados. But for most software developers, trying to use too many different languages isn't compatible with being very productive.

Perl's early role in the Web world was for CGI programs. Maturation of PHP in the 2000s has largely left CGI in the dust. I continue to find Perl valuable for two other uses: offline building of static Web pages (such as my Coder's Crib Sheets) and one-off scripts for processing structured text documents.

Regular Expressions

Regular expressions (regexps) aren't for everyone. Handled correctly, they are a powerful tool for text processing. And with the blazing fast computers in use today, the computational overhead for regexps, compared to string operations, is negligible for most applications. Mishandled, however, regexps can be source of considerable frustration. Advanced regexps can be quite tricky to code. Unless you enjoy the challenge of getting them right and have the necessary patience, brute force techniques based on string functions may well save you considerable time and frustration.

One big benefit in the PHP-JavaScript-Perl triad is commonality in handling regexps, now that PHP has matured beyond only supporting POSIX-style commands. Rely on my Coder's Crib Sheets for quick lookup of exact syntax requirements.

Feedback: webmaster@hashes.com