Earlier this week I prepared some learning goals for my coming two weeks, and now that the first week soon will turn to past, I feel it is time to reflect on how well I am doing so far.
My learning process is quite simple, I use what I have been taught and what I have learnt about similar technologies to my specializations. This enables me to have theoretic knowledge on what I should strive to learn, to be able to complete certain development tasks and prospects. This has a monumental impact on my learning process, as I am able to much easilier filter through tons of material that would be a waste of my time.
I am currently keeping my learning cyclus in intervals of 2 weeks, this allows me enough time to learn, reflect, complete small tasks and thus I learn in small spurts. The best benefit in my opinion is that I do not get caught trying to solve a potential world problem, instead I keep to what I know works.
I split my learning goals into three, the first part is the overall shared goal for the coming 2 weeks. For this past week and the coming next week, the shared goals were quite simple:
- Achieve basic knowledge and understanding of Dart and PHP
- Achieve basic skills in Laravel & Composer, Flutter & Dart.
The shared goals are not meant to be precise nor measurable. That is where the other two parts of my learning goals point at. The other two parts are respectively activities and fulfillment criteria. This enables me to look back at my devised plan and focus on the centric activities.
I will not go into too much detail on both Laravel and Flutter, but I did split up the last two parts so that I was sure I had measurable fulfillment criteria at the end of the 2 weeks. For both of the respective activities for this cycle was something along the lines of find sources and document learning of Flutter and Dart, find and prepare learning material in form of YouTube, Guides and Tutorials, etc.
What I find truly most important in the learning goals, is that there is a red line between the shared goals and the fulfillment criterias. If the fulfillment criterias differ from the shared goal, then even if the fulfillment criterias are measurable, it will not have an important impact since it would be invalid.
The fulfillment criterias are the same as the shared goals, they overall fulfillment criterias and they are both generalized and specific.
- Be able to create and start a new project in a local environment
- Be able to apply and use basic code principles with the learned syntax
- Understand and know of required skills within each subject
How do I measure it? For the first fulfillment criteria it is quite simple, I just need to install the needed reliances, create a new project and see it running locally. This might seem a tad too easy, but this is an essential step everyone has to take when learning a new language, especially if it is a framework.
The second criteria might seem a bit more generalized, but to give you an idea of why I believe it is very measurable is simple. When you know how to code in a specific language, you are often introduced to syntax, classes and other control structures such as if statement and similar. If I am able to use my knowledge of other languages to see if I can replicate some of the functionality I will already know if I have suceeded the moment I run the code.
For the third one it is quite abstract, what is the required skills? But when you learn and reflect, having a question that will enable you to ponder can often help with learning. By reflecting on this question I can understand what I know, and what I have learned from the cycle.