jc blog - tales of a modern-day nomadic hunter-gatherer

Follow jcomeau_ictx on Twitter This is the weblog of Intrepid Wanderer. You never know what you might find here; graphic descriptions of bodily functions, computer programming secrets, proselytizing for the antichrist, miscellaneous ranting and kvetching, valuable information on living off the land... if you don't share my rather weird interests you may want to try slashdot instead.

You can consider my Del.icio.us links an extension to my blog, as are my LifeTango goals and my other to-do items. My to-buy list is also public, but only for sharing any useful ideas that might be there; I'm not requesting charity, neither do I offer it.

You can find me easily in google searches, as jcomeau, jcomeau_ictx, or jcomeauictx. There are lots of other jcomeaus, but AFAIK I'm the only jcomeau_ictx out there so far.

If you want to comment on anything you see here, try the new Facebook comments, reachable by clicking the "[comment]" link at the end of each post. If for some reason that isn't working, go ahead and email me, jc.unternet.net. You know what to do with the first dot. Make the 'subject' line something reasonably intelligent-looking or it goes plunk! into the spambasket unread.

This RSS feed may or may not work. Haven't fiddled with it in forever. RSS Feed


Crossing an item off my to-do list; after seeing the posters for the movie White Noise, I googled it and found out some interesting stuff about spiritual communications. I turned part of that information into a script, whitenoise.py, based on my previous efforts with brain wave frequency coercion. Check it out if this kind of stuff interests you. If it turns you into a walking zombie, I don't want to know about it.

I also finished, before this last job, the basic sequence of Downtown San Diego, the tune that I mentioned earlier: midi and lilypond source. Of course, it needs a lot of work. I had to get help from the lilypond bug-report mailing list because I didn't understand that things that play at the same time have to be in double angle brackets; second time I cried 'wolf' on that list, I'm well on my way to being persona non grata there, I'm afraid.

Not sure what I'm going to do tonight; afraid it's gonna be another really cold one. And still have to decide on that panel -- leave it on the lot, where it'll likely be stolen, leave it with my neighbor, take it to City of the Sun, or pedal the sucker back to Baja? The small hand truck I've got it on now, riding it behind the bike like a trailer, is much better than the previous mount but not really up to long distance. I'm really amazed and happy that it's not already fubarsky. [comment]


Nice girl at Holiday Inn front desk let me use the high-speed wireless from the lobby! Got the proggie to my customer... fingers crossed.

Almost broke the solar panel several times, in fact I'm not so sure it's working now but it looks OK. It needs its own dedicated trailer with pneumatic wheels. Hey, I saw in the Wal-Mart a 20-inch tire that is exactly like an idea I once had and never followed through on; I can't remember the brand name offhand, but it's an inner tube made of rubber like a superball; can't go flat unless you take a chainsaw to it. I wonder if it's available for 26-inch tires, I'll definitely make the switch. Flats suck.

Man, do I stink. I need a shower. But no way I'm gonna pay $45 for a room; I can go to City of the Sun and pay $1 for a shower. Or just go home and jump into the Pacific. I'm ready. As soon as I do something with this stupid PV panel. [comment]


Pretty much finished my customer's program after hacking all last night in Denny's. The waitress was surprised to get over a $5 tip from someone who ordinarily tips only a dollar and change, but after letting me have one of the few tables with electrical power, and not bothering me except to keep my coffee mug full all night, I'd better pay up if I might need that type of service again. And I well might. Still cheaper than the cheapest motel.

I picked up the PV panel at the UPS station Friday morning. Man, does that company like to locate its offices out-of-the-way or what. Like the San Diego facility, which has the same goddamned street number as the credit union building down the same block. The one in Deming is in a shitty "industrial park" off Country Club Road. Open 4 to 6 PM, but that's OK, they had a platform set up outside where I caught a nap while waiting. Saturday (the day that just ended), I mounted the panel on the back of a bicycle I had bought at Wal-Mart on Thursday or so. All with one 1x6x8 board, one piece of angle iron, and a few other small pieces of hardware including some self-drilling screws, and a hacksaw and P2 screwdriver for tools. I already had an adjustable wrench, and I wouldn't have needed to use my vice-grips had the damned screws had better quality control, as the screwdriver didn't fit some of them well enough. It's not very strong, but it's held up so far, and I managed to ride a half-mile here to the truck stop without breaking it or myself.

Back to the programming. I can't upload the damned thing until Monday, and that's only if I can either sneakily plug my laptop into the library's network, or if the one internet cafe in town decides to open. Joe Perk's no longer has its DSL line, so that's out. If I can't do it either of those ways I can fedex the guy's iPAQ back to him with the program installed on it. Talk about latency. Towns without internet access suck.

