<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Aaron Pearce</title>
 <link href="http://aaronpearce.com/feed/" rel="self"/>
 <link href="http://aaronpearce.com/"/>
 <updated>2012-05-05T10:56:36+04:00</updated>
 <id>http://aaronpearce.com/</id>
 <author>
   <name>Aaron Pearce</name>
   <email>me@aaronpearce.com</email>
 </author>

 
 <entry>
   <title>Skinny Post-Mortem</title>
   <link href="http://aaronpearce.com//articles/skinny-post-mortem"/>
   <updated>2012-05-05T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/skinny-post-mortem</id>
   <content type="html">&lt;iframe src=&quot;http://player.vimeo.com/video/41403795&quot; width=&quot;640&quot; height=&quot;405&quot; frameborder=&quot;0&quot; webkitAllowFullScreen mozallowfullscreen allowFullScreen&gt;&lt;/iframe&gt;


&lt;br/&gt;&lt;br/&gt;


&lt;p&gt;&lt;a href=&quot;http://skinnyapp.co.nz/&quot;&gt;Skinny&lt;/a&gt; is an usage app for Skinny Mobile, its a simple and elegant viewport of your usage. I'd never done an app outside of the deviantART niche, but creating this gave me a great new perspective on the world of apps and how simple little tools such as the app could be greatly useful, even just for myelf.&lt;/p&gt;

&lt;p&gt;Simple bars and text show your remaining usage for your current week, while the user interface allows these to shine through for fast checking of your usage.&lt;/p&gt;

&lt;p&gt;I started building the app on the 25th of March, the first working prototype was built that night with the basic user interface styles created and data being scraped in as needed through the Skinny Mobile website.&lt;/p&gt;

&lt;p&gt;Within a few days I had a fully working copy of &lt;a href=&quot;http://skinnyapp.co.nz/&quot;&gt;Skinny&lt;/a&gt; running for iOS and began work on an Android port atfer being encouraged by Skinny Mobile to do so.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://skinnyapp.co.nz/&quot;&gt;Skinny&lt;/a&gt; was my first Android app and my first experience with Java and the Android system. Suprisingly it didn't come with the learning curve I was expecting and I had a basic copy running in a few days. Considering this includes learning Java and the Android APIs I am quite happy with how long it took.&lt;/p&gt;

&lt;p&gt;So far &lt;a href=&quot;http://skinnyapp.co.nz/&quot;&gt;Skinny&lt;/a&gt; hasn't quite met my expectations sales wise but as it was originally created purely for myself I'm just happy other people wanted it and are even asking for it to be ported to other carriers including US ones such as AT&amp;amp;T and Verizon.&lt;/p&gt;

&lt;p&gt;These ports may happen, either as a single application or as seperate ones. This change would bring me into competition with Consume which I really want to avoid as that app is absolutely gorgeous and would be hard to compete against other than through quick and timely updates to the data location API's.&lt;/p&gt;

&lt;p&gt;Along with questions of ports to alternative carriers, I've been asked for an iPad version, this has been planned from the beginning but it has to be done right to fit with the platform. I also need to acquire an iPad 3 to test on the platform effectively.&lt;/p&gt;

&lt;p&gt;More features are coming to the app as I can work out the best way to do these. Potentially these include points showing where your usage should be based on the time of the week and graphs of usage (this would require the app to be launched regularly).&lt;/p&gt;

&lt;p&gt;The Skinny Mobile team helped a lot with this launch and I'd like to thank them for their support and I'd love to work closer and more integrated with them if they ever wish to.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>dA Mobile Concepts</title>
   <link href="http://aaronpearce.com//articles/da-mobile-concepts"/>
   <updated>2011-08-17T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/da-mobile-concepts</id>
   <content type="html">&lt;p&gt;As I wrap up dAmnMobile, I am starting to wireframe dA Mobile, this will be a longer project due to having to research deviantART's internal API, DiFi.&lt;/p&gt;

