by csnewb on 10/1/18, 1:13 AM with 9 comments
by phakding on 10/1/18, 2:58 AM
Books usually start from very basic and it takes long time to start writing something useful and fulfilling.
by cdoxsey on 10/1/18, 1:46 AM
When you're stuck on a tough problem with a tight deadline you can learn pretty quickly. Though it's a tightwalk, especially if you don't have a lot of help from others, since you might really get stuck or so out of your depth that you miss obvious solutions sitting right in front of you.
Still there's nothing quite like a good project to focus the mind and the lessons you learn that way tend to stick. I find this is especially true when working with source code. You will accidentally learn a codebase from constantly having to refer back to it.
I also find trying to teach things to others is a good way to learn. If you like to write, try putting together a few paragraphs or some slides to explain a concept. It will stick with you a lot better after going through the effort. (and it's real effort... it takes hours to produce a seemingly miniscule amount of content when building tutorials)
This assumes of course that the chief problem is not so much content as it is holding onto it for more than a day and achieving real depth with it.
Videos aren't ideal in this respect. They can introduce a concept and point you in the right direction, but you really need to get your hands dirty to understand it.
Maybe try your hand at fixing a bug in an open source codebase you want to learn. (or even just reviewing a pull request and trying to understand it)
by vinayms on 10/1/18, 5:08 PM
From what I have seen happen around me, the "new skill" isn't really as new as it seems; it is just tweaking and reapplying the already present skill.
To use human languages as an example, a monolingual English speaker learning Italian, or even the seemingly esoteric Urdu, is not as hard as it seems for all these are of the same (broader) family sharing many similar features, and the skill is transferable easily. However, learning something like Chinese or Arabic and being good at it is hard and only people who have no other choice engage in the activity, and may be stand to benefit more in terms of ROI.
In that sense, I would be interested to know how a C++ guy learnt and became skillful in Haskell or Erlang, more than learning Java or Python and churning out code with them.
Or to use a non CS example, its more interesting to know how a medical student learnt fluid mechanics in order to understand the human body better than to know how a mechanical engineer became a theoretical physicist.
by hn17 on 10/2/18, 7:30 AM
If stuck try to find answer by yourself googling, read documentation/books or seek for help from community. I think it's more efficient and entertaining than reading whole books chapter by chapter before starting using knowledge.
If you must learn something quickly I would probably search advice from a person who already knows what is important to learn first or search if someone resolved similar problem.
That way you will learn just needed subset for a beginning to resolve a problem and then you can learn more.
by kumartanmay on 10/1/18, 1:49 AM
by eddwinpaz on 10/3/18, 4:53 PM
by tebura on 10/5/18, 6:11 AM
by e19293001 on 10/1/18, 6:44 AM