WWDC Impressions, Day 1

Monday, June 9, 2008

The big thing at WWDC is always the keynote address. Steve Jobs inevitably riles up the crowd (mostly composed of Mac geeks) by some groundbreaking announcement. This year’s keynote, while not as feature-rich as previous years’, at least gave me a month to wait for the iPhone 3G that I’ll inevitably have on pre-order as soon as that’s an option (does anyone want a black Razr?). The other big announcement at the keynote, aside from all the presentations by iPhone software engineers, was Apple’s replacement for .Mac, “MobileMe”. I’m of two minds about this service. First, I think the idea of the service is great. I sync my iCal, Address Book, etc. with Google right now through Spanning Sync; MobileMe is more expensive but also does photo albums and a 20 GB iDisk. I imagine I’ll try the 60-day trial and either not use it or enjoy it enough to subscribe. The part I don’t like is the name; Apple’s marketing department is usually top-notch, yet the logo for MobileMe is eerily reminiscent of Windows ME. Hopefully the two products won’t have the same “success” stories.
Time to go to my first session (which I can’t legally talk about here).

Off to California

Sunday, June 8, 2008

I’m headed out today to California for WWDC.  This is my first business trip, so I’m really looking forward to it!  I don’t know how much of a reliable Internet connection I’ll have, but I’ll try to post impressions of the conference and the city.

If I Were an Engineer

Thursday, June 5, 2008

I was in an elevator today going down from the SEB site and I had an amazing idea.  One of the things that I hate about elevators is not knowing when it’s going to stop between my floor and my destination.  Just today as I got on, a woman went to exit the elevator but realized that it had stopped before her destination to pick me up.  The solution?  Next to the numbers indicating which floor the elevator is on, an up and down arrow-shaped light.  If someone on floor five presses “up,” it lights up the up arrow next to the number five in the elevator car; this way its occupants know the stop is coming.  For multi-car elevator systems, the light would only light up in the car that was going to stop at that floor.  Instant information for the elevator passengers.

A solution in search of a problem?  Perhaps.  But I think it’d be sweet.

Updated: Resizer AppleScript

Wednesday, May 28, 2008

After looking at my AppleScript to resize windows, I’ve decided to make a few updates.  Instead of manually doing the math for each resolution, I’ve created a new variable, desired_width, which is exactly what it sounds like: how wide you want your windows to be.  I’ve also made the other variable names more human-friendly: _nl and _nr are now left_bound and right_bound, respectively, for example.  After adding iTunes to my script, I noticed that it was being resized behind the menubar, so instead of setting the upper bound for all windows at 0, I’ve defined the variable top_bound, which defaults to 22 to account for the height of the menu bar.  If you find that this setting is incorrect (e.g. if you’ve enabled some accessibility settings that change font sizes and therefore the size of the menu bar) you may need to change it; I haven’t found a way to get the height of the menu bar in AppleScript yet—so far I’ve only found it in Java—so if anyone knows feel free to leave a comment.  Finally, after seeing this post by Jamie Matthews, I added some functionality to automatically set bottom_bound to the height of the Dock.

After all of these updates, the script now takes a desired width and moves applications that support AppleScript such that they range horizontally to your desired width, centered on the screen, and stretching from the bottom of the menu bar to the top of the Dock.  In the future, I’d like to make a separate application, perhaps AppleScript-based, that will allow for user customization of how the windows are arranged, allow for custom application settings, and perhaps Spaces integration.

My Favorite Computer Setup

Tuesday, May 27, 2008

My Favorite Computer Setup

I use my MacBook Pro in a few different scenarios: by itself, plugged in to a 21” Apple Cinema Display, or plugged in to a 24” Dell 2405FPW.  I’m also rather OCD; I prefer my Firefox/Safari, Mail.app, and Vienna windows to be centered, stretch from the menu bar to the top of my Dock, and be a certain width.  I created a small AppleScript to auto-detect my resolution and size the windows accordingly:

tell application "Finder" set screen_resolution to bounds of window of desktop set screen_width to item 3 of screen_resolution set screen_height to item 4 of screen_resolution end tell tell application "System Events" to tell process "Dock" set dock_dimensions to size in list 1 set dock_height to item 2 of dock_dimensions end tell set desired_width to 1400 set side_space to screen_width - desired_width set left_bound to (side_space / 2) set right_bound to left_bound + desired_width set bottom_bound to screen_height - dock_height set top_bound to 22 (* for the menu bar *) try tell application "iTunes" activate set the bounds of the first window to {left_bound, top_bound, right_bound, bottom_bound} end tell end try try tell application "Firefox" activate set the bounds of the first window to {left_bound, top_bound, right_bound, bottom_bound} end tell end try try tell application "Mail" activate set the bounds of the first window to {left_bound, top_bound, right_bound, bottom_bound} end tell end try try tell application "Vienna" activate set the bounds of the first window to {left_bound, top_bound, right_bound, bottom_bound} end tell end try

With that in place, I saved it as an application in ~/Applications, and put it in my Dock. Now, whenever I change resolutions, I just click the button and everything is how I like it.

To change the script, you should be able to add any application with an AppleScript dictionary that supports moving and sizing the window.  The numbers I’ve used make the windows 1,400px wide, and the height that you want will depend on the size of your Dock. The script moves windows to the center, desired_width wide, and from the menubar to the Dock.

Note: I have had some trouble recently; sometimes when I change my resolution the AppleScript doesn’t pick it up.  To combat this, I told the Displays System Preferences pane to keep its icon in the menu bar; when my script uses the incorrect resolution, I change my screen resolution then change it back, which is enough for the script to detect the change.

Update 2008-05-28: Made some usability changes. Details here.


Saturday, May 17, 2008

I’m really looking forward to WWDC this year.  It’ll be the very first time I’ve been sent anywhere on a business trip, and I plan on not only learning a whole ton, but also having a great time and meeting cool people.  Apple just posted the schedule, so I’ve been mapping out an itinerary filled with mostly the IT track stuff (since, obviously, I’m in IT).  Unfortunately, the developer sessions that I’m interested in are mostly offered during IT sessions that I’m interested in and are also directly relevant to my job, so I’ll probably go to the IT ones and watch the developer ones on video—I believe WWDC tickets come with free video downloads via iTunes.

Being in San Francisco should be fun, too.  I might hit up a Giants game while I’m there, and I’m going to try not to eat at the same restaurant twice (hotel breakfast bar excluded).  Any good suggestions on things I should do or food I should eat while in town?  Leave a comment!