Happy Monday, everyone!

We made it to the ninth issue! Thank you to everyone who read last week’s issue ❤️


📆 Today I’m featuring Simon Grimm and Tanmay Sonawane.

Simon is the creator of Ionic Academy. Ionic Academy is the best place to enjoy expert and high quality screencasts on Ionic Framework. If you aren’t familiar, Ionic is an open source mobile UI toolkit for building high quality, cross-platform native and web app experiences. I’m not a great Ionic developer but its definitely my favorite cross-platform framework. I don’t have any Ionic projects at the moment but Ionic Academy is the place where I’m going to go to improve my skills before I start my next once 😀 Simon has done an amazing job on making new users feel welcome and comfortable through their journey on mastering Ionic. If you are curious about Ionic or have a need for a cross platfform framework, I highly recommend using Ionic and taking some of Simon’s amazing courses!

Tanmay is the creator of Soor. Soor is a beautiful, feature rich music player for iPhone with full Apple Music support. I’ve been trying to switch over to Apple Music from Spotify but there was always something with the Apple Music app that didn’t work for me. I’m happy to say that Soor has completed my conversion over to Apple Music after my first day of use 😛 It’s easy to search, fun to use, and I can customize the home screen sections to what is most important to me. One of the best featues in Soor is “Magic Mix”. I’ve been struggling with stale playlist and radios in Spotify but Soor changed the game completely. I don’t think my music listening is ever going to be boring again! Soor is a must for any music listener. Check it out today!

👉 Please make sure to follow them or support them anyway you can! 😇 I’m excited to share their indie dev stories.


Indie Devs

Simon Grimm

Münster, Germany

Full-time on Ionic Academy

Tanmay Sonawane

Mumbai, India

Full-time indie developer working on Soor


Simon Grimm

Q&A

1) What is your name? Where do you live?

I’m Simon Grimm from Münster, Germany. If you don’t have that character on your keyboard, spell it Muenster :) Fun fact: Muenster has won the title “most liveable city” in 2004!

2) Introduce yourself. Education? Background? Main job? Interests outside of tech? Interests inside of tech?

I’ve studied Business Informatics and started as a software developer right after that. Soon after that I started my blog Devdactic, which has started my journey down a different path than the corporate ladder. MY focus shifted towards “passive income”, and from that point on I tried & failed countless times until I actually took the leap and became self employed in April 2017, living completely off my own income.

I’ve always loved developing stuff since I was basically 13-14, and since university and my first iOS app with Objective-C I’m in love with mobile apps. Today my main focus is helping people to build great Ionic apps, a framework to build cross platform applications everywhere the web runs!

When I’m not in front of my computer, I’m usually spending time with my family and our 2 year old daughter or work out to counterbalance all the sitting :D

3) Have you ever considered yourself an indie developer?

Hmm not really. I actually don’t know what to say when people ask me what I do, since I do a bunch of things. Digital Influencer. YouTuber. Marketer. Educator. Blogger…. To some degree indie developer yes, but most of my indie dev projects didn’t take off so far.

4) What got you started/interested in creating your own applications outside of your “normal” job?

Since my normal job isn’t quite the normal job you expect, I got a lot more freedom to decide what I do. Every week I can schedule whatever I think is most important to do, and if I got a great idea I want to work on, I’ll make room for it.

Since I have one main source of income (the Ionic Academy, a membership site) I want to diversify my income as a self employed developer for the future. Therefore, I try to build additional products/services to make sure I can sustain this lifetime for as long as possible.

5) How do you balance your time between friends/family, work, hobbies, and indie dev?

Actually this didn’t really got better since becoming self employed. Especially since the birth of our daughter 2 years ago, things have changed every couple of months. Usually I try to get up early and do some sports or start my day with a morning routine, and from about 8am to 2pm I have my core work time.

