Adam Fields (work stuff) RSS

This is my blog about work stuff.

See this post for discussion of what this blog is about and what I do.

I am often available for consulting work, and always happy to discuss it even if I'm currently very busy. Email me or find me on twitter @fields if you need something.

Archive

Dec
14th
2011
Wed
permalink

Horrible disk performance on Lion with external drives connected (solved!)

I’ve been plagued by poor disk performance on my Mac Pro for the past few weeks - spinning beach balls when changing applications, long delays to show directory listings in Finder, and general system slowness. Frustratingly, it seemed to be correlated directly to the number of external drives I had attached, and sometimes showed an inverse correlation with the speed of the drives (i.e.: switching a drive from usb 2.0 to firewire 800 would make things worse). Also, after some amount of time, my blu-ray burner would freeze up and lose the ability to eject the tray. I thought that latter was some sort of incompatibility with the eSata expansion card I’d added, but much experimentation yielded that it was not the problem.

As it turns out, there was one simple setting to make all of these problems go away:

20111214-djxadsaw51umeshntejmwki73q.png

Just unchecking “Put the hard disk(s) to sleep when possible” cleared up everything (many thanks to this forum thread for the tip). I don’t recall ever changing it, but it’s possible.

I guess some of the drives have poor handling of the sleep instructions, and the blu-ray drive definitely does (though they seem to have resolved the problem with the Pioneer blu-ray drive with Lion, since that’s the one I have, and it works fine after changing this setting).

Comments (View)

Oct
18th
2011
Tue
permalink

How to set up iMessage to work with multiple iOS devices

iMessage is a great replacement for SMS on iOS5, but it’s not obvious how to set it up to work with the same conversations on multiple iOS devices. I’d thought that this wasn’t necessary, but I didn’t get messages in the right place until I made these changes. You’ll need to do this on all of your iOS devices. Only the iPhone is pictured here - the iPad setup is simpler because it defaults to using email.

From Settings > iMessage, choose Receive At.

Step 1 - How to set up iMessage to work with multiple iOS devices

Add your email if it’s not listed.

Step 2 - How to set up iMessage to work with multiple iOS devices

Now you’re set up to receive messages at your email address instead of your phone number, but you need to tell people you’re sending messages to that they should send the return messages to your email address so you can get them on your iPad (which shares your email address, but not your phone number).

Choose Caller ID:

Step 3 - How to set up iMessage to work with multiple iOS devices

Make sure your email address is selected, not your phone number.

Step 4 - How to set up iMessage to work with multiple iOS devices

That’s it - you should now receive messages on both devices.

Comments (View)

Oct
5th
2011
Wed
permalink

Apple just threw a huge bone to existing iPhone 4 users selling their old phones

This is a great example of Tim Cook’s operational brilliance. Apple just threw a huge bone to existing iPhone4 users in reselling their old 16 or 32GB phones by discontinuing those models. There’s going to be a large demand for them in the secondary market by people who want to mid-range upgrade to an iPhone 4 but want more than 8GB.

Comments (View)

Aug
16th
2011
Tue
permalink

Impressions of Lion

I’ve now upgraded a few machines to Lion, and I’m pretty ridiculously happy with it overall (the main exception being the removal of Front Row, which I used all the time on my media center Mac Mini, which has caused me to downgrade that machine back to Snow Leopard).

