Building Filtron

by Drew Wilson

This is the story of how I built Filtron. Filtron is a new photo editing platform for Mac and iOS that I've just released. With it you can create and share your own photo filters. You should most definitely go check it out, download it, use it and share it with everyone you know!

January 2013

Two of my brothers: "Drew, we'd like to diversify our income. Let's build an app together."
Me: "No way."
Them: "Why not?!"
Me: "Apps are way too risky to throw your money at. No way."    

That is how Filtron started. The two brothers I referred to sell comics for a living and they wanted hop on the cash cow that is: making apps. So they came to me. But as most of you already know making apps is more accurately described as a money pit. Not just for indie developers but most funded apps will eventually fail too, taking millions of dollars down with them into the eternal pit of sadness.

I would never advise someone outside the tech industry to put their money into apps, never ever. You have to really know whats going on in the industry and have a pretty good understanding of it to even have a chance at not losing all your money. Thats as good as it gets too: the best you'll get is a chance to not lose all your money.

Or you can get lucky. Which I think is why money gets pumped into tech... and casinos.

I eventually agreed to work with them and we decided to build Footage, my iMovie replacement. Footage would bring back the good ol' days of iMovie; when it was easy to use and amazing. No one was competing with iMovie and I had a Mac app called Screeny in the App Store's Video category that was doing pretty well. So I knew the video space really well and how much we could make. Seemed like a sure bet and one I would be comfortable with them putting their money into. We hired a developer and started writing code in April of 2013.

Footage. Still in development.

I really wanted Footage to be easy to use, so I came up with the idea of putting photo/video filters (like Instagram) in the app so you could make your videos look good with one click. But I also wanted these filters to be made by pro photographers and sell some of them as in-app purchases. Normally app developers would have photographers use Photoshop to come up with effects and then the app developer would try and replicate those effects in their app's code. I didn't want to do that. I wanted the photographers to be able to visually create a filter so they could get it exactly how they wanted it. So in September of 2013 we hired two more developers and started development on a side project called Footage Composer. An app that would let you visually build photo/video filters. You would drop in a video as a preview to test your filter against, you could also export it at anytime. After building a filter you would then import that filter into the main Footage app to use it on your videos. We decided to sell it on the App Store along side the main Footage app so anyone could create their own filters.

Footage Composer

In December of 2013 we hit a wall. We were almost out of money and the main Footage app wasn't anywhere close to even part way finished. The developer who was working on it no longer had time for it. Footage Composer was almost done, but it was designed to work best with the main Footage app. So while it would be possible to release it on it's own, we wanted to release them together because we didn't want to keep users waiting another year just for the main Footage app.

We decided to switch gears. I thought we should continue with the idea of enabling anyone to build their own filters, but keep it photo specific and add an iOS app. We were going to call it Filtron and it was our Hail Mary to make some money before all of our cash ran out. The idea was to just re-skin Footage Composer and call it Filtron for Mac. Then build an iOS app that does the same thing. Our two developers at the time quoted us three weeks to build the iOS app. I doubled the time and talked it over with my brothers and that was it, our new direction was Filtron.

In January of 2014 Footage Composer was complete! But one of our developers no longer wanted to work on the apps, so we started on the Filtron iOS app with only one developer. We planned to save the re-skinning and re-purposing of Footage Composer as Filtron for Mac until later in the year.

By June of 2014 it was obvious that things weren't moving as fast as everyone had thought on the iOS app. And our developer was burnt out from working on the app. I was fortunate enough to find another developer to start working on both apps. So by September of 2014 we were working on Filtron for iOS and just starting development on Filtron for Mac. Then we hit a pretty major snag in development.

Filtron for iOS

