Archive for April, 2004

Random: food, unit tests, quakes, etc…

Sunday, April 25th, 2004

When I read the headline that Geothermal plants are shaking up a California town, I was fully expecting yet another quackery-hits-mainstream-press bit of stupidity. Instead, it appears that there is a connection between geothermal energy production through the use of water injected into the thermal sites and an increase– significant increase– in the number of quakes within the region.

I wonder what the geothermal plants do to protect against earthquake damage? In any case: Odd.

MacDevCenter has an article on Objective-C unit testing using OCUnit. A good read.

As appeared in the pontifications of my Subversion post: if you just need the Subversion client, Martin Ott (of SubEthaEdit fame) has made statically linked packages available that contain just the client bits. See Martin’s weblog to download.

Speaking of SubEthaEdit….

It has been quite a while since an update or any noise in that community. Not that the app doesn’t “just work” as is… but, what is up, anyway?

Food

A few days ago, I made steamed curried brussel sprouts with elephant garlic. Very tasty. Very toxic. Oddly, Janis (Joplin — my dog) totally digs curried brussel sprouts. Very strange.

I had a few leftover. So, for breakfast I made a scramlet (scrambled omelette) that contained smoked tuna [farmer’s market comes through again!], spicy yummy cheese [pepper cheddar of some kind], and curried brussel sprouts. A “throw together whatever I can find” breakfast.

It was surprisingly tasty.

Tomorrow, I’m going to try my hand at Jambalaya with crab, shrimp, and jalapeno-chicken sausage. Should be interesting. Fortunately, I have the exact same cast iron dutch oven as in the 40 year old cookbook. (Fortunate in that I have no idea what I’m doing and am grasping at any correlation between recipe and reality that I can.)

With my wife out of town, I set out to explore the local restaurant scene; something that is not so easy with a 3.5 year old in tow. In particular, I wanted to find a decent Japanese restaurant. And that I did: Furu-Sato has proven to be an excellent dining experience. Very friendly folks– both working their and as customers– and the food is excellent. Nice web site, too.

I was quite amused to note that Return to Dark Castle is now available. I used to play quite a bit of the original Dark Castle on my Mac Plus way back when. RtDC is quite a decent version of the game.

In other gaming news, I picked up a GameCube under the theory that there are a number of games aimed at the younger crowd. I also picked up the Sonic and Zelda anthologies (the first N games of each series). I never played the Zelda series and only a little bit of Sonic.

It surprised me just how bad the original Zelda really was. Now, that is a completely unfair statement because I’m comparing it to everything that was inspired by the original game. The criticism is aimed more at the game play and UI than at the story or gaming concept. To succeed at Zelda, you have to solve “puzzles” where the solution appears to be 100% invisible — i.e. you have to, say, “burn the 4th tree from the left of the screen 3 north and 4 west and 1 south and 2 east from the start” where there is absolutely no clue anywhere in the game that that is what you need to do.

Zelda II is much better, but still has its moments of “what? huh?”.

Thank goodness for FAQs.

Sonic is as Sonic always is; the ultimate ZEN game. That is, to maximize points, you have to just go go go with no regard for what is coming next because you can’t see it! But the faster you go (learning the occasional hiccup/exception), the more points you get. Seriously — Sonic seems to be all about trusting in “the flow” of the level design. And the level design is generally pretty amazing.

It strikes me that Sonic is going to be a whole new– and spectacular– gaming experience on a really high resolution large screen where you can see about 10x more of the level than in the original games.

Subversion v1.0.2 packages available

Tuesday, April 20th, 2004

