Older blog entries for ajv (starting at number 101)

29 Mar 2001 (updated 2 Apr 2001 at 05:52 UTC) »
jschaum: life in Brisbane

As anyone from Brisbane will tell you, thers is no life in Brisbane. :-)

However, it is a great place to work, and it's not far from Sydney (about an hour's flight), and two and a bit from Melbourne. Melbourne is fantastic; lots of 24x7 places (including all Coles, a major supermarket chain), zillions of restaurants spread evenly throughout the city (with vibrant Greek (Lonsdale St), Italian (Carlton), Vietnamese (Victoria St), Chinese (Lt Bourke St), vegetarian/alternative (Fitzroy) and many other specialized cuisine areas), good shopping, great cinema and arts life, a Comedy festival that rivals both the Glasgow and Montreal festivals, and by world standards, cheap(ish) housing. Melbourne is the third largest Greek(-speaking) city in the world, and peoples from all over the world.

Unfortunately, Melbourne is not Brisbane.

In Brisbane, most places shut early, Fortitude Valley is awful (it's like a really down at heel, cheap-ass version of a red light district). And it's warm and humid nearly all year around. Red necks infest most outer suburbs, and the inner suburbs aren't all that great. There is a particular style of Queensland politics that seems to blame everything that they don't like on Canberra, particularly once you're north of Ipswich. It is possible to get a decent feed and coffee in Brisbane, but only in certain suburbs.

The downside: being paid in the Australian peso. I'd suggest getting paid in the equivalent of US currency. You'll be extremely rich. To give you an example. A mid range US salary is about $70k (poverty rates in the valley). This is over $140k in Australia, and you are in the upper 5% of all tax payers. It's enough to afford pretty much any house you like in the Brisbane or Melbourne regions, minus the bloody expensive places.

But Brisbane has to beat Norway as a place to work. :-)

Cat flatuence

Is evil.

27 Mar 2001 (updated 29 Mar 2001 at 03:31 UTC) »

nearly got accosted by an overly amorous children's charity logo on my way in. The person inside seems to prefer hugging cute women (of which there are many in my North Sydney client's building lobby).


Got my dual PPro back on its feet last night and made it my DNS server. I'm sick of not having any entries for any of my machines in my own home network.

The machine room is getting fairly warm.

21 Mar 2001 (updated 27 Mar 2001 at 09:22 UTC) »
der diary

Please forgive me, for I have sinned. I haven't posted for more nearly two weeks.


Working on bugs. I'm sick of my Alpha not being as good as my dual PPro running NetBSD, so I'm installing -current and the latest Xfree86 cvs in an effort to bring it into line with my x86 unix.

Had fun trying to build -current as a non-privileged user. Apparently there is some work there to make that happen. It's unacceptable to have to compile the lot as root.

Whilst make build was chugging away, I dug through my software testing sites, and re-found fuzz. I ported it into the 21st century (ansi C, strict compilation flags), and sure enough, it ran fine... which meant that a whole bunch of utilities crashed and hung.

In 1990, the guys who wrote fuzz found that about 25% of all utilities from commercial Unix vendors have basic input validation and memory allocation issues. In 2001, NetBSD still has about the same level of issues. Argl. Doesn't anyone run regression tests around here?

beta 2: let microsoft spend enough time on something, they will get it right

Got beta 2 yesterday @ 110 kB/s. Not a bad rate, but much less than 650 kB/s I get when downloading stuff from mirror.aarnet.

beta 2 rocks. They fixed all my outstanding issues, and introduced a few. My CNET Pro 200 cheapass PCI ethernet card installed out of the box for the first time. The install was flawless and it was fast. WEP is back!

Dan and I played around with trying to control each other's PC, and that worked very well. It seems that TermSrv is built into anything > Pro now. Excellent.

Problems still outstanding: Guest is on by default (!) Administrator level accounts are created by default on Pro without passwords (!) It's nearly impossible to figure out how to log on as the local Administrator using the new funky login screen. You can't easily script a number of the new features (ICF/ICS).