The afternoon and evening is for the family, and I usually don’t work on my main job anymore then. In fact I made my hobby (building cool stuff) my main job, so I’ve kinda lost my hobby at this point :D But when I’m fired up about a new idea I treat it like a side project and you can catch me on my MacBook late in the evening working on super (un)important tasks!

6) Ionic Academy - I don’t even know what question to start with there are so many things I want to ask 😱 I guess… What is the story behind Ionic Academy? Did you start with just a series of blog posts and decided to make a product and community around it?

I’ve been running my main blog for about 3 years before I started the Ionic Academy. While I sometimes started other topics on my blog, I quickly noted that everything around this (at that point) new framework called Ionic was getting a lot of traction. Since I was into all the “passive income” stuff I already created some video courses, YouTube videos and an eBook, but always played around with the idea of a membership site.

I actually never thought it would become a reality one day, and in fact I left my job in the week the Academy opened - but I had planned to sustain my life with freelancing and not this site!

But after the first launch days I had a lot more customers than expected (I think around 100?) and this continued to grow slowly. By now it’s my main source of income, and the main project I work on, create content for or do marketing for.

7) Ionic Academy - You have soooooo much content! My personal favorite is the “PWA Essentials”. How do you come up with ideas for all of the content? Do you source ideas from the community?

LOL that’s the same question my mum usually asks! I actually have a list of potential topics that could fill my content calendar for years to come.

In the beginning I wrote about what I was working on or learned in other projects, with the Academy I started to ask the members about content they would like to see. At this point I usually get questions across my blog, YT or anywhere else and I keep track of them for new tutorials or if the topic needs more explanation, it becomes a full course inside the Ionic Academy.

There are some general topics that just need to be in there, but now with over 50 courses it’s more like showing something specific, or doing an updated version since basically everything changes after a few months..

8) Ionic Academy - I love how personal and included you make users feel right away. The personal chat greeting message. The introductions in forum. Access to the community Slack channel. All of these combined feel so perfect for someone who needs help to feel like they have a support system of help. This isn’t really a question but more of a 🙌 for your onboarding and community inclusion!

Thanks a lot, that’s exactly what I want to achieve! In fact every new member get’s a personal welcome video as well, yours is still on my todo list :)

Additional note from Josh: I didn’t know about this when writing these question 👆 I received my personal welcome video and it was absolutely amazing. I’m so impressed with Simon’s connection to this users. I love this ❤️

People join because they know me and my content from my blog, YT and email list. They expect me to show up, and I want to be different than other online schools where it’s more a generic approach. Because I am the only person working on this, and because I want to be different than big companies, I take the time to welcome everyone personally. Plus the automations with Intercom and emails that you just need to have in place at some point to help your users get started.

This is still something I’m working on even after years, as people who don’t have a clear onboarding will churn fast. Getting a quick first win for a member is essential for a good relationship, and I still need to do better.

9) Ionic Academy - I expected the “Courses” when coming into the dashboard but I did not expect the “Projects” section. I love the idea of having a project for users to work on their own like an assignment. Where did this idea come from? Do users help each other out in the forums or Slack if there any issues working on projects?

This was actually an idea I had before the Academy started: Go through a course, then apply your knowledge from the videos in a simple assignment. From what I can see, this never really took off, nor did something like a monthly code challenge.

Developer got a lot to do, and working on another project without a real purpose just for learning is usually something they won’t do.

But right now I’m revamping that whole section into something like a “career path”, in which you get a task to create an app, and upload it later to your e.g. Github profile so you can include it in your CV. During the pandemic many great developers got laid off, and I want to somehow support people to get a new job. And presenting their skills in a good way with a project they did themselves is still a great way to prove your knowledge!

10) Ionic Academy - The dashboard you’ve created is absolute amazing! Its very easy to navigate and find all of the different learning materials you provide. So I have to ask… Did you create this dashboard yourself with Ionic? 😁

