Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Ember Skill Tree #727
What kind of skills does an ember developer have? In which order will a developer learn ember? What resources are available?
Those are some of the questions we currently have to get new joiners on board with ember and how to handle this with internal learning sessions. So we thought about a skill tree, which you can walk through go gain ember knowledge on the job. In order to get to a skill tree for ember (inspired by adam-golab/react-developer-roadmap), I did a flat acquisition of technologies or skills at first. See here:
This list for sure is incomplete. So, I was wondering whether we can create such a skill-tree together and align it with the guides?
I'm personally thinking of the "Journey of becoming an Ember developer" in a slightly different way right now
My view on the wider journey is a series of steps where you can be productive, but only with a small set of skills. For example, @locks has been working on extracting out the tutorials into a new site where we can have multiple tutorials that get progressively "harder". If someone were to do the new "quickstart" tutorial or the most beginner tutorial that we have on that site I would expect them to be able to do templates and routes, and that's about it
This would mean that you're productive writing Ember apps but you just don't know how to do some of the more complex data access things or anything to do with controllers (like data filtering). In fact, if you wanted to create an empress-blog template you don't even need to know routing, you just need to know about templates and components.
Then if we have multiple definitions of productivity (i.e. what we expect a particular "type" of developer to be able to do) then we can write a global map of what we need to learn to get from one point on the map to another.
I'm not sure I have explained my point enough here but let me know if you would like any more clarity on it
I don't think there is anything contrary to the whole idea in your answer :) In fact, it works in quite well in harmony. Let me go through it:
The skill tree here is clearly to show the path on how you can reach to a certain skill it is definitely meant you don't need to learn or know them all. Depending in which environment you work, those skills will most probably be different. If you join a new environment, you can see in which area you have to improve. With a skill tree this can be made visible.
Those tutorials will help you learn one or multiple skills. That's nice, so you can point out at the beginning that at the end of that tutorial you will be able to do x, y and z - nice. Just map them to the skill tree and you have a material/courses associated with skills from the tree.
Let's take it as a use-case example here. Given you would state all the skills required to fully work on this project and by viewing at the tree the path to learn them is visible. Depending on how much you already know, that truely might be overwhelming and might fence off people. That approach would be stupid, indeed. Instead an approach would be to pick a particular issue, something very beginner friendly, then map it to the skills in the tree. That way you can say: "hey, these are the skills for this issue, you gonna learn them as you finish this." Looking them up in the skil tree will reveal tutorials that'll teach them and will make a developer productive for that issue. That's the connection here.
Hope that makes it more clear.
P.S. I've been working with skill trees in sport before, they can easily have you busy learning the next 3-7 years (depening on how much you put in) ;)
Go to discuss as suggested by @locks https://discuss.emberjs.com/t/learning-ember-ember-skill-tree/16725