Ever since I was able to accessibly use an iOS device, an iPhone 3GS, I’ve imagined how awesome it would be to be able to develop my own applications. That excitement was very short lived though as I soon became aware of just how complicated developing an application really is. It’s a very involved process — or so it seemed to me — and for someone who hasn’t written any code since C ++ was the talk of the town, it seemed like an impossibility. I wrongly assumed this was especially true for iOS because apps are often very visual and interactive and I just couldn’t imagine how I’d tackle that without vision. And so I quickly decided that iOS app development was just not for me.
Fast-forward quite a few years and Apple releases Swift and SwiftUI which, at the risk of over simplifying things quite a bit, is a more powerful and natural programming language for application development. Put another way, Swift and SwiftUi is intended to make application development easy enough for just about anyone to learn and do. Being a natural skeptic, I doubted that it could be quite as easy as Apple seemed to suggest, but the idea behind it seemed really interesting to me.; indeed, Swift and SwiftUI have taken the iOS development community by storm, with entire applications being developed using it. With only so many hours in the day though, my challenge was going to be finding the time to devote to learning it. And so again, I set the idea aside figuring I might look into it whenever I had more time.
I’m not proud of this, but I have a long list of the things I want to do when I have more time, the thing is, the longer I wait to do any of the stuff on that list, the less time I’ll actually have to do any of it.
I initially learned about 100 Days of SwiftUI from Darcy and Holly of the Maccessibility Roundtable podcast. The idea behind this course is simple: learn SwiftUI gradually — you guessed it — over 100 days. The course suggests devoting an hour per day to learning and practicing the material. An hour per day doesn’t seem that bad to me, I probably spend at least an hour per day thinking about all the stuff I’d love to do, if only I had an hour per day. 🙂 While looking at the contents of the course is a little scary for someone like me who is just beginning, I love that there are days set aside for review and practice. In addition, there is emphasis on not trying to go it alone, students are encouraged to share progress and help one another. That sharing progress thing is actually one of the two rules of the course, as it can help with accountability and can also help the student make connections with others who are also learning.
So, what do I hope to ultimately accomplish? Sure, I’d absolutely love to get to the point where I can start developing or working on apps that are useful to someone, but that’s not actually my goal. I want to understand more about iOS apps because so often, when I report an accessibility issue, I feel like I really don’t have a way to describe what’s not working for me other than to say that something just isn’t working. I’m hoping that by learning the basics of SwiftUI, I might be in a slightly better position to provide more constructive feedback. Whether I’m able to develop my own apps, or help other developers improve theirs, I figure it’s a win either way and so I’m excited to get to learning. For anyone else who might also be interested, let’s definitely connect and learn together.