I get this question all the time.. The whole Ionic Academy is based on Wordpress and the Memberpress plugin plus another theme for some cool add ons. When developers have an idea, they usually start by coding their own blog system with GraphQL API before they create one post and then abandon the project.

I picked Wordpress 3 years ago because it makes creating a membership site simple and secure. I don’t love it and I’ve complained to myself a few times by now that it sucks, but it’s a very stable system that works great for this use case. If I had a lot of money and time, I would rebuild the whole thing into something more modern, but so far “it just works”.

11) Ionic Academy - I usually have a hard time following video tutorials but the way you architected Ionic Academy video tutorials is so 🔥 Breaking them down into smaller lesson videos with code that is relevant to that portion makes it so easy to follow along. How is the process like for creating these tutorials? How much time goes into making one?

Glad you liked them! There’s nothing worse than a 60 minute vide tutorial where you lose interested after 5 minutes, so I try to have manageable chunks of videos that members can consume quickly before they might have to work on something else again.

A course usually starts with an idea and a rough outline, then I went into coding the whole application. Once done, I start the recording with chunks of the functionality that I can group together, upload all videos to Vimeo and finally create the course inside Wordpress. This usually takes about 2-3 days for a new course, depending on how long it takes me to put together the app in the first place :D

12) Ionic Academy - Ionic has recenly added support for React and Vue based apps. Do you have any plans to offer different courses for React and Vue in the future? 🙃

It’s a challenging topic, since I have 50+ courses using Angular and all members are likely using Angular. I did check out Vue recently, but I’m not sure if I will or can add it. In general creating the same content for 2 or more different frameworks will be challenging, since this would basically 2x or more the time it takes to create the content if I want to cover everything.

I don’t have a clear path for that yet, so for now I stick with Angular which is what most of my members and followers expect from me!

13) Ionic Academy - What’s next for Ionic Academy?! I’m sure you have endless courses you could come up with but curious if you have anything new you are planning as well 😇

Ongoing topics are always attracting new members with promotions and the free content or crash courses I put out, or reducing the churn which is very high among my audience of developers.

You are right, I’ve planned countless tutorials and courses, but that’s more like an ongoing job every month. In terms of new stuff, I really want to work on the career section soon as that could benefit a lot of people.

14) 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 setting your priorities for me. I’ve got too many ideas for cool stuff, but only limited time. Therefore sometimes I would really like to work on a funny project like converting my main blog to a static site, but it’s just not reasonable from a financial point of view. And of course, you get the occasional fear what happens if your project goes to shit, nobody is buying or the whole self employment thing fails. But if you’ve build up decent skills or a personal brand, there is likely a way out, even if it means accepting a regular job for a time.

The most fun is definitely the flexibility. Before COVID I used to go to the gym in the morning while other people were on their commute. Right now it’s still the ability so simply have any kind of appointment or make a pause during the day while others have to sit at their desk the whole day. Freedom is really the biggest plus of living this lifestyle!

15) Is there anything else you’d like to tell the indie dev community about you?

While the Ionic Academy is my main business, I’ve been working on fun projects (which to some degree also generate income) like the Kickoff Ionic tool to bootstrap apps, and I’m trying my best to grow my YouTube channel to 100k followers in the future (which will take some years with the current growth..) with not only coding videos but more casual and informative vlog videos.

For anyone trying to become self employed in the future, I have one recommendation: Be consistent and patient. Things don’t happen overnight. It took my blog 3 years to generate some income, and I credit posting weekly or every other week new content for that. Stick to your goals, accept setbacks and manage to find some time every day to work towards your dream!

Tanmay Sonawane

Q&A

1) What is your name? Where do you live?

Tanmay Sonawane, I live in Mumbai, India.

2) Introduce yourself. Education? Background? Main job? Interests outside of tech? Interests inside of tech?

I completed my Bachelor of Science in Information Technology (honestly it’s been so long that I don’t remember the exact year :D).

My main job for the past several years has been full-time indie. My interests outside tech are playing cricket, bikes, planes and trying to get good at guitar.