&lt;p&gt;dA Mobile will encompass the majority of dA's features including galleries, browsing, profiles, commenting, forums, upload, messages and notes.&lt;/p&gt;

&lt;p&gt;I will be polishing every one of these features to the standard I feel neccessary to get them to  match with deviantART's style and ease of use. This means that the app will run and look as if it was an official application from dA itself.&lt;/p&gt;

&lt;p&gt;dA Mobile will be a paid application just because of the time invested by me into development and research, I will hopefully be releasing parts of the code as open source for use by the community. All research into DiFi will be released for use by anyone guaranteed. Hopefully I will also be launching a new site as a home for these apps and the development blog shortly.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>dAmnMobile 2 Nearly Ready</title>
   <link href="http://aaronpearce.com//articles/damnmobile-2-nearly-ready"/>
   <updated>2011-08-02T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/damnmobile-2-nearly-ready</id>
   <content type="html">&lt;p&gt;dAmnMobile 2, codename Sunya is nearly ready for release, just a few more bug fixes and a new icon to come, then a quick upload to the App Store. Once reviewed and released, I hope you all update and enjoy the new version, it is much more stable, a lot better designed and hopefully easier to use!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>App Updates</title>
   <link href="http://aaronpearce.com//articles/app-updates"/>
   <updated>2011-07-06T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/app-updates</id>
   <content type="html">&lt;p&gt;Decided it was time to update you on dAmnMobile Sunya, the next major version of the app. Basic functionality for use on dAmn is implemented, a new data store is in place along with a great new way to add chats and a chance to promote &lt;em&gt;your own&lt;/em&gt; chat in the app for a low cost!&lt;/p&gt;

&lt;p&gt;The data store is based around SQLite which means the app will be more responsive to use while also being easier to maintain for me as the developer. This new data system combines major features of the application into one database, meaning that all data is easily found and read, lowering memory and CPU usage by the app.&lt;/p&gt;

&lt;p&gt;The message/chat view has and still is being dramatically overhauled to allow the app to show messages and images correctly, this includes avatars/icons.&lt;/p&gt;

&lt;p&gt;The app settings are fewer in number, and bot mode has been removed as it is mostly an unused feature which potentially slows the application down. There will be a simple way to change accounts which will just clear the username and dAmntoken from the database then allow you to re-authenticate with dA.&lt;/p&gt;

&lt;p&gt;Onto dA Uploader for iOS, version 1.0.1 is coming soon. This update fixes small bugs, adds a indicator while uploading and fixes the rotation of images so they are correct once in Stash.&lt;/p&gt;

&lt;p&gt;There is also a small alteration to how the ads work in dA Uploader, currently if clicked it does not confirm that this is the action wanted, in version 1.0.1 this is fixed, it will now ask for confirmation before opening the ad when clicked. Hopefully these updates to dA Uploader will solve the issues that occur.&lt;/p&gt;

&lt;p&gt;Overall the aim is that dA Uploader 1.0.1 will out within a week or two, while dAmnMobile Sunya will be out in a month or two.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>An Apology</title>
   <link href="http://aaronpearce.com//articles/an-apology"/>
   <updated>2011-06-11T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/an-apology</id>
   <content type="html">&lt;p&gt;Over the last two days, &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile on the App Store&quot;&gt;dAmnMobile&lt;/a&gt; may not have been usable to some users that updated to version 1.0.2. I was attempting to update to the new deviantART API for dAmn authtokens, sadly I did not correctly implement this feature as deviantART changed the returned information to allow the application to grab the token. This version that was crippled by my bad implementation was reviewed by Apple and released to you as users.&lt;/p&gt;

&lt;p&gt;I quickly moved to fix this, and uploaded a fix to the App Store review queue immediately. I asked for an expedited review to fix the problem as soon as possible while also temporarily pulling the application from the store to stop downloads of the unusable version.&lt;/p&gt;

