Am I an indie developer?

Earlier this month I got interviewed by Josh Holtz for Indie Dev Monday’s Issue #99 talking about my experience with being a winner of this year’s Swift Student Challenge, some of my projects and whether I identify as an indie developer — read the entire interview below. Thanks to Josh for having me on Indie Dev Monday!

image text Screenshot of indiedevmonday.com

Q & A - General Background

0) What is your name? Where do you live (city or general area)?

Hello 👋🏻 I’m Henri Bredt, 21 years old, living in Ingolstadt, Germany at the moment.

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

I’m currently studying User Experience Design, a combination of design, psychology and computer science related classes. Four years ago, I started teaching myself how to code with Swift alongside school because I wanted to be able to turn some ideas I had into reality. Whenever I can, I’m now combing these two aspects to design and develop my apps. But actually, in both the UX design and the iOS development world, I still feel like I’m just starting out — there’s so much more to learn :D

Other than that, I love photography and various forms of sport. In terms of photography, I really enjoy the haptics of a real camera with dials, buttons and a view finder (the Fuji X100V is my camera of choice for anyone interested). Just walking the streets outside and looking through the viewfinder to compose a shot lets me forget everything else for a moment. For me, that’s a great way to rest — even though I should be doing that more often :D

2) Have you ever considered yourself an indie developer?

Kind of, I love building my own ideas and found that I’m creating my best work, when I can choose, control and fully identify with a project. And when my time is not allocated with university assignments, I enjoy doing just that. So I do identify somewhat as an indie developer — even though I’m not at it full time and I would not be able to make a living from that at the moment.

These days I’m trying to build up my skills and my app portfolio, so hopefully by the time I graduate, I’ll have the option to go at least partially indie. I’m not exactly sure about my future path, I can imagine working for a small company as well, but as of right now, going full-time indie definitely is a consideration.

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

As a pretty young child, around age 12, I started drawing out wireframes of software products I dreamed of building (for example alternatives to Lightroom and Windows :D). Back then I had no idea what I was doing, but today I know that these wireframes really are a great way to start building a product. The concepts remained concepts back then, as I had no coding experience. I started playing around with Visual Basic on Windows at that time, but it didn’t really click with me. I wasn’t able to create the interfaces I wanted and the whole coding world with all of its concepts was entirely new to me, so I was kind of overwhelmed. Then I shifted my focus to photography and image editing, got a Mac for that purpose —and then discovered Swift (version 3 I think), which did click with me. I really liked the language, found some great learning resources and was fascinated by the possibility to actually build my own, real apps with exactly user interface I wanted. I still remember how fascinated I was when I had my first little app running on my phone. The fascination for the freedom to create whatever I wanted then simply stuck with me.

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

University assignments, especially exam preparation and my own projects do conflict sometimes. Right now I am starting to slightly prioritize my own work over university assignments, as I feel that will have a greater impact on my future journey :D I really enjoy what I’m doing with my own indie projects — I think I might just found what I love doing, so naturally I spend some nights or even some weekends just coding, which is totally fine. But I also make sure that I have enough time to spend with family and friends. I don’t have to make a living from my indie work or meet other peoples deadlines, so I can easily make space for that in my schedule. The consequence simply is that I’m progressing slower with my own projects, but I’m not in a rush. Hobbies, family and friends are equally important to me.

Q & A - Typoversity & GlanceCal

0) Typoversity - First of all… congrats on being a Swift Student Challenge Winner for WWDC 2022 🥳 That is a huge accomplishment! What inspired you to submit an app for the Swift Student Challenge? Did you have any challenges coming up with an idea? Would you recommend this challenge to other students?

Thanks! I am extremely honored to have been selected as a winner! My primary motivation to participate this year was to get the chance to experience a WWDC in person. I got to know two other students who have already won the challenge and were invited to WWDC as scholarship winners (before the pandemic). The amazing stories they told about the event really made me want to experience it as well. The last two years, despite winning twice, I was in bad luck, because WWDC was all-online due to the pandemic. This year, I had some hope that the Swift Student Challenge winners would get a special ticket for the WWDC kick-off day, but they didn’t — so I think I’ll have to participate again next year :D

Working on the project definitely had some challenges. You only have three weeks and I’ve had to balance my time between the challenge and university assignments. I’ve also had some self-made troubles :D The last few years, students were asked to build a Swift Playgrounds project and I started building one this year as well. Only a few days before the deadline, I randomly read through the challenge requirements again more deeply and figured out that this year, it should be a Swift Playgrounds 4 app project instead — so I had to convert my playground into an app relatively close to the deadline, but luckily it all worked out :D

I’d definitely recommend other students to participate in the challenge — especially if there’s the chance to win a WWDC scholarship again. Also, winning really helps to connect with other like-minded people, and those projects are great for your portfolio. Even if you don’t win the first try, building and submitting a project is a great achievement! And as a bonus, the winners get some nice WWDC Swag, a free year of membership in the Apple Developer Program — and this year, additionally, we got a pair of AirPods Pro :D

1) Typoversity - I am so so bad at typography and I’ve been wanting to get better at it but I had no idea where to start. It’s slightly intimidating to me 🙃 So Typoversity is perfect for me! It’s on a platform that I’m comfortable with and I love the quickness of the lessons. When did your passion for design start? How did you learn typography? Do you have any other favorite parts of design?

