Ask Slashdot: What To Do Before College?
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?"
Pick an open source project that you find interesting and get involved in it. It will give you experience in coding, working with people, and look good to the type of employers you would probably want to get hired by.
Well, I can remember that summer and I spent it working in the fields, bailing hay, framing houses and working as a busboy/waiter/bartender at night. But that was just because that was the best way for me to earn extra cash before college. It was made clear to me that I was expected to pay for all of my schooling just like everyone else in my family and, growing up under the poverty line, that made sense. So if you have any legal way to acquire extra capital then that's what I would do. Bagging groceries isn't going to help your coding abilities but if it gives you enough breathing room to prevent a loan shark from taking advantage of you in college, I'd take that option.
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.
My work here is dung.
I know you're looking for work stuff to do, but this is most likely the last real break you're going to have. Because it's classes & internships & part-time jobs & everything else. Take some down time to just relax...read a book...chase some girls/guys/whatever You're only young once
This is probably the only time in your life you can have some fun, guilt free. Don't forget to take advantage of this.
I'm doing the same thing as you, minus being able to get a job beforehand. What I'm going to do this summer is start learning. There's so much on the internet to learn that you can be way ahead of everyone and make college a lot easier. Of course since you said you have a job programming java, you're clearly ahead of me, but there's always more to learn and it's a great opportunity i you can get your hands on an internship.
If you don't need the money, enjoy your summer! Spend time doing hobbies, volunteer opportunities, working on open source projects [programming]. Worry about education and internships when you get to college.
It'll be A LOT easier to get employed after your sophomore year. You should try after Freshmen year, but no guarantee it'll happen.
Maybe take a general ed class that will transfer at your local community college if you must do "something productive"
This summer marks the end of your childhood.
I swear to God...I swear to God! That is NOT how you treat your human!
Why not work on an Android App of some kind? Download the Android SDK! It's free, the Eclipse development environment is free, and the SDK even has a really nice emulator so you can run your Apps even if you don't have an Android phone.
"False hope is why we'll never run out of natural resources!" - Lewis Black
two chicks at the same time, dude
I would suggest relaxing. You're not going to have many more summers like this and you might as well enjoy it. This is especially true since you just graduated - most of your high school friends are probably still around, you may not get the chance to see them again.
Go out and get laid FFS.
if you have an itch, scratch it. Work on a personal project - something that bugs you or that you can improve. Personal accomplishments like that can make a huge difference come job interview time.
Get a working holiday visa. http://www.immigration.govt.nz/migrant/stream/work/workingholiday/unitedstatesofamericaworkingholidayscheme.htm
Go to New Zealand.
Enjoy the best year of your life.
Go home.
Start your career.
Write something. Participate in the Liberated Pixel Cup http://lpc.opengameart.org/ or write a game on your own. I just wrote one and it was fun: http://magigames.org/runestone_defense.html
The best programmers learn on their own. They tinker at home. Don't rely on school to teach you everything, or even most things.
Or you could just party and drink and get laid. :)
I have bad news and good news for you.
The bad: if you haven't already found an internship by June, you're not going to find one. Most internship programs start screening and interviewing applicants around January, or even earlier. I've been in aerospace and commercial engineering work for 30 years and I've never seen a summer internship program that didn't already have their candidates in for interviews by March or April at the latest. And by the time the term ends, lodging and all the other logistics are already worked out.
The good news is that most intern programs are looking for college students, not HS Grads, so you have four or five more chances to qualify. Join the ACM and IEEE chapters at your school and let them know you want to apply for summer internships.
At this point I recommend two things, not mutually exclusive, both of which have essentially been mentioned before:
1) Find a project to work on... either FOSS or just a homebrew thing. Something small enough that you can finish so as to demonstrate your development skills. But also push the envelope and pick a project that will force you to learn something new... one or two minor things. And then document what you learned by writing a report; 2 or 3 pages will suffice.
2) Have fun. You're an entering freshman. You have no idea how little free time you're going to have come fall. I recommend you blow off some steam and go do some fun things you've always wanted to do. It's going to be at least four years before you have a chance to do that again. You will not be criticized for doing that.
I can see the fnords!
I agree, I really do, but many aren't providing any reasons why:
1. No employer is going to care what you did the summer before you went to UG
2. The work leading up to the degree you learn at the end of your UG work may not challenge you at all. Working to "get ahead" may leave you frustrated and bewildered as to why you worked so hard.
3. School is just school. Just do it, enjoy it while you're there, get good grades, and get a job after you're done (or go on to advanced studies, whatever).
As for this summer, enjoy it. If that means writing code for fun or screwing around w/friends, do it. You'll be able to do that stuff in college too but in a much different way--especially if you want to do extremely well.
Good luck.
MIT open courseware. Take all the courses now. That way you can get ahead of the curve by leaning from the TOP professors instead of the second tier ones you will have elsewhere. IF you do good enough you could test out of many classes for course credit so you can be further ahead of the game.
Right now is the best time to be a teen before college. You have world class undergrad and graduate level stuff available to you for free. Eat all of it and ask for more.
Do not look at laser with remaining good eye.
Enjoy your summer, it will be one of your last. Travel, go camping, toss back a few beers, anything but work.
My father told me once, "You've got 40 years of working ahead of you, enjoy your youth. It's the one thing that we always wish we had more of."
My favorite summer was between high school and college, before everyone went off in different directions. Have some fun, travel, chase girls, go camping... whatever floats your boat. Spending your summer writing code, is not something that you'll look back at and say,
"Man... I wish I had spent July and August writing code instead of that time at the lake with my best friends and that blonde girl from two cabins away..."
The parent poster suggests you join the National Guard.
I have a friend with a masters in CS, was a highly respected engineer at Apple. He was a recreational helicopter pilot who always wanted to be a rescue pilot working for LifeFlight or a similar air ambulance organization. So he joined the National Guard to get flight hours and get rescue training for domestic disasters, which he felt was an OK trade for boot camp plus one weekend a month and two weeks a year.
He's in Afghanistan now.
-- Terry
Take any job. You aren't going to get a job doing what you want probably and that's ok. So if you want money, and work experience, take it where you can get it.
I did work summer after high school as a surveyor's assistant. Actually was a good job and I'd consider going in to surveying if I ever get sick of IT. Minimum wage stuff but hey, the work wasn't bad, it was a job, it was outside, and since I was living with my parents minimum wage meant plenty of toys.
It can help too because it is work experience. Something I can say, as someone who hires university students, is we'd like someone who this isn't their first job. We don't require it, but if it is down to you and someone with similar skills but work experience, we'll probably take them. Reason is some people have difficulty adjusting to the idea of regular work. So if a student has already had a job, they've overcome that. We'll take someone with more computer skills with no work experience, of course, just saying that if it comes down to a deciding factor, that's the side it'll come down on.
Then, in terms of getting in to IT/programming work, well look around on campus. Most universities hire a lot of student workers. The jobs are generally very flexible with regards to class time and you can often find ones that will let you do a whole lot if you show you are competent. I'll give students as much as they want and can handle.
Only thing I'll warn you is don't think you know everything, and don't think you'll get a senior level position. You'll get a student position, which generally don't pay that much (that's why universities like them), you'll be the low man on the totem poll, and the people you work for probably will know more than you. Just don't think you are going to come in and be top of the heap (we had a grad student that asked for a job, wanted to be an IT manager for a year until he graduated).
At any rate I'd say the parent's advice of "enjoy the summer" is a good one. You won't screw yourself or anything. But if you want a job, just be ok with a regular minimum wage job. In terms of more relevant work experience, look at it in university.
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.
Any person using FTFY or editing my postings agrees to a US$50.00 charge
Comment removed based on user account deletion
Girlfriend highly recommended. By the time you get out of college, most of the good ones will be taken and you'll have to wait for them to divorce the losers they married the first time.
Don't "further your career or education". Go do something else!
The summer I graduated from high school my parents lined up a job for me, working with computers for a small business, giving me a great opportunity to start building professional credentials. I appreciated it, but I turned it down. Instead a friend and I got on a plane, and set off on a 6-week tour of England, Wales, and Scotland, camping at caravan parks in a 1.5-man tent, and getting from place to place by bicycle and by train. It was an extraordinary experience. Some bad, some good, but I wouldn't trade it for anything.
There will be another summer next year, which you can spend working on cool programming projects or whatever, and there will be year after year and decade after decade in which you can do that sort of thing as much as you please. You have a whole lifetime of formal education and career ahead of you. But you will never have another entire summer in which you have entirely closed the book on one phase of your life, but the next phase is patiently waiting for you unopened, a few months off in the future. You have the freedom to do damn near anything you are capable of doing. This is a once-in-a-lifetime window of opportunity. Do something worthy of that.
http://alternatives.rzero.com/
> you'll have to wait for them to divorce the losers they married the first time.
And by then, they're used and out of warranty.
Pull my finger for my public key.
Pick something as far from programming as possible, and do that.
I was convinced from a very early age that I wanted to be a nuclear physicist (this was back before it was politically corrected into "high energy physics"). I learned everything I could about it, learned all the math, derived neutron numbers from information gleaned from "The Curve of Binding Energy", and basically absorbed information like a sponge.
Then I went to my first year of college (entering as a sophomore due to my AP credits), did well in the first couple of quarters of physic classes (started in at the junior level, since I was pretty advanced in physics already), and things were going great. Then I was visiting a lab, and saw my first microcomputer with a graphics card (a Terak 8510, as it turned out).
Now I'm a software engineer for Google, having worked previously for Apple and IBM.
I tripled in physics, math, and CS, and physics taught me an incredible amount about how to think about problem solving that I couldn't have achieved without studying an actual hard science, but I'm not working in the field by building bombs for TRW to balance on top of pencils of fire.
The point of this little autobiographical journey is that, even if you know what you want, you might not know what you want /more/, until you encounter it.
So set yourself up in a situation where you'll encounter something outside your comfort zone, and which is far away from your experience to date. You might find you hate it; you might find you love it, but either way, in doing that, you'll find out more about yourself and the world. And if you find something you hate, remember that you can do something you hate while looking for something else; a summer is long enough to sample up to half a dozen things you find that you hate.
If I had my summer between high school and college to do over, I'd probably try for the news room at a newspaper, an art studio co-op, a cruise ship, a CPA firm, a law firm, an airline, or randomly opening the yellow pages.
-- Terry
"So what is a high school graduate who wants to work as a programmer to do?"
Seek professional counseling. You know not of that which you think you desire.
8*)
Aah, change is good. -- Rafiki
Yeah, but it ain't easy. -- Simba
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
And end up as yet another under educated tech school grad. Bad advice. These guys do not know how to adapt because they've been taught how to do things by rote instead of by thinking, and they're taught the current techniques and fads which do not help when the times change or the job does not exactly match what was in the classroom. These train you for the sorts of jobs that are most easily outsourced or given to the lowest bidders. These schools very often are oriented towards students who could not get into a university and thus can be dumbed down; you won't get rigorous mathematics for instance. These are the worst places to be for someone who wants to work with computers or computer science as you'll be railroaded towards an IT services job.
As difficult as it may be to believe this, if you're poor and expecting to finance your education through a combination of grants, scholarships, and loans, working a summer job may be the worst decision you can make.
Things may have changed since my college days, and they may differ from state to state, but here is how my financial aid worked out.
New York State calculated financial aid eligibility taking the minimum income of the past 3 years. My sophomore year in high school I only got a part-time job and made about $800 all summer. I managed to save about half of it. My junior and senior years I worked almost full time in the summer and part-time during the year, and made about $3000-$4000 (this was at a time when minimum wage was $3.50/hr).
Freshman year in college, my aid paid for everything except books and activity fees (yes aid was more generous and costs were lower back then).
Sophomore year, my aid was reduced by $800 because of the earnings I'd made 3 years previously years and I had to take a student loan for that amount.
Junior year, my aid was reduced by about another $2200. I caught on to the pattern at that point. I was faced with the choice of quitting my part-time job right away and taking out a loan to pay expenses, or having to take an even bigger loan the next year. Remember, if I had not earned any money at all and just leeched off my parents, I would have come out of college debt-free.
So, my advice is, understand what your financial aid picture is going to be and how your earnings will affect it, before you rush out and get a job.
[Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
Find something wrong with it, and fix it. Or just enjoy the goddamn summer and go get some girls. Even if you fail, you will not regret in the future. But the "wasting my youth and summer" part... well.
Don't listen to all the stressed-out middle agers pining for a care-free high school summer. Save kicking around Europe for a time when your life is crazy and you need to decompress. You're young and fired up and ready to learn and grow. Seize that.
I had two jobs at my university the summer between high school and college. One was doing data analysis and writing software for the school's particle accelerator. The other was changing out rat cages in the medical labs. You can guess which one paid more. Both were valuable experience. I got to know my way around campus, I got to know some professors -- I even got an email address over the summer. NOBODY had email addresses back then! After changing the rat cages I'd sit in my boss's office and use his computer and connect to systems all over the world. I know it's hard to imagine, but that was a rare opportunity at one time.
Universities are gold mines of opportunities -- outside the classroom. Get a job - even if it's changing rat cages - and get to know people. If you keep quiet and do what you're told it'll be years before you're doing anything cutting edge. Seek out those opportunities now. Find the profs doing ground breaking work and change the batteries in their robots or something.
And yes, between working at the particle accelerator, another job at the med school, and learning my way around the fledgling internet, I still managed to go to the beach with my girlfriend a few times and go to a bunch of movies I can't remember now. So I had fun. You will too. But don't listen to the workaholics telling you this is the last glimmer of freedom you'll ever have so make the most of it. Take the opportunity to get a leg up on the rest of the incoming freshmen by catching the attention of some profs now. Even if it means cleaning rat cages.