... compared with the random office noises around you, a reliable predictable set of stimuli is easier to tune out. Music is almost white noise when contrasted with folks taking loud phone calls about medical problems, unattended phones ringing at their desks, and so on.
Here! Here!
And it is doubly important when you're working in a bullpen with a bunch of over-caffeinated, Asperger-ish software engineers.
Seems I'm a bit late to the party, but my youngest is going through this process right now so I have lots of info.
I'm assuming that by "camp" you really mean "going to cool classes filled with lots of nerds and maybe even some cute girls." If that is the case, then you probably won't find any "camp" that does it. What you need is a summer program, likely run by a top 100 US college/university.
A large number of them offer high school programs during the summer. Some of them give you college credits (way cool!), while others don't. At 15yo, I think you should focus on finding a good program before considering whether credits are give. If you were older, I'd place a higher priority on the credits but you have time to get those.
All of these programs have competitive admission. That means you have to apply and be accepted. Many offer scholarships. Deadlines for them are in the next couple of months so you need to get a move on.
These programs widely vary in nature so be sure to do your research. Here are some examples that I happen to be familiar with (not recommending them, I can just describe them without researching them). Here is a comparison of two programs. Both provide on-campus housing with other high-school program students, and lots of evening and weekend social activities. The BU program is fairly typical while the Stanford one is rather unique.
- Boston University: Wide array of subjects. You take regular classes with other BU summer students (eg: you could be the only high school student in a class of 40 students). Must take ~8 credits (2 classes) for the ~6-week program.
- Stanford University: Has a program similar to BU's but also offers a series of 2-week, non-credit program. You take one class and are given a written appraisal when done. If the appraisal is good, it can be used for college admissions. The class has about 15~40 students, all in the same program. You live in a small dorm that only houses your classmates and your class's teaching assistants. Basically, you think about one subject, 24x7, for the two weeks. There's a formal lecture in the morning, taught by a full faculty member and then the afternoon is small groups and individual work done in your dorm (remember your teaching assistants are living with in your dorm). Looks like a wonderful 2-week geekfest. I wish they took people my age:-) They only offer about a dozen programs. I think this year they are offering several computer science ones (eg; AI) and all of them require some degree of programming skill. I think you spend most of your time with your classmates so if female company is important to you, you may want to contact the school to find out about the typical male-to-female ratios. While they may not be able to give you exact numbers, they will have good estimates as colleges carefully track these stats.
Something like 90% of the top 100 universities have programs like BU's. My son went to BU last year and simply loved it. The Stanford program is the only one of its kind that I am aware of.
All of these programs really like taking non-American students as they like to brag about how many countries were represented in their summer program for the previous year. While you still need to apply to these programs, being non-American will likely give you a bit of a boost.
First, Anonymous Coward, I think you adding your personal experience to this thread has added a refreshing breath of reality.
I'd like to take a minute and summarize the problems that have been mentioned and add one of my own:
Different keyboards: Others have mentioned it but I'm probably a more drastic difference between the keyboards than most. I have a laptop that I use frequently at home and when I'm on the road and a Comfort Keyboard at work. I'm sure I never type my password the same way on those two.
One handed typing: You mentioned an a broken hand although others have mentioned eating an apple or holding something. The system will certainly not handle those one-off one-handed typing.
Drunken coder: Besides being drunken (which you might argue that not allowing a drunken coder to login is a good thing), there is also a tired coder or a coder who spent too much time playing golf over the weekend and has a blister on their hand. Certainly the security question fall-back will be needed there.
CTS: I don't think anyone has mentioned carpal tunnel syndrome but I have a pretty significant case of it. I have daily symptoms (this explains the Comfort Keyboard - it helps loads). My typing speed and rhythm vary from day to day - even hour to hour - depending on my current symptoms. I don't think a system like this will ever work for me.
Just because there are situations where a strategy will now work doesn't mean the idea as a whole is bad. As long as there are means to work around the difficulties (eg: the ability to disable for a user or ask security questions as a second means of authentication) it seems good. Even if it means that some users have lower security than others. If you can increase security for 90% or 95% of the users it seems like a big improvement.
At the risk of tooting my own horn, I blogged about similar material about a week before the Dark Reading publication. My blog focused more on the PR foul-ups that companies tend to make and ways to prevent those foul-ups rather than the technical response. It was based off of a recent Google vulnerability that got publicly posted as ?revenge? by the vulnerability discover who was unhappy about having not gotten enough credit for previously reported Google vulnerabilities.
Neil Smithline
BEA WebLogic Security Architect
When we got Mindstorms, my 9 year old, having seen his older brother use one at a friend's, tore into it. After getting a feel for it I challenged him to make it bounce into walls and turn directions when it did. He worked on this and got it going with a bit of help needed to figure up that the bot had to back up to clear the wall when it turned. So far good - but limited.
Then I stepped him through coding up two new versions of the program, one that used a MyBlock subroutine for the inner for-loop and one that used an event handler. I asked him which of the three progams he liked better and why. We discussed the differences and similarities of the three programs as well as the aesthetics of each.
So, while I must agree that there are limitations to the BLOCKS programming interface, I think they are minor when viewed in the context of how much BLOCKS has to teach. At some point in time I suspect the BLOCKS interface is going to bog him down (he's trying to write something to clean up empty soda cans now - that should be a challenge) and he'll need to upgrade to NQC, right now I think he still has has plenty of learning and fun left in it.
I think advance notification is a stickier point than you make out. It becomes very difficult to determine set of users should be on the privileged "early notification" list and which shouldn't. I would imagine if I was a user not on the early notification list I'd be pretty unhappy about it.
Also, how do you ensure that a hacker doesn't get themselves on the early notification list? That would give them warning about a vulnerability even before the system maintainers found out about it.
In my mind, speedy and universal notification seems the clearest path.
I just went on an online job hunt and found that it was hard going, at first. Email sent in, no reply or only an automated reply. After a few whirls at this I changed my game plan. I reformulated my plan around a few facts. First, I was looking for a geek job and knew that managers that tended to hire geeks didn't worry so much about what jobs they have req's for. If they find a good person, they hire them one way or the other. The second fact was that submitting resumes to the HR department is useless. Instead, I sent the email directly to the person in charge of hiring. In small companies (the only type I was looking at) the Director of Engineering is usually listed on the web site so figuring up who to send the email to is easy. (See below for how to guess email addresses from people's names.)
With this in mind, I picked the companies I was most interseted in and wrote a cover letter and included two copies of my resume with it. One as an HTML attachment (just say no to MS and.doc) and the other as straight text, copy-and-pasted into my email. My general goal was to get their attention, do a quick sell of myself and then tell them I wouldn't be stalking them if they didn't decide to hire me on the spot. It seemed pretty effective. I got a couple of phone interviews and a job out of the strategy. I've included an editted version of such a cover letter below.
Neil
PS: A last detail to mention is that once you know who to send the email to guessing their email is usually simple. "John Doe" almost certainly has an email of jdoe, johnd, john.doe, or john_doe. You should send the resume to each one and wait to see if it bounces because some companies give individuals multiple email addresses and you don't want to bombard someone with 4 copies of your resume by guessing all 4 at once and having them all go through.
=========== Sample cover letter ============
John,
I am a senior engineer/architect/project lead who has recently become very excited about the possibility of working for XYZ. I'm concerned that if I just send a resume in via the web it is likely to get lost in HR so I thought I'd try this more direct approach.
There are several reasons I'm so attracted to XYZ. First, and most importantly, I'm looking to work in a dynamic, high paced, exciting environment with bright individuals. I was told that XYZ meets these by a director at ABC. (I think the quote was "Those people at XYZ seem to know what they are doing." which I considered to be a high complement considering the source.) Second, I've been doing web applications (both applets and servlets) for the last 18 months and want to continue working on web related projects. I'm quite excited by the challenges and excitement of working on the new technologies. Third, my 2 1/2+ years of Java programming have made me a real Java fan and I want to continue working with the language. Lastly, I'm looking for a small company where I can make a difference. I want a to work at a company that could be my home for years to come. I'm hoping that XYZ might be such a company.
I'd love a chance to talk with you or someone else at XYZ about a job opportunity. Even if you do not have something that seems appropriate for me now but might sometime in the future I hope you'll contact me so we can discuss it. I won't send you any further unsolicited emails so if you are not interested, this can be the end of our contact.
... compared with the random office noises around you, a reliable predictable set of stimuli is easier to tune out. Music is almost white noise when contrasted with folks taking loud phone calls about medical problems, unattended phones ringing at their desks, and so on.
Here! Here!
And it is doubly important when you're working in a bullpen with a bunch of over-caffeinated, Asperger-ish software engineers.
Seems I'm a bit late to the party, but my youngest is going through this process right now so I have lots of info.
I'm assuming that by "camp" you really mean "going to cool classes filled with lots of nerds and maybe even some cute girls." If that is the case, then you probably won't find any "camp" that does it. What you need is a summer program, likely run by a top 100 US college/university.
A large number of them offer high school programs during the summer. Some of them give you college credits (way cool!), while others don't. At 15yo, I think you should focus on finding a good program before considering whether credits are give. If you were older, I'd place a higher priority on the credits but you have time to get those.
All of these programs have competitive admission. That means you have to apply and be accepted. Many offer scholarships. Deadlines for them are in the next couple of months so you need to get a move on.
These programs widely vary in nature so be sure to do your research. Here are some examples that I happen to be familiar with (not recommending them, I can just describe them without researching them). Here is a comparison of two programs. Both provide on-campus housing with other high-school program students, and lots of evening and weekend social activities. The BU program is fairly typical while the Stanford one is rather unique. :-) They only offer about a dozen programs. I think this year they are offering several computer science ones (eg; AI) and all of them require some degree of programming skill. I think you spend most of your time with your classmates so if female company is important to you, you may want to contact the school to find out about the typical male-to-female ratios. While they may not be able to give you exact numbers, they will have good estimates as colleges carefully track these stats.
- Boston University: Wide array of subjects. You take regular classes with other BU summer students (eg: you could be the only high school student in a class of 40 students). Must take ~8 credits (2 classes) for the ~6-week program.
- Stanford University: Has a program similar to BU's but also offers a series of 2-week, non-credit program. You take one class and are given a written appraisal when done. If the appraisal is good, it can be used for college admissions. The class has about 15~40 students, all in the same program. You live in a small dorm that only houses your classmates and your class's teaching assistants. Basically, you think about one subject, 24x7, for the two weeks. There's a formal lecture in the morning, taught by a full faculty member and then the afternoon is small groups and individual work done in your dorm (remember your teaching assistants are living with in your dorm). Looks like a wonderful 2-week geekfest. I wish they took people my age
Something like 90% of the top 100 universities have programs like BU's. My son went to BU last year and simply loved it. The Stanford program is the only one of its kind that I am aware of.
All of these programs really like taking non-American students as they like to brag about how many countries were represented in their summer program for the previous year. While you still need to apply to these programs, being non-American will likely give you a bit of a boost.
Hope this helps,
Neil
PS: You can use http://colleges.usnews.rankingsandreviews.com/best-colleges/rankings/national-universities for the list of best colleges. I'm not sure it's the best list, but it is easy to find and good enough to point you at the summer programs.
I'd like to take a minute and summarize the problems that have been mentioned and add one of my own:
- Different keyboards: Others have mentioned it but I'm probably a more drastic difference between the keyboards than most. I have a laptop that I use frequently at home and when I'm on the road and a Comfort Keyboard at work. I'm sure I never type my password the same way on those two.
- One handed typing: You mentioned an a broken hand although others have mentioned eating an apple or holding something. The system will certainly not handle those one-off one-handed typing.
- Drunken coder: Besides being drunken (which you might argue that not allowing a drunken coder to login is a good thing), there is also a tired coder or a coder who spent too much time playing golf over the weekend and has a blister on their hand. Certainly the security question fall-back will be needed there.
- CTS: I don't think anyone has mentioned carpal tunnel syndrome but I have a pretty significant case of it. I have daily symptoms (this explains the Comfort Keyboard - it helps loads). My typing speed and rhythm vary from day to day - even hour to hour - depending on my current symptoms. I don't think a system like this will ever work for me.
Just because there are situations where a strategy will now work doesn't mean the idea as a whole is bad. As long as there are means to work around the difficulties (eg: the ability to disable for a user or ask security questions as a second means of authentication) it seems good. Even if it means that some users have lower security than others. If you can increase security for 90% or 95% of the users it seems like a big improvement.At the risk of tooting my own horn, I blogged about similar material about a week before the Dark Reading publication. My blog focused more on the PR foul-ups that companies tend to make and ways to prevent those foul-ups rather than the technical response. It was based off of a recent Google vulnerability that got publicly posted as ?revenge? by the vulnerability discover who was unhappy about having not gotten enough credit for previously reported Google vulnerabilities. Neil Smithline BEA WebLogic Security Architect
When we got Mindstorms, my 9 year old, having seen his older brother use one at a friend's, tore into it. After getting a feel for it I challenged him to make it bounce into walls and turn directions when it did. He worked on this and got it going with a bit of help needed to figure up that the bot had to back up to clear the wall when it turned. So far good - but limited.
Then I stepped him through coding up two new versions of the program, one that used a MyBlock subroutine for the inner for-loop and one that used an event handler. I asked him which of the three progams he liked better and why. We discussed the differences and similarities of the three programs as well as the aesthetics of each.
So, while I must agree that there are limitations to the BLOCKS programming interface, I think they are minor when viewed in the context of how much BLOCKS has to teach. At some point in time I suspect the BLOCKS interface is going to bog him down (he's trying to write something to clean up empty soda cans now - that should be a challenge) and he'll need to upgrade to NQC, right now I think he still has has plenty of learning and fun left in it.
I think advance notification is a stickier point than you make out. It becomes very difficult to determine set of users should be on the privileged "early notification" list and which shouldn't. I would imagine if I was a user not on the early notification list I'd be pretty unhappy about it.
Also, how do you ensure that a hacker doesn't get themselves on the early notification list? That would give them warning about a vulnerability even before the system maintainers found out about it.
In my mind, speedy and universal notification seems the clearest path.
I just went on an online job hunt and found that it was hard going, at first. Email sent in, no reply or only an automated reply. After a few whirls at this I changed my game plan. I reformulated my plan around a few facts. First, I was looking for a geek job and knew that managers that tended to hire geeks didn't worry so much about what jobs they have req's for. If they find a good person, they hire them one way or the other. The second fact was that submitting resumes to the HR department is useless. Instead, I sent the email directly to the person in charge of hiring. In small companies (the only type I was looking at) the Director of Engineering is usually listed on the web site so figuring up who to send the email to is easy. (See below for how to guess email addresses from people's names.)
.doc) and the other as straight text, copy-and-pasted into my email. My general goal was to get their attention, do a quick sell of myself and then tell them I wouldn't be stalking them if they didn't decide to hire me on the spot. It seemed pretty effective. I got a couple of phone interviews and a job out of the strategy. I've included an editted version of such a cover letter below.
With this in mind, I picked the companies I was most interseted in and wrote a cover letter and included two copies of my resume with it. One as an HTML attachment (just say no to MS and
Neil
PS: A last detail to mention is that once you know who to send the email to guessing their email is usually simple. "John Doe" almost certainly has an email of jdoe, johnd, john.doe, or john_doe. You should send the resume to each one and wait to see if it bounces because some companies give individuals multiple email addresses and you don't want to bombard someone with 4 copies of your resume by guessing all 4 at once and having them all go through.
=========== Sample cover letter ============
John,
I am a senior engineer/architect/project lead who has recently become very excited about the possibility of working for XYZ. I'm concerned that if I just send a resume in via the web it is likely to get lost in HR so I thought I'd try this more direct approach.
There are several reasons I'm so attracted to XYZ. First, and most importantly, I'm looking to work in a dynamic, high paced, exciting environment with bright individuals. I was told that XYZ meets these by a director at ABC. (I think the quote was "Those people at XYZ seem to know what they are doing." which I considered to be a high complement considering the source.) Second, I've been doing web applications (both applets and servlets) for the last 18 months and want to continue working on web related projects. I'm quite excited by the challenges and excitement of working on the new technologies. Third, my 2 1/2+ years of Java programming have made me a real Java fan and I want to continue working with the language. Lastly, I'm looking for a small company where I can make a difference. I want a to work at a company that could be my home for years to come. I'm hoping that XYZ might be such a company.
I'd love a chance to talk with you or someone else at XYZ about a job opportunity. Even if you do not have something that seems appropriate for me now but might sometime in the future I hope you'll contact me so we can discuss it. I won't send you any further unsolicited emails so if you are not interested, this can be the end of our contact.
Hoping to hear from you,
Joe