Hi! My name is Mike, and I’m 29 years old. 2 months ago, I became an iOS app developer. Today I decided to write about my experience of learning Objective-C by myself in 5 months without courses and mentors absolutely free using online materials. The text will be interesting for beginner developers or for those whose future is still vague.

Searching for information for those who have chosen a developer’s path, have passed and are passing by their own hands, and you always work on the verge of not knowing the necessary information. My path from zero to a €600 job and my first working days in a company from Luxembourg are quite capable of anyone. The company has monopolized IPTV services and the Internet in my country, and I am part of a team of 10 people (4 of which – developers Objective-C/Swift) for a month and a half writing and managing the code applications for IPTV services and free ads for iOS platform.

Why IT and choice of direction

I started to look in the direction of development during the second serious down streak in poker, where in 2 years I went from getting acquainted with the rules to successful professional playing online in tournaments at low limits ($5-30) Pokerstars, traveling to Dubai, Berlin and a few months of life in Barcelona and Goa. Looking for an activity in which experience and knowledge will increase day by day and generate predictable income, rather than depending on a particular handout on the final table. I’ve known the computer since I was five, programming was fun. However, programming was not attractive at all. For a long time, I was looking for myself.

So, why programming? A pragmatic approach: the opportunity to work outside your country, remotely; a decent level of salary, which grows with personal development and in the industry in particular; the pleasure of big and small successes.

Further, why iOS? The acquaintance with Apple devices began in 2009 with a flat iPod with an iron body, large screen and cool software. Then there was the 27-inch iMac, which impressed with picture quality and screen resolution that made it stand out from the crowd. In general, I liked the way the manufacturer shaped and shaped his ideas, and the way they interacted with each other.

Where to start learning

Development for the apple is done in Objective-C and Swift (there are other non-native languages). I studied a lot of opinions about choosing a language as a first step, tried Try Objective-C by CodeSchool, liked the approach of the development environment to method naming, variable naming, – as if you were writing a letter. As a poet and a regular customer of paper writing service, I appreciated the syntax of the language and found it attractive to learn. If I chose it now, I would start with Swift (the direction is developing very quickly), but many applications written in Objective-C also need to be supported.

As an exact plan to learn from scratch, I chose the free full-fledged (and slightly outdated) resource of iOS Development Course, where Alexey Skutarenko, in the form of volunteer work and a huge plus for his own resume and employment with the best companies in Silicon Valley, wrote down two courses on programming for Objective-C and Swift. The main highlight of this resource is not the level of submission and depth of material submitted in a convenient form of theory/practice from an experienced specialist, but a constantly growing community with the discussion of homework, problems faced by students. During the recording, the group’s video audience was <1’000 users at the end of 2017 – beginning of 2018, and now it is > 13’000. The library of materials has grown and covers many related topics in development for iOS and new trends, new video courses from other professionals are appearing.

For comfortable learning and parsing of any topic, it is necessary to use at least 3 sources, so after mastering the mentioned course, the next one was already from Udemy – iOS 9 & Objective-C – Make 20 Applications (repeating what was studied). At the same time, I regularly studied English training videos on topics that are already outdated in the course of Alexey Skutarenko with the release of software updates. I managed to start studying Swift from iOS Development Course, but Swift development is going on rapidly and I stopped studying in order to focus all my efforts on preparing for interviews, solving test tasks and employment.