And then there were the usual set of compatibility bugs with programs that only I seem to use. Time to start bugging. :-)

But overall, WinXP beta 2 is excellent. It's just been promoted to my primary operating system.

Skud: Darwin's Radio

Is by Greg Bear. I recommend all of you go to your nearest bookshop and obtain said book. It's more about social issues than evolution or mutation. Excellent use of the science as detective genre. Bear is my $DEITY, except when Mr Banks pops out another one. Then he is my $DEITY.


Working on lukemftp has all but stopped (as predicted).

Working on auDA stuff. Make a submission if you are interested in Australian DNS futures.

Posted a little collection of XFree86 exploits (no new ones, just collecting knowledge together) to the devel list for testing.

If you use any form of XFree86

Upgrade to 4.0.3 (due soon) as soon as you can. For those of you in the dark ages, 3.3.7 will be out shortly as well.

If you can't go to 4.0.3 for the only valid reason (4.0.x doesn't support your card), go to 3.3.7. All known serious security flaws are fixed for the first time in this new stability release.


Got the new Dell laptop today. besides weird key placements (I'm hitting all sorts of keys), the thing is good. Learning why they bother with a battery LED is my first priority, and figuring out how I can disable the nipple and its two little nipple buttons in favor of the mush pad. Most people I know like nipples and hate mush pads. They are wrong. The mush pad is as fast as a mouse and very expressive. The nipples (which I have had to live with since moving to PC laptops) are awful. The first thing I did when I get my Tecra 8000 a few years ago was to get a USB mouse. I don't need it now.

The C600 is fast, has a big beautiful screen, and runs a certain pre-beta 2 operating system IDW very well indeed, which as I'm a beta tester, is about as much as I can tell you without being hunted down by Redmond.

In fact, this build is very good. It's stable, boots extremely fast, and is going to be my work horse for a little bit.

hackery: Story of CRT suckage! Be amazed!

So here I am, sitting at my PC last night trying to port Luke's ftp client to Win32. It uses a lot of Unixisms, including signals (to emulate overlapped I/O and to do basic threading), pipes (popen), fork, termios/termcap, lots of directory stuff, and arpa/* and inet/* and so on.

So here I am working with MS's C runtime (CRT) which sucks just so bad. select() is essentially broken (64 file descriptors, anyone?), pipes don't exist, signals don't exist (and no way to really trap them), termios/termcap doesn't exist, fork doesn't work the way you'd expect, and unless it's in the Standard C library, there's no arpa/* or inet/*.

Coupled with that, the Visual C++ compiler ignores

#if 0

blah blah blah


and attempts to pre-process stuff it is supposed to ignore. So I'm basically hacking away code, so there's no chance of keeping this from being anything but a complete fork.

I don't want to use cygwin or gcc for win32 as I'm aiming for a high performance port.

So, I basically look at the guts of Luke's program. It's about 2000 lines of Crufty C code. I'm thinking that a new port, with just the guts of Luke's code will the way forward.

This allows me to use overlapped I/O (which is a fancy way of saying "asynchronous" I/O). NT reads blocks < 8 kb in blocking mode regardless of overlapped or not, and that works out okay anyway as we want to chuff it down a (slower) network socket. So I only am considering overlapped I/O for the network side. This has a greater chance of being able to work on the 9x kernel (which I care about >< this much). On platforms that do not support overlapped I/O (most Unixes), this can be changed back to be blocking network I/O and just put back in the signal handlers to perform cleanups and rate limiting.

It also allows me to rejig the old code that is truly crufty, and if I keep presentation, MI transport and MD transport (ipv4/nt ipv4/unix ipv6/nt ipv6/unix) seperate, the result will be a portable, probably smaller, definitely more robust client.


How many more kids have to die before the US takes action on small arms in the community?

Two separate school shootings today so far, luckily the one in the US didn't kill the person shot in the head, but the one in Brazil did. But being shot in the head is not fun, and I bet that person will be scarred for life, both emotionally and physically.

This tragedy must stop NOW!

4 Mar 2001 (updated 4 Mar 2001 at 13:08 UTC) »
hackery, at last

My friend Luke, is the author of luk emftp, a portable ftp client based upon the original BSD ftp client, and is now used by default in Suse, NetBSD and a few other platforms. It is easily the best CLI-based ftp client, and I've used a lot of different clients. His client has Emacs or vi bindings, command completion, follows *all* the ftp RFC's, transparent passive/active, accurate time remaining and download speed, command line URL parsing for http and ftp targets, including complex redirects ... (de-akamai anyone), the list goes on and on and on.

The code, although well looked after and modified, is built upon years of cruft. I'm trying to port it to Win32 as I'm sick of having the predecessor of Luke's code, without all the fancy features.

My compiler (Visual C++ 6.0) is at times strict and bloody minded about what it will accept and where it will accept stuff from. What doesn't help is the extremely poorly written C library. It's probably just enough to make most strictly POSIX utilities work, and nothing more.

Expect this effort to fizzle out on Thursday at 6.46 pm as I find something else to do. (note to self: get a longer attention span).

I'm glad someone reads me...

I had a couple of days off computers from my last post, and might have missed any replies to my reply rant to deekayen's post. Since it was fairly offtopic (as was Deekayen's post), I don't mind too much :-)

Anyway, thanks Ankh!

deekayen: Living in the past

Would the framers of the 1787 Constitution be looking back at the luminaries of the 1560's for inspiration for their country?

No. They were framing the constitution around new(ish) ideas that the eminent contemporary people (well, men) of the time liked, a sentiment that essentially can be distilled to : "English out!", a sort of Lutheran nailing 96 points of contention to the church door.

In Australia, we have a c onstitution that is 100 years old. We haven't changed it much, so it is irrelevant in many of its sections because we haven't changed it much. There are sections stating that the Governor General will get 10000 pounds a year. Since 1966, we have used dollars. And this is not the only example.

Our constitution, like yours, is getting crufty, and needs a good cleanout - by the people of our time, not the people of 1787 or the people of the late 1800's.

Living in the past is dangerous, and pointless. As soon as you do, you are history. Think Spain, think Holland, think England. These countries revelled in their past glories and are no longer world superpowers.

Conservative libertarians, such as this "ambassador" are bad for society, which is just the way they like it. In most cases, libertarians do not see the benefit of society and yet enjoy its beneficence.

Which bit of a "well regulated militia" do you not get? I don't count the NRA as a well regulated militia. I don't count the millions of gun owners who do not belong to gun clubs or actual militias as being a well regulated militia. Your right to bear arms is in context. As an individual, I am all for your *individual* so- called "right" to bear arms infringed, with extreme prejudice.

The ability of a militia to seriously check the power of any government (by force) ended when the machine gun and heavy weaponry (such as tanks) came out. Thus gun nuts have been clinging to the silly idea that their inviolable "right" to arms on the basis of keeping the government in check. In recent times, these same sort of anti-guvment idiots blew up a federal building in Oklahoma, killing many innocent people with a simple, but large bomb. What was the government's reaction? It will execute one of them shortly. Did it change anything? No. If anything, it hardened the hearts of the citizenry towards actually liking their guvment and hating the terrorists for their actions. So why keep guns? It's pointless. Self-defence? That's crap: you're more likely to get shot with your own piece by accident or by deliberate house-holder action. To go postal? Well, that's smart.

In Australia, we were aiming at one mass killing every year until 1996. Then we get half-assed gun control, and haven't had one since. The sooner we rid ourselves of the damn things, the safer we'll be.

Moving on to taxation...

If you agree that the society benefits when the government provides certain things, such as hospitals (well, in most civilized countries they do), education, defence, roads, infrastructure, and other services and these things have a certain cost, then the government needs to raise capital to fund these. How it does this is up for grabs, but it is better if everyone pays their share. Ridding yourselves of income tax will move the costs to other areas.

Income tax is a broad tax designed to reap a little from everyone, rather than a lot from a few. The problem with no income taxes is that the few have demonstrably shown that they can avoid nearly all taxes. If then the govt taxes as Keyes would like them to, through duties and tariffs, this is impossible to enforce when trans-national flows of information are far more valuable than goods. So the "gov'ment" would be forced to rely solely on the little people again through shocking sales and other taxes.

If on the other hand, you don't agree that you like roads, a country essentially free of bandits and any semblance of real threat to your national sovereignty, clean running water, schools, or accessable health care (most civilized countries have this), well ... don't use them. You'd be either dead or a cast member of "Lord of the flies" in two weeks.

If you don't like what I am saying, both Australia and the US use a form of democracy called "representative democracy". You elect (you did vote, didn't you?) the people that represent you (well, and any special interests that helped them get elected). Theoretically, they must listen to their constituents. Go see them. Make appointments. You'll need to have an agenda to get past screening, but it'll be worth it. Try to stick to a single point or issue; politicians aren't exactly Einstein, and this helps them. Join a political party (even the Libertarian party if you must), get active. However, if you didn't vote or if you don't want to spend your time getting active, then you don't count.

21 Feb 2001 (updated 21 Feb 2001 at 01:51 UTC) »
washing cats: like herding just more painful

dirtyrat, mixing Meebles and water forms an emulsion, albeit one that fights back with very sharp claws and teeth, and he doesn't take prisoners.

But from time to time, Meebles sleeps under Ang's (old) car, and gets oil on his fur. The choices are:

  • try to wash him
  • wait for him to lick the oil off then get sick
  • take to the vet, and let the vet wash him

Guess which option I use? :-)

sad, I'd forgotten about the loud purring. Kittens have precisely one purr volume setting: 11. Luckily, they seem to get a bit more control as they get older.


I'm getting another Alpha this Friday night: looking forward to that, so I can start porting XFree86 4.0.x to it. It comes with a 21" monitor. I hope it has enough RAM.

nooks: NDAs

NDAs aren't necessarily bad, they're just evil. However, it does get you nice toys and I get to fix things before you folks get to moan about it.

sad: kittens

sad, your kitten will entertain you for months with the following behaviour:

  • Attacking the back of your hands and ankles (this one's a pain, suggest water pistol)
  • Kitty litter is optional to kittens for the first few weeks (a pain; suggest being home with kitty until they are reliable)
  • Early morning (4am - 6 am) wake up pounces (this one's a pain, suggest a door)
  • Outside/Inside/Different (this one's a pain, suggest ignoring them when they're outside)
  • Chase the phantom butterfly (this one's cute until the first thing is broken)
  • Paw on the nose whilst you sleep (this one's cute)
  • Chew through dangerous things (the clothes iron, suggest water pistol)
  • Look at you with the most innocent expression, climb half way up your leg (or #include other much loved item, such as the leather couch) and use you as a claw sharpner (suggest water pistol)

Of course, if you're like me (a complete cat slave), the above is cute and lovely behaviour and part of the rich tapestry of being your cat's food slave.

If you go the water pistol route, make sure your cat does not see you do it, otherwise they wise up and do it when you're not in the room.

If your kitten is really young, now is the time to hold and cuddle it (lots), let it sleep with you, get it used to being on your lap for fur stroking sessions, about once a week wash it in the bath, brush its fur with a good brush, and get it to meet a lot of people. If they get lots of human attention early on, it'll be really nice to people for the rest of its life. If you don't, you'll get psycho.cat who will attack ankles and hide when visitors come. And you'll lose all the skin on your arms when you *need* to give it a wash to rid of it whatever nasty substance is in its fur. I don't even try to mix Meebles and water - I'm not that stupid.

92 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!