paged=2&category_name=blog

Attending iOSDevCamp 2010 – Building Meet4Drinks

August 19, 2010 | Comments Off

iosdevcamp2010.png
I am attending the yearly iOSDevCamp event this weekend in SanJose, CA. This is a great event where iPhone/iPad software developers and UI/UX designers come together for a weekend of coding and exploration of ideas around how to use iOS devices. The event organizers hold something called a Hackathon where attendees form ad-hoc teams around shared application ideas and spend two full days designing and coding like crazy to build something cool. Everyone has a great time and meets like-minded folks in the developer community.

Earlier this year, in April the event organizers held a special iPadDevCamp. That was my first exposure to this great event format. You can read more about that experience over on the Powered By AMP blog. For that event I was on a team with some co-workers from Auctiva. We built a prototype of an e-commerce sales management tool for AMP sellers.

This time I’m attending solo, without a cadre of other Auctiva designers and developers. I want to explore developing location-aware applications for the iPhone and put together a basic idea for an app. It is called Meet4Drinks, and you can read more about it at http://www.meet4drinks.net.

If it sounds like something you would enjoy, it’s not too late to register today. The event starts tomorrow (Friday) evening and goes through Sunday evening. Visit http://www.iosdevcamp.org to register.

Look for updates on Meet4Drinks next week, once my head is back above water after the event. Hope to see you there.

iMac bluetooth problems gone, but how?

August 1, 2010 | Comments Off

My 27″ iMac has been having some very strange bluetooth problems lately. As mentioned in a recent blog post, all bluetooth devices were unavailable according to the operating system. Reboots didn’t fix the problem. Checking through the console logs turned up messages about the bluetooth drivers not working properly. Fortunately I had a USB keyboard so I was able to make a full backup of the system before scheduling an appointment with the genius at the Apple Store.

Now it has been a couple weeks and I have the machine back and Apple didn’t find anything wrong. In fact, they say the bluetooth works fine. I turned everything on and it works fine here too. I had a hunch that this might be the case. Last week my 13″ MBP had the exact same issue. No bluetooth devices would work with it. In this case a full reboot did correct the problem.

So, what bluetooth devices do I have, and which one is misbehaving and causing all of these problems? I don’t know for sure, but I suspect either the new iPhone 4 or the Plantronics Bluetooth Headset I have. The Apple Bluetooth Keyboard and Magic Mouse seem to be working fine. I have noticed other issues with the bluetooth on the iPhone 4 when it syncs with the Alpine IWA-505 head unit in my truck so my money is on the iPhone 4 being the cause in all of these bluetooth problems. Time will tell.

Wireless Keyboards and Mice are Great Until….

July 13, 2010 | Comments Off

Tonight I sat down at my 27″ iMac to get a little work done. The first thing I do is tap the keyboard and move the mouse to wake the machine from sleep mode. The machine awoke and then quickly displayed the Connection Lost graphics in the middle of the screen for both the mouse and keyboard. My first thought; no problem, it’s just the batteries so I replaced them. Still no connection (and it did seem kind of odd for both the mouse and keyboard batteries to be dead at the same time.) Looking up at the system tray I see an odd Bluetooth icon. Here’s a closeup of what I found:

LittleSnapper.png

The Bluetooth: Not Available message in the system tray is not a good sign. Next I opened up Console.app to see if there were any indications of what the root cause for this behavior was. It appears there is truly something wrong with the Bluetooth Module. Here is what it showed:

[AppleUSBBluetoothHCIController][FindInterfaces] some interface pipes were not found. Device is no good a a transport

A visit to the support forums at Apple led me to an idea to reset the SMC on the iMac. I tried that and still nothing. At this point I’m not a happy camper. It is looking like the Bluetooth Module in my iMac has given up the ghost.

Next step, the iPhone Apple AppStore application to make a Genius Bar appointment.

genius.png

If you have read this far then you might be wondering why I’m telling you all of this. The reason is simple. Without a USB keyboard and mouse laying around somewhere none of the troubleshooting above would have been possible. Having a wireless bluetooth keyboard and mouse ship by default with the iMac is a really odd choice on Apple’s part.

