Older blog entries for mx (starting at number 36)

The first part of my wee side-blog add-a-link app is done It's used to post links and blurbs to the side-bars of my site using a browser interface, allowing link-logging to be done by any number of people (in any number of locations). I took my time with this script to try a few different approaches ... and discovered several things about CGI, CSS, and Unix in the process.

Link data is stored in a tab text file per side-blog which is transformed into HTML when links are saved. The web interface is built as a Perl script and template (stored separately) The interface is styled with CSS to make it more like a real application (the text fields resize with the browser window). The side-bars are added to the main pages of the site using Apache server-side includes. This allows the side-bars to be updated independently of the site.

I'm planning on adding a few more features to the scripts before posting the source, including simpler installation and better security. I'm also thinking about adding an interface for editing the database (remove/update entries).

It's funny how much I don't know, and how I fear the unknown. I pretend that I don't fear the unknown, but for certain topics, where I feel especially inadequate, my baseless fear hinders learning. It's all in my head, of course.

This week I was reminded how little I don't know about how certain parts of dns and name-serving work. It's mostly because I've alway had admins around to take care of the details, so I've been too lazy to dig in and read about it. The worst thing is that my lack of knowledge made it more difficult to get the stuff into my head, even though it is all fairly simple stuff. I was avoiding playing with a few things, absurdly simple things.

I'm over that now, but I have to watch for that fear. The fear, or stupidity, is really retarded. And it is always worse to see it in myself, as I've always detested it in others. I've always seen those people who don't know something that they should, and thought less of them. I'll have to remember that I can be as retarded as anyone, and that it just takes a gentle nudge, and a bit of momentum, and the knowledge flows.

Anyway, I learned a lot about apache this week, and about the different categories of dns records, and how it all relates to hosting at home effectivly. It's all simple, and well documented, which is really a beautiful thing about how the forefathers set up the great net of ours.

It's funny too, I was around for the birth of the public internet, with my first account starting in about '90. I've been fairly ignorant about the bulk of what strings it all together, outside of the few bits I've used in my code-slaving. That's the way it works, I guess.

So my personal site is back up, and hosted at home. It's backed on blosxom now, which is easily one of the most intelligent blog-tool designs I've seen (zen-like even). Now I just hope that my ISP doesn't give me grief about it, as the volume is so paltry ... even though it does violate the TOS. I guess if they do get annoying about it, I can switch to dsl, as that carrier is quite happy to let people host at home.

My sites are all moved now, and I'm between oss projects. Work is ok, but I'm bored. Other prospects are still there, but delayed (a year now). But, holidays are comming soon.

Burn-out sucks.

This is one of those reflective summers. I killed my pet projects, nixed my vhosting account, and am leaning towards learning to write better. Any software I work on will probably be related to writing, or Perl, or both. I don't think I'll work on developing blogging s/w anymore, there's enough of that out there, and some of it damned fine software.

I spent most of the week rebuilding a test right to simulate a customer network problem. It has a strange topology, so scaling it to a reasonable testing size was a challenge. The resulting mountain of embedded PCs, simulation PCs and networking equipment dissipates a few hundred watts of heat, and in one of the hottest weeks of the year. Then there's the noise, from dozens of tiny fans doing their best to save the many CPUs from meltdown. Hardware scales so poorly.

I think this is the reason I ended up loving software so much -- the total disconnect from the complexities and limitations of the real world. Not that software is simple, but inter-connecting 10 items is only marginally simpler than with 10,000 items. Now imagine connecting 10,000 network devices? Hardware complexity scales at some inverse proportion to software complexity.

The setup I've been working on simulates a handful of discrete networks, each with a few levels of hubs, switches, and routers. I have no idea why hubs play into this mix, but they do. It's been a long time since I've seen a hub too, since switch prices have been so reasonable in recent years. And factoring the limitations of hubs into the bandwidth capacity is really quite a job too, as it has been a while since I thought about what a limited networking device they are. The difference in bandwidth can be incredible, a few orders of magnitude more than would seem obvious. That depends on where the hub is, of course.

I was also reminded how broad the field of networking is. I ran into several technical aspects of networking that I had never considered before, and I've set up several networks in the past. Not that I'm a network guy, but I know a few things. Luckily we have a good admin in our other office, so my dumb questions were answered quickly. Experts are important to an organization, as is knowing who they are.

