View Details
The 90 days has finally come to an end. In the beginning it felt like an endless amount of time but the end has really snuck up on me quickly. I want this final episode to be the one episode everyone listens to. This is where I summarise and illustrate the most important lessons I’ve learned over the past 90 days.
- 90 Days: This is just the tip of the ice-berg.
- Success and failure is not binary.
- Yes, my Handstand App was ambitious for a beginner.
- Partnering on projects with other people multiplies the complexity of getting things done.
- Coding work requires longer periods of un-distracted focus.
- Certain genres of music help immensely in getting into a good flow state.
- Shiny object syndrome for learning resources is totally normal, and happens to almost everyone.
- The best learning resources are structured resources that you can complete from start to finish.
- iOS development is hard. Both for beginners and experienced developers alike.
- Keeping a simple approach to learning is better.
- Allow for rest when needed.
- Life does, and certainly WILL get in the way. Expect that.
- Don’t hold your personal project too close to your heart.
- DO show the world what you’re working on.
- I spent over 100 hours just getting my audio online for this podcast.
- Bali is a tough place to find focus.
- I probably averaged just 4 hours of actual productivity per day. 7 days per week.
- I probably left about 50% of my potential on the table
- Pacing is important when it comes to learning iOS development (and software engineering in general).
- Learning ABOUT iOS development is almost just as important as LEARNING iOS development.
- Yes, being a purely native iOS developer is still a very much viable option.
- Building apps is NOT just about code.
- Developer machines do well to have a larger SSD. At least 512GB.
- How long does it take to learn this?
- It took me around 20 days to find my feet in iOS development.
- Learn from BOTH easy resources, AND hard resources. Progressively overload yourself.
- A podcast is a POWERFUL form of public accountability.
- Set goals and deadlines to stay on track.
- Jack’s final hack: Keep it fun! It’s a marathon so you should enjoy the journey!
Checking out... I will do more updates in the future, but it’s time for me to take a break from podcasting. Thanks for listening everyone, I hope you learned something new!
View Details
Discussion:
- Youtube is dangerous. If you can avoid touching it for learning, it’s better.
Progress Update:
- Did my breathwork practice. Inspiration and realisations ensued.
- Lecture 12 Stanford iOS (This one is a long one!)
- Working through the final lectures of Stanford iOS now, and will continue on with Hacking with Swift after this.
- I find myself procrastinating the Stanford lectures a bit because it’s hard for me right now.
Final life update:
- Rainy season has arrived in Bali.
- Working with Dylan on the breathwork app.
- Feeling about 80% burnt out.
- My next challenge is to recover my energy and vitality.
dev90x.com
View Details
Discussion:
- Unwrap is finished, now it’s time to finish off Stanford.
- Stanford is much harder, and still above my ability level.
- I learned a lot from Unwrap, and I feel like it was the perfect glossary of the language fundamentals.
- Setting my sights on 100 Days of SwiftUI
Progress Update:
- Finished Optionals on Unwrap, and finished Unwrap!
- Finished Lecture 11 of Stanford iOS.
- Running at probably 80% burnt-out. Excited to take some real down-time.
- Learning how important a larger SSD is for development.
- Turns out that having tough workouts every morning is eating away at my energy during the day a little.
- I feel like I just need to come home and powernap during the middle of the day.
dev90x.com
View Details
Discussion:
- A bundle size oriented approach to a content based app.
Progress Update:
- Finished Protocols in Unwrap - up to the last section on Optionals.
- Mapped out a data budget for the app binary - targeting a binary that is under 200mb with video and audio content.
- 200mb is a download threshold for allowing downloads over cellular
- It’s also a good idea to ship smaller apps for download UX
- Figured out that we can get 100 minutes of mp4 content to fit in around 50mb - which should take care of the “60 second explanations” within budget.
- Learned how Duolingo does their animations
- Checked out a bunch of the most popular cocopods packages
- Watching benchmark tests for the new M1 Pros and Max’s
- Checking out the open source Unwrap app source files to learn from the architecture. Protocol oriented programming.
- Checked out Dylan’s new villa - which will be the new office/work space.
- Chilled out and relaxed a bit with Dylan.
dev90x.com
View Details
Discussion:
- Going from easy materials to hard materials.
- Keeping things fun.
- In order to grow, you need to move out of your comfort zone.
- The way you do one thing, is the way you do many things.
- Realising it’s ok to need someone to push you a little.
Progress Update:
- Finished Classes in Unwrap. Onto Protocols.
- Adjusting to hard morning workouts.
dev90x.com
View Details
Discussion:
- Halloween was fun.
- Got stuck in a traffic jam for 40 minutes at 4am on my way home.
- You don’t need alcohol to party.
- Final week of the podcast.
Progress Update:
- Wrote a simple coding question to the Hacking with swift community, and after writing it out, immediately realised the answer. Lesson learned - ask dumb questions and you might just answer the question yourself.
- More lessons from Unwrap - it turns out that classes do in fact always need initialisers and memberwise initialisers are only available for structs.
- Still curious as to how this compares with Protocols.
dev90x.com
View Details
Discussion:
- Trying to organise fun weekend plans with groups of people, while simultaneously deep focusing on work, is almost impossible.
- I understand why entrepreneurs, executives, and engineers use nootropics to gain focus.
- I understand why people have to have huge noise cancelling headphones on.
- I understand why engineers hate meetings
- I understand why managers and engineers don’t get along
- Lesson? Don’t swim against the current.
Progress Update:
- Unwrap lessons - Structs - complete. 3 more sections to go.
- To do: finish reading Dylans breathwork book.
- Market research - new breathwork books, new science, new apps.
- Morning workout #6 - missing my morning routine again.
- Ecstatic dance was just what I needed last night.
- Did an evening relaxing breathwork sequence last night it was good. I fell asleep instantly after that.
dev90x.com
View Details
Discussion:
- Estimating the value of an idea.
Progress Update:
- Unwrap app lessons - Structs
- Planning out the project timeline
- Planning out team members
- Mapping burn rate
- Breathwork practice using different music
- Morning workout
- Market Research
- Sizing
- Conversion Rates
- User acquisition costs
- Initial user projections
- Company valuation
- Pre-market value
- Market size estimations
dev90x.com
View Details
Discussion:
- It’s essential to practice the things that you build an app for.
- It’s essential to be a user of your own app.
Progress Update:
- Fulfilled a promise to help a friend.
- Met up and spoke to Dylan
- Researched app name ideas
- Talking about audio recording setups
- Researching the most popular breathwork series from Alo moves
- Morning start is the most popular
- Did the morning start video on Alo and took away a few key lessons.
dev90x.com
View Details
Discussion:
- Becoming a morning workout person is a huge change for me.
- Get an early start on the day
- Actually have a good use for the coffee I am drinking.
- Boost my emotions and brain function.
- Maintain a more consistent training program.
Progress Update:
- Started reading my first programming book: Mastering Swift 5.3 - not the most current but it’s what I have for now.
- Finished section 6 in Unwrap: closures. I still don’t fully get why closures are such a big thing. I’m sure once I start using them in practice I will understand better.
- A bit of jamming in a swift playground.
- Started section 7 for structs. Still learning a little piece of the language with each lesson - this is paced really nicely and the perfect difficulty level for me, even though I thought it was beginner-ish.
- Started lecture 11 Stanford.
- Keen to get going on 100 days of SwiftUI but I want to focus and finish one thing at a time.
- Design Session with Dylan
- Pricing model - annual vs monthly
- Content duration.
- In app currency for unlocking pro content concept.
- Agreed on using data to make design decisions rather than opinion.
- Not aiming to be the best app - aiming to be the number 1 app. Working against perfectionism. Obviously we also want to be the best app.
- Designing a sense of progression through skill level.
- Designing programs.
dev90x.com
View Details
Discussion:
- This 90 days has been a bit of a rollercoaster ride.
- Pushing my own limits to stay consistent on something big.
- One month of strict keto - transformed my health.
- Getting sick.
- Getting burnt out after getting sick and not taking proper rest.
- Developing an intense crush on my friend and then being rejected (twice).
- Asking for help on the handstander project. Working with Harry.
- Pivoting the app project to a new app, and new partner. Working with Dylan.
- Buying an iPhone and switching over from Android.
- Learning Xcode.
- Learning Swift.
- Learning about iOS development in general.
- Building a demo app for handstander.
- Training an action detection model.
- Learning a lot about A.I and machine learning.
- Choosing between UIKit and SwiftUI.
- Beginning the journey of learning SwiftUI.
- On track to launch something big.
Progress Update:
- 7 Lessons from Unwrap
- Finished lecture 10 of Stanford
- Missed out of video 3/3 of the ios architect crash course because it was on a timer.
- Carved out some down time in the middle of the day for a nap to catch up on sleep.
- Did my breathwork.
- Did my morning workout (transitioning to morning workouts rather than afternoon).
- Did my 100 handstands.
dev90x.com
View Details
Discussion:
- In case you’re wondering, nope, I’m still not good again yet. A little better though.
Progress Update:
- Loader screen into
- Homing in on some good name ideas.
- Getting clearer on the core design and UX.
- Finished lecture 2 of iOS architect crash course.
dev90x.com
View Details
Discussion:
- I wanted this podcast to be an honest overview of my life.
- Suppressing my feelings for someone close to me as slowly eaten away at my energy, vitality, and ability to focus and be productive.
- Other important aspects of my life were sacrificed in order to maintain a disciplined approach to this new endeavour.
- Certain things can only be ignored for so long until you burst at the seams.
- Creating space for intimacy in my life.
- It seems like everyone I know is going through relationship turmoil right now, so it’s not just me.
- I’m going to refocus my life to address these neglected areas.
- I wonder if I’m doing this the hard way. I think of the scene from Castaway where Tom Hanks is trying to light a fire rubbing sticks together, and he just hurts himself because he’s trying too hard using the wrong technique.
Progress update:
- Decided on a high level direction for the app name - shying away from yogic traditions.
- Learned that the volume dimming of music is not a good user experience.
- Explaining breathwork concepts to people is a challenging endeavour.
- The design of this app is very important - so I’ve been thinking less about code and more about design.
dev90x.com
View Details
Discussion:
- Finding the perfect app that we are not competing with.
- Reading reviews
Progress Update:
- More lessons from Unwrap
- Practicing breathwork with different music
- Scanning the Google Play Store for breathwork apps
dev90x.com
View Details
Discussion:
- As it turns out, Dylan has a really good contact in Silicon Valley.
Progress Update:
- Doing my breathwork practice with a different playlist
- Testing the Wim Hof Method app
- More lessons from Unwrap
- 20 minutes code Jam in a playground
- Building some SwiftUI views
- Meeting with Dylan - talking about Design and a phone call to a girl in Silicon Valley, talking about building apps.
dev90x.com
View Details
Discussion:
- Realising that most new project concepts start on paper, and not in Xcode. The more you ideate, the less you code.
- Deciding on which project to pour my life-blood into.
- Strategising on a way to navigate the equity conversation now that a new opportunity is on my doorstep.
Progress Update:
- 4 more lessons from Unwrap.
- Back into the design phase. Initial design work on the Breathwork app.
- Lot’s of research into equity splitting, vesting schedules etc.
- Listening to really old podcast episodes from 2015
dev90x.com
View Details
Discussion
- New Macbook pros - I am unsure about the upgrade.
- New business opportunity - an app with Dylan Werner.
Progress Update:
- Watched lecture 1/3 of iOS architect crash course - pretty salesy
- 2 Lessons from Unwrap app
- 20 minutes code jam in a Playground
- Watched the Apple presentation.
- Started a new project in Coda for the breathwork app.
View Details
Life Update:
- Feeling under the weather again
- Fasting went well
- Breathwork was challenging again
Discussion:
- I anticipated this would happen... many hours being spent on things other than development.
- Harry has begun working on the screen designs.
Progress Update:
- 3 hour session with Harry
- Equity agreement
- Roles and responsibilities
- Marketing strategy
- Funding Strategies
- Screen designs
- Read a very comprehensive new article from Paul Hudson
- Decided to narrow my focus in the materials I am consuming to plow through things faster and get less distracted.
dev90x.com
View Details
Discussion:
- Drank alcohol and slept poorly
- Lacking motivation to really get things moving today
- Feeling a bit unfocused.
- Crushed my breathwork practice (again).
- Learned that it feels a lot better to get big things done rather than lots of little things.
Progress Update:
- A lot of random things.
- One Full module from the unwrap app
- New resources roundup
- Apple developer news website
- let’s build that app! blog has some really great explanation articles. Not tutorials per-se... more so explanations.
- Scanned the app store for developer news apps - found iDev but it is subscription only, no free version.
- One line of code in a playground
- Engaged in the Hacking with Swift Slack
- Planned my week ahead in detail
- Added Bucket list, and Ideal Habits, into my life planner document.
dev90x.com
View Details
Discussion:
- Morning routine:
- Wake up average around 6am, sometimes later, sometimes earlier.
- Make a warm beverage.
- Sip beverage while doing Indonesian study on Duolingo
- Bathroom
- Breathwork practice
- Second warm beverage
- iOS study time commences.
- Stanford iOS course lectures on YouTube
- Unwrap app mini lessons.
- Note taking
- Googling random questions that come to mind
- YouTubing random questions that come to mind
- Often getting sidetracked by the youtube algorithm, or a question chain that goes deeper.
- Around town - podcasts
- Under the radar is number 1 - listened to around 43 episodes - goal is to listen to all 200 or so. I like the 30 minute time cap format - the information is more condensed and succinct.
- Swift by Sundell or Stacktrace is number 2 - if I ever ran out of pre-downloaded episodes. (for some reason I cannot stream podcast episodes from my LTE connection here in Bali)
- My one line of code: Swift Playgrounds - testing language concepts, mostly concepts that come up from doing the unwrap lessons. So many little language quirks to test and understand.
- Work from home.
- Sessions with Harry
- Focus on design aspects and community engagement.
- I’ve got a book lined up on my phone for when I finish the Unwrap course
- My plan is to move into the 100 Days of Hacking with Swift course as a daily do-er.
Progress Update:
- Another 3 lessons in Unwrap.
dev90x.com
View Details
Discussion:
- When opportunity strikes...
Progress Update:
- 9 Lessons on Unwrap
- Looked for facebook groups specific to iOS engineers in Bali
- Worked with Satya for 2 hours. (Took 3 hours)
dev90x.com
View Details
Discussion:
- Engaging the community
- Asking users questions
- Responding to feedback
- Design Sprint with Harry
- Learning code
- 1 line of code
Progress Update:
- Posted in the facebook group for the first time
- Responded to some feedback on Instagram.
- Wrote a long life update email to my parents explaining my situation with the project.
- Some lessons of Unwrap
- Played in a playground a bit - 1 line of code, done.
- Downloaded an example project from Github for Giphy on iOS
- Engaged the Hacking with Swift Slack Community.
- Half of lecture 9 Stanford iOS
dev90x.com
View Details
Discussion:
- My current strategy is to learn by watching others implementing code, to expose myself to as much code as possible, in as many different contexts as possible.
- Having a strong understanding of code is a lot about recognising patterns and their contexts.
- You can only gain this by experiencing a lot of patterns and a lot of contexts.
Progress Update:
- Lecture 7 of Stanford iOS
- Lecture 8 of Stanford iOS
- Some Youtube tutorials
- Playing around with Enums in a Playground.
- Some lessons from the Unwrap app.
dev90x.com
View Details
Discussion:
- Demo app is written in UIKit
- SwiftUI is the long-term future.
Progress Update:
- Worked with Harry for 2 hours on the Design sprint in Miro.
- Created a new Git Branch for the logic implementation
Life Update:
- Helmet was stolen - got a new helmet
- Transitioning away from restaurants, preparing food at home - shopping
- Internet cut out in the middle of the day.
- Refuelled my scooter.
dev90x.com
View Details
Discussion:
- Breaking the impossible down into the possible.
Progress Update:
- 14 learn to code 2 challenges (Done!)
- Trying to implement firebase pods
- Ran into some roadblocks with pods and M1
- Finished watching Stanford Lecture 6
- Designed a little path to pro - programmer for myself
- 1 hour meeting with Harry going over the Miro board
dev90x.com
View Details
Discussion:
- I’m in the flow - didn’t even watch the last episode of Ted Lasso yet.
- Just keep on struggling through the confusion.
Progress Update:
- Did my one line of code!
- Watched a lot of video content. Youtube, Apple, Hacking with Swift.
- Learning how to calculate duration between two events.
- Learning how to implement Core Location
- Learned that it’s difficult to implement Core Location in a playground.
- Learned locations can be accurate to: metres, 10 metres, 100 metres, 3000 metres.
- That the GPS location can take some time to come back, so it might need to be run asynchronously.
- Realised I need a separate class to handle the handstand sessions, separate to the logic class that I’ve been working on.
Life update:
- Back into budgeting and tracking expenses.
dev90x.com
View Details
Discussion:
- Swift Playgrounds is the best place to test code.
- Writing simulation functions has helped improve my coding abilities.
Progress Update:
- Working on Handstand Logic V2 (got my one line of code in).
- Implementing a handstand timer using the timer function may not be the best way.
- Learning different ways of finding the duration between events.
- Need to learn how combine works.
- Need to learn a lot of things.
dev90x.com
View Details
Discussion:
- Getting back into the zone can be done with music. When music is playing, focus is happening. Just pick music without lyrics.
Progress Update:
- Last night: 4 challenges from Learn to Code 2.
- Built Handstand Logic V1.
- Handstand Logic V1 failed! Because... it does’t hold enough memory
- Handstand Logic V2 is now under construction.
- Handstand Leaderboard is live! Get the longest hold!
dev90x.com
View Details
Discussion:
- Spending time cleaning up and re-organising the project.
- Removing that which is not important makes space for that which is important.
- An organised project hub is one that gets used.
Progress Update:
- Last night: 1 coding challenge in Learn to code 2
- Loaded apps onto Harry’s phone that will not expire
- Tested the background segmentation app to see how it affects the vision model.
- Tinkered with the segmentation app to get my 1 line of code in.
- Wrote up a V1 summary of the various app screens
- Cleaned up project documents in coda
dev90x.com
View Details
Discussion:
- A simple 1% better at development. Learning Git.
- Spending considerable time back in the app feature design.
Project Updates:
- Trying to try a new iOS 15 app that does image segmentation requests using vision
- Finally set up github - using Github Desktop to manage the entire process.
- Looked into the Apple Developer Academy in Indonesia - potentially a place to hire from close to home.
- Updated phone to iOS 15.
- Updated to Xcode 13.
- Still have not done my 1 line of code today (yet).
Honesty Hour!
- Cheating too much on keto - it’s time to get back on the train!
- I’ve had one shot of coffee in the last 2 weeks. Going strong on tea only.
- Watching too much TV - Ted Lasso hooked me. After Ted Lasso I’m done with TV for a while.
dev90x.com
View Details
Discussion:
Progress Update:
- Worked with Satya on the Empowered Journal
- Buying new domain name
- Recreating google account
- Recreating instagram
- Redesigning the handstand survey
- One puzzle in learn to code 2
dev90x.com
View Details
Discussion:
- Writing code is a complex problem solving process that needs to be exercised as often as possible.
- I’m going to implement a new habit of writing or modifying at least 1 line of code every day.
- I expect this will not be as straightforward as it sounds.
- Will likely require reading a decent amount of code first as a pre-requisite to making any modifications.
Progress Update:
- Crafting the leaderboard in Coda
- Video editing workflow set up
- Re-organising the Handstander Project in Coda - ticking off all the old questions and tasks.
- Learn to Code 2 - completed 1 challenge.
- Tried to cheat at it, and by trying to cheat I learned a lot.
dev90x.com
View Details
Discussion:
- Trying to plan group events in a time when restriction rollouts are applying to unvaccinated people.
- Increased complexity to account for in what used to be ordinary tasks.
Progress Update:
- Working on the “how” of the handstand leaderboard product.
- Checking out handstand competitions on YouTube.
dev90x.com
View Details
Discussion:
- I couldn’t sleep last night.
- Cigarette smoke in my room
- Missed dinner and was hungry
- My snack gave me mild food poisoning, lol.
- Dopamine detox FTW!
- Supposed to have a dopamine detox day today, but the podcast...
- The podcast is a consistency challenge. Can I be consistent with something for 90 days straight?
- I was going to save mentioning this until the end, but... I don’t exactly recommend doing this.
- I would probably be watching Ted Lasso right now if it weren’t for the podcast though.
- Good news: Did yoga, breathwork and meditation this morning with my friend Ester, and I feel inspired to make this a habit again.
Progress Update:
- 7 coding challenges in Swift playgrounds
- Initialising objects
- Initialising objects with properties
- arguments and parameters
- using switch case correctly
- Made the Coda account for Handstander, and started the leaderboard page
- The new iPhones have better battery, which spells good news for apps like Handstander.
dev90x.com
View Details
Progress Update:
- Finally a proud member of the Apple Developer Program!
- New strategy:
- Validate app ideas manually before building them.
- Longest Handstand Leaderboard (Do people want to compete on a leaderboard?)
- Building and engaging our community
- Various different challenge modes can be manually validated via the community.
- New Ideas:
- Handstand Heat Map - a map grid which shows where handstands are happening around the world.
- Change the colour of grid squares by doing handstands.
- King of the grid game - plant your flag by doing the most handstands on that grid square. People can click the grid to go to your profile.
- Handstands near me - the app sends notifications to people in the nearby area for you to connect to/follow. Get followers by doing handstands.
dev90x.com
View Details
Discussion:
- Things are getting serious now. The ambition is high.
Progress Update:
- Serious day of work - 8am to 3pm non stop.
- Reaching out to a UX designer who worked on Fitness Ally
- Learning about monetization strategies
- Market sizing research
- Learning from Swing Vision
- Brainstorming
dev90x.com
View Details
Discussion:
- Running into friends while working from cafes.
Progress Update:
- Designing data structures
- Learning how to pull GPS coordinates into my code
- Learning how to implement a timer to keep track of handstand duration.
dev90x.com
View Details
Discussion:
- It’s funny how you can do something one time, then try to do it again and run into roadblocks the second time.
Progress Update:
- Plugged in Handstand Vision 2 into the Xcode project.
- Created a basic git system on my mac.
- Implemented my first working sound effect into the app. Unfortunately it creates a lag effect while the code tried to continue running synchronously.
- Need to find a way to run the sounds effect on a different thread?
- Implemented the basic logic structure in my code using switch statements and arrays of labels.
- Harry has his bunch of progress items as well
View Details
Discussion:
- So much ideation and brainstorming.
- Feature concepts.
- What’s important right now.
- Moving the project forward.
Progress Update:
- Worked with Harry for 5 hours
- Branding discussion
- Logo talk
- Roles and responsibilities
- Plan to discuss payment and equity split
dev90x.com
View Details
Discussion:
- Talking to Felix, an experienced ML programmer who has worked in robotics, I realised I am no longer a beginner when it comes to training AI models, and I am approaching expertise when it comes to training an action classifier for an iOS app.
Progress Update:
- Completed a data set for ideal handstand conditions of just over 20 videos. Tested the model in ideal scenarios, and it performs decently well on all of them. It’s probably time to build the logic layer now and implement that into the app for further testing.
- Developer program still pending.
- Learned that apps auto delete themselves from your phone after 7 days if you have not paid for the developer program.
dev90x.com
View Details
Discussion:
- The limitations of Apple Vision
- Strange scenes
- Occluded body parts
- Can’t find the face
- Thinks it’s a shadow
Progress Update:
- Handstand Vision V2 has been trained, and is an improvement on V1
- Better recognition of entries
- Better recognition of exits
- Less confused about other types of inversions
- Learned more of the limitations of Apple Vision
dev90x.com
View Details
Discussion:
- Having another person involved:
- Doubles the size of the accessible network
- Smooths out the workflow
- Holds more consistent momentum
- Brings in a division of labour
- Increases the team skill-pool
- Increases quality of brainstorming
- Enables reflective feedback
- It also complicates a few things:
- Division of value and equity
Progress Update:
- Purchased the Apple Developer program for $150AUD
- Downloaded more videos
- Edited a lot of videos
- Probably around 80 more clips
- Did some logic verification on some videos
- Created a list of ideal data requirements for my own reference to potentially teach others how to do this.
- Built out more folder structure for the data.
dev90x.com
View Details
Discussion:
- Portfolio project VS serious app project.
Progress Update:
- Downloaded more data
- Handstand walking
- Edge case data - scenes with mirror reflections.
- Sunset background, silhouette foreground.
- Scenes with crowds of people
- Designing the logic system
- 1D, 2D, 3D
- 1 second delay, 2 second delay, 3 second delay.
- More comparisons on video compression and vision quality.
- The drop-off point seems to be after 95% compressed. Marginal gains from 95-90% compression. Good performance on less than 90% compressed.
- Talking branding with Harry and Dylan
- Redesigning the folder structure for the training data
dev90x.com
View Details
Progress Update:
- 1 hour business call with Harry
- Discussed target market
- Discussed community targeting strategy
- Talked about the initial app features
- Identified some issues
- Talked about cheating and the impact of that on the game experience for others
- Mapped out some of the logic for the Handstand Judge
- Realised that every logic sequence should begin with “other” as the starting pose, and end with “other” as the final finishing pose.
- Downloaded more data from Instagram
- 40 more videos to edit and sort now
- Continued to build the model stress test dataset to see how it performs on the toughest edge cases.
- Did some trend analysis for handstands in google trends to find the most popular search term. (Which is Handstand (Yoga Pose))
- Organic Google search traffic is definitely not a viable marketing strategy
- Did a compression test to see how much compression reduced the accuracy of Apple’s Vision - surprising results.
- Tested out the competition properly - handstand quest app test.
- Realised there has never really been an easy way to track handstands until handstander.
dev90x.com
View Details
Discussion:
- Getting back into training the AI - takes some time to get back into the flow of it.
- Re-designing the training data set
- Creating a collection of edge test data - random and strange videos
- Do I put all things that are not handstands into the “other” pose - even headstands?
- Pole-dancing videos give really interesting 3D postures where the camera is static, and the person is moving around.
- Dancing videos give a great dynamic overview of movement patterns to test the model against.
Progress Update:
- 120 training cycles yielded 91/70.
- 240 training cycles yielded 92/73 (+1%, +3% accuracy)
dev90x.com
View Details
Discussion
- First time experimenting with a work trade
- The focus was mostly on Handstander
Progress Update
- Testing the app on an iPhone X for the first time.
- Running at a lower framerate but still seems to work at getting predictions.
- iPhone X is probably the lowest that can be supported
- Created an Instagram for Handstander
- New Community group chat for collecting data in Telegram
- Data collection strategy combined with alpha release strategy.
- Started work on branding and aesthetic design
dev90x.com
View Details
Discussion:
- Now that I have a much better codebase to work from, it is enabling me to iterate faster on the core design and features.
- The main priority is to improve the performance of the predictions so that it’s getting it correct every time.
Progress Update:
- Changed the confidence threshold for the pose predictions from 60% to 35% so now I can see the feedback of all the low confidence predictions as well.
- Realised if I am to design a prediction smoothing and logic system, I will need to continue to include many different pose classes to be trained into the model - which means maintaining correct volumes of training data for each class as opposed to throwing everything into an “Other” class and just keeping handstands as the primary.
- I will experiment with this now to see how it works.
dev90x.com
View Details
Discussion:
- Strategy: just take tutorials and customise them to my needs.
- Problem: Not a lot of tutorials available to suit my specific need.
- Problem: Most tutorials are for completely different apps.
- Problem: Most tutorials focus on learning UI and views - whereas my core app does not need this yet.
- Problem: Vision framework applications (from what I can see so far) use a lot of complex structures of the language.
- Strategy: take bits and pieces from example apps and open source apps and stitch them together.
- Problem: Requires understanding the code
- Which requires understanding pretty much the entire project.
- It takes a long time to read and understand another project for me.
- Strategy: Hire someone else to build the entire thing for me.
- Requires an iOS specialist - not a flutter developer. Not as common or easy to find.
- Requires a step back to project management and managing someone else doing the work.
- Requires capital - I could probably do it with under 5k, but that’s more than I can currently afford.
- Doesn’t result in as much learning for myself.
- Cannot be a portfolio piece to showcase my development ability.
- Strategy: build it all from scratch myself.
- Requires that I gain swift fluency as I will be implementing my own custom design.
- Most people take around 6 months to learn iOS app development from scratch. And this might even be a difficult project for someone who’s spent 6 months already.
- At this rate, I will run out of time.
- Strategy: hybrid approach.
- Learn swift
- Copy as much as I can from other projects
What is the minimum amount that I need to learn?
- Understand all the basics of Swift
- Understand object oriented programming
- How classes behave
- How structs behave
- Understand project architecture and design patterns
dev90x.com
View Details
Discussion:
- I think the project has to be a fuck yeah for you to be pumped up about the small wins, because the small wins can be monumentally difficult sometimes.
Progress update:
- Good feedback from my instagram posts - all positive so far.
- People are wowed by the vision skeletons - that seems to be the thing that attracts attention to the app
- Some people want me to build features to help with yoga
- I realised that the camera is a necessity - the user has to be able to see that they are in the scene, and being captured properly. I was thinking to remove the camera video feed view to save on battery, but I don’t think that will work.
- Anxious about my crappy code turning into a mess
Life update:
- Heading to the mountains for a day!
dev90x.com
View Details
Progress Update:
- Handstand Vision is plugged in!!
- The sample videos are on Instagram, and the first round of reactions are coming in.
- Learned the correct way to refactor class names. Refactor and rename is the way to go in Xcode.
Next Steps:
- Re-train the ML Model to include more, and better data.
- Implement a basic counting system.
- Implement audio feedback
- Get some beta testers
dev90x.com
View Details
Discussion:
- What does the new gear mean for me?
- Apple Watch integrations
- Wide angle front facing cameras on the iPad
Progress Update:
- Watched the Apple Event to check out the new tech
- Apple is pushing a lot of fitness applications to have Apple watch features.
- Cool to see they featured Swing Vision again in this.
- Hacking around the Action and Vision app
- Making my own comments where I might find useful snippets of code. I can come back to these later and use them as inspiration for my own code design.
- Re-watching the Apple video explanation of the code powering this app. Getting slightly more out of it the second time through.
- General research - google, stack overflow, and youtube.
- Found a new project called “Guess my exercise”!
dev90x.com
View Details
Progress Update:
- Created a copy of Yoga vision, now I can edit the files without worrying about breaking the build
- I didn’t know how to roll back the changes, so I just copied the entire project folder.
- Almost finished lecture 3 of Stanford
- 1 Hour treadmill walk. Watched a bunch of mini tutorials from a playlist on Paul Hudsons YouTube channel.
- Worked 4 hours for someone else, also on what may become an app, which is very useful for me.
Life Update:
- Failed at reducing caffeine with the matcha this morning.
- The pros and cons with working from cafes
dev90.com
View Details
Day 38.
Progress Update:
- Breaking the rules: learning from multiple courses/sources.
- Finished lecture 2 of the Stanford course - definitely useful bits and pieces
- There are 16 lectures in the series - each is about 90 minutes long
- Learned the MVC architecture is specific to UIKit/storyboard apps whereas MVVM architecture is for SwiftUI apps.
- Finished the Variables module in Learn to code 2 in Swift Playgrounds.
- There is a total of 45 small puzzles to solve in the whole sequence. They each probably take about 5-10 minutes on average.
- Downloaded an app called Handstand Quest that is most similar to my concept, but uses voice control for tracking - I will have a go at using this app and see what I can learn.
- Started defaulting to the “Unwrap” app on my phone for learning
- Thinking about doing Paul’s course 100 days of swift because I like his teaching style.
Life Update:
- Caffeine withdrawals have landed! Woke up with a headache in the back of my head.
- Rainy season has landed!
- Still reading Harry Potter in Bahasa - now up to 58% through the book.
- Cut back significantly on Duolingo - just one lesson per day to maintain my streak.
dev90x.com
View Details
Day 37.
-
You don't need bugs to use the debugger!
-
Working with YogaVision again.
-
Fixed issues with problems building the app on my device.
-
Working on relaxing more.
-
Working on drinking less coffee.
dev90x.com
View Details
Day 36.
-
Finally writing my own code. Feels good!
-
I wrote an app using SwiftUI, with a single button, that plays a sound when you press it.
dev90x.com
View Details
Day 35.
A pretty short day as life sometimes gets in the way.
-Finished Learn to Code 1 in Swift Playgrounds!
-Started a Youtube video series by Sean Allen about iOS coding interview questions, which turned out to be really insightful information!
-Worked out in the morning.
-Helped a friend with a photoshoot.
-Helped another friend move her stuff out from the room I'm living in.
dev90x.com
View Details
Day 34.
-Bigger time blocks equal better learning outcomes.
-Learned a lot of syntax.
-Grasping Object Oriented concepts better.
-Learning about inheritance, classes, sub classes, super classes etc.
-Learning about override.
...and more!
dev90x.com
View Details
Day 33.
-Realised what I've been doing wrong.
-Started reading code again.
-Studied documentation.
-Lots of Google searches.
-Back in the gym with my personal trainer.
dev90x.com
View Details
Day 32.
Not a huge amount happened as I gave my main work block away to someone else.
- Lecture 2 of Stanford iOS course
-3 more modules of Learn to code 1 from Swift playgrounds.
dev90x.com
View Details
Day 31.
-The lead on a coder with Abdullah is proving to show more signs of scamminess
-Requested that I pay in Crypto.
-Github has zero activity on it.
-Linked me to his profile just by plain text username - so I had to go searching myself.
-Started reading the Swift Documentation on Swift.org - created a shortcut on my iphone using Safari.
-Downloaded Swift Playgrounds on the Mac
-Doing Learn to Code 1
-Read a bit more code from Action and Vision
Dev90x.com
View Details
Day 30. 33% through the timeline.
-
Quick summary of how far I've come in 30 days.
-
Working on finding someone to help me build my app using Fiverr.
-
Discussion about the usefulness of learning through audio material. (Podcasts and Audiobooks)
-
And my hack!
Thanks for listening everyone!
dev90x.com
View Details
Day 29.
-So how long does it take to learn iOS development anyway? I answer this.
-Looking to get help on my project now from more experienced developers.
-Writing up a quote sheet and seeking to get quotes from Fiverr.
Thanks for listening everyone! Check out dev90x.com for a link to a telegram chat.
View Details
Day 28.
-Tried to write my own code and failed (I don't understand classes).
-Did a Raywenderlich tutorial
-Upgraded my learning resources (found more podcasts)
-Did a Youtube tutorial.
-Enjoyed my new Airpods Pro
That's it for today folks! If you'd like to DM me check out dev90x.com.
View Details
Day 27... the theme of today is the value of focus and discipline in the context of getting results with development.
Check out dev90x.com if you'd like to DM me.
View Details
Day 26 and things are getting good again. I've got a great hack for you today, and an exciting bit of progress!
Also:
-Skin reaction did happen but only 5% of what I was expecting.
-New learnings about the iPhone and ecosystem.
-Comparing the Apple App Store and Google Play Stores.
Thanks for listening everyone!
You can contact me via dev90x.com.
View Details
Day 25.
-Still recovering energy.
-Still no negative skin reaction from my big cheat!
-Still setting up my new phone.
-I did the math on how much time I save in a year from the speed boost of my phone.
-Playing with Details Pro - a no-code SwiftUI interface builder as a way of building UI and also learning SwiftUI.
Check out dev90x.com for a secret telegram group!
View Details
Day 24 has come and gone, and I honestly feel like I suck at this. Almost no progress today, but a lot of running commentary regardless.
Check out dev90x.com to join into a special, exclusive telegram group for beginner developers.
View Details
Day 23, done. Sunday, done. Holiday down in Uluwatu, done.
A lot has been done indeed.
-Talking about things I'm learning about the new iPhone
-Keto cheat experiment (expecting my skin to break out again).
-Learning how to debug in Xcode for the first time.
Check out dev90x.com for an access portal to the world's only dev90x exclusive telegram chat group!
View Details
Day 22!
It's Saturday now, and I'm feeling much better! Excited to take the weekend to get back down to Uluwatu to help my friend celebrate another year around the sun!
-Switching over to iPhone after being on Android for 5+ years.
-Got YogaVision loaded up (but it's crashing)
-Loads of questions to think about!
Check out dev90x.com for the show Telegram chat!
View Details
Day 21 and the highlight of my day is a new addition to my family. A shiny new iPhone 12 that will be my closest digital companion AND dev tool for the next 3-4 years.
For me this is a substantial 3 year upgrade from an old Galaxy S9, which was a very capable device, except running out of battery health, and juggling data with only 64GB of space was admittedly, getting tiring.
So now, the iPhone app development will be happening on... an iPhone. Such a good fit!
Check out dev90x.com for a link to a telegram group chat!
View Details
Day 20. It has come to my attention that an iPad is not an ideal developer tool for building iPhone apps. Mainly because of the UI differences between the two.
-Learned more about Swift
-Found a better boiler plate app for use as a basic prototyping app
-I think I need to get myself an iPhone
Check out dev90x.com for the show telegram group.
View Details
Day 19.
I'm not that sick anymore! Whatever it was wasn't that bad in the end. Still cough, but good cough.
-Starting on my Udemy course
-Finding great tutorials on the web
-Codingwithchris on YouTube
-Raywenderlich.com
-Trialed passive media in the background (running YouTube tutorials off to the side).
Check out dev90x.com for the Telegram group chat.
View Details
Day 18, and I am feeling a lot better. I was knocked down and in bed for most of the day yesterday, with a significant drop in motivation and energy it was very difficult to do any meaningful work.
BUT I'M BACK BABY! Sort of. I feel much better today.
Head to dev90x.com for no reason in particular.
View Details
Day 17 has come and gone all too quickly, and I am feeling properly sick today.
Normally I would write the sick days off and just relax doing leisurely bed time activities, but not this time! Time waits for no-one!
Check out dev90x.com for the show chat group.
View Details
Day 16 and this is the first episode that has really challenged me (to script and record). Every condition was sub-optimal.
-Partied till early hours of the morning. Check.
-It's Sunday and my "day off". Check.
-Hanging out with my friends and need to break away to record podcast. Check.
-Also feel sickness befalling my throat. Check.
-Feel like my voice has been destroyed. Check.
-No quiet place to record. Check.
Anyways, I managed in the end. Thanks for listening everyone. :)
Dev90x.com
View Details
Day 15 has come and gone!
I've somehow dodged the bullet of falling into tutorial hell, and I've found the only tutorial I need to do!
-Discovered more resources
-Built my first app on my own device (iPad)
Check out dev90x.com for access to the telegram group!
View Details
Day 14 felt like I am at the bottom of the mountain again as I begin learning a totally new set of skills (again).
Check out dex90x.com to join the show chat.
View Details
Day 13 is over, and it is time for me to move again.
Building and training the model using data from Instagram was fun, but now it's time to get this model into an iPhone app.
This is another huge learning curve for me, and it's best if I just throw myself into the thick of it.
Check out dev.90x.com for the show chat group.
View Details
Day 12, and I've expanded my number of video clips from 60 to 188! Still only about 50% of what I need.
Check out dex90x.com to join the Telegram community.
View Details
Day 11...
I had a huge day yesterday running an errand to collect a package from Denpasar, so I did not get as much done as I wished. I did however have an incredible workout with a personal trainer, who absolutely kicked my ass!
Also Instagram disabled my account again, and I think I have a solution to this problem.
Check out dev90x.com to join the telegram chat.
View Details
Day 10! We are into the second digits and past the 10% mark of the challenge now.
Things are going well for the moment, but it is a teensy bit of a grind with collecting and editing data.
PS: I forgot to mention that I'm editing the clips using Quicktime!
Check out dev90x.com to join the show chat (in Telegram) and chat to me!
View Details
Day 9 and the time is flying! The data grind has begun, and I am now in a fairly repetitive process of fetching data from Instagram, organising it, editing it, and preparing it to be fed into CreateML to train the classifier.
Check out dev90x.com to join the chat!
View Details
It is day 8, and a bit of a late upload for me as I have taken a full day off to go and visit a waterfall with some friends.
Reflecting on this, I've realised that some problems can be easily solved simply with some time completely away from the keyboard. AFK works wonders!
Check out dev90x.com to join the telegram chat!
View Details
Who has the best machine learning platform... Google, Amazon, or Apple? In this episode I talk about the challenges to designing a machine learning solution, from data to platforms, to training, to model types.
Check out dev90x.com to join the show chat.
View Details
Day 6 is done, and I've been procrastinating!
In this episode I talk about why Instagram blocked me, and how I've been gathering data to train my machine learning model.
Check out dev90x.com to join the show chat.
View Details
Day 5, and I've stopped writing code in order to get back on the research bandwagon! My next task is to build a classifier that takes in the arrays of keypoint data, and understands what they mean in terms of a posture.
Head to dev90x.com to join the telegram chat!
View Details
One project reset, and a rethink about what I was doing wrong, and I now have the demo working, delivering pose estimations to my console.
Check out dev90x.com to join the telegram chat.
View Details
Hey everyone! It was a short time between recordings, so in this episode I'm talking less about my app development, and more about my learning resources and overall strategy to optimise my learning speed.
Head to dev90x.com to connect into the Telegram group and join the chat!
View Details
It's Sunday, and I took it easy today. I recorded this late in the afternoon.
Day 2 was riddled with frustration as I wrestled with why "import coolFunction from coolPackage" doesn't work in the browser.
In this episode I talk about the dot-point-learnings I had from the previous day, and the major theme of my learning arc right now - node packages.
Head to dev90x.com to join in the chat and to send me a message personally/ask questions.
View Details
Hey everyone, in this episode, I talk about:
- How my research progressed with the A.I part of the application, and how that was the main driver for the decision making process for the tech stack.
- Learning how to get a working demo going.
- What I'm stuck on, and how I just made a mini-breakthrough!
Join the chat in Telegram now by heading to dev90x.com!
View Details
It's day 0 (but actually I'm recording this on day 1).
I've decided to record these episodes each morning, reflecting on the day just gone.
In this episode I talk about what I've got set up already, the process I went through to get to here, and what my current challenges are.
Head to dev90x.com to get into the Telegram group! (free for the first 100 people).
View Details
Hey everyone! It's day 0 and in this episode I'm talking about my app idea: Handstander.
This gives context and scope to what I'm trying to achieve in 90 days, so definitely give it a listen!
Head to dev90x.com to join in the chat!
View Details
It's day 0, and in this episode I'm establishing the scene. Where I'm at financially, where I'm living (Bali), how much time I'm dedicating to the challenge, and how much I already know about development.
Thanks for listening!
To join the chat, head to dev90x.com.
View Details
Welcome to Dev90X.
My name is Jack Cotton-Brown, and this podcast is a 90 day development challenge.
Not only do I need to learn how to code, but I also plan to build an app in the coming 90 days.
Join me on my journey for the next 90 days.
I will share everything I learn, mistakes, successes, good resources, bad resources... the lot!
Check out dev90x.com to join in the Telegram group chat for this podcast.
Thanks for listening, and enjoy the podcast!