&lt;p&gt;I made a mistake, I am sorry for this and I wish to thank you as the users of my application for understanding my mistake and alerting me of it within seconds of the update coming out.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Project Sunya</title>
   <link href="http://aaronpearce.com//articles/project-sunya"/>
   <updated>2011-06-05T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/project-sunya</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile on the App Store&quot;&gt;dAmnMobile&lt;/a&gt; has reached its limits based on the original code, it is time for a new generation of the app. Introducing codename, Sunya, the next generation of the app, starting from scratch I will be rebuilding &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile on the App Store&quot;&gt;dAmnMobile&lt;/a&gt;, this is where the codename Sunya has meaning. Sunya means zero or nothing, therefore the codename fits the project.&lt;/p&gt;

&lt;p&gt;Each part of &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile on the App Store&quot;&gt;dAmnMobile&lt;/a&gt; will be rebuilt, starting with the authtoken grabber, you will see this early in the upcoming update for the app, 1.0.2. This is now using the dA API for grabbing your dAmntokens for login.&lt;/p&gt;

&lt;p&gt;The dAmn connection and socket engine will be redesigned to allow a better system along with backgrounding of the application. Hopefully this will relieve some of the issues that have been arising with the application so far. It will be more event based to allow for quicker and smarter responses to dAmn and the user.&lt;/p&gt;

&lt;p&gt;Messages are currently stored in plain text files, this will also change in Sunya. The system will be ported to a much faster and more reliable SQLite system which will allow a much more responsive app for the user.&lt;/p&gt;

&lt;p&gt;Along with the new backend, the frontend will be redesigned, the app will look better while also performing better as well. A new rendering engine based on a single UIWebView will be used to allow for more responsive scrolling while also being much less memory intensive.&lt;/p&gt;

&lt;p&gt;A lot more improvements are planned for Sunya, some more secretive than others, for now, this is all I will be sharing, if you are interested in following the development of the app, please follow me on &lt;a href=&quot;http://twitter.com/aaron_pearce&quot; title=&quot;Me on Twitter&quot;&gt;Twitter&lt;/a&gt; or subscribe to this blog.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>The Code Behind dAmnMobile</title>
   <link href="http://aaronpearce.com//articles/the-code-behind-damnmobile"/>
   <updated>2011-05-31T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/the-code-behind-damnmobile</id>
   <content type="html">&lt;p&gt;I've been planning to write this post for a while now, just a matter of getting the time aside for it. I was planning on open sourcing the application at some stage, but have decided to keep it closed for now at least, just due to my codebase being messy and quite unreadable in parts. So for now, you'll have to handle just getting a taste of some of the libraries and ideas I have used in &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile in the App Store&quot;&gt;dAmnMobile&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;User Interface&lt;/h4&gt;