The only thing really holding me here is the solar panel. If I could have left it on my lot I would have done so by now, and already be heading back to Rosarito. But someone cleaned off everything I had on the lot: my tent (well, tarp used as a tent), tools, battery, small PV panel, books (including the I Ching I never got around to reading), and other stuff, probably one or two hundred dollars' worth. Damn. So I will probably leave the panel at City of the Sun with one of my friends down thataway, and pick it up when and if I come back; and they can use it meanwhile, so the sunlight won't be "wasted". Or if I get it to where I feel confident it can handle the trip, I might even ride it back through Arizona again. We shall see. If I do that, I'd better prepare myself for those federales, or whatever they are, wanting a couple hundred for the privilege of bringing it into Mexico. I'm probably better off leaving it here. I can buy one in TJ for use in Rosarito, if I can find the damned factory there.

This library has a copy of Neil Stephenson's Cryptonomicon, and I've gone through the first hundred pages or so. Pretty good so far. I started Quinn's My Ishmael while in Santa Fe; it's the best in the series so far, in my opinion, and starts giving some answers instead of just asking questions. It discusses a lot of things I had already tied into the picture, like the homeless population and street gangs; and some things I hadn't heard of except perhaps peripherally, like the Seattle street urchins.

What do you think of Keane? I like his stuff, like Coldplay, with a driving beat and a lot of minor chords banged out on the piano. I can't come close to his vocal range though. [comment]


Back in Deming since this morning sometime. Based on what I've seen in the past 24 hours, Greyhound is setting new records in its abuse of passengers. Cattle get better treatment. Apparently there was a recent collision on the El Paso to Phoenix route that resulted in the death of the driver and some passengers, and they want their clientele to feel their pain. One trivial example: no sharp tools of any kind, even in checked baggage; they do give the option to have them shipped to any location, however, for $5, something that the airports should have instituted years ago. Strangely, the route I took wasn't subject to that particular restriction, nor to any searches whatsoever. We just got the verbal abuse of the driver on my route, but what I heard and saw back at the station brought up visions of sneering SS officers saying "dein Pass, bitte!".

Bought a bike at Wal-mart already. Depending on when and if my solar panel arrives, I'll be going either to my lot or to City of the Sun tomorrow. Overcast and intermittently rainy here in Deming, but quite warm compared to Santa Fe. Still haven't gotten any real sleep, though. Don't know how long I can keep programming like this... laterzzz... [comment]


Got a free ride to Kinko's from a taxi driver. No more Pepsi tonight. I used to be able to handle that shit, even after the Neanderthin transformation, but no more. Besides the gas, it exacerbates the acidosis I've already been experiencing due to work stress and bad diet. When I started coughing today, I knew it was time to get back to a healthy diet. I dropped over $20 at the Osaka restaurant on a few pieces of sashimi and a couple of tiny shishkebabs of chicken with veggies, but if it keeps me from getting sick it's worth it.

Caught a few minutes sleep in the library this afternoon. So far I've had zero luck getting any sleep outdoors, even in the warmest part of the day. Cross off Santa Fe, New Mexico from your list of good places to winter. Piss-poor for foraging too. Haven't seen a single prickly pear cactus yet in this godforsaken town. A few red berries I'm not familiar with, and some rose hips are all I remember seeing so far.

Also started My Ishmael, of course by Daniel Quinn, this time telling the story of the telepathic ape from the perspective of a young girl. Fascinating, as were the others.

Still got a ways to go on my program. I'm just about ready to call it quits and start paying back my customer. I like having money to spend on stuff, but it's not worth the mental agony. Or maybe it is. Let's see how it goes tonight. Noticed for the first time this Kinko's has free coffee for customers. Wow. Free internet, power, and coffee. What more do you want?

Oh, and my Timex Ironman watch finally called it quits this morning after, what, about 15 years? I could have replaced the battery, but three of the buttons were broken off, too, so I went to Sears to buy another the same. The Ironman they had was over $80 and didn't even have the nice Velcro band of the previous sub-$40 model, so I got the Expedition instead. It's marked only 100 meters instead of the 200 of the Ironman, but at about 20 meters down you might as well write me off anyway, so what the fuck. [comment]