3) Have you ever considered yourself an indie developer?

Honestly come to think of it I’ve always been indie ever since I was in high school. In those pre-iPhone days I used to freelance creating websites and ever since iPhone launched had an Apple related blog of my own (theappledaily.com).

4) What got you started/interested in creating your own applications outside of your “normal” job?

I’d never been interested in programming right upto my final year. My final year project in college was a Windows Phone app, and the entire process of creating something from your mind and having it made real to touch was insane. This is what got me hooked on to creating my own things.

5) How do you balance your time between friends/family, work, hobbies, and indie dev?

Indie life has its moments, being home full time means you get to spend time with your family and friends, make up your own schedule for your hobbies and interests. There’s no daily commute involved, no one to boss you around, it’s actually liberating. That’s not saying there are no downsides, I’ve discussed some them towards the end.

6) Soor - To be honest… I’ve been a Spotify user for a long time. I’ve been trying to change over to Apple Music but the Music has always felt off to me. I think Soor is going to push me over the edge 😊 When did you start working on Soor? What’s the reason you created it?

I started working on Soor back in 2018 and the reason I created it is because I hated how Music app organized Apple Music content back then. Everything required multiple steps to discover new things and I almost always ended up playing the same things from my library. A more brief explanation of the why is explained here: https://medium.com/@tanmays/soor-first-ever-3rd-party-apple-music-app-a6d325953525

But its 2020 now and Apple has completely revamped the Music app, if you look at how Apple has designed the experience now you’d realize it’s the exact thing I wrote about in the article. You can almost say Apple sherlocked me here. So I had to adapt and keep working on new things that will make the app worth the money, so recently I launched features called Magic Mix and Release Alerts, Magic Mix is completely innovative and no one else offers something like that.

7) Soor - I have so many things that I’ve thought are my “favorite” while using Soor but I really really love that “Play” has the option to “Replace Queue”, “Keep Queue”, and “Next” is something I didn’t know I needed. I don’t think I can go back to any other because this is so amazing! Was this feature planned when you started working on Soor? What inspired it? 🙃

I actually added this feature pretty late into the app. It’s something which one of the users suggested, so I can’t take credit for it :)

8) Soor - I am so blown away with the “Relase to” navigation style you’ve implemented in this app. I don’t think I’ve seen anything like this before and I now want this in every other app! (For the readers, different navigation bar gets selected the further you pull down so you don’t need to tap the button.) How did you get the idea to add this “Relase to” function? Was it difficult to implement?

I love creating unique interaction mechanisms. I had this idea back when Apple started releasing larger (notched) iPhones, making it difficult to tap items at the top. It’s not difficult to start but refining it is a long process. I actually spent quite some time refining the force touch activation mechanism (this is when user has scrolled down in a scrollview so pulling isn’t an option) so force-touch-pulling would make it work anywhere regardless of scroll position, I had gotten it to a point where it felt natural, that is until Apple removed 3D touch entirely, so thats that.

Speaking of interactions, the one I’m most proud of was in one of my earliest app - Write, it was called cursor trackpad. A few years later iOS added something similar!

http://writeapp.net/Uploads/Cursor-Mode-Tutorial.gif

The most complex interaction and one that took me the most time to refine in Soor is the player. Animating across multiple objects, timing them perfectly and to make them all interruptible and cancellable is a non-trivial task. I know many of the SwiftUI folks would say this is so easy with matched geometry but it’s actually not when you get into the minute details and timings. There’s a reason all complex interactions on iOS are UIKit, SwiftUI simply isn’t as powerful and customisable yet.

9) Soor - I love the name Soor! Where does the name Soor come from? I usually like to try and guess but I’m a little stumped by this one!

It’s Hindi for melody :)

10) Soor - Being able to move and hide what home sections I want is so needed for a personal music app. I haven’t figure out what my ideal order is so… What does your personal home section look like? I might want to try it out 😇

