Skip to content(if available)orjump to list(if available)

Structuring Competency-Based Courses Through Skill Trees

Garlef

From the requirements - or rather desired properties.

> Subskills cover skills

Isn't this requirement a common fallacy in education?

First, just because you know skill A and skill B does not mean you can automatically do both A and B together. (Of course it helps!)

Assume you're learning a to play piece of music. If you learn a given sequence [A, B] and start with individually learning the parts A and B you'd still have to practice the transition.

Second, just because you know a composite skill does not mean you can do each part individually.

Again assume you've learned to play a part of a piece of music and the notes constituting this part can be decomposed as [A, B]. Then you'd not directly know how to play B on it's own because you've propably learnt to enter B transitioning from A.

Still: I think the overvall approach is interesting. Just the details might be a bit off.

Swizec

> > Subskills cover skills > Isn't this requirement a common fallacy in education?

Whole careers have been built on being one of only a few people in the world who can perform A and B together. Like that physics guy who can also write good sci-fi.

There are 3 skills actually. A, B, and A u B. That intersection is often the hardest.

chrisweekly

Yeah, I've heard this referred to as "skill-stacking".

If you're in the top 10-20% at two different things, you might be in the top 1% of people who can do both.

queuebert

> Like that physics guy who can also write good sci-fi.

Stephen Baxter? Or someone else?

Swizec

I was thinking Andy Weir but yeah there’s probably several. A strong physics background surely helps with writing better sci-fi

antonvs

Alastair Reynolds is who I thought of. PhD in astrophysics, worked at ESA. But there are several other scifi authors with decent physics resumes.

schmidtleonard

Sure but don't let the perfect be the enemy of the good. "Big bucket of courses, bring your own plan" and "here's your mass produced course plan that may or may not be optimized for departmental needs rather than yours" are both pretty rough. A skill tree is a step up even if it needs a little (or a lot) of refinement.

criddell

Is your skill tree too sparse? Instead of

    [A, B]
maybe it should be

    [A, A->B, B]

yorwba

Yes, the whole point of having the "Subskills cover skills" requirement is that if this requirement is not fulfilled, the skill tree is missing a subskill and needs to be expanded. The authors state that in the process of building a skill tree for their database course, they noticed that SQL triggers were introduced without discussing SQL update queries first. Probably because they hadn't tried to explicitly list all requirements at such a fine-grained level before.

roenxi

This idea is probably more interesting if applied to software engineering management. There is a bit of a competency crisis among software managers where it isn't possible to tell whether they are any good at what they are allegedly doing.

The kneejerk reaction of most businesses seems to be either metrics that don't really work or relying on hypercompetent individuals in the higher parts of the management tree. Neither approach works particularly well. But I haven't seen a skill tree style competency training & testing approach and I suspect it'd work better than the apparent status quo. At least on paper the managers have been trained to do something instead of just dumping smart people into the role and hoping that they figure it out.

For example someone can get certified in Agile and that is ... in some sense a bit silly because then they just spend the rest of their life noticing that most people don't use Agile. But a skill-based approach to the components of Agile development and training them to raise hackles in particular situations where people make common bad architectural decisions would cause productive cultural shifts. I suppose the sort of training that gets done doesn't go far enough.

PaulHoule

If people decomposed agile into little bits they probably wouldn't be doing agile anymore. The other day somebody posted a question about "how do I push back about management going to one week sprints?" My answer, which I didn't post then, was "if management really wants to go fast give up on sprints"

That is, Kanban + Continuous Integration >> Scrum by a lot. Seen from that viewpoint sprints are not something that speeds anything up (seductive name there!) but rather a bunch of phony deadlines and needless meanings (you really think people feel psychologically safe in a retrospective meeting that was scheduled just to have a meeting? is there really something worth talking about in an every two week one-on-one in your manager which isn't important enough to knock on their door and ask about right now?)

If I was evaluating a manager I'd probably get them to give me a list of practices that they say their team is following and then check to for conformance against that. I am less bothered with do they do code reviews or not but rather "did they tell me that they enforce five conventions in the code and looking at the code I find they rarely do... Lets sit in on a code review"

didgeoridoo

Exercism.org takes this approach; I’m not sure if it’s super pedagogically-driven or more about making it fun and keeping a sense of progression (maybe it can be both?)

I wonder which fields of knowledge are resistant to being structured like this from a learning perspective.

johnecheck

Modeling mastery as a set of skills to be acquired with prerequisites and requirements is clearly valuable. Visualization can serve as a map that guides learners.

Universities employ this on a larger scale - degrees require classes that require passing grades and prerequisites. I like the idea of using it for smaller-scale learning like lessons, classes, and job training.

whiteborb

a "Hard Problem" with this approach is that it needs definable, enumerable "skills." real-world skills often involve flexibly combining tools and tactics in new ways. but not impossible to overcome (LLMs might be uniquely suited to help there actually - coming up with new scenarios etc.)

mym1990

I would argue the opposite, that LLMs are not good at creating novel scenarios which span multiple domains, or sub-domains. That is where creativity plays an important part. Of course an LLM will spit out something that might look like a viable way to combine tools and skills, whether it is correct is highly questionable.

accrual

This makes a great deal of sense to me. If it's demonstratably effective I'd love to see higher education incorporate it.

As a side note, I'm thinking about pursuing an MSc at Georgia Tech OMSC. I wonder if the online nature of it takes into account this kind of skill tree, or if it's more traditional.

Jtsummers

OMSCS is composed of multiple courses with no hard prerequisite requirements (except for one course, and you can skip it if you can persuade the professor). Within each course, they're conventional. If the material lends itself to this form (not all graduate courses do) then they may be in a similar form to this just like any other college course that has a clear progression of "You need to know X before you can produce/study Y".

accrual

Thanks so much for the insight!

ecshafer

OMSCS is basically a normal university structure, except for requiring you to do some foundational courses first (which essentially act as a competency check for the rest of the program).

johnsutor

It looks pretty akin to mathacademy.com, which is fantastic for brushing up on math concepts.

cultofmetatron

looks like mathacademy's approach which I've found to be extremely effective. I wish more moocs used this model of teaching.

constantcrying

>Computer science education has seen two important trends. One has been a shift from raw theory towards skills: competency-based teaching.

There is no greater skill in computer science, science or mathematics than a deep understanding of theory. It is the understanding of how distinct things fit together, nothing could be as helpful. Yes, even when developing a JS web app.

pyinstallwoes

Reminds me of SWG skill tree pre CU nerf

rahimnathwani

The PDF cites Justin's book about Math Academy.

I like how the paper lays out clearly the steps to create a skill tree, and some general guidelines.

The paper is perfect for use as part of an LLM prompt, e.g.

  Using the approach detailed in the attached paper, create a skill tree for writing a magical realism novela.
  Turn this into mermaid code. Don't use parentheses in labels.
https://mermaid.live/edit#pako:eNqNWH9v2zgS_SqEFvufW8SWm228w...