Live data from Hacker News

Advice to a college sophomore programmer

pchristensen.com

1–10 of 27 posts

Re: Advice to a college sophomore programmer

#2
Point 2 is somewhat of a difficult area on my opinion. When looking at programming books, I usually have the following process in mind:

* How in depth are the official docs? If you're going to read a book on a language, you need a way to validate the book's contents. How else will you be able to tell the book is not leading you down the wrong learning path? This also gives you a chance to check on if the language is right for you.

* How old is the book? If the book is talking about the language 5 years ago, chances are syntax and ways structuring your program (object oriented features may have gotten better for example) have changed. Make sure you have the most up to date edition, and complement it with checking the API docs. Well written API docs will generally indicate if a way of doing something has changed, or will no longer be supported.

* Look at the author of the book, and see how close they are to the community of the programming language in question. Are they the creator? Contributor? Someone else?

* What is the book trying to achieve? Some great books expect you to have basic knowledge of the language, or some other specific concept (MVC for example). Make sure you know what you're getting into. Some books also act as "desk references" that could be potentially replaced by more up to date API docs on the language's website.

There's probably much more that can be added to the list, but I think these provide a basic sanity check.

Re: Advice to a college sophomore programmer

#3
I wish someone had given me this useful advice back when I was a sophomore.. oh wait, thanks! It's really good advice, IMHO.

With regards to the first point...

Most companies here (Pakistan) are in the web/mobile app development business or developing CRUD apps for clients. While I don't necessarily think that's bad, I'd prefer doing something more innovative or interesting, possibly AI, data mining, or just something that's good on the social/humanitarian front.

What I'm wondering is, how can someone like me have a chance of getting an internship at a place doing something really useful or innovative? Getting a visa would be difficult for just an internship.

Re: Advice to a college sophomore programmer

#4
post #2

Point 2 is somewhat of a difficult area on my opinion. When looking at programming books, I usually have the following process in mind: * How in depth are the official docs? If you're going to read a book on a language, you need a way to validate the book's contents. How else will you be able to tell the book is not leading you down the wrong learning path? This also gives you a chance to check on if the language is…

It depends on the topic of the book, of course, but some of the best computer science books I've read were written in the 70s and 80s (SICP, Dragon Book, etc.). The C programming language, one of the most popular languages in use today, has not changed much since the 80s.

Re: Advice to a college sophomore programmer

#5

I wish someone had given me this useful advice back when I was a sophomore.. oh wait, thanks! It's really good advice, IMHO. With regards to the first point... Most companies here (Pakistan) are in the web/mobile app development business or developing CRUD apps for clients. While I don't necessarily think that's bad, I'd prefer doing something more innovative or interesting, possibly AI, data mining, or just somethin…

Yeah, the US visa system sucks. Maybe there are some countries in Europe that are more sane about it? Otherwise, Google Summer of Code is probably a good bet for doing something worthwhile without one.

Re: Advice to a college sophomore programmer

#6
post #2

Point 2 is somewhat of a difficult area on my opinion. When looking at programming books, I usually have the following process in mind: * How in depth are the official docs? If you're going to read a book on a language, you need a way to validate the book's contents. How else will you be able to tell the book is not leading you down the wrong learning path? This also gives you a chance to check on if the language is…

Great point, I added an edit to that effect.

How do you tell the good tech books from the bad? Ask someone who is good at that technology. Too shy? O'Reilly and Pragmatic Programmer books are generally good, and you can often get good recommendations by searching on StackOverflow or SearchYC (http://searchyc.com/rails+book).

Re: Advice to a college sophomore programmer

#7
I would advise that instead of reading SICP, you should just take the class:

http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussma...

Similarly, using available online courses to get through the crunchier topics (compilers, theory of computation, garbage collection, artificial intelligence, etc.) have always been more beneficial to me than just straight trying to read a book on my own.

Re: Advice to a college sophomore programmer

#8

I wish someone had given me this useful advice back when I was a sophomore.. oh wait, thanks! It's really good advice, IMHO. With regards to the first point... Most companies here (Pakistan) are in the web/mobile app development business or developing CRUD apps for clients. While I don't necessarily think that's bad, I'd prefer doing something more innovative or interesting, possibly AI, data mining, or just somethin…

Yeah, the US visa system sucks. Maybe there are some countries in Europe that are more sane about it? Otherwise, Google Summer of Code is probably a good bet for doing something worthwhile without one.

I think a company wouldn't want to go through the bother of issuing a visa just for an intern.

The problem with GSoC is that it doesn't count as an internship for companies that need one. Or meeting my university's requirement for an internship, although that requirement could be fought against.

Re: Advice to a college sophomore programmer

#9
It's refreshing to see an article like this not contain points like "My CS degree was pretty useless and everything I need for my job I learned on my own"... While college isn't for everyone, much of the "developer approach" that I use to learning a language (whether it be from the docs/blogs/book) are skills I learned from my CS degree.

Re: Advice to a college sophomore programmer

#10

Earlier quoted context omitted.

Yeah, the US visa system sucks. Maybe there are some countries in Europe that are more sane about it? Otherwise, Google Summer of Code is probably a good bet for doing something worthwhile without one.

I think a company wouldn't want to go through the bother of issuing a visa just for an intern. The problem with GSoC is that it doesn't count as an internship for companies that need one. Or meeting my university's requirement for an internship, although that requirement could be fought against.

Try to avoid companies that would value a run-of-the-mill internship over a highly productive GSoC. :)

On the subject of visas: I know that in the US, if you come on a student visa, there are certain allowances for summer internships in technical fields. Your local consulate should know the details.

Post reply on HN