Steve Jobs died yesterday.

I’ve been a Mac guy a long time, but I’m not going to wax poetic about my first Mac, the joy I’ve gotten from Apple products, or how the Mac first made my career at Aldus/Adobe possible, then later transformed my career with iOS.

Apple and Steve Jobs struck gold with so many of their recent blockbuster creations like the iPod, iPhone, iPad, and MacBook Air.

But it wasn’t always so.

Sure, Apple has made plenty of flop products, and has come around to success, but to me that’s not the Jobs legacy.

What I admire most about Jobs is that for a long time he languished, and was easily dismissed by many.

His return to Apple was nostalgic, but by no means a slam dunk for the success of Apple.

It was after all of this that his best creations came to life.

The fact that he wasn’t born a genius, that he had to tread through the mediocre products and personal failures before he arrived, gives me hope.

If you think about it, this is obvious. Everyone including geniuses has to work and fail and work and fail again before their genius is realized.

But it’s easy to find yourself in the midst of mundane work, in the midst of failure and start doubting, start slowing down. During those times is when Steve Jobs’ legacy is a welcome shot in the arm, propelling me forward.

Even if most of us are no geniuses, and none of us are Steve Jobs, I still like the idea that our best work is still ahead of us.


Back in the mid 90′s I got my first high tech job at Aldus in Seattle’s Pioneer Square neighborhood.

Twelve years later I left the InDesign team at what was now Adobe Seattle to follow the Web 2.0 allure and to scratch a growing entrepreneurial itch.

When the iPhone came out I was hooked, first as a user and later as a developer and for the past two years I’ve been immersed in iOS coding at Seattle’s Zumobi

Today I’m thrilled to announce that I’m joining Zaarly to head up their mobile development.

I first heard about Zaarly from this GeekWire article: Seattle techie goes to L.A., returns with Ashton Kutcher-backed startup Zaarly
It’s a fascinating startup story.

So what is Zaarly?

Zaarly is a proximity based, real-time buyer powered market. Buyers make an offer for an immediate need and sellers cash in on an infinite marketplace for items and services they never knew were for sale. What’s your price?

With Zaarly I can keep scratching my entrepreneurial itch, but more importantly the idea fascinates me. Some days we all just need a little extra convenience or something special that we can’t normally get.

You can find out more about Zaarly at zaarly.com, on Facebook: facebook.com/zaarly or Twitter: @Zaarly

The official Android SDK page has instructions on getting setup but they cover multiple platforms and contain lot of noise. Here is the short list of instructions:

