Learn to develop Android and iOS applications and Web Development within six weeks from a teacher with real-world experience. Get a 75% discount if you buy it here!

I'm taking Rob's course with absolutely no prior experience. A good week later it feels like I know HTML and CSS like the back of my hand." — Jonathan M.
Who knew that learning how to start coding was this simple. The course is clear, concise, and loaded with extras!! Thanks a ton! — Raheim Smith
Even when the course gets a bit complicated, there's always the Discussion forum where Rob as well as other students are actively helping each other. This course is not to be missed. — Ingrid S.
Rob is an excellent teacher and uses simple terms of speech all throughout the course. — Ankit Rawat
I have been very impressed with the course material and the crystal clear explanation of concepts. Any beginner who opts for this course will feel enriched at the time of course completion. — Shiva Rajagopal
I'm a Copywriter in a Digital Agency, I was searching for courses that'll help me broaden my skill set. Before signing up for Rob's course I tried many web development courses, but no course comes close to this course. — Shivram
Easy to pick up & quick to get running with, the course has given me a great start into programming. — Peter Greaves

Prime numbers and playgrounds

As coding gets more involved it is very important to get into good practice which will save you a lot of time from finding out what went wrong. I myself spent many hours going through code line by line with some basic school boy errors. In my last blog I wrote about how Swift as a forgiving language. This week I found there were a few things it was not so forgiving about.

In the third app Is it Prime a lot of the back end code is done in Playgrounds and most of my frustrations were from there.

Statement cannot begin with a closure expression

Statement cannot begin with a closure expression

“Statement cannot begin with a closure expression”. What?! When I get a problem I do what most people do. I use Google! But putting this error message into Google wasn’t too helpful, there were many results but nothing very helpful.

The cause? It’s to do with the operand. In C, PHP and Javascript it is perfectly fine to do something like “if number !=2 …” but Swift doesn’t like this! There needs to be a space between a number and the operand for very good reasons I’m sure which I will find out later on. So just not putting in the space was stopping my app from comping and altering to “if number != 2 …” ensured I could continue.

The second most frustrating problem I had was “Prefix/postfix ‘=’ is reserved”, again I thought I could Google the answer, again Google came up short but this problem was quicker to fix.

prefix postfix error

In most programming languages such condition would be valid but in Swift having an exclamation mark at the end of a variable name means you want to unwrap it (telling Xcode the variable definitely has a valid value). So while I had “if number!=2 &&…” it should have been “if number !=2 &&…” all from missing a space! Such simple mistakes which causes such long delays.

In Rob’s iOS and Swift video tutorials he encourages you to pause the video, have a go and come back to see how his solution. So although he may take 7 or 8 minutes in a video lecture and you maybe spending an hour or 2. I can assure you that this is not out of the ordinary. And it is part if the learning process. And remember, if you get stuck the forums are available!

Keep coding! – Tak.

Learning iOS8 and Swift

My name is Tak and I’m involved with the sales and marketing aspects of Rob’s courses. And since it is my job to promote his video learning courses I thought it’s a good idea to get to know the products. Like you probably know Rob offers video tutorial courses on subjects like HTML, Javascript, PHP, Bootstrap as well as online learning for developing on iOS and the new Apple Watch using Swift.

I thought it would be a good idea to start with his online course developing apps for iOS and Swift. And for those who don’t know, iOS is what the iPhone runs on.

It’s been over a decade since I can say I’ve been involved in any type of programming of any type. This was using the C programming language and since then, a host new programming languages have become mainstream including PHP, Ruby and C# to name a few.

So yes I know programming concepts like variable types, conditions and loops but I still had to start from the very beginning to understand the features of Xcode, the toolset to do the Swift development.

Old habits die hard

I found myself doing things like putting a semicolon after each statement and putting brackets around simple if conditions. Luckily, Swift is very forgiving because although this practice is not wrong, it isn’t necessary.

How many fingers?

There are two relatively simple apps you develop initially. One is called Cat Years which allows the user to enter a number into the app which is multiplied by 7 and the second is a simple game where the app generates a random number up to 5 and you enter a number to guess that number and the app tells you if you have guessed the correct number or not.

So app development comes relatively early in the course after getting the hang of some basic concepts.

Errors.. Errors.. Errors..