Some random thoughts in no particular order:

  • My own personal feelings on the matter of natural scrolling are that I don’t really care. On a trackpad, I seem to be able to switch back and forth without much hassle (and before this, I was never really sure which way things were going to move when scrolling anyway). On my trackball, which has a scroll wheel, I didn’t see any point in changing the direction, so that just works like it always did. I still prefer my trackball for most work, though it’s nice to sit back and read pages sitting back and lazily scrolling with the trackpad. Some of the gestures are useful. I love that there’s a gesture navigation for switching months in iCal now. That always frustrated me. I also like the two-finger double tap to zoom.
  • FileVault has been completely overhauled, and there’s now no more excuse for not using it on a laptop. I haven’t noticed any performance drop from that, so I’m happy with it.
  • It is fantastic that Time Machine continues to take offline snapshots on a laptop when your backup drive is disconnected and then merges them when it’s reconnected.
  • On a single screen (my laptop), Mission Control and full screen apps are great. I finally find this mostly intuitive to use. On a multi-monitor setup, fullscreen apps are a disaster, and I don’t see much reason to use spaces. Your mileage may vary.
  • There is a significant and noticeable performance boost, roughly equivalent to the shift from Leopard to Snow Leopard. I suspect that many of the underlying system components got a lot more multi-core love this time around - the improvement on my 8-core Mac Pro is much larger than on my dual core laptop. Window redrawing and UI responsiveness is viscerally improved.
  • Most things worked just fine after the upgrade, though I did have to reinstall Xcode and macports, and recompile some native gems for ruby. Python is still a pain, but I don’t see how that’s any different from before.
  • I LOVE LOVE LOVE autosave and application resume, to the point where I’m baffled that people are complaining about this. On Snow Leopard, I’d often hold off rebooting for days, because I was in a working pattern and I didn’t want to disrupt all of the things I had open. On Lion, this issue seems to have mostly gone away. I did a cold restart test - i.e.: shut down the machine without first quitting all of my apps manually - and almost everything came back just the way I left it, including most of my Terminal windows. This is huge. It’s now possible to edit successive iterations of a draft in email, and it saves them as you go. When you close the window, it just updates the draft instead of prompting you to save a draft each time. I’ve always hated being prompted if I want to save my changes, and good riddance to that. I particularly like that this protection extends even to unsaved documents, which are also reopened the next time.
  • It’s nice to have a built-in maintenance/recovery partition. I’d always set this up manually anyway, and the included one is smaller (500MB vs. several gigs).
  • I really like that you can now go from quicklook to opening the file you’re previewing in either the default application (with a click) or any other application (with a hold-click). It’s little things like this that really make the difference. I’ll use this all the time.
  • I find the autocorrect relatively unobtrusive.
Comments (View)

Jul
27th
2011
Wed
permalink

My friend Kate’s iPad got flattened like a book.

My friend Kate’s iPad got run over on the highway. It got flattened like a book and separated into layers.

In her words: ‘The iPad2 was 3 weeks old and Ercu put it on the roof of the car and forgot about it.  We found it 2 miles down the road, 2 days later.  He said “there it is” and I said, that’s not it, that’s a catalog.  I couldn’t believe it — there it was, on the parkway, flapping in the wind.  So Sad!’

Kate's Flattened iPadKate's Flattened iPadKate's Flattened iPadKate's Flattened iPadKate's Flattened iPadKate's Flattened iPadKate's Flattened iPad

Comments (View)

Jun
3rd
2011
Fri
permalink

Apple _is_ iOS.

This hit me the other day. iOS and the app structure is modeled after the way Apple itself is organized. (I don’t have very much inside information on how the teams at Apple are structured, but from what I know, the metaphor feels right. I’d welcome additional examples that illustrate the point further.)

Small teams working on one thing at a time with constrained resources == a single app running at a time on an “underpowered” machine with limited resources, both of them delivering an exceptional user experience in the process by stripping away unneeded cruft and focusing on making one thing at a time better. Apple being slow in releasing a new version of the Remote app because the guy who worked on it was transferred to another team in the meantime - that’s how app backgrounding works with limited resources.

iOS works, because Apple is iOS.

Comments (View)

May
18th
2011
Wed
permalink

Every project needs a graveyard

Developers don’t want to delete code because it might be used down the road. Every project I work on these days gets a “graveyard” folder in the main source tree where people can put code they don’t need any more but don’t want to delete forever or lose track of in the repository history.

I find that this makes a HUGE difference in keeping the source files cleaner. Just having a place to put the code where you know you can find it later if you need it removes a lot of the hesitation in actually taking it out.

People will still comment out chunks of code for a while if they’re unsure that it can be safely removed, but eventually that code gets moved to the graveyard and taken out of the live codebase.

Comments (View)

May
13th
2011
Fri
permalink

All I want is a compact digicam that takes good pictures.

Here’s what I’ve been looking for in a compact camera:

