Web Development

These pages give you an overview and provide some tips on the resources I used for the re-design of latz.org and the affiliated sites.

General Introduction

Avoiding Junk Mail

If you are proud master of a web site, you have most likely run into the problem of "mailto-link harvesting", a situation where spammers (originators of unsolicited e-mail) scan your web page for valid e-mail addresses that you offer for the visitor's convenience (such as the feedback link at the bottom of this page).

In order to avoid this situation, several options have been suggested: substitute e-mail links by feedback forms, use Javascript methods to dynamically generate the page upon loading (a technique that will work since the harvester bots are uncapable of executing Javascript), etc. All of those techniques have in common that they cause more or less hassle to the user (need to fill out a form, browser with Javascript enabled, etc).

One solution that I find very interesting is to substitute your plaintext mailto-links by their ASCII entries. Thus, a link that used to look like

mailto:john@doe.com

will now look like this to the bot:

mailto:john@doe.com

(count them, there are 19 letters in the original link and also 19 entities in the resulting core - for example, the @ gets translated to &#64). Every browser will translate that code into human-readable format, and the link still looks and behaves as a normal link to human users - only spam harvesters do not see a real e-mail address! In order to try it out for yourself, please have a look at the Email Address Encoder, the page where I first learnt about this concept. Good luck!

CSS (Cascading Style Sheets)

Forms

CGI (Common Gateway Interface)

Search Engines

ASP (Active Server Pages)

Log File Analyzer

Graphic-related links and programs

XML, XSLT

Valid XHTML 1.0!

Achim J. Latz, achim@latz.cc , 01.12.2008