Most of the errors I came across were a result of my lack of exposure to any programming language for such a long time. Luckily Xcode is really good at picking these up even before you try to run it. For example, if you are trying to use a variable which hasn’t been declared because you’ve either made a typo or forgot to declare it. Xcode will give you a friendly message ‘use of unresolved identifier’ and highlight it.

Error if you have not declared a variable.

Error if you have not declared a variable.

Other errors I made were syntactical in nature, using the [ bracket instead of ( and vice versa. Most of these could be solved on my own by taking time to analyse what I did or comparing it to Rob’s solutions in his video tutorials.

However, one error which I really struggled with was when my app would not compile and run. It would exit with:

libc++abi.dylib: terminating with uncaught exception of type NSException

What did this mean?! I did have a suspicion. In my Storyboard I had ctrl, left clicked and dragged a label onto my ViewController to create variable but misspelt it. So I deleted the code from the ViewController and did it again. Then I changed my mind about the name and deleted it again. I suspected that there was some connection from the label to the variable I wanted to use. Re-creating my app from start again would probably of solved this but that was not an ideal solution.


Swift outlet error

So a lot of time was spent pondering how I would solve this. Luckily I have access to the creator for the online video course for iOS and Swift development. You can delete the referenced outlet and to do this all you do is, right click the object on the storyboard, in this case a label and a menu appears where you can delete the unwanted outlet.

On the picture on the right you can see that there are four referenced outlets. I just deleted the three where I had also deleted the variables in the ViewController. Happy days!

Don’t forget! Problems like this can be posted on the forums.

Onwards and upwards!

I’ve barely scratched the surface of what is offered on this involving course. There’s a cliche ‘learn by doing’ and with this programming video training course on iOS Swift video, it’s definitely the case. And I will be blogging my experience and progress with this course in the next few weeks.

Paninis & PHP: Three Challenges I Faced In My First Dev Project

I’ve tried to fight it over the years, but there’s no use in denying it anymore. My name’s Andy and I am a web geek.

Since February this year, I’ve worked with Rob at Eco Web Hosting to help him find more time to work with on his Udemy courses. If you’re an Eco Web Hosting customer, you may have seen my name before.

If not, hello!

I didn’t come to The Complete Web Developer Course as a complete beginner to web development.

I’d made a few static HTML sites in my late teens and spent the last couple of years working in the hosting industry, though until now, my focus had been mostly on supporting and maintaining the platforms, rather than development on them.

My last job meant I needed to know how to read PHP to an extent, but that extent was the writing of <?php phpinfo(); ?> (this creates a diagnostic PHP page that lets you check various limits and settings in PHP).

I’d never developed a project of my own in PHP though.

Rob had always managed Eco Web Hosting through the customer control panel and directly in the back end database, but there’s only so long a business can grow without an admin system to manage all the data.

It was time for a CRM. Here’s what I’ve learnt from my challenges so far.

Continue Reading

May Update

I’ve been getting a lot of questions about updates, new courses etc. recently so I’ve decided to implement a monthly update to let you guys know what’s been happening with the courses. This month has been pretty busy, so it’s a long one!

​New Courses

​I have broken ground on my Complete Android M Developer Course, and will be offering early access shortly after Google IO, when hopefully we’ll find out what Android M will be called!

I’ve started working with a number of top notch instructors on a range of new courses which should reach you guys in a few months. More details will be posted on my blog.

Course Updates

​I’ve been updating all three major courses in the last month. Most updates are a response to student requests here – check the Done tab to see what has been fixed, and post any other issues you find in the other tabs to get them fixed.

  • The Complete iOS Developer Course – re-recorded section 7 and half of section 8. Also added ​quizzes​ to most sections.
  • The Complete Apple Watch Developer Course – various editing tweaks and quiz fixes.
  • The Complete Web Developer Course – updated some missing content, small changes to Twitter API section.
This month, as well as continuing with fixes, I will be adding quizzes to the web developer course and completing the re-recording of section 8.

​Bundle Deals

I am now able to offer bundle deals on multiple courses, so look out for the first of these coming later this month.

​What else would you like to know?

​If there is anything else in particular you’d like me to keep you updated about, just post it in the comments below.

Happy coding!

App Masters Podcast Episode

This week I was interviewed on the App Masters podcast – I really enjoyed speaking with Steve, and you can hear the whole episode below: