Waiting For My iPhone

Saturday, June 21, 2008

Maybe it’s the two-hour infomercial in California I attended. Maybe it’s the half-dozen times each night last week where one of us would say, “If I only had an iPhone, I could look up…” Maybe it’s all the cool iPhone applications that are going to come out. Or even the $200 price tag. Whatever it is, I really want an iPhone.  Watching Steve Jobs’ Keynote address (from an overflow room, as I hadn’t spent the night outside Moscone West in order to secure a good seat), I held out hope for him to say, “…and it’s available now!”  Alas.  Not only could I not get one at WWDC, but Apple has deigned not to allow Internet pre-sales.  I can’t even say that I will get an iPhone when the new version comes out, as I have to go to the store to get one, and they might be sold out by the time I get there.

More news also recently cropped up lately, saying that AT&T might not deliver on the $200 price point for people (like me) currently in a regular AT&T contract before the 2-year phone replacement cycle is over.  That’s pretty bad news, and it raises one obvious, but absolutely vital, question: how much is it going to cost me?  Inquiring minds want to know.

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.

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


Thursday, May 22, 2008

Mad props to both Lifehacker and The Unofficial Apple Weblog for linking to my resolution AppleScript.  I have to say, having gone in to writing the script never having written any AppleScript at all, learning it turned out to be a positive experience.

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.