Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Individual Project Learning Goal #497

Open
nelsonic opened this issue Oct 1, 2018 · 2 comments
Open

Individual Project Learning Goal #497

nelsonic opened this issue Oct 1, 2018 · 2 comments
Labels
enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! starter A beginner-friendly issue that is a good starting point for a new person technical A technical issue that requires understanding of the code, infrastructure or dependencies

Comments

@nelsonic
Copy link
Member

nelsonic commented Oct 1, 2018

Context 🌱

Since the beginning of @dwyl (the web/app development agency),
we've had a clear goal of sharing everything we know/learn with each other freely & openly.
see: https://github.com/dwyl/hq#individual-team-members

Which is why we have accumulated so many learn-... tutorials and self-contained examples.
see: https://github.com/dwyl/?q=learn 😍

Both our team members, clients and the wider community find our learning/tutorials/examples relevant and useful to the extent that in some cases our tutorials are more popular than the "official" docs. 😮

We encourage everyone to contribute to the repos with updates, improvements, typo fixes, etc.
and so far we've had contributions from several hundred people from around the world! 🌍 🎉
https://github.com/dwyl/start-here#who ... our plan is to grow this to thousands of people. 📈

What's in it for me? 💭

As an individual (developer/designer/tester/QA) you may ask: What's in it for me?
This is a fair question (though it's one you should have got "out of the way" a long time ago).

Ideally everyone writing code for a living is already intrinsically motivated to learn new tricks/tools/techniques and programming languages with a regular frequency.

By definition, if you aren't moving forward (relative to your technical peers) you're falling behind.

image

Learning new things means you retain and increase your personal "sharpness" continue your progress toward Personal Mastery.

It means the world goes from looking like this:
image
To you being able to "see everything" like a "master builder" and being able to "build a spaceship":
image
Note: this reference may be wasted if you haven't seen The Lego Movie ... watch it!! It's awesome!

Knowledge Work? >> Creative Technologist 🦄

Some people refer to software developers as "knowledge workers" https://en.wikipedia.org/wiki/Knowledge_economy ... I feel this does not actually reflect what we do.
Yes, accumulating knowledge is important, but we don't get hired for knowing how to do something,
we get compensated using our knowledge to create useful products/services.

Getting Paid to Learn?! 🤓+ 💻 + 📚(+🔍) = 💰 (|>🏡☀️🏄⛵️ ...)

Almost no companies/organisations actively encourage their team members to learn new skills "on the job" and share their knowledge/learning in public. (public is the key distinction here)
We don't just share the odd "blog post", we share everything.
There's a very good reason for that: we want everyone to be able to acquire our knowledge.
We understand that knowledge is not our "key differentiator".
As creative workers we differentiate ourselves by our experience, creative output examples ("portfolio") and work ethic.
Once you understand that your "career progression" (at any company!) directly depends on how much knowledge you share, you can begin to pace yourself to share what you learned every day.

Find/Forge Your Own Path! 💡 >> 🚀

If you want to learn something new just start! (always have a "bias toward action"!)

Later, having tried it for yourself, if you want to use a particular tech/tool/feature/language @dwyl,
simply open an issue in /technology-stack/issues and "make the case".
We all want to learn/use new tools, that's the point of a "learning organisation".

Few careers allow people to decide their own direction and focus on a preferred speciality.
The industries that do allow self-direction are the "the professions": https://en.wikipedia.org/wiki/Profession and even then, there is a pre-defined "menu" to chose from.
Sadly, - or thankfully, depending on your perspective on self-directed learning - software development/engineering does not have a "charter", "association" or applicable international laws
the way Doctors, Lawyers, Engineers and Accountants do.
Web developers do have a "standards body" (the W3C) though you wouldn't know it from viewing the the webhint.io score for the home page of various prominent websites:
https://webhint.io/scanner/0037f23f-26fc-4d3b-81f4-eb8e6c41ab24
image
No surprises. But you'd think they had the resources to make their site standards-compliant. 😕

Define a Personal Learning Goal for Each Project 🎯

Each time you join a new project - preferably before -
you should think about the project's goal and exactly what problem/challenge is being solved.
(if the project does not have clear goal, first attempt to help the Product Owner/Team to focus)
Next think about how you can (personally) benefit from working on the project
and specifically what feature/functionality you have not built before.
Find an aspect of the project that is either new (you have not attempted to solve it before)
or a refinement (something you've built before on a previous project, and want to do much better this time!) you want to build as "world class" and write it down. 📝

if you aren unable to define a Personal Learning Goal for the project, write that down. 📝
The act of forcing yourself to write something down means you have made the effort to think about learning goals/objectives. It's not a "failure" if you haven't found something to learn. 😕
This in itself is a learning experience: discovering what to learn is just as important as how to learn.
As always, if you're "stuck", ask for help, that's the whole point of being on a team! 🆘 >> 🚁

@nelsonic nelsonic added enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! technical A technical issue that requires understanding of the code, infrastructure or dependencies starter A beginner-friendly issue that is a good starting point for a new person labels Oct 1, 2018
@rub1e
Copy link
Member

rub1e commented Oct 15, 2018

Obviously this applies in a slightly different way to me than to people in dev roles 💻; but taking a step back, my learning goal from working with Ines and Nelson in an Operations capacity was mainly to get a sense of how small businesses work.

And I get this in spades! Not only do I get to learn useful and transferable skills, but dwyl's approach to publicly sharing knowledge means everything I've done and learned has been documented for me to revisit and reuse (my own business partner used Ines's GDPR repo to get himself up to speed on privacy, for example).

I've worked for companies that didn't bother with setting personal goals or objectives; I've worked for companies where managers tell you what your learning goals are with scant input from yourself; I've worked for companies where you set your own objectives in a custom framework with a picture of blue skies or a railway track on the front, then you put them in a drawer for six months until someone comes up with a new custom framework with a lightbulb on the front, which will then sit in a drawer for another six months.

Ultimately it's up to you how you go about this or how seriously you take it. But really, you should be very pleased to be working with people who take this approach to personal development 💙

@iteles
Copy link
Member

iteles commented Dec 3, 2018

I really wanted to leave a little space for everyone else to add their learning goals but seeing as @rub1e has been the only one so far (💙), I thought I'd add mine too, they can't wait any longer!

Project: https://github.com/dwyl/product-roadmap, with a focus on dwyl/technology-stack#67

Learning Goals:

Project: https://github.com/dwyl/home/

Learning Goals:

  • I have a general goal of learning everything I can about construction and renovation but for the immediate term, I want to learn about lighting, its effects on the human psyche and which lights are best for different environments
  • Expected OMTM outcome: Finalise which lights will be in every room, corridor and work area by the end of December and buy them; commit research into home repo

Project: Club Soda Guide

Learning Goals:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or enhancement of existing functionality help wanted If you can help make progress with this issue, please comment! starter A beginner-friendly issue that is a good starting point for a new person technical A technical issue that requires understanding of the code, infrastructure or dependencies
Projects
None yet
Development

No branches or pull requests

3 participants