jcv is currently certified at Journeyer level.

Name: Chris Vaughan
Member since: 2001-12-04 22:56:46
Last Login: N/A

FOAF RDF Share This

Homepage: www.grump.org


I contribute here and there to various projects when something bugs me or I really want to scratch an itch, but usually it's small bug fixes and such.


Recent blog entries by jcv

Syndication: RSS 2.0
27 Jun 2002 (updated 27 Jun 2002 at 16:24 UTC) »

Three of the newest features in Java 1.4 were all things we had to invent back when I was building/architecting the last product I did.

  1. java.util.logging - A robust logging facility.

    We built our own early in the project, but what I can build in a day really isn't as "feature rich" as one that comes as part of a standard API. Although, I'm thinking ours is probably easier to use.

  2. getStackTrace() - Direct access to the stack.

    As part of our logging, we wanted to "automagically" have the logger know the class and method that invoked it, to be able to print it out in the logs. People are forgetful, not to mention lazy, and asking programmers to have to remember to put in the class and method name in every log call seemed painful. So, we rolled our own.

    Manually parsing the output of printStackTrace() isn't hard, but the problem comes when you switch JRE's. Sun's stack trace is different from IBM's, for example.

  3. Assertions

    Well, to be truthful, we never did find a good way to implement assertions in our code, which would have been perfect for testing preconditions and postconditions. lindsey and I felt that writing to a "contract" was important. Methods should have defined results, and no undocumented side-effects. The best way I know of to acheive this is through the use of assertions when entering and leaving a method. Of course, that theory encourages the use of single exit points in methods, which I generally think is a good idea anyway.

    The way we worked around it was through liberal use of a unit testing framework. Of course, you really need both, but we survived.

18 Jun 2002 (updated 18 Jun 2002 at 20:33 UTC) »

Ayan, cmiller and I decided to each write a pong game one day. Ayan wrote his in xlib. Chad wrote his in python. I wrote mine in Java.

It's incomplete, but you can see the ball bouncing and move the paddle around and make it bounce. If you want to play with it, I've put it up:


It was a fun afternoon exercise. I may eventually finish it.

12 Jun 2002 (updated 12 Jun 2002 at 18:54 UTC) »

I've been battling with Debian Sparc on a 2 processor Sparc20 for a while now. It's real flaky and the networking locks up fairly regularly. I've got an idea it's something to do with the SMP support since it acted ok (I think) before I switched to the SMP kernel.

This is the machine that was hosting grump.org so if you've visited there lately you've just as likely gotten a connection refused as anything else. It also acts as primary MX for 2 other domains and secondary MX for a few others, so I couldn't simply let it be. I've migrated everything to a spare Intel box we had at the office, and I'll take the Sparc completely off the internet while I figure out what's wrong with it.

Ugh. I hate bugs.


bytesplit: The letter to Bill Gates was a joke. In fact, the technical details in it are positively ludicrous. I did actually mail it though. I'll post if I get a response.

cmiller: Where have you been? The office is too dadburn quiet with you out.


Photo.net is rapidly becoming "graphic-design.net". Most of the highly rated photos are not photos at all, but are over-photoshopped monstrosities that are just sorta barely related to something that once looked like a photo.


7 Jun 2002 (updated 7 Jun 2002 at 21:09 UTC) »

We had a bit of excitement this afternoon. I was walking back from Sojourners with my sister and niece who came to eat lunch with me, and there were police cars all around the bank next door to my office. They had a 22 year old boy thrown up against the hood of one of the police cars, and there were people standing all around. Then a car shot out of the parking lot around the police cars, and some of them gave chase.

It turns out the 22 year old boy was wanted for killing his mother last night. He apparently strangled her and sliced her throat when she refused to give him money to buy drugs. A customer at the bank who used to be his neighbor recognized him, and told the teller to call the police.

He was trying to cash one of his dead mother's stolen checks.

His friends saw him getting arrested and took off in his mother's stolen car. I talked a bit with the neighbor who recognized him; she was standing in the doorway to my building and was distraught, saying to herself over and over, "He didn't have to kill her... he didn't have to kill her...".

I came up with a new product idea.

19 older entries...


jcv certified others as follows:

  • jcv certified jcv as Apprentice
  • jcv certified cmiller as Journeyer
  • jcv certified ayan as Journeyer
  • jcv certified lindsey as Journeyer
  • jcv certified gary as Journeyer

Others have certified jcv as follows:

  • jcv certified jcv as Apprentice
  • cmiller certified jcv as Journeyer
  • mrcsparker certified jcv as Apprentice
  • lindsey certified jcv as Journeyer
  • fxn certified jcv as Apprentice

[ Certification disabled because you're not logged in. ]

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!

Share this page