DEV Community

Cover image for How to learn iOS Development with a full-time job and no technical background
Aleksandr Morozov
Aleksandr Morozov

Posted on • Originally published at morozovdev.hashnode.dev on

How to learn iOS Development with a full-time job and no technical background

First of all, it's going to be a hell of a long trip! If you are a project manager or medical doctor like myself, you will have to completely rebuild your way of thinking, habits, dedicate 6/7 evenings a week to learning coding. Therefore, collect all your motivation & snacks and lets' go!

1. Create a Twitter profile

Yes, I'm dead serious. The first thing you need to do to successfully start learning any programming language is to tell your future colleagues that you exist. Twitter has a great tech community with a huge number of outstanding developers. They are people just like you and are always willing to help in word and deed if you ask them correctly.

2. Find friends in iOS Community

Be polite, participate in discussions, make fun of coding memes or make jokes yourself. In general, be yourself, but the version of yourself that someone wants to be friends with. My path would have turned out very differently and this article would probably never have happened without constant support of my Twitter friends. And especially my close friend Vishal Malvi.

3. Learn in public

Make it a daily habit to tweet about your learning journey. Just share what you learned today and how you feel about it. Don't think it's useless. First, it disciplines you. Secondly, it testifies to your perseverance for the future employers. Thirdly, it is very motivating for other beginners.

4. Learn basics

You can start by familiarizing yourself with the development environment with Complete iOS App Development Bootcamp by Dr. Angela Yu. Than learn every section of Swift syntax. Don't read it, learn it. Which means understand and write every line of code with your own hands. You can do it several times. I studied each theory topic in two sources in parallel: Tutorialspoint & Hacking with Swift, Days 1-12: Introduction to Swift by Paul Hudson. I also studied some topics with the help of excellent YouTube tutorials from CodeWithChris.

5. Learn your tools

Learn every object and feature in Xcode with random tutorials (AR, Mapkit, CoreData etc.) just once or twice, to know how to use it and how to search info about it properly. You can see the full list of topics I went over in my Learning repository on GitHub. And yes, its UIKit mostly. You can choose SwiftUI, the choice is yours.

6. Make something on your own

It's time to leave the harbor and set sail on your own. But no one says you have to build your first boat yourself! Take a cute thing you personally like, lets say weather app or calculator, and make it better, rebuild it, customise it day by day.

7. Read Computer Science Books

You can be an excellent engineer without a CS degree, but not without knowledge of Computer Science. Read books about how computers work, about algorithms & networks, anything you can find. You can start with "Computer Science Distilled" by Wladston Ferreira Filho and Grokking Algorithms by Aditya Bhargava. When you can't read, like while driving, listen to podcasts and YouTube videos. Surround yourself with information about what you plan to do in the future.

8. I am a beginner, just like you

Only now, after a year of daily study at night after full-time job requiring maximum concentration, I feel like I can just google and implement almost anything. And if not, Im asking my friends for advice (see point 2).

9. It was me

We are all equal in our diversity. Try different ways to learn for your self. Maybe it will be LeetCode, maybe something absolutely crazy for me, but perfect for you.

10. Youre good enough!

Youre definitely smart and motivated enough, if youre reading this lines! Just give yourself some time to build that coding muscular system in your brain and very soon youll find your self comfortable and enjoying the process!

Now go go go, dont waste your time on doubts and learn to code! 🤓👍

Best of luck,

Aleks

@morozov_dev

Top comments (0)