It was also interesting to go back in time to Windows NT4 and 98. My potpourri of simulation PCs include a few 98-laden laptops, and some NT4-ridden 'embedded' units. All of the actual test hardware is 2k or better, but the simulation stuff is old. Another testament to my very short memory: network configuration has really improved in newer versions of Windows. Microsoft really does improve things. This all would have been easier to set up, of course, with BSD or some Linux variant. But that's probably because I prefer that approach to network configuration, not because it is simpler. Nothing is hidden, it is all there in plain site, in plain-old-text, and in well documented form. I really do hate it when things are obscured.

The network setup ended up taking much longer than it should of. We have piles of hardware and cables, organized in our store rooms, and the many test rigs around the office. But, a recent 100mph project derailed most of our meticulous organization, and mixed up the piles of RJ45 ethernet cabling with the piles of RJ45 serial-line cabling (not to mention the various types of cross-overs). I know you're not supposed to use RJ45 for serial-cabling, but it ends up everyone in this industry does -- and there is no standard pinnout amongst the vendors we buy serial equipment from. So, much of my week was spent finding cables that were actually useful for ethernet networks. A small example of why standards are good, and how sometimes the users of something are more aware of what is useful than the standards bodies are. RJ45/CAT5 make for damned convinient serial cables. They look a lot like ethernet cables too.

This sort of hardware setup isn't actually complicated, but it is certainly tedious if done properly. Each step of a setup needs to be validate, at the granularity of individual PCs and connections. Add to that the OS and software setup, and a week disappears into the ether.

Beta - I'm now a beta tester for a commercial blogging service, TypePad. I set a beta-blog up using the beta tool, and am seriously considering closing down warped. I'm tired of hosting fees, and maintaining things there. It is easy to do, but chews cycles from an already taxed cranium. But, I tend to waffle on these sorts of decisions, so maybe I'll just end up hosting it all from home.

Slavery - I'm working on making a retarded network 'failover' solution function. Another here dude smacked together some scripts and a cheap-ass router, and then called it failover (IP forwarding). Of course it fails on site, and now I have to fix it. The topology is cyclic, the routers questionable, and the scripts are a mess. It's no wonder that OSS can beat commercial software ... because f*cking retarded solutions are usually ignored.

1 Jul 2003 (updated 1 Jul 2003 at 23:46 UTC) »
Mmmmm ... Books - An interesting view into the world of Amazon.com through the eyes of one of their developers (via scriptingnews). I ordered a few books today to feed my brain, including a few tufte books I've been lusting after for some time.

Oh Canada! - It's our birthday, and I'm proud to live here. Oh, and we smacked a wee rocket into orbit yesterday. A humble telescope.

27 Jun 2003 (updated 27 Jun 2003 at 18:49 UTC) »

POV - Had an interesting debate with a local cube dweller about the new G5 macs. He argued for quite sometime about how microsoft and PCs had always been the place to be, and how Apple could never be as good. He insisted that he wasn't anti-mac, but his blindness that Wintel was the One True Way (tm) was astounding.

Now I use many platforms regularly, and there are many good things to say about most of them. But today, I realized how skewed my own point of view was related to platform zealotry. It really suprised me too, as I consider myself platform agnostic. The really strange part was that I was secretly favouring products from a company that irks me, and only because of the consistent propaganda that I had hoped I was immune too. Even though I don't argue or choose technologies with the marketing-shite mindset, I still have a perception that their software is somehow better than it is.

The years of marketing-hype and constant media assumptions surrounding the quality of the Microsoft office products, indicate that they are somehow better than anything else. I've used these products, and similar products on other platforms, and have bought into this shite. I don't know how, either, because everytime I use Word it annoys me for its many failings ... and this is in a 10+ year old product. By now it should be good, really good. But a few days away from it, and the marketing-hype creeps back in and I find myself critical of other non-Microsoft solutions.

So when I'm using Open office, Abiword, or Gnumeric, I find myself thinking: "Hey, these have really come along. They're almost as good as what Microsoft would do." ... which is complete and utter bunk. They're *better*, in almost every way than the same Microsoft products. And I don't say that because I love open source.

Using Word and Excel a lot this week, I am amazed at quirky and buggy they are. Word bullet lists still stupify me - increasing and decreasing the indents has a random effect on the resulting font and bullet style. I remember this bug from 5 years ago, and it still happens periodically today. The style-editor in Word is a usability joke, 5 levels of modal dialogs to change a style. I noticed several redraw bugs in Excel today, which also suprised me. It didn't stop me from what I had to do, but I was amazed at how quickly I could forget that these products are just average software. The marketing still gets to me, and I know better. I can see where my cube-neighbour gets his mindset, even if it is hook, line, and sinker. Marketing is really the great evil.

