Lars Wirzenius: Random thought, 2003
- December 31: Six months of logging
- December 28: No more games or news
- December 27: Bookmarks and link pages
- December 23: Google's logo, Someone should study IRC scientifically
- December 22: Winter solstice, Blood, Exercise the creativity muscle
- December 20: I need a new editor
- December 14: News killed my n key, Emotional phases
- December 9: Too many UI layers
- November 12: Headhunters
- November 10: Discussions
- October 25: Thread programming is best done in a functional language
- October 20: Search for a new editor
- October 9: Programming language wishlist
- October 8: Mobile phone wishlist
- September 16: Naming free software programs
- September 12: Google placement
- September 7: Gnome Iagno plays badly
- August 31: Birthday party, Worrying language habits
- August 1: The Vatican and homosexuality
- July 10: Vacation stress
- June 28: Luddism
- June 25: In a cafe
- June 14: URL encoding doesn't protect from spam
- June 6: I am a neophobe
- June 3: Bubbles
- June 1: Overnight success of log
- May 31: Booting...
Wednesday, December 31, 2003
Random thought: Six months of logging
Today is exactly six months after I started keeping a
public log. I have added to the log on 106 days out of the
214 that spans the period, giving an average of 0.495 entries
per day. Including this entry, I have written 34952 words
(not including HTML markup), an average of 329.7 words per
day with entries. Printed out with
whole thing is almost 90 pages long, depending on margins
Visits to the front page of my log. Search engines and other robots excluded to the best of my ability. Only one hit per IP number per day is counted to get a better idea of the number of people visiting.
Sunday, December 28, 2003
Random thought: No more games or news
I've uninstalled all games and news readers from my computer. I found that it had became a frequent habit of spending time in front of the computer by merely playing GNOME Iagno or looking for silly flames in news. I could easily spend hours doing either or both. I don't have to be productive all that time, but at least I could do something that has a point, such as watching good movies over and over.
The games are gone since before Christmas, and slrn is
gone since yesterday. I'm feeling some withdrawal symptoms:
every few moments I switch to a gnome-terminal an type
slrn before I remember. Ah well, this will pass
On a related note, I've set my mailer to fetch my personal mail only every 60 minutes in the hopes that this will let me process mail the way it is supposed to be processed: whenever you have time for it and not whenever it arrives. Perhaps I should even stop the mailer from fetching mail automatically and only fetch it when I order it manually. (Work mail is of a higher priority, so that one is still fetched every few minutes.)
I'm not, however, giving up IRC. It is much too useful for real-time communication and it requires that I am "on IRC" all the time. I've long ago developed the habit of ignoring what happens on IRC when I have other things to do, unless someone is speaking to me (message tabs for private conversations and highlighting help a lot here).
Saturday, December 27, 2003
Random thought: Bookmarks and link pages
When I first started using the web, a decade ago or so, I quickly ran into the problem of keeping track of interesting pages. Even the earliest browsers had a bookmark feature, which was fairly nice. The problem with bookmarks, for me, was that they were tied to one browser on one machine, and I was constantly using at least two browsers (lynx and Mosaic) on several computers (at home and at the university, for example).
I solved this problem by moving all my bookmarks to a link page, which I've been maintaining ever since. I do use bookmarks: whenever I encounter a page I want to read later, I make a bookmark. A bookmark is easy to make. However, once I have read it, if I find it I want to remember it, I add it to my link page.
I maintain my link page with a plain text editor and write the HTML by hand. This is the teeniest bit tedious, and would be simpler with a suitable tool such as a good HTML editor. I don't want to use one: I want there to be just a little bit of a threshold for adding a link to the page. This makes it easier to maintain a high quality of the links I save, and also keeps the number of links down. If the link page grows too large, it becomes difficult to find things in it.
Tuesday, December 23, 2003
Random thought: Google's logo
Every now and then Google replaces its normal logo with a charming variation relevant to the day. For example, today they have snow and snow men. (Image blatantly stolen from their site.) So far, all the ones I've seen have been with surprisingly good taste. On the other hand, Google in general seems to have surprisingly good taste: the first thing I noticed, when they were new, was that their front page had only the essentials, and wasn't cluttered by a dozen ads and other distractions from the actual search engine. If I were looking for a job abroad, such a company image would be quite inviting.
(If Google is evil, please don't tell me. I'd like to keep some illusions.)
Random thought: Someone should study IRC scientifically
In a conversation with Hanna the idea arose again that IRC would be an interesting object of various kinds of studies. For example, there is a theory that people who use IRC a lot to communicate with friends have a larger active circle of friends with whom they are in closer contact than is usual. The language used on IRC is probably also different from both spoken language, formal written language, and other kinds of informal written languages. The way information spreads between IRC channels, and how quickly, is also interesting. "Urban folk lore", such as the kinds of urban myths and stories, is related to that: how does the information change as it spreads from channel to channel?
I don't know anyone to suggest these kinds of topics, and I'm not really sure if any funding for the research can be found, anyway. Alas.
Monday, December 22, 2003
Random thought: Winter solstice
The days are about to become longer again. Joy and happiness!
Random thought: Blood
I learned tonight that stabbing yourself in the thumb with a sharp kitchen knife is a good way to make interesting patterns in blood all over your apartment. This would be the start of an avant garde art movement, except it's a bit wasteful on the digits.
Random thought: Exercise the creativity muscle
At least a couple of friends (Katja Kivilahti and Lauri Alanko) have commented on creativity recently, and the problem of where it comes from. Since this has occupied my own thoughts as well, I'll write down my opinion.
The last time Neil Gaiman visited Finland, he was, once again, asked the standard question: "Where do you get your inspiration?" His answer was: "Boredom. Excrutiating boredom." According to Neil, when you watch a school play (something by Henrik Ibsen) with very bad acting, and you just can't leave in the middle of the play, then your brain will attempt to escape the horror of it by starting to generate fantasy diversions. Hence, creativity.
I find this to be somewhat different from my experience. My brain also comes up with ideas whenever it isn't otherwise occupied: while I'm walking, sitting in a bus, shaving, or taking care of the other necessary parts of life that don't require my full attention. However, when my brain is occupied, by, say, reading or in a meeting or while writing code that was supposed to be ready yesterday, parts of it still keep coming up with new ideas. It can be quite a bother sometimes: there I am, happily trying to get on with things, when inspiration strikes and a new though interrupts everything. It is often a thought that is completely unrelated to whatever I'm supposed to be doing.
I am quite certain that the situations that are most inducive for new ideas differ between people. What works for me is unlikely to work for you. That is fine, everyone just needs to find out what works for them. (Stabbing my thumb didn't work for me, so it might work for you.)
I am also quite sure that inspiration, generating new ideas, being creative, is something that gets easier the more you do it. The more ideas you have, the easier it gets. The brain is a muscle and needs to be exercised.
More important that the way to get new ideas is, I think, what you do with them. It is not enough to have an idea, you have to do the work as well. I learned a few years ago that starting a new project every time I had a new idea meant that I never finished anything. That was quite frustrating and I'm happy to say that my resolve not to start a new project before I finish an old one works well.
As an aside, the other thing to watch out for is trying to perfect something. Nothing will ever be perfect. Nothing will especially be perfect without being implemented. Something that works is better in all its flaws than an ideal design that exists only as a concept. After you have something that works, you can start fixing its flaws. After it is good enough, you let it be and take up the next project. This is the way you get things done. (That probably means that I am in the "Worse is better" camp.)
Saturday, December 20, 2003
Random thought: I need a new editor
I was not feeling very well yesterday, so it was a good day to look at potential new editors. As I've told before, my primary editor, Simple editor for X (or SeX for short) is becoming old and does not, for example, understand UTF-8. I wish to have a new one.
I searched for new editors packaged in the Debian unstable
apt-cache search text editor.
Since I use GNOME 2.4 as my desktop and want my editor
to mesh in well, I further restricted the search to those
using the Gtk+ version 2 libraries, except that I included
GNU Emacs and XEmacs (both version 21) since they are so
popular and powerful.
Unfortunately, none of the editors I tried was fully satisfactory. Many were toylike, or had usability problems, such as being radically different from the GNOME Human Interface Guidelines. It's not enough to use Gtk+, the editor also has to follow other user interface conventions on my desktop. Except for the Emacsen: they're old enough and powerful enough that I can forgive them being different.
After trying out several editors, the candidates were narrowed down to GNU Emacs, XEmacs, and GEdit. GEdit is the default text editor for the GNOME desktop and the one that clearly follows the GNOME HIG best. It is simple, which I like, and would mostly be what I'm looking for, except for a few crucial problems: it changes indentation size by changing the tab size, which is inexcusable; it does not have a "format paragraph" command (similar to Meta-Q in Emacsen), which is awkward; and it does not seem to have a way to have several windows showing the same file, which is too limiting. These would certainly be possible for me to add to GEdit, though it would mean hacking on other people's C code, which is always icky. I suspect there may be other stuff lurking, I did not make a thorough test. GEdit also takes about two seconds to start, where SeX takes half a second (both times with the editor already loaded into the buffer cache). When starting both editors on a typical project - all the Python files in Lodju, which is quite typical for how I work - the times were about 10 seconds versus 0.8 seconds. Even though starting editors is not the primary thing I do, having to wait even occasionally so long times is quite irritating.
Both Emacsen are ugly. GNU Emacs managed to do the UTF-8
thing out of the box, but XEmacs did not. Neither obeyed my
mouse scroll wheel without configuration. I used GNU Emacs as
my primary editor for a year or two before writing SeX and it
seems that things have not changed much: Emacs (regardless
of flavor) has all the ingredients of a good editor, but
requires you to configure, adjust, tweak, and assemble it
yourself. I'm not very happy about that. If I need to write
.emacs file to be happy with Emacs, then
I'm going to have to copy that file to every computer I use.
I would prefer to have an editor that is usable everywhere.
(This is also why I keep my
A friend urged me to try Gvim today. It is much prettier than the Emacsen, and uses Gtk+ 2, but not really anywhere near the GNOME HIG. It's vi, and I don't think vi and GUI mesh well. Obviously the vim developers disagree; they may be right in the general case, but as far as I'm concerned, I feel icky and confused. Too bad.
If I don't find a new one, I may have to succumb to NIH again, and rewrite SeX in Python and PyGTK. Fifteen minutes of testing proved that to be feasible and fairly simple: I could use the GtkTextView widget and Python's Unicode support, which together take care of most of the functionality I'd need. Add a little user interface stuff, and voila. The biggest problem would seem to be that GtkTreeView doesn't support rectangular selections. Neither do most editors I've tested, however.
Sunday, December 14, 2003
Random thought: News killed my n key
I read too much news. My N key on the keyboard is worn out much more than any other key.
Laptop keyboard after seven months of use.
Random thought: Emotional phases
Sami Nikander and some other once came up with a way to describe the emotional phases before and after an event, specifically a LARP, though it is applicable to other events as well. A shortened version is this:
- Early high
- The joy you feel when you've decided to participate.
- Early low
- The stress you have when you realize you actually have to do things.
- The stress you have when you're desperately preparing at the last minute. You're convinced everything will go wrong.
- The stress has been converted to adrenaline and expectation. You notice you can't do any more preparation.
- Event high
- The adrenaline boost during the event itself and immediately after. Almost exstatic.
- The sudden crash from the event high, when everything is over. Adrenaline deprivation. You realize all the things you did wrong or could have done better.
- Late low
- Further depression when you repeatedly go over all the problems. Can continue for days or weeks.
- Late high
- After the depression you forget the problems and are just happy about the good stuff.
I find myself following much of this pattern as far as my photography session are concerned. I'm chronically bad at preparing for things in time, and so my pre-low tends to be rather bad. For photography I have luckily now got enough routine that I don't have much preparation to do, and this reduces my pre-low to almost nothing.
My post-low depression, however, is still bad. I look at every photograph and find almost only imperfections. Every out of focus frame causes almost physical pain. Every boring composition, every botched exposure, every other problem pricks my pride like a needle under a nail. Luckily, I have learned not to delete pictures during this phase.
Even more luckily, occasionally I manage to take a picture that makes my late high be quite high indeed. That's the reason why I do photography.
Tuesday, December 9, 2003
Random thought: Too many UI layers
I notice that I'm now occasionally using several virtual terminals, one of which has an X session, with virtual desktops, which contain instances of gnome-terminal, each with several open terminals inside tabs, and some of those running screen sessions with further sessions. I notice this because I find myself making errors with the key combinations for switching to a new place. I might hit control-left-arrow instead of control-pageup or control-alt-f1 instead of control-a-control-a. This beginning to be confusing enough that I need to simplify things.
I even occasionally confuse myself with the tabs in Galeon. I suspect that this many-things-within-one approach has been taken too far. I don't know what a good fix would be, however, and I don't know if anyone does.
Wednesday, November 12, 2003
Random thought: Headhunters
The economy must be getting better. I'm getting more headhunter calls this month than all of last year.
Monday, November 10, 2003
Random thought: Discussions
I seem to be unable to discuss deep or important things intelligently with most people when I get older. My patience is now very short with people who say stupid things and argue by twisting my words into something they can attack, and that's how discussions with most people end up. I prefer the kinds of discussions where there is a desire to understand the other party, even if you don't agree, and no twisting or putting words in each other's mouths. A good discussion is not a battle, but it could be brains having a romance.
Saturday, October 25, 2003
Random thought: Thread programming is best done in a functional language
In a discussion with Cessu the other day, I formulated something that had been only half-formulated in my head before. It's about threads. I tend to dislike threads a lot. Threads are a rich source of problems, due to locking, memory management, and other things that are more complicated in a multithreading environment than in a single threading one. Cessu said something that I think I've also said: these are problems because data can be mutated. In a functional environment, the problems should be manageable. For example, there is no need to lock a data structure against modification, because a data structure cannot be modified. Garbage collection helps with memory management.
Threads can be a great abstraction. Program structure can be simpler if concurrent things can be expressed as a suitable number of threads, rather than as one complex thread. This simplicity doesn't help, of course, if using threads requires making each thread complex to handle all locking and memory management issues properly.
I have a gut feeling that thread programming is best done in a functional language, where the threads are abstractions much like functions, and where the language implementation maps them to operating system level threads in a suitable manner, and takes care of locking and such automatically.
Monday, October 20, 2003
Random thought: Search for a new editor
It is beginning to be that time of the year again when I want to convert to using UTF-8 and switch to a new editor. The former requires the latter.
I've been using Simple editor for X (with the nice acronym SeX) for about a decade now, ever since I wrote it. It is small: the executable is only 108 kilobytes, and it links only to basic X libraries, plus the Athena widgets. It starts up in less than half a second. It can handle files of any size that fit into virtual memory. It is quite simple. It doesn't have undo, and there are a couple of other things I consider bugs, but haven't ever had the energy to fix. It is also getting old: it doesn't interact very well with Gnome programs (e.g., it doesn't support the clipboard), and, most importantly, it does not support UTF-8 at all.
During the weekend, I fooled around with Gnome's standard text editor, gedit. It supports UTF-8, and has undo and redo, and plays nicely on a Gnome desktop, but it fails to separate between tabs and indentation. I'm not going back to using tabs for indentation. It doesn't seem to support things like selecting everything from a parenthesis to its matching parenthesis, which I find quite useful, especially with Lisp. Or rectangular blocks. I can't even find a way to see the same editing buffer ("file") in two windows at the same time. These kinds of features are probably considered outside the needs of the target audience. Gedit is not, after all, meant to be a programmer's editor.
I guess I'll give GNU Emacs and XEmacs a try, later, though I'm not very enthusiastic about them. Big and complicated tools is not what I relish and I'm not sure they even support UTF-8 very well. Then there's a bunch of other editors for Gnome I could try, and if everything else fails, I could rewrite SeX using GTK+ widgets, I guess.
After the editor issue is resolved, I can probably start being serious about moving to UTF-8. The mailer, web browser, IRC client, and terminal emulator I use all claim to support it well already, and those are the crucial ones. I expect a number of other tools will have glitches, but mostly I expect the transition to be fairly smooth, since UTF-8 is, after all, not very new.
Thursday, October 9, 2003
Random thought: Programming language wishlist
Yesterday I was thinking about what I want in a mobile phone. Today, I've been thinking about what I want in a programming language. Specifically, in a language for writing various kinds of hobby projects in.
- A good implementation as properly free software. Enough said.
- Expressive and powerful. I want to write only a little code. More power means less code to write. Lisp is better than C in this regard, since C requires dealing with all sorts of pesky details manually, which Lisp takes care for you.
- Fast execution. Most of the time speed is not an issue, but sometimes it is. I'd prefer not to have to switch to another language, such as C, even for the speed critical parts. Interfacing several languages is just the kind of detailed work I prefer not to do. Something less than four times slower than C would be nice.
- Bindings to important platform libraries. This implies general extensibility by linking in C code (or compiled code from other languages). The most important ones for me are the Gtk+ and Gnome libraries. These can't be re-implemented in the language itself. Libraries for XML parsing, network I/O, or whatever, should probably be written in the language itself: it should be powerful enough for them, after all.
- Garbage collected. Manual memory management a la C is excessively tiresome and error prone.
- Infrastructure for library creation and sharing. There doesn't have to be an existing library for every conceivable task, but there needs to be tools in the language and its community to build, share, and use libraries. This will ensure that the set of free libraries grows. CPAN for Perl is a wonderful example. Python's standard libraries are another.
- The paradigm should probably be functional, though I'm not married to that idea. I'm flexible enough to be happy with any reasonable paradigm, but functional is my current favorite.
- Static type checking using type inference. It should not be necessary to declare the types of everything, but the compiler should still be able to check types at compilation time and yell if there are obvious errors. While I've only read a few descriptions of how Haskell does this, it seemed nice.
- Stable specification. I'd like the language not to change every year or two. Changes to the standard libraries are OK, but the language itself should be stable.
My current favorite language for hobby projects is Python. It does not fill all the criteria above. For example, they keep changing the language - admittedly, mostly I'm happy about the changes, but it still annoys me when the language changes. I prefer the pace at which C changes: about once per decade. Python is also no speed daemon, even if fast enough for most stuff.
My favorite language for work projects is, of course, Hedgehog Lisp, but its scope is restricted enough that I'm not sure it is suitable for the kinds of programs I want to write in my free time. For example, it has no concept of packages or modules, which is bad for library generation.
Because of Hedgehog Lisp, I've been reading about other Lisps, such as Common Lisp and Scheme. Other languages I've read about include O'Caml and Haskell. Paul Graham's Arc might be interesting, eventually. I'm still looking, however, none of these have convinced me, at least yet.
Wednesday, October 8, 2003
Random thought: Mobile phone wishlist
The new N-Gage phone and game platform from Nokia has inspired several discussions on new phones today. Even with all my experimentation with neophilia, I fail to be enthusiastic about new phones. They're too full of features useless for me. What I want is something much more simple.
- Most importantly, the phone must be a good phone. Calling someone must be easy, as should answering someone's call.
- As importantly, it should work well for sending and reading SMS messages. This requires an efficient way to enter text in Finnish, Swedish, and English. T-9 (or whatever it is called) is good enough.
- The user interface (software and hardware) needs to be fast enough and not get in the way. This means, for example, that it should not be overloaded with lots of features I don't use: games, Java, WAP, Bluetooth, music players, etc. Or buttons they need.
- Most of the time, the alarm should be a discreet beep (different ones for calls and text messages would be perfect), accompanied with vibration.
- The battery needs to last a couple of days of normal use without charging.
- No external antenna.
- Suitably sized and weighed for the inner pocket of a jacket. The Nokia 6210 is about perfect in this regard. Anything bigger gets in the way, anything much smaller is hard to dig out from the pocket.
- Everything needs to just work. I do not ever want to upgrade the phone software, for example, nor have the phone crash. My 1631 never crashed, and my needs have not grown much since, so I don't see why a new phone should crash either.
Those who have followed mobile phone developments in the past few years may note that my requirements are placed at around 1999 or 2000 in the development timeline. I have little interest in all the gadgets developed since. I'm not being a Luddite or neophobe, I'm just not interested in playing games on a phone, or using it as a PDA, or things like that. My phone is a tool; I'll seek thrills elsewhere.
Tuesday, September 16, 2003
Random thought: Naming free software programs
I rather think free software authors should spend a bit more thought on naming their programs. For example, Gallery is a nicely descriptive name, but how easily are you going to find it on the web?
I don't think descriptiveness is a major concern when choosing a name. I've tried it a couple of times. My GUI editor got a descriptive name: Simple editor for X. Unfortunately, this resulted in an acronym that many people find amusing. More importantly, just try to look it up in a search engine.
Looking up prospective names with search engines is also important to avoid name clashes. There are now so many software projects, free and non-free, that most of the more obvious names are pretty much uses up. Using the same name as someone else can be embarrassing, and can also be a legal problem: trademarks are valuable property and violating them can result in letters from lawers. Even if no actual court case happens, and you only have to rename your own project, it is an unnecessary annoyance and embarrassment.
Be creative! The name space is infinite, there is no need for name clashes.
If you're having trouble coming up with a good name, expand your horizons a bit. Try obscure cultural references, or little known languages such as Finnish or Sanskrit. If you're desperate, run pwgen in a loop until it comes up with something that is somewhat pronounceable and gives few hits on google.
Friday, September 12, 2003
Random thought: Google placement
I just noticed that I'm currently the tenth hit on Google when searching for "Lars". Oh the burden of fame.
The reason for this is probably that home page is referred to on many pages in Debian, and Debian's pages are linked to by so many people that anything mentioned there gets a boost by Google's algorithm.
That might be a good reason for companies to sponsor people to become Debian developers, actually.
Sunday, September 7, 2003
Random thought: Gnome Iagno plays badly
For a few weeks now, I've been playing Gnome Iagno whenever I've felt like relaxing my brain completely. As I wrote on August 16, the current version of Iagno has a bug that makes it stop playing occasionally, and so I've been playing it only on the lowest level. This suits me fine: if I want to exercise my brain, I make programs. Playing Iagno has become an almost completely reflexive thing, something my hands do autonomously, without my brain being involved at all. A bit like reading Usenet.
My brain mostly kicks in when it notices that I may be winning by taking away all of the computers chips. For a lark, I've been saving screenshots of such wins. Lately, though, it's become rare to get a new screenshot, since most such games end with a score I already have a shot of.
My friend Antti Kuntsi seems to have fixed the bug. Good guy, he is, even if he completely misunderstands my reason for playing the game in the first place.
Sunday, August 31, 2003
Random thought: Birthday party
Tomorrow when I wake, I will be thirty four years old. That is more than a third of a century. I'm not sure whether I should feel good or bad about this.
I do feel good about the birthday party yesterday. It was a joint party with two friends of mine: they celebrated their marriage. There were many guests, and it seems a good time was had by all. Happy thoughts.
My friends are now schooled pretty well about what kind of stuff I want for presents: books. I got three: one on photography, on with photographs, and one about Lisp. Happy thoughts and big thanks.
Random thought: Worrying language habits
I have the feeling that I've let my use of language get sloppy, especially on IRC and when talking. I don't complain that I use informal language and slang on IRC, because they're appropriate places for such language. Rather, I mean that I've noticed I use certain constructs I dislike coming from other people, and that feels bad. The habit that sparked this thought is an overly aggressive generalization: saying nobody has any use for foo rather than I don't have any use for foo. On the IRC channel I most often frequent, such use is sometimes so frequent it gets hard to notice when people don't actually mean to be general, which can lead to unnecessary misunderstandings.
I won't try to get everyone else to change their language habits, but I do have to be more careful myself, or else live with an icky feeling.
Friday, August 1, 2003
Random thought: The Vatican and homosexuality
The Vatican has once again made a statement, approved by the Pope, opposing homosexuality. I don't understand why men who habitually wear skirts are so upset about gay people. Especially as they employ and protect child molesters.
Thursday, July 10, 2003
Random thought: Vacation stress
Going on vacation is quite stressful. There are about a million zillion loose ends you need to deal with before you can go and this seems to lead to 13+ hour working days. If did this every year, the stress would kill me.
Saturday, June 28, 2003
Random thought: Luddism
I suspect I'm a closet luddite. Since I moved to this apartment almost three years ago, I've been pondering on getting a dish washer, but haven't. I find that washing dishes by hand is nicely relaxing, and that I have a fear that the dish washer would be yet another complicated piece of technology that will break, like my two remote controls a couple of days ago, which would mean I then angst for days or weeks to get it repaired. I hate equipment that breaks and I hate even more to have to do things to get it fixed.
Incidentally, the remote controls didn't really break, their batteries just died at the same time, and I put in new batteries the wrong way around.
Wednesday, June 25, 2003
Random thought: In a cafe
I'm writing this log entry in the cafe at the Academic bookstore in Helsinki, while sipping hot cocoa. Laptops are liberating.
Saturday, June 14, 2003
Random thought: URL encoding doesn't protect from spam
In a recent discussion on fighting spam, it was claimed
that URL encoding mail addresses on web pages prevents
spam. That using
%40 instead of
would work pretty well for preventing the address from being
harvested and spammed, but would still work perfectly for
normal users, whose browsers would decode the URL encoding. I
found the claim to be incredible, and put on my front page
two mailto-links, one with a mangled address and one with a
different, nonmangled address. This happened on June 3. I
have just received the first spam to these addresses. It
took only eleven days for both addresses to be harvested.
While it may be true that such slightly mangled addresses may get less spam than nonmangled ones, I deduce from my little experiment that this won't be true for long. Spammers aren't technologically retarded, or at least they hire programmers who aren't. URL encoding shouldn't be considered even as a temporary solution.
Mangling the address so that it isn't possible to unmangle it automatically is likely to work better at preventing spam, but it's also better at preventing valid mail. If you want to optimize for the least amount of spam, go ahead and mangle your address. I prefer to optimize for using e-mail for communicating with other people as well as possible.
Friday, June 6, 2003
Random thought: I am a neophobe
I wonder when I turned from a neophile to a neophobe. There was a time when I would have been excited about a new box to play with, but now I've been almost dreading it for some time. Perhaps it is a sign of old age.
Tuesday, June 3, 2003
Random thought: Bubbles
I survived the IT bubble of the 1990s. Not only did I survive, I came out better off than going in. This might be because I did not gamble with stocks more than once (the VA Linux IPO; and that one was successful) and did not adopt an extravagant lifestyle while I had a high paying job. After 2000 things haven't been particularly good (Wapit went bankrupt in 2001, Keko Technologies in 2002), but not too bad, either. Thus it was fun to read Famous bubbles from tulipmania to Japan's "bubble economy". If I ever see common people queueing for stocks at an IPO again, I'll start saving every penny.
Sunday, June 1, 2003
Random thought: Overnight success of log
The second day of public logging. I already have three hits! Yay!
Saturday, May 31, 2003
Random thought: Booting...
About two and a half months ago, I started to keep a log of things I did at work, and somewhat in my free time, as an aid to my memory. Two and a half months later, I've written about 15000 words (or 40+ A4 pages) of text. Some of it was not meant for public view, either due to personal or work reasons, but much of it could have been. In fact, in a way, some of it should have been public, since it was related to my free software projects and people have shown some interest in those.
I have thus decided to experiment with keeping a web log again. My first attempt, a diary at Advogato was not very successful. It failed partly because I was too busy and partly and partly because composing text in a textarea HTML element is painful. Copying and pasting between browsers and editors helps only a little.
This time, I'm writing things the way I wrote my private log file: as simple, static HTML files. Let's see what happens.