It is not often that a major shift in technology occurs. Generally, changes are incremental, but there are those times when a big shift does occur. One of those shifts was in 2007 with the release of the original iPhone. As compared to today’s iPhones and iPads, the original iPhone was very basic.
Even with the limited functionality of its day, the iPhone completely changed the course of technology and help usher in the idea of having a computer in your pocket. People generally do not think about that, but you really do have a computer in your pocket. In 2008, the iPhone got a huge boost with the release of a Developer Software Development Kit (SDK). This allowed third-party developers to build applications specifically for the device.
I did not have any application ideas until March of 2010 after Apple announced a whole new product, the iPad. The iPad took the best of the iPhone and put it into a 9.7-inch device. Once the iPad was announced, I had an idea for an app. I called it wwrite.
Once the iPad SDK was available I began building my app in hopes of having it be on sale the day the iPad was released, which was April 3rd, 2010. Unfortunately, I was a bit late and wwrite was not available until April 12th, 2010. I opted to sell my app for $1.99.
In December of 2010, I released a a free version of the app, called wwriteFree, and later renamed to wwriteLite. This was an ad-supported version and initially used Apple’s now defunct iAd platform, but in 2018, I changed this to be first-party ads that I am in complete control of.
I did have a third version of the app available from March of 2011 to August of 2014 called “wwrite – iPhone Edition” this was a version of wwrite that was optimized for the iPhone. I removed this version because it did not make sense to keep maintaining it. With version 3.0.0, released in May of 2017, I switched both apps to be universal, which has made it a bit easier to maintain them.
I thought I would provide a look at how well the app has done over the last 10 years. We will look at a few different aspects and all of the information provided will be accurate numbers. As a couple of notes, the “wwrite” category includes both the wwrite app as well as the now defunct “wwrite – iPhone Edition”.
wwrite – iPhone Edition
When the iPad was initially launched, there was no such thing as adaptive layouts, different screen sizes, and auto layout. There were only two screen resolutions that you needed to worry about, 320 x 480 for iPhone and iPod touch, and 1024 × 768 for the iPad. In order to make my life easier, I thought I would create an iPhone version of wwrite. This would take all of the features of the iPad version of wwrite and make them available on the iPhone.
I initially launched wwrite – iPhone Edition in September of 2010, did one update in 2011, but removed the app from sale in August of 2014, because I knew I was not going to update the app, so I did not want to keep it in the store. By this time there were universal iOS apps and it did not make sense to have such an old app still available for purchase.
When I went to submit version 4.0.0 of wwrite and wwriteFree, the wwriteFree app was rejected, which is not unheard of as apps are rejected quite often. Some of these are due to crashes, as was the case with my initial 1.0.0 release, and has been in many versions after. There is also the possibility that Apple inquires about why you are using a specific feature. This could be because they want to gain additional information, or for some other reason.
My app was rejected because of the word “free” in the name. Now, my app had the same name for 8 1/2 years at that point, so it seemed odd to have to change it. But that is the way of Apple. They did not want any words that reflected the price of the app in the name of the app. Normally, this would not bother me. I would have needed to update my logo, once I came up with a new name, but I had added a whole bunch of different icons, so I had to redo all of those, 14 in total. With 18 different sizes needed for each one, that was a total of 252 icons that needed to be added. Ergo, I was a bit annoyed. I renamed the app to wwriteLite, since I could not come up with a different name. I was inspired by the name scheme of PCalc and PCalc Lite, both by James Thomson.
Shifting Business Models
wwriteLite, now formerly wwriteFree, has been available since December of 2010. wwriteLite was supported through iAds during the life of iAds, which was June of 2016. During the lifetime of my apps, there was a period of approximately 3 years where I did not work on the apps, and they remained as is. This was from June of 2014 to May of 2017. As is noted in my post App Updates and Model Changes, developer James Thomson, creator of PCalc, was the imperious for me to work on my apps again.
As also mentioned in that post, when I decided to work on my apps again, I went with the idea of “wwriteLite” being behind in features, as compared to wwrite. I abandoned that idea in November of 2017 as noted in my wwrite and wwriteFree Updates and Changes post. Instead of lagging behind in features, which honestly would just have been more of a headache for me, I opted to go back to the ad model. Inspired by Marco Arment’s Overcast, I opted to go with first-party ads.
These ads are entirely created, and selected, by me. A majority of the links are advertising my books, but there are also links to movies. These links are affiliate links, so I do make a bit of money if someone clicks on the links and purchases the items. Of course, if anyone buys my books, I make that amount as well.
As of wwriteLite 4.6.0, I added an in-app purchase to remove the ads from the app. As of right now, there has been a total of 1 in-app purchase of this. That purchase was me, on a separate account to verify that the purchasing was indeed working. It is with version 5.0.0 that I created an ad that would bring you to the In-app purchase screen. So I am hoping that creating this will help more users realize there is an in-app purchase to remove ads, and hopefully they will purchase it.
Free vs. Paid
It should come as no surprise that if you compare a free app to a paid one, it is more likely that the free app will have more units sold than the paid. That is definitely the case for me. Specifically, I have “sold” 9,030 copies of wwriteLite and a combined total of 327 of wwrite and wwrite – iPhone Edition. This means that 96.38% of all “sales” have been for the free version.
The total sales for all of the apps is $629. With Apple’s 30% cut, my actual income has been $430. This is not 70%, but with exchange rates, the amount will be different. That is an average of $3.58 per month. Needless to say, my app is not one that I have gotten rich off of, nor is it one that is a viable business.
Most application developers like to know who is using their apps as well as what devices they are using it on. I am no exception. However, I do not need to know exactly who my users are, just some basic information. This includes a user device id, device type, iOS version, app version, appearance (light or dark), the date it was added to the database, and the last time it was updated.
It is not super easy for me to determine how many active users there are with my app. But from my internal analytics, there are 50 users who have opened wwriteLite this year, and 10 who have opened wwrite this year. So this is 60 total, Here is a breakdown of device type:
|iPad Pro 10.5-inch (WiFi)||iPad7,3||5|
|iPad 6th Gen (WiFi)||iPad7,5||5|
|iPad Air 10.5-inch (WiFi)||iPad11,3||4|
|iPad Air 10.5-inch (WiFi)||iPad11,2||4|
|iPad Air (WiFi)||iPad4,1||2|
|iPad Mini 4 (WiFi)||iPad5,1||2|
|iPad Pro 12.9-inch 3rd Gen (Cellular)||iPad8,7||2|
|iPad Air (GSM)||iPad4,2||1|
|iPad Air 2 (WiFi)||iPad5,3||1|
|iPad Air 2 (Cellular)||iPad5,4||1|
|iPad Pro 9.7-inch (Cellular)||iPad6,4||1|
|iPad Pro 12.9-inch (WiFi)||iPad6,7||1|
|iPad Pro 12.9-inch (Cellular)||iPad6,8||1|
|iPad Pro 10.5-inch (Cellular)||iPad7,4||1|
|iPad 6th Gen (Cellular)||iPad7,6||1|
|iPad Pro 11-inch (Cellular)||iPad8,3||1|
|iPad Pro 12.9-inch 3rd Gen (WiFi)||iPad8,5||1|
|iPhone XS Max||iPhone11,6||1|
|iPhone 11 Pro||iPhone12,3||1|
|iPhone 11 Pro Max||iPhone12,5||1|
|iPhone 7 Plus||iPhone9,2||1|
|iPhone 7 Plus||iPhone9,4||1|
|iPod Touch 7th Gen||iPod9,1||1|
Here is a chart of the breakdown of device type.
Starting with version 4.5.0, I added the ability to choose which appearance mode you wanted, “light” or “dark”. Here is a breakdown of version number, the number of users using the “light” appearance, versus the “dark” appearance.
Between my two apps there are 37 devices using the “Light” appearance, 23 devices using the “Dark” appearance, and 4 people still using iOS 12. So this breaks down to 57.8 %, 35.9%, and 6.3% respectively.
This breakdown is merely an interesting statistic, because I will be supporting both “Light” and “Dark” appearances in the app going forward.
It is interesting to see where apps are being downloaded. Here is a breakdown of every “purchase” of wwrite and wwriteLite since 2010. This is in order by number of units from most to least.
This is an interesting list because it shows where I should focus for internationalization. Neither wwrite nor wwriteLite are in any language other than English. This may change in the future.
For those who might like a more visual representation, here is a chart of the top 6 and the remaining countries.
The landscape for apps has become more and more competitive as time has gone on. Here is breakdown of app units by year:
As you can see, the number of units sold, or downloaded, has been going down precipitously since 2013. I cannot say why this has been the case. It could have been due to the fact that my apps were not updated to support iOS 7, which was a major visual change.
I also think part of the issue is that my app has never been a “cloud” app, meaning that it does not support syncing. However, it does support import to, and exporting from, the Files app. This has become significantly easier with version 5.0. On that topic, let us look at some of the big changes with the new version
Through the Years
The App Store, and my apps, have seen significant changes over the last 10 years. Here is a slideshow of various versions of the apps over the past 10 years.
Application development can sometimes fall into a cadence. For me, it has become
- Create an update in the Spring before WWDC, because I will be writing books and those take up my time during the summer months.
- Create an update in September when the new version of iOS is released to incorporate new features with the new operating systems.
There may be minor updates to fix bugs, particularly crashing ones, but I try to avoid these. I may also do updates if I come up with a new feature I want to add.
I will not go into all of the changes, but you can look at the change log to see all of the changes. However, I will highlight a few of the biggest ones.
- There are 5 new icons, Green, Moon, Orange Gradient, Psychedelic, and Sun
- Customize Templates now allows you to choose from over 340 colors instead of having to define it yourself.
- Files now have actions, including duplicate file, and share file.
- There is now Trackpad and mouse support (requires iOS 13.4 or newer).
With having been doing iOS app development for 10 years, there are some things that I have learned over the years, and I thought I would share them.
I have learned a few lessons over the last 10 years of iOS development.
The first lesson is that there are likely plenty of competitors doing the same thing that you are. Therefore, you must try and do something that is unique and that other developers are not doing. For my apps, there are a few apps that immediately come to mind that are similar to mine. Some of these are Apple’s Notes app, Bear, and Drafts. They all have more features, like syncing, rich text, URL support, and more. My app is a plain-text app that allows you to do templates. I support some things, like importing and exporting, but the rich text, url support, and syncing is not included.
Th second lesson is that I am not that good at marketing. I do not like to tout my own apps that often, for fear of annoying others. I do some marketing through my blog posts, but very few see these. There are other I do not use Apple’s Search Ads, because the app does not make enough money to warrant using search ads to gain exposure.
The third lesson is “Keep Developing”. If you really believe in your app, be sure to keep developing it. The updates that you do could just be small updates that merely keep compatibility with the latest versions of iOS and adopt new techniques. The biggest of these was the iOS 7 transition where the entire interface for iOS changed. Updating my apps for iOS 7 would have been a major undertaking and it was tough enough just trying to get my Mac OS X 10.9 Mavericks book done. I did not even write a book about iOS 7.
Not keeping up with development is entirely my fault. I did not develop the app for almost 3 years. I am sure this significantly hurt any chance of, to use silicon valley speak, “staying relevant”. This is entirely on me. There are two things related to this. The first is that I lost interest in development. Maintaining an app is not a simple thing. It requires significant effort to do.
The fourth lesson is to use GitHub, or some other Source Control system, although right now it is likely to be GitHub. This is because GitHub is directly integrated into Xcode. This will make things much easier because you will be able to keep your source code off-site, to avoid the risk of something catastrophic from occurring. I did not lose any of my source code, but I no longer have all of the versions of my source code. I do have the original code for version 1.0 of wwrite. Looking back now, the code is very simple but it worked.
The fifth lesson learned is do not feel afraid of refactoring old code. Code, and techniques change over time. Sometimes you find a better way of doing something and when you do, definitely take this path, provided it allows the following:
- Your code is easier to maintain.
- Your code becomes easier to read, which makes your code easier to maintain.
My code is now a mix of Swift and Objective-C. There is more Swift code than Objective-C code, but I do have a mix of both. Do not be afraid of adopting new languages. Yes, it will take time to learn, but sometimes it will make things a lot easier to code. At least I have found that Swift is easier for me to code.
The sixth lesson that I learned is to name your app something that is searchable. The name I have for my paid app, wwrite, is not really a good one. wwriteFree, and wwriteLite, are a bit more memorable and are not easily misspelled. I have contemplated changing the name of my apps but the apps are not my primary means of income, so it does not make sense to change them at this point.
The last lesson is that it is okay to put an app into maintenance mode and limit the amount of time you spend on an app. There are definitely instances where it no longer makes sense to continue putting significant effort towards an app. Determining the time is entirely up to you.
wwrite and wwriteLite will likely never be the “killer” apps that will allow me to retire on their sales. There are likely many reasons for this, and they are summarized in the Lessons section above. I do have one addition thing to add to points three and six above.
As mentioned above, not developing my app for almost 3 years probably hurt it significantly. However, the effort that I would have used for app development I put towards my books instead. That decision was a much better one. The amount of money I made with the books just from September 2014 to May of 2015 was twice as much as my apps have made in their entire lifetimes.
Even though I will never “get rich” off of the app, I will continue to develop them. Even though there are very few people who use them these days, the apps have become my playground to keep up with changes in iOS and figuring out how to implement new features of each version of iOS.
Maybe one day I will come up with another app idea, but in the interim, I will continue to work on these apps and maybe, possibly, see an increase in users.