I think the recent Apple hardware is cool, but it is spotted with marketing crap. I hope Apple does well, but I am certain that people will make unbalanced arguments about their products too, based mostly on the aura that the Apple marketing machine has worked hard to create. Some people will feel better using Apple products, just because they are Apple products. It ends up usability is partly a product of perception, of how people think they feel about the thing they are buying. And it ends up people are easy to lie to.

As for the quality of Microsoft products, I am probably more critical of Word than I am of Abiword, and conversely more forgiving of Abiword than of Word. Despite the predjudice I pretend not to have, Word is remarkably frustrating to use. It is amature software, a terrible writing tool, and bloated with unusable features. Microsoft has succeeded, though, as a few weeks now I'll forget most of the frustrations ... and remember Word as ubiquitous 'world-class' sofware. It ends up 'world-class' is all about marketing, and that I am a chump.

Even if Apple makes the fastest, sexiest machines, or if open-source produces the best Word processor, people won't buy into it. Or if they do, they'll forget the next time they turn on the TV, or open a magazine. It isn't about quality, or principles. It is about money, and about how often something is heard. People are generally too weak, even when they're discerning, to escape a constant stream of deception.

Improvement - I finally churned out another article .. a rant on web usability and blogging. I can't believe how long it can take to massage a few thoughts into something coherent, and how much the tool used affects it. I have a long ways to go before I'll be ready to write my first book.

Reversal - I used to think that web interfaces were great, but am now realizing how much they get in the way of writing. Sure, I can force my brain to produce a stream of characters into a little web-box. But it isn't effective or pleasant. How do we put up with this shite?

Retarded - I hate to be tasked with work that only exists because of brain-damaged folk. I'm not being elitest or anything, but what I'm working on this week at my slave post is really half-baked. It's partly due to the middle-management philosophy of least-risk, and partly due to a domain that can't be solved due to a borked relationship with the customer. There are actually some good solutions to this set of problems, but none of them are within the realm of possibility. Retarded man.

Less whining please - I should complain less. Futile efforts for slavery are part of life, as are the simple folk who mandate it. Things are never as bad as they can be made to be in our minds, and there are always alternatives. The same goes for being critical of past failures, which in the end were roaring successes. I still don't get how that sort of thing works, but it seems to have happened to many slaves I know. This is life as a slave, I guess.

GTK GUI building - I slapped together a GUI prototype for a blogging tool last night using glade. Glade is really quite nice - the prototype took 10 minutes, and resulted in workable C-code. It's too bad that they dropped support for generating perl and python code, but the resulting C-code will be enough to easily convert to either language. In fact, it should be 'trivial' to script the conversion between the C (or xml) and perl, python, or mono/gtk# (for that matter). I'll finish the layouts first though, and figure out what the target language will be later. Anyone have any recommendations in this area?

Blogging back-ends - Up to now, I've been building bender as both a blogging interface, and a blogging back-end. I'm thinking that I'll focus my efforts on front-end blogging tools for Gnome, as there are many decent blogging back-ends (like pyblosxom). Maybe it would even make sense to support multiple backends, as some of the tools have external-apis, or scrapable web interfaces.

What I need the most (and maybe other people too?) is a more productive front-end for managing my site, somthing that makes the writing (and simple markup) portions of it trivial or even enjoyable. Anything that makes it easier to write, and anything that makes it easier to write /better/. I can live with vim, or a web interface and by-hand markup for writing articles, but the non-writing tasks really suck the energy out of the whole process ... especially the aspects that are laggy, like web-form updates, or file transfers. Too much stuff in between the brain and the persistence medium. Cooper really has a good point about cognitive friction and usability.

Tool focus - I'm also attempting to write a paper to focus my findings, thoughts, and rants on blogging tools. Every tool I've used has been useful, but none of them have really tweaked my cortex. Most of the web interfaces suck for writing, but are decent at entry-administration ... and are great for the resulting content. Most of the client-side tools do better at the writing interface, but place too much emphasis on site organisation, templating, or file transfer. A blogging tool is really about writing first, and then pesky details like layout, organisation, and file systems.

27 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!