I've setup a blog on blogs.sun.com so that I can ran\h\h\htalk about other things besides Java. Java related topics will still be posted on the weblog at java.net.
This blog will be for other topics:
More later.
Earlier this month, Paul Lamere had a blog entry about FreeTTS sightings.
I just wanted to mention that FreeTTS is on the companion CD (CCD) for the Solaris 9 Operating System (excuse me, Operating Environment).
Using Emacspeak, it's hooked up to make your Emacs editor speak. Check out:
% /opt/sfw/bin/emacspeak-freetts
Emacspeak is part of several pieces of software we provide on the CCD that help people with disabilites. Others include
Our American Science Surplus order arrived last night. I love these guys. They sell some of the most interesting, reasonably priced stuff that it has ever been my pleasure to buy.
From craft supplies, to toys for kids and grownups. From kits to tools. You name it they probably have sold it at some time.
This last order included some candle making supplies, a DIY Kaleidoscope kit, a wasp catcher for the garden and a bag of wooden parts.
The last one is always fun because you never know exactly what you are going to get and craft-wise it leads to some interesting creations.
Ooh, my first rant since starting this blog. Goodo!
Maybe it's only me who's getting bent out of shape about this, but I'm getting really frustrated by the formatting in some email replies I see.
There are those where the replier will include or forward the whole of the previous message and just add a single new sentence of their own, at the top or at the bottom. When additional comments keep getting added at the top, you actually have to start at the bottom of the message in order for it to make any sense.
Even more annoying are those that add their one line reply in the middle of the included message and you have to hunt to find what's new. This gets even more difficult if this is the 5th reply. I've recently swapped over to using the Mail app on my iBook, and that uses different colors for different levels of reply text which really helps allieviate this problem but still.
Then there are those that do what I call a nice job. They don't feel the need to include the whole of all the previous messages in this thread. They include just the minimum to make their reply understandable and then give their comments, nicely formatted, adding blank lines where appropriate to make it easily readable.
So if they can do it, whazzup with the rest of these people?
I've thought about it and I think it comes down to one of the following. Feel free to add additional reasons if you reply to this. I'm sure there must be other reasons.
Is there anything reasonable we can do to improve things here, or should I just suck it up?
Recently at work, I started doing backups by simply using a spare disk (because they are so cheap nowadays) rather than use some kind of removable media. This reminded me of something I did a long time ago.
Back in 1985, when I worked for the Sun distributor in Australia, we were trying to sell Suns to a company in Adelaide. This company wanted to see the brand spanking new NFS that Sun Microsystems Inc. in the US had just invented but hadn't released. We (only being a Sun distributor) couldn't get hold of it, but we still wanted to give the potential customer a feel for what it would be like.
So I wrote a small program called abcd (automatic backup copy daemon).
It continually monitors and copies files from one filesystem to another using either cp or rcp if the files have changed. Note the nowadays, the second filesystem could be on another machine if the file system is NFS mounted.
This means that the backup disk or machine should have an identical copy of the filestore being monitored, give or take a little bit. Not exactly NFS as it's a one way thing, but good enough to demo.
After writing it, it was obvious that this was a great way of keeping two disks in sync, and therefore had the potential to be a means of backing up your work.
I released this to one of the USENET newsgroups in 1988 and it got quite popular for a while. I took out the bits and polished them off a year or so ago. It still works fine.
Note that there are lots of similar programs (like rsync) that can do this nowadays and are being actively maintained.
November 1985 (when this all originally took place) was the time of the first Australian Formula 1 Grand Prix (through the streets no less). I was staying in one of the hotels in the middle of the town, and could see (and HEAR) the race from my bedroom balcony. One of the race teams were staying at the hotel too, so it was quite an amazing time.
Like a lot of others, I wanted to go beyond the default themes and setup options that roller provides. I wanted to do it quickly as I have a few other things I need to finish today.
I wanted to have my image at the top of the log.
It wasn't obvious to me how to do this, so I hunted around a bit. I've no idea if this is the best way to do it, but it's one way.
Firstly, there is the Roller User Guide which is a great place to go if you've got the time to read it all the way through. I unfortunately didn't have that time right now. Perhaps if I did, I'd find an alternate way to do the following.
So here's how I did it.
I logged in, and clicked on Settings->Files. Using the form provided, I uploaded a small JPEG image on myself. When you click the Submit button, this image then appears in the table below the form. If you right click on the file name for this file (in Mozilla), you can then select "Copy Link Location" to get the URL of this image.
I then clicked "Pages" and the "Edit" link for the "Weblog" page. This displays the current contents of the Weblog page; the Template area showing the current HTML for that page.
You should see something like the following.
#showWebsiteTitle
#showWebsiteTitle
#showWeblogCategoryChooser()
I replaced this with:
Rich Burridge's Weblog
A dumping ground for what's on my mind right now
#showWeblogCategoryChooser()
Then I submitted the changes. Reloading my blog, showed that the changes had been applied successfully.
Now I'm not going to win any awards for web page design, but it's what I wanted.
Hopefully these notes will help others.
Over the years I've written many programs that I've made freely available on the net. Some of them have an avid following. Here's information on a few of them that I occasionally take out and polish.
![]() |
|
|---|---|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
Time for a short humo[u]r break. Check out the great signs here
Our son Duncan graduated yesterday. From kindergarten. Complete with paper hats, lots of singing, group hugs and plenty of Kleenex.
I'm still getting used to the differences between the English education I had and the way it's done over here in the U.S.
When we get the pictures developed, I'll add a couple here (yes I know, I should buy a digital camera).
So where is the switch I can set so that this will only be visible to those people in the Bay Area? Oh well.
Palo Alto Library here in sunny California will be having it's monthly library book sale tomorrow. It's expected to be a good one. Check out here for more information.
I'm a huge fan of library book sales, not only because I'm cheap (and they have great prices), but for the sheer serendipitous nature of the sale. You have no idea what bargains you might find.
If you are into books, and live around here, I highly recommend it.
Recently I was having a conversation with my brother-in-law who is the Principal at one of the schools here in Palo Alto, about what you would do differently if you could go back and do it again.
Well for me there are lots of little things, but really only two big ones:
I'm curious what things others would go back and change...
I've been blogging away for a couple weeks now, and I haven't said much about what I do (or have done). So here's a little bio.
I've been working on Sun's for 20 years now. This was originally with The Lionel Singer Group, the Sun distributor in Australia (before Sun Microsystems started up Down Under). In the early days, I actually got to work on 5 of the 9 Sun 1's that were sold into Australia (by another company even before Lionel Singer). I've still got a photocopy of the very first Sun manual. In those days I did pre- and post-sales support and consultancy.
Then Sun Microsystems started up in Oz, and I joined them in January 1987 as employee #7 in Australia. Even though Sun had been going since 1982 in the U.S and elsewhere, this was a startup in Australia. In fact I was the Melbourne office for the first 2-3 months, working from one of the spare bedrooms in my house. Then more people were hired, proper business premises located and leased and it turned into a real company.
During those days I started in pre-sales support, moved to Sydney in 1988 to post-sales support and then into consultancy.
In late 1989, I sent off an email to three managers within Sun working in the U.S. asking if they had anything I could help out on. One said no, one ignored me and the other said yes. This was helping to work on some of the desktop applications in OpenWindows DeskSet. I enjoyed it so much, I asked if it could be permanent. That was arranged and I started doing engineering work for a manager in Mountain View California, but I still lived in Sydney Australia. I was one of Sun's first remote engineers. Once or twice a year, I would come up to the States to meet various folks, and put together plans for what I'd be working on in the coming year. Some of the applications I worked on were the file mangler, the calculator, the clock and the performance meter.
This was fun, but I was finding that by mid-92, I was spending a lot of time on the phone with my file mugger HCI person. It was getting harder and harder to do this job effectively remotely. So I asked if I could move to the U.S. (Sun to pick up the tab). My management said yes. By November 1992, I arrived in California, and I've been living here ever since.
Since then, I've had a variety of engineering jobs. I've worked in the Tooltalk group. I then moved to the OpenStep for Solaris team. In January 1996 I moved to the JavaMedia group within JavaSoft (it's amazing the number of time's I've changed jobs within Sun in January or February).
Javasoft felt like a startup again. A fridge full of free soda. Lots of brain storming with lots of smart people. Fun! I became the tech. lead for Java Collaboration and was the author of the Java Shared Data Toolkit (JSDT), which was released as a Sun product on 26th August 1998, the day after my son was born (a busy week). JSDT is now an open source project on Java.net.
In 1998, I was co-author of the first version of the Java Message Service specification (JMS) with Mark Hapner. In December 1999, I left the JavaMedia group, and became the tech. lead for Netscape 6 for Solaris (basically a pre-Mozilla 1.0 port to Solaris).
Finally in August 2001, I joined the Accessibility Program Office. I've helped add a variety of software to the Solaris Companion CD to help people with disabilities. I've written a Java framework to evaluate the various Text-to-Speech products on Solaris and Linux and most recently I've been helping out with getting JDS (Java Desktop System) working on Solaris x86 for Metropolis. I also am the author of the calculator in GNOME in virtually every Linux distribution (some of this calculator code is based on work that is over 25 years old).
I've done numerous other things over the last twenty years with Sun, but those are the highlights. It's been some of the software and related things that I've done "on the side" that have given me the most pleasure, but I'll save talking about that for another blog entry or two.
On a personal front, I've been married for over eight years now and Lynea and I have a son Duncan who's almost six. We all live in a big old house in Los Altos with two cats and a ridiculous amount of wild life, though thankfully most of that is outside the house.
Today I checked back the changes to add a new JGroups reliable multicast support implementation for the Shared Data Toolkit for Java(TM) Technology
It was ridiculously easy. JSDT is so designed that each new multicast implementation needs to implement the com.sun.media.jsdt.multicast.Multicast interface which defines five methods. Here's what the new code looks like.
Since 1997, JSDT has has the ability to dynamically load the transport protocol (a special Java class) to use. I even have a patent for it.
Because of this approach, combined with great JGroups API documentation and demo examples and the willingness of the JGroups author Bela Ban to help answer a couple questions I had, this was a trivial job.
[Technorati Tag: Collaboration]
Last year I was given the opportunity to be a mentee in the SunSigma Engineering Mentoring program that started in March 2003. As I've been working for Sun for 17 years, have over 29 years of professional software programming experience and am being excellently mentored in specific areas by various people as part of my ongoing software duties, I decided to try something different.
I was inspired by the Technology and Courage paper by Ivan Sutherland.
I decided I'd like to try to increase my knowledge in an area I've just started getting interested in - electronics and hardware design. I want to combine this with fun projects, that I can share at a later date with my son as he grows up.
My aims included:
My mentor was Russ Mirov, a hardware distinguished engineer and all around great guy.
As electronics and hardware project construction were new to me, my primary goal was to try to be self sufficient in constructing new simple circuits by the end of the six month mentoring period. Follow-on work would be to try to fully understand the theory behind such circuits and then to try to gain enough knowledge to construct simple electronic circuits from scratch.
A secondary goal was to construct circuits that my son would be interested in playing with. To that end, after some initial simple radio circuits, the other projects were designed to work with his LEGO which he enjoys playing with tremendously.
I ordered the various parts needed for each project online from places like Jameco Electronics. The intention was to just develop DC circuits for this mentorship.
As part of the learning process, I did some background reading. The books I used were:
|
|
The aim of this first project was to learn some basic skills. I already had built a Technokits MW IC AM Radio circuit kit. This uses a MK 484 Integrated Circuit. Initially I transferred this project over to a solderless breadboard with wire jumpers that I already had. As we would be prototyping several circuits in later projects it was good to learn how to do this sooner than later. There were some useful instructions on the web to help me learn how to do this. My first attempt didn't work, so I ended up having to double check each connection, and draw the results on a piece of paper. I had just one wire (one of the two wires to the crystal earphone) attached incorrectly. I adjusted that, and the circuit starting working nicely. |
I then started working towards moving the projects onto a printed circuit board. My first thought was to take the schematic for the circuit, and use a freely available CAD application such as CADint My mentor pointed out that as this was a simple schematic, it was easier to just do it by hand. I used a special PC board kit from Radio Shack.
Once the layout was drawn on the copper board in etch resistant ink, I created the PCB, following the instructions in the kit.
There are lots of great sites on the web for more detailed instructions on how to do this process. Here's one of them.
Holes had been drilled through the board for the placement of all the components. The next step was to solder them onto the PCB. I have special computer screen reading glasses, which are designed to work with me being about 18 inches from the object in focus. This made it hard to see what I was doing as I was attempting to solder for the first time. I then tried using the microscope they had in the hardware lab in MPK28, and this made it much easier. Because of this, I ordered a desktop magnifying stand and used this in conjunction with a bright lamp to do my soldering.
All the components were soldered to the board. I bought a Radio Shack AA battery holder and used a couple terminals to connect the crystal ear-piece, so that it could easily be used with other projects if so desired. There were a few places where the copper tracing was not continuous and debugging the circuit by "ohming around" found those. The simple fix was to just solder over them. If the break was too big, then a small piece of wire was soldered in place to bridge the gap.
The radio is now working nicely.
Along the way I've been learning how to use a multimeter. Eventually I'd like to learn how to use an oscilloscope to test the functionality circuits. Hopefully these are basic tools that I will need to master for most of the projects.
The circuit for this project can possibly be extended with an amplifier and loudspeaker. There are Technokits kits available (SK-201, SK-105 and SK-603) that have this functionality, but it would be nice to try to do this using the specification of the radio and these three kits, by buying individual components.
|
The aim of this project was similar to the last project. It's to try to create a simple FM radio from an existing circuit diagram and instructions. Steps here were:
|
Various mistakes were made. They are listed here along with the action that was taken to fix the problem:
The radio then working nicely.
After this project was almost finished another web site was found that had a very similar circuit but much more detailed information on how to put it all together. If I was doing this project again, these would be the instructions I would use.
I then ordered a couple of kits from Jameco:
|
Both of these kits were straight forward. I did all the soldering by viewing the board and components to solder through the desktop magnifying glass. It helped a lot. Here's the results of the Rocket Robet soldering, top and bottom. In both cases the soldered circuit board would not work the first time. For the metal detector, I forgot to strip the ends of the enamelled wired used for the coils, so there weren't good soldered joints there. For the Rockit Robot, I'd missed or poorly done some of the joints. My mentor went over everything, found and quickly fixed the flaws.
|
Radio control cars are getting to be very inexpensive nowadays. There are toys available such as KG Racer and Tedco Micromites that are under $20.00. My original goal with this project was to have an R/C LEGO "brick" that will work with the motors that LEGO make available, and which can be driven by a separate simple 2 channel R/C transmitter. It could then be made to work with any LEGO vehicle. |
As a first step, I took the circuit board out of the KG Racer car. My intention was to replace the two motors with connections that would drive standard LEGO motors. The problem here was that the KG Racer receiver circuit was designed to work off 3 volts. After looking at a document describing performance characteristics of the various LEGO motors, it was clear that the ones I have couldn't be driven off 3 volts.
So I photocopied and enlarged the circuit board, labeling all the components. From this my mentor was able to work out where a small cut could be made in the board such that the motors could be powered off a 9 volt battery, and the rest of the circuit would work off a 3 volt battery.
I made the changes needed, replacing the small motors that came with the kit with LEGO style leads so they can be attached to the standard LEGO motors. It worked superbly. I then put all the various parts inside a large LEGO "brick". This brick can now be used as part of a LEGO R/C vehicle.
A couple things to note here:
A future project here might be to start from scratch and take circuit diagrams of a a simple toy car receiver and transmitter, and generate the equivalent circuit boards, using the various techniques learnt in the previous projects, making sure that they work with 9 volts. The plan would be to then put the receiver inside a specially created LEGO brick, and hopefully achieve something that is much smaller.
I had an idea for a simple AC to DC universal converter battery replacement project that I discussed with my mentor. This was greatly simplified by just buying a 500 mA Universal AC/DC adapter for this. It allows you to set the DC voltage to 3, 4.5, 6, 7.5, 9 and 12 volts. It's model 900-052 on this page.
Note that for appliances that require more than one battery, that the batteries are in series, so this battery replacement only needs to connect up the two ends (one negative and one positive).
The next step here is to construct some "fake" battery inserts using dowel and metal sheet. I would then need some advice on how to do the socket connections between the AC/DC adapter and the battery leads.
|
Now we come onto projects to work with LEGO Mindstorms. This kit includes touch and light sensors that are rather simplistic. My aim here was to try to generate new custom made sensors that are more useful, and will provide more fun projects. |
|
The first one is a proximity sensor. This sensor has been made and attached (in as small as possible space) to half of a RadioShack dual mini board. |
Some points of note here:
The next step was to trim the mini board to it's smallest possible size. Rather than place it inside a LEGO "brick" (which is beyond my current miniaturisation skills), the sensor was just taped to the front of the test LEGO robotic vehicle. The first choice of vehicle (the Acrobot) was unsuccessful as the vehicle moved to fast and the sensor did not have time to react quickly enough. The second choice was a Roverbot with tracks (and a gearing mechanism to slow it down). Apologies for the quality of the pictures. A slightly more sophisticated NQC (Not Quite C) program was written that would drive the robot vehicle, and when the sensor detected an object nearby, reversed one of the motors for 2 seconds.
The program looks like:
#define IS_ON 100
task
main()
{
int i;
SetSensor(SENSOR_1, SENSOR_LIGHT);
PlaySound(SOUND_UP);
OnFwd(OUT_A);
OnFwd(OUT_C);
while (true) {
SelectDisplay(DISPLAY_SENSOR_1);
if (SENSOR_1 == IS_ON) {
OnRev(OUT_C);
PlaySound(SOUND_LOW_BEEP);
Wait(200);
OnFwd(OUT_A);
OnFwd(OUT_C);
}
}
}
This was simple and effective.
|
I purchased a short wave radio kit from American Science Surplus. I put it together and with a final bit of help from my mentor (who noticed that there wasn't a wire going to the coil!), this radio is now working. The plan here was to buy a project box from Radio Shack, solder all the components onto a small board, and put them inside the box to try to build a nicely finished radio. More on this project to come... |
This project is a sound sensor. The intention here would be for the robot to use this sensor, and the proximity sensor from the previous project, to come when called. Circuit building tasks here would be similar to the last project. It is expected that the software needed to drive the robot to perform the desired task will be much more complex.
Now we come on to something that has the potential to be great fun for kids. This is to interface a simple speech recognition circuit to the LEGO Mindstorms robotic kit. Again, I'd like to take this project in two steps.
Initially I'd use an already existing Speech Recognition Kit such as the Voice Direct(TM) 364 from Sensory Inc. This would be attached to one of more LEGO bricks, and interfaced to the RCX brick. As before, an appropriate robot and the software to run it would be constructed. An interesting one to try would be something like MIBO
Next would be to try to create a simpler speech recognition circuit that would be LEGO brickable, and be able to be driven via RCX software. Sensory Inc. provide an IC Selection Guide that should be able to help us here.
Depending upon time, it might be possible to also complete some of these projects:
Here I am sitting beside the pool, catching up with my email and my son has just taught himself how to swim (well almost).
Up until today, he's been using a life jacket. Now he's getting peer pressure from all of his friends. They can swim. He can't. Well, that's now in the past tense. He's happily swimming from one side of the pool to the other.
No doubt when I come home from work tomorrow, he'll be doing lengths.
Just another great growing up step.
I wonder how many others do this. I get a lot of email, and folks pass on links to useful sites. I make a note of them then usually get so busy that it takes me forever to get around to visiting them.
Here's the list from this week:
So many links. So little time.
Rolf Kersten blogs about The Google Supercomputer and Solaris
It's a little known fact that Google's search engine is actually powered by pigeons. Check here for more information on this.
|
Since our son has been born, we don't go to the movies so much. I bet a lot of parents with young children can relate to that. When Duncan was first born, we used Netflix (which had just started up at that time) and got our movie fix that way. Nowadays we occasionally watch Per-per-view on cable. Last night we put Duncan to bed earlier than usual (he was exhausted from practicing swimming in the pool - see yesterdays blog entry) and sat down to Master and Commander. It was great. Wish I'd had a chance to see it on the big screen. It keep us totally engrossed. My wife, even turned off her laptop so she could fully concentrate on it. Course that could have been because I turned off the lights and she couldn't see properly, and hasn't yet mastered how to use a computer in the dark. |
As an avid book reader, I've been meaning to get around to reading the Patrick O'Brian Aubrey/Maturin series for a while, with Master and Commander being the first one (and Far Side of the World coming in at #10). I picked up M&C at the library book sale last week for 50 cents, so it's now moved near the top of my list of next book to read, just to see where it ends (and presumably FSofW begins).
This morning we went and visited some friends of ours who are building a huge house in the hills above Redwood City here in California. We got a tour of their mansion to be. It's going to be truly awesome when it's finished in about 15 months. It's at the stage now where the framers are busy getting all the wood for the three levels of the house put together.
So this means they have a large bin of wood scraps, offcuts, pieces that they don't need. Wood! For free! So I reversed the mini-van up, and loaded the back full of sheets of 1/2 to 1 inch plywood, and many large chunks and planks of solid wood.
"What are you going to do with all that?" they ask. "Projects" I reply. My wife gives me one of those, well-it-is-Fathers-day-tomorrow looks and politely humours me.
Thanks Juan and Donna!
"Programming is like sex:
One mistake and you have to support it for a lifetime."
I just found this when I was searching for something else. Now you'll never be short of the right phrase to use when your project manager is asking for an update.
Oh, and there are lots more programmer's jokes their too. Enjoy!
|
In my belated introduction blog entry I said that it's been some of the software and related things that I've done "on the side" that have given me the most pleasure. This entry describes on of them. In 1988, I was introduced to a small book called "Beyond Photography: The Digital Darkroom" by Gerard J. Holzmann. Gerard was then a researcher at Bell Labs (um, Lucent Technologies) more famous for his work on Spin, a tool for verifying distributed software systems. Back then though, Gerald had a program called pico, that allowed you to manipulate digital images using a special mathematical language. Stephen Frede and I typed in and got working, the small subset of pico (called popi) that's listed in an appendix to the book (with the little on-the-fly compiler written by Ken Thompson and Rob Pike). Then with contributions from numerous others, we got our version of popi working on virtually all computer hardware and O/S'es around at that time, with graphical drivers for Amiga, Apollo, Atari, HP, MGR, NeXT, PC's, X11 and XView. We provided output to PostScript or Epson printers or to disk. |
This program was first released to aus.sources in July 1989 in conjunction with a competition held prior to that year's Australian Unix User's Group Conference and Exhibition. The best transformation of Dennis Ritchie's face (as judged by Dennis who was one of the guest speakers that year) was put on T-shirts that were given to each conference delegate. Bug-fixes, improvements and new drivers were garnered. A number of vendors had popi running at the exhibition.
A version that generated SPARC assembler on the fly was created that was much faster. Work really stopped on it in 1992 as other things took our interest. A year or two ago, I took out the archive and polished it some, and mostly got it working, but some bit-rot has set in. I haven't found the time to determine what's gone wrong. For anybody interested, you can download the latest tarball from here. It sure would be great to generate an x86 version to run on the latest Intel and Opteron hardware.
Gerard did a wonderful thing back in January 2003 by making the book (which is no longer published) available online. Check this out to see some great transformations of famous Bell Labs people and some earlier papers on pico.
After blogging for three weeks and seeing the kinds of things I've been posting,I've just added four new categories to better try to group them.
My RealWork(TM) is back to Java now, so expect to see a few more postings there. I've separated out the humor, because a couple of people throught I was serious when I really wasn't.
I initially starting posting to a weblog on java.net. I like the blogs.sun.com site better so in the future I intend to just blog here. Also the folks on java.net want you to just talk Java (seems fair), so even though my posts would have been appropriate for a Java audience, I had intended them to be more general.
So I'm going to post pointers to them from here. Anybody interested can check them out.
|
|
A couple of weeks ago, I got a chance to see Josh Bloch and Neal Rafter do one of the talks they will be giving at JavaOne this year. This was in the Auditorium at the Santa Clara campus, and was for Sun employees who might not get a chance to go to the conference sessions at JavaOne. The talk described the new features in J2SE 1.5.0 (which is currently available in beta2). |
Lots of great stuff, but something that caught my ear was that the "javac" command now has a -Xlint option that provides lint style output of your Java code.
Cool. So I tried this on JSDT, a Java collaboration toolkit that I wrote, just to see what it would pick up on. I always run lint on my C code, so it's nice to automatically have something similar for Java (yes, I know about Java lint but it's not quite the same thing).
Well first javac in J2SE 1.5 wouldn't compile my code because I was using "enum" as a variable name, and it's now a keyword in the language. That was an easy one to fix. After it successfully compiled, it started giving me lint messages. Lots of them. They boiled down to the following three types:
Nothing life threatening, but they should be easy to fixup. Thanks for adding this facility to the compiler.
|
No, it's not a new Sun marketing directive; it's the recent film from Quentin Tarantino, that we watched on Pay-per-View on Sunday Night. Well Volume 1 of what's guaranteed to have a followup. I've seen all of Tarantino's other films, so I was looking forward to this. Like all of his films, it is never obvious what is going to happen next. Yeah, you know there is going to be lots of violence (and this film has buckets of blood) and you can be sure that there will be the well choosen expletives, but from scene to scene he's not predictable. I love the way he goes from something that seems ordinary and familiar right into a marshall arts display. The way it goes from the over-the-top carnage scene in the restaurant to the "peaceful" snow scene in the garden (prelude to yet another marshall arts show). |
I'm sure I didn't get all the references and in-jokes to the marshall arts movies from the 70's, but it thoughly entertained me anyhow. If you are looking for realism, this film isn't for you. You need to ignore the excessive violence (body parts flying everywhere) and just watch a master director getting off on what he can do well.
|
Currently we have two cats that live with us; Bob and Sorcha. When our son Duncan was younger, he used to chase these cats everywhere and basically scared the bejesus out of them. They've never forgotten that. Now that he's older and not so wild, they just don't want to know him. |
He wants a cat or dog of his own. For quite a while now, we've been telling him that he'll have to wait until one of the two cats dies before we'll get another pet. Now it hasn't quite got to the stage where he's trying to push them down the stairs, but his patience has definitely gone and he was nagging us constantly. Over the weekend we broke down and said he can have a puppy.
Now we already have a "cat" flap that's just the right size for small dogs too, so we said he must choose a smallish dog so I don't end up being dog doorman.
My wife surfed to Animal Planet and showed him all the small dogs. He wants a chiwawa. Argh! I hate those dogs. There is a special place reserved in hell just for them. I know I'm going to end up walking this darned dog most of the time, so he needs to pick something that I don't mind being seen in public with.
We told him how yappy they are. And they bite you. All the time. It'll probably eat all of your toys too. So he's backed down from that, and we now just need to steer him gently in the right direction.
|
I'm not always somebody who'll adopt a new technology right away. I tend to like to see if it'll be useful first. This has definitely been true with the way I listen to music while I'm working. For a long time I just listened to CD's. Always through head phones so that I don't inflict my tastes in music on other people accidentally. But after a while, it gets boring. You're listening to the same music over and over. A couple of years ago a co-worker pointed me at live365, a portal to a collection of internet radio stations. That was fun for a while but they deluge you with ads. They're trying to get you to pay money to get a non-ad subscription. Okay, I can understand this. They are there trying to make money after all. It's not what I want though. |
Then a random email on one of the mailing lists I subscribe to mentioned Radio Paradise. This was much better. It's a single internet radio station, but they have an eclectic assortment of music, no adverts and only the occasional grovel for money to support them.
Then very recently I bought an iBook, and that has ITunes, a digital jukebox application for handling your music. One of the options is Radio, which then brings up a list of the different radio stations available. I was in pig heaven. So many new ones to choose from, right in front on my face without me having to go search for them. And so easy to just try them out and if I don't like one, another is just a double click away. Lots of them with no ads at all. One of my favorite at the moment is Radio KAOS which is user driven.
Wonderful!
This is a religious issue, just like favorite editors, programming languages or operating systems. Coding style guides are also like standards; there are so many to choose some. Here are some for C and C++. There are a few for Java too. Sun publishs one here. There are style guides for most computer languages.
If I have inherited some code that I didn't write (and assuming the original author isn't around to continue maintaining it), then I will reformat it to the coding style that I'm used to (which is close to the common coding conventions). By doing this, I find that I'm able to better understand it. Even though there are tools around to automatically reformat the code, if it's new to me, and I'm expected to be working on it for quite a while, I'll do the reformatting by hand. This allows me to view all the code that makes up a project. Of course there are limits here. The project has to be upto a certain size. I'm certainly not going to reformat the Mozilla code base by hand.
The big exception to this is if I'm contributing bug fixes or enhancements to somebody elses code. I'll respect their style (assume they have a consistent one), no matter how much it differs from mine.
Onto some pet peeves.
Here's a typical example. I've broken it into two lines for browser formatting, but you get the idea:
//if (debug){System.out.println("AccessibleDescriptionTest.testUIObject("+
Debug.describeObject(uiObject)+")");}
Not only has the programmer used a long line, they've not felt the
need to use white space to make it easier to read or modify. It's
clear that it's one long line, so that you can easily uncomment it
when you need a bit more debugging output. Ugh! Note that this is from a
time before the java.util.Logger API came along.
So I will always try to reformat to a maximum line length of 80 chars.
public void testUIObject(Object uiObject) {
if(debug){System.out.println("ColorChangeTest.continueTest()");}
} // testUIObject();
Most decent editors have a facility to allow you match braces or
brackets. You should also consider rewriting your code into smaller
functions or methods if you can't make the matching braces visible
at the same time in your editor (assuming you aren't trying to read
your code on your Palm Pilot).
You should consider using applications such as cstyle or jstyle to help you find places where you can improve the readability of your code. Thanks to Danek Duvall for pointing me at these.
And finally, if you write C code, check out (and obey) the Ten Commandments for C Programmers by Henry Spencer.
|
A couple of weeks ago, I finished reading Revelation Space, a science fiction novel by Alistair Reynolds. This was his first novel and he did an excellent job. It's space opera which is my favorite SF genre. The book description and reviews at Amazon (see link above) are good. I've nothing much to add here. If you are still averaging 4 stars after 81 reviews, you don't have a dud. It was clear that Reynolds had created a universe where he could write more stories. I noticed there were two other books by him; Chasm City and Redemption Ark, both with good reviews. |
Then I got lucky. One of my favorite online book sellers Edward R. Hamilton has them both in hardback for $4.95 each. You've got to check out the catalog. Do yourself a favour, and order one from their website right away. It's about a hundred pages long in the form of a newspaper, consisting of books at very reduced prices. One of the great things about them is that if you submit a written order to them, no matter how many books you order, shipping costs are only $3.50.
I ordered them right away, and the books arrived today. I now have at least four thick books to read, all vying for my attention.
|
Today, with 1453 of my fellow US citizens, I was sworn in as an official citizen of the United States. This has taken me over three years (I got lost in the system for quite a while as I'd underpaid my initial application by $25.00 and they hadn't bothered to tell me), but finally I've made it. |
Highlights today.
This means I'm now a citizen of three countries (the United Kingdom and Australia being the others). I have the right to vote in the US, and the right to serve on a jury. Plus all the other rights that the Constitution gives me.
I will have to start writing American instead of English. Removing all those extra "u"'s that are no longer needed in words like colour and favour. It's now a truck not a lorry. Candy instead of sweets (or lollies in Oz). Diapers instead of nappies. Pacifiers not binkys. And I'll need to attempt to bastardise (sorry, bastardize) the English language every chance I get.
|
This has to be a first. I got some "SPAM" today I didn't understand. I have a Sun mailing list for calctool, a desktop calculator, and today the calctool-request alias got some "SPAM" from BingXin Gong entitled: "The Uncertainty Principle Is Untenable". I did a quick google, and found that it has it's own web page as well. I hate to think how far this unsolicited mail has got. What's the author hoping for? That some famous/influential J. Random Scientist out there is going to take note of it and give it the publicity it rightly deserves? Good luck! |
|
A couple nights ago, I went with my wife and son to Fry's to look at a Yamaha PSR-275 electric keyboard. Their online store had them at a reasonable price, and it had good reviews as a beginners keyboard so we'd decided to buy one if we liked what we saw. We did. It's a great instrument. Trouble was they only had one left and that had been opened (large amounts of tape down the side of the box). I didn't want that. I wanted a new one. |
So I then had to go looking for a Fry sales person to ask them if they had any more in store in the back. No one around. Now if I'd been trying to buy a laptop or a HDTV they would be swarming all over me like flies. I eventually tracked one down in a nearby aisle and told him what I wanted. Now either he was too senior and this kind of request was beneath him or he was adopting the "not my aisle" approach, so he called over another sales person. This one had so little English that he didn't understand what I wanted, so he called over another one who finally headed off towards the back of the store.
After five minutes he came back and said they didn't have any more but their Sunnyvale store did. Yeah, like I'm going to drive ten miles down the freeway to your other store in rush hour, after that display of salesmanship.
So we went home, and order one online from Walmart. They shipped it the next day and it should arrive on Friday.
Following on in the list of things that have given me pleasure "on the side" while I've been working at Sun...
In October 1998, I won the Email Address of the Month award at Wordsmith.org with
richb@stard
an email address I've had (in one domain or another) for over 17 years now.
Not a big award. No trophy or huge cheque in the mail. What I did get were hundreds of emails from folks around the world either congratulating me on what a great address it was or telling me they didn't get it, and could I please explain why it was so great. Check out some of the other addresses there. The ones that also use the high level domain are very clever.
I actually think a lot of the SPAM I now get came from winning this award, but that's what mail filters are for.
|
Paul Lamere in a recent blog entry talks about Sphinx-4. After seeing this, I wondered whether it's now time to roll out my universal translator idea again. |
Working in the Accessibility Program Office at Sun, I've had the opportunity to work with various speech technologies, both text-to-speech (TTS) and voice recognition (speech-to-text). There are now freely available versions of both written in Java. FreeTTS for text-to-speech and Sphinx-4 for voice recognition.
A couple of years ago, when an earlier version of Sphinx was made available, I thought wouldn't it be great to be able to automatically do language translation as well. At that time, Sphinx could only handle grammars of upto 1000 worlds, so it wasn't practical, but this latest version is an order of magnitude better.
So first I'll tell you what I think is close to being doable today. Then I'll go into the more general idea. Let's say we want to do English to French translation automatically. Here's how I think it could be done with "just a little programming".
You would speak the phrase you wanted to say in English. Sphinx-4 would turn that into text, then automatically "send it out" to an online translation site. It would convert the text from English to French, and you'd then speak out the converted text with a TTS engine that recognizes French words, using a French voice.
The more general case, the one that so elegantly "just works" on Star Trek, is where you speak in English, and it automatically translates and speaks it in the language of the other person (having previously only heard a few words uttered by that alien being). We aren't quite there yet, even for a small subset of Earth languages.
Even with the specific case mentioned above, there are still problems. What if it didn't correctly translate your speech to text before the language translation? What if there are two words with the same sound that have totally diffferent meanings?
I just tried a small experiment. I took the following phrase (hopefully spelt correctly), gave it to the Altavista Babelfish translator and converted it to French, then immediately put the French text back in, and converted it back to English. Here's what we got:
The original English
Greetings earthling. Do not be afraid, we will not harm you. We come in
peace. Take me to your leader.
The intermediate French
Terrien de salutations. N'ayez pas peur, nous ne vous nuira pas. Nous venons dans la paix. Portez-moi à votre chef.
The reconverted English
Land of greetings. N'ayez not fear, us will not harm to you. We come in peace. Carry me to your chief.
Eek! That's not what I said!
Back in the late 80's, early 90's, there was a "user" on the net called Mark V. Shanney who wrote some outrageous postings to various USENET news groups. At that time only a small group of people knew that this was a computer program generating these articles.
Mark was created by Bruce Ellis based on an idea by Don P. Mitchell. The name is a play on the words "Markov chain". For more on the history of this phenomenon, check out this article
Kind of frightening to realize that the algorithm used can now be written as a single line of Perl
The program became very popular when there was a Computer Recreations column in Scientific American dedicated to it.
Mark needs a large volume of text (articles) to work from. Then it can come up with some interesting content of it's own.
So I was thinking that maybe Mark should start his own blog, then I discovered that he already has. There some fascinating stuff there.
So maybe (for a larf), we should set Mark loose on the blogs under blogs.sun.com and see what it comes up with.
|
Time to start organising my reading of other peoples blogs and the interesting RSS feeds out there. Last night I was reading the RSS tutorial mentioned by M. Mortazavi. Lots of great stuff there, but it's very inconclusive of which tools to use. There is just an over-whelming number of aggregators out there. I've also been taking notes of the ones that have been mentioned on our internal bloggers list, such as HotSheet, NewsMonster, PinkPanther, RSSOwl, SnowNews, Straw and, Syndigator |
At the moment, I've no idea which one to pick, and I don't really have the time to do an exhaustive test of each one, so I thought I'd try a different approach. I'd specify what I'm looking for, and hopefully the folks reading this who have "been there, done that" can point me in the right direction.
Here's my criteria:
Pointers in the right direction would be greatly appreciated.
Thanks!
|
A couple weeks ago, I mentioned a library book sale here in Palo Alto, California. That was a little bit specific and not too relevant for most people because they live elsewhere. I'm going to get slightly more generalised now, and point you are where you can find out about book sales in America. Not perfect for the rest of the planet, but hopefully helpful to some. Most of these sales are sponsored by Friends of the Library, so expect great prices. Palo Alto will always be my favorite (with Los Altos running a close second), but there are lots of other wonderful sales out there |
|
As I mentioned in an earlier blog entry our son would like a puppy, so my wife and I have been doing a bit of research. There is a great site to make this a lot easier. You answer questions on such topics as Size, Commitment, Compatibility Health and Protection and it returns a list of breeds that match your criteria. |
We're looking for a small dog, that requires average exercise and grooming. A dog that isn't prone to illness and will get on with children and other pets and is fairly easy to train. We're not looking for a watchdog.
We feed in our answers and it gave us 20 choices. Top of the list were:
After reading their summaries of all the dogs, we actually liked four dogs further down the list:
I don't think they ask enough questions. I'd like them to ask:
Now we don't really want a pure breed. A mutt is just fine with us, and we now know what kind of muttyness to look for.
Tonight we are going to the humane society in Santa Clara to see if we can adopt just the right kind of puppy. They are having a Midnight Madness sale.
More to come in another blog...
Well that's not really fair, I haven't tried any others, but this seems to do what I want.
Let me back up. Earlier today, I asked what is the best RSS aggregator for me given certain criteria. 4 out of 5 people (either via comments or direct email - thanks) suggested Bloglines.
So I went to their website, registered in less than a minute. I then was able to validate my registration in the next minute and within ten minutes, I'd setup my profile the way I wanted to and added my first two subscriptions. I can even make my bloglines available to others.
Very nice.
Now my next questions is:
Q. Where is there a master list of RSS feeds?
I suspect there isn't such a thing. You find feeds my browsing around and discovering those little RSS icons, or suggestions from others but maybe I'm wrong. Maybe Google are working on this in their labs...
|
About a week ago I wrote about how our son would like a puppy. Yesterday I mentioned that we were going to go look for a puppy at one of the locale humane societies that evening. Well folks, I'm here to advice you that this is not the way to go about doing this if you have a small child and don't want to end the day in potential emotional disaster. |
We arrived at the shelter in the early evening after a forty minute drive on the freeway which would have taken us twenty minutes if it hadn't have been Friday night rush hour. We went to look at the dogs in the back. Our son Duncan found three that he really liked and we put their numbers in order on the adoption form, and handed them over to volunteer #1. We were told that our first choice hadn't been taken yet, and if we would like to wait a bit (could take a while), then our name would be called, and we could have a visit with our choice and make sure everything was fine.
We went and sat with the other potential dog and cat owners-to-be. Two hours later our name was called. We were told by volunteer #2 that our first choice had already been taken (it apparently had been the second choice on somebody elses list). This (as you can imagine), was a huge disappointment. One second choice dog only had one eye. None of us wanted a one-eyed dog; we had visions of lots of problems in our future. Accidents just waiting to happen. So we had a visit with our third choice.
To cut a long story short, even though Duncan like the dog, the dog didn't really want to know us too much. It was a little too skittish.
So we tried looking at the dogs again. We even looked at the Chiwawa's. Duncan found two chiwawa mixes that he really liked. We visited with the first one, and everything was going great. Even I was liking this dog. We said, okay, we'd like to adopt this dog. Great says volunteer #2. Then volunteer #3 pokes her head over the top of the fence surronding the visitors area and says we can't do that. That dog has already been taken and yet another volunteer (who'd I'd personally like to strangle) hadn't labeled the adoption papers, that this had occured.
By now I was getting very frustrated. Duncan was upset, but willing to go have a visit with the second chiwawa he'd picked. We went back and looked more closely at the paperwork for this dog, and it was highly recommended that it not be adopted to a family with children under 8 years old (our son is five, almost six).
There were no more good candidates. We'd been there three hours. At this point Duncan burst out crying and I can hardly blame him. I felt the same way. We calmed him down and left.
We are going to try an animal shelter in Palo Alto later this morning. We are going to take a different approach. We will ask before hand exactly what they've got and either my wife or I will try to vet the potential dogs before our son gets too emotionally invested in a particular animal. Hopefully today things will go better although I have my doubts.
On a side note, there were two TV camera crews at the humane society premises last night. Seems our governor Arnold Schwarzenegger would like to terminate dying pets a little quicker to save some money, then reneged. The local news crews were there to get some local commentary. The cameraman took quite a lot of footage of Duncan looking at the cats as we were patiently waiting for our name to be called. I've no idea if he's going to be part of a future 15-30 second news article or if he's going to be "dropped on the cutting room floor".
This story. To be continued...
|
We all know how good a search engine Google is but I wonder how many people realize that there are lots of special hacks that can be done to help you refine your search. Tara Calishain and Rael Dornfest have an O'Reilly book entitled Google Hacks that goes into 100 of these in a lot more detail. |
There are a couple I use all the time.
site:www.ivillage.com what dog breed
as a search into Google, and it came back with the URL as its top hit.
tcl browser plugin
was finding a lot of old cruft from circa 1998 which didn't
seem to be applicable any more. I then remembered Google hack
#11 - daterange: for date range searching. But you
need to have the dates in Julian format. Well that's easy.
I can google for:
julian date converter
and the top hit points me at a nice online converter for this.
I generated a couple of Julian dates so I could search over
the last 2-1/2 years and then went searching with:
tcl plugin browser daterange:2452276-2453168
The top hit now points me at:
http://www.tcl.tk/software/plugin/
where there is a link to download a plugin for Mozilla.
The Google Hacks book website contains a list of the hacks in the book. It also allows you to download a ZIP file of the examples. There are also several complete sample hacks online. O'Reilly has set up a site where you can add comments about each of the hacks.
There are other sites that have documented Google hacks. Here's a good one.
|
Every now and then, I get interested in a computer game to the point of addiction. The previous one was Pit Droids. The current one is Snood. As it says on their website, "forget life... play snood!" and it's very apt. I've spent many an hour playing this game on my old Windows 98 PC at home. It'll also run on Macs, Pocket PC, Game Boy Advance and Palm Pilots. I tried the latter and it's a tad too small for my aging eyes. This is the only shareware game that I felt was good enough, that I was happy to pay the money to get the full version. The full version includes many more game levels and puzzles. You get free updates. There is also an editor for creating your own puzzles and levels. There is a Snood store for getting t-shirts, hats, mugs etc. The author is Dave Dobson and he should be very impressed with his creation which has had millions of downloads. The parent company, Word of Mouth Games has a few other games to choice from, but for me, the demo versions have not had the addictive powers of Snood. If you want to keep your life, don't go to their website. But if you want spend many an hour on a fun additive game, this one takes a lot of beating. You've been warned. |
|
See an earlier entry for more details on yesterday's installment of our puppy hunt. Today we went out to two shelters. First there was Pets in Need in Redwood City, where we'd previously had success getting one of our cats 8 years ago. They had a poor selection of dogs today; only one coming anywhere close to what we wanted. It was a chiwawa mix with a serious underbite. Looked like it was growling continuously. When we visited with it, it was very shy, almost to the point of being frightened. This was not a match for an active young boy. |
Our second stop was the Animal Services & Placement Center in Palo Alto. They only had three dogs. None of them anywhere near what we wanted. Duncan was disappointed, but he's now understanding that this might take a little while and I think he's okay with that.
Probably my wife will go out with him next week to a couple of the shelters in Santa Clara county that are a little further afield, and see if they have any ideal candidates.
Recently, at the practice sessions for the speakers who will be talking at JavaOne this year, I got to hear an intriguing talk by Grzegorz Czajkowski. He and Mike Jordan, with by giving a presentation entitled Sharing the Virtual Machine
As we are now trying to run Java in smaller and smaller devices and startup time is critical, the work that is being done here is very promising. If you are going to the sessions at JavaOne, I encourage you to check this one out.
One the same subject, I saw a new release of Jolt JVM Daemon has just been announced on FreshMeat. Jolt is a wrapper program that allows multiple invocations of the java, javac, javadoc, and jar tools to reuse the same JVM, thereby substantially improving the startup times of those tools.
|
Our son, who is five started going to Chess Club during his last few months in Kindergarten. His idea of chess at the moment is to try to capture more pieces than his opponent as fast as he can. No concept of strategy yet. No trying to think a few moves ahead and work towards a checkmate. Okay. Fair enough. I can understand this. What has been hard up to now though is finding a computer chess program that I can "dumb down" so that it's not continually thrashing him. Then I remembered that I had ChessMaster 5500. This is a few years old now, but it has the ability to easily set how long the computer "thinks" for. I set this down to one second, and it made lots of silly mistakes. Good. He can beat it at this level which will increase his confidence and then he can slowly increase the computer's skill level by giving it more time to make its move. |
I noticed that the ChessMaster series is now up to its 10th Edition with a free 8 hour download available to try. We don't need all the new fancy features but it's good to note that it's still a very popular program.
But what are other good resources for chess for young kids? I've been told that LEGO Chess is excellent. We should probably try that out. I also found a few useful links at Chess Central but even there it looks like they are aimed at the slightly older children that can read and write (8+). Maybe we are trying to do this too early...
Any recommendations for very young kids?
Had to share this one.
Over the weekend, I've been looking around for new RSS feeds to subscribe to. I discovered this one. It's chock full of interesting tidbits.
Like this pointer to the Perl 6 Periodic table of operators by Mark Lentczner. There is a PDF file there and also a poster available from cafepress
Ugh! I've just spilt a half a bag of New York Style Cinnamon Raisin Bagel Crisps over, not one, but two keyboards and a mouse pad. These are the crunchy broken up pieces, not the round toasty slices that you start with.
It's cleaned up fairly well, but everythings got that day-at-the-beach grittyness feel to it at the moment.
Only time will tell if I've done any serious damage.
|
In a recent blog entry, I asked how you found great RSS feeds. I realise that this is a matter of personal choice. Everybody is going to have different favorites, but there must still be some feeds that provide an invaluable service (The New York Times ones come to mind). To me, this seems like an ideal future Google Labs project - the ability to search for potential RSS feeds from all of the web pages they've searched over. Now blogstreet.com sort of gives you that, but the RSS URL needs to have been registered with the site first. There are numerous other sites like that. |
For now, I just used a normal Google search to try to find sites where top RSS feeds had been listed. The best I could do (with a short search) was Top 100 Most-Subscribed-To RSS Feeds. I've taken a few of those feeds and subscribed to them in my newly opened Bloglines account.
Hope this information is useful to others to just starting out.
|
The reformatting of the code of the fairly large new Java project that I've inherited (so I can read it better - see here for more details) is about half way done. As I've been reformatting it, I've been looking at the code but that only goes so far towards understanding. I'm now starting to think about how I can best get to grips with this new Java code in the shortest possible timeframe. |
There have been two useful tools for helping with this for other projects that I've worked on. They are:
|
Unfortunately I'm not in Norway for GUADEC this week. I'm not in San Francisco for JavaOne. So it's greetings from the Sun campus in East Palo Alto (sorry, Menlo Park), and time to blog about a project I did in years gone by "on the side" (i.e. not my RealJob(TM) at the time) that was a great deal of fun. |
This was about the mid 80's. I was working for Sun Australia at the time. This was the Sun distributor in Australia (one of the companies owned by Lionel Singer) and before Sun Microsystems Inc. opened up offices down under. SMI had just released the Sun 3/50 which was a nice machine but limited. It only had two serial ports on the back. It was thought that there was a market for a machine with more ports.
So the FJ Port Expander was invented. A company called Datatran Systems designed the hardware. The firmware was written by Charles Kosina and I wrote the Unix system software (primarily designed for Sun's but capable of working on any BSD Unix system). In fact if you look at the picture of the FJ, you'll notice that it was designed to fit at the back of the Sun 3/50 between the base unit and the screen. It fitted there perfectly.
Here's how it worked. You connected a serial cable from one of the two serial ports on the back of the 3/50 to the host port on the FJ. You could then attach upto five serial devices to ports on the back of the FJ. There was also one parallel printer port available.
Astute readers will notice that what's happening here is that the serial port (typically running at 9600 or 19,200 baud in those days) was being shared by all those devices. There was a packet protocol going between the FJ and the software running on the Sun, which allowed you to read/write from/to the various devices from multiple applications running on the host computer through pseudo ttys.
Why was it called FJ? Well that was because the Sun 3/160 CPU board was code named "Carrera", after the Porsche Carrera. In Australia, the most famous car is the FJ Holden. Not quite as sexy as the Porsche, but famous in Oz never the less. So we called it that. Actually I got to call it that, and the name stuck. First and only time I've named a product (as opposed to a single piece of software).
I don't think we sold many of these beasts. I unfortunately moved onto another project so I didn't get a chance to do revisions or bug fixing. I did get to give a paper at an Australian Unix Users Group conference on it though. Alan Kay was at the same conference giving one of his tour-de-force presentations. Truly amazing to watch. Great times.
|
Our June American Science Surplus order arrived last night. Here's what we ordered: |
The Kaleidoscope from last months order was a great success. If you are looking for interesting things to put in the kaleidescope to view, try bugs from the garden. Live ones are best, though a tad unnerving to watch.
Sign up for a catalog here. I'll guarantee that they have something in there that would be useful or fun for you.
|
|
Yesterday Dan Lacher and I showed Mary how you can setup a small thumbnail image to point to a larger image. This might be of interest to others blogging on blogs.sun.com. |
See this recent blog entry of mine as an example of how this looks. If you click on the image in this blog entry, it displays the larger version.
So first of all you need to create the small version from the large one. Gimp which is a part of JDS can help you here. Note that I'm using an earlier version of gimp (v1.2) running on Solaris, so the commands might be slightly different. If so, perhaps somebody can comment on what the differences are...
Start up gimp and click on File->Open to load your large image (let's call it "image-large.jpg") into the graphical editor. Then, in the window where the image is being displayed, right click to bring up a menu, and select Image->Scale Image...
This will display a "Scale Image" popup and show you the original width and height values (in pixels). Keep the X/Y ratio set to 1:1 and enter the new width value you want. This will automatically adjust the new height value correctly. Then click on the OK button. This will scale the image.
Save the newly resized image by right clicking again and choosing File->Save As. Make sure you pick a new name (let's call it "image-small.jpg").
Now upload both images into the resources area of your blog by logging in, selecting Settings then Files and use the Browse... and Submit buttons to enter in the two new files.
Inside your Mozilla browser, if you right click on each of those two new images in the list of your files below, you can select "Copy Link Location" to find the URL of where each of those files reside.
Let's call them:
http://blogs.sun.com/roller/resources/username/image-large.jpg
http://blogs.sun.com/roller/resources/username/image-small.jpg
Now finally, inside your blog entry, you can set up the small image to link to the larger one with (split over two lines to make it easier to read):
Note that if you don't want to scale the original image, there is another way of doing this where you let the browser scale the thumbnail for you, but typically the thumbnail image won't be on so nice to look at and your web page will take longer to load. This is with something like:
On Monday, I wrote a blog entry about Understanding large code bases and gave a pointer to a useful book called Code Reading by Diomidis Spinellis.
Diomidis kindly left a comment pointing to one of his papers entitled Reading, Writing and Code. I sat down last night and read it. It makes a lot of good points and I have some more commentary on the subject.
I whole heartedly agree that code readibility to me is having a good style. As I mentioned in a blog on Coding Styles last week, you need to adopt a consistent style. Plenty of white space too. I use two blank lines between each method in a source file. When you have to do things like inner classes or anonymous methods, use blank lines and consistent formatting and indentation to show where they are.
I have a couple more thoughts on why you don't always see comments in code.
Too many small open source projects start with a simple program that does a single task (and probably does it well, so that the program becomes popular). Then "bells and whistles" are added incrementally in an ad-hoc fashion, probably not even by the original author (who has moved on to something new that interests them). The original design structure (if any existed) is warped out of shape by these new additions, because each new author didn't know the original authors intentions on how the program was designed (how many open source projects have you seen with a functional specification?).
Most maintaining work (which includes adding in new features and enhancements as well as bug fixing) is not done by the original author. These maintainers are quite often coming in cold (which is why the some of the techniques described in the Code Reading book are very useful) and don't fully understand the code they are working with. They are often under time constraints (perhaps they are contractors being paid per bug fix) to get the problem solved. Rather than leave extra comments helping others to understand what is going on, they just add in the new undocumented code. It fixes the problem, the customer is happy, but no thought is given to making it easier for the next person who reads this code.
I've even seen contractors keep extensive notes themselves in notebooks or their own files, which they don't share with others. Their misguided belief is that this is a kind of job security. That they are the only people who know how to fix problems in this code (especially when it's proprietary code) and if new problems arise, they will be called back to work on them. Because of this mercenary attitude, it can lead to a poor reputation for contractors where in fact thare are just a few offenders and not a generalised demise.
I noticed that the Reading, Writing and Code paper specifically mentioned John Lions and Ken Thompson by name so as I have my own John and Ken story, I'll blog about that, this afternoon.
|
This is another of those tales of great fun moments at Sun which wasn't really a part of my job and I get to drop some famous names. See if you can spot them. For those who don't know, John Lions is famous for (amongst other things), a booklet called "A Commentary on the UNIX Operating System" (also known as the "orange book") which he published in 1977 as part of an operating systems course at the University of New South Wales where he was a lecturer. |
Again (as if I need to remind you), UNIX was written by Ken Thompson and Dennis Ritchie over 35 years ago. This was a commentary on UNIX Version 6.
It has become one of the most photo-copied bootleg documents ever. Most students seriously studying UNIX have either seen or own an nth-generation photocopy, though they might not admit it.
When I joined Sun Australia (the Sun distributor) in 1984, they was a guy (I'll just call him Dave) who worked for the Lionel Singer group (the parent company). He's been a student of John Lions at U.NSW, and he had a copy of the orange book. I got a photocopy direct from an original.
I still have it. The annotations and commentary by John are wonderful.
It has that infamous section of code in slp.c (context-switching code) with the comment:
/* * If the new process paused because it was swapped out, * set the stack level to the last call to savu(u_ssav). * This means that the return which is executed immediately after * the call to aretu actually returns from the last routine which * did the savu. * * You are not expected to understand this. */
And they're right, I don't.
Note that John's work was finally published professionally in 1997..
Skip forward to about 1990. I'm now working for Sun Microsystems Inc. in Sydney. Every Friday evening, I'd drive over to a software company called Softway, which was the gathering place for folks interested in UNIX. Bring a bottle of wine. Have a great time. John Lions was usually there. Some of the people working at Softway had been his students at one time or another. I got to know him very well.
This was also the time when Ken Thompson was taking a sabbatical from Bell Labs, and was hanging out down under. Ken became a Softway Friday night regular and I got to know him well too.
Now Sun (like all sales-driven companies) had its own way of entertaining it's customers . In Sydney, we had a box at the Sydney Cricket Ground. When it wasn't cricket, the SCG hosted Australian football games. So I suggested wouldn't it be great if we could invite John and Ken along to one of these games. Val Mickan, the Sun Microsystems Australia managing director thought it was indeed a great idea and so we have Val, myself and Bruce Baker one of the Sydney office sales folks entertaining John, Ken and Piers Lauder (one of the creators of ACSnet - the Australian Computer Science Network). Great fun, good food and entertainment.
After the game, I got to chaffeur John, Ken and Piers back to the University of Sydney. Four of us crammed into my beaten up old Nissan Exa.. A really tight fit.
Even at that time, John was a bit of an absent minded professor. A few years later, we realised that this was due to Alzheimers. John was seriously ill for several years and sadly died in December 1998. There are numerous tributes to him on the net. Here's an example.
[Technorati Tag: Computer History]
|
I've recently been introduced to ACM Queue. They do a monthly magazine of informative articles for engineers. Thanks to David J. Brown of Sun (who is also on the Editorial Advisory Board) for putting me onto this very useful resource. |
Topics covered include
After a month or to, the articles that appeared in the magazine are also made available on their web site. If you are interested in applying for a free subscription, look here
|
I have a photocopy of the first even Sun programmer's Guide from 1982. Here's what the front cover looked like. This manual described how to program your Sun 1. Note the Santa Clara address. This was the very first Sun building at a time before we moved to the campus in Mountain View. I've been told that that original Sun location was considered to be at ground zero for this part of the Bay Area. |
If you haven't seen a Sun 1 before, then there is one in the lobby of building 14 of the Sun Menlo Park campus. Kind of klunky looking nowadays especially when it's right next to one of the sexier models we've sold.
This Programmers Reference Manual for the Sun Workstation was compiled at Sun Microsystems by Marty Rattner, Andy Bechtolsheim, John Gilmore, Bill Joy, Tom Lyon, Henry McGilton and Bill Shannon.
Nice to see that Marty and Bill Shannon still work at Sun and Andy has just returned.
So what did the table of contents have in this original 83 page manual?
So back in those days, you just needed one manual to program your Sun workstation, and perhaps a trusty copy of K & R just in case you hadn't fully memorized the operator precedence table. Compare that to the bookshelf full of manuals and text books (or the electronic equivalent) you need nowadays if you are a programmer.
[Technorati Tag: Sun Microsystems]
Back in the mid-90's, the printer group working out on building 2 in Mountain View, offered a T-shirt making service. You bring in the t-shirt, and the PostScript for the picture you wanted on it, and they'd put them together (for a small cost that covered their expenses).
This was a great deal, so I took advantage of it twice, to visually vent on things that were appropriate at the time. I started from a couple of Gary Larson cartoon. These were one off T-shirts for my personal use. Here they are:
|
|
This was at a time when we'd just seen how visually sexy the OpenStep desktop could be. We compared this with the graphics you could get from the X server, and saw how clunky it was. Nowadays I'd have to take a lot of this back with some of the wonderful functionality of the new X.org X server, but at that time, Display PostScript was great. I should mentioned that the original art work was just a black and white cartoon. I got out my water colors and colored it in myself. The original picture only had one bar preventing the presenter getting on stage. I used a pixel editor to add in the other to make the X. I had way too much time on my hands in those days. |
|
|
If you've ever tried to use imake, you'll know what I mean. It's horrible. I'm so glad that today the world is heading in the direction of tools like Ant. Again, note the pixel editing to add in the GNU card. |
|
Next week, Sun in the U.S. shuts down apart from essential services. Our five year old son Duncan is on summer break, so it's time for some vacation. We won't be doing what we did last year. That was Disneyland for a week. We bought a 3-day park-hopper pass and Disney extended it to five days. Luckily we were staying with Grandma so no extra hotel bills incurred. But the heat and the crowds and Duncan not wanting to go on a lot of the good rides made this a vacation that I'd like to forget. |
So this year we are going to do two or three day trips. Every other day. As a kid I never understood why my Dad always had a "quiet" day between holiday one-day trips. Now I get it. It's to recover from the previous day. As I get older and older, I appreciate him more and more
A fun one day trip (something we did a couple months ago), and which we will try to repeat next week, is to visit the tide pools at Princeton-by-the-sea (north of Half Moon Bay). Lots of interesting plant and animal life there.
Our son is also into rock collecting so we are going to go over near Capitola where I understand there are good fossils to be found at low tide. Any other good places for interesting rocks and fossils in the Bay Area? This is all new to me.
And finally, I'm going to see if I can make that first stained glass project that I've been threatening to do since the beginners kit and the other materials arrived on my birthday at the end of May.
But in short, this year, I'm just going to relax.
|
I really need to do something about updating the main TV we have at home. It's now almost 14 years old. I thought that this might be it, but the price is a little too hefty for me. Here's the review. Time to do a little research I think. Any suggestions on what TV should be at the centre of our new home entertainment system would be appreciated. |
|
A couple months ago, I was checking out the online catalogs that Google make available in their more, more, more" section. |
In particular I was looking for the websites for things that interested me and which would ship you a printed catalog (my eyes go wonky after a while when reading small print on the computer screen, and I totally loose context if I keep zooming in).
I was looking for catalogs on subjects like mens clothes, books, hobbies and games and puzzles. In this last category I found this one. The company is called Stave and they hand make jigsaw puzzles. I sent away for the printed catalog and they were kind enough to include 5-6 pieces of a puzzle that I could play with, put together and see the quality that they provide. It's beautiful workmanship.
I then started avidly looking at their catalog. As the online catalog will reflect, they have lots of wonderful jigsaw puzzles. But the prices. I initially thought that that it was a misprint, but wait, they are all like that. Then I thought again, and I realized you are paying for a work of art here. Something that you will probably hand down from generation to generation.
I still can't afford one at the moment though.
Stave does provide an option where you can timeshare jigsaw puzzles though.
Their News and Press section will tell you that people like Bill Gates, Barbara Bush and Stephen King buy these puzzles and are big fans. Of course, it's not even pocket change for them. There was one person in the 90's that bought over a $1 million dollars worth of them. When it was looking like his days were numbered, Stave had to start do some more advertising to offset the potential upcoming revenue lose.
I hope their business isn't so close-to-the-line any more and perhaps there are people reading this who have a Stave puzzle in their future.
|
Executive Summary: (like there's many of those just waiting on the edge of their seats to find out how this turns out) - no dog found yet, but we did see a lovely puppy today that we unfortunately had to turn down. More details. Here's the previous references for those just tuning in to the story and wanting to know more: [1] [2] [3] [4]. Yesterday my wife Lynea and Duncan our son went out puppy hunting. They went back to the Humane Society Silicon Valley and they drove all the way down to Friends of San Martin Animal Shelter (just couldn't get these folks to answer a phone). In short, no puppies or young dogs available. Duncan was a tad fedup by the end of it, but he did agree to go look at a puppy today called BonBon at Pets In Need in Redwood City. |
That's her picture above (follow this link to find out more about her). We visited with BonBon who was very friendly but a little too frisky for Duncan. Almost knocked him out of his chair. As you can see, we are expanding our search criteria a little bit. This was a four month old kelpie (I'd guess weighing in at about 20 pounds), who is going to grow a lot bigger. Unfortunately it was not the dog for us. BonBon was listed on their website today, and she's a gorgeous dog that's going to go to a good home very quickly.
So the search continues. We'll probably go out some more this weekend.
Just over a week ago I mentioned that we'd ordered a Yamaha electronic keyboard. None of us know how to play it and even though it comes with a comprehensive guide to what it can do and a song book (for the 100 built-in songs), I felt the need to order some beginners books for myself (although the keyboard is for Duncan our son too when he starts to show an interest).
I searched around on Amazon, reading the reviews and came up with these three which I've just ordered
|
|
|
If anybody has any experience with these books or can recommend others (or even better, any good free online resources), please comment.
[Technorati Tag: Electronic Keyboards]
|
Alan Coopersmith in a recent blog entry mentioned that he'd moved office three times in the five years he'd been at Sun. This got me thinking. Since starting at Sun, just over 17 years ago, I've moved offices 21 times into 15 different buildings in five cities on two continents. I wonder if that is some kind of sick record. |
|
At a library book sale a couple of months ago, I bought a box of about 30 Communication Arts magazines for about 5c each. I was reading the March/April 1999 one last night. It was celebrating 40 years of the magazine. One of the articles, Forty Years Out: A Conversation with Paul Saffo talked about designing for the long haul. It mentioned that Paul Saffo, along with Stewart Brand and Danny Hillis, (a pioneer in the Computer Industry) were trying to design a clock that would tick once a year and last for 10,000 years. |
Wow, what a fantastic idea I thought. Then I went to google around trying to find out what had happened with this project since then. Had they successfully started the clock going as the seconds had ticked over into the new millenium.
The more I looked, the more I realized what a daunting task they'd set themselves. How can you create something that will last 10,000 years? 10,000 years ago was the time of the last Ice Age on this planet.
More of the impetus for building the clock is described at length by Stewart in his book, Clock of the Long Now which has had good reviews.
A special web site, The Long Now Foundation has been created for disseminating information on this clock.
Quoting from their location web page:
"As the first step toward building a 10,000-year clock, The Long Now Foundation has purchased desert mountain land adjoining Great Basin National Park in eastern Nevada. The purchase of the property from National Treasure Mines Inc. was made possible by donations from three high-tech pioneers---the Mitchel Kapor Foundation (Kapor founded Lotus), the Jay Walker family (Walker founded Priceline.com), and Bill Joy (one of the founders of Sun Microsystems)."
The latest article I've found on this, on the Wired web site is from just 3 days ago by Hillis himself. The tone of the article was disturbing to me. I felt that Hillis was now trying to think of ways to "build" the clock in spirit without actually physically creating it.
If the project is too hard currently, with the level of technology available today, why not just admit it and wait until we have invented the tools that would enable it to be built?
|
So here I am. I've just done a search at Google and I've got a lot of hits back. But several of them give me 404 Not Found messages when I actually try to go to the search result. |
Wouldn't it be nice if there was a "Validate Results" button on the search results web page, that'd go off and check them all for you and then just redisplay the ones that don't generate errors (and/or redirect you to another page)? I strongly suspect the Google brains trust thought about this at one time and rejected it, as it would grind their server farm to a halt. Perhaps there is some way to download that functionality to the searchers computer. A plugin perhaps...
I don't really know too much of how Google works (apart from the pigeons), but I'd like to think that if when you click on a link, and it generated a 404 error, that Google's database of hits was somehow (eventually) updated to not show that link any more. I'm not sure that's correct though.
|
|
We spent the afternoon by the pool. As I mentioned in a previous blog entry, our son Duncan has taught himself how to swim. Today he was refining his diving in technique. I don't have any photos of todays activities but try to picture this. The image to the left is a link to a photo we took when we moved into our new house about a year ago and shows our pool and spa. |
Duncan confined his activities to the spa. Even though it was a fairly warm day today (if I was still living in England, the papers would have called it hot), the spa was on and set to 95 degrees. Duncan put on his googles, and was jumping into the water in the same posture as a sky diver would use to exit the airplane. He'd stay under for about 10-15 seconds (anxious moments from his parents when he first started doing this) and then he'd come up to the surface spluttering, take off his mask, then bury his face in a towel to dry it. Then he'd repeat it. Again and again. For about two hours. He had a great time.
|
Here's an idea. Sun marketing, are you listening? I visit Google probably on a daily basis. When ever it's a special day (and recent ones have been Father's Day, the Transit of Venus and today it's Independence Day), the Google logo is something special to see. We've got a great logo. As Paul Lamere recently mentioned it was designed near the start of Sun's existence by Vaughn Pratt, an Aussie working at Stanford (who I was lucky enough to meet in November 1984). It hasn't changed in 20 years. Even Apple have taken a bite out of a different apple. |
We definitely do seem to be changing our marketing style recently and letting our hair down now and then, so to speak. Have you checked out Jack, that Mary pointed out last week?
So how about a jazzed up Sun logo once in a while.
[Technorati Tag: Sun Microsystems]
|
Parents of small children will relate to this. You watch a lot of "entertainment" that you wouldn't even consider thinking about if your child hadn't said that they really really wanted to see it. The Cat in the Hat film with Mike Myers falls into this category. The book is a classic. Wonderful. The film is a disaster. We watched it on Pay-per-review so it was a relatively cheap disaster but it was 1 1/2 hours of my life that I'll never get back again. |
I did a double take when it was starting up and said it contained Adult Content. For a childrens story? Hmm. I don't know why they put the adult content in. If they were trying for humor on two levels, then they failed with this. There were a few good jokes that the grown-ups would get. There wasn't a need for some of the other attempts.
The special effects were okay. Our son laughed twice, but also, as I looked across a few times, he had some strange puzzled looks on his face.
Mike Myers can do great comedy when he's given the right material. This wasn't it.
P.S. The popcorn was good.
In November 1984, I visited Sun Microsystems Inc. in the U.S. for the first time. I'd been with the Sun distributor in Australia for just under two months, and it was thought that I and a couple of my co-workers should go over and learn as much as we could about everything SMI was doing.
I should give a little background of where Sun was at, at that time. I'm guessing there would have been about 700-800 employees world-wide with most of them based at the Mountain View campus. Sun was selling the 2/120 and the 2/170. Manufacturing was still being done in building 4 in Mountain View. Tech support was in building 2 and Scott (I think) was upstairs in building 6). To give you an idea of how different this was from today, I remember that Bill Shannon and Tom Lyon shared an office in building 1.
We were also arriving at Sun at the same time as representatives from the Sun distributors for a couple European countries were there, so we were all bundled together and given a variety of tours and visits. I think that was one of the reasons I was lucky to meet and talk to some of the people I did.
Lots of fun things to do and see, but there were three big highlights for me:
Rich: Are you planning to do anything soon with speech technology.
Andy: No.
Succinct answer, but I'd blown it. It's was clear that Andy would have preferred to be off somewhere else designing something, and he was just being nice to us people. Still, it's a moment that I'll always remember.
So we did.
[Technorati Tag: Sun Microsystems]
[Technorati Tag: Computer History]
|
I've been fascinated by the findings of the Cassini spacecraft as it continues its journey outward and now heads into orbit around Saturn. Also by the recent Mars rover excursions, powered by Java technology no less. Way cool. |
As our technical abilities improve with each new space mission our knowledge and understanding of what our Solar System is all about continues to be refined.
Our son is now starting to take an interest in the Solar System. I was reading to him from one of his library books last night. It's Our Solar System by Seymour Simon. This has a 5 star rating at Amazon. I'm amazed. I realize this book is aimed at grades 3-6 but I found it very frustrating to use. It's illustrations and text were very confusing. Maybe it's just me and I'm not upto date, but I didn't know that Jupiter and Neptune had rings around them. The book is dated 1992, so there is no excuse for getting basic facts like this wrong. A count of the number of moons each planet has. Okay, I can accept that that might be incorrect nowadays, but not how the planets look.
I have an old book called Elementary Lessons in Astronomy by J. Norman Lockyer dated 1888. On page 64 it lists the eight known large planets (Pluto hadn't been discovered at that time):
There is a footnote:
* A ninth planet, named Vulcan, has been suspected to revolve within the orbit of Mercury, but proof of its existence is still wanting.
I wonder what made them think that. Unexplained gravitational influences? A poorly developed photograph for a spot on it? The book doesn't say.
So how do you keep up to date with the ever changing solar system? The web and electronic books are certainly helping. I know lots of science text books I have are completely out of date. If you buy your kid a set of encylopedias nowadays, it better be in electronic form with options to automatically get updates. We are now at the point where it's trivial to upgrade your computers operating system at the click of a button. Wouldn't it be great to just automatically update your electronic library of science text books in a similar fashion.
|
This afternoon we went to Ikea to get a couple more bookcases and a CD/DVD tower. |
I love that Ikea are now in East Palo Alto and we no longer have to drive to Emeryville.
I love the Billy range of bookcases. Good value for a good price.
I hate that they have long lines at the five open checkouts (out of 20 possible ones that they could open).
I hate that when you are trying to load the really heavy bookcases into your vehicle, there is nobody from Ikea in sight to help you. At least when you get home, you can cut the box open and carry the pieces into the house one at a time.
Overall, the love is winning out over the hate, so we keep going back.
|
On Boing Boing, Mark Frauenfelder wrote a short piece entitled Sony's Librie e-book reader: great display, awful DRM. More about the LIBRIé can be found here, assuming you read Japanese (or have the patience to work with one of those online translation sites like Babelfish. |
Great to see that Sony is getting behind the technology invented by the U.S. company E-Ink and working with Royal Phillips to create the first consumer product based on this electronic ink. From hearing about e-ink in 1999, I've been waiting patiently for this to be productised.
The Inquirer reviews it here in its usual cynical style.
As was pointed out in Marks article, I sure hope that they come up with a decent Digitial Rights Management offering.
When this is made available for the English market, I'll be there in line waiting to buy one. Note to self: add to wish list.
|
Lynea and I took great pleasure today in going out to the local movie theatre and watching a good movie, instead of the piece of drivel we sat through on Sunday. It looks like the Potter crowds are finally thinning out for this movie. There were only two showings today, and the one we were in was only about a third full. Both of us have read all of the books and eagerly await each new film. As has been reported elsewhere, this one was much darker than the previous ones. The humour was greatly reduced. The characters are developing. The kids are growing up. Nice to see there was only a minimal number of Malfoy appearances and Quidditch matches, two parts of Potter films that I find tiresome. |
Michael Gambon carried on the role of Dumbledore, slightly different (more animated), but it didn't feel out of place. Good to see new characters introduced. Gary Oldman as Sirius Black and the cameo by Dawn French as the Fat Lady were my favorites.
I also love the incidentals that appear in the Potter movies. This time it was the Marauders Map. Very cleverly done. Obviously others felt the same way as it was used for the credits at the end of the film.
I don't know whether I want the rest of the Potter films right away, or to wait a while and see more after a few years (like Lucas did with Star Wars). Part of me wants to see the same actors playing the roles and part of me would like the Potter universe on film to be fresh. Don't get me wrong, Alfonso Cuaron has definitely made it feel more lived-in, and I like that but I wonder what a few years and advances in technology could do to improve it even more.
|
I think I must be addicted. I went out today and bought a book on essential blogging. It was published in August 2002, so it's probably already out of date, but it's nice to see that the web site for it has an errata (both confirmed and unconfirmed). I skimmed it in the car on the way home this afternoon. I'm not too sure how relevant it is to our roller setup on blogs.sun.com but hopefully I'll learn something. I'll try to remember to post a book report in a couple of months when I've looked at it in more detail. I'd be very interested to hear about other peoples experience with this book and whether there are other similar ones you'd recommend. |
|
I no longer take eWeek as a printed subscription, but I'm still getting an email from them once every business day which gives pointers to various articles de jour from their writers. |
For a week or so, there has been a hullabuloo over the latest series of security problems with Internet Explorer, and the fact that the U.S. Computer Emergency Readiness Team suggested using an alternative browser to avoid these problems.
Today they had a couple of interesting articles. The first, which is their top story today, in that enterprise managers are wary of dumping IE because they rely on features like ActiveX which aren't available elsewhere. The second one, describes which are the alternate web browser choices and how to go about swapping to one of them.
Other web browser makers are grouping together to try to make software plugins for their browsers be as functional as those currently found in IE. They are working with Macromedia Inc., Sun Microsystems Inc. and Adobe Systems Inc. on the extension. Read more about it here.
|
Ben Hammersley recently wrote about how to turn Fedex tracking into RSS. Now whenever a Fedex person so much as breathes on your package, you'll get to know about it. Instantly. If you read the post, you'll see that this was a hack, albeit a very clever useful one. It would be nice if Fedex now went out and officially provided the same kind of functionality. |
Taking this one step further, what stuff on our Sun webpages would it be nice to also see provided as RSS feeds? No promises here, I'm just asking. One that I'd like to see, is for the publically available bug reports. Wouldn't be it be useful to know when new bugs have been reported against your favorite applications or libraries?
Or when a new version or update of a Sun product becomes available. Or new technical tips for developers. Or new major initiatives that we announce.
But I suspect there are lots of little useful feeds that would make a difference.
What Sun supplied RRS feeds would you like to see? Please comment.
[Technorati Tag: Sun Microsystems]
|
The house we live in now has a landscaped garden at the back. Lots of different kinds of plants, that flower at different times of the year. It's beautiful. In short, it's inspired an interest in gardening in me that I've never had before. Our son recently said he'd like some sunflowers, No problem I thought and about 2-3 months ago, went down the local nursery and got a couple plants. |
The snails got one of them and the other was outgrowing the 3 foot stick I'd bought to support it. So it was a return to the nursury to get two more plants, 3 long sticks and some snail bait.
Now, with the plants flowering we have one that's about 7 foot high with a large flower at the top. A second that got bent in the winds a couple weeks ago and lost the top half and the first flower. It's now got a second flower blooming half way up (about 4 feet off the ground). The third also got bent in the winds and is just starting to recover.
This morning, I took a closer look at the one that's in full flower. The flower (as of 8am) was facing towards the sunrise. Earlier this afternoon, it was facing south, and this evening it's almost tracked around to where the sun will set. I simply didn't realise they could do that. It's kind of unnerving. Brings back memories of reading Day of the Triffids.
(I hope you weren't thinking I was going to be writing about flowers at Sun).
|
Alan Coopersmith recently mentioned faces in a blog entry. I've been meaning to write this one up for a while. It's another in the series of fun things I've done at Sun which wasn't my RealJob(TM). |
Faces is a program for monitoring a list visually. Typically this is a list of incoming mail messages. For each element in the list, an icon is displayed.
It is based on the AT&T v8 face server called vismon written by Rob Pike and Dave Presotto, but is not derived from vismon sources.
Here's a pointer to the original Paper on vismon by Pike and Presotto.
Here's a simple screenshot of the last ten messages in my INBOX at that time (including X rated spam). And a little bit of trivia; the faceless image there is Peter Weinberger from Bell Labs (now at Google along with Rob Pike).
Faces now has three different modes of operation:
What makes this really useful is that, thanks to Steve Kinzler there are already huge databases of face picture icons (called picons) available to download and use with faces and a huge collection of programs and scripts that work with it too in custom monitoring mode.
What made this really innovative at the time (start of the 90's) was that the face for the sender of the mail message could be included in the message header. You still see these X-Face: header lines in messages today. Here's the one for Albert Einstein:
X-Face: }>Y~A__8Wg_4*D?SygbgH\#5+.:g"Ly4p5$v0Z[g5
&W&rbWfoCZ1a'9wsvc"i#-G'YA8pkGz<*9PiUvb=)|Qdg.;=le5J2KC".L_,XZDZI;um
Y(71}8l/|qj..m=We[]du);*&q,|_m5%2G%>IO#gkh)T4{EPa_RtjBRMau2D;(r6m\Lm
Y3
Faces could take this and turn it into a small 48x48x1 (Blit ikon) black and white image of Albert and display it. If I remember my history on this (and James can correct me if I get it wrong), the text above is a compressed representation of the difference between Albert's face and the "average" face created after combining numerous initial samples.
This compression and decompression to/from an image into a string of text in the X-Face: header lines was created by James Ashton, then a student at University of Sydney. See his link for more details on this. Urge him to create a color version. Even though he might have doubts, I think there is a useful need for such a thing and the reasons that are slowing him down aren't really relevant anymore.
Here are some galleries of screenfuls of X-Face's. [1] [2] [3]
You can find a great collection of X-faces (plus the X-Face: lines they use) here.
An incredible amount of software was created to use the picons and X-Face: file format. This included conversion utilities to get your favorite image to/from the formats supported by faces and the other similar software.
Here's an image of a message with an X-Face: in an Emacs mail reader(in Japanese).
There are even some enhancement requests in the Mozilla bug database to add X-Face: support (including patches to do this) [1] [2] [3]. The oldest one actually looks the most promising, but I've been seeing this for several years with no commitment by the Mozilla owners, so don't get your hopes up.
The original version of faces at the end of the 80's, early 90's had support for a lot of different graphical toolkits at that time. One of my favorites was the NeWS implementation (initially suggested by Heather Rose and enhanced by Andrew Nicholson and Pat Lashley) which read a file.ps file containing the PostScript code to display for the image. Alert readers will recognize that you could easily provide animation this way.
Then in 1992, I got interested in other things, and Chris Liebman took over for a while with a slightly different faces-like program called xfaces
In 2001, I decided to bring faces upto date. The latest version is a GNOME/Gtk+ program that uses automake and autoconf (thanks to John Kodis) and adds in support for the XPM graphics format and POP and IMAP remote mailbox formats (thanks to Robert Adams).
Numerous other people have worked on faces over the years (including Sun folks like Hal Stern and Rich McAllister) for which I'm very grateful.
If you are interested in this latest version, you can get the source code from here. Again, it's not being actively worked on, but it should be stable and useful.
|
The plan for today was to go to Capitola, a seaside resort near Santa Cruz in Northern California, and to do some fossil collecting. Daddy was looking forward to it, but our son Duncan was lethargic about the whole thing. I'd done a bit of research. I'd looked at the pictures ( [1] [2] [3] [4]), so I'd have a rough idea where exactly to go, what to look out for and be able to recognize a fossil if I tripped over it. It was the first time I've ever taken a hammer and chisle to the beach. Or a 3 inch paintbrush for that matter, but I was ready! |
I'd never been to Capitola. My wife thinks she might have been here maybe 25-30 years ago, but hardly remembers it. I googled about to try to find out more about it and came across these great shots of Capitola when El Nino was hitting them in 1998. Here's a photo of the brightly colored "beach houses" right on the sea-front. Here's some awesome panaramas.
I looked up when it was low tide today for the Santa Cruz, Monterey Bay area and we arrived just before. Obviously not low enough to get across to where the fossils were though without getting our feet wet and having doubts whether we'd get back at all.
I suggested we just have some breakfast at the restaurant at the end of the pier, then play on the beach and then look around the city centre. The restaurant comes complete with pigeons that have absolutely no fear of humans and happily peck away under your tables as you eat, picking up any crumbs you drop. The beach had lots of interesting rocks, seaweed, shells and such stuff. Enough to fill the Ziplock bag I'd bought for the fossil collection.
In short, I was a tad disappointed that we didn't go fossil hunting but our son had a great time. We can always tell when we've achieved success as he'll crash within 5-10 minutes of getting in the car. By the time we were on highway 17, and heading home he was snoring away in the back seat.
I will continue to dream of finding fossils...
|
A little while ago, when I was doing some Lego Mindstorming as part of a mentoring project here at Sun, I went to this site for inspiration. There are some truly amazing creations here. My particular favorite is the Rubix Cube solver |
I was lucky enough to be working for ICL Dataskil in Reading, England in September 1979 in the same group as Colin Cairns and Dave Griffiths at the time they generated one of the first solutions to the cube, published as "Teach Yourself cube-bashing". I still have the three photo-copied pages showing the three types of moves you needed to memorise (the Jelly Roll Morton was my favorite). I used to be able to solve the cube in 10-15 minutes. No records broken here, but it felt good!
Finding that the cube can now be solved using Lego and a couple of Mindstorm RCX bricks is very deflating to the ego.
I'll admit I buy and read mostly books from library booksales, but occasionally I'll fork out the money to buy a brand new hardback if it's one of my favorite authors. Neal Stephenson is on that short list (which also includes Lois McMaster Bujold, Iain M. Banks, Barbara Kingsolver and J.K. Rowling).
Quicksilver is the first volume in the Baroque Cycle. It was released last year, but it's been sitting on my bookshelf because it's huge and I wasn't sure I was going to find the time to read it in close to one sitting. When Confusion, the second volume in the series came out in April, I thought it was time to start the first one. Note that the third one (The System of the World) is planned for September this year. Last night, I finally finished Quicksilver. I just don't get the concentrated reading time anymore.
And you really do need it for this book. Quicksilver is 944 pages with dozens of characters and contains maps, geneological charts and drawings of geometrical proofs. Luckily there is a Dramatis Personae at the back of the book to keep track of all these people, but even that is 11 pages long.
Stephenson even parodies himself over the length of the book in the dialog between characters on p720:
APTHORP: My word, is that the cornerstone of a building or a manuscript?
RAVENSCAR: Err! To judge by weight, it's the former.
APTHORP: Whatever it is, it is too long, too long!
WATERHOUSE: It explains the System of the World.
APTHORP: Some sharp editor needs to step in and take that wretch in hand!
But the thing is, I don't believe it needs much editing. I found it engrossing and am now looking forward to reading the second volume to find out what happens to the main characters.
So what's it about? I suggest reading the Editorial Review here. That sums it up just as well as I could. Note that the first volume contains three "books" and by the end of the volume all the characters are blending together nicely.
What I find slightly frustrating is knowing where history finishes and fiction starts off. It's set in the late 17th, early 18th centuries against the backdrop of history in Europe and America. It clear that the major historical events are correct, but the fictional characters in the book are directly influencing history. Now that obviously didn't happen, but where is the dividing line. Did William of Orange go sand yacht racing on the beaches in Holland? Did sand yacht racers even exist then? I don't know.
Yeah, yeah. I should just treat it like a novel, but a part of me is really enjoying this because it's bringing history alive. Much better than reading those dry old history books when I was at school.
I'm also enjoying Stephensons ability to drop current words and phrases into this period. Canal Rage and lap-desk computer for example.
In short, unless you've got a life threatening disease and aren't sure if you've got the time to finish this (and the other two volumes), I highly recommend it.
|
Or at least have a bike like his. If you're like me, you've been following the 2004 Tour de France and seeing if Lance Armstrong can win it for a record breaking sixth time (in a row). Here's a good place to do it online. Now Lance is a unique guy, unbelieveably fit and powerful, but the bike he uses does matter. Fractions of a second here and there make all the difference. To help him with this, he get's his bicycles made for him by the Trek Bicycle Corp who use state of the art technology to design their machines. See this eWeek article for more on this. |
|
I've just finished reading another Communications Arts magazine, this one from January/February 2001. One of the articles is a special on Singapore advertising by Michael Mazza. To quote from the article:
|
Some of them are hilarious but I've been unable to find them on the net. I have found the advertisments for Toyota Corolla for overprotective parents.
Other instant classics are for Panadol Menstrual, Junior Scrabble and the British Council ad for English language courses.
|
It was another good haul at the library book sale in Palo Alto yesterday. I bought several books but mainly I concentrated on magazines that were 5 cents each at the half price sale in the bargain room. Mostly ones and twos of a particular magazine but I did get a box of about 50 Smithsonian magazines from circa 1987. My wife subscribes to several magazines, but of the ones she gets the Smithsonian is my favorite. She's only been getting it for a year or two so buying these older issues was a real find. |
What I have noticed though is how they've changed over the years. An issue from 1987 was 216 pages with several articles running for 8-10 pages. Compare that with an issue from 2004 which is 110 pages, and most articles 4-5 pages long.
It's the same with Scientific American. In the 80's I used to subscribe to that magazine when I lived in Australia. When they changed the format and thinned it out, I stopped. I picked up two Scientific American magazines yesterday. The September 1964 issue (it was a special on Mathematics in the Modern World - how could I resist) has 274 pages. The October 2002 one has 110. In the older issue there were length articles usually where the emphasis was on the text with a few illustrations that consisted of a small number of colors. Occasionally there were full color photos. The new format is shorter articles, much less technical, more color photos and illustrations and more emphasis on additional reading pointers on their web site.
And the same story is true for National Geographic. Yesterday was the first time in my life that I've ever bought a copy of that magazine. It was only because it had an article on Mars in it. It was 132 pages long with short articles and lots of photographs and images. I know older issues of this magazine were much thicker than this with longer articles.
So why has the format changed? I'm guessing the reasons are cost and trying to popularise their magazines by attracting a more general audience but it sure looks and feels like they are dumbing them down.
Companies now are more profit driven. You have to think of the bottom line so if you can reduce the cost and still sell the same number of copies, then you're making a bigger profit. Basic Business.
I'd hazard that the articles are smaller to better cater for the attention deficit syndrome most of us have in the modern world. So many things vying for our attention, that our minds want to be moving on to something else. Don't make the articles too wordy when a picture can show the same thing. Don't make them too technical or contain too many facts when most of the population don't want that. They'd prefer to look at the pretty pictures.
Luckily all three of these magazines are good at supplying pointers to more reading matter and it isn't hard to get down to the depth that will satisfy you if you are willing to check out some additional books at your library or do a bit of surfing.
And when I can find and buy these magazines (both older and newer) at 5 cents each, I'm not really complaining.
|
That's her. Her name is Dusti. She is a very sweet 4 year old Norwich terrier mix. Smallish (approx. 12 pounds - we have a cat bigger than this), smart and is very playful and loveable. She already knows how to use a doggie door (one less thing I have to worry about) and is completely housetrained. She just loves children. Her foster mum described her as the "perfect dog". She is not a barker. She loves to play hide and seek, which is really cute to see. She's already been hit with a spade so we don't have to worry about that operation. She is also good with cats (although I've yet to see this as she chased one of ours around the house when she came home with us and they first met). |
My wife Lynea deserves all the credit for this. She found her through Petfinder.com. Just used the Quick Pet Search facility on their home page. She was in a foster home in Santa Rosa (about 50 miles north of San Francisco which is about 97 miles from us). We made a few phone calls. Sent a couple emails, then arrange for a visit today. We travelled up there this morning (about two hours each way). The foster mum had four dogs in the house (two of her own and two of them to be adopted, one being Dusti), two cats, a guinea pig and some bunny rabbits. Everybody seemed to get on just fine. Dusti and our son Duncan bonded, then it was just a case of putting her in the car for a ride home with us, and that was no problem at all. I've never seen such a friendly dog.
The only thing left to worry about is our two cats and Dusti getting on okay together, but I think that's solvable within a few days assuming we aren't totally stressed out before then.
Phew. Am I glad this doggy hunting is over and we can all now just try to settle down together.
|
Being in the Accessibility Program Office at Sun, we care about whether you can completely control your computer just using the keyboard. Especially if you are logged into a graphical desktop. Some people unfortunately can't use a mouse, so if they don't have the ability to do everything via the keyboard, then their desktop is inaccessible to them. |
But it's more than that. If you are a power-user, you are going to get things done quicker if you are just driving via the keyboard. If you are advancing in years, then repetitive stress injury is probably a major concern to you, and you can partly relieve this problem by avoiding the mouse/keyboard dance.
This is where it gets interesting. You have several different sets of keyboard shortcuts you need to know.
At work I use Solaris. The Java Desktop System to be exact, which in turn uses GNOME. I use Windows 98 at home and I also have an iBook running Mac OS X that I carry with me. On those platforms, as well as running native applications, I also run Java Swing applications and Mozilla.
Here's a few pointers to the various keyboard shortcuts:
Now there is a lot of similarility but it's frustrating the small differences you need to remember. Also, the Mac OS X folks have a little work to do to get their basic desktop completely accessible via just the keyboard.
So unfortunately I can't give up my mouse just yet.
[Technorati Tag: accessibility]
|
Do your kids (or you) like playing with LEGO? Do you wanna do it online rather than buy yet another tub of bricks? Here's a site that lets you do exactly that. From creating a look for your Mini Mizer, to building your blockhead to LEGO Tarot cards plus articles on how to build some special designs, plus more! This site is the brain child of Chris Doyle. Congratulations on a very interesting site (and you thought I was going to write "reasonably clever" here didn't you)? |
|
It's always good to find online, resources that would otherwise be hard to track down. One such find is the archives of Edsger W. Dijkstra at the Universitry of Texas. This web sites contains countless links including videos and an outline of Dijkstra's career, from the Symposium Program "In Pursuit of Simplicity", which took place on his birthday in May 2000. |
|
I'm now at the point where I need to start fixing bugs on the large Java application code base that I've inherited. Today, I downloaded and installed Global to help me with this. It's a source code tag mechanism that works with C, C++, Yacc, Java and PHP4, and you can then use the results from the command line, your favorite editor, or your favorite web browser. |
Nowadays, with all good software, I expect to just be able to download it, unpack it, and then change directories to where it was unpacked and just run:
% ./configure % make % make install
to configure, build and install it. On Solaris you have to substitute gmake for make but apart from that it went fine.
What was a pleasant surprise was how simple and straight forward it was to use. There are two programs I wanted to run:
What was such a pleasure (and it really shouldn't be something I have to comment on) was that both programs required no command line options by default to produce useful output. Why can't all programs be like that?
There is also an online tutorial which makes it very easy to get up and running with these useful tools, and a mailing list complete with online archives if you get serious with it. There is also a load more functionality beyond what I've mentioned here for advanced users.
There are several other cross-reference tag programs out there, but this one was easy to install and simple to use and met my needs.
|
A pointer to this came from one of the self-promotion articles in Interactive Design Annual 6 as featured in the September/October 2000 edition of the Communication Arts magazine. It showed off an Audiovisual environment created by Golan Levin when he was at the MIT Media Lab. It's a performance medium that merges paint programs and musical instruments. It looked fascinating on paper, but that didn't really show off what it could do. A little googling took me to Golan's home page at the MIT Media Lab (note that he's moved on to Flong now). |
There is a lot of great stuff there presented in a very appealing way, but here's the link to AVES, the AudioVisual Environment Suite. There are numerous samples there of how the environment works but a good starting point to understanding what's going on here is the Yellowtail movie.
For a live performance, check out the Scibble Concert. Now they are not Devo or the Blue Man Group (I had a vision of a group of Steve Jobs clones) but it was interesting. This feels like a new medium that people are just experimenting with. There are no audiovisual classics using this yet (at least not that I found or recognized), but a lot of potential for a new art form.
[Technorati Tag: Visualization]
|
LEGO is one of those companies I truly admire. They've reinvented themselves numerous times. They are always current and they've generated a community of users around their products. There are numerous freely available tools to help you work with LEGO and to allow you to share your ideas and visions with others. To make this happen there has to be standards. One such standard is LDraw |
Quoting from there web site:
LDraw is an open standard for LEGO CAD programs that allow the user to create virtual LEGO models and scenes. You can use it to document models you have physically built, create building instructions just like LEGO, render 3D photo realistic images of your virtual models and even make animations. The possiblities are endless. Unlike real LEGO bricks where you are limited by the number of parts and colors, in LDraw nothing is impossible.
This web site is the central reposity for all thing related to LDraw.
The site has pointers to books describing the standard and the numerous tools built around it. There are also links for tutorials, the specifications and software downloads.
Here's the model of the month and the scene of the month.
LEGO has certainly come a long way since I played with it when I was a child. Now I get to play with it all over again with my five year old son. Yippee!
|
Being in the Accessibility Program Office here at Sun, and therefore on the lookout for anything that can help our blind users, I just couldn't pass this one up. Cory Doctorow at Boing Boing posted a blog entry entited "Braille t-shirts with anti-groper countermeasures". Here's a link to the referenced web site. Naughty but nice. |
[Technorati Tag: accessibility]
Today though, I decide to try VNC, TightVNC to be exact, and I'm very pleased with the results. I initially connected as mentioned above, remotely logged in and started a VNC server going on my Solaris box.
I downloaded and installed the TightVNC viewer for Windows and fired it up. I entered my remote host name and password that I'd configured and I immediately got a large window with the dtlogin login screen. I filled in my user name and password and I'm displaying my Solaris desktop.
I'm running over a 384KB line and it feels quite responsive. The rendering of some of the icons is a bit klunky but I can live with that. If I ran the local PC in 24 bit color, this problem would go away.
|
A big thankyou to Torrey McMahon for the pointer to w.bloggar ("the best interface between you and your blog"). This is just a quick post to point others in the same direction as it seems to work nicely with the roller setup on blogs.sun.com Of course, if you don't see this, then I was wrong. |
|
The recent posting by David Pescovitz on the "birthday" of R. Buckminster Fuller, the creator of the geodesic dome reminded me of this company up in Berkeley that sell kits for building your own geodesic dome home. When we were thinking of moving last year, so that we could get a good school for our son, we considered all possibilities in what our new home should be including a dome home from Timberline. |
Their web site is very comprehensive. Plans come in a variety of different configurations. We ordered their planning package and video just to get an idea of what was involved. In the end we decided against it because of the "open space" configuration. We were looking for places in a new house where quiet study could be accomplished without too much effort. The geodisic dome shape doesn't lend itself to that.
Still, this might be interesting to others looking for a cheaper form of housing and an alternate life style in areas like the San Francisco Bay Area where land and property are ridiculously overpriced.
[Technorati Tag: Architecture]
Using Settings -> Pages, I edited by Weblog page and added the following lines to the sidebar
|
If I can't get a Stave jigsaw puzzle then the least I can do is find a good place to go online to fulfill my jigsaw craving. This place seems to be Dotty's Virtual Jigsaws. Everything from Jigsaw Reviews, online jigsaws, free pictures to pointers to other online sites. I spent a little while here, but ended up going to Jigzone, "the place on the internet for free online jigsaw puzzles". What I liked here was that the jigsaw pieces weren't the traditional shape. |
I'm still looking for an online site that throws the pieces onto the screen in any position (instead of automatically being correctly orientated), and therefore forces you to rotate the pieces before you click them into position. If anybody knows of one of those, please comment.
|
I loved that show. Where MacGyver would make things out of nothing. Weapons of mass destruction from fermented fruit and the insides of three toilet rolls. An amphibious vehicle from an old abandoned ice cream truck that somebody had left the keys in. A slight exaggeration, but you get the idea. I like it when I can apply the MacGyver touch. |
Last week, at the library "book" sale we also got a 4x4x4 3 dimensional tic-tac-toe game for $1.50 made by Checkline. Unlike books, which are usually in good condition even though they are cheap, you've got to look twice with the games and puzzles because there is usually something wrong with them.
In this case there were about a dozen places where the little plastic mounds (that are used to attach the legs between the different levels) had broken off. I was able to take some pegs from my sons light peg board toy, cut them, then goop them onto the levels and everything worked fine.
Nice to be able to easily fixup something that is broken and make it as good as new again. Of course, I could just go to an online site such as this one and get an equivalent overall effect, but it's not the same. And I've got the cut finger to prove it.
Now I need to teach our five year old son to think in three dimensions.
|
Almost finished reading all the Communications Arts magazines I got at a recent library book sale. This post is based on an excellent article in the May/June 2002 edition (which interestingly doesn't seem to be available from their online store) about TED, entitled "Meme Machine" by DK Holland. |
TED is an annual Technology, Entertainment and Design conference held in Monterey, California, that brings together the movers and shakers in those industries (by invitation). Each speaker gets 15-20 minutes to present whatever it is they want to present. The audience typically either have presented in previous years, or will in the future. Lots of smart people. During the conference period, there are lots of opportunites outside the presentations to interact with your fellow TEDites.
To get a feel for this, I suggest watching the two videos, "Welcome to TED" and "Taste of TED" on this page. More on the history of TED here.
The article was concerned with the possible demise of the conference because it was the last conference for the founder, Richard Saul Wurman. Looking at their website, it looks like those concerns were unfounded.
What interested me from the article most was the sidebar entitled. "Top TED Moments of All Time" composed by Holland and a few of his other TEDsters.
I'm quoting it in it's entirety here, plus adding a few links (where I could find them) to help people like me, who weren't there, to appreciate it better.
[Technorati Tag: Entertainment]
|
My wife Lynea ordered the Canon Powershot A60 digital camera from Amazon last week. It's on sale at $139.94 (plus tax where appropriate) which is a really good deal if you don't want the latest and greatest. It's not top of the range by a long shot, but it's enough to satisfy our needs. |
|
I've just downloaded the software that comes with it on my iBook and tried it out. They include PhotoImpression and VideoImpression from ArcSoft which are quite nice. For both Macintosh and Windows. I took a picture on our son Duncan (being his usual cooperative self) with his new dog Dusti. I then saved it 1/4 size. Certainly good enough for blogging. |
Now I just need to read up on all the oodles of features that the camera and the software have. But that's for another day.
|
There is an online version of a recent interview that James did with eWeek. It's nice and frank. I like that. When he's talking about some of the stuff he did at school, I had to do a double take. Did I just tab to another web page in my browser by mistake? Nope, he really did say that. Topics covered include security, alternate languages on top of the Java VM, high performace computer, aspect-oriented programming, scripting, annotations, the Eclipse project, open-sourcing Java and back-burner projects. |
And don't forget that James blogs away here, when he's not going to meetings or too busy with other things.
|
I was aiming to send this out for my 100th post to my blog, but I lost count. I realise this is a pitiful total compared with some bloggers who have been doing it for years, but you gotta start somewhere. So why do I post? Overall, it gives me an opportunity to share things with others. I've been working for Sun for a long time and in the computer industry for a lot longer than that. I'd like to share some of the experiences I've had and the little snippets of information I've collected along the way. |
Sometimes this is work related although at the moment I'm involved with things that haven't been released yet so I can't really talk about them. So instead I'll blog about things that interest me. Maybe they'll interest others, I don't know. I try to write in a style that will hopefully make the subject interesting and appealing. This is good practice for the writing and communicating that I have to do as part of my job.
For most posts (this one probably being an exception), what I try to do is provide enough hyperlinks so that if somebody is interested they can go off and find out a load more information. Since taking an interest in blogging about three months ago, I've seen so many posts which are okay, but which could have been great with just a little more research and effort by the author to allow the reader to easily go off and explore the subject further.
In composing the post, I also try to increase my knowledge. It's never too late to learn something new. We should all be doing that every day.
I've found that since our son has been born, I'm renewing my interest in a lot of things I haven't bothered with since I was a youngster. I've also taken an interest in a load of new stuff too. I don't like saying to him "Sorry, I don't know" when he asks me a question. I'd rather try to find the answers to the questions he asks. Nowadays, with the Internet and search tools like Google, this is easy. Then I've got to try to word it in such a way that he understands and is interested (he'll be six in August). That's quite often the hard part. If I can do it for him on the things that interest him, then I should be able to do it for those who read this, on the things that interest me.
Sometimes it's cathartic. To just rant talk about something
and get it off your chest. Sometimes it's just to get an opinion out there.
Also, sometimes when I see somebody else has a good thing, I question whether it would
be a good thing for Sun too.
Sometimes it a lead up to a question that I want to ask. I've had some great comments from folks who have answered these questions and that had then allowed me to use and enjoy something I didn't know existed before. Blogging is a two way thing. Everybody should benefit.
Life is short. I don't want to be bored. I want to find and do new interesting things. This blog has been such a thing and also an enabler for other interesting things to come.
|
Did you ever want to control an electrical device remotely over the Internet? Paul Mathis let's you do it at his place. Lots of devices. Give it a try. Let's see if his server can handle it (sorry Paul). I discovered this site about a year ago. It's great. Here's why he does it. Let's all drive him insane! |
If you want to wire up your doorbell to the Internet, here's how
What I find interesting (and I'm not sure what it says about me) is that after visiting his site, I always turn off any lights I've turned on. Now if I could only get my son to do the same thing.
|
Yesterday I was working with somebody who'd added some code to one of my programs. The feature was great; something that had been needed for a long time, but the code was not written the way I would have written it. Fair enough. Everybody has their own style. The number of spaces you use for indentation, where you put blank lines and whether you use curly braces irrespective of whether the if/for/while clause only has one line or not. |
But I thought the use of goto statements and labels in simple routines that really didn't need them was something that should be avoided like the plague. The other person politely disagreed. So this got me thinking. Is my coding style out of date now?
For the goto concern, I remember reading a paper by Dijkstra called "Goto considered harmful". Is this still relevant? I think so. Now this programmer I'm working with is young (still going through school) so perhaps this isn't something that's taught nowadays. Do universities care about the code style that their students use or just the end results and whether the student understands what they did?
Is there a general malaise in code quality nowadays because most programmers are generating their code inside an IDE? I'd like to think that IDE's could now produce readable code. I was certainly told that for a presentation of Rave (sorry Sun Java Studio Creator) that I went to recently.
What should programmers be reading and working with now to generate good code? A classic when I started was "The Elements of Programming Style" by Brian Kernighan and P. J. Plauger. Kernighan did a followup with Rob Pike called The Practice of Programming where they updated the ideas in the original book.
Then there are design patterns. The classic here is the one by Gamma et al though nowadays it's hard to know what you should be working from as there are so many other design pattern books.
There are tools like Javadoc for auto-documenting your Java code and making it more readable. There are similar tools for other languages. Everybody should check out the Literate Programming web site, based on the teaching and ideas of Donald Knuth and summarised in his book.
But most of these come from ideas and research that is over ten years old. Is this the state of the art now for writing good code? Are new publications in this area just reiterating the same old ideas. Should we be looking at things like UML and Aspect Programming to take over where these left off? Where do programmers go to get ideas on what is good coding style nowadays?
I'm interested in the thoughts of others on this. Please comment.
|
This one is definitely worth sharing. |
The original pointer to this came in an article in this weeks email from Ziff Davis
eMachineShop is where you can design, price, and order your custom parts online!
To quote their webpage:
eMachineShop is the remarkable new way to get the custom parts you need. Download our free software, draw your part, and click to order - it's that easy! Your part will be machined and delivered. Even better, your cost is low due to the Internet, software, and automated machines.
Here's a pointer to the demo (really a web page with images describing the process). Pricing information can be found here.
It's a free Windows download. I haven't tried it yet. I've no idea how good your mechanical engineering skills need to be, to enable to drive this. Their general FAQ does suggest you do need basic engineering skills. They do supply a free audio training guide though. I did do technical drawing at school over 30 years ago. I wonder if that would suffice...
For small companies wanting to prototype something cheaply, this would seem to be the wave of the future.
[Technorati Tag: Mechanical Engineering]
|
A little while ago I wrote about "Beyond Photography" a book by Gerard Holzmann which describes a program called pico, that allowed you to manipulate digital images using a special mathematical language. Back in the late 80's, early 90's Stephen Frede and I wrote a freely available equivalent of the version described in the book, and also added a load of extra features. |
In 1991, Eric Haines pointed me at a paper that was given at the recent SIGGRAPH by Karl Sims entitled "Artifical Evolution for Computer Graphics". As I was living in Australia at the time, and couldn't really afford to buy a copy of the very glossy proceedings he was kind enough to photocopy and mail me the paper. Since then, I see it's online in all it's resplendent glory.
This was great stuff. I was blown away by the wonderful graphics you could evolve from simple expressions. (Also check out some of the other wonderful links off Karl's web site - such as Steven Holtzman's Digital Mosaics or Craig Reynolds Evolutionary Computation page or this if you like puzzles). You could spend a life time just playing with this stuff.
Alas this was going to be yet another of those projects that I would never find the time to realize. But nowadays, I don't have to start from scratch. There is lots of different software that creates artifical life, including SBART developed by Tatsuo Unemi which is a design support tool to create an interesting 2-D CG image based on artificial selection (which was what Sims originally proposed as Artificial Evolution).
The source code for SBART (written in C and using Motif) is available. Also binaries for a variety of platforms. Nowadays it looks like the author in concentrating on Carbon graphics on Mac OS X.
Tatsuo Unemi has a lot of other interesting things on his web site. One
that caught my eye ear was
SBEAT
which is a composition support tool to create short musical phrases and
rhythms based on artificial selection, similarly as SBART.
Here's a
sample tune. Very impressive.
Lots more new things to try in my copious spare time.
|
When I became a U.S. citizen a few weeks ago, I immediately handed over my citizenship certificate so that I could apply for a US passport. The passport (and the returned certificate) arrived in the mail yesterday. This is the third country I've had a passport for. I let the Australian one run out in 1996, and I'll probably let the United Kingdom one run out in 2010. |
I compare the first time I needed to use my passport against the first time we needed to use one for our son. When Duncan was born, we wanted to go to England so that his grandparents over there could meet him. We got him a US passport when he was three months old. There is a great picture inside of him being held up to the camera with a dazed "what's going on here?" look on his face and my wifes two arms extending out of the frame. It really is silly. I challenge any Homeland Security person to nowadays recognize our son as the person depicted in that photo. When he was seven months of age, we flew from San Francisco to Heathrow (and returned again two weeks later). A 10-11 hour flight is bad enough if you are a grownup. Try it with a baby. I have a complete new respect for all those parents I used to hate on flights who couldn't keep their young children quiet. It's really hard.
Now my first use of a passport was when I was 25 years old. It was also the first time I'd ever been in an airplane. I was working for ICL in England on the Perq, a graphics workstation that was a forerunner to Sun (when the only competition was Apollo). I'd been asked to go over to a conference being held at CERN in Geneva, Switzerland to show off this large FORTRAN graphics and charting package I'd ported to the Perq whilst I'd been working at the Rutherford Labs up at Oxford for the previous month.
So passports were new to me. The whole airport experience was new to me. But I struggled through. I was picked up at the airport in Geneva by Ian Withers who suggested that we go over to France for lunch. Sounded good to me. CERN by the way is on the border of Switzerland and France, with exits into both countries. So he drove in the Switzerland side and drove out the France side with a cursory flash of his CERN badge to the security guards and absolutely no identification check for me.
Try that nowadays. Bet you can't do that anymore.
|
No, not the operating system from Apple. This is about the city in the north of Australia. I was talking with a colleague at work last week. The conversation turned to talking about remote places and I mentioned that once on a trip from Melbourne to Darwin, we had an intermediate stop in Alice Springs. |
Alice is in the middle of Australia. It's where you'd probably land on your way to Ayers Rock, one of the big tourist attractions in Oz (complete with it's own luxury hotels). But that's two hundred miles away, further into the middle of nowhere.
But Alice Springs airport is small. Or at least it was when I went through there in the mid-80's. The kind that when a plane lands, they drive up with the vehicle with the steps on the back that you use to deplane and then walk a hundred yards through the blazing heat to the terminal. The day we were there, there was even a tumbleweed bouncing over the end of the runway.
Then we went on to Darwin. Here's where it is on the map. Hot and humid when we were there. It probably always is. Four things left a deep impression on me:
|
Here's something that will give your kids minutes of enjoyment and get them out from under your hair. It's making balloon animals. At yet another library book sale, I picked up a small book giving the basics on how to create balloon animals and showing step-by-step instructions for making several of them. Okay, this looks easy I thought. I bought a bag of the long thin balloons at a local party store and tried to blow up my first balloon. |
A word of advice here. Buy yourself a pump to inflate the balloons unless you want to see the inside of a hospital room really soon. Those professional balloon blowers you see at some restaurants. They've had special surgery so they can blow those balloon up and make it look easy. Using a pump would make them look like wimps. You and me. We aren't like them. Get a pump.
This morning we made an octopus and a wasp. Of course the wasp could have been a dragonfly or a small bird. It wasn't clear until I'd added a few markings.
This page seems to be a good online starting point if you are interested in all this. You can start with a simple dog. They even animate it just in case the instructions weren't clear. They also have a great gallery of balloon creations too.
And if you practice and practice, pretty soon you'll be making everything out of balloons.
|
After the huge book I'd just finished reading previously, I wanted something shorter this time, so quickly picked this, off the bookshelf by the bed, full of the books I haven't read yet. Here's a pointer to the Amazon editorial review, which gives a good overview of the book. I've read John Barnes before. I really enjoyed Orbital Resonance and A Million Open Doors so I was hoping for something entertaining here. The customer reviews on Amazon were mixed. You either loved it or hated it. There seemed to be no middle ground. Now I can see why. |
The story is well written but is violent and repetitive. The main protaganist is somebody I just couldn't like and unless the book is something very special, that's a big mark in the negative column as far as I'm concerned. There are some great ideas here although the timeline for when they are likely to happen seemed suspect. Yes, I know it's science fiction and was written in 1995, but the author expected a lot of great things to happen really quickly. War does accelerate knowledge and invention, so as this book is a continuous series of wars, maybe he isn't so far off.
Barnes realizes when he has on to a good thing though. I see that a couple more [1] [2] have been spawned off the ideas and themes in this book, the last one (so far) with good reviews. Maybe I will revisit this universe (if the anti-hero in this book isn't in it), but it won't be for a while.
|
Over the latest week or so, I've been reading an old copy of Utne Reader from March-April 1997. This is a magazine of the Best of the Alternative Media (that I'd never heard of before - shame on me), and I picked up 4-5 issues at a library book sale. |
Lots of great stuff (and I'll blog about some of it in the future), but this Compass factoid caught my eye.
When Hong Kong joins the People's Republic of China this summer, the number of people living in British colonies worldwide will shrink to 168,075 - roughly the population of Dayton, Ohio. In 1944, the British Imperial Possessions included 40 countries and more than 760 million subjects.
This is in the past of course and no doubt the British Empire has lost a few more people since 1997. I have a vision of a future map with just a small pink dot off the coast of Argentina.
Click on the map about to go to a very interesting site depicting the history of the British Empire, undoubtedly the largest empire the world has even seen covering one quarter of the worlds surface at its height and where the sun never set. Did you know that maps always show the countries of the British Empire in pink? You don't need much pink anymore.
Oh how the mighty have fallen.
|
Calum blogged about this a month or so ago and I was finally able to release today, the new version of the GNOME desktop calculator that will hopefully be in GNOME 2.7/8. |
The big new feature here is arithmetic operator precedence. What that means is that the significance of the arithmetic operation is taken into effect before doing the calculation, rather than just working left to right which is the way it worked before (and is still an alternate mode with this latest version.
Here's a couple of examples:
With arithmetic operator precedence:
1 + 3 * 4 = 13
Without arithmetic operator precedence:
1 + 3 * 4 = 16
Here's more information on exactly what's in this new release. At the moment, you just get a compressed source tarball that you'll have to build yourself, but hopefully it'll be soon available as binary RPM's and in future Linux and Solaris distributions.
|
I always appreciate it when somebody tries to explain a complicated subject in other terms that people hopefully better understand. In the September/October 1997 edition of Utne Reader political theory is explained in terms of cows and milk. Very enlightening. Nice to see that somebody has typed it all in here so we all can enjoy it. My favorites are "Hong Kong Capitalism" and "Surrealism". |
|
I've been thinking about this for sometime, and the post yesterday by Bill Moffitt inspired me to get my ducks in a row and release this. I'm not trying for a religious war here - which is the best operating system/desktop/ hardware. I'm trying to look at the bigger picture. From the start of the 1980's, I'd use whatever computer the company I worked for supplied me. Sometimes I'd have these computers at home as well as at work. First I used Perqs, then Sun's. |
Back in 1998, I built my first PC from parts bought at Fry's or scrounged at work. After that, I made one more computer from parts, but it really wasn't worth the effort. After that I just bought one from Dell. I picked Dell because they made it easy and their support was good. I was not disappointed.
The last two computer hardware purchases for me were very different from those previous ones. In February, I bought an ICE-Cube. I wanted something I could easily carry between work and home and was modern. Initially when I bought it, I had a noise problem with the squirrel fan that came with it, and eventually this was resolved by the company I bought it from, with them supplying a pair of small fans as a replacement, which I installed myself. Apart from that, it worked great. I loaded Solaris x86 on it, installed a developement version of the Java Desktop System and was set. The fact that the box looks sexy and has pretty blue lights were a factor in the decision of which machine I bought as I plan to give this machine to my son when he's a little bit older, and he cares more how it looks than what it's got inside.
Then a couple months ago I was looking for a laptop I could take to various meetings at work and something that I could use easily with our wireless network at home. I ended up choosing an iBook for two reasons. Firstly, it looks good. Admittedly the white design shows scuff marks too easily, but they are easy to clean off. The Aqua graphics are gorgeous. I wanted something that "just works" without me having to get geeky and read voluminous manuals and install new drivers and what not. Having used it for a while now, I'd refine that to "mostly just works". The ability to switch effortlessly between a wired ethernet connection and the built-in wireless connection and vica versa is a wonder to behold. I wish all the computers I worked with could do that. It still needs work to get full keyboard navigation. Hopefully that'll be fixed in a future release.
But now, lets move on to what I really want to write about. What should be the deciding factors for future hardware and software purchases for your own personal use?
Should you be buying something that just does one thing well, or a more generalised machine? I think of the gaming market here. There are PC's that can run games well but can be used for many other things. Then there are the gaming consoles that were initially designed to just run games and do it very well. Nowadays it seems that companies are adding more and more features to their gaming consoles that are turning them back into general purpose computers. Maybe they made a mistake and now realize it.
Does size matter? For computers that is. Laptops are everywhere but what is the ideal size and feature set? I've seen screens upto the 17 inch Powerbook and down to the Fujitsu Lifebook 2120 which is 10.6 inches. I have the 14 inch iBook. Interestingly enough this has the same screen resolution (1024x768) as the Lifebook. Is there a sweet spot for size and resolution?
What hardware feature set is mandatory now? What size disk? How much memory? Wireless as well as wired ethernet connection? CD and DVD read and write? USB support (1.0 and 2.0)? External display option? What else?
Is the laptop the future ubiquitous personal computer? PDA's are still popular. You can get more and more functionality on your phone nowadays. How far off is a viable wearable general purpose computer? What about that Starfire vision of computing that Bruce Tognazzini gave us several years ago. Is that the future of personal computing?
What about that connection to other computers? I'm using a DSL line at home running at 384 Kb's that's considered relatively slow by todays standards. Should you consider having just a "dumb" client computer connected to a server somewhere else? How fast does that connection have to be? We've seen lots of different graphical clients from the old Teletype DMD-5620 to X terminals, and nowadays devices like the Sun Ray. The pipe needed to drive modern thin-clients such as this is getting thinner and thinner. Does this mean they are a valid option as a home computer or have PC prices dropped so much that there is no market for thin-clients here?
What should be on your personal computer? Well it depends on who you are. If you like trying out things or taking them apart, then you probably want a fully featured operating system where you can get your hands on the source code and tweak it. If you just want to use your computer to get some job done, then you probably don't care what's beneath the hood as long as it reliably works.
What's the functionality that your personal computer should provide, software-wise? Mac OS X includes applications for:
These are the ones that are initially visible in the dock. There's lots lots more for users who are interested in other things. Having these visible in the dock suggests to me that these are the ones that Apple consider are going to be the applications that their general user is going to be looking for. Have they missed any? Are there others that your typical user can't live without nowadays?
Loads of questions. I don't think there are any simple straight answers but I'd be very interested in your thoughts on this. Thanks.
|
From an item in this weeks email from Ziff Davis, checkout these amazing case mods. Makes my ICE-Cube look like so normal. |
|
George Drapeau (an ex-manager of mine - hi George!) blogs about his experiences in Bangalore, and how the roadsign for "Mahatma Gandhi Road" is abbreviated to "MG Road". |
This reminded me of the name plates outside of our offices. I'm in MPK14 and the name plates are designed so that your name (usually printed on a transparency) can be slide into the holder. My name "Rich Burridge" fits nicely with about an inch of clear space on either side.
One of the other people in this building (whose name I won't mention, but suffice to say that his name fits nicely in with a little bit of room on each side), has made up a name plate for an HP support person (who I presume he's had dealings with) called "Veralugastenne Mudiyanselagerajakaruna". The name extends out the side of the name holder for about twelve inches.
Usually the planning people who put together the Sun buildings do an excellent job, but they obviously hadn't thought that one though. Sorry Veralugastenne. There's no room for you here. Or at least not for your name.
And on the subject of "what were they thinking!". Does anybody else remember the rest rooms in MTV10? They used large black tiles with white grouting. It looked like you were taking a pee on the Enterprise holodeck. Very disconcerting. At least we didn't design and build those buildings in the Mountain View campus. They were rentals, but still.
|
I found this interesting site from a self-promotion piece in the Interactive Annual 8 in the Sept/Oct 2002 edition of the Communications Arts magazine. They show several examples of what the future of interactive design could look like. Some of them still need work. |
The ones I found interesting were:
|
This week I installed Solaris 10 (build 63) on my main Sun machine at work, a SunBlade 2000 (which I don't think we sell anymore, it having been superceded by the Sun Blade 2500 and the new blazingly fast Sun Java Workstations (W1100z and W2100z). I wanted to try out DTrace that everybody is raving about. It was pretty painless. One thing I thought was neat is that while the installation is in progress, there is a browser in the background pointed at the Sun BigAdmin site. |
What I got a real chuckle out of was the image over on the left hand side for the Stay Informed link. It bought back memories of some wierd random photo pinned to the break room wall, where you were invited to attach your witty caption. Just exactly what are those woman saying?
Well I've got no prizes to give away (do I look like Mary?), but I invite you to add your witty remarks as comments to this blog. Keep 'em clean or I'll have to delete them!
And don't forget, if you too would like to try out Solaris 10 for SPARC or x86, you can download it via Solaris Express. The 7/04 version is available here. Dtrace is just one of the new features. There's oodles of others.
|
No way to store this under "Computer Related" and "Books and Films". Oh well. Last week I got Virtual Humans, a book by Peter Plantec, out of the library and finally found the time to look at it today. |
To quote from the back cover:
Virtual Humans lets you create a fully realized synthetic being, complete with personality traits, physical attributes, communication capabilities and useful skills - right on your computer.
Well that, and the fact there was a CD included with the book were enough for me to check it out. I've given it a heavy browse and the reviews at Amazon and their five star rating are pretty much on track. This gives a good introduction to the world of virtual humans. I also loaded up three of the demos on the CD.
I first tried out Yapanda, which is a customizable virtual human engine. I was a little under-whelmed by this. As the book suggests, I fired up the Abe Lincoln character and gave it some simple questions, but the answers were not responsive. Nowhere close to passing the Turing test. I realize this is a demo for the book so they aren't giving too much away, but hmmmn. After going to their website I was much more impressed. Check it out. I wish they'd been allowed to put better content on the CDROM for the book, although there is a footnote stating that by the time you read this Yapanda Intelligence Inc. will have a site setup where you'll be able to go and create your own heads in 3D using photos of yourself and friends. So it looks like it was just a case of bad timing.
I then tried the demo version of 3DMeNow. As the description says:
Simply load one front-face and one profile photo (or sketches or artwork) into 3DMeNow 1.5 and start modeling and animating 3D humans or characters straight away!
Here's a screenshot. Now this was more like it. If I can just use some software without having to consistently read the online help or refer to a manual, then the authors have done a good job. In no time at all I was able do all the things that the demo version offers.
Finally I tried the demo version of Poser from CuriousLabs. Quoting their website:
If you dream about creating 3D-character art and animations, then you need the award-winning Poser 5. Tell your story with ready-to-use virtual 3D actors. Create complex scenes with props and characters, set up lights, then position your cameras to render still images or movies.
This impressed me even more although the demo version was a tad limiting. Here's some images from their gallery.
It's kind of worrying when you also see on their web site:
Please remember to immediately download and install the Service Release 4 for Poser 5 from our website if you are a Windows version user.
I note that the Mac version doesn't need this, so presumably that release came later. It seems to be a sign of the times that software is nowadays rushed out the door for the main development platform before it's fully tested, then there is immediately a set of patches (or four of them) for it. Perhaps it due to the complexity of the software, that this is no longer possible. Surely you should be able to setup a set of automated tests and check for predicted results... Anyway, if you buy now, you would appear to have a stable working version.
[Technorati Tag: Virtual Reality]
|
Another wonderful site from a self-promotion piece in the Interactive Annual 8 in the Sept/Oct 2002 edition of the Communications Arts magazine is Sandstrom Design. Spend a while just browsing what they have to show you there. Take their Client Probability Test. Try their Stupid Design Trick. Checkout their color of the month, and what they consider the greatest designs of all time. |
The pure clean simplicity of this site infused with a great sense of humour,
is what gives it such appeal.
It was a pleasure to waste spend several minutes
hours browsing their site.
|
A friend at work pointed me at Ken MacLeod as a good "new" writer to look out for, and he's right. I've been slowly working my way through his books over the last year or so. The Sky Road is the third or fourth one I've read, and I have The Cosmanaut's Keep lined up to go soon. MacLeod blends politics (and not mainstream politics at that) with very interesting science fiction chock to the brim with ideas. |
The synopsis and Amazon reviews can be found here. Reviews are mixed. It unfortunate that Tor in America released the four books in the series, out of order. That caused no end of confusion. Now I've read three of them, things are starting to make much more sense. The Sky Road didn't leave me wanting more, but it did nicely tidy up loose ends from the previous novels in this series. Good, but not great.
If you are looking for a different kind of SF novel, with a bit of fresh vitality to it, then try Ken MacLeod's books.
|
It's interesting how what you think about some words has changed with the advent of the Internet and the latest computer technologies. For instance, if I write Amazon, most people reading this will immediately think about the online mega-store rather than the largest river in South America. |
Same with Java. You immediately associate it with either the programming language or the complete range of technology built on top of that language, rather than the Indonesian island, or even the slang word for the coffee coming from that island.
So what make a car manufacturer like Diamler-Chysler name one of their concept car models "Java"? First I thought, ooh it's a smart car with Java technology in it. But the writeup doesn't mention that. Then I thought that perhaps Java means something in another language like Buy-This-Now-And-Live_Longer. But I suspect not.
Unlike other words like Mini and Bug, where a lot of people do think of the car first, it would seem hard to make the word Java automatically be associated with this car model by Mr & Mrs Bloggs of Bristol. So why pick it? I don't know, but I'm very curious.
Anybody have any ideas?
I googled around trying to find out the latest on this, and I found this link. Lots more information here but it's still dated. I'm guessing Brian and/or the GeoFleet bike business is no more.
On the subject of different bikes, can any of the old-time Sun employees (with more brain cells than I have) remember the name of the person that used to work here that decked out their special bike with loads of equipment (include Sun hardware)? This was quite a while ago, and it wouldn't be so impressive now as you could probably fit most of it in a small panier on the back of a normal bike. If you have any links to this old bike, I'd love to refresh my memory.
|
Time for a little rant. Haven't had one of those for a while. Yes it's early in the morning and I haven't had my caffiene yet so this might not be my best thinking, but I'll throw it out there, and you all can beat it to death. Or ignore it. I just saw yet another piece of email announce a new release of some software where there was mention of a four part version number. You know. Version W.X.Y.Z. |
Now I've come to understand three part ones.
The first number is the major release number and usually only gets an increment if there's been a major rewrite or huge new functionality added or maybe a new code base but the maintainers want to keep the software name the same.
The second number is the minor release number and usually gets incremented when new features are added. It might even match the minor release number of the software consolidation it's going into.
The third number is the micro release number and usually is incremented when fixes for bugs have been included.
So why does there need to be a fourth release number, (which I've tagged with the name nano)? Did somebody forget to put a period on the end of a sentence in the online help? Was one of the icons using just the wrong shade of green for some of its pixels?
Please enlighten me.
|
I find myself needing to print a stack trace at certain points within my Java application (I'm trying to debug a race condition). Now I did most of my Java programming between 1996-99 and I'm now just returning to it, so I'm hoping that there is a simple answer to this and it's common knowledge for the Java cognascenti. I'm currently using an "old" method I wrote for generating a stack trace:
public final static void
printStack() {
new Exception("Stack trace").printStackTrace();
}
|
But that will print the whole stack trace. Every single frame. I'm looking for a variant where I can pass in an argument that specifies the number of frames I'd like printed. It doesn't seem to be a standard part of the language. Certainly not from looking at the JavaDoc for the Throwable class.
I'm guessing somebody has "been there, done that" in the last five years. Can anybody point me at such a beast? Thanks.
|
As you've probably seen by now, the long awaited
Doom 3 came out
this week. I wonder how many Ziff Davis has a little blurb on it in their email-de-jour. Here are the links: |
The review roundup at Doom3Center has 19 reviews. All from 85% to 100%. Lots of other great stuff about Doom3 there too.
I noticed at the end of the review that you've got to have Windows XP or Windows 2000, at least 384 MBytes of memory, top-of-the-line graphics card and 5.1 surround sound so you can be properly scared out of your freaking mind. Oh joy. Anybody else feel an upgrade coming on? Id Software must be working with Microsoft to help get those recalcitrant users upgraded to the "latest" O/S.
What I felt was the kicker was that there was an "ultimate" graphics mode that you can't use yet, because the next generation graphics hardware that would supply this, haven't been released yet. Or at least not to the general public. Presumably the developers of Doom 3 got access to it in order to create this. Boo Hoo.
As a parent of a young child, I'm not going to expose my son to the frightening monsters from Hell that this game provides. He'd never get a sound nights sleep again. It would have to be one of those secret pleasures that I'd indulge in when he's gone to bed, or better yet, when he is staying overnight with his Grandma.
I also admit I just can't handle twitch games any more. My reactions aren't fast enough.
Wife watching over my shoulder: What was that noise?
Me: What noise?
<Splat!>
I do like the puzzles though. What I want is for a adventure style puzzle game to be rendered using something like the Doom 3 engine. Or somebody to tell me the God cheat code so I can wander obliviously through this world and not get killed.
The book consists of two stories, with a foreword/introduction by Ken MacLeod and and afterword/essay by Charles explaining why he wrote the stories and why they are, the way they are. It's all good. I appreciate the stories being no longer than they need to be. There are too many authors out there writing lengthy tomes that really need pruning before we ever get to read them. Looks like Charles had a great editor or knew when to stop.
He has a blog/diary/website here, so if you enjoy this book, there's lots more fascinating reading (and good links) there to followup with.
|
Ever been obsessed with something? This man was. With snowflakes. His name is Wilson Bentley, and in 1880, when he was 15 years old, his mother showed him a microscope and it changed his life forever. I've been browsing a book called Nature Craft For Kids. It contains projects you can do with your kids using items from Mother Nature. Great book. It's themed around the four seasons, and we've already done the Apple Monstors on page 102. I was getting a chuckle out of the winter section this morning. There is a whole section on snow projects. Fine if you are living anywhere apart from around here. My son hasn't seen snow yet, but we plan to remedy that with a trip to Lake Tahoe at the end of this year. |
But I digress. The book has useful "sidebars" about nature. There's one on Wilson Bentley. After he'd seen the snowflakes under a microscope, he read that you could photograph them. He convinced his father to buy him a camera. Then he taught himself how to photograph the snowflakes. It took him months. He eventually succeeded.
He then spent the next 48 years continuing to take pictures of them. Over 4500 of them. He (naturally, no pun intended) became known as the Snowflake Man.
In 1931, almost half of them were published in a famous book called Snow Crystals. Looks like there is also another book by the same author at Amazon called Snowflakes in Photographs.
I also found this great website dedicated to his work. This is the place to start if you want to know more about this, including this page with lots of useful links to other related resources.
And finally, if you'd like some snowflakes on your computer, checkout this Java applet by Ed Smith.
|
Duncan, my son came over to me a little while ago and asked me if I could identify this "fish". I went outside with him fully expecting to see something the cat had dragged out of a trash can. |
But no. There is a large shallow plant container out the front of our house, and over the last few weeks, excess water from the sprinklers must have stagnated in there with a few leaves and several of these creatures amongst other things.
So I grabbed an empty plastic cup and eventually managed to capture one (they're quick little devils) and bought it inside.
I transferred it to the specimen tray for my sons IntelPlay microscope. I see that Intel are no longer manufacturing it and that's a shame because it's a great introductory microscope for kids.
Anyway, I put the critter under the lens and snapped the image above at 10x magnification. Well, that's the easy part. Now I've no idea on how to identify it, so if anybody reading this can point me in the right direction I'd be grateful. I'm guessing it's a mosquito but I'd love confirmation.
|
|
You may remember that four weeks ago, I blogged about us getting a dog Dusti for our son, to join our household, and my wish that she would be bonding with our two cats, Bob and Sorcha, within days. Hah!
I've now had a dose of reality and realize that this could take
a long time. Picture this. We only see the cats twice a day when they want to be fed. They used to sleep on our bed before. The dog rules the rest of the house. She sleeps on Duncan's bed during the night, then comes in to sleep with Mom when I go off to work in the mornings. She loves the large back yard, keeping us safe from all those feral squirrels out there. |
I'm slowly feeling more comfortable with her. I wonder whether we've introduced a lunatic to the house though. When we all come home, after going somewhere where she can't go, she greets us in a frenzy. Tail wagging I can understand. Jumping up and down at us. Okay. But running from one end of the house to the other until she's exhausted, with an Oh Boy, Oh Boy, They Came Back! look on her face? Hmmm.
Now I'd just like peace in our household. It's really the cats that need to adjust. We took Dusti around to see her "cousins" the other day. My wife's sister and her family have a Westie and an old Siamese cat that's grown up with the Westie. Dusti bounded over to the cat who just stayed still. (Are you listening Bob and Sorcha? You're supposed to just stay still). Dog met cat. A few sniffs later they are best friends and life continues. Same with the Westie greeting.
Now if I can only find a way to get our cats to stay still without spot welding them to the carpet. We've tried introducing them in a closed room. I never realized a cat could jump from the ground to the top of a seven foot bookcase in one bound. And stay there no matter how I try to coax him down.
If anybody has any ideas on how to solve our detente, I'd love to hear them.
|
I heard today that one of our PlanetSun loyal viewers would like to see some articles on OpenStep, so I'll start the ball rolling as I was involved in that project between 1994-1996. |
OpenStep was part of something called Neo - Network Extensible Objects, the follow-on from DOE Distributed Objects Everywhere (pronounced Doh!). It was an attempt to create a standard specification based on NeXTStep from NeXT, plus an implementation of that specification and to provide a desktop environment, similar to the existing NeXTStep one, but with all the applications rewritten to use OpenStep API's rather than NeXTStep ones. Here's a screenshot.
We worked closely with NeXT. Greg McLaughlin, the Sun OpenStep director at the time, fondly recalls many occasions when Steve Jobs phoned him up at ungodly hours to discuss the project.
As you are probably aware, a lot of the ideas and development from NeXTStep and OpenStep ended up in the latest Mac OS X from Apple.
Anyway. Let's talk some history. Stuff that probably isn't known out there.
There were two projects around this time. The first was a port of the NeXTStep environment to run on Sun hardware, and directly on top of the frame buffer. Then there was the OpenStep project as outlined above, that was to run on top of the X11 windowing system, and be able to happily interact with CDE, our desktop graphics environment of the time. This is about the latter one.
Let's throw a few more variables into the mix. NeXTStep, on which OpenStep is based, is written in Objective C. We didn't have Objective C support in the Sun compilers at that time, so there was a small sub-group working on that. NeXTStep is designed to work in a Display PostScript environment, so extra work had to be done to get it to properly render in our X11 environment. Then all the applications had to be ported over, converting NeXTStep API calls to their OpenStep equivalents.
As you can imagine, because of all this, there is an initial bootstraping effort. Everybody is dependant upon everybody else. How do you get started? Well we created two prototyping environments before we fully started in on the OpenStep work.
SideStep: Mark Anenberg created this. Each Sun developer, as well as having Sun hardware to develop on, also had a PC running NextStep so that we could eventually compare results. Mark created the ability to run the NeXTStep apps on the Sun but display them over on the NeXT PC. This really helped kick start the development work.
FootStep: While this was going on, I ported the NeXT Display PostScript runtime environment, to run in a window on top of X11 on the Sun hardware. I hooked up the mouse and keyboard events to their X11 equivalents, and you could then run the NeXTStep applications in this environment.
By the time we had most things working in FootStep, the compiler guys had done their job and the graphics guys had done their job and we started getting the applications to run natively on top of X.
I do remember that a couple good T-shirts came out of this project. The Neo folks (or was it the DOE folks?) created one with the slogan "Drag me, drop me, treat me like an object". The unofficial OpenStep T-shirt showed a man trying to push a large object uphill. I don't have a picture handy, but this GIMP splash screen will give you an idea of what I mean.
[Technorati Tag: Computer History]
|
A few weeks ago, I mentioned that I was trying to find a way for my son to improve his chess game and to play chess against the computer, without getting thrashed by the computer program each time, getting frustrated and giving up. I got some great suggestions. Because of this, my interest in chess has grown over the last few weeks too. I last played it seriously in my teens. I was never great, but I could give my friends a good game. I'd never read a book on chess before (apart from learning the rules of the game), so when I saw this book at last months library book sale for 25c, I snapped it up. Bobby has worked with a couple of educators to present the information in a format that's not only easy to understand but fun to learn. It's one of those books where (apart from the introductory chapter which describes the rules of the game) you just keeping reading the pages on the right side of the book, then when you get to the end, you turn it upside down, and read the other half. |
For a couple of pages, you are taught some new chess strategy, then you try to apply it to some typical chess board problems. The answer to each problem (and an explanation of why this is so), will be at the top of the next page. Good fun and very educational.
My only problem is that the book just teaches end game scenerios. You have to have the pieces on the board in these positions before you can apply the guidelines that Fischer proposes. Easy for Fischer no doubt, but not for us mere mortals. What I need now is a good book that will help me with my beginning and middle game.
If anybody has any recommendations, please let me know.
|
|
A little while ago, Jonathan Schwartz blogged about a cool robot, that can do a lot of things that a soccer player can. Last night I read an article in the October 2002 edition of Scientific American. The free online version of this article above is very skimpy compared with the magazine one, but in short, there is an annual RoboCup robotic soccer competition held each year, where, amongst other things, different teams compete to see who has got the best soccer playing robot. Here is the official web site. |
As their home page says, their goal (no pun intended) is:
By the year 2050, to develop a team of fully autonomous humanoid robots that can win against the human world soccer champion team.
After seeing the movies for the robot that Jonathan pointed out, I can believe that this goal is not that farfetched.
This year the competition was in Lisbon.
Competition is in a variety of leagues:
And finally, if you'd like to simulate these wonderous soccer playing robots on your computer, checkout the RoboCup Soccer Simulator on SourceForge.
|
The title article in the October 2002 issue of Scientific American talks about how hydrogen fuel-cell cars could be the catalyst for a cleaner tomorrow. As well as the sheer brilliance of the fuel cell and the ecological aspects of this (on which the article deservedly concentrates), I was also impressed by the modularization of the chassis. Shoehorn all the automotive systems into a flat skateboard chassis. |
You then have wires, plugs and sockets to connect up to the systems in the separate upper body, like steering, braking and throttling. The article concentrates on the pioneering work that General Motors have been doing, but from googling around today, it looks like a lot of the other automotive companies are eagerly investigating this idea too. Can't wait for the real thing to come to market.
Now this approach allows the upper body to be interchangeable. Mum can put on the the minivan shell to pickup the kids from soccer practice. The eldest kid can plug in the sports convertible version for his hot date in the evening.
I'm not sure if they've thought it through completely yet. How exactly do you swap the vehicle bodies without 20 of your closest friends around, who can all bench press 250 pounds? Is there a market for a new type of garage here; a double height one with a gantry crane and the ability to winch the body shells up and down? Maybe a variation on public storage, where you keep the extra bodies and the storage company have the means to swap them for you.
Sure would be great to go to the local repair shop with some annoying automatic engine problem and come out again fifteen minutes later with a replacement skateboard and the problem gone. We do something like that now with our computer parts. We're not quite at the ubiquitous hot swapping of all parts yet, but it'll surely come. In the building at work, there are dozens of Sun Ray appliances. When there is a problem with one of those, it's just swapped out in its entirity and away you go with another one. Simple.
And when this motorized skateboard is productized and it really takes off, there's bound to be mods available. They've already started for Doom3. Anything that's new, good and popular will get copied and/or modified/improved, so it clear that this would be another market for companies to try to make a fast buck. There would of course be the Energizer mod, where the rear half of the vehicle would be taken up by extra plugin fuel cells, so you can just keep going and going and going...
Maybe some kind of turbo power mod to go with that sports convertible so it actually performs as well as it looks.
Or a version where the turn indicators don't work, and the car is equiped with an invisible force shield that automatically causes all other vehicles on the road to brake or swerve out of the way to avoid it. This would no doubt be popular with Volvo drivers.
|
It looks like this OpenStep history is popular based on the number of hits my blog got for an earlier post this week. Of course it helps that it was syndicated on OSNews.Com (thanks Eugenia)! So here's a bit more. |
Mach Stuff: As you probably know, the NeXT operating system was based on BSD and Mach (same as the Mac OS X release (code-named Darwin) currently is. Solaris is nowadays based on System V Release 4 (as opposed to the earlier days when our O/S was BSD based). As we started to try to get the NextStep applications running on Solaris (which was at about version 2.5.1 in those days), we had several porting issues. The usual BSD -> SVR4 API issues which are easy to fixup. On top of that there were places in the NextStep API's and the NextStep applications where Mach specific API's were used.
Whenever the NextStep API's used such specific Mach variables or calls, then, for the OpenStep API's, we needed to remove them and generalise so that there was a chance that it would work on all the platforms that OpenStep was to run on.
But on top of that, some applications still made Mach API calls, and this had to be dealt with. Mark Anenberg wrote a small library that emulated the calls that we still needed. I forget exactly what they were.
There was only one Mach book around at the time (as far as I remember), called Programming Under Mach and this was the bible for trying to understand how each of these routines worked. The book didn't always have the material we needed, so we had to work closely with the O/S folks at NeXT. Luckily this included some of the people that originally created Mach at CMU.
As the applications were ported, they either used this emulation library, or where possible, the code was adjusted to do the equivalent in a more native Solaris way.
Purify support: One of the things we wanted to do was make sure that our version of OpenStep was performant. That it didn't leak memory, or use uninitialised variables or incorrectly accessed variables. The usual stuff that memory checking software can look for. At the time in 1994-5 though, one of the best packages around for doing this was Purify from Pure Software (now IBM Rational).
Trouble was, Purify didn't grok the shared objects that our compilers generated from the compiled Objective-C code. Stan Lanning at Purify did the work needed to fix this. This helped us to really improve the quality of our port. As far as I know, this Objective-C support has been in their product ever since.
[Technorati Tag: Computer History]
About three months ago I bought an iBook (which I love), and one of the applications I use the most on it is iTunes. Not for my own music collection or to buy new music from the Apple store, but to listen to some of the free Internet radio stations (one of my favorites being Radio Paradise, because the owner/DJ has such an eclectic taste in music, and you have no idea what he's going to play next).
Well anyway, I was browsing around the Apple store last night and saw that iTunes is also a free download for Windows as well as Mac. Awright! I still use a Windows box quite a bit at home, so it'll be nice to listen to my favorite radio stations as easily as I can on the iBook.
I wasn't disappointed. As this review mentions, this is a wonderful program. Playing around with the Windows XP version last night, I discovered the visualizer and got totally mesmorized by it. I spent about an hour trying it out with different types of music (and just chat shows) and watching how it visualized. It seems to do a very good job. Ambient music is obviously very different from hard rock, which in turn is very different from your favorite politicians gabbing on national public radio. I also found this page with further tips on how to configure the visualizer. More hidden features here.
So how exactly does it work? From googling around, I've been unable to find any great pointers to the actual theories and procedures behind what it does. If anybody has any leads, please let me know. Thanks.
[Technorati Tag: Visualization]
The quality really does vary. There are several excellent stories that have been translated into English, that I'd never seen before which I thoughly enjoyed, like the King and the Doll Maker. Then there's a novella length bogusity from H.G. Wells (whose work I normally like) called "A Story of Days to Come" that I wonder how on earth ever got into a collection such as this. Is it because the editor and/or publisher ran out of money, and just filled up the remainder of the planned space with stories that are now in the public domain? If that's the case, you should have just pruned out the deadwood and made it smaller. This story should not have been there.
There were several wonderful classics to make up for it though, and it was nice to find and read again. It was also great to read the first short fiction by Michael Swanwick, who is one of my all time favorite SF/Fantasy authors.
It's a pleasure to no longer be lugging this huge book around. I'm going to pick some lighter weight reading for a while.
|
Time to blog about something I'm actually working on. I'm part of the Accessibility Program Office. Part of our charter is to make sure all of our products are accessible to people with disabilities. When it comes to software, our job is made a lot easier by the built-in accessibility support that is provided by Java and the GNOME Desktop. I wrote a month or so ago that I'd taken over the maintainence of a sizeable Java application and I was starting to try to get my head around it. Well that application is the Java Accessibility Helper which was written by Jeff Dunn when he was at Sun. |
As the download page says:
The Java Accessibility Helper aids developers in making their JFC-based programs accessible to users with disabilities. A report is generated that includes a prioritized list of problems and potential problems with the application being tested. For example, the Helper verifies that all input fields in an application can be reached using only the keyboard. The Helper does not require the source code for the application being tested and will work with any AWT- or Swing-based application.
The current version that's available for download is 0.6, and I'm working on the next version. A feature I've just added is to help with testing Java applets. You now provide the URL of the HTML file containing the applet information as opposed to just the path to the applet class file. This means that it will now automatically pick up the jar ARCHIVE file tag, param name/values and any of the other HTML applet tags associated with the applet, functionality that has been missing from previous JAH releases.
There is still a fair bit of work to do to make the Java Accessibility Helper as great as it could be, but as we work up to the initial 1.0 releases, some of that missing functionality will be added in.
[Technorati Tag: accessibility]
From watching the coverage on NBC you would have a hard time believing it. Why aren't we seeing coverage of the best performers in each sport rather that the the events where an American is present? And why do the NBC commentators insist on giving you an equal amount of coverage on the background of the competitor and the hard trials and tribulations that they've gone through to get to the games, as they do to the actual competitors performance there, where they are typically getting their butt whopped by somebody else from some insignificant third world country, who if truth be known, had an even harder time being there?
Where are the neutral commentators? I watched the U.S. basketball "team" on Sunday being soundly thrashed by Puerto Rico. It wasn't until near the end of the match that it was sinking in to the commentators, that the U.S. weren't going to come back and win, and that Puerto Rico were actually the better team. What about those U.S. basketball players? Wasn't the lost to Italy an early warning sign? The coach made it clear that he did not need any wakeup calls. Hmmm. Maybe he's right. He needs a team that wants to win. He needs players who can aggressively go out there, play as a team and be willing to commit to their own plays and not keep trying to pass the ball to the older more experienced players and expect them to do everything. As Vince Lombardi said, "If you aren't fired with enthusiasm, you'll be fired with enthusiasm". I wish it was true. That includes you coach. I wonder if U.S. professional basketball players can't perform unless there is a large monetary sum involved.
Maybe I'm just not the norm here. Perhaps this kind of coverage is exactly what most Americans want to see. I realize there is limited Olympic TV air time during the daytime on NBC and most of it is on during the middle of the night, but would it hurt to actually show more sport, less lead up, more of the top performances, less of the "well there is an American in it so we're going to show it" and do it all in a neutral way?
What do other Americans think? Yes I am an American now, albeit a very new one. Am I just way off base here? What's the Olympic coverage like in other countries? I seem to remember that the BBC did a pretty good job, but that might have been because there were less British athletes performing so they had plenty of time to show the best from other countries (half joking).
|
I've posted previously asking about good ways to teach Chess to young kids and got some great recommendations via the followup comments. Recently I mentioned that I'd just finished reading a good book that helped me with my end game and was now looking for helping with starting strategy. This bought on lots more comments, but it also gave two recommendations for some software called Learn to Play Chess With Fritz and Chesster. Combine this with a posting from Jamin Philip Gray with some suggestions on good books to get for improving my chess game, and it was time to put in an Amazon order. The order arrived Monday night, and I finally had time to unpack it and look at it last night. |
The computer game is primarily for my son but it's clear I'm going to enjoy it too. We bought the Windows version but it's also available for the Mac. It uses fun games to teach you the basic ways each piece moves, then takes you to the Intelligym where you put it all together, and start training for your upcoming duel against King Black. Here is a review (with screen shots) by the Four Fat Chicks. Your kids with love smashing toilets (yes really) to show how the Bishop works. Lots of giggling from Duncan and his friend while they were playing that. It uses Sumo wrestlers to show how the King moves. And much much more. We are only just starting to discover all the things that you can do.
There has been one very minor irritation so far with it. On my sons computer (Pentium III, 700 MHz, Windows XP, not sure what speed CDROM drive but circa 1999), the game had problems initially finding the CDROM. I had to continually click "Continue" on the popup that appeared. After about 6-7 of those, it all started up nicely. This was not a problem when we tried it on my ICE-Cube.
The one Chess book I bought, based on Jamin's recommendation (and there are several others on my list to get at some future date) was 303 Tricky Chess Tactics. I've only just started it, so no real comments yet, apart to say that I enjoy the puzzle style approach to learning (which this book uses) over the more pedantic approach adopted by a lot of other chess texts.
More chess feedback in a few weeks.
|
One of my work related ambitions that I still have to fulfill, is to write a text book. Even though I'm a co-author of the Java Message Service API Tutorial and Reference, it's not really the same thing, as Kim Haase did most of the work to pull that together. The book-signing at JavaOne was fun that year though. A year or so ago, when I was doing GNOME stuff for JDS on Solaris x86 for the new Sun Java Workstations ( W1100z and W2100z), I sent O'Reilly a book proposal. |
I suggested writing a text book (for their Pocket Reference series) entitled "GNOME 2 Development Pocket Reference".
There are a few GNOME/Gtk+ books out there but almost all of them are for GNOME/Gtk+ 1.x. No doubt there are more GNOME 2.x ones on the way. They all tend to focus (in varying degrees of detail) on a sub-section of the full GNOME development platform. What I haven't seen is a simple consolidation of what is entailed in helping to improve the GNOME 2 environment (from a developers perspective) or how to develop an application (or a new library) for the GNOME 2 environment from scratch, and how you can draw on the existing GNOME development infrastructure to do this.
I know when I started doing GNOME developement, finding out about all this was not straight forward. A lot of it's therw on the various GNOME related developer web sites, but having all this information at hand in a single reference book would have been invaluable.
Below, I've included a first cut at a table of contents for this proposed book. Each section would give an extended overview of that particular topic and include references to further online resources (already written by other people) that would go into much more detail. For example, for the various GNOME libraries, it would describe what this library can do for you (why you would use it) and how it fits in with other parts of the GNOME development environment. It would give a detailed description of the main functionality of the library. It would not try to give a complete API reference section (that would be too detailed), but would simply point you to where that could be found.
I expected this book to be about 100-120 pages long (in the small format Pocket Reference size).
I think I must have caught them at a very busy time, as O'Reilly took a lot longer to respond then there web site said they would. They turned down the proposal because they didn't think there was much of a market for a book like this. Maybe, I don't know. I bow to their experience. I'm a big fan of O'Reilly books (I have over 30 of them), so this was a bit of a disappointmenti, but I fully understand. There are hotter computer related topics out there.
So I throw it out there. Maybe this should be created as an online document that can grow over time, with everybody contributing, and this can end up being the place where we point brand new GNOME/Gtk+ developers, so they can get started.
Here's the TOC. Note that I realize there will be other sections to add. I'm sure I've forgotten a few, and certainly going towards GNOME 2.8, there will be additions for that.
===========================================================================
GNOME 2 Development Pocket Reference Copyright (c) Rich Burridge July 2003. Table of contents. Preface. Introduction Conventions 1.0 What is GNOME. 1.0.1 The GNOME Desktop. 1.0.2 The GNOME Development Platform. 1.0.3 GNOME Office. 1.1 Getting the latest GNOME distribution. 1.2 Using GNOME. 1.2.1 Introduction to GNOME. 1.2.2 GNOME User's Guide. 1.2.3 GNOME Accessibility Guide. 1.2.4 GNOME 2 Desktop System Administrators Guide. 1.3 Bug Reporting. 1.4 Getting more GNOME Software. 1.5 The Fifth Toe and Garome Projects. 1.6 Further Resources. 2.0 Getting Involved with the GNOME Project. 2.1 Choosing the Right Job For You. 2.1.1 Accessibility. 2.1.2 Application Development. 2.1.3 Developer Tool Development 2.1.4 Documentation. 2.1.5 GNOME Platform Development. 2.1.6 Graphics. 2.1.7 Packaging. 2.1.8 Quality Assurance. 2.1.9 Sounds. 2.1.10 Translation (Localization). 2.1.11 Usability. 2.1.12 User Interface/Human Interface. 2.1.13 Web Design and Development 2.2 GNOME Todo Lists. 2.2.1 The GNOME Todo Database. 2.2.2 GNOME Documentation Project Task List. 2.2.3 GNOME Translation Project Task List. 2.3 The GNOME Love Project 2.4 Further Resources. 3.0 Getting Started 3.1 Standard GNOME Communication 3.1.1 Mailing Lists. 3.1.2 IRC: Internet Relay Chat. 3.1.3 Integrating into GNOME. 3.2 Finding the Right Contact Person. 3.3 Further Resources. 4.0 Developing a new GNOME Project. 4.1 Development Tools. 4.1.1 Gnu Compilers. 4.1.2 Source Control - CVS 4.1.3 Automatic Configuration - autoconf 4.1.4 Automatic Makefile Generation - automake 4.1.5 Other Build tools. 4.2 Project Support Files. 4.3 Common Application Requirements. 4.3.1 Command Line Parsing. 4.3.2 Saving State. 4.3.2.1 Application Configuration. 4.3.2.2 Session Management. 4.3.3 Usability (HIG compliance). 4.3.4 Internationalization. 4.3.5 Localization. 4.3.6 Accessibility. 4.4 Choosing an Open Source License. 4.5 An example GNOME Application - gnome-hello 4.6 Further Resources. 5.0 The GNOME Development Framework. 5.1 GNOME 2.x API Reference. 5.1.1 GLib 5.1.2 GObject 5.1.3 Atk 5.1.4 Pango 5.1.5 GdkPixbuf 5.1.6 GDK 5.1.7 GTK 5.1.8 libXML 5.1.9 libglade 5.1.10 libgnome 5.1.11 libgnomeui 5.1.12 gnome-vfs 5.1.13 gconf 5.1.14 libgnomecanvas 5.1.15 libart 5.1.16 ORBit2 5.1.17 bonobo-activation 5.1.18 libbonobo 5.1.19 libbonoboui 5.1.20 libpanel-applet 5.2 GNOME Desktop Libraries 5.2.1 gstreamer 5.2.2 librsvg 5.2.3 libvte 5.3 Accessibility Libraries. 5.3.2 at-spi 5.3.3 libgail 5.4 Other Related Libraries 5.4.1 libGSF 5.4.2 gnome-db 5.4.3 libIDL 5.5 Language Bindings. 5.5.1 C++ - gtkmm. 5.5.2 Java - Java-GNOME 5.5.3 Python - gnome-python 5.6 Glade - The GNOME Application Builder 5.7 Further Resources. Index ===========================================================================
Since writing this, I've made a few notes on things that should be covered somewhere in the book. These include:
I'm interested in feedback from other GNOME developers, especially ones that are just getting started. What topics are you finding it hard to get information on?
The minimal criteria so far for our next TV purchase are:
What else should we be looking for nowadays? Any good/bad experiences to relate. We fully plan to research this in detail soon, but any advance information is always helpful.
|
The August 2004 edition of LinuxWorld magazine turned up in my mail box at work this week, which is strange in that I don't remember subscribing to it. You can download the PDF for it, if you don't mind giving them your email address, or you can read it online. There are a couple of interesting articles in there. First one from John Fowler, another ex-manager of mine (hi John!) who's now the Executive Vice President of Network Systems, describing what's new under the Sun. |
The second one, and the one I wanted to blog about here is about Furthermore, a next-generation newspaper in the form of a group blog.
What is way cool (at least to me) is this seems like it's the future of interactive news media. It immediately reminded me of the newspaper in the latest Harry Potter movie, showing the escape of Sirius Black. Still not enough dynamic content for my preference, but it's starting to feel like how I would like to read my news.
Google does a fine job of syndicating the news, but it's just too static. Wait for the basic infrastructure to be in place on the internet in a few years to be able to dynamically update that kind of content and supply it to millions. It'll be a another quantum jump is the way we keep ourselves informed.
|
Yes, it's only been a few weeks since I was last on vacation, but it's happening again. I'll be taking next week off. Duncan will be back at school (this year in the first grade), and I plan to do a few things around the house and play with some of the new toys I've bought this week. |
This afternoon I also will have the pleasure of going home to upto twenty screaming kids having fun in the pool as Duncan has his 6th birthday party. You can't imagine how much I'm looking forward to that! Luckily I only get to catch the last hour or so. With a bit of luck most of them will be exhausted and will be just playing quietly with each other in soft muted voices. Yeah, right.
|
I ordered a load of stuff from Amazon this past week. Different items from different stores. Internally they all use different packaging methods (because Amazon are working with other companies who have their own way of doing this), but they all arrived in Amazon logo'ed boxes which were much bigger then they needed to be. I see different packing materials. I really hate the packing peanuts. The inflatable sectioned packing that Amazon use for their book orders is better, yet still not ideal. |
What I'd like to see is some kind of injectionable foam-like packing material. Something that you could easily squirt into the area between the inner box and the outer Amazon box. It would be a paste like material that turns into the consistency of the peanut material when exposed to air. It would ideally be bio-degradable. It would allow the size of the outer box to be much smaller than it currently is (not much bigger than the inner box), thereby allowing more packages to be stored in less space, surely a plus for freight travel by air, sea or road. This should be a great cost saving.
The material packed this way, should be easy to unpack. You'd simply slide the "solidified" pack out of the outer box, and rip away the foam-like material. It would be much easier to dispose of, then either on the two alternatives mentioned above.
So why isn't there anything like this? Nobody's invented it yet? It would cost too much? The current packing methods are sufficient and nobody is seeing a need for an improvement here? Just curious...
The party went on for about 30-45 minutes longer than we intended. Even with us cleaning up around them, some kids and their mothers do not have the "take a hint" gene, so we had difficulty getting everybody out of the water.
|
Paul Lamere blogged recently about How to sound American and I commented that there was also a great link on how to speak Strine (Australian). In fact, the Afferbeck Lauder book Let Stalk Strine was one of the first books I was given when I landed in Melbourne just before New Years Eve in 1983, and it helped me tremendously. I wish I'd kept it because it looks like they are selling for a ridiculous second hand price nowadays. |
Side note - it felt really weird celebrating the New Year by eating shrimp on the barbie, drinking Brazilian champagne with the temperature in the 80's (at midnight). A lot of Aussies celebrate Christmas at the beach too. Very strange (to me). But I digress.
The Lauder book introduces you to such wonderful phrases as "Emma Chisit?" (How much is it?) and "bimbuy", as in "Arm, arm, I've been bimbuy a spider!". Look here to enjoy some more glorious Strine phrases.
Here's another useful site for introducing to the intricacies of the Aussie language. In particular, the rhyming slang. An American might be slanged to a Yank by the English, but they are known as Septics in Aussie rhyming slang (you work it out).
Here's another good strine/slang site if you are thinking of going Down Under and want to converse with the locals. Try to memorize as many of these as you can and you'll have no trouble.
|
|
From the "has he lost his mind completely?" department. A while ago, I blogged about the Stave jigsaw company that hand makes special jigsaw puzzles. Having received and drolled over their catalog, I've wanted one of them. It's been on my wish list for a while. Now that Sun has been giving out modest bonuses again this year, I blew mine (well part of it) on buying one of the "cheapest" ones they have. |
My wife and I decided that we wouldn't get a 1 bolt rated puzzle ("Hors d'oeuvres"), but instead ordered the Tropical Punch, 2 bolt ("Faint of heart? This may be your limit") puzzle just to get our toes wet. Note that the ratings go up to 5 bolt ("What part of impossible don't you understand?").
The puzzle just arrived by UPS this morning. We knew we weren't going to get a picture on the box, but hadn't quite expected the box to be as small as it was (it's just over a 3 inch cube). That'll teach me to blog about the need for minimal packaging
You can see the special Stave clown shaped piece proped up against the box at the top of the picture, hand signed by the person that created the puzzle.
We haven't tried building it yet; that'll be an evenings entertainment this week. Probably tonight actually.
|
Here I am on "vacation" this week, and today has been the day to finish removing the wallpaper in the hallway. The cats started this job for us when we moved in, just over a year ago. Seems this embossed wallpaper makes a great scratching post. Argh! This left white areas showing through the green paper, and eventually really started to irk us. |
Over time, Duncan and his friends have helped with the wallpaper removal. Kids seem to love pulling off wallpaper. Go figure. It must be their natural destructive nature. At least when they are six. Two problems here. Firstly, they only pulled off the top (green layer). There was still a beige/white underlayer. Secondly, we couldn't get them to confine their paper removing activities to just the hallway. So there is a bathroom with a large piece of paper removed. Admittedly the paper in there is just awful and will have to go, we just hadn't planned to do it right away.
So Mum and Dad were left today to remove the remaining underpaper. We started on this around Christmas (quick aren't we?), and niavely went and bought some DIF Wallpaper stripper spray gel. I've no idea why they package this product as a gel which you can spray on the wall. Doing this does not coat the surface evenly, and it's impossible to easily remove the paper. Eventually I took to applying it with a brush, waiting a few minutes, and then just using my hands to gently pull off large pieces and finished up with a scraper to remove the final bits. Not too bad.
Today I went and bought the DIF liquid concentrate which you mix with a bucket of hot water. We then spread that on with a kitchen sponge, and removed in a similar manner to that mentioned above. It made the job even easier. We were finished within an hour.
Now the fun begins. My wife and I have to agree on a new color scheme for the hallway. We have differing tastes, so this isn't going to be easy. I have an uneasy feeling it's going to end up being painted white, and the color in the hallway will come from the things we'll hang on the wall. Or get an interior decorator in to tell us what our taste in decor is.
[Technorati Tag: Home Improvements]
|
The October 2002 edition of the Utne Reader has an interesting article on 30 young people (all under 30 years of age), who are changing the future. One that particularly interested me was Gina Gallant (aged 15 - in October 2002), who had a brainstorm to use garbage to pave roadways. Now having seen some of the roads here in the Bay Area, you might think this is already happening. |
Gina's idea is for
... developing a new paving material - dubbed PAR for PolyAggreRoad - that mixes discarded plastic bottles with stone material and liquid asphalt.
The article says that she has found companies who are willing to try to make this work. A test is planned. Click on the image above to learn more about Gina and PAR.
That's really promising and ecologically sound, but what I'd also like to see is research into how you can repair roads quickly (and correctly) and cause minimal disruption to existing traffic flow.
The case in point here is Highway 101 through Silicon Valley. There is a major roadwork in progress where it joins highway 85 in Mountain View, but that's not what I'm going on about (although that is taking years). I'm concerned on the overall quality of the road that apparently hasn't had a pothole repaired in years. Ironically, there was a continuous paint spill from the back of a moving vehicle a few months back on the north bound side of the road in Palo Alto that went on a a couple of miles, and the road "repair" crew "fixed" this by scraping the paint off, leaving the road surface rough. It's still that way today.
Highway 280 had a major resurfacing between Palo Alto and Redwood City recently and it looks/feels great. This was done in the normal way of closing down one or two lanes at off-peaks times and resurfacing with huge machines specifically designed for the task.
Perhaps this approach wouldn't work on 101. There would probably be too much rubber-necking and traffic would grind to a stand still no matter when the work was done. But something needs to be done soon. How exactly do you solve a problem like this?
I wonder if anybody is researching it...
|
Sun has always had a very relaxed dress style. When Scott McNealy was asked about this, his reply was:
Employees will do the right thing when occasion demands it though. If you know you are going into an important business meeting with one of our customers, or just getting dunked, then you will dress accordingly. |
The Compass column in the February 2001 edition of Utne Reader has a piece on a group that had done research to show that casual dress at work hampers productivity. They were trying to instigate a new movement called "Dress Up Thursday" to get Americans to shape up.
Interesting to note that their website www.ldressup.com is no more. The article goes on to mention that it was the losers in the casual office revolution, the men's clothing industry, that were behind this effort.
When I discovered the Goggle online catalogs a few months ago, I filled in the forms to request a few. Several were for mens clothing. One in particular I liked, was the catalog from Territory Ahead. It's the sort of clothes I'm comfortable wearing. I then dicovered they have an outlet store right here in Palo Alto, so it's even easier getting new good clothing.
The kind of catalogs I requested were a pot luck affair. I didn't do too much browsing online before I ordered them. Perhaps I should have. I also received a catalog from International Male. They certainly do have clothes for every type of situation you might find yourself in. Here's something to wear for that special wedding (assuming you are marrying the bride and groom), and this outfit would be perfect if you have some pirates to fight off. Dang, I can't seem to find the one that would have been ideal for a bull fight. Perhaps they have all sold out and it's not in the latest catalog.
I think I'll leave this apparel to the more studlier men.
| Before | After |
|---|---|
|
|
|
When you buy an old house, you know that over time there will be some things that need fixin' up. This last winter showed us that there were a couple places in the garage roof that were leaky and we would need to fix them before the rains started again this year.
We decided to replace the old wooden shingle roof with a "tile" roof that would as closely match the tiles we have on the house (which are no longer being made). As we didn't know any good local roofing companies, we planned to get three quotes and see which company gave us the best bid.
My wife Lynea used an internet company called Reliable ReModeller.com to try to get us our three offers.
The owner of the first local company that replied, came out promptly, was very polite, listened to what we wanted. Suggested the product we should use (leaving a sample to show us not only what the "tile" would look and feel like, but the colors available), gave us a reasonably priced well written quote and presented us with a time table of how long it would take to order the material and when they would be able to start and finish the job.
The owner of the second company to respond, (after my wife had left two or three voice mails for him), arrived over an hour after the time he stated, tried to talk us out of what we wanted, stated that he didn't really need this business, the internet company kept contacting him, quoted us $1500 more than the first company, but didn't leave us anything in writing (not even a business card) and couldn't tell us when he'd be able to start.
We never did get a third quote.
Which company would you go with?
The first company got the business, and they immediately placed an order for the materials. Late last week, we were informed that the materials had arrived and they were ready to start.
On Monday evening, they started the tear down of the old roof. We watched as they patiently backed a huge dump truck down our driveway to get to the garage, to take away all the debris in. Took them fifteen minutes and no, we don't have a long driveway. We do still have the guttering on the house though and our neighbours fence remains intact. The demolition of the roof took an hour. Seven men in total worked on this during this period.
Tuesday afternoon saw two men return, replace some areas that had been infected with dry rot, and start laying down the black protective under-covering. You'll notice the garage also has gutters now.
Wednesday afternoon, and more men returned. We watched as they patiently backed another huge truck down our driveway to get to the garage, this time containing the roofing material. Took them another fifteen minutes. It used a long arm that extended out the back with a conveyor belt on it, to get the material onto the roof. Duncan throught this was way cool, especially as some of the men first used it to get themselves onto the roof. After all the tiles were on top, two roofers started putting them in place.
Thursday morning, and two different roofers return to finish the job. They were done by noon. They were all very professional, did a good job (even the cleanup part).
It's unlikely we would have stumbled on this roofing company if we hadn't gone through Reliable Remodeler so that was good, but the service they provided wasn't ideal. We do get the chance to offer our feedback, and I suspect if we'd pushed, we could have got the third quote, but as it turned out, it really wasn't needed. Hopefully we'll never need to use this roofing company again, but I'm happy to recommend them to anybody who asks.
If you've got this far, I've got a quiz for you. There is one small thing that still needs to be done. The roofing company are coming back on Friday to do this. See if you can spot what it is. No, it's not to properly secure the lamp to the side of the garage. That's my job.
[Technorati Tag: Home Improvements]
|
This months edition of the Via magazine (from AAA), has an article on Monterey Bay Aquarium, which is celebrating it's twentieth year. It was built on the site of a cannery made famous in a book by John Steinbeck, with funding from David Packard, whose daughter is the aquarium's executive director. She's qualified; she's also a marine biologist. |
The newest exhibits are:
We've been members of Monterey Aquarium for several years and are enjoying it even more now as Duncan is growing up. His favorite exhibit is the Splash Zone, (which includes the tide pools), where you can actual get to touch living things.
Mine has to be the Sea Dragon, a close relative to the sea horse. When I first saw this creature, I thought the poor guy had got all tangled up in the kelp. Then it all clicked into place and I went wow! Check out this link for a web site dedicated to these beasties, including some screensavers and good (but short) movies at the bottom of the page.
|
Last week I blogged about wanting to get an HDTV. I got some great feedback, so went ahead and placed an order online with Visual Apex. We also got the matching home theatre system to go with it. The home theatre system arrived early in the week, and the HDTV and its stand were delivered yesterday. My wife and I spent an action packed afternoon putting it all together and getting it to work. |
Perhaps we didn't do enough research, and these notes are just obvious to everybody who has "been there, done that", but I'll write 'em up anyhow. Hopefully they will help someone. We certainly wish we'd known about this stuff before the TV box had arrived on Friday, so that we would have been fully prepared.
Firstly, in our case, the HDTV box had a metal packing strap tightly bound around the box. You are going to need some good metal snips to cut this, or be prepared to cut the box open around it. The box has another box inside it, which has another box inside it, which has the TV inside. Each box (and the TV) is separated from the next outer layer by the usual white shaped packing material. You will have a lot of material to recycle/dispose of, when you've fully unpacked it.
The screen attached to the table top stand easily. It felt solid too. Last Wednesday, we'd put together the home theatre system and got that working with our old TV with no real problems. The cables provided with the speakers were not long enough to wrap around from the rear speakers to the subwoofer, if it was placed at the front of the room next to the central speaker. So for now, until we decide exactly how we are going to arrange all of this, I've put the subwoofer off to the side. We do have longer cables that we used to use with our old home theatre system, so we'll probably just swap those in eventually, but for now I wanted to stick with the cables supplied with the new equipment.
Now this is where we hadn't thought ahead. We have a Comcast digital cable box. Trouble is we've had it since they were first introduced (about 1998 if I remember correctly), and it's never been upgraded. So we didn't initially realize that we didn't have the required Comcast HDTV cable box that would be needed to get all this to work. Ten minutes on the phone to a tech support person at Visual Apex (who was very patient with me), and we realized that we needed to call the cable company to get a new box.
My wife did exactly that, and we were told that we could drop by their offices located in Cupertino (about 5 miles away), and pick up a new HDTV box. Just bring the old one with you. While my wife talked to the Comcast person on the phone, they immediately went ahead and enabled the HDTV cable channels for us.
We went by their store. When we entered, we were third in line. One person behind the counter. Fifteen minutes later it was our turn. We got the last HDTV cable box they had in stock. I know from the instant reaction behind us from new people that had arrived, that others were going to be disappointed/frustrated. They didn't have any of the RGB component cables that are needed to provide the HDTV connection between the cable box and the TV though. She said they were expecting some tomorrow, and she'd call us, and we could come back and pick them up. She gave us back the old cable box for now, just in case the new one didn't work. By the time we left, there were seven sets of people waiting to be served, and only the one person there to help them, even though there was another empty window beside her.
I really really wanted to get all of this working that day, so the next stop was Fry's, to try to get one of these RGB "Monster" cables. We eventually found a sales person there who was willing to help us find exactly what we needed. The connecters on the back of our new TV are BNC type, so we also needed three RCA->BNC adaptors. This was in a different section on the far side of the store (I've no idea why they do this), and he took us over there, talked with one of the other sales people who pointed out the aisle number to look in. He even helped us find exactly where they were. Nice to know that Fry's has at least one helpful sales person.
Finally home again. We plugged the RGB cable into the new box, hooked up the audio cable and the cable cable from the wall and turned it all on. We niavely went to NBC and Bravo as they were supposedly doing the Olympics in HDTV. We turned on my old TV so we could compare. Hmm. They look the same. We looked at the Comcast channel guide they'd given us. Ahh, the NBC HDTV channel is 185. Went there and everything worked fine. We have HDTV and it was great! We then sat down to watch the repeat (sorry encore) presentation of the Michael Phelps gold medal races.
In hindsight, we could have leisurely prepared for this, if we had been more knowledgeable or better informed. As it was, it wasn't too painful in the end, and we are looking forward to watching the last two days of the Olympics including the closing ceremonies in HDTV. I feel I should now go get an "HDTV for dummies" book (when it comes out), or look for an equivalent web site, to make sure we are not missing some other functionality that we've now got, and fully understand all that this new technology can do for us.
|
I found it fascinating that Murray Leinster wrote this novel twice. That's about all that I found fascinating about it. Do you remember that old TV series, The Time Tunnel? It's based on the second version of the Time Tunnel by Leinster. The novel I've just finished was the first version, which had a lot of the ideas that eventually turned up in the second book and the TV series. Still confused? This web site helps explain it all. |
Here's a synopsis of the novel. In the "current" time (1964), atomic war seems inevitable. Meanwhile, Harrison, one of the main protagonists, discovers that there are a lot of historical anomalies around the year 1804; facts being made available before they were actually discovered. It's almost as if somebody has been leaking information into the past. Then a shop is discovered in Paris which is selling brand new "antiques" from the same period. From this a time tunnel between the present and 1804 is discovered, and with that there is a hope that the future can be changed, by changing events at the other end of the time tunnel.
This was a short novel (140 pages long), but even then I found it repetitive. It seem to find the need to summarise the situation every few pages, and to explicitly state things which were obvious from the preceding paragraphs. I'm not going to give anything away except to say that the two obvious "surprises" are just too easy to spot, and I'd worked out what was going to happen way before the characters in the novel had.
Perhaps I read too much science fiction. Time travel stories are some of my favorites but this wasn't one of them. If you want to read some good time travel fiction, check out "Up the Line", "The Man Who Folded Himself" or the recent one "The Time Travellers Wife", all of which have an original interesting slant.
|
|
I've just done a new gcalctool release. This is the default calculator in the GNOME desktop. Even though the code is running in C, it uses a multi-precision arithmetic engine that's based on FORTRAN code written by Professor Richard Brent back in the 70's. It was automatically converted to C in about 1990 with the f2c program from Bell Labs. Nice to know this code is still usable over 25 years later. |
Which got me thinking about what the oldest running computer code might be. Here I mean being used by more than one person on different computers. I can well imagine there are museums somewhere still running ancient machines from the dawn of computing, and their associated software.
Are there still pieces of code from the original version of UNIX (either the kernel or the utility programs) running in the current incarnations nowadays? That then could date back to the late 60's.
What about LISP code? Professor John McCarthy developed the ideas for that in the mid to late 50's. Any original LISP code still floating around? Maybe it would be code in the LISP compiler itself.
The first version of FORTRAN was developed from 1954 to 1957. Any FORTRAN algorithmic gems still worthy of their continued existence?
Maybe the winner would be a piece of assembly code, though I doubt it, as computer chip architecture and their instruction sets have a tendancy to be changing all the time with no (or very little) backward compatibility.
What do you think is the oldest piece of computer code still running nowadays?
[Technorati Tag: Computer History]
|
Last night I read an article in the February 2001 edition of the Utne Reader that focused on the radical worldview of biologist Rupert Sheldrake. |
nature has what amounts to a memory. This memory is conveyed through time and space by what he calls "morphic fields". These fields shape everything, from atoms and molecules to hurricanes and jaguars. How a jaguar looks and behaves, for instance, is not so much about its genes as about the memory of jaguarness carried in its morphic field. Rather than being encoded with certain traits, genes may be tuned, like transistors, to the jaguar channel - all jaguar, all the time.
As you can imagine, this idea is quite contraversial. In fact, when Sheldrakes first book, A New Science For Life was first published, the editor of the British science journal Nature called it "the best candidate for book burning" he's seen in years. That's quite mild compared to the persecution that Copernicus and Galileo got for their radical new worldview.
Sheldrake seems to be full of idea that are "out there", as you can see from the description of some of his books. One that intrigued me was his theory that information can be transmitted by nonmaterial morphic fields, which makes plausible a pardigm in which telepathy and ESP can be understood. Well, that would certainly help Uri Geller who still has his skeptics.
Sheldrake believes his ideas are testable. He remains a firm believer in the power of experiment to yield truths about nature. Check here, if you are interested in his work.
But it looks like the world maybe in for a few more paradigm shifts soon, mainly bought on by quantum physics. Zero Point Energy is one of them, but the one that fascinates me in the idea of quantum computing.
A good introduction to this can be found here. I think. I fully admit that a lot of this went right over my head, especially when I started to follow some of the links on that page, like the one for Hilbert space. A big difference here is that there are a lot of researchers (many at large commercial companies) that are spending a lot of effort on this, so even though it's a fundemental change in the way we would need to view the world, it has a lot of potential.
It's early pioneering days still, but if this does become a reality, the
computing world will be turned inside out.
With the ability to factor very large numbers in a matter of seconds,
cryptography (as we currently know it) would be out the window.
How would you do dynamic tracing (something like
DTraceQTr
ace)
when the act of measuring the result, affects what the result would be?
As is reported in the Caltech introduction, there are several really hard problems to solve before we see a viable quantum computer. The problem of error correction looks interesting. To quote:
Error correction is rather self explanatory, but what errors need correction? The answer is primarily those errors that arise as a direct result of decoherence, or the tendency of a quantum computer to decay from a given quantum state into an incoherent state as it interacts, or entangles, with the state of the environment.
The idea of how a quantum computer works, has also been described using the idea of parallel universes. In this article, British mathematician David Deutsch asserts
that the quantum wave function describing the qubits splits among many parallel universes, so that the quantum computer calculations proceed in many parallel universes at the same time. Finally, the answer is found in one of these universes and is transmitted to all the others, which effectively recollapse into one universe.
Again, I'll fully admit I don't understand this (and it feels like I've just done the Reader's Digest Guide to Quantum Computing), but I have a gut reaction that if that's true, then it's something really bad. So if we are using a quantum computer in this universe, using a quantum wave function split across many parallel universes, what exactly is happening in the other universes? Is there a quantum computer in one of the other parallel universes that's getting an incorrect result because we've influenced their results?
I'll leave you with this Dilbert cartoon that sums it all up.
[Technorati Tag: Quantum Computing]
Dang, I want me some of those butter sticks! The low-cholesterol kind. I wonder if they do peanut butter and jelly sticks as well...
|
As most of the geeks around here know, the name
UNIX derives from an
earlier operating system called
Multics.
|
The first graphics workstation I worked with in the early 80's was the Perq. It had a Pascal Q-code based operating system called POS (Perq Operating System). It's unfortunate that nowadays the acronym "POS" has 48 meanings. When you say POS to most people, you will get different answers.
Then ICL put a UNIX derivitive on the Perq called PNX (Perq Unix). Unfortunately that's not what it sounds like. I was in customer sales and support in 1983, and well remember the time when we we got a call from a customer who said, "I think I've got a problem with my PNX". Of course after we had stifled our giggles, we wanted to reply, "Well have you put ointment on it?", but we were all too professional for that.
There have been numerous names for the different versions of UNIX and its derivitives but the name Linux just seems so right. As far as I know, it's not offensive or have any strange meanings in any other language, and it's a great combination of the original authors name and the O/S he was basing his work on.
Then there was a desktop publishing package in the 1980's called Publish It!. If you say that several times, very fast, it sounds like ... (well you get the idea).
We also had the curfuffle when JDS (the Java Desktop System) was initially released. Where's the Java? Hopefully this is all explained now.
Sun has been doing a fair bit of work to simplify its software product names, and hopefully it's helping customers to better understand exactly what we have to offer.
In short, finding the right name for your product is a lot harder than you might think. It shouldn't be vague or have an alternate unfortunate meaning. It should be something that will automatically bring your name, or your companies name to mind when its mentioned. It should be one of the ways that users will differentiate your product over all other similar ones.
|
Any decent programmer nowadays knows about Extreme Programming, but have you checked out Extreme Ironing? Check out the galleries here and in particular, the winners of the Rowenta Trophy for 2003. Now this is more like it. This is what extreme programming should be. Just like the folks at Hobees will give you a free meal if you take a picture of somebody wearing a Hobees t-shirt at a famous location, I'd like to see computer companies running a competition and giving away prizes for people who take pictures of programmers using their equipment under extreme conditions. |
In fact, maybe the competition doesn't have to be limited to laptops which, lets face it, are easier to get to remote locations than an ironing board. Let's see special categories for workstations and main frames. Of course, where you find the power socket to plug them in, would be left as an exercise to the programmer.
|
Not the book bookmarks kind, which I've been collecting for about twenty years now, every time I go to a new bookstore. No, I mean the browser kind. This post was going to be short and simple. I was going to mention that I have to typically use four operating systems from day to day. |
Most of my time at work is spent with Solaris. I also use Mac OS X on my powerbook, and we have Windows XP (Pro) at home. Occasionally I have to do some work on a Linux machine too. Because it's so occasional, I don't always remember all the commands I need to use to get my job done.
A little while ago I found this one page (two sided) manual for Linux. It's dated 1999, so it might not be totally up to date, and as we know, each flavour of Linux is not identical to all the others, but it's still very helpful.
Then I got to thinking wouldn't it be great if there was something similar for all the other O/S'es I use. Then I starting thinking about the bigger picture.
Now, if you are like me, you've collected a load of bookmarks over a period of time. You might even have them nicely organised (I fail this part). Recently, to try to improve this, I set up a "links.html" page for myself, which contains just the links I use over and over again. I've tried to condense the bookmark information into a minimal space. It looks something like this.
* Accessibility [JAH Bugs] [Status]
* Blogs [java.net] [blogs.sun.com] [TheStreet]
* Books [Abebooks] [Amazon] [Los Altos Library] [Safari Books]
* Finance [Stock Quotes]
* gcalctool [Bugs]
* Java Accessibility Helper [Bugs] [Design Docs] [Download]
* Metropolis [Audio] [Bugs] [Build] [I-team Home Page] [Run]
* Open Source Projects [GNOME] [JSDT] [SourceForge]
* Search [Google]
* Technical [Automake manual] [CVS Manual] [J2SE Docs] [GTK+ Ref]
Each of those would be a link. I've delibrately not shown it above as a set of links as some of them would be internal to Sun, and therefore inappropriate, but you get the idea.
I've added this single web page as a bookmark on the toolbar in my browser, so it's one click away. Typically though, I also keep that page open in a tabbed browser window, then it's even easier to get to the page I want.
But now you come to the different browser, different machine synchronisity problem. You can solve that by using an online web based bookmark manager such as MyBookmarks.com or iKeepBookmarks.com.
But in my mind, there are still two problems left that that need to be easily handled:
They are probably already researching this in the Google Labs, but here's the outline of, what I believe would be a useful project:
I'd like to see a variation on the online web based bookmark manager that also helps you to initially select your bookmarks. You would first be presented with a web page similar to my links page above, but for the more generalised subject areas. A bit like the Google catalogs page.
Clicking on one of those links, would take you to another page where the links are confined to that subject, but divided into the various sub-fields. For example, a portion of the "Computers" one could be for
Clicking on one of those links, takes you to the page where you can actually select the bookmarks you want. For example, taking the operating systems link, this could take you to something like (I've simplified this - there would be more entries):
Operating Systems
Linux [ ]Home Page [ ]Online Doc [ ]One Page Manual
Mac OS X [ ]Home Page [ ]Online Doc [ ]One Page Manual
Solaris [ ]Home Page [ ]Online Doc [ ]One Page Manual
Windows XP (Pro) [ ]Home Page [ ]Online Doc [ ]One Page Manual
Select entries you'd like to bookmark, then click on save.
[ Save ]
Now the crux of this is that you need to find the best bookmarks that fit each particular category. This is where Google comes in. If you did a search for 'Linux "Home Page"', the top hit is this one. Seems a reasonable book mark for that category to me. Google would automate this process.
With this approach, you would have the ability to quickly setup a collection of bookmarks that hopefully would be the main web site for each category. They would be online and accessible from whatever machine you were running on (assuming you have an internet connection). You could revisit the bookmark setup pages as many times as you wanted to adjust exactly which set of bookmarks you wanted.
There probably would also need to be the ability to add custom bookmarks to your selection too, in a similar fashion to the way that the online bookmark sites let you do now.
So, am I completely out in left field with this idea? Is there already something like this? Sure would be nice to find it, if there is.
|
This weeks email from Ziff Davis has a link to a review of the Roomba Discovery, iRobot robot vacuum. I noticed that this is yet another case of where we have the letter "i" followed by another word. Apple is big on this. When will it ever stop? |
Still, the vacuum looks like it doesn't suck. Um, let me reword that.
iWant one.
|
Recently, I seem to have become fixated with the ability to show visual output from audio input. From my post on the work of Golan Levin when he was at the MIT to the one about the iTune visualizer. Now I've just learnt from an article in the November 2001 edition of Computer Graphics World about Mobius 8. |
Mobius 8 is performer John Laraio, who
uses Zuma, 3dMaxMedia's real-time graphics performance technology to translate audio into visual motion as he controls 3D images, video, lights and lasers with both his gestures and the audio frequency generated from his customized instrument, the Hydra, which uses infrared light beams.
Mobius 8 has toured with NSync and Yes and has a web site, (note though that it seems to be written for Internet Explorer).
I've been trying to find a free, easy to use HTML validator.
I've noticed that when I go to the web page I've setup that will display all my blog entries, that sometimes, the entries start wandering across the page the further down the page you scroll. What's really annoying is that sometimes they don't, and the page is displayed just fine. I'm suspecting this is a roller bug, but I'd like to validate the HTML that's generated, to make sure I don't have any incorrect or missing tags.
I've spent an hour or two on this this morning, and I'm getting nowhere quickly. I've tried:
`uint64_t' does not name a type.
No doubt I could fix this, but I just want a free, easy to use HTML validator, not something that tests my programming ability.
So, any suggestions on something that will easily validate a web page of mine which is about 500 Kbytes, and generate a report of the validated HTML, will be gratefully appreciated. I like the online approach - just giving a URL, but I can understand that this might not be acceptable for such a large web page.
I also suspect internally at Sun we probably already have something that'll do this, I just don't know about it.
|
For all you science fiction fans, there is a great archive of stories here. The main site has lots of other SF related stuff, of a more glossy nature. While I'm here, I'll pass on pointers to the Hugo, Nebula, Bram Stoker and World Fantasy award winners. If you are ever short of something to read in the science fiction, horror and fantasy fields, then these links are a good place to start. |
[Technorati Tag: Science Fiction]
As mentioned before, my favorite book catalog is Edward R. Hamilton. To read that all the way through will take you a while. For computer books, I enjoying browsing the O'Reilly catalog. They have books on most of the things I have to work with in my job.
My favorite publisher is Dover, who have a variety of catalogs available for you to request. I guess because I ordered one of those catalogs, or another like it, I now get additional catalogs. Two that I read, but then first look for the books that I might like, in the library, are The Scholars Bookshelf and the History Book Club.
The new edition of the latter turned up in the mailbox today. From this, I'm going to be requesting two books from our local library:
If I really like them, then I'll probably look to buy my own copy in the future.
I'm always on the lookout for new book catalogs. Google's online catalog site is a good place to start, although it's not always easy to determine what are the good catalogs there, without extensively browsing each one.
But I thought I'd throw it open to the folks that read my blog. The kind of books I like are:
Any "must have" catalogs you can recommend?
|
|
As I've mentioned before, I'm new to having a dog as a pet, so I'm occasionally surprised by what they get up to. Our dog Dusti for example. My wife knew to go out and buy her a Greenie (or a whole bag of them), to help keep her teeth clean. |
To me it looks like a plastic dog bone. I really couln't see her going for that. But she did. In a big way. In fact, the first thing she did was go and bury it under a bush in the garden.
Well after I'd dug it up again (I want her to eat it, not bury it) and cleaned it off, and bought both her and the bone back indoors (and closed the animal flap so she couldn't do a repeat performance), I watched her more closely. She's very possessive of this bone. I've seen cats with little sacks of catnip before, take a similar stance, but I don't think there's any doggie drugs in this thing. According to the link above, they are:
Human grade ingredients with a delicious chicken flavor dogs love!
Does that mean I can chew on one? And the green color in Greenies is from pure chlorophyll! Okay, but why? Is chlorophyll good for them? I know our cats like to eat grass, but should our dog be doing that too?
So is Dusti just exhibiting a normal dog reaction to being given a "bone", or is there something more about these greenies? Googling around suggests that this is just a common dog conditioning.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Today, to get away from the oppressive heat we've had here in the Bay Area over the last few days, we decided to go over to Princeton by the Sea, which is just north of Half Moon Bay on the northern Californian coast. It's well known locally for it's great tide pools. We'd been there before earlier in the year, and the tide was the lowest it had been in months (about 0.12 feet). Today, we looked up the tide tables, saw that low tide was at 10:39am, but was going to be 3.3 feet. 0.12 feet gave great tide pool. How bad could 3.3 feet be? You'll see below.
The first picture above is a driveby shooting of Princeton harbor. To get to the tide pools, you have to go past the town centre, and keep hugging the coast until you get to a car park that overlooks the bay. You then have a little walk further around the coast for about a mile. You will eventually come to the tide pools.
It seems that everybody else had the same idea as we did today. The small car park was packed, and we ended up using creative parking to get the last spot. We took our dog Dusti along, who insisted on barking at everything that moved (and some things that didn't), no matter how far away they were.
By the time we got to where the tide pools should have been, we discovered that 3.3 feet low tide makes a big difference. Any plans to go looking for crabs, sea anemones, starfish etc in the pools would have to be postponed to another day. We did get to see about 3 dozen pelicans having a fun time today though. You can just make out a couple here. I haven't quite mastered the zoom on the digital camera yet. We also saw some seals frolicking. Here's one. Well, you'll just have to take my word for it. Full light on the small LCD display screen, does not make for easy picture taking.
Plans were revised. We'd look for beach debris instead. The bag for our stash was prepared. Of particular interest today, were rocks that had been shaped by nature, especially if they had holes through them. Luckily this one was too big to bring home. Here's the final haul. A lot of dead mussels are probably wondering where their shells went. There are a few interesting items in there as well, including some great "holy" rocks.
A good day was had by all. Getting out of Half Moon Bay was relatively painless (we left earlier than most people), and Duncan and Dusti crashed on the back seat on the way home, so there was peaceful bliss for at least 30 minutes.
Next time though, I will be looking for a low tide of less than a foot so we can have a perfect tide pool experience.
|
|
|
|
|
Earlier, I blogged about our trip to Princeton by the Sea. We managed to keep our dog Dusti fairly clean at the beach. It was a different story when we got home. She decided the first thing she had to do was roll around in the flower beds. Result, one dirty doggie. I love you why she just looks at you with a "What?" grin on her face. We pulled out the kiddies play pool, filled it up, and started rubbing in the shampoo. The drowned rat stage. By this time, she'd done the doggie shake a couple of times, so we were all wet, which wasn't a big thing as it was so hot. A bit of towelling down, and she was good as new.
Now if only we could get our son to take a bath as easily.
|
Last week, I blogged some thoughts on how to improve your web based bookmarks. From the comments I received back, the one aspect that doesn't seem to exist at the moment is the ability to "seed" a set of potential bookmarks with the best possible links they could be, then for a user to be able to setup which of that set of results they would personally have. |
So I had a hack attack yesterday for a couple hours. I decided to see how easy it would be to just do the search part, from within a small Java application. I supplied three potential bookmarks that the user could choose from (Perl: API, FAQ and manual pages). I had a button you clicked on to generate the best bookmarks for those topics.
When viewed in a browser, it generates one line, with three hyperlinks, that looks something like:
Perl: [API] [FAQ] [Manual Pages]
To do the searching, I used the Google Web Search API's. As their web page describes, there are three easy steps to take:
The first two steps took 2-3 minutes. The third step, including writing the Swing GUI application took 2-3 hours. Their API was well thought out. Simple and easy to use.
The next step now is to decide on the best approach for two things. Comments and suggestions are most welcome.
+--- Perl ---------------------------------+
| [ ] API [ ] FAQ [ ] Manual Pages |
+------------------------------------------+
(I'm worried that that might be too heavy. I'll have to look to see if there is a better Swing GUI component that I can use). The user would then, for each of these panel entries, check the boxes of the items they were interested in generating, then finally clicking on the "Generate" button. This would generate the HTML for a customised bookmarks page, based on getting the best search result for each item from Google.
This last sentence brings up an interesting point. You need to select your search query string carefully. I got a good first search selection for Perl FAQ and manual pages with simple search strings of "Perl FAQ" and "Perl manual", but for the first one, a search string of "Perl API" was not returning what I wanted. What I wanted was a list of all the operators and calls you can make from within a Perl program. I'll need to refine a better search criteria for the final version. Note also that this isn't a complete list of potential Perl bookmarks. I can see me adding in the ability to generate a bookmark automatically for Perl HOWTO's and a Perl module list. Probably more.
One future enhancement, would be for the search for each bookmark to return upto say 5 URL's on the top five hits, and for the user to select from that, but I want to get the basic application working first before I add refinements.
RealWork(TM) will keep me busy for the next couple of days, but I hope to get back to spend a couple more hours on this on Friday.
|
At Amazon, you can create lists of things and then share them with other people. Here's a pointer to their top 100 (based on voter feedback). Currently there are over 125,000 of them, but luckily you can search them, although I tried searching for "Science Fiction" and the first item returned doesn't appear to have anything related to that, so I'm not exactly sure how it works. |
The top two are quite entertaining:
Makes me want to create my own. Lemme see, what should it be about...
Maybe I should just stick to books that I've really liked.
|
By word of mouth, I've so far come across the following science fiction authors who are also blogging. I'm sure there are lots of others. If you know of any, please let me know by commenting on this post, and assuming you have the URL of their blog, I'll add an entry to the list. There are also various newsgroups of Science Fiction / Fantasy folks here (thanks bentley). |
[Technorati Tag: Science Fiction]
|
It's Friday hack day. As I mentioned earlier in the week, I've been working on a Java application that takes a "bookmarks.xml" file describing a set of topics that you potentially want to automatically generate the best bookmarks for. This post is just to say that it's working great. I will now try to jump through whatever hoops are needed to share the source code so others can use it and hopefully help to further improve it. |
So here's how it works in more details. The initial XML file has entries of the form:
Over time, I'll probably add more tags to this file to help delineate different subjects, but for now my sample bookmarks.xml file contains the entries above for a variety of different programming languages that I'm interested in (C, C++, Java, JavaScript, Korn Shell, Lisp, Perl, Python, Objective-C, Ruby, Smalltalk and Tcl/Tk).
When the Java app reads in the bookmarks file, it creates a row of labeled checkboxes, one for each entry in the topic. Each row is a JPanel which gets added to a scrollable pane. The user checks the ones that they would like to generate bookmarks for. When you are ready, you click on a "Generate" button, and the application then makes Google search API calls to generate the best URL for each search. It then writes the results out as an HTML page.
Here's what it generated when I checked all bookmarks (HTML web page headers and footers removed):
There are currently three command line options you can supply to the tool:
There's still lots to do. As you'll see from some of the URL's automatically generated above, the search query terms need to be refined to hone in on the best and/or correct web pages to return. As it stands, it does a surprisingly good job with very simple search terms. There are some bad ones like this for "Smalltalk HOWTOs" though. Something where others can help is to generate unique search query strings that best capture the web page wanted.
I also want to improve the GUI a bit, add in a menu-bar, and GUI ways to set the input/output files and the search key. Plus some easy way to automatically check all the checkboxes for one topic, and so on.
Hopefully I'll find some time to continue this next week.
|
Last night, my wife and I went to the Los Altos Community Center for the Friends-Of-The-Library, library book sale for September. UnLike Palo Alto, which has a library book sale every month, Los Altos just does it three times a year. FOTL get two tickets to attend the special Friday evening event. The general library sale is open to the public on the Saturday and Sunday. |
We arrived at about 6:20pm to get our place in line and to get a parking space close by. There were still about 30 people in front of us. Doors opened at 7:00pm. Even though it had cooled down considerably from the heat wave at the beginning of the week, it was still hot in there. No air conditioning and the fans were only useful if you were standing right in front of them. Lots of hot sweaty people in a confined space.
Books are arranged in flat wooden boxes on tables, divided into topics (cooking, gardening, science, computers, biographies, history, classics etc.). I initially headed over to the computer section as fast as I could to see what was available. Publishers have a tendancy to give "old" computer books to the library sale, (rather than pulp them), when a new version becomes available or the book is remaindered. You can often find two year old text books (complete with CDROM's) that have never been sold.
For this type of sale, you really do have to know what you want. If you don't grab it quickly, someone else probably will. You don't look at the prices. Everything will be a great bargain. You tend to get as many as you can carry, take them over to be priced, then take them to one of the cashiers, then take them out to the car. Then back into the sale. Rinse (or in our case, a good shower then we got home) and repeat.
We were in the sale about 90 minutes. I bought 35 books for $48. All books were priced between 50 cents and $3. I won't list them all, but some of the ones I'm pleased with finding are:
This morning we'll head off to the Palo Alto library book sale. By the time we normally get there, the professional book-buyers have left and the initial frenzy of the first hour or two has gone. We'll have time to actually browse the books we want to buy, checking to see if we really want them. I notice that Palo Alto are also having their sale on Sunday this month for the first time. It'll be interesting to see if that's successful.
If you've never been to a library book sale before and you live in the Bay Area, I encourage you to go to either of these two sales today (see links above). If you enjoy reading, I'm certain you'll find lots of bargains there that'll you'll like.
The quality of the jokes and other humorous material has varied, but over the years, if something has tickled my funny bone, I've archived a copy. I'd like to share a few with you. I got to thinking that I bet the best ones are "just out there" on the Net, so no need to cut & paste them. There was one on anagrams. I did a bit googling to find sites that contained the original joke alias examples (plus more).
From these pages, there are also a lot of links to other anagram related sites.
a>
|
One of the books we got at the Saturday library book sale was this one. It came with the Bubble Thing attached. As you can see from the pictures on that web page, you should be able to make incredibly big bubbles. The Guiness record for the longest bubble was made with one of these devices. On Sunday afternoon we had a go. Reading the book, it was clear that conditions were against us. You really want a damp humid day. We don't do humid in Northern California, so after a rain storm or first thing in the morning would have been best. Also you want a calm day. It was a little too breezy when we tried this. |
Now that I've got the excuses out the way, I'll tell you that we only managed a couple "little" bubbles (about a foot in diameter). I started a couple of much bigger ones but the wind burst them before I could close the bubble wand and release them. We're going to try this again under better conditions. I've every reason to believe we'll be able to make some enormous creations.
The Bubble Thing is made by Klutz. The Klutz folks have lots of different educational fun products. They are also right here in Palo Alto. Every year, they do a special event where all the proceeds for sales at their store on that day, will go to the school of your choice. On that day, they have lots of special entertainment at their store, including demonstrations of their products. In fact the man pictured here demonstrating how to use the Bubble thing is John Cassidy, the author of the Unbeliveable Bubble Thing book, and one of the founders of Klutz. I have a copy of his juggling book too. The one that started it all. He's still often seen at the store.
If you want a fun time, visit the Klutz store on one of their activity days. The web site also has a lot of good stuff to try too.
No, I don't work for Klutz (wish I did), but we have bought an unbelieveable amount of their products and loved every one of them.
To return the favour that somebody did me a little while ago, I can now invite 6 people to receive free GMail accounts.
The first six people to email me at
rich dot burridge at sun dot com
will get them.
Update: All free accounts are now gone.
|
There is a short piece in the October 1997 edition of Scientific American about a virtual reality environment at the San Diego Supercomputer Centre that's been created to help people to get an idea what it's like to have a neurologic condition called synesthesia. To quote the hyperdictionary definition,
As I've mentioned before, I've recently become fascinated where there is an interaction of audio and visual work [1] [2] [3]. This is another variation on that. |
You are wearing a pair of liquid-crystal-shuttered glasses and a tracking device on top of your head. You are also carrying a little wand as a navigation tool. You are attired with an instrument that measures your chest's movement as you breathe.
All around you there is a weblike image in pastels that have a subtle sheen. When you start breathing, the web moves in and out with your breath.
Now the environment is changed on you. Diamonds and spheres begin swirling around you. Your heartbeat presents itself in a new way, as a spurt of color rather than as a sound (see image above).
This got me googling for around for what else is out there on synthesia and any possible art generated from this disorder. This site does a great job of linking it all together.
One of the most famous popular science books related to this is The Man Who Tasted Shapes.
And finally, some pointers to software if you want to try some of this out yourself. Firstly, here's a link to a collection of some CAVE software environments and this is a link to Synesthesia the Winamp vis plugin that allows you to use Sonique vis plugins. Here's some screenshots.
|
As several other Sun bloggers have reported, there was an Open Source Summit held in the Auditorium at the Sun Santa Clara campus yesterday. Lots of presentations by folks internal to Sun and luminaries in the open source world. |
To me, what makes a good presentation is something that is structured. It uses pictures as well as words. It combines the two together well. It doesn't drag. It's not predictable. It progresses. It makes a point. There were some great talks and there were um, some other ones.
The winner, hands-down for me was the talk given by Doc Searls. It was so interesting that it made me want to go off and read his blog afterwards. Not that he needs any more hits; according to Danese Cooper, he's one of the top 100 bloggers. The presentation, all 27 Mb's of it, touches on several interesting topics, including the architectural word set associated with software development, how the opposite of open source is closed source, not proprietary source (a common misconception).
Unlike some other great talks in the past that I've heard by Alan Kay and Roald Hoffmann which have been a veritable tour-de-force, there was always structure and a progression with this talk. I compare it with a couple stream-of-conscience talks I listened to yesterday which left me wishing the presenter had spent a little more time to at least put a couple of slides together.
Yesterday was also the first time that I'd heard the lightening style of presentation. The presenter is given five minutes to talk on whatever subject they like (bearing in mind that this was an open source summit). If they haven't finished after five minutes, they are "gonged" off, and the next presenter goes on. There is a skill to this. You really need to have thought about what you want to say, tried it out a few times, and got the timing down exactly. Some of the talkers had indeed done that and it showed.
My two favorites here were talks by Brian Behlendorf, who compared the Burning Man community to the way that some open source communities work - complete with gorgeous slides and the talk by Wilfredo Sanchez describing how he went about (almost single handedly) getting Apple to open-source their core BSD/Mach operating system (codenamed Darwin) in Mac OS X.
There was a "surprise" talk by John Gage right after lunch. John, as usual was very topical and very interesting. He talked about the bill that Senator Cain has just submitted based on the findings of the 911 report and the implications this will have on future government software purchases. All good for open source.
Finally, I want to direct your attention to an open letter by Steven Vaughn-Nichols on releasing the Solaris Operating System as open source. It's a pity that Mr Vaughn-Nichols couldn't have been in the audience yesterday to hear what's been done to make this happen. Perhaps he'll take the word of Glen Weinberg on it. Glen's team are going to make this happen. From everything I heard yesterday, it's clear that we are putting the infra-structure in place to make sure that when the Solaris source code goes "over the wall", that there will be a full development community behind it and that it will be useful to the people interested in it. There is also the need to make sure all the due diligence is done, both from a legal respect and a code review. This all takes time but its going to happen.
[Technorati Tag: Presentations]
|
I've just finished Yukon Ho!, one of the collections of Calvin and Hobbes cartoons by Bill Watterson. I've been a big fan of this strip since about the mid 90's, when somebody told me what it was all about. Oh, the Tiger is real when nobody else is around. Otherwise it's a stuffed animal. Oooookay. |
Didn't think much more about it until our son turned six. Then when I started reading the strips again they weren't quite so funny. They were just a tad to true to life in some instances.
I then realized that Bill Watterson is preparing all new parents for what it's going to be like, to own and operate a six year old. Don't take those cartoons so flippantly. This is probably going to be your life when your son turns six. He's going to turn bathtime into a living hell. He'll develop disgusting eating habits and display them in public. He'll do DIY and you'll wonder why you ever bought nice furniture. Check out here to know more about what's in store for you.
He'll have adventures with his favorite stuffed animal and be embarrassed when you discover him talking to it. Bill Watterson is a wise man and I appreciate him sharing his knowledge with us neophyte parents.
Now I'm lucky it doesn't snow much around here, so I won't have to come home to huge snowmen in disturbing positions, but I do wonder what Duncan will get up to next. I bet whatever it is, there is a cartoon already written for it.
|
No, I'm not one of those four people, but twenty years ago today (give or take a week or two), I first started working with Sun workstations. At that time, I joined the Sun distributor in Melbourne, Australia. This was about two years before Sun Microsystems started up "down under". I joined them in January 1987. The Sun distributorship was one of the businesses owned by Lionel Singer, a well-known entrepreneur at that time. He also had the Australian distributorships for Wicat, Pyramid, Convex (amongst other things). |
Before this, I was working for International Computers Ltd (ICL), just across the street. When I handed in my notice from them, I was literally out of the building within 30 minutes. I walked across the road and started at my new job right away. No need to work off the normal last month as I was going to a competitor. So that month, I got two months salaries.
When I started at Sun Australia, there was only one Sun machine in the Melbourne office. It was a Sun 2/120 running SunOS v1.0, and it sat in it's own special "demo" room. If you wanted to work on it, in anything else apart from a remote text-based login capability, you had to book time on it. It was several months before I got my own Sun workstation at my desk.
A couple other memories from this time. In 1986, I decided to buy my first PC. It cost about $6,000 (Australian). It had a 286 chip if I remember correctly. When I left Australia in 1992 to come to the U.S. I sold it for $300. That rate of depreciation kept me away from buying any further PC's until 1998. I also remember using an acoustic coupler for a dial-up from home to my work machine. It was in a lovely wooden case. I kept it for years after I no longer used it. Can't think why apart from it being close to a work or art. Anyway, this was initially going at 300 baud, and eventually I was upgraded to 1200 baud! You really learnt to carefully decide what you wanted to remotely display in those days.
And finally, a tradeshow memory. We were demo'ing some Suns at this show, but we also had a Convex there for the first time, in the next booth along. The Convex was a mini super-computer. All the machines were networked together. Now in those days, University types would go upto each Unix vendor and ask if they could run a small dc benchmark. The time it took to run this, would give them an indication of just how fast the machine was. Sure enough, we got this request one morning. He types in his benchmark and presses return, and gets the answer back almost instantly. He blinks a couple of times, runs it again and gets the same results. He quickly writes it down and goes rushing off. We didn't have the heart to tell him that that graphics window on the Sun was remotely logged into the Convex.
[Technorati Tag: Sun Microsystems]
|
I wonder how many parents have bought their child a wonderful expensive present for Christmas, only to find that it's played with for one or two days then tossed aside. Sometimes the kid gets more enjoyment out of the wrapping paper or the box it came in. |
I've always wondered why there aren't more toy libraries locally. At least I haven't found any. Well failing that, maybe this is the next best thing.
Springer School, here in Los Altos (where Duncan is in first grade) had a rummage sale today. Duncan must have been eyeing up the goods yesterday as they were laid out ready for selling today, because he announced last night that he wanted to buy the crayon maker. My wife (who's also volunteering there today), went over to the sale with Duncan at 9:00am. The crayon maker could not be found. I bet several kids were telling their parents about that hot item last night, and somebody beat us to it.
Never mind though. Duncan's attention was immediately drawn to the Rock 'Em, Sock 'em Robots. Now this is a toy I'd never buy brand new, because I'm convinced that he'll loose interest in a matter of days (if not hours), but for $5 I'm okay with it. It's obviously a big hit with first graders too (ouch - bad pun). For another $5, he also got the Building Set. Gears! Gears! Gears!. This is aimed at 3 year olds and older. Emphasis on the "or older". On the box are some pictures of things you can make with these gears. A 3 year old doing that! You're kidding. If Duncan showed that kind of ingenuity at that age, I'd be plonking him down in front of the piano, or getting the calculus books out. Now I've shown him that you can build things in three dimensions, he's starting to do some gear bridges that are pretty cool.
Lynea purchased the Moosewood Restaurant Low-fat favourites cook book for $2, which looks to have some interesting recipes in it (not that we are running short of cook books), and I picked up an old Tasco microscope for $5, which is similar to the one shown here. It has a 50x to 900x magnification ratio and comes with all the accesories in a plastic case. I'm still intending to buy a new more powerful microscope when Duncan gets older, assuming he shows an interest in this, but this will be fun for now. It's got a strange smell though. Must be something on one of the included slides in the case. Yuk!
With my wife working there all day, I'm fully expecting her to bring back more stuff later but at these prices, I don't mind if Duncan looses interest in a day or two. We'll simple put them in for next year's rummage sale.
|
The first picture in a recent blog by Manish Kapur, reminded me of the work of Escher. As I've been a fan of his, ever since I was shown his work when I was doing mathematics at school, I thought I'd see what I could find online. |
My two favorite Escher books are:
The first one gives a full accounting of all of his work (complete with illustrations). The second is a collection of academic papers from other people based on his work (the proceedings of a special Escher conference in Rome in 1985). There are lots of other books about Escher to choose from though.
There are several sites inspired by the work of Escher.
A lot of these sites have hundreds of links. You could be exploring for days. Some of them are school course work. I sure wish the teaching authorities in the days when I was going to school had had the foresight to realize that this would be a wonderful way to teach mathematics and art.
Note that I've only featured the tip of the iceberg here. There are hundreds of others sites featuring the work of this amazing man.
Update: And here is one of those other sites. From the first comment (thanks Mike).
you missed the coolest escher-related pages around - Escher in Lego: Balcony, Belvedere, Ascending and Descending, Relativity, and Waterfall.
This kind of feedback is a perfect example of why I love blogging!
|
Now that there are lots of people at Sun blogging away, we are (quite rightly) been pointed at places that give you good advice on how to write. Here's a place to go to see what can happen if you don't follow those guidelines. You can win a prize! I'm not sure it's a prize I'd want to win though. |
The contest is named after Edward George Bulwer-Lytton, the person who started one of his novels with these infamous words:
It was a dark and stormy night; the rain fell in torrents -- except at occasional intervals, when it was checked by a violent gust of wind which swept up the streets (for it is in London that our scene lies), rattling along the housetops, and fiercely agitating the scanty flame of the lamps that struggled against the darkness.
The winner in the fiction category for 2004 is Dave Zobel, a 42 year old software developer. His winning entry is:
She resolved to end the love affair with Ramon tonight . . . summarily, like Martha Stewart ripping the sand vein out of a shrimp's tail . . . though the term "love affair" now struck her as a ridiculous euphemism . . . not unlike "sand vein," which is after all an intestine, not a vein . . . and that tarry substance inside certainly isn't sand . . . and that brought her back to Ramon.
Check here for the other winners and runners-up. Lots of other great links off the home page.
|
I've just been reading What Do Sharks Eat For Dinner? to our son for his bedtime reading. It's a book of questions and answers about sharks. It's very graphic. I'm surprised he wants this just before he goes to sleep; it would probably have given me nightmares at his age. Anyway, there something that the book didn't know the answer for. |
With the question "Why don't sharks eat pilot fish?", the short answer is that no one knows. It goes on to say that people used to believe it was because pilot fish lead sharks to prey, but experts no longer believe that this is true. It doesn't give any alternate theories.
I wonder whether this is a solved problem now...
Anybody know the answer to this question? Both my son and I would appreciate your comments.
|
At the Open Source summit last week, the organisers were giving out copies of the Open Sources book. This is a collection of open source related papers from notable people in the open source movement. I'm pleased to see that this book is also online at O'Reilly's web site. |
|
Earlier today, I found the Open Sources book available online for free at O'Reilly publishers. I should have looked a little harder. There are several other books available from O'Reilly as part of the Open Books project. There are English language books, out of print books and some in German. |
I see the infamous unpublished Open Look User Guide is there too. Ian Darwin did go on though, to write one of my favorite O'Reilly books; the Java Cookbook.
|
While I was googling around for M.C. Escher links for my blog entry last weekend, I came across the web site of Jill Britton. In particular, I discovered her Number Patterns pages [part 1] [part 2]. She is attempting to teach mathematics (and related subjects) in a fun interactive manner. She has also had several books published. |
The books have extensive Internet based educational activity links (see links off the book pages above).
And finally, there is a download of some software for designing and generating Escher-like tessellations, quilt blocks, and Islamic patterns, described in the Explorations with TesselMania! book.
A wonderful approach to teaching maths to kids.
|
|
In my office at work, I have a color print of a "Pride" motivational poster. The text below the peacock reads:
To quote the website where this came from:
|
The creator has printable posters for Sloth, Pride, Wrath, Lust, Gluttony, Envy and Greed. You will need a PDF viewer in order to view and print these files.
This is just one of the parodies on the dumbentia site. It's well worth searching around there to find other gems.
|
I've just finished releasing a new version of gcalctool for the future GNOME 2.9 distribution. |
It's released early as there are two new features in the 5.5.X gcalctool series that will need a fair bit of testing:
That's right. You can now set and display up to 30 significant places after the numeric point should you need it. The request for this feature has been in the gcalctool TODO file for 12 years. Not because it was hard to do, but because it wasn't obvious how to represent this to the user in a simple straight forward manner. Admittedly, I wasn't losing any sleep over the lack of this functionality.
Thanks to Calum Benson, this problem now seems to have been resolved.
There is a new menu item under the Acc menu in Scientific mode (after the ten existing menu items that easily let you set the accuracy between 0 and 9 places), called "Other (12) ...", where "(12)" is the current precision. Users in Basic mode don't see this menu, so won't get confused by it. This menu item brings up a small popup allowing you to set precision between 0 and 30 significant places. The Acc button tooltip will now show the current accuracy too.
Let's hope that after waiting twelve years, there are people still interested in this new feature.
|
Last night, as I was channel surfing, waiting for one of the TV shows I normally watch to come on, I stumbled upon a documentary about humpback whales on the Discovery channel. |
I was fascinated how they get their food. Each day, they need to eat about 5% of their body weight. So for a 30 ton whale, this is about 1-1/2 tons of fish. They have an amazing technique for doing this. All the whales in the pod work together to bring this off.
Humpbacks can feed by creating bubble nets and swimming up through the center of the net, gulping down the small fish and shrimp trapped by the bubbles.
The fish caught in the bubble net simply don't understand they can swim out through the bubbles. Instead they are driven up to the surface where all the whales in the pod, have a fish smorgasbord.
So it just goes to show that by acting together, these whales can make the net work. There is even a t-shirt you can buy with this slogan, although I don't think it comes in XXXXXXXXXXXL size.
There is an article in the October 2004 edition of the Smithsonian magazine that briefly describes the history of the microscope (which was invented over 300 years ago). It concludes with a mention that the results of the 2004 Small World competition will occur later this month (presumably later in October). Note the Smithsonian article will eventually turn up under this web page, but at the time of writing this, they are still showing their current issue as September.
It you'd like to see the past years winners (and the competition has been going for 29 years now), then checkout this site. As well as picture and movie galleries, there are interactive Java and Flash tutorials showing how a microscope works, basic concepts, articles on different types of microscopy DIC, Stereo and Confocal and screensavers you can freely download.
|
I bought this book at the last library book sale, in the hope that it would teach me more about dogs. I'm still trying to understand, Dusti, the latest addition to our family. |