Notes: How to approach learning new things?
A while ago Jeroen and me started doing regular Twitter Spaces that are loosely based on a topic revolving around the iOS community, our common jobs in the space (we are both working at Stream), or general development advice we can think of. Everyone is welcome to come up and share their thoughts because we love to hear from the community and their takes on the topics.
It is a chill atmosphere and aimed at having a good time with a nice conversation amongst friends. If you want to be kept in the loop of what’s happening when the best approach is to follow both Jeroen and me on Twitter as we take turns in hosting these events.
1. How did we learn iOS Development?
- Udemy course by Devslopes (Mark Wahlbeck)
- reading a lot
- some more courses (tutorial hell)
- 100 Days of Swift & SwiftUI (great for accountability)
- Building toy projects (never been seen by anyone, which is fine for me)
- Java Dev for ages. Got an iPod, got a mac, switched to iOS then switched jobs to be able to go all in.
- Big Nerd Ranch book was my entry
- Did a proof of concept with using CorePlot. Did a tiny bug fix even. (Commit to be found here)
- Then went head first into a new job working on the ING Banking App, learning on the job really.
2. What are sources of information?
Blog posts (many great sites)
- Ray Wenderlich
- Hacking with Swift - Paul Hudson
- Swift by Sundell - John Sundell
- SwiftLee - Antoine von der Lee
- Donny Wals
- Swift with Majid
Courses (e.g. on Udemy)
- Being a lead software developer by Jeroen Leenarts
- Donnie Wals (Practical Core Data + Practical Combine)
- Mark Moykens (SwiftUI, Animations)
- Big Nerd Ranch book
- many more
- following people that put out content helps a lot
3. Learning types and ways
Different levels of abstraction:
- Apple documentation → direct, tedious
- follow-along tutorials → has bias, content is prepared
- videos, blog posts → most convenient, learning is done by someone else
- sample projects → direct, time-consuming, work great for learning
Sometimes challenge with tutorials:
- Be careful and thoughtful when consuming tutorials
- People always always bring in their own opinions
- Example: I thought I had to do MVC (Model-View-Controller) as an architecture or else my app was bad, which led to me feeling unsecure
- this was wrong, because it was only the opinion of the creator
- if you find solutions that work you, it’s completely fine
Mental models of learning: (you have to figure out what works for you)
- reading / writing
4. What are our strategies for learning?
- always trying new things (when hearing about a framework, find things online)
- getting inspiration from job, podcast, Twitter, conversations, etc.
- Framework like Combine (book is working nicely)
- Animations (playing around, copying ones found on Dribbble)
- Earlier in career → Courses + Videos
- After having more experience → find more direct ways like documentation and toy projects to build up own expertise
- only watching content is not really working
- writing about things helps a ton
- Read, read, read. It is one of my strongest skills, beginning something new and then deep dive right away.
- Once I think I know enough, I start experimenting, I should do this earlier.
- I really should do trial and error more
- Very much motivated in my direction and pace by what I need right now, just in time knowledge acquisition really.
Once again, we’re doing regular Twitter Spaces about topics from the community. They are happening on Wednesdays at alternating times to allow people from all timezones to participate.