I had a course on typography at university and kind of fell in love with that design discipline. I love simple designs, reduced to the essential elements and really the more you simplify a design, the more important good typography becomes. When designing anything, I thrive to create something “timeless” — I think that’s really hard, but good typography definitely is a huge part of it. A design advice I’d give to other indie devs is to ignore design trends. These trends come and go, and a design that’s extremely trendy today, looks outdated in just months from now (remember that awful neumorphism trend with these super low contrasts?). Get the basics right, create simple user interfaces that align with the general style of the operating system and you’re good to go!

2) Typoversity - This app is such a delight to use and I really have felt like I’ve learned from it! Where did you get the idea to make a typography educational app from? Have you made educational material before? It seems like you may have because this is great 🙌

Thank you, I’m so happy to hear that! In my day-to-day life, I encountered a few situations in which people were not aware of even the most fundamental rules of typography. So the idea for my submission to teach simple basics in a fun and interactive way was born. I made an educational Swift Playgrounds project as a submission to last year’s Swift Student Challenge, which was focused on teaching how to achieve better app usability. I think I’ve learned a few lessons there from which I could benefit when creating Typoversity. An example is always providing some kind of help if I want the user to do something, like completing the challenges in Typoversity.

I am a huge fan of Inter by Rasmus Andersson (@rsms). That’s my go-to font for any project, my upcoming personal website will very likely use that font as well. It’s a simple and clean Helvetica inspired font, optimized for digital use, that works really well as a substitute for Apple’s San Francisco font — and it’s free and open source. Generally, I prefer simple and perfectly readable fonts over super trendy ones. Otherwise, I enjoy checking out type foundry websites, I have a whole bookmark folder in Safari :D Those foundries usually have very well-made websites and it’s a pleasure to discover new fonts there — and sometimes, because these websites tend to be really great, I get some UI design inspirations as well. But be warned, buying good fonts is extremely expensive and for indie projects, using free fonts is probably the best option (until you have established a truly profitable business, then go for it!).

Earlier this year, I started creating a font myself in the app Glyphs. The project was inspired by 1970s cinema billboard fonts - but due to limited time and skills back then, the project is on hold. Looking back, it really made me respect the tremendous work of real type designers.

4) GlanceCal - It took me too long to realize that you were also the developer behind GlanceCal! I’m a GlanceCal user 😁 Thank you for making it! I usually like to ask what problems people had that inspired an app but I think I get this one 😛 So… What was one challenge you faced when making GlanceCal? What was something cool you learned? Is there anything different you would have done?

A tough one for me was utilizing background threads to ensure that the UI remains responsive and fast during launch and calendar database updates. I was completely new to that field and luckily had some great help from a more experienced developer. Also, the app is made with AppKit and I’m so much more comfortable and faster working with SwiftUI nowadays, so I wish the app was based on that instead. GlanceCal was the first app I’ve released on the App Store and it grew with my skills. Today, I am at a point where the current architecture (and AppKit) does not allow me to develop the project further in a way and at the speed that I want to. It’s time for a rewrite in SwiftUI :D

5) Typoversity, GlanceCal - What’s next?! Do you have any future features that you can share with us?

During this year’s DubDub I’ve started working on a GlanceCal 2 prototype that is made entirely with SwiftUI. I’ve signed up for multiple 1-on-1 Lab sessions and got some feedback from Apple engineers. They gave me so many great insights for improvements and I’ve learned a ton — so participating in labs defining is my recommendation to any developer for next year’s WWDC! I’m planning to develop that demo project further and release it as version 2 in late summer on the App Store. I’ve got a bunch of ideas for new features and improvements — one of them, and a highly requested one, is giving users the option to select which calendars should be taken into account. At the moment, I’m a little afraid that the update will have to require macOS 13 and a noticeable proportion of my users is still on macOS 10.x, so I’m thinking about a way that the current GlanceCal version can still remain available for those, who can not or want not upgrade their OS.

I’m unsure about Typoversity at the moment. I have some ideas for future lessons which I could add, but right now, it’s a documentation of what I’ve won the challenge with, the more I change and add, the less it represents the winning submission. We’ll see what I’ll decide for :D

Q & A - Last Questions

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

I think the most fun part is the flexibility and freedom. If I have an idea for a project or a feature, I can simply start to build a quick prototype. Same for new APIs, if there’s something new that I think is interesting, I can immediately start implementing that. For what I’ve heard so far, that freedom is extremely rare in any other development or design related job. Also, hearing back from people who actually use the software is the greatest reward! Probably the hardest part is, that you kind of have to be a jack of all trades. Ideation, prototyping, interface design, usability conception, user research, development, marketing, customer support, business administration — all that’s part of being a (solo-) indie developer. There are always a thousand things to be done and that can feel quite overwhelming from time to time. But it never gets boring :D

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

Yeah, I’ve started being pretty active on Twitter (@henricreates) — I’m trying to build in public, share my progress and meet new interesting people. I’d love to connect with you there :D

Also, I want to thank everyone contributing to the community, providing generous help, feedback and support to other indie developers! And just because it needs to be repeated over and over again: Don’t skip marketing! Don’t be afraid to show off your work! Don’t hesitate to submit App Store feature requests! You’re doing great!

8) Do you have any other indie devs that readers should follow / lookout for?

There are so many great other indie devs that I can’t provide a selection of just a few, because ultimately I’d forget or leave out a few. So instead I’ll focus on just one, who really inspired, motivated and supported me. Also, his app »Mikrolern for Swift« helped me get going with learning Swift. Martin Lexow (@martinlexow) builds wonderful Mac applications with attention to detail, he and his work definitely is worth checking out!