Older blog entries for jmg (starting at number 73)

Boy, that was an entertaining procedure. I recently upgraded my BIOS on an old K6/225 (FIC PA-2007), but after the upgrade, the machine would just sit there and beep at me. So I did some research trying to find free flash EEPROM burners or something else that I could use to flash a new bios. Then it dawned on me. I have other FICA motherboards, so why don't I boot up another machine, pull that BIOS chip, put in the broken one and flash that one. Yeh, it was a crazy idea, esspecially considering that I don't have another PA-2007 motherboard. So I booted up my PA-2005, pulled the old bios, and put in the broken bios for the PA-2007. Now the flash program was complaining that I'm flashing it with an old bios. So, I decided to upgrade to the latest release code for the BIOS (1.13CD13 instead of 1.09CD12) and then the flash program took that, and flashed the bios. Put the new bios in the other motherboard, and walla! The machine boots now!

I'm glad that's over now. So, if you need to flash a new bios, just use another machihne if you have too. Though who knows what could of happened to the machine.

I'm finally in the last stages in the battle against Strep throat. Damn, that was hard. I haven't felt this bad in a long time. Massive stuffed sinuses, swollen throat making it hard to swallow. Because of the stuffed head, I had to breath through the mouth which isn't fun, but I managed. One I started taking the meds Sunday at 7pm, It wasn't till thursday that I really started feeling better, and today, as long as I stay on Ibuprofen and Sudafed I'm pretty damn close to 100%, breathing through my nose, being able to swallow whatever, etc. Ahh, nothing to drive you crazy than like being locked away with yourself for company for a week. Sure I did make it on on Sunday to see the doctors. Monday did some back grocery shopping. Relased you hadn't done to well and had to go back again both on Thursday and Friday. Of course at least I claim I wasn't thinking clearly as I was sick. Heheh.

zarq:
Check out Richard Steven's APUE (Advanced Programming in the Unix Environment) which contains documentation on this pretty deciently. He has it written in a generic enough matter that you it covers all the major platforms and stuff. If you're doing Unix programming, you must have a copy of this book.

I'm having a problem of mucas being discharged down my throat w/o realizing it. Made me want to over load the discharge method and raise an event to notify me to blow my nose. :)

That's right, I was going to grab some food before I headed off back to bed! :)

Well, just got back from the Hospital. It's offical, I have Strep throat. Good thing I caught it now and before it advanced to rhematic fever which just wouldn't be anymore fun. So, starting on the antibotics, and of course not going to work tomorrow. Should still be contagious for the next 24 hours. Gotta hole up at home, and maybe watch a few more movies while I'm here, assuming I have the strength. Hey and maybe even read more of my physics text book! :)

Better go get some food and take the first of the antibotics.

P.S. I did write a more expansive diary entery a few hours ago, but this one will supercede it in the recient diary entires list.

I finished reading Ray Bradbury's Fahrenheit 451 (ISBN: 0345342968) on Thursday I believe it was. Definately interesting. I had started this book shortly before Christmas, but I had misplaced it. So that's why I read it so quickly. That and it's a short book. It's funny, in the afterword (or coda) he says: "Only six weeks ago, I discovered that, over the years, some cubby-hole editors at Ballantine Books, fearful of contaminating the young, had, bit by bit, censored some 75 separate sections from the novel." Funny that a novel about sensorship was sensored itself. Was thinking I wasn't going to be able to include the MARC record, but here you go:

001 4768383
003 CU-UC
005 20010211081127.3
008 870928c19871953nyu            00 0 eng d
020    $a 0345342968
035    $9 4768383
040    $a VVX $c VVX $d CLU
100 1  $a Bradbury, Ray, $d 1920-
245 10 $a Fahrenheit 451 : $b Fahrenheit 451 -- the temperature at which bookpap
er catches fire, and burns ... / $c Ray Bradbury.
260    $a New York : $b Ballantine Books, $c 1987, c1953.
300    $a 179 p. ; $c 18 cm.
500    $a "A Del Rey book."
500    $a With an Author's afterword.
546    $a English

The past two days have not been fun. I've come down with something and finally made an appointment for today to have it looked at. Haven't been able to get any sleep the past two nights as my nose is so runny that I can't find a decient possition to sleep in. It was so bad Saturday morning that I was thinking of going to the Emergancy room, but found that some IBprofin reduced the swelling in the back of my throat making it more managable. Sometimes it's nice being sick, but when you can't sleep, being sick just sucks.

Oh, does anyone have a flashrom burning in the bay area? I reciently tried to upgrade my FIC PA-2007 motherboard with a beta bios, and now the machine doesn't even like a ISA VGA card it in. You turn it one, and it just beeps at you. :( Need to burn the old BIOS back into the chip. (or test with another bios that is not beta).

