2 Weeks of Pictomaphone Sales

On March 10th, Pictomaphone hit the Windows Marketplace as a paid app ($1.99 USD). Since the marketplace data runs a week or so behind, it wasn’t until today that I could see the results of the first 2 weeks of sales.

Total Non-Paid Downloads (free and trial) were: 5,078.

Total Paid Downloads were: 172.

That gives Pictomaphone a purchase rate of about 1 in 30. Not horrible, but I’d rather it were around 1 in 10.

The top countries that purchased the app were:

  1. United States – 103
  2. Germany- 23
  3. Italy – 15
  4. United Kingdom – 13
  5. Spain – 6

Guess what languages I’m going to translate it into first? If you guessed German, Italian and Spanish – then you got the hang of how I’m doing this. I’m still not sure when I will do the translations, probably after the next release. Effects before words.

I’m wondering now if more people would have purchased it for a dollar. I’m going to see if there is an uptick in sales in the 3rd week – after most users would have seen their first nag screen. I may end up lower the price with the next release, mainly because I’ve already made back what it cost me to publish the app (although I haven’t seen that money yet).

So far, I think the experiment of offering a fully-functional trial is going well. 1 in 30 isn’t bad when you consider there really isn’t an incentive to purchase – other than to be nice.

Pictomaphone is #1

The update to version 1.4 of Pictomaphone went out Friday and I presume most users have updated by now. For this version, I switched from a completely free app – to a paid one with an unlimited free trial mode.

It hit the list of paid photo apps yesterday and landed at the TOP! Wow. It is also 7th in the list of all paid apps on the phone. Everything above it is games (Angry Birds is at the top of the overall list).

All I can say is, I’m amazed. I know it is a good app, but to sit at the top… I’m almost speechless, but I’m not celebrating yet. Who knows how long it will stay there.

Which is way, I’m thinking hard about what to do with the app next. I have a list in mind of things I need to do, but what else is there?

Things I need to get done:

1) Figure out the fastest / best looking blur possible. A true Gaussian blur is too slow and a box blur is too ugly. I put in a compromise in 1.3 that looks alright, but is still too slow (30 seconds to apply sometimes). Way too slow. Blur is important for effects that I want to add (and have been asked for), like Tilt Shift and Simulated Depth of Field.

2) Red Eye Reduction. I’ve played around with this before, but while my algorithm fixed red eyes beautifully, it also caught a lot of unintended parts of the photo. Now the question is, can I write a fast enough face detection algorithm to handle eye detection automatically, or do I need to have the user select where the eyes are.

At this point, I should point out that both of these could be done fast and simply in a Pixel Shader… but Microsoft won’t let us write custom shaders for the phone. I hope they change this in Windows 8 Metro apps and later in Windows Phone 8.

3) I also need to write my own photo browser control. The built in Photo Chooser task is alright, but it doesn’t give back the file names – or where the picture was opened from. Also, it is locked to the one layout and I, for one, would like a list view with file names, dates and sorting. A side-effect of writing my own photo browser is it opens up the possibility of letting users browse photos online.

4) Sharing. I wish there was a way to tie into the phone’s sharing mechanism, but I haven’t found one. I don’t like the fact that people have to save the photo to the phone, then exit the app and go to the built in app to share. Time to figure out which platforms to support – Facebook, Twitter, Flickr, and whatever else kids are using these days.

5) I also want to add some automatic modes to the adjustments. I’m still not sure how to go about this in a way that will perform well, but I want items like Levels and Color Balance to be able to figure out a best guess at the best looking settings. It’ll give users a good place to start from. Whatever I do, it needs to allow the user to adjust the results – so it really is just a starting place.

So, that’s quite a bit of work I’ve got planned. Hopefully it is enough to keep users happy. There is always the feedback forum too, which I keep an eye on. I want to get, at the least, one of the top requested features into each release.

Once again, thank you everyone for downloading my app! You keep enjoying it and I’ll keep adding features :)

