Skip to content

Latest commit

 

History

History
388 lines (318 loc) · 16.1 KB

collaborative-learning-community.md

File metadata and controls

388 lines (318 loc) · 16.1 KB

Why?

In Peter Thiel’s book, Zero to One: Notes on Startups, or How to Build the Future, he asks this "contrarian question":

"What important truth do very few people agree with you on?" ~ Peter Thiel

We highly recommend reading the book as it will make you think and encourage you to question your own assumptions & biases.

This document is our answer to the question. In short we feel that:

1. Most education is fundamentally "broken".

Teachers in most primary, middle and high schools are forced to "teach to the test". This means there is a highly prescriptive decades-old learning program and deviation from the "national curriculum" is punished.

Conventional wisdom about education has not caught up with recent research evidence on cultivating curiosity, motivation and self-directed collaborative learning.

Contrary to the notion of "no child left behind", having a one-size-fits-all education system automatically leaves many children "behind". If a child does not understand a particular foundational topic in mathematics, they will suffer for the rest of their school years and feel "stupid" in Science class. This means students often feel they "can't do science" (including computer science).

Schools destroy childrens' curiosity. And some people never re-gain it. see: https://www.ted.com/talks/ken_robinson_says_schools_kill_creativity

University is a unashamedly elitist darwinian (""survival of the fittest") system that forces people to conform to a strict "type" and adhere to a narrow definition of "success" or be considered a "failure" by their peers and/or society.

Instead of allowing people to be curious and gain a broad range of knowledge and experience, people are forced to select a tiny subset of subjects to specialise in. Want to study something that isn't an "official" program? Tough! Pick something from the "menu" or go somewhere else.

Note: if the University/College speciality is Medicine, Civil Engineering or Physics (for example), there is usually "enough" for the student to focus on, but there are many degrees/subjects where the student has more than enough time to learn other skills, and yet often the University/College does not allow them to!

We believe there is a much better way to learn collaboratively, track your progress (without stigma) and have something clear + practical to show others as an objective measure of your skill/experience.

Our proposed answer to this problem:

1.a All learning materials should be free to the individual learning to ensure that there is no "barrier to entry" to the highest quality learning. This means people with fewer means (no rich parents) don't have to get into absurd debt in order to learn life-changing skills. It also means that people who will truly appreciate the opportunity to do meaningful and well-compensated work will get the opportunity. Instead of the current status quo where the tech industry is dominated by people from affluent backgrounds.

Note: we are not proposing infringing on anyone else's copyright. If people chose to charge for their materials, they every right to do so, especially if it means they cover their costs and can continue to produce good content. We want to create all our own materials from scratch to be unencumbered by "big publishing co." draconian/obsolete intellectual property rules. This is not a "pipe dream", we already have a "bank" of examples: https://github.com/dwyl?q=learn to date we have written over a thousand pages of instructional material. If it were published as a "book" it would be a "door stop"! We intend to make each lesson "byte sized" and allow people to track their progress in a user-friendly way.

2. Comparing relative skill/experience levels is hard.

It has historically been quite difficult to measure relative skill level both among prospective people joining a team and existing team members.

e.g: If someone says they have "JavaScript experience", what does that actually mean? Are they a core contributor on the Chromium Dev team, or have they copy-pasted snippets from StackOverflow? Most "recruiters" or "HR" people have no idea how to spot the difference between someone who has honed "deep skills" and experience vs. someone who just left a "bootcamp". To most recruiters it's all "keywords", they don't have a clue about the difference between Java and JavaScript; and worse, they don't want to learn! This means the "quality" of "candidates" varies considerably and comparing people is "apples vs. oranges". Or in some cases "lemons". Is someone who has 10 thousand hours of diligent deliberate practice and world class fortune 500 experience a "better" choice for your mission critical system than the person who built "tick-tac-toe" using the "create react app" at XYZ coding bootcamp? Yes, this is an extreme dichotomy, but most recruiters/HR simply don't care! They have a "Job Spec" with a few keywords, and they will match as many as they can to the "skills" the person has listed on their CV/LinkedIn, with no regard to demonstrable real world experience. What does "2 years" of Node.js actually mean?! We need to make it clear that not having "10 years" experience doesn't mean the person is "worse" they just need to focus their deliberate practice on specific skills and acquire knowledge/skills systematically.

2.a The answer to this problem is simple: Blockchain for Learning. A verifiable ledger of everything someone has learned in a subject from "Hello world" to debugging a Linux kernel panic on a inaccessible/remote embedded device to understand why a mission critical IoT system is failing. We have to "start somewhere"; we feel the best place to start is with sharing the knowledge we already have. See details below in "Collaborative Learning Community".

3. Asking questions online while learning is frustrating!

Asking questions is a source stress and frustration in many "forums" or question/answer sites where beginners often feel unwelcome.

If you have ever used online question/answer forums you will have had one of two experiences:

a. You and your question were welcome and you got positive feedback and an insightful answer that allowed you to continue on your quest.

b. You felt unwelcome, your question was ignored or even ridiculed by "trolls". Something along the lines of: "did you even Google that?"

This is a widely known issue in the tech community. The most popular Q/A site has tried to address it, but the fact remains that for beginners most of the Q/A sites are simply unwelcoming and they end up using them as "read-only resources".

Ask a group of 100 beginners (which luckily, we have access to), how many of them have posted a question online in the last week.

Fewer than half the hands will go up. It's not because they didn't get "stuck" or have the question(s) they could ask, they just didn't feel like they should ask it!

This is a fundamental flaw in the "system" that starts in primary school. When little Alex asks a question that shows their lack of understanding of something the teacher has already covered and some kids in the class laugh, it sends a clear signal to Alex that asking questions is "rewarded" (punished) with ridicule. So Alex stops asking questions ... and either suffers in silence feeling like they are "thick", or makes extra effort to discover the answers by themself in silence. Most of the time, kids fall behind and "regress to the mean". This where the problem starts. This is where we need to address it.

3.a The answer to this is pretty simple; at least in theory.

  • The importance of asking questions in public as a learning exercise that benefits both the initial learner, the mentor (who answers the question) and the wider community should be emphasised from the very beginning of learning.
    • If people don't understand this or they are a "afraid" of asking questions because of "bad experiences", we must make it clear to everyone that @dwyl's online collaborative learning community is a "safe space" where anyone can ask the most basic questions without fear of being chastised by impatient peers or ridiculed by emotionally insecure internet trolls living in their mom's basement!
  • People should be encouraged to ask their first question the first time they get "stuck".
  • If the auto-complete finds a similar question to what they are asking, we should still encourage them to post the question. Even if the answer is simply a link/redirect to the existing Q/A.
  • Questions should never be marked as "off topic", they should simply be categorised according to the relevant topic.
  • People should receive immediate positive feedback/reinforcement when they ask a question!
  • A tally of the questions they ask should be kept as a "karma score".

4. Creative technology work is "unevenly distributed" by "gatekeepers"

Creative tech work is unfairly distributed to people with skills/experience by a handful of "gatekeepers" who control as much as they can to extract value they aren't creating. Middle-men (and, yes it is mostly men!) still rule the sector.

4.a We intend to have a skills & experience based network where anyone can easily see the portfolio of anyone else in the NetWork and can determine if the person is a good fit for their project.

Profiles will be anonymised in search results so discrimination will hopefully be avoided.

  1. Most people don't realise that sharing their knowledge, multiplies the value they both create and capture!

  2. People who don't cope well with interviews and arbitrary "coding ability tests" are excluded from the job market.

What?

Collaborative Learning Community (CLC)

Our starting point for "Phase 1.0" of @dwyl is building a learning community (platform) where anyone can learn how to build web/mobile Apps.

If people ask "why this stack?" or "why not xyz?" we can point them to the github.com/dwyl/technology-stack repo where this is explained. (and if they have any further questions they are encouraged to open issues)

Our stack will be the most productive, robust and fast Open Source realtime web stack. It will rival or eclipse Meteor.js for "wow factor" when building apps that "just work" and are fast. Faster than any other "bootcamp" or "academy" (i.e. Node.js, Ruby-on-Rails or Django, etc).

Our learning materials will always be free for personal and non commercial use. (e.g schools, universities, charities & non-profits)

Companies Can Pay for Learning Platform Access

If a for profit company wants to use the learning platform, to "up-skill" their employees they must pay per user. e.g: €99/user/year up-front. (£8.25/user/month)

For the up-front payment, they will receive an internal (branded) learning network, where any employee can ask project-specific questions in private.

All code snippets and links to internal projects will remain private/secured and on a separate logical server to the public learning community. e.g: companyname.dwyl.com

The default for general learning questions will still be public, because getting "more eyes" on the question will result in faster and more diverse answers.

Companies that don't understand that encouraging your people to actively learn on the job, will not understand our platform/community.

If companies prefer to pay monthly, e.g: so they don't have to get a "purchase order" and can just "expense it", we will have a monthly plan.

We prefer to give people a "free trial" until they are "ready to pay". That way the companies/teams can determine the value for themselves before they have to pay, and we can have a threshold of "utility", before we encourage them to pay.

In order to facilitate internal vs. public learning networks, we should build our system with multi-tennency in mind. This means auth (roles and permissions) should be central, and then sessions are stateless and distributed. i.e. "single sign-on". (not the crap that Slack pulls where you have to login to each community separately!)

The benefit to the company is:

  • they can easily keep track of their team members progress.
  • they get an internal "learning leaderboard" useful for promotion decisions.
  • they can chose to make their employee's questions and profile private on the public forum. Thus avoiding recruiters from poaching their best people. (we will strongly advise against this as the "teams" feature will help prospective employees find a team they want to join!)

If the company has more than 20 employees, we can put together a "learning kickstart training package" which includes (on-site or off-site) in-person training with "experienced practitioners". (the experts will be people in the NetWork who have used the skills to build multiple projects and have proven track record. Not inexperienced amateurs who know the skills in theory, but will waste the time of the learners which is far more expensive because ineffective habits & poor skills are transmitted by people who don't have the production experience!)

NetWork

There is no "NetWork" until we achieve a critical mass of learners. Once we have a few hundred people learning in the community, we can start to address some of the more challenging questions. Thankfully, it will not be very difficult to reach the number of people where a "NetWork" starts to make sense.

This is a high-level "bullet points" list

  • All Learning Materials, Questions & Answers are always viewable without registration and licensed as creative commons (non-commercial).

  • Karma points are gained for asking & answering questions. (SO far, SO familiar...)

  • Karma points are also gained when people upvote other people's answers! i.e. if you give praise, you get points!!

  • Questions and answers can be anonymous or named (author/answer's choice).

  • Registration is required to post a question, answer and up-vote.

  • To build a diverse and inclusive community, there should be:

    • No "penalty" for asking questions, ever. (Down-voting is just bad!)
    • Everyone is always welcome regardless of skill/knowledge.
  • Autocompletion/autosuggestion needs to be great for avoiding duplicates.

  • Duplicates are not a "problem" if there are subtle differences in the Q/A.

    • The more questions we have (even very similar ones) the more "findable" the answers become.
  • Questions/Answers should be linked to learning materials.

    • it should be clear at which point in the learning material the question was raised. So the Q/A contextual.
    • Wherever possible questions/answers should be self-contained and thus generally applicable. But if the question is specific to the learning material in question, that's fine too, because it enhances the learning!
  • The code for the entire platform is always Open Source, so anyone can fork, run and (hopefully) contribute to improving it!

    • The value in the platform is the network not the code.
  • Register to track your progress and have an autogenerated "Skills List".

  • Skills list is your "CV" and will be the source of your work in the NetWork.

  • We pay members of the NetWork up-front to create learning materials.

  • Additionally creators get a revenue share of membership fees based on the popularity of their learning materials.

  • No "full time teachers": if you aren't doing the work you don't have the practical experience to teach the material.