Ask Slashdot: What To Do Before College? 335
First time accepted submitter MtownNaylor writes "I graduated high school two days ago and am currently enrolled to attend college for studying Computer Science. I spent last summer working as a contractor, programming in Java doing work for a single company. I am looking to further either my career, my education, or both this summer. The problem is that I have found it difficult to find summer employment or internships programming for a multitude of reasons (lack of opportunities, lack of experience, lack of degree.) So what is a high school graduate who wants to work as a programmer to do?"
Open Source (Score:5, Informative)
If Poor Acquire Capital, If Not ... (Score:5, Informative)
Now had my family been able to pay my way through and acquiring capital was not an urgent necessity, there still wouldn't have been any internships or jobs available for a programmer at my location. In this situation and knowing what I know now, I would have opted for other paths:
1. Approach an entity that doesn't have a lot of money (e.g. school, library, city council, county park, church, whatever) and ask them if they need anything improved or fixed IT-wise. You can take an off-the-shelf route like just reskinning phpBB for a library forum or implement a server for voting on new books to acquire or an announcement system for school closings or even a static calendar page for events. Maybe you build it from the ground up like new reservation system for people who want to reserve a book at the library before they drive 40 minutes to pick it up. If the facility likes it, they'll use it. If they don't, well at least you learned something. The thing is, you'll build experience working with real-ish requirements and even if it amounts to nothing you'll learn why. Aim for something simple to ensure success and try not to reinvent the wheel. Now-a-days with Rails' scaffold system, you can stand up CRUD apps in no time. I remember a lot of broken processes as a kid that I saw at Boy Scouts, parks, libraries, etc where a simple registration form would have saved a couple people a lot of work.
2. Contribute to open source. I'd shy away from starting your own open source project. That is actually difficult to do unless you know someone demanding it and then you're kind of being held to get it done. Anyone can check in a project to sourceforge or github (and they often do) but without users it quickly withers and dies. I'd suggest looking into an active project and seeing if you can understand the source code. If you can contribute, that's great. That's experience and that's something you can put on your resume -- even if it goes defunct by the time you graduate.
3. Copy last year's course pages for the beginning CS and Math classes you intend to take and start working through them. Seriously, I wish I had thought of this way back then and if they're still up for your college, grab them and start looking at the problems so you don't get a wake up call. My college required me to take four semesters of calc as a CS major and that was a harsh reality indeed. If you start working on a project now and it's great by the time you get to the course, your professor might ask you to become a TA for some extra cash. Sure, it's brown nosing but it also feels really good to be prepared.
Those two suggestions are assuming you don't need capital and there's no paying gig. If you don't like them, hell, just enjoy your summer -- when you succeed you'll be working 9 to 5 and I sorta wish I had spent more time at the pool, hanging out with friends, playing music with crappy bands, playing baseball with pickup groups, etc. Don't forget to live a little.
Take a break (Score:5, Informative)
Have some fun (Score:2, Informative)
This is probably the only time in your life you can have some fun, guilt free. Don't forget to take advantage of this.
Android SDK! (Score:5, Informative)
check out the college?? (Score:4, Informative)
If at all possible work out a map of your school with all the needed "waypoints" so that you do not waste time getting from class A to Class B. Bonus points if you can actually see some/all of your teachers.
oh and a bit of a tip as soon as you get your school email address start signing up for the various company school programs
DreamSpark is a keyword for the M$ stuff.
Re:Other option (Score:5, Informative)
>>>It won't be long before you won't be able to screw highschool girls anymore...get'em while they're still tight!
As my highschool friend says: "Wow..... creeper." Ooops I've said too much.
Re:Take a break (Score:4, Informative)
I would say that you should visit other countries. And I am not talking about Canada or Mexico. I mean seriously travel.
My experience is that people who have traveled and seen other countries are better able to handle unexpected situations and stress. Things that will be helpful when you are in a working environment and other situations later in life.
And it is so much fun at the same time. If possible take a year and work in another country at any odd job for a few weeks before going on the road again.
Maybe not right before college but certainly try to study abroad while in college. Either for a foreign language or your major, it is certainly worth it. Those were some of the best experiences I had during college.
Re:Join the Military - NOT (Score:5, Informative)
So he wanted to be trained and paid and give nothing in return? There's a group for people like that. It's called everyone, and we meet at the bar after work to discuss how life didn't work out like we wanted.
He was already a trained helicopter pilot; he wanted to make himself available to fill in for things like Hurricane Katrina while the full time military was off playing whack-a-mole with Al Qaeda. He was offering them a lot more than what he expected in exchange.
Make no mistake, this was a bait-and-switch based on the MOS (Military Occupational Specialty) he was contracted for when he signed up.
-- Terry