qmacro / thinking-aloud

A journal, of sorts.
14 stars 0 forks source link

2021-03-25 09:53:26 Some thoughts on learning, and how I pick the topi… #7

Open qmacro opened 3 years ago

qmacro commented 3 years ago

Some thoughts on learning, and how I pick the topics.

Starting from a tweet from Alex Ellis on learning & age, in one of the ensuing threads, Jeroen Jacobs described the challenges of learning while working, and the challenge of that learning being non-billable and / or fleeting due to lack of opportunities to practise.

I've been a life long learner, not initially consciously by any means, but, helped by my impostor syndrome I've always strived to flesh out my knowledge and remain above water. With computing in general, and enterprise computing in particular, I've found that it was usually natural to discover related topics that I had little idea about.

So those were the natural targets for new learning efforts. Not only because I could relate to them because they were to some degree relevant to the task at hand, but also because I had started to figure out that the more I knew about those related topics, the greater my overall understanding of things and the more useful I became.

To take an example - in the early days of APIs, when we started to move beyond the proprietary protocols and approaches (such as remote function calls and the RFC SDK), it was HTTP that sat firmly front and centre as the protocol around which the API world was beginning to revolve. While I could have got by with just a shallow understanding of HTTP, enough to create, make and debug API calls, I dove right in, to the extent that I call RFC 2616 a friend. Moreover, that journey led me to properly understand that HTTP is an application protocol, which in turn helped me understand why the whole Web Services Deathstar was destined from birth for self-destruction, because it was built on false foundations (the abuse of HTTP as a transport protocol). And of course, those investigations led me to Roy Fielding's thesis and the concepts of Representational State Transfer (REST), which -- to an extent -- underpins much of the API surface area today.

In my journey of discovery here, everything I did eventually became relevant to my work. Not by chance, but, I think, by relation.

So now where do I go with that? Well, while I'm not yet using GraphQL (except for an experiment with GitHub's API surface), I have at least looked into it, at least enough for now to understand how it differs from, say, RESTful approaches, and, as Molesworth might say, in a "kno yore enemie" kind of way. And I do know that GraphQL most likely will feature in my future, so it's something I'll look into.

Anyway, what am I saying here? I think I'm saying that there's a semi-conscious filtering that goes on in my head when it comes to continuous learning; filtering that is designed to protect me from burnout, from learning stuff that I'll never get a chance to practise, but most of all to take advantage of a key aspect of learning - helping me to build the next layer of understanding.

An additional thought here relates to the need for practice. Jeroen commented:

... the things I learn outside business hours, well it seems I forget most of it if I don't apply it during the work day

This reminded me of a great conversation between Scott Hanselman and Romain Goyet on a new pocket calculator, in the Hanselminutes podcast episode It's time for a new kind of calculator with NumWorks' Romain Goyet. Romain talked about energy consumption and eventual battery drain in devices, and drew out the distinction between dynamic RAM and static RAM.

I think our minds are a lot like dynamic RAM, in that they need to be regularly refreshed (perhaps not as frequently as dynamic RAM!) with the same information, lest that information loses synaptic relevance and fades away.

ajmaradiaga commented 3 years ago

Depending on what you are learning, something that can be done to keep things "fresh" in your brain, even if you don't use them on your workday, is by doing spaced repetition. A software, e.g. Anki, can help you with it. Now this obviously adds some effort to the learning process but if it is important, it is worth recording it -> creating an Anki card and letting the software remind you.