Thankfully I have a keyboard and mouse from the Xserve in my garage. In case you forgot what these old fashion beasts look like, here’s a picture of the dynamic duo that saved my bacon tonight!

backup_plan.png

One more reason to love my MacBook Pro as a Windows Development Box

May 24, 2010 | Comments Off

A big Thank You goes out to the folks over at Parallels.

For years I have been developing Windows applications on my MacBook Pro. When other developers ask me why my response is usually something like “The best windows development system I have is my MacBook Pro.” It is fast, the hardware build quality is excellent and best of all, with Parallels Desktop I can have the best of both worlds.

This weekend I saw a tweet from the folks over at Parallels that was part of their promotion to get people to upgrade to Windows 7. It was a contest to win a copy of Windows 7. Guess what – yup, I won! Check it out over on the Parallels Consumer Tech Blog.

Don’t forget to send your own tweet to @ParallelsMac to enter.

Busy Folks at Big Nerd Ranch!

May 1, 2010 | Comments Off

The folks over at Big Nerd Ranch are really busy these days. In addition to building a new learning center it looks like they are writing no less than three new books to be released this year. If you have ever read through Cocoa Programming for Mac OS X by Aaron Hillegass or had the fortune to attend one of his classes then you already know that these new books will likely become a core part of your programming library in the future.

The first new title is iPhone Programming: The Big Nerd Ranch Guide, written by Joe Conway and Aaron Hillegass. According to Amazon this book will be available for purchase on May 4th in paper form and May 6th for the Kindle. You can pre-order it now.

The second new book is titled More Cocoa Programming for Mac OS X: The Big Nerd Ranch Guide and is being written by Aaron Hillegass and Juan Pablo Claude. According to Amazon’s web site this book will be available in mid-July, 2010. At this point it appears the book will only be available in print form. Hopefully this will change and a Kindle version will be made available.

The third new book will be titled Objective-C Programming: The Big Nerd Ranch Guide and is being written by Aaron Hillegass and Mark Fenoglio. Amazon pegs the release of this book sometime in December, 2010. Cover art for this book has not been released yet.

iPad as Technical Book Reader? Absolutely!

May 1, 2010 | Comments Off

I have been lugging around technical books for the last 20+ years as part of my profession. The pace with which technology changes means there is a constant stream of new topics to study and that usually means buying books. The thing about many of these technology books is you don’t read them like a pleasure book. You tend to use them as a reference while you climb a new learning curve. It goes kind of like this:

  • Microsoft, Apple or someone else releases a new operating system or application. => More books
  • Open source tools like Subversion, Git or whatever gains in popularity. => More books
  • Start developing in a new language (Ruby, Python, Objective-C, …) => More books

The end result is that my garage is always full of books that either describe out of date technology or are still current but not relavent for the projects I am working on at the moment. Worst still, the books I am currently using usually end up weighing many pounds and take up a lot of room.

The difference between carrying around a bunch of paper books and an e-book reader is huge. This stack of books weighs in at 31.8 lbs. Compare that with an iPad that has most of the same books loaded onto it and weights just 1.8 lbs. I know which one I am going to be carrying in my backpack.

Early last year when Amazon released the Kindle2 I purchased one hoping to get rid of this problem by switching to e-books instead of paper books. I did a survey of the technical e-books available and it looked promising. Most of the books I was either currently using or would likely be interested in were now available from Amazon in an e-book version. Amazon made it possible for the Kindle to also read the mobi format so that meant I could also get books from The Pragmatic Programmer and O’Reilly.

You know what they say about the best laid plans and all that. The Kindle worked as advertised. I switched almost exclusively to e-books on the Kindle. The problem was, many of these technical books include figures or illustrations that are in color and the Kindle did an awfull job of displaying them. To make matters worse, you couldn’t change the orientation of the Kindle (no landscape mode) so images that didn’t scale well could not be viewed by rotating the device. This was almost enough for me to go back to paper books.