System Requirements: You need an Intel based machine running 10.5.8 or later

  1. Download Eclipse
    Download the latest version of Eclipse Classic from http://eclipse.org/downloads. If you use Eclipse for other things, there are other supported versions.
  2. Install Eclipse
    Move the Eclipse file you downloaded to /Android  (or elsewhere that is convenient for you) and expand it.
  3. Download/Install SDK
    Download the Android SDK from the Android SDK page, move it to /Android and expand it.
  4. Update your PATH environment variable to know about the Android tools
    There are different ways of setting your default PATH variable. I use ~/.bash_login but ~/.bash_profile also works. The Android tools are in the tools directory of the Android SDK. So this is what I added to .bash_login:
    export PATH=$PATH:/Android/android-sdk-mac_x86/tools
  5. Install the Android Development Tools (ADT) Eclipse plugin
    a. Launch Eclipse and select Help -> Install New Software
    b. In the Install/Available Software dialog that appears click Add… in the top right hand corner
    c. In the Add Repository dialog that appears enter:
    Name: Android Plugin
    Location: https://dl-ssl.google.com/android/eclipse/
    d. After you hit OK, you’ll see Developer Tools appear, check it and click Next >

    e. Click Next > again and then agree to the terms of the license agreement and click Finish
    f. You’ll be warned that some of the software contains unsigned content. Click OK
    g. You’ll be prompted to restart Eclipse. Click Restart Now
    h. After Eclipse restarts, go into Eclipse -> Preferences (⌘,)
    i. Select Android in the left column, click Browse… and navigate to the SDK location on your drive: /Android/android-sdk-mac_x86

 

    Are you getting a -39 error when you are syncing your iPhone/iPad/iPod Touch?

    To get rid of it, you have to delete the ‘optimized’ versions of your photos and force iTunes to re-generate them:
    1. Navigate to ~/Pictures/iPhoto Library (~ means your home folder)
    2. Right click on iPhoto Library and select Show Package Contents
    3. Delete the folder named “iPod Photo Cache”
    4. Sync your device again.

    iTunes will regenerate the optimized versions of your photos and you will no longer have an error syncing.

    Thanks to MacRumors.

    How many times have you done a Find in Project (Command-Shift-F) in TextMate and accidentally searched through your Rails development.log or your Xcode build files?

    TextMate tries to read these massive files and your whole machine grinds to a halt. I finally got tired of this and figured out how to configure TextMate to automatically ignore these folders.

    Go to TextMate’s Preferences -> Advanced -> Folder Pattern

    Replace this default pattern:
    !.*/(\.[^/]*|CVS|_darcs|_MTN|\{arch\}|blib|.*~\.nib|.*\.(framework|app|pbproj|pbxproj|xcode(proj)?|bundle))$

    with this pattern that adds an exclusion for folders named ‘build’ or ‘log’:
    !.*/(\.[^/]*|CVS|_darcs|_MTN|\{arch\}|blib|.*~\.nib|.*\.(framework|app|pbproj|pbxproj|xcode(proj)?|bundle))|build|log$

    I started using the TweetDeck User Stream Preview today and instantly I was able to see how fast tweets were coming in for each column. I was especially struck by the speed difference between my iPhone/iPad column and my Android column:



    Every once in a while you have to compile an older project with an iPhone SDK you may no longer have installed. Apple removes links to the older versions even though the SDKs are still on their servers.

    Please note that you need to be logged into your iPhone Developer Account

    Update: Removed the older links that are no longer hosted on adcdownload.apple.com.
    Update 2: Changed links from developer.apple.com/iphone to developer.apple.com/ios

    iOS 4 Software Update

    This update contains over 100 new features, including the following:

    • Multitasking support for third-party apps*
    - Multitasking user interface to quickly move between
    apps
    - Support for audio apps to play in the background
    - VoIP apps can receive and maintain calls in the
    background or when device is asleep
    - Apps can monitor location and take action while
    running in the background
    - Alerts and messages can be pushed to apps using
    push and local notifications
    - Apps can complete tasks in the background
    • Folders to better organize and access apps
    • Home screen Wallpaper*
    • Mail improvements
    - Unified inbox to view emails from all accounts in one
    place
    - Fast inbox switching to quickly switch between
    different email accounts
    - Threaded messages to view multiple emails from the
    same conversation
    - Attachments can be opened with compatible third-
    party apps
    - Search results can now be filed or deleted
    - Option to select size of photo attachments
    - Messages in the Outbox can be edited or deleted
    • Support for iBooks and iBookstore (available from the
    App Store)
    • Photo and Camera improvements
    - 5x digital zoom when taking a photo**
    - Tap to focus during video recording**
    - Ability to sync Faces from iPhoto
    - Geo-tagged photos appear on a map in Photos
    • Ability to create and edit playlists on device
    • Calendar invitations can be sent and accepted wirelessly
    with supported CalDAV servers
    • Support for MobileMe calendar sharing
    • Suggestions and recent searches appear during a web
    search
    • Searchable SMS/MMS messages**
    • Spotlight search can be continued on web and Wikipedia
    • Enhanced location privacy
    - New Location Services icon in the status bar
    - Indication of which apps have requested your location
    in the last 24 hours
    - Location Services can be toggled on or off for
    individual apps
    • Automatic spellcheck
    • Support for Bluetooth keyboards*
    • iPod out to navigate music, podcasts and audiobooks
    through an iPod interface with compatible cars
    • Support for iTunes gifting of apps
    • Wireless notes syncing with IMAP-based mail accounts
    • Persistent WiFi connection to receive push notifications*
    • New setting for turning on/off cellular data only**
    • Option to display the character count while composing
    new SMS/MMS**
    • Visual Voicemail messages can be kept locally even if
    they have been deleted from the server**
    • Control to lock portrait orientation*
    • Audio playback controls for iPod and third-party audio
    apps*
    • New languages, dictionaries and keyboards
    • Accessibility enhancements*
    • Bluetooth improvements
    • Better data protection using the device passcode as an
    encryption key* (Requires full restore.)
    • Support for third-party Mobile Device Management
    solutions
    • Enables wireless distribution of enterprise applications
    • Exchange Server 2010 compatibility
    • Support for multiple Exchange ActiveSync accounts
    • Support for Juniper Junos Pulse and Cisco AnyConnect
    SSL VPN apps (available from the App Store)
    • More than 1,500 new developer APIs
    • Bug fixes

    Products compatible with this software update:
    • iPhone 3G
    • iPhone 3GS
    • iPhone 4
    • iPod touch 2nd generation
    • iPod touch 3rd generation (late 2009 models with 32GB
    or 64GB)

    * Requires iPhone 3GS, iPhone 4, and iPod touch 3rd generation.
    ** Requires iPhone 3G, iPhone 3GS, and iPhone 4. SMS/MMS messaging and Visual Voicemail require support from your wireless carrier.

    For feature descriptions and complete instructions, see the user guides for iPhone and iPod touch at:

    http://support.apple.com/manuals/iphone

    http://support.apple.com/manuals/ipodtouch

    For more information about iPhone and iPod touch, go to:

    http://www.apple.com/iphone

    http://www.apple.com/ipodtouch

    To troubleshoot your iPhone or iPod touch, or to view additional support information go to:

    http://www.apple.com/support/iphone

    http://www.apple.com/support/ipodtouch

    For information on the security content of this update, please visit this website:

    http://support.apple.com/kb/HT1222

    iPhone OS 3.0 introduced Spotlight Search: Flick to the left and you can search through the apps you have installed as well as other things like contacts, calendars events, emails, songs and notes.

    For apps the iPhone OS will look at the app name that you see under it’s icon. So typing ‘bird’ would find the Birdfeed app.

    But the OS also looks at the name of the app as it appears in iTunes. Birdfeed’s name in the app store is “Birdfeed – A very nice Twitter client”, which is why Birdfeed shows up when you type ‘twitter’.

    spotlight

    When you download an app to your phone the .ipa file includes the actual app binary as well as an iTunesMetadata.plist file. This plist file contains the app’s name as it appears in iTunes.

    Tweetie on the other hand doesn’t show up in the screen-shot above even though it is installed on the phone. Tweetie’s name in the app store is “Tweetie 2″ which doesn’t include the word ‘twitter’.

    Follow us on Twitter

    I just finished helping a family member across the country with their wireless network setup. Neither the local ISP or Netgear technical support were able to help.

    Problem: An iMac plugged directly to a Netegear router via Ethernet connected to the Internet just fine, but a wireless connection from a MacBook didn’t work.

    First we figured out that the router was a Netgear WPN824v3 and the devices we are trying to connect are an iMac, a MacBook and an iPhone.

    The problem was that the MacBook was connected to the wireless network but wasn’t properly getting an IP address via DHCP.

    We verified that plugging the Ethernet cable into the Macbook worked, so we knew that the Internet connection to the ISP worked fine, and the problem was only for wireless.

    First we tried temporarily turning off all wireless security but that made no difference.

    Next I found a simulation of the UI for that unit here. This made it a lot easier to see what options were available for that router.

    We changed the default password for the router and enabled Remote Management. Now I could log in to the router and see the router’s actual settings.

    The first thing I noticed was that the Mode for the wireless network was set to “Auto 108Mbps”. Did this router support 802.11n? And did it work with the built-in Airport card? A couple of Google searches turned up no answer.

    So next I decided to try to get things working with just 802.11g.
    First I set the Mode to “g and b” and set the Channel to “Auto”. That didn’t change anything. The MacBook could still connect to the wireless network, but not get an IP address.

    Under Advanced/Wireless Settings I noticed an “108Mbps Settings” area. I checked “Disable Advanced 108Mbps Features” and un-checked “Enable eXtended Range(XR) Feature”

    Success! The Macbook could now successfully get a DHCP IP address!

    Before finishing, we made sure that the bottom of the router had a piece of paper with the router’s password and we disabled the router’s Remote Management feature and re-enabled the WPA2 password and re-verified that everything was still working as expected. We also made sure that the iPhone could also connect without any problems.

    Happy Troubleshooting!

    Follow me on Twitter

    Follow

    Get every new post delivered to your Inbox.