Live data from Hacker News

2013 Resolutions: a man page a day makes the newb go away

sobering.ca

21–30 of 49 posts

Re: 2013 Resolutions: a man page a day makes the newb go away

#22

May I ask why your desire to learn C?, I'd just like to know what are you targeting specifically.

Don't laugh.

My ultimate goal in life is to write software for satellites, space probes or planetary rovers. I want my code in space. It's a pretty advantageous goal, but with hard work I can do it.

There is a Canadian company that is currently hiring for my dream position: http://www.mscinc.ca/about/MS-engineer.html

I'd like to help further Canada's contribution to space science.

I'm currently taking my first year of Computer Science. Getting really good at C is something I feel like I should start now. Then I'll need to get good at embedded C and eventually start looking at the VxWorks operating system since it seems like that's what most probes or satellites use. But that's for the future.

Re: 2013 Resolutions: a man page a day makes the newb go away

#23

While I think it's a neat idea - I think in the end it's gunna be a case of in-one-ear out-the-other. For instance I read all of "The Unix Programming Environment" by Kernighan and Pike. It's FULL of useful information (in fact I'd argue it's way better than reading man pages) and after I was done I felt like I was 10 times the Linux man I was. However unless you're fighting with Linux a lot on a daily basis you quic…

This is why I try to focus on books with exercises and force myself to finish all the exercises - "Thinking in C++" (volumes 1 and 2) was especially good for this. If nothing else, typing in examples helps. Also, try slowing down and forcing yourself to think of better/alternate ways to do something. Just having read the docs, your mind will be more open to using different options, and by forcing yourself to do it differently (even if you have to look it up again), will help to reinforce.

Re: 2013 Resolutions: a man page a day makes the newb go away

#24
I hope this works out for you. I've taken up learning vim this year, but my main problem is forgetting the things I've learned. I tried cue cards but they fill up far too quickly; so my answer was to store my notes on a wiki: http://wiki.jbud.me/index.php?title=Vim

Re: 2013 Resolutions: a man page a day makes the newb go away

#25
post #8

Earlier quoted context omitted.

Please share that script when you do it. It might be fancy to read man pages when one is bored instead of watching something as the randomness might dig some cool facts of the system for you which you did not know before hand.

Just found this little snippet via a quick Google search: dir="/bin"; man $(ls $dir |sed -n "$(echo $(( $RANDOM % $(ls $dir |wc -l | awk "{ print $1; }" ) + 1 )) )p") I think I may write my own version as well. Just to gain a bit more experience with shell scripting.

[deleted]

Re: 2013 Resolutions: a man page a day makes the newb go away

#26

May I ask why your desire to learn C?, I'd just like to know what are you targeting specifically.

Don't laugh. My ultimate goal in life is to write software for satellites, space probes or planetary rovers. I want my code in space. It's a pretty advantageous goal, but with hard work I can do it. There is a Canadian company that is currently hiring for my dream position: http://www.mscinc.ca/about/MS-engineer.html I'd like to help further Canada's contribution to space science. I'm currently taking my first year o…

This is a pretty reasonable goal. I suggest you also consider learning FORTRAN (starting with 77) and a solid scripting language like Python or the more niche IDL (used extensively in space research)

You can get your foot in the door with some more high level programs doing things like data processing and visualizations, and once you are there you will be able to find the opportunity to get your hands dirty with space code.

I worked in a group doing solar physics research and although my code didn't get pushed to a satellite, I did get to do a lot of awesome analysis on data sent back from the satellite.

You should browse sites like the AAS Job Register as well: http://jobregister.aas.org/

The Science Engineering and Support/Technical staff positions are often open to people without a PhD and offer a great opportunity to work on space science.

As an aside: How are you selecting your man pages? Do you have a specific group in your sights, or will you pick day by day?

Re: 2013 Resolutions: a man page a day makes the newb go away

#27

Earlier quoted context omitted.

Don't laugh. My ultimate goal in life is to write software for satellites, space probes or planetary rovers. I want my code in space. It's a pretty advantageous goal, but with hard work I can do it. There is a Canadian company that is currently hiring for my dream position: http://www.mscinc.ca/about/MS-engineer.html I'd like to help further Canada's contribution to space science. I'm currently taking my first year o…

This is a pretty reasonable goal. I suggest you also consider learning FORTRAN (starting with 77) and a solid scripting language like Python or the more niche IDL (used extensively in space research) You can get your foot in the door with some more high level programs doing things like data processing and visualizations, and once you are there you will be able to find the opportunity to get your hands dirty with spac…

Thank you for the advice, you've definitely given me some stuff to thing about, and I'm glad to hear from somebody who's worked in a field similar to what I'd like to get into.

As for the man pages, I'm starting off with 'man', then will move onto my most commonly used commands for general Linux use and server administration. After that, I'll be using a shell script to give me a random man page.

Re: 2013 Resolutions: a man page a day makes the newb go away

#28
Some preemptive advice: pick a small (tiny!) project and do it with C and/or sh and other command line tools (don't forget about awk and sed). Often you can do something quickly in a shell script that would be a pain to implement in C, but the reimplementation can still be a good learning experience. Once complete, repeat. You will learn far more like that than by trying to memorize man pages and doing programming exercises out of a book. I mean, did you try "man gcc"?

Of course, maybe the only way for you to realize this is by actually trying to memorize man pages and doing lots of programming exercises first. That's what it took in my case...

Re: 2013 Resolutions: a man page a day makes the newb go away

#29

I recommend starting with one task and adding to it as the year goes on. Learning the man pages could potentially make you a better programmer without reading K&R. Set K&R aside until February and achieve your first goal. It's important to change one behavior at a time and expect and plan for failure. Shoot for 5-6 days a week with 1 day review, or 3 with 2 days review, and just do what you feel with the extra day. R…

Thanks for the advice. I've already gone through K&R, but I just got the C Answer Book in the mail a couple months back and wanted to go through all the exercises again. I'll just have to really pace myself and not take in more information than I can handle in a single day.

[deleted]

Re: 2013 Resolutions: a man page a day makes the newb go away

#30

While I think it's a neat idea - I think in the end it's gunna be a case of in-one-ear out-the-other. For instance I read all of "The Unix Programming Environment" by Kernighan and Pike. It's FULL of useful information (in fact I'd argue it's way better than reading man pages) and after I was done I felt like I was 10 times the Linux man I was. However unless you're fighting with Linux a lot on a daily basis you quic…

This is why I try to focus on books with exercises and force myself to finish all the exercises - "Thinking in C++" (volumes 1 and 2) was especially good for this. If nothing else, typing in examples helps. Also, try slowing down and forcing yourself to think of better/alternate ways to do something. Just having read the docs, your mind will be more open to using different options, and by forcing yourself to do it di…

"Don't just read it; fight it! Ask your own questions, look for your own examples, discover your own proofs. Is the hypothesis necessary? Is the converse true? What happens in the classical special case? What about the degenerate cases? Where does the proof use the hypothesis?"
Post reply on HN