1) f/1.4 fixed 50mm equivalent lens.
2) 8mp APS-C sized sensor.
3) No noticeable shutter lag.
4) Aperture priority mode when shooting without flash.
5) Shutter priority mode when shooting with fill flash.
6) Fast autofocus.
7) Completely retractable lens, pocket-sized form factor (elph-ish would be nice, but slightly larger would be ok).

I don’t know why nobody makes this.

Comments (View)

Apr
17th
2011
Sun
permalink

How to swap two variables without using a third (ruby edition)

Method 1:

> string1 = "sssss"
 => "sssss" 
> string2 = "ttttt"
 => "ttttt" 
> string1, string2 = string2, string1
 => ["ttttt", "sssss"] 
> string1
 => "ttttt" 
> string2
 => "sssss" 
Method 2:
> string1 = "sssss"
 => "sssss" 
> string2 = "ttttt"
 => "ttttt" 
> string1 = [string1, string2]
 => ["sssss", "ttttt"] 
> string2 = string1[0]
 => "sssss" 
> string1 = string1[1]
 => "ttttt" 
> string1
 => "ttttt" 
> string2
 => "sssss"
It’s probably worth noting that I’ve never once needed to do this in 15 years of programming for a living.

Comments (View)

Apr
13th
2011
Wed
permalink

A recent list of iOS apps I like

  • Facebook - iPhone only. On the iPad, I really like Social, but the authors stopped developing it and pulled it from the store. None of the other iPad clients even comes close, though Friendly is passable.
  • Dropbox
  • DuckDuckGo - front-end to duckduckgo search. Not necessary, but convenient to segregate search from general browsing
  • Omnifocus (nice on the iphone, stellar on the iPad)
  • Omnigraffle (iPad only)
  • Flipboard (iPad only) - nice visual feed / facebook twitter browser
  • Zite - personalized magazine based on your twitter, google reader, or delicious feed. It seems to always deliver something I want to read, which is good enough for me.
  • Tweet Library (iPad only) - stores your twitter stream in a way that’s easily searchable
  • Flickpad Pro (iPad only) - really nice flickr/facebook photo browser
  • GoodReader - all around document reader w/ dropbox support
  • Billings - decent companion to mac version
  • LinkedIn
  • OpenTable
  • Groupon
  • Amazon / Amazon Windowshop
  • Twitter
  • eBay
  • Instapaper - offline web page saver
  • 1Password - password manager - has its own built-in browser which is nice for very quick drops into a password-protected site
  • ExitStrategy - one of my favorite apps - they mapped where the exits are on all of the NYC train stations and tell you where to board the train so you’re near an exit when you get off at your desired station
  • Desktop Connect - vnc / remote desktop (iTeleport is also good. Screens is very nice, but crashes with multiple monitors)
  • ProCamera - hands down the best camera app I’ve used, and really fast even on my 3GS, doesn’t yet support iPad2 camera, but I have to think it will
  • Groceries - nice shopping list manager
  • Remote
  • NPR Music
  • Accuweather -this is the best weather app on the iPhone, I think. The Weather Channel app is better on iPad.
  • Kindle
  • Wikipanion Plus - nice wikipedia browser (Articles is prettier, but lacks some features)
  • Soulver - really nice calculator pad, also great on mac
  • Clock Pro - good collection of flexible timers
Video:
  • Netflix
  • Hulu Plus
  • AirVideo / StreamToMe - they’re both good, both let you stream a whole bunch of video/music from your desktop
Cooking:
  • Ratio
  • How to Cook Everything
  • Cellar - the best wine management app I’ve found
  • The MacGourmet app kind of sucks, but is very helpful if you use MacGourmet on the mac.
Games I keep coming back to:
  • Scrabble (all games should be this well done)
  • Fruit Ninja
  • Cut the Rope
  • Spite and Malice HD (there’s an iPhone-only version or the iPad version will run on both)
  • Graveyard Shift
  • Dungeon Raid
  • Dodge Dot
  • No, Human
  • Osmos / Osmos HD
  • Infinity Blade
  • 10 Pin Shuffle
  • Frenzic
  • Drop7
  • Monster Dash
  • Orbital
  • The Incident
  • Slice HD gets special mention for innovative use of touch controls

Comments (View)