I’ll be honest here in saying there is no right order. Part of the reason why Spotify is loved is they’re really good at algorithmic curation based on your listening history. I plan on doing something similar someday but it’s probably a lot of work for 1 person.

For now my setup is mostly of Magic Mixes added as sections. I like a mix of the current top songs, a few from Apple’s favorites mix playlist, some from Apple’s New Music Mix and a few that I’ve added to library, liked but not played much. And since Magic Mixes are dynamic, it keeps itself updated every time you open the app. I’ve come to trust this mix so much in past few days that I don’t even browse the app, I just run the mix from a widget and trust it.

11) Soor - I noticed in the settings you have a “Application Player” and “Systmm Player”. I think I understand the different where “System Player” makes Soor act as a front-end for Music but “Application Player” makes Soor its own media app. Am I thinking correctly on that? 😊 But also… What was the development like behind both of these types? Was one easier than the other?

Yeah you’re pretty much spot on. Application Player offers more control but is buggy, System Player uses the stock Music apps player so that’s pretty stable with exception that 3rd party devs aren’t allowed to manipulate queue order.

12) Soor - What was the most fun part of making Soor? What was one of the hardest or most frustrating? I’m going to guess MusicKit and MusicKit but I don’t actually know 😜

You’re correct again. There are tons of undocumented APIs that I’m using to bring it to feature parity with stock app. It can all break down with an iOS update but thankfully, Apple has been kind enough to keep it unchanged since several years.

Most frustrating part was getting Soor approved. It literally took over 4 months for the app to get approved. It was the first ever app to make use of Apple Music APIs in a player. Apple kept rejecting with reason that it mimicks stock Music app behavior. Fortunately we have an excellent Apple Developer Relations team here in India who helped me open a dialog with Apple and push for a policy change.

13) Soor - One of the first things I do when using an app is look for different app icons I can use. I also look for the “Launched” style since that’s my favorite 😉 After choosing Soor’s “Launched” style I saw that you attributed Charlie and had links to Launched, Dark Noice, and Charlie’s Twitter. Not really a question but I just wanted to say I loved this! ❤ I wish every app icon that had story or inspiration had information like yours!

Thank you! I wish more app devs would share work of their peers that inspires them. One of the recent examples I saw was in Weather Line, I loved how they dedicated their theme names to Tweetbot, Castro, etc. Every indie dev should do more of such stuff.

14) Soor - What’s next for Soor?! iOS 14 surprisingly launches tomorrow (I’m typing this questions on September 15th). Do you have any fun iOS 14 features planned? Any thoughts on iPad support? 😁

Since I’m answering them on 19th, I’d say the launch went really well. The most surprising part for me was the craze toward widgets. I did not imagine the thing that would appeal to users the most would be widgets. The top section is filled with widget apps. Soor is selling because of it’s widgets! And I actually scrapped plans this summer to re-make my other app called Wdgts thinking no one would be interested.

And as for what’s next, an iPad version is definitely coming. And if Catalyst has all the APIs I need, on macOS as well. I’ll be sharing more as I progress on Twitter.

15) What’s been the hardest part of being an indie dev? What the most fun part of being an indie dev?

Hardest part is that it’s a lonely job, at the crux of it you’re all alone going at it day in and day out, managing everything from design, development and marketing on your own and to stay on top among the cut-throat competition that is the App Store is not an easy job. Worse is knowing that the thing you’ve been working on for the past year may not work well financially at all.

Most fun part of indie dev is setting your own goals, you decide everything and you get to talk and interact with people who use your app on a daily basis. Getting to hear an app you made is making a small difference in their lives is an amazing feeling.

16) Is there anything else you’d like to tell the indie dev community about you?

Follow me on Twitter I guess :P Also if you end up buying Soor, search for and play this song in Soor to unlock an easter egg. (https://youtu.be/Mc_FiHTITHE?t=1483)


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 😜