&lt;p&gt;For the user interface I have just stuck to the supplied interfaces such as Navigation Controllers, UITableViews along with some custom cells containing UIWebViews for showing messages (not efficient in the slightest, I'm looking into alternatives right now).&lt;/p&gt;

&lt;p&gt;There is one part in the user interface that is not standard, that is the Setting view, this is shown using &lt;a href=&quot;https://bitbucket.org/keegan3d/inappsettings/&quot; title=&quot;InAppSettings on BitBucket&quot;&gt;InAppSettings&lt;/a&gt; by &lt;a href=&quot;http://inscopeapps.com/&quot; title=&quot;InScopeApps&quot;&gt;InScopeApps&lt;/a&gt;. This is a simple to implement chunk of code that allows you to use the Settings.bundle, which is normally accessed only through Settings, to store data and access it directly in your application.&lt;/p&gt;

&lt;h4&gt;Logging In and Getting the Authtoken&lt;/h4&gt;

&lt;p&gt;For login I use an open source class that I coded called &lt;a href=&quot;https://github.com/pickley/deviantART-Objective-C-Libs/tree/master/dALogin&quot; title=&quot;dALogin on Github&quot;&gt;dALogin&lt;/a&gt;. This class relies on &lt;a href=&quot;http://allseeing-i.com/ASIHTTPRequest/&quot; title=&quot;ASIHTTPRequest&quot;&gt;ASIHTTPRequest&lt;/a&gt; to log into deviantART and then retrieve the chat page required to pull the authtoken out.&lt;/p&gt;

&lt;h4&gt;dAmn Communication&lt;/h4&gt;

&lt;p&gt;Now to the main part of the application, communicating with dAmn itself. Again I created a new class called dAmnLib for this, dAmnLib relies on the &lt;a href=&quot;http://code.google.com/p/cocoaasyncsocket/&quot; title=&quot;CocoaAsyncSocket&quot;&gt;CocoaAsyncSocket&lt;/a&gt; for socket communication and &lt;a href=&quot;http://regexkit.sourceforge.net/RegexKitLite/&quot; title=&quot;RegexKitLite&quot;&gt;RegexKitLite&lt;/a&gt; for regular expressions.&lt;/p&gt;

&lt;p&gt;AsyncSocket is integral to the application, it supplies the basis of communicating with dAmn, as it is asynchronous, it can queue events up and allow messages to be received and sent correctly.&lt;/p&gt;

&lt;p&gt;RegexKitLite is used to parse the received messages for thumbs, images, links, once parsed, the matches are converted to their HTML counterparts for display in the app.&lt;/p&gt;

&lt;h4&gt;Miscellaneous&lt;/h4&gt;

&lt;p&gt;I have also included Flurry to track statistics such as user numbers and sessions, along with number of disconnects, this helps to improve the application over time and I can also see those great times when dAmn goes down.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://code.google.com/p/iphonebits/source/browse/trunk/src/&quot; title=&quot;AlertPrompt&quot;&gt;AlertPrompt&lt;/a&gt; is used for adding rooms to your chat lists.&lt;/p&gt;

&lt;p&gt;If you have any more questions about dAmnMobile, feel free to contact me on &lt;a href=&quot;http://twitter.com/aaron_pearce&quot; title=&quot;Me on Twitter&quot;&gt;Twitter&lt;/a&gt; or through the contact form on this site.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Random Acts of Geek Kindness</title>
   <link href="http://aaronpearce.com//articles/random-acts-of-geek-kindness"/>
   <updated>2011-05-30T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/random-acts-of-geek-kindness</id>
   <content type="html">&lt;p&gt;Today I got a shock, after tweeting about how I couldn't currently afford to buy Fantastical and iA Writer for Mac, &lt;a href=&quot;http://twitter.com/jpedroso&quot; title=&quot;Jorge Pedroso on Twitter&quot;&gt;Jorge Pedroso&lt;/a&gt; sent me a great email along with a promo code to his great app, &lt;a href=&quot;http://bywordapp.com/&quot; title=&quot;Byword App&quot;&gt;Byword&lt;/a&gt;, it is similar to iA Writer in that it is a writing app that is just great looking. The focus of the application is on the writing itself.&lt;/p&gt;

&lt;p&gt;You can run the app full screen to completely focus on your work, or just as a window. You can highlight a few lines near where you are typing to give clarity to the context while the rest of your writing is dimmed away.&lt;/p&gt;

&lt;p&gt;I'll be using &lt;a href=&quot;http://bywordapp.com/&quot; title=&quot;Byword App&quot;&gt;Byword&lt;/a&gt; as my main writing app for everything now, other than university which requires the menace that is Microsoft Office. Expect a lot more posts as this app makes writing up posts a lot more enjoyable.&lt;/p&gt;

&lt;p&gt;I would love to see more random acts of geek kindness between developers and designers more in the future, so go share your work with others! I'm currently sharing out some promo codes for &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile for iOS&quot;&gt;dAmnMobile&lt;/a&gt; on &lt;a href=&quot;http://twitter.com/aaron_pearce&quot; title=&quot;Me on Twitter&quot;&gt;Twitter&lt;/a&gt; and here's one for those reading this, RHNLJAX4EJR6, first come, first served, but feel free to hit me up on &lt;a href=&quot;http://twitter.com/aaron_pearce&quot; title=&quot;Me on Twitter&quot;&gt;Twitter&lt;/a&gt;, I may just be feeling generous!&lt;/p&gt;

&lt;p&gt;And again thanks to &lt;a href=&quot;http://twitter.com/jpedroso&quot; title=&quot;Jorge Pedroso on Twitter&quot;&gt;Jorge Pedroso&lt;/a&gt; for the random act of geek kindness and go buy &lt;a href=&quot;http://bywordapp.com/&quot; title=&quot;Byword App&quot;&gt;Byword&lt;/a&gt;!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>dAmnMobile v1.0.1 is out now</title>
   <link href="http://aaronpearce.com//articles/dAmnMobile-v1.0.1-is-out"/>
   <updated>2011-05-12T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/dAmnMobile-v1.0.1-is-out</id>
   <content type="html">&lt;p&gt;Just a quick note to say that dAmnMobile v1.0.1 is out.&lt;/p&gt;

&lt;p&gt;What's New:&lt;/p&gt;

&lt;p&gt;-Rotation fixes, now you can rotate in any view.
- New editing system, no more swiping to delete.
- New message display setup.
- Image switch to save battery/bandwidth.
- Mention Alert, with switch, see settings.
- Messages to you are in red.&lt;/p&gt;

&lt;p&gt;So go download it &lt;a href=&quot;http://itunes.apple.com/app/damnmobile/id428196575?mt=8&quot; title=&quot;dAmnMobile&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Why dAmnMobile isn't free</title>
   <link href="http://aaronpearce.com//articles/Why-dAmnMobile-isn%27t-free"/>
   <updated>2011-04-29T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/Why-dAmnMobile-isn't-free</id>
   <content type="html">&lt;p&gt;Just a quick post to summarize why I didn't put  &lt;a href=&quot;http://itunes.apple.com/app/damnmobile-pro/id428196575&quot; title=&quot;dAmnMobile on the App Store&quot;&gt;dAmnMobile&lt;/a&gt; up for free on the iOS app store.&lt;/p&gt;

&lt;p&gt;I was planning to offer a free version that was limited from the start but Apple rejected this due to ratings, (even though they are the same as the pro one), therefore once this was rejected I decided to see how sales went.&lt;/p&gt;

&lt;p&gt;The sales went well, about 4-7 copies a day on average, with a spike of about 30 on the day it received it's Daily Deviation, which I can still not believe happened.&lt;/p&gt;

&lt;p&gt;The other reason I decided to price it at 99 cents is that I feel my time was worth even a small bit of money, 99 cents is not much at all for an app I think.&lt;/p&gt;

&lt;p&gt;Thanks to everyone for buying it and supporting the development of dAmnMobile and future apps.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Cranking</title>
   <link href="http://aaronpearce.com//articles/cranking"/>
   <updated>2011-04-27T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/cranking</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://www.43folders.com/2011/04/22/cranking&quot; title=&quot;Cranking&quot;&gt;Cranking&lt;/a&gt; is one great post by Merlin Mann.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Switched to Jekyll</title>
   <link href="http://aaronpearce.com//articles/Switched-to-Jekyll"/>
   <updated>2011-04-26T00:00:00+04:00</updated>
   <id>http://aaronpearce.com//articles/Switched-to-Jekyll</id>
   <content type="html">&lt;p&gt;So I have just switched my blog over to running Jekyll for static file generation and Dropxbox for syncing of the markdown files!&lt;/p&gt;

&lt;p&gt;I'll be posting more often as this system is so much easier to use than Wordpress became.&lt;/p&gt;
</content>
 </entry>
 
 
</feed>
