Ask HN: How to help a guy with no CS backgrnd learn enough to get a job in tech?
9 comments
Some of the coding bootcamps have pretty detailed curriculum including intermediate and capstone projects. If somebody puts up useful mini-app backends in Rails or Django and shows they can unit test, branch/merge in git, do basic config/admin on linux db/solr/elastic/web etc servers, that should be a pretty employable. Or data sciency: spider and assemble clean datasets.
Look at meetups, there's fair number intros to python, R, rails, go, C# etc sessions in any decently sized city.
This is asking a lot, it might take 18 months, or a lot longer than those bootcamps. That's ok, it's like learning Mandarin or violin or the first couple years of college applied math, just take small steps, the simplest things that could adequately work.
Lists of basic skills: Uncle Bob Martin's book,
https://news.ycombinator.com/item?id=12829561
http://web.archive.org/web/20150417115543/http://samizdat.mi...?
Look at meetups, there's fair number intros to python, R, rails, go, C# etc sessions in any decently sized city.
This is asking a lot, it might take 18 months, or a lot longer than those bootcamps. That's ok, it's like learning Mandarin or violin or the first couple years of college applied math, just take small steps, the simplest things that could adequately work.
Lists of basic skills: Uncle Bob Martin's book,
https://news.ycombinator.com/item?id=12829561
http://web.archive.org/web/20150417115543/http://samizdat.mi...?
thanks a lot for taking time to elaborate. take care!
Tell him to sign up for Treehouse[0] to start learning the basics of whatever subject he wants (app dev, web dev, etc.), and from there he'll find out if he actually likes it or not.
If he decides that he likes it and he's feeling driven, there are tons of resources[1] online for learning a lot of what he'll get with the CS degree, including video lectures from MIT[2] and Standford[3].
[0]: https://teamtreehouse.com [1]: https://github.com/open-source-society/computer-science [2]: https://www.youtube.com/user/MIT [3]: https://www.youtube.com/playlist?list=PL0F8848A0E4B65481
If he decides that he likes it and he's feeling driven, there are tons of resources[1] online for learning a lot of what he'll get with the CS degree, including video lectures from MIT[2] and Standford[3].
[0]: https://teamtreehouse.com [1]: https://github.com/open-source-society/computer-science [2]: https://www.youtube.com/user/MIT [3]: https://www.youtube.com/playlist?list=PL0F8848A0E4B65481
Start with Math. He attended university and was working on a Bachelors so I assume he has a base of some math knowledge. Computers are really just calculators and computing engines. Have him start doing basic programs to do basic math. No fancy libraries, GUI, IDE's, build tools, etc. needed. Either pick a language you know a lot about or pick one you also want to learn and learn together.
Once he can get basic math working (e.g. calculator via command line), build a UI for a calculator. Probably a good bet to go with some web front-end since those jobs are more common. Again no libraries or Javascript framework-of-the-month stuff, just basics.
From the background you said he was studying Physical Education... find some dataset that interests him in that area. Build a web app with that data that does something related, shows it, has simple forms to capture data, etc.
Once he's done that, he should have a good understanding of what programming is like and if he wants to continue and spend money on a degree.
The key is probably linking his interests with programming, which could naturally lead to some niche jobs in sports science using programming.
Once he can get basic math working (e.g. calculator via command line), build a UI for a calculator. Probably a good bet to go with some web front-end since those jobs are more common. Again no libraries or Javascript framework-of-the-month stuff, just basics.
From the background you said he was studying Physical Education... find some dataset that interests him in that area. Build a web app with that data that does something related, shows it, has simple forms to capture data, etc.
Once he's done that, he should have a good understanding of what programming is like and if he wants to continue and spend money on a degree.
The key is probably linking his interests with programming, which could naturally lead to some niche jobs in sports science using programming.
Your friend should be able to easily learn everything he would need to know to land a software eng job in no longer than 1 month by reading online tutorials.
I have watched several of my friends go from absolutely 0 knowledge to senior software engineers in less than 6 months. Being a software engineer is incredibly easy and requires no innate talent.
I have watched several of my friends go from absolutely 0 knowledge to senior software engineers in less than 6 months. Being a software engineer is incredibly easy and requires no innate talent.
The "Learn Enough to be Dangerous" tutorials are excellent! e.g. https://www.learnenough.com/command-line-tutorial And the price is affordable (HTML version is free, can buy PDF).
Also freecodecamp.com has a nice structured program, also free.
Also freecodecamp.com has a nice structured program, also free.
Beyond content, I'd suggest helping out an open source project or two - and building a portfolio of progressively harder projects. Projects cross cut a bunch of different topics, and so can really help you learn how to achieve tasks rather than just learning material
Make sure he has access to a computer easy to learn program with and also a good internet connection so he can flip between different websites. I don't know the nature of the accident but don't forget the basics - the learning environment, the people he has access to.
Longer explanation of my friend's story: https://colobas.github.io/2017/02/27/help-me-help/
I would be willing to help
contact me HackerNews AT OpenDomain dot Org
contact me HackerNews AT OpenDomain dot Org
How can I help him learn enough that he can then start learning on his own? Can you recommend good introductory content? (intro to how computers work, basic unix, basic programming, ...)