To set expectations for you my dear reader, this blog post was written for me, not for you. It’s very long (quite long), but I’m still proud of it enough to post for the world to read.
The frigid days of December are often unbearable in New York City, but those same freezing temperatures combined with the slow down of work, life, and everyone’s collective desire to rest up after a long year afford plenty of opportunity to sit and reflect. At the end of every year I start to think about what I’d like the next year to look like, and then I set a theme for the upcoming year to help me make those ideas become a reality.
Yearly Whats?
A yearly theme is explicitly not a resolution, but a guiding principle you can look to over the next year. A yearly theme shouldn’t be too specific, otherwise you could just craft a resolution, and it shouldn’t be so broad that anything could fall into that theme. I’ve borrowed the idea of yearly themes from the Cortex podcast, where they discuss at length what yearly themes are, and how they approach their own themes.
“We are what we repeatedly do. Excellence, then, is not an act, but a habit.”
โ A quote commonly misattributed to Aristotle
What I like to do for my yearly theme is to look at a part of my life that’s stopping me from being the person I want to be, and then work backwards to figure out what ideas, practices, and habits I can adopt to become that person.
New year new me, right? Wrong. I treat yearly themes as a way to build upon the work I did in the previous year, always striving to become more the person that I want myself to be.
Yearly Themes Past
- 2022 (Year of Trial & Error)
- 2021 (Year of Building Foundations)
- 2020 (Year of Pushing Boundaries)
- 2019 (Year of Creativity)
- 2018 (Year of Stabilization and Independence)
I’ll zoom in on 2022 in a personal appendix at the end of this post, so let’s start in 2018. If you read these themes from oldest to newest, a story emerges. I was reeling from a divorce, and my #1 priority was to stabilize my life, and re-learn who I am outside of my marriage. I spent much of 2019 working on projects not because I thought they would bring me fortune, fame, or acclaim, but because they scratched a creative itch. By putting out those projects and seeing that they resonated with people just as they were I grew the confidence to push my boundaries, sharing more and more widely, delving into things that I previously would have been too scared to try. In 2021 I decided it was time to start thinking about a future where I don’t work at Twitter, and instead pursue my dreams of being an indie developer. So in 2022 I leaned into the fact that being an indie developer would mean making many mistakes as I built a business around my own software, and that meant a lot of trial, error, and being ok with the mistakes I make.
Year of Focus
I managed to accomplish so much in 2022, but most importantly I was able to focus on my health after a very difficult 18 months. Working at Twitter was extremely difficult near the end of my tenure because of deteriorating health, and also a loss of motivation due to the related externalities. But while I was still working at Twitter I was spending nights and weekends working on Plinky. I used the positive initial response and support from friends and loved ones to quit my job and focus on building apps full time. The personal appendix discusses this with a lot more in depth, but in terms of my yearly themes, this year I’m working to my reign in the worst of my habits, my distractibility.
I love to dream big, and letting my creativity run wild has taken me to some new and interesting places. I think it’s something that sets me apart from many developers, and has allowed me to build some things that truly resonated with people in expected and unexpected ways, which is something I don’t want to lose. But it’s also important to set a few goals this year and make sure that I get them done, this is the difference in knowing how to do everything, and having the time, energy, and wherewithal to do everything. I have to draw some lines and make some tough choices about what fulfills me to ensure I don’t spend my days working on an app, but instead am building an app that’s the cornerstone of a successful business.
Apps, Apps, Apps (And Business)
- Ship Plinky to the App Store
- Ship 2 major feature product updates
- Stretch goal: Ship a smaller app to grow Red Panda Club
My top priority in 2023 is turning my software into an indie apps business. I spent four months last year working on Boutique and Bodega, and while I didn’t intend to make money from them, I really appreciate the people who sponsor my open source work. Those two libraries are the foundation of my first indie app, Plinky , taking care of pretty much any state management one needs in a modern iOS app. I’ve built and shipped many apps before, but none that I was working on full time with the intention of building a business on top of. It turns out you can’t make money as an indie developer until you have a product people can pay for though, so my success in 2023 starts and ends with shipping Plinky to the App Store.
Shipping is just the beginning. The day you launch is closer to the first day of the journey than the last, which means there’s still a lot of story left to be written once Plinky is in the App Store. I have a backlog of features I’d love to build as long as the Grand Canyon, but it’s more important to listen to my users about what they want than to trust my gut. All of the feedback I received after launching Plinky’s public beta was incredibly helpful. There was so much positivity and excitement, people told me so many things they wanted to see, and of course they found plenty of bugs. A sign that I’m building a product that will resonate is how many of the features people requested were already on the roadmap. There’s no substitute for people using the product and telling you what they want, so rather than building out everything I think will resonate I’m making sure that I ship the minimum viable [polished] product, and then will build more features afterwards. Hopefully it will be more than two features, shipping regularly is an important sign of commitment to my users, but I’d like to set expectations low given how many other things there are involved with building a business.
I don’t expect my stretch goal to come to pass, but it’s valuable to keep in the back of my head. I’m building an app with the code I write, but I’m also building a company. My dream is to build personal playful productivity apps that help people be the best versions of the person they want to be, but it’s pretty rare that someone predicts exactly how they get to their dream.
I keep a doc of “Interesting Business Ideas”, ideas that I hope to implement, building a business around my values. It has idealistic goals like my Red Panda Promise, a plan to donate 5% of my profits every year to offset climate change and help preserve red pandas. It has practical ideas like giving away a free month of Plinky Pro to people who send bug reports that lead to me fixing problems or feature requests I implement, because they should be rewarded for helping me build my dream. And of course there’s something I’m already doing, working in public and giving away as much knowledge as I can so other people can start business centered around their own novel ideas.
Shipping a second app would give me more of a playground to experiment with these ideas, or to even potentially work on a project with a partner. My dreams don’t stop at me working solo, they’re about building things that matter to me and resonate with others. Working with the right person is such a wonderful feeling, so if I find the right person I might consider bumping one of my smaller projects to the front of the queue, something we can build together on nights and weekends. The reason this is a stretch goal though is because taking my eye off the ball and splitting my attention is clearly antithetical to my Year of Focus. I would only consider shipping a second app if the right circumstances emerge, but you never know.
Simple But Effective Steps Towards Working More Effectively
- Use flow sessions per day to focus on my work
- Plan out my work tasks in Craft
- Make sure my todo list is under control
- Be less reactive through better batching
Some days I wake up and can’t wait to begin working. Other days I’m so distracted by every possible distraction that I have to conjure up the will of Thor to start my work day. I spent much of 2022 letting my creativity guide me to what I should work on next, and it resulted in quite a fulfilling year. I often found myself in research mode, which led to me creating Boutique and Bodega. I spent a lot of time prototyping really interesting ideas, resulting in some truly unique experiences for Plinky. And while I was able to get Plinky out to users in my public beta, it feels like I haven’t had to “work like an adult” in a while. Even my work environment at Twitter was very reactive, and led to me forming plenty of bad habits for accomplishing deep work. The scope of my work will continue to narrow by necessity the closer I get to shipping Plinky to the App Store, and that’s where practicing good work habits will become crucial.
I’ve never lacked motivation, but my lizard brain gets distracted very easily. The Unreasonable Effectiveness Of Just Showing Up Everyday discusses how once you get started, staying in the flow is much easier, it even becomes quite an exciting state that you strive to reach. Over the final month 2022 I started using the app Flow to, well, stay in my flow.
Flow is a pomodoro timer, with a twist. Flow lets you denylist apps and websites, so when I try to open Slack, Tweetbot, or Messages during a pomodoro session, it will just close the window automatically. Having a hard boundary allows me to stay in my flow, now when I tab over to check out what’s happening on Slack I’m no longer distracted, instead I’m greeted with a reminder to stay in Xcode until Plinky finishes building.
I’ve picked up another good habit in the last two months, I’ve started to plan out my day and my week in Craft. As cliche as it is for a software developer, I always try to bite off more than I can chew. Having a list of tasks I’d like to accomplish provides me enough perspective to see how much I really am trying to do, and keeps me on track when I see something else I want to do like spend 30 minutes tweaking an animation. Planning out my week gives me a good overview of just how much I’m really trying to accomplish, because it’s easy to lose sight when you’re only focused on that day. And it’s also nice to be able to look back and see all that I accomplished, like a little gold star from my teacher at the end of a productive week.
I’ve always been a todo list person, but by the end of 2022 I found myself overwhelmed with 50 tasks to do on my todo list, which was clearly not actionable. My list was filled with everything from urgent chores to stray ideas I didn’t want to forget to long-term plans. I spent two days at the end of the year to find each idea their right home, whether it was in Things, Craft, or in the mental dumpster. Anything that isn’t actionable in the short term has a better home in long-term storage like Craft, it’s not necessary for me to wading through my entire future all the time when what I really have to do right now is pay the electric bill.
Most people operate their lives around the standard work calendar. But as an indie I have an inordinate amount of freedom to shape my day, including working later into the night when my mind is ramped up and operating at it’s best. I consider that a real blessing, but the bad habits of working reactively that I picked up working at Twitter aren’t good for my personal life either. I constantly feel like I’m behind and playing catch up, or need to respond to my friend the same way I’d be tempted to respond immediately to my boss. But I don’t have a boss, and my friends definitely aren’t the boss of me. The solution is pretty simple, but took some time for me to see. I should just not do that, instead of responding immediately I can designate 10am and 6pm as the time I look at emails, find 10 minutes in the middle of the day to respond to some friends, and make reasonable exceptions when there’s some urgency or necessity to respond quickly. I expect these boundaries to not only make me less distracted, but will also make me more effective and will enable me to do better work.
Energy
- More morning or mid-day meditations
- Rest one day on the weekend, for real
- Figure out where I can cut some social obligations
- Plan for no more than three weekday social obligations per week
My day is dictated by time and energy. We all have the same amount of time, but we have differing amounts of energy at different times. There are many things I can change in my life, but I’d benefit most from focusing on how I apply my energy, and where I apply it. I’ve meditated every day for the last five years, it’s one of my best habits. I always feel better after meditating, but when I’m at my busiest my daily meditation will often slip into the evening or possibly very late into the night. When I’m my least focused and most frazzled is when I need to take a step back and meditate, so it’s important for me to stay conscious, pause during the day, meditate, and regain my energy.
It’s also important for me to take a real day to rest, something I often have trouble doing. I’m a constantly curious person, so historically I’ve found myself constantly solving problems and puzzles until eventually I burn out and need a real break. It’s important for me to avoid that trap, and to take a day off every week to make sure I can recharge. Creativity needs room to breathe, and that day off comes with other perks. It will give me space to be excited for that next day of work when I do get to let my mind loose on something I want to solve. Life is about more than just work, and I need time to live life and celebrate the opportunities I have. This year I did a much better job of putting down the computer and spending time with the people I love, and I intend to keep doing that. As for the second day most people take off every week, I tend to work six days a week but with a more relaxed schedule, scattering for chores and obligations that most people accomplish on the weekend. This year I’ll use one of my days off to do the personal and work planning I mentioned earlier, maybe scratch a creative itch, prototype an idea I have, or spend the day with family and friends if I’m feeling particularly social.
Your energy is bound by what you do, but it’s also determined by what you choose not to do. 2022 was a year filled not only with work, but a lot of socializing, travel, and quality time with loved ones. As an introvert though I’ve found my energy running really low, and often feeling like I can’t be my best self for the people in my life. Too often I’ve treated the time I have to work as a gift because it lets me go into goblin mode behind a computer, and that’s a signal that I need to find a way to stop feeling so overwhelmed and stretched thin socially.
It’s incredibly hard to do, but I need to figure out where I can cut some of my social obligations. The ability to connect with friends across the world thanks to messaging, video, and airplanes has made me feel more connected to them than ever. Every week I have a few FaceTime calls, and I stay in touch with people over iMessage and Slack all day. I took four major trips to see friends in other parts of the world this year, and it was incredibly fulfilling. Spending time with people in person made me realize how much is missed over a monthly FaceTime call, and I don’t have a good answer about how to fix that.
But it does make me think, even if it isn’t easy maybe it’s worth trying to move those calls back from every four weeks to every six or eight, to reclaim some of that social energy I’ve been giving away. I need to get that energy back somehow, and limiting myself to three social obligations per week (including FaceTime calls) feels like a reasonable balance between keeping up with friends and running at a constant energy deficit. For much of 2022 I had the flexibility to work around people’s schedules, but now that I’m working full time and more focused, I’ve become bound to the same constraints as everyone else. It’s far from my favorite thing to do, but I have to be responsible and set hard(er) limits, staying vigilant about my energy, so I have energy to spare.
One thing I’m not willing to give up is my time with Colleen. We have our weekly date night, time together on the weekend, and dedicated space for each other every night before bed. We spend plenty of time together besides that, and even though I have space to be my own individual, I’m always happy when I’m with Colleen, so spending time with Colleen has to stay a priority.
Tradeoffs
- Improve my sleep regimen
- Shorter journal entries to reclaim my time
- Figure out where I can cut my information intake
More bad news, as an adult I have to start setting better boundaries. I don’t want to go to bed at 1am every night anymore, it makes me feel like I’m not a functioning member of society. I always get my 8 hours of beauty rest which means I’m often crawling out of bed at 9:30 or 10. Every time I’ve tried to be a morning person it’s failed, but I should be able to wind back the clock to 12 or 12:30, or gasp, maybe even falling asleep before midnight.
I spend quite a bit of time journaling every night before I go to sleep, and along with meditation it’s one of my most treasured activities. It’s worth the time I put into it, but it can also be really daunting, especially as the last thing I do before going to sleep. In an effort to preserve my memories I’ve found myself adding more and more details to my journal entries. The more detail I add the longer a journal entry becomes, which means spending more time journaling every day. That time adds up, and it adds up fast. I’ve noticed my journal entries ballon from 400-600 words per day to 800-1200, which means spending 20-30 minutes writing rather than 10-15. While I find the longer journal entries better to read afterwards, it’s a lot of time to give up. I intend to reclaim my time by focusing in on the important events of the day, adding flourishes and details to capture my memories as accurately as possible, rather than recapping everything that happened that day, down to taste of the bagel I had to start my morning.
An evergreen reason I find myself constantly feeling behind is because I’ve done this to myself, I am constantly behind all the content entering the firehose of my phone. There’s always one more thing to read, a show to watch, a podcast to listen to, and all this content comes in all day every day. I’m always happy to indulge myself with something else to consume, but I’ve noticed that when I have free time my mind really enjoys wandering off. I don’t need to put on a podcast or some music when I’m walking around, the world is so rich and textured, I should enjoy the full experience of my surroundings. I’m very happy when the content runs out, so why shouldn’t I give myself more of that?
All I’ve been missing is permission. I’m giving myself the permission to drop things. I’ve unsubscribed from a bunch of podcasts, I’ve removed a bunch of RSS feeds, I’ve unfollowed a lot of people on Twitter (and Mastodon), and I’m giving myself permission to put down books I don’t like rather than begrudgingly finishing them.
There’s a central motif underlying my yearly theme of focus: my time is precious, so I should focus on what’s important.
Appendix: 2022
I’m really proud of how I leaned into my Year of Trial & Error in 2022. I accomplished so much by deviating away from my tendency to make safe choices, having always feared the impact of making a mistake. I sold myself on 2022 being a year where it was ok to make mistakes, and to show myself that I can recover from any mishap. Not only did I come out ok, I had a great year where I accomplished so much.
But I also learned a very valuable lesson. When you down the โwrongโ path, it often ends up being the foundation for another more formative path. When you make reversible decisions you can always walk back down the road you came on, and take another path from there. This time though you’ll be armed with knowledge and experience that you didn’t have the first time, letting you make better choices. You can even walk back up the same path you came down, succeeding this time because you’re prepared for what lies ahead.
Beautiful, amazing, wonderful things can happen when you do something you’re unsure of. This year I did one of the least safe things I could imagine doing, I quit my job at Twitter to pursue my dream of being an indie developer. I’ve been dreaming of building a business around my apps, and in 2022 I took a big leap forward. I’d been preparing mentally, emotionally, and financially for the day I decided to leave for over a year, but that didn’t make it feel any more practical.
I left on a Friday, had a blissful weekend, and on Monday I woke up to frantic texts from friends asking and telling me about Elon Musk acquiring enough shares of Twitter to become the top shareholder. I didn’t know what I was going to do that day, but I was very glad that this news didn’t directly affect me anymore. If I had stayed at Twitter for one extra day I would have had a completely different perspective about leaving rather than all of the positivity I had around my departure. The lesson here is that no matter how safe or unsafe you feel making a decision, you always only have a small subset of information. No one can predict the future, and the future is more vast than the present, so worrying and trying to optimize every detail isn’t a recipe for success. You can only control the parts of any major decision that you have direct control over.
Contrary to the chaos that ensued at Twitter over the coming months, I spent my first months of self-employment following my creative impulses, and they took me to some amazing places. I won’t spend too much time going over every one of them because this is the personal part of the post, and I know what they mean to me. Instead I’ll list them off, with some details in case one of them catches your eye and you feel like taking a deeper look.
- I built two very successful open source projects in Boutique and Bodega. These projects even led to me being interviewed by the GitHub team. (Hi mom and dad, I know you don’t really get what I do but I’m happy you listened to the podcast and were very proud. ๐๐ปโโ๏ธ) Boutique and Bodega serve as good foundation for creating MVCS, an architecture for building SwiftUI apps that’s gotten some traction and helped me a lot.
- I needed an image-based API for my Boutique demo project, so I built one that serves images of red pandas. This was a fun example of what I could do because I’m now working for myself, there’s no immediate business value to having spent 2 days learning Cloudflare Pages, R2, and a whole bunch of other technologies, but given my company is named Red Panda Club I’m sure I’ll find plenty of fun uses for this going forward. ๐ฆ
- I rebuilt and redesigned my personal website, fabisevi.ch, something I’ve had on my todo list for nearly a decade.
- I created build.ms to supplement Red Panda Club. Red Panda Club is where my apps and products will live, build.ms is where I’ll be sharing the lessons I learn building Red Panda Club, with a focus on engineering, design, product, business, and more.
- I wrote six blog posts across those two websites. Coding As Creative Expression, Reflections On An Open Source Project, Goodbye Fellow Tweeps, Designing A High Signal Interview Process, Model View Controller Store: Reinventing MVC for SwiftUI with Boutique The Best Twitter Bio, The Humble Tweet
- I put my feelings out there by spending the day before my birthday writing about all the nice people in my life.
- And last but definitely not least, I launched a public beta of Plinky, my first indie app. [I’ll do my best to not pitch you again in this blog post, but maybe sign up for the beta? I make you an empty promise that you’ll like it.]
I did a lot more than that of course. I read 15 books, a whole bunch of meaningful articles, traveled around the world to meet friends old and new, and of course spend a lot of time with my friends, family, and girlfriend here in New York. Those all spurred much reflection and insight, but to explain how they fall under trial and error would take far too many words.
Now we’re going to get really personal. By far the biggest trial I dealt with was a mysterious neurological disorder that caused me indescribable pain for the last 18 months. People who are close to me know about it, people who know me from afar may have some allusions to it, but in 2022 I finally received a diagnosis for my mystery ailment after seeing dozens of doctors and specialists who couldn’t figure out what was wrong with me.
Thank you to my neurologist for diagnosing my cervical dystonia, which allowed me to start getting treatment for the condition. In most cases it’s incurable, but since my condition has a good chance of being linked to trauma, I may be able to heal over time. I’ve seen a lot of progress and pain reduction not only from the quarterly botox injections in my neck and medication I’m taking, but also from the work I’m doing in somatic therapy to address the underlying trauma.
There were many errors along the way, I tried so many different things to feel better. Every day there was a new and slightly different pain, and every day I would try to figure out what was happening. Somatic therapy has not only helped me face the trauma that’s causing my brain to malfunction, but to learn how to listen to what my body is telling me that my brain won’t allow me to hear.
But I persevered. I knew I couldn’t live like that, I love life far too much to give up. I love Colleen who’s been there for me every day, and I love my mom who’s been there to listen to me as I’ve gone through so much. I love my brother and my dad who have their own sense of how I’ll get better, and are supportive no matter what.
While every day still carries some difficulty, it’s easier than it was six months ago when I finally found my doctor and somatic therapist. It’s easier than it was three months ago when I started botox injections. It’s easier than a two months ago, one month ago, one week ago, all of which are times I made majors breakthrough in somatic therapy.
None of this would have been possible if I hadn’t quit my job. I was suffering physically every day, and even with the generous time and space away from work that Twitter allowed me to focus on my health, I couldn’t focus on on my health enough to see progress. I needed this time in my life, I needed this space, I needed to feel like this year was a year dedicated to me. I said that quitting my job was one of the least safe things I could have imagined doing, but sometimes doing what’s safe isn’t the same as doing what’s right for you. Having learned that lesson, I consider my Year of Trial & Error a tremendous success.
Joe Fabisevich is an indie developer creating software at Red Panda Club Inc. while writing about design, development, and building a company. Formerly an iOS developer working on societal issues @Twitter. These days I don’t tweet, but I do post on Threads.
Like my writing? You can keep up with it in your favorite RSS reader, or get posts emailed in newsletter form. I promise to never spam you or send you anything other than my posts, it’s just a way for you to read my writing wherever’s most comfortable for you.
If you’d like to know more, wanna talk, or need some advice, feel free to sign up for office hours, I’m very friendly. ๐