Happy Monday, everyone!
We made it to Issue #115! Thank you to everyone who read last week’s issue ❤️
Deep Dish Swift is a brand new conference being held in Chicago April 30th to May 2nd in 2023. The conference aims to bring togethe Swift and iOS developers of all experience levels and backgrounds in an inclusive environment to share knowledge and experience from a diverse set of speakers. The first day is focused on indie development and and the next two are focused on Swift and iOS!
Today’s Spotlighted Indie Devs
📆 Today I’m featuring Matt Corey.
👉 Please make sure to follow them or support them anyway you can! 😇 I’m excited to share their indie dev stories.
1) What is your name? Where do you live?
Matt Corey - just outside Saratoga Springs, NY
2) Introduce yourself. Education? Background? Main job? Interests outside of tech? Interests inside of tech?
Earned a degree in Computer Science from Hartwick College, way back in ’99, but started ‘programming’ back in elementary school by copying the programs out of the back of Family Computing magazine (I’m pretty sure it was actually my older brothers’ subscription, who went on to be a doctor. Hmmm….). After narrowly surviving the Y2K problem, I worked in several companies — big ones like Lockheed Martin, and small ones that don’t exist anymore. I’ve been one of the last 4 people in a company, and I’ve also worked for a company whose executives had some jail time (it wasn’t my fault, I swear). Back in the early aughts, I actually worked for a company foolhardy enough to try to compete against iTunes - it didn’t end well (it wasn’t my fault, I swear).
After 15+ years of working with Server-side technology with my day job, I decided to dive into mobile development with own projects. My first app (like many indie devs) was a small todo app that I wrote in a week, and got through App Review in a second week — that opened the doors, and I have since published a total of 6 apps to iOS/iPadOS, macOS and watchOS, with 1 more coming soon!
Outside of tech, I’ve rediscovered a love for hiking over the last few years, I’m a rabid fan of the NY Rangers, Buffalo Bills and the NY Mets (a good time to be a fan of these teams!) and most everything else is dictated by what my kids interests are, including driving them to dance classes and football practice.
3) Have you ever considered yourself an indie developer?
I do, but it’s not what pays the bills. I still have a full time job focusing on back-end server side/cloud development, while building iOS apps on the side.
4) What got you started/interested in creating your own applications outside of your “normal” job?
The explosion of cloud computing several years ago was exciting, but back-end work lacks a bit of creativity that I wanted to explore — in fact, sometimes creativity on the back-end results in overly complex systems, so it can be actively discouraged. I’ve never been able to get into web development (I still don’t grok CSS in any way whatsoever), so largely on a whim, I decided to teach myself Swift, and explore iOS development. The idea that I could easily put my work up for sale, and earn a little side income was an excellent bonus, which has been growing nicely the last few years!
5) How do you balance your time between friends/family, work, hobbies, and indie dev?
I kinda don’t :). My day starts with an alarm going off at 5AM, and I do my best to work on my own apps before anyone else is up. My day job takes most of the rest of the day, and sometimes I’ll tinker again with my own apps while watching TV in the evening, but I try to keep this to a minimum. I try to get at least a 90 minute hike in on the weekends, and I often do more work on my own projects, but I try to put that work down around noon, if I can.
6) Signals for HomeKit - I’ve still not setup any smart home things since I moved into my house last year but Signals is making me think I really should 😊 Signals looks like a blast to use! Where did you get the idea to start working on Signals? What were some of the first signals that you made?
Ha - your kids might be a bit too young for this, but the idea for Signals came about one day while trying to call my son down for dinner. He had headphones on while playing a video game, and couldn’t hear us yelling up the stairs, and didn’t notice the texts we were sending (he had an iPod Touch and I think a PlayStation at the time). In a bout of frustration, I opened the Home app, and clicked his bedroom light on and off a few times… he was downstairs 30 seconds later, and I realized this could be a product :)
Signals started it’s life as “Home Flash for HomeKit”, which was much simpler, and after seeing a bit of success getting the attention of some podcasters and HomeKit journalists, I rebuilt it into “Signals for HomeKit”. It now supports a few different effects, so you can pick one that works best with whatever bulbs or switches you have, and you can build a series of commands into your own Signals, with custom ‘Finishes’ — so a “Dinner Time” Signal can flash your kids’ lights, and then finish by leaving one of their bulbs green, while a “Time to Go” Signal can finish by leaving a bulb blue. Of course, I think every household needs a “Get down here now!” Signal that will flash their lights red :)
7) Signals for HomeKit - Signals seems like a great accessability app! It seems like the perfect way to communicate with others around the house that may be hard of hearing. Have you heard any users using it like this or have you thought about these kinds of use cases?
This is actually a really interesting area for me — back in the 90’s, when I first met my eventually-to-be wife, her family had a strobe light connected to their telephone, so her father would realize when someone was calling. Likewise, my own father lost a lot of his hearing as he got older. While I hesitate to market the app as an accessibility tool, I have heard from several customers that they use it in this way — with Shortcut automations, you can even run a Signal when getting emails or text messages (although you can’t replicate the phone call strobe light just yet).
Some of the uses I’ve heard a lot about recently are productivity related. Working from home, I use a colored bulb outside my office that I turn red if I’m on a call — I usually trigger these from the new Lock Screen widgets, that I setup specifically on my ‘Work’ focus mode. Similarly, I’ve heard of several customers who use Shortcut automations to trigger a Signal at certain times of day, to remind themselves that it’s time to get into ‘planning mode’, or something similar.
8) Signals for HomeKit - What are some of your favorite models of bulbs and outlets to use with Signals?!
Signals will work with any HomeKit compatible bulb, switch or plug (if it’s configured with a light attached), but of course, not all devices are created equal. I find that Bluetooth bulbs are often particularly bad at handling the repeated on/off/on or dim/bright/dim commands, and I don’t recommend them in general. While they are probably the most expensive on the market, I still think that Hue bulbs are the best, but less expensive Wifi or Thread bulbs will do the job as well.
9) Follow the Sun for HomeKit - I’ve had this problem of having weird amounts of light in a room when the sunlight changes and I never thought about looking for a solution like Follow the Sun 🙈 What were some of the technical challenges when making Follow the Sun? How long did it take to develop if testing during real sunrises and sunsets takes a good amount of time? 🙃
Technical challenges with Follow the Sun started from the very beginning — it needs be able to control lights at any time of day, but this is impossible on iOS, as third party HomeKit apps are allowed to see or control devices while the app is in the foreground. It was only when HomeKit came to macOS via Catalyst a few years ago that I was able to pull this off at all. This restriction still exists on macOS, but it turns out that menubar apps are always in the foreground. After years of wanting to build this app, I was finally able to technically do it!
Follow the Sun had a pretty long incubation period — I built out the basic engine, and then lived with it for a while, to find where some of the oddities would be. This was full of technical challenges — making sure the app stays in the foreground, even overnight, finding ways to ‘cancel’ a transition while not sitting at my Mac, etc.
The real killer here was discovering that not all bulbs and switches behave the same. For most lights, Follow the Sun can adjust the brightness and color temperature at any time, and if the light happens to be off, that’s fine — it takes the change, and will already be at the right level when you turn the light on later (Hue lights work this way, for what it’s worth — one of the reasons I prefer them 😀). For other lights, though, a brightness change will cause the light to turn on - blech! I needed to find a reasonable way to communicate this problem to the customer, and let them configure these lights to only change when the app detects that the light has been turned on — this will take a moment before the change occurs, so it’s not nearly as clean as I would have liked, but not much could be done here.
10) Signals for HomeKit, Follow the Sun for HomeKit - What’s next?! Do you have any future features planned that you can share with us? 😊
Signals for HomeKit has a new release coming in a week or two, which allows you to organize your Signals by group, adds Lock Screen widgets, and shifts my Siri Shortcuts to the excellent new App Intents — this adds some nice automation capabilities, like being able to create a Shortcut that searches for each of your ‘Alarm’ Signals, picks a random one, and runs it, so it will be more likely to get you out of bed (I have to thank @RosemaryOrchard for this idea - so good!)
I have a few things I’m testing with Follow the Sun, including the ability to build a ‘virtual’ Presence Sensor, by combining multiple Motion Sensors in a room — this isn’t quite ready for prime-time yet, so it will be a bit before I’m able to roll this out.
Finally, I have a new app that should be out in the next 1-2 months — Bills to Budget — which can help your get day to day finances in order. Just like Follow the Sun, I’m giving this a bit of time to live with some of my final features (plus the 16.1 betas have a few SwiftUI bugs that have completely broken some things). Keep an eye out for this, though!
11) What’s been the hardest part of being an indie dev? What the most fun part of being an indie dev?
The hardest part is easily the time. I only tend to do 10-15 hours on my own apps per week, so I have to manage my time very carefully. As a result, I tend to try to keep my apps small and manageable, so I can generally iterate on them more quickly (Bills to Budget is proving to break this rule, though)
The most fun part is the opportunity to play around with ideas, and generally tinker! I love playing with new tech and API, and every now and again, when I figure out how to do something I’ve been thinking about for a while, it brings me back to that delight that I got back in elementary school, when I was able to make the computer do something I wanted!
12) Is there anything else you’d like to tell the indie dev community about you?
As you can probably tell, I love to play around with tech — I’ve even built a few home-made HomeKit devices in the past, although I don’t think there’s much of a route to monetize that work 😀. Folks can find more info about me and my apps on Twitter (@matt1corey), and at https://www.homemadeautomation.com
13) Do you have any other indie devs that readers should follow / lookout for?
I follow a few other HomeKit dev’s, of course, like @aaron_pearce and @AndreJan90, but more generally, the Indie Dev community on Twitter is amazing. Anyone involved in @iOSDevHappyHour is great to follow (and great to attend, when you can!), and I particularly like following developers who talk openly about their business and marketing strategies, like @_DavidSmith, @emcro and @parrots — an incredible source of inspiration and ideas!
Newly Released and Updated Indie Apps
Here are some newly released and newly updated apps from this past week! If you would like to possibly see your app in this list, please submit your app to the look at me form 👀
Thank you to everybody who made it to this footer! You either spent the time to read or took the effort to scroll 😊
Make sure to visit https://indiedevmonday.com/subscribe to get an email of future issues!
And go to Twitter and give @IndieDevMonday a follow… or multiple follows if you manage more than one Twitter account 😜