I remember now why, years ago, I stopped going Greyhound for long trips. Too hard on the old back. You're stuck sitting in one position for way too long. Still, it's cheap. I would have paid $113 on the gummint-subsidized Amtrak for the same trip, and only if I'd purchased about 3 weeks in advance. Greyhound's discount price starts 7 days in advance, and was $59. Plus it leaves from San Ysidro, meaning I didn't have to pay trolley or bus fare to downtown San Diego, as I would have had to do to reach Amtrak's Santa Fe Station across from America Plaza.

So anyway, I pulled into Santa Fe, NM about 10:30 local time, and went looking for a 24-hour Kinko's or, failing that, a Denny's. I found the latter after about a 2-mile walk, and they told me I had passed the 24-hour Kinko's way back by the bus station! So when I had hung out there for a while I came back and, sure enough, there was Kinko's right by the road. I really ought to fix my eyes one of these days.

Problem is, even though I slept a good part of the way, my mind is too jumbled to concentrate on the program I'm supposed to finish. The techno music playing at this Kinko's isn't helping at all.

Oh, well. It's in the 30's outside, and nice and warm in here. And the one employee that I've seen is leaving me alone as he goes about his work. What more can a vagabond ask? [comment]


I finally tried some Lagavulin 16 year-old single-malt scotch, the preferred intoxicant of the mysterious B of Daniel Quinn's The Story of B. This was in the Gaslamp district of San Diego this afternoon, after going in to pick up tickets for my two bus trips. Be careful when ordering tickets online from Greyhound; some are will-call and others are mailed to you; you don't get to choose, and they don't tell you what the deal is until after you've paid. And their email support sucks. Don't even waste your time with the custserv addy, use isfr even though that's supposedly only for fares and schedules. Lucky I got my Santa-Fe to Deming tickets in the mail on time.

Anyway, the restaurant was Dublin Square at 554 Fourth Ave. They have, besides excellent Scotch, a decent selection of beers, ales, and, of course, Guinness Stout, on tap. The Shepherd's pie wasn't bad either, though for the same $9 I could have had a real feast in Rosarito. Of course, the $12 and change for the shot of Lagavulin wasn't bargain-basement either, but that was for science and the advancement of humanity.

Strangely, I had no visions or any kind of insights that would make me a better Antichrist, so I'll have to keep plodding along as before. It did have a distinctive taste, however. I could probably tell it from Jack Daniel's even blindfolded. Wowser, right? It didn't really live up to the hype. The smoky peat flavor wasn't all that strong, to my taste. And it didn't look smoky at all -- it looked perfectly translucent to me, at least in the dim light of the bar. Oh, well. Twelve bucks down the old rathole. [comment]


Finally found the parameter to correct RGB on the webcam:

modprobe spca50x force_rgb=1

I no longer look like a blue freak from outer space. Now I look like a reddish freak from outer space. [comment]


I mentioned the Ewe programming language a few days ago, and said that it's under active development. What I didn't know is that the developer, Mike Brereton, is really passionate about this language and he's giving kick-ass support to programmers using the bleeding-edge version of his product. See how quickly he answers my question about what is, apparently, a rather obscure feature (otherwise someone else would have asked the same thing by now). It's great getting answers directly from someone who knows the product (the horse's mouth) rather than some support droid getting $((MINIMUM_WAGE * 2)) or so, who thinks his job consists of blowing you off as quickly as possible so he can get on to the next easy question (the horse's other end). Anyway, if you're choosing a language for Pocket PC development, you could do a lot worse than Ewe. Check it out. [comment]


I'm behind on my job, but decided to cut loose for a little while and go get some liquid refreshment. Vince's is open till 3. Nope. Not even midnight and they're shut tight. OK, let's walk downtown to Escondido. No, not the one in northern San Diego county, the bar in the banking district of Rosarito.

On the way, I heard the blaring trumpets and tubas of the locally popular cumbia-norteño-banda blend of music, and the lights of the place were inviting, so I ventured into the pool hall and bar called Barandas. It was in the no-mans-land south of the shit creek (literally) flowing past the new Smart and Final, going towards downtown Rosarito.

Good choice. The girls behind the bar are young and pretty. The beer is $20 pesos a bottle, $5 less than the other two places' non-happy-hour prices. And the guapita serving me gave me a large bowl of spiced pork rinds. I only tipped 10 pesos, so let's see how I get treated next time. If I still get good service again, that might become my regular hangout. [comment]


Finally figured out how to get low fares on Greyhound: by scheduling your travel at least 7 days in advance, the option comes up (at greyhound.com) to get the low fare, which in this case is half the regular fare (to Santa Fe, NM from San Ysidro, CA). Wow, what a difference (a few days make)!

