
Ask HN: How to help a guy with no CS backgrnd learn enough to get a job in tech? - colobas
I have a friend who has had an accident that forced him to change his professional career. He&#x27;s now looking to enter the tech world and will do an online BSc in CS. However, I feel like he lacks a lot of background and the degree will most certainly be insufficent.<p>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, ...)
======
gtani
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](https://news.ycombinator.com/item?id=12829561)

[http://web.archive.org/web/20150417115543/http://samizdat.mi...](http://web.archive.org/web/20150417115543/http://samizdat.mines.edu/howto/HowToBeAProgrammer.html)?

~~~
colobas
thanks a lot for taking time to elaborate. take care!

------
ezekg
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](https://teamtreehouse.com) [1]:
[https://github.com/open-source-society/computer-
science](https://github.com/open-source-society/computer-science) [2]:
[https://www.youtube.com/user/MIT](https://www.youtube.com/user/MIT) [3]:
[https://www.youtube.com/playlist?list=PL0F8848A0E4B65481](https://www.youtube.com/playlist?list=PL0F8848A0E4B65481)

------
matt_s
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.

------
crestedtazo
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.

------
atsaloli
The "Learn Enough to be Dangerous" tutorials are excellent! e.g.
[https://www.learnenough.com/command-line-
tutorial](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.

------
i_see_queue
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

------
meric
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.

------
colobas
Longer explanation of my friend's story:
[https://colobas.github.io/2017/02/27/help-me-
help/](https://colobas.github.io/2017/02/27/help-me-help/)

------
opendomain
I would be willing to help

contact me HackerNews AT OpenDomain dot Org