Pictomaphone 1.4 Submitted

Hey all, last night I pushed out the update for Pictomaphone 1.4 to Microsoft.

Here’s what coming down the pike:

  • A Save Dialog. Gone are the pop-ups, now you can choose between “Saved Photos” and “Camera Roll”, enter your own File Name, and choose the JPEG quality.
  • Slightly better EXIF handling. Almost every exception message I got was from people opening photos with bad exif data, so I’ve handled those errors better. No more crashing.
  • Intensity slider for Photo Filters. You can now do half-brawny if you want.
  • Little UI tweaks to make things line up better.
  • Display Settings page that lets you control how the Effect Lists look. You can change the background color and turn icons and descriptions on or off.
  • The Unhandled Exceptions message is now localized. I only speak English, so the grammar is probably horribly incorrect in other languages – but I tried :)


The other big change is…

Pictomaphone is now $1.99 USD. Unfortunately, developing apps for WP7 isn’t free. It costs $100 USD a year just to submit them to MSFT, and I’ve spent thousands of hours of my precious free-time working on the app.


There is a trial mode. It is fully-functional. You can use it for free as long as you want. You don’t have to pay, but I sure would appreciate it. The only difference in the trial mode is that there is a nag screen every 2 weeks.

I don’t think this will affect people who got the free version. My understanding is that downloading it while it was free counts as buying it. So, only new users will be affected. I consider it a thank you to all the people who gave my little photo editing app a chance and gave me feedback on how I could improve it.

P.S. Pictomaphone has more than 40,000 downloads world-wide. Awesome!



Pictomaphone 1.4 is Under Way

I’ve been working on the next version of Pictomaphone since the last one was submitted. This version won’t be quite as big and will hopefully be wrapped up this weekend or early next week (time permitting).

So far, I’ve added a real Save dialog that lets you control everything about how the image is saved. (Which isn’t much).  I’ve also had reports of a bug where some photos couldn’t be opened because they had bad Exif data. I’ve fixed that already. Also a few small UI things were changed here and there — and I added a Settings page that lets you control more of how the display looks. There is a little more clean-up left to do on this version, and a few more tweaks I need to squeeze in, but all-in-all, looks like it’ll be ready soon.

I’ve held off on adding any more big features for the moment – because I want to get the update out faster. The last update took 3 months, and I don’t want people to have to wait that long this time :)

Pictomaphone 1.3 Submitted

I’ve submitted the next update to Pictomaphone to the marketplace. It should be out to users by the end of the week! Pictomaphone is one of the most popular free photo apps for Windows Phone. Hopefully this update will push it closer to the top of the list…

What is new?

I’ve made some pretty good additions to the app :)

1) Crop. Everyone wanted it, now it is here — rule of thirds grid, predefined aspect ratios + free-form.

2) Resize. Because I was asked for it on Twitter and it was easy to do. Always keeps the original aspect ratio.

3) Color Balance. Because it makes fixing colors easier.

4) Lightness Mode in Posterize. Because sometimes it looks better and I knew how to do it.

5) View EXIF Data. It still can’t save it with the image – but you can at least see what it originally was.

6) About Page. Has some contact info for me.

7) More Filters: Country, Brawny, Sunday Morning, Summer Forest and Old New York. I made the names up.

8) And of course – a ton of performance enhancements to make the app run even faster.

Why did it take so long?

Well, for one, I do have other things going on – like a job that pays. Also, those performance enhancements took some research and fiddling around to get right. I pretty much rewrote the whole backend of the App – for the 3rd time. This is the last time, though. I don’t think I can squeeze any more noticeable gains unless Microsoft decides to allow custom Pixel Shaders.


Wait for the update. Then, if you haven’t rated it yet, or rated it less than 5 stars, fix that :)


Fast Approximate Anti-Aliasing

