Pocket Informant by WebIS: Interview with Founder Alex Kac
There is something to be said about the people who help lay the foundation for others to follow. I’m referring to the ones who create the new technology others later copy. You know the type, they are the first to go against the grain because they know there is a better way. They are the ones who risk everything to help create and define a new market where one does not currently exist.
This was the case with the first pioneers who helped create the Internet and turn it into what it is today, and its about to happen again. A small army of people have spent the last few months of their lives setting the stage for a new era in portable computing.
Alex Kac of WebIS is one of those people and I am pleased to have had the opportunity to speak with a fellow developer about his upcoming plans to bring his application, Pocket Informant, to the iPhone.
What gave you the idea to initially create Pocket Informant?
I started as a web programmer and during that time I was introduced to Windows CE. After working in Windows CE for a while, I saw a weakness in calendaring software and thought that it would be fun to create a better application for that platform. My first application was called WISAgenda, and it provided a 7-day week view, including the ability to view a whole month at a time and a specific day. The whole thing took a week to write, and I offered it for free.
That application got an incredible response and I got a bunch of feature requests. Realizing that it would take resources, I went ahead and asked for donations. That allowed me to expand the application and create a full featured program in 2001 called Pocket Informant 2.0. Pocket Informant contained a Calendar, Contacts, and Tasks.
How does the iPhone development environment compare to other the other platforms with which you have previously worked? Did you port the existing application code or write for the iPhone specifically?
We don’t port apps. Porting is the wrong thing to do. Realizing that the devices are completely different in terms of interface, we had to consider the hardware, interface options, etc. We looked at the main features in Pocket Informant over the last 8 years, and we looked at the database environment, and we decided which features make the most sense on the iPhone.
We found that after 8 years, the Windows Mobile version has accumulated a lot of features that a lot of people may not use right now. We saw this as a chance to start fresh, and also some of the items don’t necessarily apply to these new devices. Moreover, the iPhone version is different due to the limitations we have on the iPhone. Currently, we have 2 iPhone developers working on the project.
What type of limitations do you see in the development environment on the iPhone?
First, let me say that the iPhone SDK is a joy to use. For one thing the Framework is very modern. It has a little learning curve, but if you have experience in Objective-C you can get a good grasp of things pretty fast.
We also went to WWDC and that helped us learn a lot. We still think Visual Studio has a better debugger, but the iPhone environment does a much better job of finding memory leaks, we feel that we have full desktop IDE, Toolset, etc. It’s a very nice environment.
The biggest negative has been the fact that Apple had to rewrite a large portion of their API for the public use. For example, we don’t have access to the mp3 encodings, and we don’t have calendar access on the iPhone, this makes it harder for us to develop our application. Even so, we have come up with some ideas about how to make this work for the customer, and are being told this API portion will be made available shortly. The calendar access being unavailable, we are using our own databases, whereas on WinMobile we could use the system ones.
What advice would you give someone who is considering writing an iPhone application (in terms of things you’ve learned about their development environment)?
1. Go to WWDC, it was the number one thing that got us over mental hurdles about developing for the device. You’re surrounded by experts, there are labs, sessions. It’s the number one thing that helped me.
2. Download the SDK, learn Cocoa and Objective-C, and I strongly recommend reading Cocoa Programming for Mac Os X 3rd edition by Aaron Hillegass. You already need to know C++ and have a basic understanding of how to program. It goes through memory management techniques, very easy to read and understand. Samples are very well thought out, it’s the best exhaustive book on the subject. Its very linear and puts a lot of things together.
3. Go to Cocoabuilder.com and cocoadev.com. They are two really good sites to search. They have Wikis, resources, all sort of supportive materials. Do the sample code.
4. Link to the Apple Cocoa dev archives, you can search there for similar questions that you might have.
How long did it take you to design the current version of Pocket Informant for the iPhone?
Original version was 3-4 months in the making of 12-hour days, 7 days a week. The blackberry version also took 3-4 months.
Do you have plans on developing more applications after Pocket Informant?
We just finished Note2Self, and have sent it in for approval to Apple.
Any Final Words?
My personal feeling is that all devices have strengths and weaknesses. All devices have their own place in the market, and our company is going to take advantage of the strengths of each device.