Flash forward about a year and the rumors were flying about Apple building a tablet/slate of some sort. Would it be a book reader, a netbook computer, a movie viewer or what? No one knew for sure but everyone was speculating. Then the announcement came that Apple would hold a special event to announce “Something they have been working on”. My Kindle2 went up on craigslist that day (about a week before the special event was held) and I sold it the next day. I love craigslist; it just works! The ironic part is I sold it to a software engineer who works for Apple.

We all know what happened next. Steve told us all what we needed (an iPad) and when we would be giving him our money. I listened, reserved one for pickup on the release day and the rest is history. Apple ships the iPad with an e-book reader called iBooks and they have an on-line bookstore where you can purchase e-books. Amazon shipped a Kindle reader for the iPad that uses wifi to sync with the Kindle on-line bookstore.

Here is a picture of my new 1.8 lb iPad that makes an excellent technical book reader.

All of my existing Kindle books transfered over to the iPad without any trouble. The Pragmatic Programmer books I had were all in the mobi format which the Kindle software on the iPad cannot read. No problem – I just downloaded the epub format of the same books from the Pragmatic Programmer on-line bookstore.

Publishers sell their e-books in one or more of the following formats:

  • PDF – Adobe format that permits publishers to lock the content down with DRM. In some cases they can be very restrictive about which applications you are able to read the books in. My advice is to avoid purchasing e-books from publishers who use this format unless they are DRM-free and also offer one of the following formats. There just isn’t any reason for you to be locked into PDF when the iPad is such a great reader.
  • mobi – A mobile electronic book format that was very popular when the PocketPC and Palm were in their hayday. You can read mobi files with the Kindle device, but not with the Kindle software on the iPad.
  • epub – Modern electronic book format. Supported in the Apple iBooks application. This is the best choice for an open format on the iPad right now. I favor epub over other formats. A very nice feature of the iBooks applications is the ability to search through books.
  • Amazon – Proprietary format from Amazon. The Kindle reader software for the iPad is excellent so if a book is only available from the Kindle store I go ahead and purchase it there with no regrets. The only downside right now is the lack of a good search feature in the Kindle software. Hopefully they will be correcting this in an update.

As an aside, everyone should make their e-books available like the folks at PragProg do. When you buy a book from them you get it in three formats (PDF, mobi and epub). This means you can read your book on basically any electronic device of your choosing. O’Reilly is almost as good.

To round things out here are a couple pictures of the user interface of iBooks and Kindle Reader for iPad.

This first two images are of the iBooks software. The image on the left illustrates the support for color and the nice page turn animations help you forget that this is not paper after a while. As is typical of most Apple user interfaces, this one has excellent usability. On the right you have a look at the search feature as implemented in the iBooks application. I have found that it works well, but is a bit slow. I would like to see Apple improve on the performance in an update.

The next image is of the Amazon Kindle for iPad software. Here I am showing you what the controls are like for selecting a font size and adjusting the background color and brightness. As I mentioned earlier, the main thing missing from the Kindle software is a search feature.

I would really like to have all my e-books in a single reader. Being forced to keep some in iBooks and others in the Kindle application really sucks, but I’m not holding my breath for a solution anytime soon.

Technical books are often used as references. Neither of the e-book reading applications do a good job with letting you keep multiple books open and rapidly switch between them. It would really improve the usefulness of the applications if you could keep more than one book open and use a multi-touch gesture to switch between them.

If you don’t have an iPad yet, run (don’t walk) to your nearest Apple store and pick one up. You won’t regret it.

A few small upgrades to the blog…

May 1, 2010 | 1 Comment

I just installed the Disqus commenting system on the blog and also added the WP Greet Box plugin.

iPad Review – First 24 hours

April 5, 2010 | Comments Off

My experience with it so far is mixed. Like you I tried to touch-type on the keyboard and that really didn’t work at all. I have tried to do the two finger plus thumbs approach and am not that fast typing like that. The keyboard is big enough that I find it kind of weird to hold it in one hand and type with the other. My hand has to move too far to get all the keys unlike on the iPhone where everything is much closer together. I have not tried to hook up a bluetooth keyboard yet either. I expect that to work much better for things like typing e-mails.