Fred has made Subversion v1.0.2 packages available on his public iDisk (mount the URL http://idisk.mac.com/wsanchez/Public/ in Finder or go to the public iDisk named wsanchez).

Alternatively, the packages can be downloaded via http.

Highlighter & TinyURL

Thursday, April 15th, 2004

I have two entries on my Safari bookmarks bar that are not actually bookmarks.

The first is Highlighter. Once navigated to any random page, I can click on the Highlighter bar button, enter the word on the page I’m looking for, and Highlighter will highlight all instances of that word with a yellow background.

The second is TinyURL. It will take any really long/ugly URL and reduce it to a very short URL. Useful for email and other forums where the URL will be exposed.

Both links take you to the original source of each little hacque. Each page contains the appropriate link that you can drag-n-drop onto the Safari bookmark bar (or wherever).

Earth Observatory: Natural Hazards

Tuesday, April 13th, 2004

NASA’s Natural Hazards site collects various current events happening at a global scale. The site presents a global map with icons denoting different kinds of world events for which NASA has made satellite imagery available. Click through to find the images and an informative write-up of the event.

Easter Salmon

Sunday, April 11th, 2004

The random path that my life follows has led to the first Easter in my life where I’m alone. My immediate family is visiting the rest of the family on the East Coast. As much as I miss them, I’m thoroughly enjoying the time alone.

Yesterday, I visited the local farmer’s market. Beyond an excellent assortment of fresh fruits and veggies, the market also has a wonderful fresh fish stand that sells only fish caught in the wild. I picked up some smoked salmon and a good sized filet of fresh salmon. I was intended on grilling the salmon but, as it would only be my taste buds at risk, I decided to try something different. It was a success!

skillet salmon

1. Take a good sized cast-iron pan, an inch and a half deep or so.

2. Heat the pan on high and add butter, fresh basil and fresh thyme. Simmer these together just long enough that the butter is melted nad the basil/thyme is starting to wilt a bit.

3. Add wine and orange juice such that the pan is about 1/2 full — about 3/4″ deep.

4. Put the salmon filet skin side down in the middle of the pan

5. Cover with the top (preferably glass) of a pot that is slightly smaller than the skillet. The sides of the top should all be submerged in the wine/juice.

6. Let simmer for 10 to 15 minutes, deepending on the thickness and size of the filet. The salmon should be just starting to turn opaque all the way through. This will be messy as the wine/juice should be boiling fairly vigourously. Since the sides of the pot top are submerged, it’ll build up pressure under the top that will vent out the sides, spraying wine/juice out of the pan a bit. I covered the entire thing with a fry screen such that the drops were caught and dripped back into the pan.

The end result was an incredibly delicate filet of salmon. It was hard to eat with a fork because it fell apart so easily. The salmon was infused with the flavor of the wine/juice/herbs, but not so much as to override the flavor of the salmon itself.

Very, very tasty. I think I will be inflicting this recipe upon others in the near future.

Cool LaunchBar Trick

Thursday, April 8th, 2004

I stumbled across a LaunchBar (4.0beta) feature today.

I hit to trigger LB and typed a match followed by a ‘.’. Not sure why I typed a ‘.’, but LB’s response was a really nice surprise.

As soon as a ‘.’ is entered, LB presents a text field with an ‘Open Location’ label. Subsequently, entered text is interpreted as entering a hostname with “.com” on the end. Hit a second ‘.’ and LB erases the .com and assumes you are entering a fully qualified hostname.

Furthermore, the arrow keys (and emacs editing keys) can be used to quickly override the automatic behaviors of LB.

Nice attention to detail!

Scam alert: MWI Essentials

Saturday, April 3rd, 2004

In the course of a routine check of our credit card statements, my wife discovered a charge from MWI Essentials for about $150 that she didn’t recognize. Neither did I.

A quick Google Search displayed the word scam in most of the results. Not a good sign.

As it turns out, MWI Essentials is but one of many MWI* organizations of the “opt out” variety. That is, the various companies will “opt you in” to annual or monthly charges against your credit card with zero notification to you. It is up to you to “opt out”. Opting out is apparently quite difficult and, of course, you have already been nailed for at least one charge by the time you discover these assholes have stolen your money.

We are just now starting the process of excising the charge from the credit card and having the CC company block all future charges from MWI*. It appears that MWI* is fairly responsive to dealing with such complaints, but will simultaneously “opt in” your CC to other MWI* “programs”. We are going to see if we can’t get the CC company to just block all charges from any form of MWI* once and for all.

A bit more goosearch reveals that it is likely MWI* glommed onto my wife’s credit card after she ordered Tae-Bo tapes during that particular craze (to her credit, she used the tapes quite to her physical benefit). Apparently, the fulfillment company has some kind of connection with MWI and the company that actual produces the Tae-Bo tapes

This seems to be one of the better sources of information in regards to this scam.

The only other item we have purchased through a infomercial type channel was Oxi-Clean before it had become available through regular retail channels. It was purchased out of desperation as my dog had made a grease stain on a carpet of a magnitude that was truly awe inspiring. The stuff actually worked.

In any case, check those CC statements closely….

LaunchBar 4.0b1

Friday, April 2nd, 2004

LaunchBar 4.0b1 is out. It is rock solid, faster than version 3, has a bunch of new features, but remains focused on being a fast, habit learning, type style launcher.

One of the cool new features is Search Templates. With search templates, I can type [cmd-spc]goo[spc]MWI essentials[return] and up pops a Safari window with all I need to know about the scamming asses that charged my wife’s credit card without her permission.

In the configuration window, it is easy (but not easy enough — feature request filed) to add new search templates. Select Search Templates in the configuration list, name the template, and paste in the search URL. Replace the part of the URL that contains your search term with a ‘*’ and LaunchBar shoves whatever you type as the search into the URL before passing it off to the system.

Simple. Elegant. Just works. I use it a dozen+ times a day without even thinking about it.

Some additional recipes (Thanks Ben, Patrice, and others!):

Amazon Books
http://www.amazon.com/exec/obidos/external-search?mode=books&keyword=*
Amazon Music
http://www.amazon.com/exec/obidos/external-search?mode=music&keyword=*
Epicurious — Food
http://www.epicurious.com/s97is.vts?action=filtersearch&filter=recipe-filter.hts&collection=Recipes&ResultTemplate=recipe-results.hts&queryType=and&keyword=*
MacUpdate
http://www.macupdate.com/search.php?keywords=*
Plants Database
http://plantsdatabase.com/search.php?search_text=*
Python (Current release)
http://starship.python.net/crew/theller/pyhelp.cgi?keyword=*&version=current
WebTender
http://www.webtender.com/cgi-bin/search?show=20&verbose=on&name=*
WebTender Ingredients
http://www.webtender.com/cgi-bin/search?show=20&verbose=on&ingr=*
CocoaDev Wiki
http://www.cocoadev.com/index.pl?search=*

Books, plants, google, APIs, and drink recipes all one [cmd-spc]…[spc]…[return] away.

PyObjC News

Friday, April 2nd, 2004

The PyObjC CVS repository has had a series of significant commits over the past few weeks. If you are using or considering PyObjC on Panther, I would highly recommend working with the latest from CVS. PyObjC has an extensive set of unit tests and a development team that is very good about running the tests before committing. As such, the latest CVS is generally very stable with the rare bit of blood loss.

Specifically:

A series of commits from Bob Ippolito and Ronald Oussoren have made it much less painful to use PyObjC with Distributed Objects, NSProxy, and in threaded environments. It worked before, but barely and inneffeciently. Now it is relatively stable. If this sounds a bit non-commital, it is because in-process DO, threading and use of NSProxy are all hard to get right, regardless of language of implementation. The word “easy” and the words “just works” does not belong here.

Donovan Preston has been actively working on the Xcode project template. It now uses Bob’s main.m and, as such, should work with any dynamic library or framework install of Python on OS X. Better yet, it does so automatically. Bob’s code also provides significantly better error handling during the startup phase of PyObjC based apps.

Finally, I am continuing to add PyObjC hacques to my Subversion repository. As well, ReSTedit continues to evolve and will be getting some pretty neat features fairly soon (I hope).

Overall, I have to say I’m incredibly impressed and proud of PyObjC. It isn’t mine, per se, but I do feel a bit of ownership from simply having been involved on the project for so long. It has come a long, long way since 1994 (I wish I knew the original date it came into existance — as it stands, I’m going to call WWDC the arbitrary 10 year anniversary of PyObjC).

News in a Treemap

Friday, April 2nd, 2004

Newsmap offers a treemap style presentation of the headlines culled from Google News.

Newsmap is based on Flash. It loads faster, but is not as interactive as the Map of the Market.