alisdair and ajv:
In the day-n-age of dynamic web content, why pregenerate them? I wrote a cgi script a while back that will generate thumbnails (and downsized versions) of my images when requested. I of course store the resulting image in a database so I don't have to regenerate them every time. Plus it autogenerates indexes for the images too. ls *.jpg > somename.indx and I have an index. As for that, why not use jpeg + pnmutils? djpeg | pnmscale -xysize 175 175 | cjpeg -optimize? That's what Unix was designed for, putting commands together to build a bigger project.

Hmmm, realized that I'm really hungry right now. Off to find some food.

RyanMuldoon:
I agree filesystem versioning is nice, but take a look at VMS, it had this. There are a lot of cavets with this, like the fact that you have to delete old versions to free up disk space, etc. and how many times have you saved a file just because of habit? If it was an optional on, then it might be useful. Though with NetApp snapshots and snapshots supported under SoftUpdates, you aren't to far from supporting file system versioning.

A friend of mine mentioned that you might want to check out BeOS for filesystem metadata. Sounds like you can have "virtual folders" that contain queries of the meta-data. So you can have a folder of all of your mp3's or other such things. I haven't ever used BeOS myself, but probably something to checkout.

Last night I finished another book ISBN 0062585274. The MARC record:

005 19950629160347.0
035    $a (FCLAZ)AJC5084FS00003/01/199506/29/199523409Bpam a D0FS
008 940314s1994    cau           000 1 eng
010    $a    94011765
020    $a 0062585274 : $c $13.00 ($18.00 Can.)
035    $a (Source)ONIFS193-     7
035    $a (OCoLC)30075186
040    $a DLC $c DLC
049    $a FDAA ksp
050 00 $a PS3552.E7942 $b R56 1994
082 00 $a 813/.54 $2 20
100 1  $a Besher, Alexander.
245 10 $a Rim : $b a novel of virtual reality / $c Alexander Besher.
260    $a ÑSan Franciscoã : $b HarperCollins West, $c c1994.
300    $a x, 357 p. ; $c 18 cm.
650  0 $a Imaginary wars and battles $x Fiction.
650  0 $a Virtual reality $x Fiction.
655  7 $a Science fiction.
655  7 $a War stories.

Hmmm, that's interesting. They consider it a "War stories." book. There wasn't any true battles in this book, it would be more of a spy novel than anything. Oh well. This book is really a bit confusing and ends very abruptly. You get to like 20 pages left in the book and feel there should be at least another 75 or so, but he ends up finishing the book like he was on a dead line or something. Heck, the book ended so quickly that I couldn't even really tell you how it ended (except the good guys won of course). I will be going back to read the end of it sometime.

RyanMuldoon:
You might want to take a look at the extend attributes work that is ongoing in <project>FreeBSD</project>. I'm not the best person to contact about it, but rwatson will know most about this (at least I'm pretty sure it's rwatson). They plan on using extended attributes to store info like ACL's, plus possibly mime-type info. Shouldn't be hard to extend that to HTTP headers to be sent along with file too. No more anoying .meta files.

Well, my Python dbwrap project I started a few days ago is coming along nicely. I have it pretty functional. It wraps a DB-API 2.0 compliant driver into a dictionary like structure. So, it might look like: b[(pgdb, ':operations']['users'][('uid', 'jmg')]['registered'] = 'now' which will then set the column registered to now (assuming DateTime field where uid = 'jmg' in the table users. This makes it a bit easier to use a DB in your app instead of having to constantly write your own select/update/insert queries. I probably should reduce the number of times I do select queries, but I want to make sure I don't skip anything.

I am thinking about making the getdict function return a immutable dictionary (raise an error on __setitem__) so you don't assume that when you set this dictionary you can set it. Now that I think about it, why do I even need to support the getdict function? :) Wish I could release a binary only copy (yeh, I know about py[co] files) so people can't see how bad the code looks. I've also only tested with with pgdb (PyGreSQL) which interfaces to PostgreSQL v6.5. I might have issues with other db apis. I also don't test which parameter passing the API supports, but that's because the parameter passing the pgdb supports is kinda broken (or maybe it's because it's more designed for Python v2.0).

Oh well, enough for now. How anoying, there isn't a project tag.

Religion: Well, I'm not an atheist, but atheists should have an issue with Advogato. There is no way to say someone doesn't exist. The default certification of an observer means that they exist, therefore everyone on Advogato believes that God and Satan exist because everyone at least has them certified as observer. Oh well. :)

mwh:
Thanks for the email, but there definately needs to be more expansion of the docs on PyTypeObject declarations. Also, listobject.c doesn't show where/how/when PyList_New gets called. Right now I'm assuming that I create a module with a routine that does the instantiation of the type, which would make sense, but as you have found out, the docs in this area (at least the offical docs) are non-existant. Glad that you are going to work on the docs, and if you'd like a newbie to review them, send 'em my way! :)

