So I finally took the plunge and bought a new 20″ Apple iMac. I’ve got to say I love the machine in all its glass and aluminum glory, but I can’t let this transition pass without paying a little homage to my 400MHz Mac G4 tower that has served me so well for so long.
I bought this machine in January of 2000 (my senior year of college.) It has run essentially nonstop since then at any time carrying out some or all of the following duties at any given time:
- Ethernet router
- Wirless router
- Web server (with dynamic DNS)
- UNIX development machine
- MIDI workstation
- Editing short movies
- Rendering of POV-Ray images for Tom
- Countless MAME games
The system came with a 10GB hard drive which I immediately upgraded to 36GB. The initial 128MB of RAM was removed to make way for a couple 512MB chips giving the system a full gigabyte of RAM. Though this mac originally came with Mac OS 9 I was able to upgrade it to OS X, even 10.4 without any problems. Now I don’t mean it ran part of 10.4 or it was in any way crippled. This 7+ year old machine runs the latest OS just fine.
The decision to replace the machine came for two reasons. One, I wanted a machine I could hook up to my TV. Two, when working with large files (high resolution movies and pics from my 7 MP camera) things really slowed down. It was also time for a bit more hard drive space.
So with over 7 years of runtime with, by the way, no maintenance required I can happily retire this old G4 and honestly say it owes me nothing. I only hope the new iMac does just as well.
mac, macintosh, os x, imac, g4, mac vs pc, computer, apple, apple inc, apple computer
On my story about using the minus SQL operator to compare tables, Blake asked what other more efficient methods could be used for tracking changes between tables.
Here are a couple options you could consider to compare table contents instead of the ‘minus’ operator:
Oracle change tables are probably the best for tracking changes internal to the database. You can see an example of them here.
This is what most Oracle data warehouse ETL is built with.
Custom triggers on insert, update and delete can enable similar functionality to change tables (change tables actually work with internal triggers.) You can have the triggers insert your data into another table or just keep some metadata in a separate table to indicate which rows have changed.
Simply adding an activity date column to your tables, populated with a trigger may be enough to track changes and keep databases in sync. If you know, for example, that the database was cloned at midnight on the 1st of the month, then to see what has changed since then you just need to examine all rows with an activity date after that. The activity date can be useful for several other things as well making this a fairly desirable approach.
Blake has an intriguingly eclectic blog himself which is well worth a visit. Thanks for the question Blake!
oracle, database, dba, database development, database administration
The Boston Globe reports that a little more than a week ago Symantec Corp. made public a major loss of data from Monster.com. While the stolen information does not include social security numbers or other banking information there is real concern that email addresses from Monster.com will not only be sold to spammers, but will be used in phishing scams.
Read the full article and followup from the Boston Globe.
Monster.com has decided to notify users of this breach by mail. That’s snail mail. Now, I don’t know about you, but my mailing address on Monster.com is far from up to date, so I think it’s important that we spread the word online!
Thanks to Joe at JVT Advisors for sending this on to me.
job, job search, monster, monster.com, data security, security
The webcomic xkcd is so good I have to resist the urge to blog just about every strip, but the latest one is just too good not to share.
This of course applies not only to programmers, but sys-admins and DBAs as well. I mean really, some of those Oracle installs take a long time!
slacker, technology, compile, programming, code, excuse
So here’s a nice little Firefox easter egg for vi users:
In Firefox (at least version 184.108.40.206 on the PC, I haven’t confirmed this on others) you can search for text by simply typing a slash (/). As long as you’re not in a text entry box the / character will open up the find dialog box just like control-f would.
For those of you who don’t understand the significance of this, in the popular UNIX command line text editor vi you search for text by typing
/string to find. This is typical of how vi works: powerful, simple commands which are rarely obvious.
vi, unix, linux, firefox, web, internet