
Ask HN: As a CS student with free time, what can I do to further prospects? - iobt92
Hi all,<p>basically the title says it all. I&#x27;m currently a CS student working towards my Bachelor&#x27;s. Since I have plenty of free time (for the most part), I was thinking of picking up other skills&#x2F;domains to further my prospects of acquiring an internship&#x2F;job once I graduate.<p>I was thinking along the lines of:<p><pre><code>  1. Learning about other topics such as security, distributed systems, graphics which I may not have the chance to formally take a course on (given limited elective choices).

  2. Developing expertise in a particular development &#x27;domain&#x27;, e.g. web development, mobile development through various side projects.
</code></pre>
Otherwise, I was thinking of devoting the extra time to going more in-depth than what the module may demand i.e. dive into the textbooks&#x2F;relevant material and cover content beyond what may be officially covered by the course, but I am not sure to what ends this will help to improve my skillset. What do you guys think?
======
austincheney
* If you want to get better with security study for the CISSP and read security literature. Right now I am learning how to produce certificates and trust authorities from openSSL and its a huge pain in the ass even just for localhost.

* If you want to get better at programming write an ambitious open source application. With enough experience you will realize that any given application is just some variable mix of instructions and data structures.

* If you want to be a technical expert in the real world get better at writing. Spending time writing original technical documentation, revise it, and then write some more. Writing ability is what identifies the adults in the room.

* Web development is a contentious subject. If you want to be employable learn a framework. Memorize the framework's API, become familiar with the tools and conventions, and tap into the framework's development community. You can fail at everything else.

If you want to be a strong web developer and make more money spend the minimal
amount of time on a popular framework to be minimally employable. Spend the
rest of your time focusing on code portability, performance, and accessibility
using conventions directly gleamed from the standards. Know how to quickly
build a web application with confidence without a framework.

------
rooam-dev
Imho the "otherwise" option should be on the top of your list.

Tools/best practices come and go, can be learned quickly with so much
information out there.

That said, be curious and try different things and you will know what you
like. Passion amplifies learning by a magnitude.

All of the above is imho, that I would've told younger myself.

~~~
iobt92
Sure, most definitely. Although I hope I wasn't giving off the illusion of
neglecting my core topics, I certainly wasn't planning on that. I was just
thinking that perhaps some of the topics present a sort of diminishing 'rate
of return', since going too in-depth past a certain point may not be too
useful/enlightening(?). But this may just be purely ignorant thinking on my
part, since I have not fully grasped the important parts of each commonly
taught CS topic yet.

------
brudgers
Meet people. Relationships are more important than specific skills. They are
also harder to develop and maintain. Good luck.