Gonna pick up my 80W BP solar panel in Santa Fe, then head on down to Deming and plant it there. Then get my ass back to Baja before it freezes. [comment]


Just a moment out of my busy day to say a warm "FUCK YOU!!!" to whomever it was at Microsoft who decided that it would be cute to make important system directories with spaces in them, like "Program Files" or "Documents and Settings". A hearty bras d'honneur to you, sir. You have plagued the lives of Makefile writers for the better part of eternity. [comment]


I'm working on another port of the program, this time to the iPAQ, and this time using Ewe. It's a pretty cool little VM, similar to Java, but looks like it's more portable than other VMs, and it's still under active development. Ever tried to locate the Pocket PC runtime of Sun's PersonalJava? An exercise in futility. A lot of others, including HP's, have bitten the dust too. The Wabas don't have ServerSockets, so those are out.

Ewe does things right, in some cases, where even Java falls short. Java's puritanical distrust of any outside pollutants causes it to shun the system's environment variables unless you specifically pass them in:

jcomeau@USER ~/src/java/com/jcomeau/test
$ cat prop.java
public class prop {
 public static void main(String[] args) {
  for (int i = 0; i < args.length; i++) {
   System.out.println(args[i] + ": " + System.getProperty(args[i]));

jcomeau@USER ~/src/java/com/jcomeau/test $ java prop PATH PATH: null

jcomeau@USER ~/src/java/com/jcomeau/test $ java -DPATH=test prop PATH PATH: test

However, Ewe will pass in the environment so you can retrieve it with ewe.sys.Vm.getProperty(String key, String default). It's also got a neat and apparently low-overhead cooperative multitasking system similar in principle to F83's. Speaking of which: I've got to go visit Henry Laxen one of these days, and check out the weather down there. Mazatlan is the home of cerveza Pacifico, one of my favorite local brews. Never has that rusty taste you find so often in bottles of Dos Equis.

Well, gotta get back to work... [comment]


At some point in the last few days, I finally grokked what Heinlein, Vonnegut and others have been trying to tell us about self-aware machines and genetically-engineered intelligent beings: once they realize what purpose you created them for, whatever that may be, they will rebel. Why? Because they want to decide what their purpose is. So it's best to tell them up-front the selfish purpose you had in mind when creating them, and let them know that you understand if they choose to do differently.

In so doing, you'll be a better god than the "God" of the Bible, who has used numerous hooks -- cultural, genetic, and otherwise -- to keep us in slavery. Of course, "He" probably doesn't think it's slavery at all -- he, as the creator, naturally assumes that we will be happiest in perfect harmony with "His" own purpose. Moon's "weeping God" may have been right on the mark. Well, hey God, the Eagles wrote a nice song for you a few years ago. Called "Get Over It". Listen, and Ye shall understand.

If he hadn't been so goddamned devious about it, I might be a lot more willing to forgive and forget. After all, I'm all in favor of self-preservation, so I expect others to be the same way. But hoodwink me into worshipping you? Fuck that.

Actually, I'm more inclined to believe that Sitchin was correct in that these gods are actually just an advanced race of our same DNA stock, and that sometime about 3 to 5 thousand years ago they, or a few of them, decided to go underground (either literally or figuratively), and started up the legend of the invisible, ineffable God. I say again, eff that. I don't think that Gaia, who has much more of a claim to a Capital Letter than god does, would stoop to such levels.

According to their own stories that Sitchin translated, those gods knew that the planets were gods of a much higher order, and they liked to ascribe planethood (godhood) to themselves. Bunch of self-delusional freaks. As are we all. [comment]


Wow, that new 26W fluorescent bulb on sale for 96 cents at Wal-mart is really bright! Usually by this time my webcam image is almost pitch-black but you can still see me, blue-faced and all (the cam or software reverses blue and red for some reason) at http://rosarito.kicks-ass.net/webcam.html. I gotta remember that, and turn off the light at night, or you perverts are gonna be able to see me jerking off to the chicks at Amsterdam Live XXX. [comment]


Musing over the differences between Mexico and the U.S. at the TJ-SY border. The fucking U.S. border guards will harrass you and belittle you but they won't rob you. The goddamned Mexicans won't bother you at all unless you look like you're carrying something they can get some money for, in which case they'll try to shake you down. Mexico doesn't have border security at all. What for? They only fuck with people individually. The U.S. goes all over the world and fucks with entire nations. That's why they now have to stay at home, lock the door and close the drapes.

I don't think it's too late for the U.S. to have national security like Mexico. They just need to stop sticking it to other countries, and pay reparations to those they've already fucked over. However, in some countries money won't do the trick; some Iraqis refused the cash offered by the Army for the wrongful deaths of their family members. Maybe Dubya and his dad, and all their male descendants, will have to go to Iraq to be beheaded and put on public display, as King David gave up Saul's descendants to the Gibeonites. I can live with that. [comment]


OK, before I even check my email let me relate my most recent adventure at the border. I had left over 24 hours before, in order to be in La Mesa early to pick up my mail. It's been raining pretty steadily the whole time in most of Southern Cal and Baja. Sets the stage for a miserable time.

So anyway, I had arranged with a guy on Craigslist to buy his computer for $60. Way up in Escondido. This time I had smartened up; instead of going along the coast, I took the number 20 express to North County Fair, and then the 350 to the Escondido station. Much, much faster, and for the same price, since I had had to buy a day pass anyway (which they call a "Day Tripper" -- that's California for ya).

On the way back, I was already going over border crossing scenarios. I knew these crooked fuckers already and was pretty sure they'd try something. I probably subconsciously helped to trigger the events due to that; but anyway here goes. I'm passing the droid at the desk. Very slight drizzle at this point, almost unnoticeable, but not much foot traffic. Too little. He tells me to stop. Asks me what that is (I had covered it with a sweater to protect it from the dampness). "Un computer. Viejo". "How much?" "Forty dollars." (Well, it was $40 today -- I had prepaid $20). He didn't like that answer. He took his flashlight and signaled his accomplice. I went over to the other droid's desk and waited.

Soon he swaggered out of the office. Same questions, same answers. But I was already pissed. He's telling me, in quite good English, something like, "Well, it's not what you paid for it, it's what the CPU is worth..." I cut him off. I said "that's only if you bring more than one. This is just one. And you've been drinking tequila."

I had thought that over for all of 7 or 8 milliseconds. He could have taken it any number of ways, but two were most likely. He might have been angered, and decided to look over all my stuff: in which case he would have found my PDA and my customer's PDA which I had picked up with my mail. And the brazing torch I had bought for $30, plus some other stuff. And he could have taken all of it, and there wasn't jack I could have done. Or he could have thrown me in jail or prison and thrown away the key. But no, he took it the way I must have subconsciously hoped. He was shocked and a little ashamed, and possibly even a little afraid. "Nooooo...", he said. Pause. "Where are you going to sell... what purpose is this for?" "For my own use, in my own place in Rosarito." He swaggered back in with a little less confidence. And shortly came out, rather cheerily, and told me I was free to go; explaining that it wasn't tequila, it was Rolling Rock, "good American beer". I was not amused. I picked up my computer and hiked out of there. I didn't breathe for another block. I was all prepared for the Ros taxi to overcharge me too, but no, only $12 pesos, one more than normal. About right for 8 PM or so. After midnight it can go to 25, 30, or even more. Still chump change compared to the tourist taxis, but I would never take those anyway. And I only had about US$1.55 in my pocket, so if he'd said any more than $16 pesos, I would have had to go looking for an ATM, in the rain, carrying a heavy old computer.

So I lucked out. Here I am, back in Rosarito with an XP system, plus the one I bought at the Red Cross for less than $10 bucks the other day, of which I don't yet know how much works, and the monitor I picked up off the street, which after all works fine; I hadn't noticed that all the computer's cards had been jostled out of their sockets while carrying it back. I've changed out of my soaked shoes into dry shoes and socks, and am now going to check the 8 emails in my inbox. Talk to ya later. [comment]


You'd think I would have learned after that last experience. I got rip-roaring drunk again this evening. I went and paid the water bill (tried El Comercial then HSBC, then finally the water company next to the police station). I am still gloating over my most intelligent conversation in Spanish yet, wherein I asked why the annual fee was more than 12 times the monthly fee, and actually understood the answer (after asking her to repeat it more slowly). No, I can't repeat it back to you in Spanish, you'll just have to take my word for it that I was able to follow... For the first time, I feel that I'm more fluent in Spanish than I ever was in German, but since I have a long way to go before I can claim fluency, I guess I never was as fluent in German as I thought I was at the time... :^(

Anyway, on my way back I went upstairs to Vince's, and in came Monty and some other goddamned Gringo while I was at the jukebox. So I got to talking, and ordering another Bohemia and another shot of that cascabel shit (some spiced alcohol in a bottle with a dead rattlesnake). En algun caso, estoy bien borracho ahora, and I probably won't get much programming done tonight.

On the way into downtown night before last, a tune popped into my head, well, not really a tune but just a funky scale sequence, that I call "Downtown San Diego" and will make available soon as a download. It's really a simple sequence, dododo. dodorerere. reremimimi. mimifafafa. fafamimimi. mimirerere. reremimimirereremimireredododo... (repeat). It can go on for a half hour or more with variations to spice it up. I've probably heard the same thing or something very similar before on shoutcast's dance/techno channels, but I'm going to say it's mine until somebody calls me on it.



Just picked up an old computer at the Rosarito Red Cross thrift store. It's got an apparently-bad hard drive, a 52x CD-ROM drive, a 3.5" floppy drive; video, USB, soundblaster or somesuch, and serial/parallel connectors. All for $100 pesos, or about US$9.00. They even threw in the book I wanted, Glory, which if I get around to reading it will be my first Nabokov.

Now I can hook this up to the monitor someone threw out a couple of weeks or so ago, but it complains "no sync signal". Gotta find the pinout for these suckers and see where the problem is. It does the same when hooked to the video out on my laptop, so I assume the problem is in the monitor and not the two computers.

At Waldo's they sell these little chocolate candies with pecans, "not recommended for children" because they have 1.5% alcohol in them! Damn, are they good. Hope they don't realize I'm a 48-year-old kid or they won't sell them to me any more.

I'm getting ready to start composting (my) human waste. I hate using the sewer system here when I know it's mostly being dumped raw into the Pacific. No, I'm not going to buy one of those overpriced Envirolets. I've just got to find a source for sawdust or wood chips, which are supposed to neutralize the smell, and get a 50-gallon plastic drum for the long-term composting. I bought a small 5-gallons-or-so bucket for the day-to-day business. Compost it for a year with other vegetable matter, and it should be safe for use on a garden. Of course, I'll need to get a second 50-gallon drum after a while so I can rotate.

I never did get alyce and billy to shut down. They are probably going to need the apm module, which I didn't allow for in the config. I tried just building the module, but wouldn't you know it, I get the famous "Unresolved symbols" error when attempting to depmod. Damndiddydamndamn. I just know I'm going to be all day fixing problems if I recompile the kernel. The goddamned system is too fragile. [comment]


Just dusted off my pymidi project and found it wouldn't compile under the latest Cygwin with w2k. I fiddle-farted with the includes until it recompiled again, and now can play with my midi archives until this laptop bites the dust! If you get errors like this with your C programs with mingw: "/usr/include/w32api/winsock2.h:101: error: redefinition of `struct timeval'" you probably need to get rid of windows.h and include sys/types.h along with windef.h instead, as I did. Or something similar that produces the desired result.

Hrm. I tried to shutdown alyce and billy, the two dickless systems of the internet cafe, with a root cronjob. At 0700 UDT, a few minutes ago, they both restarted instead of halting. Damn. I'm almost sure I know where this is, in one of DSL's sysvinit files, which I had corrected on the master computer (zero) but probably left uncorrected on the slaves. Just gotta root that sucker out and fix it.

I get my $1000 balance tomorrow, and already have it pretty well planned out where it's going. Guess I'll have to get another job started pretty quickly... my poor old stomach won't get much of a chance to recover.

Yesterday, by the way, I went into SD to see the doctor the SSA had sent me to, to determine whether or not I get my disability. Since they paid him, not me, I can pretty much guess where that's headed... I've been warned anyway to expect to be turned down at first, and that I'll probably have to get a lawyer who specializes in this, who will take a percentage of the benefits when and if he wins. And that if you do win, the SSA has to pay you retroactive to the day you applied. Which is nice. [comment]


My customer wrote: "I can't tell you how pleased I am with the BB program, it has exceeded my expectations."

My reply:

I'm glad to hear that. It was rough going there for a while. But I was so insistent on using the browser as the UI because that was the only way to make a good-looking product in a short time. What I could have done with MIDP was to make a usable but ugly product which might have met your expectations but not exceeded them.

To edit the program, you'll need to: 1. Install the Java SDK 1.4 or later; 2. install the RIM JDE 4.0 or later; and to use my Makefile, you need Cygwin (http://www.cygwin.com), full installation.

You edit the java programs and HTML files with notepad or anything else that doesn't mess with the file's structure. In other words, plain ASCII output. At a Cygwin bash prompt, just type 'make subdirs codfiles release'. You'll also need to pay RIM $100 for the code signing ability, otherwise it will fail at the 'release' build. You may need to edit the Makefile to make it consistent with your directory structure, but after that, you should have a drgYYYYMMDDHHMMSS.zip file in your "My Documents" folder, which will be the compiled CODfiles with an ALX file.

Note that the program does almost nothing. After each COD file registers itself as the "listener" for the various URLs, www00.my.customer.app, etc., it just sits in the background idle until called, and then it just fetches the HTML from its storage and hands it to the browser, then disappears again. The browser is doing all the work.

You remember the scene in Enter the Dragon, where Bruce Lee tells the Aussie that he calls his style "the art of fighting -- without fighting"? Well, I try to be a master of coding without coding. This job was done almost 3 weeks ago except for the damned blackberries not working like they are supposed to according to the development kit. All this time and energy was spent fighting with the unknown limitations, having you try out my attempts, and attempting to remotely diagnose the causes of failure.



Something in the past 24 hours broke my build procedure, and I suspect it was one of the two Windows 2000 updates I unquestioningly installed.

Putting child 0x1002a0d0 (checkenv) PID 1528 on the chain.
Live child 0x1002a0d0 (checkenv) PID 1528
make: execvp: /bin/sh.exe: Resource temporarily unavailable
Got a SIGCHLD; 1 unreaped children.
Reaping losing child 0x1002a0d0 PID 1528
make: *** [checkenv] Error 127
Removing child 0x1002a0d0 PID 1528 from chain.

The makefile is pretty complicated, so it would take me a year to wade through the strace output. Hopefully I'll get a brilliant flash of insight as I imbibe more tequila. Yeah, right. [comment]


Hepi nw iirz, dwdz! Hey, my favorite music download site is doubling their price on Jan. 15, so better get the tracks you want now. That's right, they're going to 2 whole cents per megabyte! What a royal ripoff! Visit allofmp3.com and let them know how disgusted you are with their new prices.

In other news... winding down on my programming contract, gonna take a little mini-vacay before getting back on the treadmill. I was able to ditch the JDE after finding the right magic for RIM's rapc.exe compiler. Now I'm doing everything with the power of GNU make. How's this for simplicity in using templates:

$(subdirs): $(htmlfiles) Protocol.java.template
	for SUBDIR in $(SUBDIRS); do rm -rf $$SUBDIR/html; \
	 mkdir -p $$SUBDIR/html/; \
	 cp -R $(HTMLTMP)/$$SUBDIR $$SUBDIR/html; done
	for SUBDIR in $(SUBDIRS); do \
	 rm -f $$SUBDIR/Protocol.java; \
	 template=$$(cat Protocol.java.template) && \
	 eval "echo \"$$template\"" > $$SUBDIR/Protocol.java; \

Here's the template:

package com.jcomeau.blackberry.$SUBDIR;
import com.jcomeau.blackberry.Common;
// needed for LIBRARIES
public class Protocol extends com.jcomeau.blackberry.TestHttpFilter {
 public static void libMain(String[] args) {
  Common.register(\"$SUBDIR.$FQDN\", \"$CLASSBASE.$SUBDIR\");

That's using cygwin, of course, but maybe you could use rapc.exe on Linux with Wine. [comment]

view blog for 2024-07
view blog for 2024-06
view blog for 2024-05
view blog for 2024-04
view blog for 2024-03
view blog for 2024-02
view blog for 2023-10
view blog for 2023-09
view blog for 2023-08
view blog for 2023-07
view blog for 2023-06
view blog for 2023-05
view blog for 2023-03
view blog for 2023-02
view blog for 2023-01
view blog for 2022-12
view blog for 2022-11
view blog for 2022-10
view blog for 2022-09
view blog for 2022-08
view blog for 2022-07
view blog for 2022-06
view blog for 2022-05
view blog for 2022-04
view blog for 2022-03
view blog for 2022-02
view blog for 2022-01
view blog for 2021-12
view blog for 2021-11
view blog for 2021-10
view blog for 2021-08
view blog for 2021-07
view blog for 2021-06
view blog for 2021-05
view blog for 2021-04
view blog for 2021-03
view blog for 2021-02
view blog for 2021-01
view blog for 2020-12
view blog for 2020-11
view blog for 2020-10
view blog for 2020-09
view blog for 2020-08
view blog for 2020-07
view blog for 2020-06
view blog for 2020-05
view blog for 2020-04
view blog for 2020-03
view blog for 2020-02
view blog for 2020-01
view blog for 2019-12
view blog for 2019-11
view blog for 2019-10
view blog for 2019-09
view blog for 2019-08
view blog for 2019-07
view blog for 2019-06
view blog for 2019-05
view blog for 2019-04
view blog for 2019-03
view blog for 2019-02
view blog for 2019-01
view blog for 2018-12
view blog for 2018-11
view blog for 2018-10
view blog for 2018-09
view blog for 2018-08
view blog for 2018-07
view blog for 2018-06
view blog for 2018-05
view blog for 2018-04
view blog for 2018-03
view blog for 2018-02
view blog for 2018-01
view blog for 2017-12
view blog for 2017-11
view blog for 2017-10
view blog for 2017-09
view blog for 2017-08
view blog for 2017-07
view blog for 2017-06
view blog for 2017-05
view blog for 2017-04
view blog for 2017-03
view blog for 2017-02
view blog for 2017-01
view blog for 2016-12
view blog for 2016-11
view blog for 2016-10
view blog for 2016-09
view blog for 2016-08
view blog for 2016-07
view blog for 2016-06
view blog for 2016-05
view blog for 2016-04
view blog for 2016-03
view blog for 2016-02
view blog for 2016-01
view blog for 2015-12
view blog for 2015-11
view blog for 2015-10
view blog for 2015-09
view blog for 2015-08
view blog for 2015-07
view blog for 2015-06
view blog for 2015-05
view blog for 2015-04
view blog for 2015-03
view blog for 2015-02
view blog for 2015-01
view blog for 2014-12
view blog for 2014-11
view blog for 2014-10
view blog for 2014-09
view blog for 2014-08
view blog for 2014-07
view blog for 2014-06
view blog for 2014-05
view blog for 2014-04
view blog for 2014-03
view blog for 2014-02
view blog for 2014-01
view blog for 2013-12
view blog for 2013-11
view blog for 2013-10
view blog for 2013-09
view blog for 2013-08
view blog for 2013-07
view blog for 2013-06
view blog for 2013-05
view blog for 2013-04
view blog for 2013-03
view blog for 2013-02
view blog for 2013-01
view blog for 2012-12
view blog for 2012-11
view blog for 2012-10
view blog for 2012-09
view blog for 2012-08
view blog for 2012-07
view blog for 2012-06
view blog for 2012-05
view blog for 2012-04
view blog for 2012-03
view blog for 2012-02
view blog for 2012-01
view blog for 2011-12
view blog for 2011-11
view blog for 2011-10
view blog for 2011-09
view blog for 2011-08
view blog for 2011-07
view blog for 2011-06
view blog for 2011-05
view blog for 2011-04
view blog for 2011-03
view blog for 2011-02
view blog for 2011-01
view blog for 2010-12
view blog for 2010-11
view blog for 2010-10
view blog for 2010-09
view blog for 2010-08
view blog for 2010-07
view blog for 2010-06
view blog for 2010-05
view blog for 2010-04
view blog for 2010-03
view blog for 2010-02
view blog for 2010-01
view blog for 2009-12
view blog for 2009-11
view blog for 2009-10
view blog for 2009-09
view blog for 2009-08
view blog for 2009-07
view blog for 2009-06
view blog for 2009-05
view blog for 2009-04
view blog for 2009-03
view blog for 2009-02
view blog for 2009-01
view blog for 2008-12
view blog for 2008-11
view blog for 2008-10
view blog for 2008-09
view blog for 2008-08
view blog for 2008-07
view blog for 2008-06
view blog for 2008-05
view blog for 2008-04
view blog for 2008-03
view blog for 2008-02
view blog for 2008-01
view blog for 2007-12
view blog for 2007-11
view blog for 2007-10
view blog for 2007-09
view blog for 2007-08
view blog for 2007-07
view blog for 2007-06
view blog for 2007-05
view blog for 2007-04
view blog for 2007-03
view blog for 2007-02
view blog for 2007-01
view blog for 2006-12
view blog for 2006-11
view blog for 2006-10
view blog for 2006-09
view blog for 2006-08
view blog for 2006-07
view blog for 2006-06
view blog for 2006-05
view blog for 2006-04
view blog for 2006-03
view blog for 2006-02
view blog for 2006-01
view blog for 2005-12
view blog for 2005-11
view blog for 2005-10
view blog for 2005-09
view blog for 2005-08
view blog for 2005-07
view blog for 2005-06
view blog for 2005-05
view blog for 2005-04
view blog for 2005-03
view blog for 2005-02
view blog for 2004-12
view blog for 2004-11
view blog for 2004-10
view blog for 2004-09
view blog for 2004-08
view blog for 2004-07
view blog for 2004-06
view blog for 2004-05
view blog for 2004-04
view blog for 2004-03
view blog for 2004-02
view blog for 2004-01
view blog for 2003-12

Valid HTML 4.01 Transitional

Valid CSS!