Category > computing
These magic boxes
Publickey
With this code, you can insure that messages that say they are from me actually are.
Isn't that cool?
An easier way to get my key is to get it from a keyserver, where you will find it under Nicholas Avenell (nicholas@aquarionics.com)
2004-7-20 - New Key.
2004-12-10 - Note: This is not my work key. That is something else.
Public key for 0xD1FC6F8A868D86DA -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.2.4 (GNU/Linux) mQGiBED3gPIRBADTSfwxSUb02gr0HdVjmFZ58Pp3uiVq07jrkG5Mb8m86zaLxnNt gtUBaqHsm1fSlkW+evbcAK5e6Dwiu7MTL+KB1aLhj+7wDQ8A2ZbI2k3A4R+BnHYG +8WOTgX9zbNn88XnQqlH8PR7TPgyvUnEyO0ag0sGFSv/5cn9jdJBQ7tSiwCg/0Dv dvI7K2cizXqPHLEpQ15zkA0EAMeYYzvTkfkQyAXuAE1Mn0KA3BYi6TQm5VPZlPXg SnS+2FxqSsJWXTxenUQROh3/7+9GdcMW1whjuzR8obXLxEWpgcXEzku3MiGIuDLB yErfO/A4sVD/zZIqVpTHHBdlrqpmlHJqTyuXhOGKWNgaycAfh4rZPHWr2+6B8Oi6 6Eu7BACC/mNi4atUdVO8b5Olp372mJ0WdI732HPA/0Y4inf5ZZqCk9nGH9XD0AVe Ecy40aj6oSwsA1S8tXA5cuIoJJedn2ju7dmMU2fw0dm8mKyPGZnvml0MyTV01h7/ 2LQUxmauWSl5o/apJC28ScoyXSOe9v0CqlQajzm9XFA5TcaIsbYAAABITmljaG9s YXMgQXZlbmVsbCAoaHR0cDovL3d3dy5hcXVhcmlvbmljcy5jb20pIDxuaWNob2xh c0BhcXVhcmlvbmljcy5jb20+iF4EExECAB4FAkD3gPICGwMGCwkIBwMCAxUCAwMW AgECHgECF4AACgkQ0fxvioaNhtqZ0wCfYxZg2QbRAkxhqIweH3ABH+LqY/oAnjM6 79qj0tR878P/gV5BizOoju/ziEYEExECAAYFAkG24NQACgkQqwpf0XnHDh20zACg kMdy6S7QUSG0WefYQo3PWoUL/DcAmgPkOJAmMHrJH6wPXgL0VlqDt4+CuQENBED3 gPUQBAC4WQgZaTdLNC4DkPzOT0ewJP24mXVnLXDKlkPSoRvfr14ntC+ypSoLusBR Xok8ZCuuBzeNdHIy1u3u8btP3gtj7QSRHz2dOW/ET1eKNdS+PN3tbB+E7basuCcI JxE/4+vCfWj2hPDiJCUih/Oyz1Q28nTT2TrOkhvMFCbR903EkwADBQP9EAWx2c7T AWNBoYsAnUHEZwaPpgjJvv9ZhbM+kmFJzTiFROcD5De3pXUUhvXnhtasHtHsgflu WJB/FhV6/lhzU9NgPCwksifM7+JjvV338rlUimRK1Mzq4joSBcVz6EHcWlWPn7VY KfsQDzqFQOxXjZtwWxWpHTsoHhy5QfMjoOiISQQYEQIACQUCQPeA9QIbDAAKCRDR /G+Kho2G2vpJAKDCn9ho8B+OCSVxNmxC/HlhdQUwRQCgjZWsLBJf0EBLOtl6aDLx RMzvm3U= =Ddtg -----END PGP PUBLIC KEY BLOCK-----
Netscape 4 Sucks
Netscape four sucks.
I'm sorry, but it really does. The inability to support things I can forgive, but Netscape 4's support of CSS is nothing short of a joke. A little history for you:
When Netscape 4 was about to be released, there were two possible standards for Stylesheets, JSS (Javascript Stylesheets) and CSS (Cascading Stylesheets), and, at the last minute, they realised that CSS was going to prevail. So the only solution was to code a CSS<-->JSS converter, and run all CSS through that. This is why, if you turn of Javascript in Netscape 4, you turn off CSS too.
This means that Netscape's CSS is only half there, which means if you try to code to the CSS standard, your page *will* *not* *render* in Netscape V4. So in order to be able to use the full range that the medium makes avalable, Aquarionics has been deliberatly coded so that Netscape 4 will render the pages the name as Netscape v3 and all the browsers that don't support CSS2 at all.
You arn't missing any content, the only thing that goes are graphical nicities (And Aquarionics isn't a very graphics-heavy site anyway). For more on this theme, and for more reasons why, go to this page on web standards
In conclusion, go get Netscape 6, Mozilla, Konquerer, or even IE5/6 if you want to see sites as they are supposed to be.
Those who spoke on this:
Napster-Abandonware-Freedom
Napster Good.
Where were you when you heard about Napster? Personally, I'm not totally sure. It was a fair while before I tried to use the system, and when I did it wasn't very much, But I still belive Napster is A Good Thing and A Bad Thing because I belive in the concept of Abandonware.
Abandonware is software that is now unsupported by the people who originally made it. The term was coined for the Gaming industry for games that - due to the shifting sands of publishers and developers - are no longer either owned or acknolaged by the people who originally created them. There are spots in the darkness, Stuff like Elite - which is still being argued over today, and there are also black holes: Stuff like the anchient Atari games (Pong, Space Invaders, Centipiede, etc.) which were bought by Hasbro and turned into Spinny-Rotaty-Neatocool 3D versions. Which were crap. But I digress. There are games that have fallen out of the back catalogue. Like Lemmings 2, orginally created by DMA Design for Psygnosis was lost when Psygnosis were bought by Sony. You cannot and will not find this game supported anywhere, because DMA are on to GTA3 and their new bits and are no longer affilated with Psygnosis (Who own Lemmings, AFAIK), and Psygnosis no longer acnolage it because it is no longer part of their structure. Vanished.
So people who have the game put it online. There is no way Psygnosis would make money from it anyway, because they don't support it anymore, and there are no new productions. People who want these games actually want these games. But Copyright law means that you can't distribute it unless you are given permisson to by the creator/owner. This is why I support (From a distance - I've never actually used it) things like Freeloader, which allows you to download (fairly recent) games in return for eyeballing a few adverts, and I also occasionally trawl the Abandonware sites when - in a fit of nostagia - I want to play some old game I lost the disks for ages ago, Or owned the Amiga version of, or always wanted to play. I point out for the record that I am no longer a Software Pirate. Back in my Amiga days, I had the occasionally copied game - who didn't? - but when I decided it would be in my interests to pay for the games I played (if only so there would continue to be games in the future) I formatted all the pirate disks I had. I'm digressing again.
To sum up the above paragraph, Abandonware Good. So why Napster Good?
Napster is (was) a fantastic source of the musical equivalent of Abandonware, stuff you would never ever buy, or possibly even find, but could now listen too. Unfortuanatly with the technology was the ability to put everyhing online, including all the stuff the record companies are selling in stores up and down the country, across the world. and including the stuff that is actually making artists money. This is coming into the Information Wants To Be Free argument, which is another rant in the brewing, which states that the imporant thing is the creation of the information or the art, The payment is secondary. Unfortunatly it's a necessary secondary, In order to continue the Art you must feed, clothe and house yourself and those dependant on you for food, clothing and shelter, and in the society we live in you cannot do this. Artists and Information Gatherers alike require sponsership of activities. And if you are giving away for free what they need to sell for money, then you maybe are depriving the future, because they may be forced to give up and do something that actually pays.
Like web design.
(Hint, Do I want to sell my soul? No. In an ideal world, I'd write for a living, or invent websites, Or combine the two and get paid for Aquarionics. This is not an ideal world, so I am jobhunting)
This started with Napster, so it goes back. The tracks I have downloaded Napster have been:
- They Might Be Giants tracks
- Tom Leher tracks.
- Random Whim Tracks
And that's what Napster is good for, the abandonware tracks you can't get in the shops or at all. But the technology lead to the other stuff coming as well, and so it had to go.
For the record, if Napster were to start charging $10/month or something for the service, I'd be happy to pay. I'd have to give up paying for Ultima Online, but it'd be worth it.
The record companies hit Napster with the large blunt instrament of Law, when the laser-guided presision of negotiation would have been preferable. Napster will die, and 100s of other similer systems will spring up, and have done. But that isn't the point. Lawyers take great delight in playing Whack-a-mole with copycats to the outlawed systems. There needs to be an "official" Napster. And it'd be great if the people who ran the old one could do the Offical one, since it worked so well. But they won't. The Record companies are annoucing their own Online Music Emporiums, another thing that misses the point entirely, since the whole point of Napster (or even the entire Music Retail industry) is that you can go to one shop and buy from many record labels. You don't need to know that the Divine Comedy are now published by Parlaphone and go to there record shop, you just head down to HMV and look under "D". Untited, the system could stand. Divided it will never get up, let alone fall.
The Music industry needs something like Project Gutenberg, where old music can go to die where everyone can remember it.
This article was previously published on Kuro5hin.org, where it gathered a few comments. You can view that version of that article, and the comments it gathered, at http://www.kuro5hin.org/story/2001/7/18/151644/458.
Those who spoke on this:
Aquarius:
I like this.
I’m not sure I agree with it, but I can’t quite put my finger on why. But it’s an excellent piece of writing, nonetheless. Kudos.
Linux V Windows
About the author.
Nicholas Avenell was, this time last year (And now it draws ever closer to the start of 2001) a Linux Newbie. He had installed Redhat 5.2 once for a week, failed to understand it, and reformatted the drive to Windows. He has worked, and is working, as a Microsoft Troubleshooter for a range of small companies and individuals stretched across the UK. When he expressed an interest in Linux, a friend gave him Caldera OpenLinux 2.3 and Slackware 4 (of which he has only installed Caldera), but a reputation for "Newbie Friendlyness" drove him to the shores of Mandrake a few months later. He recently made the switch to the mighty swirl (Debian), after a bad experience with the Mandrake 7.1 updater, which wouldn't let him upgrade without formatting his Windows C drive. He is happily apt-getting as of now, and can be reached at Nicholas@Aquarionics.comWhy is the above before the main document? Because in order to understand this paper, you must know from where I speak. I am one of those "difficult" linux users that support desks hate so much. The whole point of running Linux was, for me, more understanding than actually getting it working, so when I asked a question, I found the answer, and then kept asking the source "Why?" until I understood. This is one of the reasons that I abandoned Mandrake, because it gives you this almost Mac-like "you don't need to see this part, so i won't show you, and if you try to find out, I'll cry" simplicity. Debian then though me in at the deep end.
Why?
Why Use Linux?
Because It's Cool. Because it will work with an old box, because it's a great feeling when you get it working, because it's free, because it sucks less than windows, because I say so. Or, in my case, because it is a useful thing to know for the Big Wide World.Why Not Use Linux?
Because you don't understand it, because you don't want to have to understand it (and you need to understand Linux), Because it's there, because it's easy, because you can pay for tech support, because you know people who can help you, because it looks nice, because it runs Monkey Island 4.Why Run Both?
Because you answered "yes" to one or more question in each section.Why? - Linux
Because It's Cool
Linux is not Geek Cred. Running your own Linux box does not mean you are a super megageek, capable of leaping tall TCP/IP stacks in a single bound, Find a Linux Advocacy group, or pick a random Slashdot story and read the comments on that. There are arseholes in the Linux community, as there are arseholes everywhere. Linux no longer requires copious amounts of Clue to install.But Linux is A Good Thing. It is easy to use, free, and part of the Open Source revolution. The programmers may have been revolting, but now they are politically so as well. It's diplomatic (In the sense of "Anyone can help" rather than the back-stabbing Risk-like game), and It's open. It's insecurities are known, and therefore work aroundable, and it's a spit in the eye to the Microserfs :-)
Because it will work with an old box
Linux will work with any box with a chip newer than a 386 and a small amount of memory. If you want to use Graphical interfaces, you will need higher specs, and if you have Weird Hardware you may need a moderate amount of playing to get it into the Real World.Because It's A Great Feeling When You Get It Working
If you have a problem, or you embark upon a Quest to get something working, the feeling that you get when you solve it is great, in this as with everything. Challenge is the spice of life.Because It's Free
As in "Speech". You can do what you like to it, you can recompile the code changing all instances of "Hello" to "Hi There", you can look at the source code, see how it works, poke under the bonnet. You can re badge it and sell it at a profit, providing you don't limit anyone elses right to do the same.As in "Beer". ISOs (CD Images) are available for most, if not all, linux distributions (Some fit onto disks) are available by FTP, or you can, quite legitimately, get a copy from a friend (Though they might (and probably will) charge for the CD)
Because It Sucks Less Than Windows
Windows Crashes more than Linux does.Because It Is A Useful Thing To Know For The Big Wide World
Most of the worlds Internet servers run on a UNIX-based OS, Many office networks do, and most Academic systems do to. It's Useful.Why? - Windows
Because You Don't Understand It
You don't need to understand windows to use it. The basic interface for windows is (for 99% of all applications) The same. There is the Start button, Launch your program, There is the file menu, the edit menu, the Help menu. Use one GUI and you can grasp the basics of them all. When you start noticing how much this matters is when you move to a program designed on/for a Mac, where there is less of a standard, or to *nix, where there is *no* standard. Also, in order to run windows you click the buttons. You don't need to know the commands, the syntax, the format. (And yes, I know there is the command prompt under windows, but you don't need it to run a program. It's an option, like X is under Linux)
Because it does what you want it to
Linux plays DVDs badly. It plays games reluctantly (You try installing Quake III under a modern distro, see how far you get), and runs Office and Photoshop not at all. The purists will say "Yeah, but you can use $FOO, $BAR, $BAZ and $QUX instead, but that's not the point. The *point* is that you know how to do the task under Windows, learning how to do it under Linux is *far* slower than just launching up the app in windows, and in many cases not as good.Because it's a necessity for the Big Wide World
For every office whose workstations run on Linux, you will find many more that run under Windows. Microsoft Office is the standard office product at the moment, and if your office cannot accept MS Office files, you will lose business. By shear force of market-share, you must be able to accept word attachments somehow.
That doesn't apply to everyone. That applies to me especially, because my primary admin system is of a company whose job it is to deal with Documents (Word document in, Mail merge with Excel Spreadsheet, place in envelope, post), but also every company that has to deal with many other companies. This description covers most of the world of commerce.
This document is not finished, As people find me arguments about what I said here, I will continue to attempt to shoot them down in flames, and to update this document. So Email me at nicholas@aquarionics.com, and lets see how far this goes...
Kewl
Klind's Excessivly Wonderful Links.
Developed from the orginal Klind's Portal system (My first ever PHP project was an attempt to put my old boxed portal system into a NeatoCool(tm) Database structure. Most of the code for that still survives in the current system, mainly in the table building system for the portal and the Cool Archives.
When I was designing the new Aquarionics Back end, it seemed sensible to put the two systems together to make a large links database, so if I put something in the Cool system that I visit regually from then on, I can press a button in the Admin control panel (Which says, in fact, "Portalize") and it is now on my home page portal. *Then* I needed something similer for the Webcomics that I read, and so I extended the system to cater for them, which meant making a page that generates a frame-set, with the comics list displayed to the left, and the current comic displayed in the main window.
To Do
- Seperate the Comics, so they don't appear in the "All links" section
- Release source.
- Comment code nicely.
- Clean up validity checking code.
Kewl Changelog 13/09/01 * Reformatted "Cool Things" box 15/09/01 + Added ability to add links that arn't "Cool" by default 19/09/01 + Added "Suggest Link" functionality * Modified the Portalboxen function not to display a row of empty boxes at the end sometimes. + Add notification of new suggestions, links to Klide's message system. * Made the Framed section be able to not display certian categories * Made list.php sort entries. 1/3/02 * Er, I'd better put the redesign here, really. Redesigned system to use Stylesheets.
Klide
Klide links in diary entries.Klide is the Diary subsystem of the Klind engine. It will also link in related nodes, but doesn't yet. It's a replacement for the Blogger system I used to use in Aquarionics 2, without some of the nicer features, like not having to read from the SQL Database every time. It now has working archives, Yay me :-)
Klide Changelog 11/09/01 + Added "Showentry" function, for display (and linking to) of single entries. * Rewrote archive system from scratch to display entries by month, and also display list of archives. + Designed "Lozange" feature at the bottom of each post, for ease of linking and editing.
AntiJavascript
gilmae mentioned this in a comment, and I give examples of why I'm stripping things from comments in comments, It Doesn't Work. So here it is, The Problem With HTML.
First, some more basic problems. Aquarionics, being Neat, Cool, and generally Compliant, uses CSS for layout. It consists of various sections, set out in the code as <div> (DIVision) tags. This, for example, is in #content, which is slightly overlapping #header which contains the sweeping-curve logo. To the right is #cool containing Neatothings from the rest of the site. If I allowed all HTML in comments, someone could put in a few <div> tags and completely ruin the layout and readability of the site. Bad.
The same problem applies for Table-based designs with </td> tags. Those can really ruin someone's day. So, HTML Bad.
PHP has a nice function called striptags(), which strips all HTML tags from a post except the ones you specify. "So don't specify <script>" is the wise call, but it's not that easy, because Javascript can be inside any normal tag. For example, I could have something in italics like this:
<em onMouseOver="window.alert('Hah! You Lose!')">Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare you</em>
Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare youWhich isn't exactly the end of the world, but it could be worse. I mean, it *could* be...
<em onMouseOver="document.location='http://www.goat.cx'">Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare you</em>
Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare youOr worse...
<em onLoad="document.location='http://www.goat.cx'">Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare you</em>
(No, I'm not putting that code in :-)
And those codes will not get stripped out. The latest version of striptags() cuts out all "alert" type Javascript, but doesn't recognise the more simple kind that changes an innocent variable. Like the document.location. So no HTML.
Those who spoke on this:
beaneater:
You do know that www.goat.cx isn’t the site to which you mean to refer, right?
Digit:
What’s the payout when I roll over your:
"Go on. Touch me. I dare you, I double-dare you. I double plus infinity dare you"
and nothing happens?
Some of us use smart browsers ;-)
My Computers
Old Computers
These no longer exist, or have been upgraded out of existance
Delirium/Delight
Religon: Duel Booting Win98SE/Slackware 8 Processor: Duron 750 Memory: 256mb Drives: 1x4gb: [ / | /var ] 20gb: [ Boink, 2gb (C:) | Oiff, 18gb (D:) ] 40gb [ Squeak (E:) ] sacrifice:/home/na (via Samba) [ (h:) ] Other: Scanner, SBLive, Geforce2, Rio600, Zip100 USB, 17" Monitor, SMC nic, DVD drive
My main work box, mostly lives in Windows (Where it's known as Delirium), but occasionally booted to Slackware (With a hostname of Delight). Usually runs Debian Unstable, but I'm trying out new OS's. Mostly used for games, code, and IRC.
Sacrifice
Religon: Debian Woody Processor: Celeron 333 Memory: 97mb Drives: 1x6gb [ / (4gb) | /var (2gb) ] 1x19gb [ /home (19gb) ] Other: nic, 14" Monitor
The server, runs irc proxy; mail, news, samba, and web server, and more. It also works as the central file store for my network. Also used to be a firewall and web proxy until I got..
Pyratic
Religon: IP Cop Processor: Pentium 133 Memory: 97mb Drives: 1x6gb [ / (4gb) | /var (2gb) ] 1x19gb [ /home (19gb) ] Other: nic, 14" Monitor
It's a firewall running IP Cop and doing DHCP duties. Nothing terribly special.
Those who spoke on this:
Aquarius:
You’re just so pleased with yourself for calling a dual-boot box Delirium/Delight, aren’t you? ;-)
I was quite impressed with that, myself :)
Aquarion:
Me? Impressed with my own cleverness? You must be thinking of someone else…
Amazon Links
A tutorial, or guide, to Amazon Item Links, and making them usable.
An amazon link is made up of four parts, server, path, asin and session.
http://www.amazon.co.uk/exec/obidos/ASIN/B000050ABX/202-0443038-0326228
\--------------------/ \--------------/ \--------/ \-----------------/
Site Name Script Code # Session Ref.
See below for an update, it gets shorter
The first part, or Server, is the physical server to use when referring to the object, it can be any one of amazon.co.uk .com, .co.jp, .co.dk, .co.ca or whatever they have opened today. It is required.
The second part, or path, is almost always /exec/obidos/, and is mandatory.
The third part is the Amazon System Identification Number, or ASIN, consisting of that phrase, plus a string identifying the item.
The fourth and final part is everything after the asin number, and is known as the Session, identifying your personal access of the database system. It is not any kind of security risk to add this to links, because should you access this session from a new IP - or after a length of time - it becomes invalid, but is not necessary for people to get to your item. For example, the optimal link to the above is: http://www.amazon.co.uk/exec/obidos/ASIN/0385602642/
Furthermore, it should be noted that if you place the id of an Amazon Affiliate in place of the session, then a percentage of your purchase will go towards that affiliate. (It's one of the few ways Aquarionics comes close to paying for it's bandwidth).
For example, for that link to donate a percentage (ranging from 5 to 15%) to the Buy Aquarion A Clié Fund, the link would be the following:
http://www.amazon.co.uk/exec/obidos/ASIN/0385602642/aquarion
Also, it is very rare for any amazon link (minus session) to be more than 72 chars, thus avoiding linewrap.
This has been a public service announcement, on behalf of makea shorta linka corp.
Sponsored by snackyspores.
2004-06-25 According to the new Amazon Hacks book, you can shorten this even further by replacing the "/exec/obidos" with "/o", so the above link becomes:
http://www.amazon.co.uk/o/ASIN/B000050ABX/202-0443038-0326228
\---------------------/ \----/ \--------/ \-----------------/
Site Name Script Code# Session Ref.
ESF
Are you also fed up with the continuing war between RSS 0.9* and 1.0 and 2.0 and whatever else they invent today?
Me too.
So today I invented the Epistula Syndication Format. ESF. It isn't XML. It isn't RDF. It's just data. Quick, reliable, and I'm never going to change the spec in such a way as to break the previous version. Ever. Promise. It's staying that way. Even Shelly could use it :-)
ESF, the Epistula Syndication Format, is a really simple format for publishing links to the last few items on any given topic, on any given website. The format is as follows:
Mime Type
ESF should be served as text/plain
Comments:
Every line starting with a "#" is a comment.
Metadata:
From the start of the file (excluding comments) begins the meta data, in the format field, tab, data. Valid fields are:
- title
- the title of the feed/site
- contact
- a contact address for the site or the feed, must be in the form "
email_address (Name)" - link
- The home page of the feed's data.
The end of the data is signified by a newline charecter.
All metadata is optional. Two newlines in sucession designate the end of the metadata, then the content begins.
Content is of the form "date(tab)title(tab)link(newline)". End of file marks the end of content, date is in Unix timestamp (seconds since the epoch) format. Clarification: Links work in the same way as browser-links do. If you define a scheme (http://) they are absolute, otherwise relative)
Example Feed:
(Example feeds can be found at http://www.aquarionics.com/meta/, all the feeds ending in .esf are ESF feeds :-))#Aquarionics Newsfeed, in Episula Syndication Feed format (ESF) #http://www.aquarionics.com/nodes/index.php?name=esf title Aquarionics contact aquarion@aquarionics.com (Aquarion) link http://www.aquarionics.com/ 1032882396 Pong http://www.aquarionics.com/index.php?id=739 1032649452 Death. http://www.aquarionics.com/index.php?id=731 1032614009 Which Blogging Tool? http://www.aquarionics.com/index.php?id=729 1032329703 Interesting Weblogs http://www.aquarionics.com/index.php?id=722 1032267337 Chocolate http://www.aquarionics.com/index.php?id=720 1032258909 Do spiders make chutney? http://www.aquarionics.com/index.php?id=719 1032199993 Memeping http://www.aquarionics.com/index.php?id=716
No readers yet exist. As they do, and I'm told about them, they will be listed here.
Update as of 2002-09-26:
Freaky responce, I have to say. Part of which is Jonathon Delacour creating an icon for it for it. See http://weblog.delacour.net/archives/000712.html
More updates: Now is there a Perl ESF Module. MT still doesn't support it, though :)
2004-01-21
And it goes on. Kevin released the Epoch mod for Movable Type which allows MT users to make proper ESF feeds, the reader R3R is designed with ESF in mind (And does what my own RSS reader does not, and supports it. This is kind of strange, but never mind)
Those who spoke on this:
Morten Frederiksen:
How should tab characters in titles be encoded/escaped?
mados:
There is no need to escape tab characters because only the first tab character have a special meaning. The format is “field, tab, data” where data could be anything except for newline characters. To talk in PHP: list($field, $data) = explode(”t”, $line, 2);
amy:
EPS Parser Module for Perl
,
EPS test. I suck at Perl, but hey, it’s something :)
sungo:
> More updates: Now is there a Perl ESF Module. MT still doesn’t support it, though :)
would you like it to?
David Russell:
I’ll install a plugin to make my blog support it, the more feeds the merrier!
Maker:
Where I can buy book about ESF for low price?
Quick Windows Tips #1, Quicklaunch
One of the most useful features in any version of windows greater than 95 is the Quicklaunch button, which sits (by default) next to the start menu. To enable it - if you don't already have it - right click on the task bar, go to Toolbars, and click Quicklaunch. Do the same to disable it.
Why is it useful? It gives you instant access to four (or more if you extend the size) programs instantly, and then to more by a click of the double-chevron. If you put directories in the folder where Quicklaunch constructs it's data, you can create a secondary (and quicker) start menu, as below:
The easiest way to edit this menu is using windows explorer. Quicklaunch is created from a directory, under Windows 98/98SE/Me, this is "C:\Windows\Quick Launch", Whereas under 2000/XP it's in "C:\Documents and Settings\$USER\Application Data\Microsoft\Internet Explorer\Quick Launch" (Where $USER is your username) It makes your most used applications far easier to access, and if you really want to, you can drag it to the left or right side of the window for a permanent Shortcut Bar, ala MSOffice 97.
Killer Games
I am a gamer.
That is, I spend much of my spare time (as much - if not more - as I spend Writing, Coding and reading) playing computer games. At the moment, I am playing Unreal 2003, Medieval: Total War, Warcraft III and Age of Mythology. Over Christmas I will probably go back to Battlefield 1942 and cycle back in GTA3. I understand the jokes in Penny Arcade, I am a FilePlanet subscriber, I even work at a company that develops mobile games.
So, Ladies and Gentlemen, I am 21 years old, and I am a gamer.
That doesn't just mean computer games, of course. I've been a DM (Always was a better GM than player, it's the world creation stuff I adore), I play Fluxx often, and have an obsession with playing cards which is scary. I know most of the rules of the Game We Cannot Name, and have spent hours locked in a fierce game of Mornington Crescent. Games - whether they be computer, card, role-play or meta - are what I do, and I really should let more of that into this site. Lets start now.
The worst thing to hit gaming for as long as I've been doing it is probably the Columbine thing, when two social outcast kids walked into their school wearing trenchcoats and carrying automatic weapons and opened fire on fellow students and also teachers. The parents sued the people who made the games they played, blamed the Internet for hypnotising them, blamed the videos they watched for forcing them into violence and generally decided it was the media's fault for making these evil things.
I disagree.
The shooters were members of a close-knit group of "loners" known as the "trenchcoat mafia
(BBC News, April 99). Close-knit loners, oh? Neat. They were part of a typical gang of teenagers who hated the society that worshipped the people who were popular. The people who worship the most become the most worshipped. I could point out that I know what they mean, but point me at someone who doesn't and I'll show you someone who was on the inside of it. This is all, however, beside the point. The claim wasn't that they weren't insane, the point was that media had driven them to violence.
This I actually agree with, there is a certain mindset that will see violence on TV, or on Monitor, and think Oooh, cool! Can I do that?
, but equally there are people who don't follow that branch line. I can spend several hours a day shooting the shit out of people with huge guns in UT, or in tanks in Battlefield, or firing rotting corpses at buildings in Warcraft (Warcraft isn't that graphic about it, for those of you going "Eww", but that's what the undead catapults do) without feeling the need to construct a rail-gun out of paper-maché and LEDs and kill my family with it, nor do I want to buy a tank and flatten Cambridge, Nor do I feel the need to make the undead rise and do my bidding. Likewise, playing AD&D didn't make me dress up in a robe and memorise books in my sleep (Though I did take up archery); Fluxx doesn't make me want to collect the Sun and the Moon; and GTA hasn't taught me how to club a policeman, steal his gun and car, and ride off into the sunset with a police helicopter on my tail. There is a line between games and reality. Games like Assassins ("Killer") and paintball may blur it, but it's still there, and trying to reenact Doom II with a semi-automatic you stole from your parents is quite a bit on the wrong side of it.
So how do we stop the people with a distorted sense of reality from being inspired by this blatant filth, whilst letting those with a functioning reality switch get filthy? I suppose there is some kind of mileage in some sort of system whereby the creators of media entertainment put some kind of recommendation on the box for who should be able to buy or rent this item. If we really wanted to go into pipe-dream mode we could imagine some kind of governing body that assigns these rating things, and were people who sold them could make sure that the more explicit material wasn't rented to anyone who couldn't see it!
Oh, Hang about!
Yes, the system exists, it just doesn't work. Games have ratings. Most games in the UK at least have the ELSPA rating, at least. Videos have ratings, even the bloody internet has ratings, but parents have to try to enforce them. Everyone has to enforce them, otherwise they don't work. And thats where we are at the moment. Also, ratings are quite a bit more lax than they used to be. Battlefield 1942, a game where your job is to run around shooting people and thats it is rated 15+, so the kids mentioned above would have got it no problem. The only real way around it is for parents to vet everything there kids do, even if it's round a friend's house, or for compulsary morality tests to happen. Censoring media isn't currently terribly effective, mostly because it surrounds us and buries us. You can no more avoid the media than you can the water, short of finding a mountian to hide up. And you'd be terribly bored.
So, whats the alterntive? Well, the UKs answer to it (after Dunblane) was to ban guns. Gun licence laws got stricter. The US doesn't have that kind of thing, because owning a gun is a much more traditional thing to them, and they see it as being a Divine Right. I disagree, but then I'm British. My solution would be for licences of guns to be licenced, heavily, probably by the NRA. People with traceablity don't kill people.
Of course, it isn't society blaming the games completely unjustly. There can be little justification for the moral enrichement that Dead or Alive Xtreme Beach Volleyball or XXX BMX Racing provide, nor really for Grand Theft Auto other than that it's fun.
And that's supposed to be what playing games is all about.
Debuging Methods
This is the second approach to problem-solving when developing. The approaches are standard to all developers and run thus: When you're stuck on a piece of code, the first thing to try is to rename all your variables and all your dialog boxes using the filthiest words you can dream up. For some reason if the aim of your code was to pop up a dialog box or message, the minute you re-label that dialog box "yo mamma's flappin' box", the sodding thing will come up without fail. [More]
This is Really True. And the reason why my weblog contain(ed - I deleted it this morning) a variable called "$stupidFuckingCacheDisplayDamnYou"
Link thanks to Ruthi
Those who spoke on this:
Dorothea Salo:
wipes tears out of eyes
I am seriously going to have to try this. I can’t believe I never have.
dearg:
Bit late, I know, but I just spotted this.
Having problems with Network Neighbourhood in Win ME, in a file called nethood.htt.
One of the functions in there is called ‘IveGotThemNetworkingBlues’.
Seems M$ have heard of this kind of debugging method, then :)
pat:
I’m not very computer literate but I’m having the same problems! Could you give me any more info?
More Debugging
Lack of stuff happening, so another quote from the HackVan files:
Well, I just spent several hours tracking something down that I think is SO braindead that it must be called evil. I hope this will save someone else some hassle.
There's an NT box on my desk that someone else uses every now and then. This machine is otherwise used as my programming box and backup server.
All of a sudden, my programming files were being corrupted in odd places. I thought "hmm, my copy must be corrupt". So I refreshed the files. No change. "hmm, the code depot copy must be corrupt".. Checked from other machines. No problem there.
Viewed the file from a web based change browser in Internet Explorer. Same corruption in the file. Telnet'd to the server machine and just cat'd the file to the terminal. Same problem. What's going on?
The lines that were corrupted were of the form
#define one 1 /* foo menu */ #define two 2 /* bar baz */What I always saw ON THIS MACHINE ONLY was:
#define one 1 /* foo */ # fine two 2 /* bar baz */Can you guess what was happening?
Turns out, someone had inadvertly installed this piece of garbage called CyberSitter, which purports to protect you from nasty internet content. Turns out that it does this by patching the TCP drivers and watching the data flow over EVERY TCP STREAM. Can you spot the offense word in my example? It's "NUDE". Seems that cybersitter doesn't care if there are other characters in between. So it blanks out "
nu */ #de" without blanking out the punctuation and line breaks. Very strange and stupid.It also didn't like the method name "RefreshItems" in another file, since there is obviously a swear word embedded in there. Sheesh.
It's so bad it's almost funny. Hope this brightens your day as much as it brighted mine :-).
Ross Johnson Original File
Bad hardware day II, Revenge of the mutant card
This is dedication for you. It' two thirty ay-em, and I'm writing to tell you why I'm not writing.
This is a followup to the Bad Hardware thing which - in case you didn't listen to it - dealt with my buying a Soundblaster Extigy Coollness In Hardware Form box'o'tricks. Then taking it back because it didn't like my USB port.
I replaced it with a SBLive 5.1. Now, if we put the Extigy on the "Matrix" level of cinematic coolness, the Live 5.1 is somewhere about "Pulp Fiction" level. Still cool, but doesn't look as nice, and is about a half-decade old now. Nevertheless, it works.
And so I plugged it in, reinstalled windows to lose the Extigy crap (My Windows install is on the setup-equivilant of wheels, so that I can wipe and reinstall windows with the minimum of fucking around with repairing world) Installed Win2k services packs One! Two! Three! Ahh-ah-ah</muppet>, then the critical updates, and finally the misc drivers for graphics, sound etc.
Then rebooted.
Windows had, in it's infinate wisdom, found my network card.
This was something of a suprise, since it had been using said network card to download and install the critical updates. This was also a shock because as long as I've been using Windows 2000, it's detected my network card as something that it isn't. It's never given me any trouble, however, so I let it be.
Now it was saying how it had found an SMC 1211tx and was installing the drivers. Yay, thought I, it got it right for once. I'll see if there are any newer drivers for it.
Open Mozilla.
"Cannot open http://reef.water.gkhs.net/~aquarion/, No route to host"
Umm.
"Cannot open http://www.google.com, No route to host"
Uh oh. Start SSH session...
"Unable to open a connection to reef, host does not exist."
Ping reef
C:\>ping 10.1.0.2
Pinging 10.1.0.2 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 10.1.0.5:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Oh.
Bugger.
Maelstrom, my desktop, was no longer connected to the network. it wasn't even asking for DHCP packets on startup. No amount of reinstalling windows, drivers, hardware or brains has helped. For a while this evening I was convinced it was the SBLive's fault, because it now had also stopped working, and both it and the Network card were being detected as existing without being able to find drivers.
This was eventually diagnosed as a USB jumper having fallen off. The soundcard works fine now. Everything is hippity hoppity dine and fandy.
Except I can't access the network, where all my files are, or the internet, where the rest of the world is.
So lack of entries.
Those who spoke on this:
icmp-echo:
As far as I am aware, you only have to install the last Service Pack, not all sequentially. Oh, ditch that NIC and get a cheapo Realtek 8139. They Just Work.
dearg:
Oh, network cards that worked perfectly now not working…
Been there, done that. Mine was apparently a faulty card (a RealTek 8139, as it happens), that only worked over very short network cables.
Also had this problem with a modem, which consisted of Windows having installed multiple copies of the drivers (the same version) and not being sure which to use.
Of course, none of this is probably any help to you.
Those who spoke on this:
bro:
don’t worry, be happy…
maybe reaffirm your belief in Karma, somehow…
and accept that ur computer is just a communication port for you imagination
the good will out.
Pol:
Make damn sure to RMA whatever it turned out to be.
If the company says “no refunds” then point them at the Sale of Goods Act.
Another Tomorrow
Motherboard still here.
Memory & CPU are not.
Too many orders yesterday, It'll be there tomorrow. Don't worry! We won't charge you for the next day delivery you especially paid for!!
.
In other news, Spamassassin caught my 1000th piece of spam this year (I get too much spam
Those who spoke on this:
MP:
You seem to be having my week…
Monday: Mobile phone died
Tuesday: Nothing died, at least, not that I’ve discovered yet
Wednesday: Something in PC died, seems to be motherboard, but could be CPU or memory… Motherboard on RMA to be collected Friday, considering RMAing CPU and memory…
Thursday: Orange deliver replacement phone, which is actually a replacement for old one, despite being told that they were upgrading the handset instead because it is rubbish. This one has shown signs of crashing too…
Friday: Not happened yet. Predicting job rejection letters, replacement phone to die, and motherboard collection to turn up in the 1 hour slot of day when no-one is in the house…
Fair Use
SteveD:Gary NicholassCan't see the issue.Google have archived pages that, for various reasons valid to myself and others, I have removed from websites. That is my decision, taken according to my morality, the opinions of others, or due to changing circumstances.
More to the point I own the domain names and all the content therein. What right have Google to cache and serve pages which I have deleted?I accept that anything I say on a ng will be recorded, and act accordingly.
I absolutely do not agree with Google cacheing and providing from their db something that I have written and subsequently deleted, for whatever reason, from the sites that I maintain.
I can.
My posts on usenet, and my entries and articles on Aquarionics.com come under an implied (but soon - in the case of the website - explicit) licence to be quoted or reproduced wholesale, provided both context and attribution are provided and no commercial worth is given to the post in particular. I retain copyright on the items, yet grant the world at large permission to quote and use my works, on those provisos. This is the implied statement you give whenever you post anything to usenet, (the stuff about "Commercial Worth" allows people to sell NNTP services without ownership getting in the way, without someone being able to collect all my posts - for example - and sell them as a book whilst gathering royalties. That I could get moderatly intense about) (Note: The contents of this post do not imply a legal statement, it wasn't designed as such and shouldn't be used as such. If you want a watertight legal document, ask a lawyer).
I don't really have a problem with Google caching all that, because people are free to quote it. I'd prefer them to read the original source, because it will have any corrections or removals I may have made, but I assume that if they are looking at Google's cache, this isn't possible.
On the other hand, I write short stories (and currently novel, but that's another point) which it would be nice to get published some day. A couple have already been so (Well, Fan/E-Zine published, which doesn't pay as well, but is still very nice), but one day it might be legally necessary for me to take them down from the site, and at that point I run into problems with the Google Cache, because it's now costing someone money, in that people who would buy the thing to read the stories are instead reading them on Google.
The two sides of this could be thought of as follows:,
Neal Stephenson (of Snow Crash, Zodiac and Cryptonomicon) wrote a novel
called "The Big U" (I belive it was his first, but could be wrong) which
hadn't been reprinted in years, and showed no signs of ever being so.
This being so, Neal didn't object too much when copies of this started appearing on the net. Then the sucess of Cryptonomicon (Which has a sequel 'Quicksilver' out this summer) brought The Big U back into print, so sites were asked to take it down.
On the other hand, Cory Doctorow published his first novel, 'Down and Out in the Magic Kingdom' simultaniously online (via his website, http://www.craphound.com/down/) and via Tor Books (Get it, by the way, it's very good). This he did because first authors don't tend to get a lot of publicity, and this way many people would hear of and read the book (and hopefully enjoy it) because:
- It's free from the website
- People might see discussions about this odd publishing method
- Quarter of a million people a month read his weblog at
- http://www.boingboing.net, and his the novel has been widly and positivly recieved. That's an awful lot of word of mouth.
SteveD:You put information into the public domain [1].
On purpose. Someone made a copy of that information and will show it to people who ask. If you don't want the information to go public, don't put it in the public domain in the first place. Google is not the only webcrawler in the world, nor the only archiver. I'd suggest researching the actions of the Wayback Machine and thinking about how many other people do this kind of thing as a hobby.
Beware the terminology. "In the public domain" and "readable by the public" are differant things. You can see Mickey Mouse, watch his films, but try to use him unless you work for Disney and you'll find yourself in la-lawyer land.
SteveD:If you merely don't want the reputable archivers to record your information, I suggest you look into the use of a file called ROBOTS.TXT.
Personally, I would like Google to have a seperate useragent string for the archiving as apposed to the crawling, so I can tell it to index the site for searching, but exclude certian bits from caching. When I get back online properly, I'll email them about this.
To sum up my entire post, I make this point: Just because it's on a website, doesn't mean it isn't copyrighted. If it's copyrighted, you should get permission before you use it.
Those who spoke on this:
Dorothea Salo:
Unless what you are doing is FAIR USE.
Fair use. Remember that? Oh, yeah, it’s that bit where you’re allowed to use copyrighted works in certain ways and/or for certain purposes WITHOUT BLOODY ASKING PERMISSION FIRST.
In fact, check the Chicago Manual of Style on this point and it will tell you (paraphrased) “Go for forgiveness, not permission.”
I apologize for the sarcasm, but cavalierly ignoring fair use REALLY FROSTS MY BRITCHES.
dearg:
I’d not heard of fair use before. For those too lazy to search, you can quote stuff partially while commenting on it/reviewing/referring to it, as long as you don’t quote too much and infringe the owner’s copyright and do give correct attribution.
Still, asking permission beforehand doesn’t hurt. However, I’m inclined to agree – caching things and serving them second hand, yes with an attribution, does, I feel, infringe copyright. There should be a way of telling places like google and archive.org “don’t archive this page” (or possibly better – “archive this page”), for things that are going to be removed later.
(I think it’s funny that I had to /use/ google’s cache during my research to learn about fair use…)
Aquarion:
Okay, yes, fair use is an issue. Fair use isn’t the issue with the archive, though. Google isn’t caching a certian percentage of the data, it’s grabbing all the data it wants.
I admit I didn’t remember Fair Use while I was writing the article (Not, I point out, cavalierly ignoring it) though.
Martin Wisse:
Don’t put your novels/stories up before you’ve sold them!
As you should know, Bob, publishers like to have first publication rights for anything they buy from you; when you’ve published something on your website, these are no longer available…
So, please take care in what you put up.
Marie:
Hi. Nice dialogue. I’ve given this some thought too, but have yet to do anything about it. It occurs to me that if one’s entries, once archived, are placed in a separate sub-directory, an .htaccess file could be set up for just that sub-directory whereby Google’s caching IP would be denied access. Does that make sense?
Tech
Once of my quests in life is to introduce my significant other to the delights and wonders of being a Gamer. Not in the D&D type sense, but in the Quake, Doom, Unreal, Warcraft, Tropico, Monkey Island, GTA, The Sims, Command and Conquer type sense. In this, I appear to have succeeded, because she's been playing Planescape:Torment all day.
Planescape is one of the best RPGs out there, and certainly the one with the best plot line. Baldur's Gate may be huge (And we are talking about hundreds of hours for the series here) but the plot-line does involve an awful amount of "Okay, can't rescue person who's being tortured yet, must level-up some more". Baldur's Gate 1 in particular suffers from this, the four hour gap close to the beginning between the "I don't know what I'm doing, all these things are happening to me" and the first bit of actual exposition. In Planescape there is no tedious back story, no "You grew up in a town called Candlekeep on the edge of the sword coast" lengthy monologue. You wake up, in a mortuary, with a talking skull beside you. With amnesia. It's now your job to find out who you are, and why you are in a mortuary.
You are in a mortuary because you died.
The plot thickens.
Note, it isn't the player's job to get this information out of the game, it is the game, or at least a major part of the first three-quarters say. The plot changes, too. Certain people won't join you if you follow certain principles. Nothing major, just different side quests, different PCs, the main Nameless One's quest is still there, always.
Meanwhile, I'm getting back into games mode. This week was spent brushing up on my C++ and learning the absolute basics of Windows Programming and DirectX interfaces. Now I have to take three steps backwards, and learn all the bits that my University course didn't cover, like Classes. Course, the best thing for me to be doing would be Java, since that's what I appear to be mixed up in most, but my bad experiences at Uni with the language (including a teacher who gave us code written out longhand that didn't either compile nor match up with what the course-standard-IDE thought the process calls were). Python has been put on hold whilst I go back to basic principles of Real Programming.
(I'm not a coder, I'm a scripter. The main difference involves main event loops, I belive. I learnt to code in BBC, then Q, then Visual Basic 4 & 6. None of which require any kind of constant state loop. I'm having to unlearn a lot of stuff, which is probably going to help the rest of my programming too. Yay)
I've tidied my room.
I have one room in the house in which I sleep, work and play. It hasn't been cleared up since roughly September, when I moved the stuff from the floor to the bed and back again to look for a book. In this clear-out, I found 20 CDs, 5 books, £2.50, four pens, a 2.5" -> 3.5" IDE cable, my MP3 player and a small pile of chocolate. Mmm. Chocolate.
And I apparently have a blue carpet. Who'd have thought it?
Also today, I've connected Nemo (my black & white 486 laptop) to a keyboard, monitor and null-modem cable in the hopes of getting the stuff that's on the HDD (notably including the sections of the novel I wrote during the Great Computer Crash) onto reef (the network server) by setting up a ppp over null-modem connection though maelstrom (my desktop) which runs Windows 2000 and - as of tomorrow - Debian unstable. Before that I'll have to repartition my data-drive. I hate doing this, luckily all my data is on Reef.
So, a techie day, really. Must do creative things tomorrow, when I get my new glasses, yay!
Invalidate
My RSS feed isn't valid because I used the entity "×" in my last entry. So I rewrote the code to de-entity all RSS output, but the × symbol isn't valid in XML either. So, World, How do I include the symbol in my entry without breaking the RSS output?
- 2003-03-02 15:05:51
- By
- From The Geekhouse, Cambridge
- More Journal Entries
- Filed under Computing & Intertwingularity
Those who spoke on this:
A Nameless One:
Try × (0xd7 hex). If you hunt around textartisan.com a bit, you’ll find isoquery.py, which you are welcome to grab onto and use for your own nefarious purposes.
Dorothea Salo:
Damn it. Escaping problems. The decimal value for times is 215.
Ian Hickson:
Either use UTF-8 and include the entity directly, or use UNICODE and escape it as an entity, either hex (&#x….;) or decimal (&#......;).
Aquarion:
Thanks both :)
I think I’ll stick to textile for input in future, it makes life so much easier…
Stuart Langridge:
You could also attach a namespace that does include the entity you want, but I don’t know if the RSS validator is clever enough to know about that (nor do I know whether every other RSS implementation in the world is clever enough, either).
Email problems
I'm having problems with my email at the moment, due to DNS issues and stuff. If you need to contact me, use "aquarion@suespammers.org.
Dayze
And then, with a startling burst of energy to put the power of several suns to shame, nothing happened.
Oh, I got screwed by my bank, double-charged for a couple of things, and then was charged for the priviledge of being charged for them. This could recurse indefiniatly.
Much of the blogging world appears to be caught up in the fact we have probably passed the increasingly blurred line that’s labeled “War Begins Here”. Today is a sad day for peaceniks everywhere, for the government of this country at least have proved that it doesn’t matter what the people think, we don’t run this country after all.
“The grand plan that is Aquarion proceeds apace”, as Frank Miller failed to say in ‘Ronin’, and wasn’t relentlessly sigged by Stuart (TAFKA Aquarius). We move out of this house in less than two weeks (Two weeks exactly yesterday) and we now at least know which town we are moving to, or at least within twenty miles of. Reading here we come…
Apart from that, empty worlds. I’m working – slowly but surely – on the geekstuff.co.uk reviews system, the worlds nicest PIM (Which is slowly moving away from being internally XML-RPC based, though should aways have that functionality. Maybe I should look at REST-style things, or go back to my original C&R(Call & Response) ascii-based server idea. First, however, I must build some kind of interface to the database so I can remember to not forget weddings and such. The paid project I hinted at earlier I shouldn’t have done, for now the waveform has collapsed. The cat is dead. Possible employment is an experiement in superposition. It’s either going to happen and you’ll be employed, or it isn’t and you won’t, the wave-form collapses when you get a phone call or email. However, in deviation from Schrodinger’s cruelty to felines, you can effect this equasion by mentioning it to people under this law: “As more people know of your possible future employment, the probability that you will not gain said employment approaches one” (Aquarion’s first law of employment. There may be others). This particular project was so unbelivably close to actuallity that the only possible way the employer could get out of it would be to – say – Go to Mexico for a month on short notice before he has a chance to write and send me the specs of the project. For example. But, like the
Aquarion:
Foo:
sdsgsdg