What is your favorite way to learn a new language, product, or tool?
For me, I prefer hands-on, with nearly all self discovery and as little guidance (written or instructor-led) as possible.
This helps me understand if something will be intuitive for me (and therefore I can budget a smaller amount of time or non-focused time) or if I need to dedicate a significant amount of focused time and energy, or even find instructor-led or curated options for learning.
How do you learn? Or maybe the better question, how do you prefer to learn?
Latest comments (27)
Focus on learning without any destruction for anything
Answer questions on StackOverflow.
I learn best by just jumping in and writing full programs in the new language. Mostly, writing cli tools first and then moving on to graphical items as I learn the new language. I rely on the online docs to teach me everything I need to know about a new language. Sometimes I buy a book.
I tend to be a "sandbox learner" :-) and I use simple quick-start examples illustrating the concepts, and, later on, minimal projects with increasing complexity. This can be based on video courses, books, articles. Usually I focus on leading examples and I learn self-paced, "without supervision" :-), this suits me best. This way I learned in the past 4 years the technologies such as Git, Bitbucket, Docker, Ubuntu, GCP/GKE ...
Ooo now I have some questions! When you say sandbox learner, do you prefer to learn things like Git in a browser-based experience and then apply that knowledge to Git on your local machine? I'm always trying to find a good balance between easy, safe, and close to the real thing.
Yes, good question β¦ After viewing some video tutorials it was doable for me to install Git + Git Bash locally on Windows 10, and to open a personal account on Bitbucket. This way I created a minimal sandbox env to learn Git commands such as git clone, git status, git add, git commit, etc β¦ thus no GUI at all, and this is also suggested in Git tutorials as best practice for learning Git. Next logical step was to invite someone from my team to test code maintenance and collaboration scenarios using cloud repos in Bitbucket, git branches etc.
I create a project that requires the skills that I want to learn. I use google, docs, or watch videos that explain the high-level concepts...
I used to take a lot of online courses but now I've learned the value of reading documentations and books.
First off, loving this topic!
I think like you I'm a hands-on learner, but on the contrary, I really prefer to get guidance and have someone show me how to do something if possible.
I'd prefer to have the person with me in person showing me how it's done, but if it's over video call that's okay too. I suppose I can also generally learn from someone typing instructions and guidance to me over Slack, but if it's a multi-step kinda process and/or something more visual, I really prefer to work through it with them.
I think this is my preference because a) I like the opportunity to ask questions on the fly and b) I have a pretty good memory for experiences. On the latter, I notice that if I'm on call with someone and we chit-chat a bit about something, then they help to teach me whatever the thing is I'm learning, I'll kinda group the two things together in my mind and it helps me to recall it.
Hands-on learning with well documented black boxes. "I do this, it does that. How isn't important. Cool, what can I do with that? Oh, I bet I can do all sorts of things with that..."
Knowing how a system works is great but implementation being sufficiently "magic" makes the learning process a lot smoother. Having to memorize how lots of internals work together makes it really hard for me to approach complex systems... like game engines.
If there is a lot of underlying complexity that needs to be managed, then I prefer being "guided" by a tutorial.
I also like having examples to get started, but I quickly deviate from them once I know what I want/how to do it. It's really frustrating approaching a new system with nothing to reference.
We have incredibly similar learning styles. Like this example is cool, but can I take it and make it more interesting and how frustrating is that experience?
learning by doing takes longer than just going through a book or course, but the material sticks longer and better that way. a lesson you learned by overcoming a problem is always more treasured than something you merely read.
i also take the effort to type out samples, rather than just pasting them. transcribing makes you focus on the content and structure, not just the results.
Typing things out is such a good mechanism! Get your fingers working through the flow of things.
I do learn while doing. I do absorb 20-30% from a course or any source and then go for implementation. And then I go for 50% and I do until 80-90%.
Then I do work on Good Projects and I do share all my learnings on lovepreet.hashnode.dev/