DEV Community

Amara Graham
Amara Graham

Posted on • Updated on

What is your favorite way to learn?

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?

Top comments (27)

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard • Edited

I attack it by four different angles who will hopefully converge

  • Find out WHY the technology is interesting in the first place. I choose to ignore things like blockchain that have an unconvincing WHY?.
  • Find a good way to get started, by asking people if there is a tutorial they can recommend
  • Make a list of the concepts I'm unfamiliar with that are related to that technology. I keep it very high level, the equivalent of reading only the introduction in a Wikipedia article. Here is an example I made for data science --> checkvist.com/p/hZRCg7XybRU2jMne6b...
  • Imagine a concrete simple but meaningful project that I could build with said technology. This will force me to learn things on demand when I need them versus trying to learn everything at once but not knowing to do anything in practice. This is the part I usually struggle with :)
Collapse
 
freakyspeedster profile image
Sridhar Murali

Go for written tutorials rather than video tutorials.
That way we get to learn a lot more by exploring related things. But in case of videos, we just follow what is being done there and we only get a high level understanding.
A well written step by step guide/ tutorial is better than video tutorials.
Also, we get a clear understanding when doing hands on with written tutorials.

Collapse
 
dendihandian profile image
Dendi Handian

Only if the written tutorial clearly explain all steps. There are many written tutorials with unclear steps because of our little knowing of the background.

So, written tutorials for pace and video tutorials for clarity.

Collapse
 
missamarakay profile image
Amara Graham

I really like written tutorials more than videos too. I find myself having to pause videos almost constantly because they go too fast if I'm trying to learn something for the first time.

Collapse
 
michaeltharrington profile image
Michael Tharrington • Edited

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.

Collapse
 
tqbit profile image
tq-bit

Depends on what I am learning

  • Programming language? -> Youtube crashcourse. Then:
    • if there is one: Official book, e.g. The Rust Book
    • else, inofficial tutorial, e.g. Javascript for Cats
    • then, keep reading dev.to, hackernews, etc.
  • Product? -> Try it, fiddle, fail, read the docs.
  • Tool? -> Depends on the tool. Examples:
    • For Unity -> took a course.
    • For VSCode -> read the docs
    • For Postman -> nothing, UI was trivial enough
Collapse
 
missamarakay profile image
Amara Graham

Your tool examples are great. Unity is huge and has entire university courses dedicated to only parts of the functionality.

Postman is my favorite experience and I'm glad you highlighted it here. You can get it to work quite easily by working through the UI. Want more powerful features and functionality? If the UI isn't guiding you, they have great content built by people at Postman and the community.

Collapse
 
dendihandian profile image
Dendi Handian • Edited

If there is a course or tutorial with title "Learning {tech} in 6 hours", it's totally normal if you're not finishing it in 6 hours.

Just spend the first hour or the first section, not more than 1 hour. Then spend about a day or even a week to build something with everything you know from the first hour of tutorial if possible. This can be a small project that you can save in cloud drive, github gist, note, etc.

Continue the next hour of tutorial with the same step. The bigger the project you build, to may need to store it into git repository.

Collapse
 
missamarakay profile image
Amara Graham

If there is a course or tutorial with title "Learning {tech} in 6 hours", it's totally normal if you're not finishing it in 6 hours.

Yes! This is so critical for anyone at any level. Sometimes this is equivalent to a buzzword for SEO and other times it's a bad estimate from someone who may already have knowledge or experience in the areas covered.

I love how you broke it down. This is great advice!

Collapse
 
peterkmx profile image
peterkmx • Edited

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 ...

Collapse
 
missamarakay profile image
Amara Graham

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.

Collapse
 
peterkmx profile image
peterkmx

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.

Collapse
 
lovepreetsingh profile image
Lovepreet Singh

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/

Collapse
 
raguay profile image
Richard Guay

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.

Collapse
 
crowdozer profile image
crowdozer

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.

Collapse
 
missamarakay profile image
Amara Graham

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?

Collapse
 
gbhorwood profile image
grant horwood • Edited

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.

Collapse
 
missamarakay profile image
Amara Graham

Typing things out is such a good mechanism! Get your fingers working through the flow of things.

Collapse
 
jankapunkt profile image
Jan KΓΌster

Build stuff while reading documentation

Collapse
 
brense profile image
Rense Bakker • Edited
  1. Hear about the new tech
  2. Decide if I find it interesting
  3. Put on backlog

... long time ...
Technology became obsolete, return to 1. 😁

But usually most dev tech has some kind of examples on their website that I look at. From that I can usually gauge whether I can implement it in a project or not and if it's better than the current tech that I'm using or not. When it's better I either try to implement it into an existing hobby project or start a new one. Along the way i use google/stack overflow to solve any issues i run into. If i can't find solutions immediately, it goes on the backlog as "non mature tech".

Collapse
 
missamarakay profile image
Amara Graham

Put on backlog ... long time ...

Relatable on so many levels 🀣

Collapse
 
elwafdy profile image
Ali El-Wafdy

For me, I prefer to start off by finding a good starting point, whether it being a detailed video tutorials or going through the documentation.

Then, I find it very useful to start building stuff and identify which points I need to go back to and read more about.

Collapse
 
nexxeln profile image
Shoubhit Dash

I just like to build stuff. When I get stuck I look it up and keep going. Fastest way to learn new things in my opinion

Collapse
 
mrdulin profile image
official_dulin

Answer questions on StackOverflow.