We've built a stand-alone photo filtering system called the Filtron Engine that does all the heavy lifting for both Mac and iOS. It was originally built using Apple's Core Image system. But adding multiple filters (each of which is made up of multiple effects) to a single photo caused Core Image to die. It was just too weak in the knees to handle all the processing we wanted to have it do. Turns out we weren't alone. A of couple other popular photo apps experienced the same thing (shout out to my pal Wes for the advice here). So we made the switch to an open source alternative called GPUImage. Its much faster and better with memory than Core Image. On older iOS devices it makes a huge difference. At the time we were working with iPhone 4s, iPhone 5 and I had just bought the iPhone 6+. I had to recreate all the filters we'd already made and we had to rewrite the Filtron Engine. Getting it to work on Mac was also a pretty big challenge. But, after months of work, we got it done.

However, in November of 2014 that developer ended up not having time to work on it anymore. At this point neither the iOS app nor Filtron for Mac were anywhere near finished.

My brothers were super upset and disappointed with how long it was taking and how often we had to replace developers. For me it was moderately upsetting, for them it was insane. They were now officially experiencing why making apps can be so difficult. Getting people to use your app is only one challenge, the other (more hidden challenge) is actually building it.

Filtron for Mac

We decided to reach out to development agencies to try and work with a team of people hoping that they would be more reliable. Not the case. I even talked with what is supposed to be the most prestigious Mac dev firm around, not the case. We had a start date for development with two different firms at two different times. Both pulled out and decided they wouldn't have time on the day they were supposed to start.

This is where things got hard. Everyone around us was quitting, even though we were paying them their full asking rates. Tasks that were quoted as a week were taking months. It was very discouraging because it had been going on for a year and a half at that point. Finding developers who could handle the complex parts of Filtron, and had the time to do it, was very difficult. We had spent over $100k for developers to build the apps and my brothers had to stop. We set a dollar limit to not go beyond (we were already $50k over budget) and I was able to find another developer who did a huge amount of work on the Mac app in a short time. But he was only able to spend a month on it because he wasn't a contract developer and had his own apps to work on.

By January of 2015 we hit the limit and my brothers couldn't put any more money into it. We felt defeated.

iOS and Mac App Icons

With no money and nothing to show I rolled up my sleeves and started to learn Mac and iOS dev. Filtron would be my instructor. And judging by all the past developers, it would be a formidable foe 😉 I had done a bit of iOS dev before and I knew my way around Xcode a bit... but Mac development is a completely different beast from iOS. Mac is much much harder, there is no UIKit in Mac.

Up to this point I was designing everything and building the web site, servers and API – web stuff is so easy. Now I'd be adding in the responsibility of Mac and iOS developer.

I was able to find a few pennies in my bank account so I hired another developer to work with me. But I didn't have much money so it was only for a few tasks. Everything else would be up to me. I've been the main developer for the Mac and iOS apps since March of 2015. I'm so stoked too, because now I know how to build fairly complex iOS and Mac apps all by my lonesome 😊

I didn't have much time to work on it during 2015 because I didn't have much time in front of my computer at all. I was living in an RV and traveling the USA with my wife and three little kiddos! This made it hard to progress, but after toiling away at it all I've finally finished! I'm so excited that I'm writing those words, they really are a long time coming.

With Filtron it felt like we were cursed. I've never had an experience like this before making apps, and I've made many. Just getting the app built was a galactic battle. I suppose sometimes if you want something done, you've just got to do it yourself. Something I've told myself since I was young is: "Make it happen." If you want something, make it happen. Not everything you want will be within your reach, but you can do whatever you want if you just make it happen.

Filtron isn't done. There are a ton of things I cut from it just to get it out the door. Lots more great stuff to come, and now I can do it myself 😊

If you haven't already, please go download Filtron. Browse the many filters created by other Filtron users and use them to style your photos for free. If you want to get your own Filtron account and start making your own filters (and get a nifty profile page like mine) buy the Builder upgrade. I can't wait to see what you all make!

You can follow Filtron on Twitter for updates @filtron_app and follow us on Instagram too @filtron_app.

Check back tomorrow for my post on Designing Filtron! I've also had the worst time trying to get the Mac app approved for the App Store (yes, the hurt never seems to stop while building Filtron) 😒 So expect a post-launch write up that will include, among other details, all the horrors trying to get Filtron approved for App Store release.

Never give up!