paul's blog
The past few weeks have been extremely busy at my day job, so I haven't had any time to work on KnitMinder or other iPhone projects for quite some time. It seems like work is calming down now, so I thought I'd check in with a couple of things that I'll be focusing on in the coming months:
KnitMinder on the iPad
I used to boot up my laptop to check email and surf the web, but now that I have an iPad, the laptop stays in its bag and I carry the iPad around the house. It's a great device, and I think that Apple has hit another home run in the consumer electronics market. One of my primary goals for the next version of KnitMinder is to update it so it looks beautiful and runs well on the iPad. You may have noticed other developers and companies releasing versions of their apps specific to the iPad with a new and improved purchase price. This will not be the case for the next version of KnitMinder. I feel very strongly that nobody should ever have to pay for KnitMinder twice, so if you already have the iPhone version, you will not have to pay anything for the iPad version.
KnitMinder rewrite
I've mentioned before that I'm working on a major revision of KnitMinder (called, rather unimaginatively, "KnitMinder 2") to clean up and improve the way that the application runs internally. The changes are so pervasive, especially now that I'm adding iPad support, that I have decided to create an entirely new application rather than an update to the existing KnitMinder app. "But wait," I hear you saying, "does that mean we have to buy KnitMinder again? You just wrote that we would never have to pay for KnitMinder twice!" This is still true. My plan right now is to provide KnitMinder 2 as a free download. The app will have limited storage just like KnitMinder Lite, but if you need unlimited storage, you can unlock that feature with a purchase from inside the application for $2.99. Knitters who have already purchased the full version of KnitMinder would get that feature unlocked automatically. The Lite version of the app would no longer be necessary. If you already have KnitMinder or KnitMinder Lite, you will be able to use the import/export feature introduced in version 1.5 to transfer your data to KnitMinder 2.
The overall plan is to provide a better app that runs on the iPhone, iPod touch, and iPad, doesn't cost anything for existing users to upgrade, and makes it easier for new users to "try before you buy". I really want to hear your feedback about this plan, especially if you have any concerns about the direction I'm taking, so please leave comments on this site or email me using the contact form!
I just submitted version 1.5.1 for approval. This bug-fix release fixes the following issues:
- 0000096: [bug] no feedback if an image source is unavailable
- 0000141: [bug] changing pattern on project does not change project photo
- 0000145: [feature request] add acrylic needle material
- 0000142: [bug] sometimes unable to import
There is a minor change in how the program functions in this fix. Previously, when you added a pattern to a project, the pattern's photo was used as the project photo if the project didn't already have a photo. Now, the pattern photo will always overwrite any existing project photo.
Debra Roby has written an informative article on crafting apps on the BlogHer site which mentions KnitMinder and StitchMinder.
I just submitted the latest update of KnitMinder and KnitMinder Lite to Apple for approval. According to the developer support web site, 96% of updates are being approved within a week, so I'm hopeful that the new version speeds right through the approval process. New features in version 1.5 include:
- Import/Export: see the previous blog entry for details
- Added a count field for needles
- You can switch to UK needle sizes in the Settings app
- The "double-tap to frog" action in the counters has been replaced by a "frog" button
- Miscellaneous bug fixes
I'll post a detailed tutorial on how to use import and export to transfer data between the lite and full versions soon. This also means that it's full speed ahead on version 2.0!
How many people are actually using KnitMinder? According to the download statistics from Apple for the past twelve months,
- KnitMinder Lite has been downloaded over 11,000 times
- KnitMinder has been downloaded over 2,300 times
- StitchMinder has been downloaded over 13,000 times
I think it's great and a little humbling that so many knitters were willing to put down money for my application, and it makes me want to work harder to improve the app going forward!
I've been at home sick for the past couple of days. It has been icky, but it did give me a chance to work on KnitMinder and finish up the main coding for the next update. I sent off the first build of 1.5 to the beta testers this afternoon, and if all goes well and we don't find any major bugs, I plan on submitting it to Apple in a couple of weeks.
The big new feature in 1.5 is import and export. I get about one email a week from knitters who are using KnitMinder Lite asking about transferring data from the lite to the full version. On the iPhone and iPod touch, apps have very limited means of talking to each other, and none of the methods that are available allow the transfer of large amounts of information like the KnitMinder database and associated photos. Apple set up the iPhone operating system this way to make sure that apps stay in their own little areas (called "sandboxes") and don't mess with other apps without permission. The most common way around the data transfer restriction is to have the source application send its data to a server on the Internet and have the destination application download that data. This is exactly what I have done with import/export in version 1.5.
When you export your KnitMinder data, the application asks for your email address and a password. The email address is used to identify your export on the server, and the password serves to protect the exported data from unauthorized access. Neither your email or password will ever be disclosed -- in fact, the server never sees your unencrypted password. Once a valid email and password have been entered, the application uploads your database and all of your photos to the storage server. I'm using a commercial internet storage service hosted by Amazon.com, so your data are safe and secure, not just hanging out on a computer sitting in someone's closet. Each export is tagged with the current time and date and will remain on the server a minimum of 90 days.
To import the data, you launch KnitMinder on the device where you want your data to be restored and enter the same email and password you used to create the export. KnitMinder downloads the most-recently exported files to your device and adds them to your local database. If you already have data in your KnitMinder database, the exported items will be added alongside the existing data. This could result in copies of yarns, needles, patterns, and projects if you are bringing in an export that was created on the same device. I considered wiping the destination database clean before importing to ensure that you don't get duplicates, but it seemed better to not mess with any existing data and just have you remove any duplicate records that may occur.
You might have noticed that I've deliberately been referring to this feature as export and import instead of backups. The big difference between an export and a true backup is that a backup should be available forever while an export has a limited lifespan. The Amazon storage service charges me monthly based on the number of gigabytes stored and the amount of data transferred. It isn't terribly expensive, but I ran the numbers on keeping backups forever and the costs quickly added up to more than I am making on KnitMinder sales (remember, KnitMinder Lite can also export, and I don't make anything off that program). I'm also pretty sure that my sales are going to take a nosedive once the Ravelry iPhone application is published, so I have to be a bit conservative on what I promise for this feature.
Even with those caveats, I think it's going to be great for people to be able to move their KnitMinder data from lite to full and between devices! This feature is also going to be required for moving data to KnitMinder 2, which is starting to come together (more about that in a future blog post). Let me know what you think of import and export or if you have any questions about the upcoming release!
This is a little off-topic, but I would like to encourage everyone to make a donation to one of the organizations that are helping the people of Haiti in the aftermath of this week's earthquake. I've donated to the Clinton Foundation (Bill Clinton is the UN Special Envoy to Haiti), but you can also give to The Red Cross, Doctors Without Borders, Yelé Haiti, and many more. Cash donations are best because they can get aid to the people who need it quickly, but also consider donating blood if you are able.
I've made the donation for the fourth quarter of 2009 to The Rabbit Haven, a nonprofit house rabbit rescue group based in our area. Heather and I have worked closely with the Haven for several years now and have adopted one of our house rabbits from them, so the group is special to us. They also really need the funds this time of year to help with medical and housing expenses for the bunnies.
Just for fun, here's a photo of Socrates, a shelter bunny that we're fostering right now:
If you have a favorite animal-related charity that you would like us to donate to, please let me know using the contact form on the site. Happy holidays and the best of luck in the new year!



Recent comments
1 week 17 hours ago
1 week 17 hours ago
2 weeks 3 days ago
2 weeks 3 days ago
4 weeks 6 days ago
4 weeks 6 days ago
9 weeks 4 days ago
10 weeks 4 days ago
10 weeks 6 days ago
12 weeks 6 days ago