Still need to decide what I want to use to develope a dynamic web site I want to create. Debating if I want to go with fly (which I happen to know the people who developed it, and I hold the mime-type for them), or create my own in python. Probably should go and see about installing Postgres (oh, that's right, I already have it installed, just not doing anything with it) and playing around with it. fly should be really fast as it was written in lex/yacc/C. The fun of db work.

mwh:
From my experiences, there is nothing more anoying than a bug report that says something is broken (when it's obvious, esspecially documentation) w/o any help. When the documentation is in as much disarray as Defining New Object Types there really isn't that much I can do about it. Either a bug report should already be there, or the group that is working on the documentation should already know about it. It has improved, but still, isn't usable unless you already know what's going on. As for reading the source code, that's what I do. But there always a point when the need/want to do a project isn't great enough to go through reading all the source code looking for good examples of what you want to do.

Also, if PyClass_* is internal, why is it publicly defined? And if it's private, then how are you suppose to create an object to pass back for maintaining a connection such as the state for a Z39.50 connection w/o using a class? Defining a new type seems a bit extreme, and defining a whole module wouldn't work as you don't instanciate that for each connection. So how else am I suppose to do that w/o using PyClass_*? Again, it really sounds like I should just do a blind wrapper around the functions and do all the glue code in Python. It'll be easier, and don't have to worry about as many coding bugs.

As for bitching to Advogato, don't forget that this is a diary entry. It's what happens to be on my mind when I'm writing the diary, and be frustrating for me.

29 Jan 2001 (updated 29 Jan 2001 at 07:04 UTC) »

Well, just started to try and write a Z39.50 Python module and forgot how poor some of Python's documentation is. It completely doesn't document any of the PyClass calls, and the documentation for 2.0 is exactly the same in parts. Guess no one felt it worth the time to spend even five minutes improving the Python/C API documentation. Now I remeber why it's easier to write most of the code in Python, and only keep a small C kernel as an interface to the calls, instead of wasting your time making the module perform deciently.

Now, do I spend the time to make this module or not?

Well, I finally finished reading Dante Alighieri's Inferno (ISBN: 0691018960) today. Personally I preferred Larry Niven/Jerry Pournelle's (ISBN: 0671670557) version of it. It pretty much contains all that is in Dante's version without destroying it too much, and of course it's a tad bit easier to read. Though I would like to be able to read the original Italian text, but I don't think I'll be learning Italian anytime soon to do it.

Started reading Rim by Alexander Besher (ISBN: 0062585274) and so for it looks like a good book. It's kinda hard to understand exactly if you're in a virtual world or the real one. They also throw out strange terms that you have no way of knowing what exactly they are. Hope that it gets explained soon, but so for I'm less than impressed.

Guess I should head off to the local bar and grab a beer. It really does feel about that time.

Bloody hell, repeate after me, read the recent diary entries before posting your entry.

voltron:
Do they happen to web cast their station? Sounds not to different from KWVA which is University of Oregon's college radio station.

AlanShutko:
Yeh, I was thinking that it wouldn't be too hard to partse the web page that they have at LOC and if I had to imput them, that's what I'd do. Now I haven't taken a look at the DTD's that are suppose to be now used for XML version of MARC and I would think that they have most of that defined in the DTD's, but I'm not that familar with XML really.

technik: Check out PicoBSD based on FreeBSD. I know that they have done various work on making a small system bootable. Not sure if they've relaxed the requirements now that you have do large images on CD's, but I do remeber them talking about doing something similar.

Hmmm, am I the only one that is noticing that Advogato has gotten really slow all of a sudden? Both from home and work it takes a good 30 seconds to bring up a page, oh well.

mwh:
Thanks for the hint, I didn't know that there was a performance difference. Guess I'll have to switch to has_key then. I've been thinking of getting trying out Python 2 one of these days, but just haven't gotten around to installing it. As for the try/except or has_key, that is the problem with languages today. Even the high level languages today need you to do special stuff to tweek out the last inch of performance. (Of course, if you're after performance why the hell are you using a high level language? :) )

AlanShutko:
I was thinking about printing out that information too, but after I read how many different fields and subfields there are, I decided I'd leave that to the end application. Really all I'd be doing would be writting a fancy name mapping program and I'd rather not do that. As for my MARC converter, I also have it being able to write out python MARC records that you read in. Just need to handle the data in the leader a bit more cleanly (like actually storing it) and it'll be somewhat useful. Now to update the books read page on my home page to use this instead of the crappy scripts I'm using now which fetch data from Borders.

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