I ended up purchasing the 64GB version instead of the 16GB version. The change was based on a recommendation I heard on MacBreak Weekly. They mentioned that based on their preview use (had it for about a week before April 3rd) they feel that if you are going to use it to read books then you will easily fill the 16GB and then have to pick/choose which items to sync to your iPad. With the 64GB version you can just dump all the books/PDFs you want on it and not worry about running out of space.

I have the Kindle for iPad application on it and pulled down all my Kindle books. Very cool! It just works! I also downloaded the iBooks application from the App Store. That application reads the ePub format. I have purchased a number of technical books in the past few years from Pragmatic Programmers. All of their books are available in ePub format so I downloaded that version and loaded them into the iPad too.

So far I really like having all of my technical books in one place like this. I have not tried reading out in full sunlight, but expect it will be an issue. For reading indoors it works fine. Not as easy on the eyes as the Kindle, but it shows all of the technical illustrations in the books in full color which is much better.

I purchased the Pages, Numbers and Keynote applications from Apple also. They really show off the sort of things you can accomplish with the iPad, but the crash a lot. I feel more like a beta tester of these apps than just a user. Sort of a let down, but then I have been here before with other Apple products. Eventually these will be great applications.

With the iPad I also purchased the Apple case for the iPad. I was really surprised when I opened it up at home. The quality of the case is really bad. It only cost $39, but it sucks compared to the case that Amazon sells for the Kindle. After about 2 hours of using the iPad in the case I got so annoyed with it that now I am using the iPad without a case. I am shopping for a different case now.

I have had Safari crash on me more than once now on the iPad. It seems like the crashes were always on very long (lots of scrolling) web pages so maybe it is a memory issue. I’m not sure, but the end result is you are just reading along on the page and all of a sudden you are back to the menu of icons wondering how you got there.

Even more surprising than the crashes of apps on the device is the crash I experienced this morning of the Xcode development environment on the desktop. Apple released an update to Xcode that includes all of the iPad development tools yesterday. I was working on a sample application this morning, following the instructions on how to build an app when all of a sudden Xcode just up and crashed on me. This is very unusual. Earlier versions of Xcode have been very stable for years.

Over all I think purchasing one as a developer at this point is a good move, but for basic consumers it is probably more sensible to wait about 3 months before jumping on the iPad bandwagon.

Software Developers are Human Beings

December 7, 2009 | Comments Off

Over on the “Shaping Software” site they just posted a short article titled “Lessons in Software from Eric Brechner.” Eric is the Director of Development Excellence on the Engineering Excellence team at Microsoft. The article focuses on his insights about what attributes shape developers into software engineers. He suggests that strength and balance attributes are important. Briefly, they are enumerated as follows:

Strength attributes

  • Insightful
  • Reflective
  • Principled

Balance attributes

  • Serving and advocating
  • Eecution and slack
  • Trust and risk

I really enjoy reading articles like this where the author focuses on the human side of software engineering. As Eric says, You can’t accomplish anything truly impactful alone.

I think it is worth the time to read through this article! Highly recommended.

Better than Google: Real answers for Programmers, System Administrators and IT Professionals

June 7, 2009 | Comments Off

Technology is more complex now than ever. It seems like the diversity of topics a programmer, system administrator or IT professional must have some familiarity with grows exponentially. In the office it is all to common to hear someone say “Did you google it?” or “I found a post that looks like it might be related on google.” when trying to sort out complex technology issues.

Google is good, but real people working together, sharing their experience with each other and documenting the results for others to take advantage of works even better. Two sites that should be in every technologists bookmark list are stackoverflow and serverfault.

You can think of these sites as social networking communities with very focused areas of interest. Anyone can post a question to a site, anyone can provide an answer, and everyone votes on the best answers. Comments can be added to questions or answers, folks develop “street cred” by providing useful answers and eventually become recognized by their peers as knowledgeable on specific topics.


stackoverflow logo

Stack Overflow is a collaboratively edited question and answer site for
programmers – regardless of platform or language. It’s 100% free, no
registration required.


serverfault logo

Server Fault is a collaboratively edited question and answer site for system
administrators and IT professionals – regardless of platform. It’s 100% free,
no registration required.

« Previous PageNext Page »

www.idevelopsoftware.com is Stephen Fry proof thanks to caching by WP Super Cache