People will have varying degrees of experience with Ionic and/or Angular when completing this course. It is designed both to be a complete introduction for beginners, and also as a way to solidify knowledge and level up for more intermediate developers. Whatever your skill level is, it should not matter too much. All of the lessons in this course are thoroughly explained and make no assumption of previous experience with Ionic or Angular. As long as you meet the prerequisites discussed in the last lesson, you should be able to work your way through this course at your own pace.
Course Structure
This course is made up of many separate modules, each comprised of multiple lessons. To some degree, each module builds upon the last and increases in difficulty, so I would generally recommend that you complete the modules in order. However, especially if you already have some experience with particular topics, you can skip to whichever modules you are most interested in. Although the modules do build upon each other, they can also be generally consumed as a standalone piece of content.
Different types of modules are interweaved with each other, but in general, each module will be one of these types:
- Introductory / Setup / Configuration
- Theory / Concepts
- Application walkthrough / practical code-a-long
Avoid Copying & Pasting
Ultimately, it is up to you to decide how you learn best. However, one piece of advice I have enjoyed following is to always manually type out examples when learning something. When I just copy and paste examples instead of typing them out myself, I find that when the time comes to write my own code I always end up having to go back to an example, again and again, to see what to do.
By typing out the examples yourself you will start getting that muscle memory trained up, and by more actively engaging with the exercise you will likely be able to commit the concepts, syntax, and keywords more effectively to memory. I see it as kind of like writing out a cheat sheet for an exam (for those of you who have sat exams where you are allowed to bring in a sheet of paper with whatever you like on it): often if you write out the cheat sheet manually, you barely even need to look at it in the exam because it’s all stored in your head.
It is much slower and much more tedious, but you will likely get more out of this course if you do it that way. You will likely mistype some things, use the wrong syntax, and run into errors but this is a good thing. I also find that there is no better way to enforce some concept in your head than by running into an error and then figuring out where things went wrong.
Conventions
Here are a few things to keep in mind when consuming the content for this course.
Screenshots
Many screenshots are used throughout this course to give you a quick look at the general appearance of the applications we are building or of various tools/services we might be using. Please keep in mind that there may be some differences between what you see in the screenshot and what you see on your own machine - small things will often change and I generally won’t update the images in this course each time they do.
Quizzes
At the end of many lessons you will come across multiple-choice quizzes that look like this:
The primary role of pineapple is to be...
Correct!
This is not the most optimal use of pineapple
These serve to recap important points that were just covered in the lesson.
Spoilers
In some cases, I might want to give you the opportunity to consider a code solution for yourself before showing you the answer. In that case, you might see a spoiler section like this:
Click here to reveal solution
Solution
This just makes sure that the solution to the problem is off-screen. Wherever these are used, you can choose whether you want to have a go at the problem yourself or just jump to the solution. Even if you feel like you are going to get the solution wrong, I would highly encourage that you give these a go whenever possible. Getting the solution wrong and then correcting it will likely help you learn more than just going straight to the solution.
Layout
The layout used in this course doesn’t require much explaining, however, you should look out for:
Blocks of text that look like this
As they are actions you have to perform. For example, these blocks of text might tell you to create a file or make some code change. You will mostly find these in the application walkthroughs. This syntax is useful because it helps distinguish between code changes I want you to make to your application and just blocks of code that I am showing for demonstration purposes.
NOTE: You will also come across blocks of text like this. These will contain little bits of information that are related to what you are currently doing.
IMPORTANT: You will also see a few of these. These are important “gotchas” you should pay careful attention to.
Updates & Errata
Both Ionic and Angular are constantly being developed, so some changes to what you see in this course are inevitable. Most of what you read in this course won’t change as both of these frameworks are highly matured, but there are still minor changes from time to time. I will generally update this course for each major version release of Ionic if required, as major version releases are generally when breaking changes are introduced.
I will do my best to keep this course updated, but there is a lot of content here. If you spot an error or something that needs to be updated, please feel free to email me.
Disclaimer
Please keep in mind that this course is purely for educational purposes. You are welcome to use examples from this course for your own real-world applications if you wish, but no guarantees are given for the code that is supplied. You should always do your own research as to whether solutions are suitable for your particular circumstances.
Let’s get started!
With all of that out of the way, let’s get started. Just continue on to the next module!