I'm free for some time and want to use this time for something productive. Its like a school break (i'm 16). I have some experience in coding but its been mostly tutorial hell.
Things I am interested in : Low level stuff(systems programming?), solving problems etc
Here is a rough outline of my plan:
WEEK 1 : python
How : I intend to follow a book titled "Learn Python 3 the hard way"
WEEK 2 : numPy, sciPy, pandas, scikit learn,
How : Not sure
WEEK 3 : C
How : Follow "C, the complete reference, 4th ed"
WEEK 4 : Data structures and Algorithms
How : Not sure
WEEK 4,5,6 : ?
Other projects I want to do
- Start a personal website/blog. Static site generators such as HUGO or ZOLO seem good enough.
- Try Linux From Scratch project. I currently use basic arch with WM. Learning the inner workings of GNU/LINUX systems sounds
interesting
- Try contribute to FOSS someday in the future
- Not sure
I made this post to receive suggestions. Baseless weekly goals does not sounds like a good idea. If your were to start from scratch
how would you structure your learning?
What tools, books do you recommend to go through ?
Please share other tech/life/general tips too.
For example you could scrape a bunch of data off of your favorite subreddit and do a network analysis of all the users. It'd touch on a lot of the packages you want to learn and you'd be learning them for a specific end result. You could even throw the data into Gource at the end for a cool visualization (not that it would be very instructive, but it's cool to watch).
Also it's only 3 months. Just my perspective but I think you'd get a lot more out of it by sticking to one language and learning it really well.
Since you mention learning python and C, I'll recommend a couple sites with problems you can work through.
https://www.reddit.com/r/dailyprogrammer/
https://projecteuler.net/ (math heavy)