Over at Coding Horror, Jeff Atwood has a new post about FFXA – a newish technique for anti-aliasing in game engines. If you at all interested, you should go read it.



I surprised that I didn’t read about this over the summer when I was researching anti-aliasing in games. But I’m glad to hear about it now! One day, I may get off my ass and write a game… but, for the time being, all my after-work programming hours are spent on Pictomaphone :)

Pictomaphone 1.2 Released

My first big update to Pictomaphone (version 1.2), has been released on the marketplace!

Inside this update were a bunch of small changes and some new features – the best being a somewhat limited levels control. Levels is a way better way to adjust the brightness and contrast in an image. Give it a spin!

If you already have it installed, then you should get the update notification on your phone. Otherwise, if you have a Windows Phone 7 Phone, what are you waiting for? Go download it.

Here is the link: http://windowsphone.com/s?appid=20bb9300-1ceb-43bf-a42c-68252675af65

The next update will probably be when new users have to start paying ($0.99). Updates will remain free. Its like an early adopter special!

Preview of features for version 1.3

  • Crop
  • Rectangular Selections
  • Some more filters (vintage styled stuff)
  • Rectangular Vignette
  • Faster Gaussian Blur
  • Very slight chance of some sort of noise reduction
    • I’ve been reading some research papers on the subject
I’ve also been drawing up preliminary plans for a tablet version (Pictomapad?). Due to the increase in screen space, there is so much more I can do with the program. It’s getting me all excited :)

Pictomaphone 1.2 Submitted

I wonder how many bugs I’ll find after-the-fact this time, hahaha. Seriously, it is like, a rule, that things will pop up right after it gets released. No matter the fact that I’ve used it every day for weeks and been over every feature a hundred times. Developers just don’t make great testers…

Anyway, I’ve put out a new version, with a bunch of updates.

Here’s the summary:

  • Made panning around the image in Preview mode work better
  • Added Horizontal and Vertical Flip (in the rotate screen)
  • Added “Revert” to previous save
  • Made the App always remember the last photo you were working on
    • This was my cheap way to make task switching work
    • It also made development easier ;)
  • Added Levels
    • But they only work on the Composite Channel
    • And the UI is nothing like any other image editing software… someday.
  • Switched “Gritty Contrast” to “Channel Overlay”
    • All it really did before was Overlay the Green channel over the image
    • Now you can pick between Lightness, Luma, Red, Green and Blue
  • Fixed Color Filter
    • It was ugly and useless before
    • Now it is very much better looking
  • Added Solarize
  • Added Posterize
  • Added Box Blur
    • I know the blurs seem weird (why would you want your picture to be more blurry) but they are building blocks for future effects
  • Added Frosted Glass
    • Not sure why you would use it, but it is fun and took all of about 2 minutes to code
  • Added Square Borders
    • Selecting the color is lame right now, I need to write a color picker control
  • Added Cross-Process
    • This is the first in a line of cool Filters that I am working on
    • Unfortunately, the others weren’t ready, and I needed to put an update out.

I also did some crazy stuff, like rewrite the entire image processing layer. Whew, it made it way easier to add updates, but took a while. I think it is slightly faster now too.

I also think I have one of the fasted Box Blurs around – even if it is totally useless in a phone photo app. It’ll be more useful when I add selections, then you can blur your junk (or face) out before tweeting incriminating photos – I’m looking at you Wiener!

Also, internally, there is a full implementation of Levels (for all channels) and Curves (for all channels). I need to build some cool UI components for them. Curves is used in the Cross-Process filter, and I think I need optimize it a little still.

One last thing, I moved all the text into a resource file, so in the future I can localize for other languages. All the internal code was already globally aware (thanks to years of writing against FX Cop rules).


Current Future Plans (subject to change):

  • Add Crop
  • Add Rectangle Selections
    • I have to make the UI for crop anyway :)
  • Add an option for Square Vignettes
  • Finish working on some cool vintage looking filters

Let me know if there are requests!