views:

681

answers:

18

College students are bereft of any web development throughout the 4 years in school, are often beat down with more Big-Oh notation than seems ever necessary, and are kept hidden from the fun (and unseen) corners of what is computer programming.

stackoverflow, I'd like to ask, what do you think the most important thing (whether it be a skill, idea, or programming language) is for a 20 year old college student to pick up in a summer that is filled with monotonous summer school classes?

+3  A: 

Take a look at where you see yourself working in a couple years and study up on what they're doing.

If you're 2+ years out, stay high-level. Look into databases, threading, etc.

If you're graduating in the next 18 months or so, I'd dive into the tech that the company you are interested in is using (C#, SQL Server, Ruby, etc.).


Or enjoy your summer with things that are hard to do as a professional (travel, vacation, etc.).

Michael Haren
+14  A: 

Just enjoy your summer vacation ... you will miss them when they are gone. :)

JP Alioto
+1, couldn't agree more.
Brandon
same here! But if you feel compelled to NOT sit in the sun and drink beer, learn C# and ASP.NET, then SharePoint.
Colin
Or, like Steve Yegge, drink wine and blog about functional programming (or read up on Haskell if you don't know enough to blog about it).
Jared Updike
A: 

Software Development process such as Agile, Scrums etc. I'd also try to learn some design patterns a bit. Programming languages evolve and come and go, but the fundamentals of software engineering and design stay the same.

Ranjith
+9  A: 

Drink lots of beer, and practice plenty of "I/O" with the ladies.

Jason Watts
+1  A: 

A book? ;)

I have always enjoyed my internships, Google's SOC might still be accepting? Look at some open source projects maybe?

I seriously think enjoy the summer as JP says and just read a core programming book in your spare time.

EDIT: Or what jason says, always good to catch a bit of the real world every now and again

gav
A: 

Here's my short list of things I wish I had learned about web dev while I was in college studying Comp Sci:

  • Source version control
  • Apache Configuration
  • Database Design
  • mySQL optimization
  • Code hardening
Pro777
+8  A: 

"Pick up" women. It's your last chance.

rpflo
Many commenters seem to assume that OP is a guy. How do they all no that OP is not a gorgeous breath-taking girl who can easily get all the dates she wants, but is also looking into learning some more programming than what they teach at Uni?
yairchu
Yeah. I'd have written "Pick up members of the appropriate sex." Not all guys are heterosexual, either.
David Thornley
Graduated in Economics, it's a habit to toss the outliers in a dataset :P
rpflo
how about we all just agree that the PC way of saying this is really really boring and no one wants to read it? "You, as in, the person you, who is not tied to any one particular gender group, should spend your summer looking for another biological entity who is also not of any particular gender group to share long walks on the beach, code review, and possibly sexually stimulating activities" ...err, even that doesn't cover all the possibilities.
Mark
Because developers validate their data, daggummit!
rpflo
+1  A: 

Learn a new language. Ruby, C#, F#, Haskell, Java, Python whatever it may be just pick one and try and learn it. The idea of learning a new language ever year is so valuable that it's something you want to start doing early.

ShaneC
1 every year, at the _very_ least!
Javier
+1  A: 

Create a simple application for a popular platform such as Facebook, iPhone, Android... etc. The experience of learning how to interface with a third party product and use the provided API is priceless. Especially if you begin to attempt to perform complex operations that require you to perform some kind of research regarding existing solutions/work-arounds or known bugs.

Tim Bender
+1  A: 

I spent my summers doing small-scale freelance projects on sites like rentacoder.com and scriptlance.com. It gave me some extra money while I did something I enjoyed.

It gave me a lot of exposure to different technologies I didn't really think of trying myself, and it gave me actual motivation to follow through with learning them (you know, since someone is paying you). Have to stick to easy stuff though, since if you aren't concrete on the technologies you can get in over your head real quick. I have had luck telling buyers "Im a college student, and i'm eager to learn this" - some are very cool with that, and some way absolutely not, which is understandable.

It also gives you the experience of working with a large variety of people, and builds your ability to communicate technically when you aren't face to face with someone.

Lastly, each of these sites allows the people you work with to leave feedback about you and rate your performance. A list of stellar reviews on freelancing sites to show potential employers not only showcases your motivation, but also the fact that you can work with people.

Matt
+4  A: 

Do some travelling and see the world. It will often impress an prospective employer more than learning another programming language and its much harder to do once you've entered the world of work.

Being a good developer is a skill that takes years to hone, taking a few months out to broaden your horizons won't do you any harm.

pjbelf
+1  A: 

My advice would be to not study technologies just for the sake of learning them. Technologies and programming languages come and go, but valuable skills are built by doing something for real.

Some ideas:

Software project of your own

Pick something you like doing, like maybe a hobby (photography, writing, drawing, bicycles), come up with a software idea that will help the community in that area and build it. It could become a business later and it's going to be a source of inspiration for sure.

Start an open source project

I started RapidSVN (at that time I named it Visual Subversion) when I was in college. Subversion was in alpha at that time and it was a continuous challenge to keep up with their code. Now I regret a bit dropping the project due to lack of time because of work.

Join an open source project

Apply for an internship

Paul
A: 

If you've finished your sophomore year, get an internship/co-op. You'll learn so much from 40 hours/week of work that you won't believe it, and it's critical to set yourself apart with more experience. Helps you get all of that bad code out of your system.

Andrew Coleson
A: 

Get yourself a web server for 10 bucks or so a month, or use your own computer, and learn some PHP, JavaScript. Drupal is way fun and there's a lot of free modules and skins for it. Google even helped fund some of it supposedly.

Or go the Microsoft route (usually more money) and pick up some C#.

Either way make your own personal web site. That's how I'd get started.

MattK311
A: 

Best thing to pick up as a 20 year old student would be a hot date! :-)

On the downside, if you're too careless, you could pick up some contagious disease if you pick the wrong date so remember: dating is like using a computer: make sure you're protected. :-)

Workshop Alex
A: 

What's actually involved in Getting Stuff Done.

The only way to learn this is to get some real work. Properly paid for preference, but internship if you have to, or contribute to a real project (perhaps as a tester). Even build your mate's band's website in return for beer, although there you'll mostly be re-inventing wonky wheels because you have nobody to learn from directly.

But seriously consider whether you have something better to do. I don't know about the US, maybe college students are expected to do internships, but here in the UK graduates are hired as "smart, probably no idea what you're letting yourself in for". Employers know what's taught on a CS degree, and expect to teach you the rest on the job, just like they did the graduate hires last year. What you can do if you know how Stuff Gets Done, is be professional and easier to work with, as well as smart.

Steve Jessop
A: 

I suggest trying to find a company that is willing to hire an intern for a few months. I hired an intern and this is working out great for both parties. He is learning how to develop and more importantly, how to interact in the business/real world.

Cody C
At 20, you have (sadly) probably 40-45 more years to work. Travel. See things. Drink and Eat Plenty. Meet People. Read. Knowledge comes in all forms and life will take you down many roads, some non-technical anyways
Cody C
A: 

As I am just finishing college and heading to university next year I have been asking myself the same thing for the past few weeks. I have come to the conclusion that whatever I will need to do at university I can learn while there and that I should do something for myself during the break.

I have settled on finding the time to read a few books on my "to read" list, get out on some bike rides, get involved with an open source project, start running again, and begin to learn python. Sure there are many other things I would like to do and sure I may not even get them all done, but hey its summer, go and enjoy it while you can and do something for yourself while you can.

Bassetts