
Introduction to Competitive Programming Contests - fachoper
http://www.stanford.edu/class/cs97si/
======
rickdale
I participated in 3 programming contests in high school and 2 in college. I
was never the person that came up with the great solution and I really felt
like an inadequate programmer because these challenges used to make my brain
hurt. Anyways, in college when they were putting together the team my
professor approached me and asked if I would participate. When I told him I
didn't feel like I was good enough at coding to be a part of something like
that he shot that notion down, reflected on my personality and got me to sign
up. Never contributed less code to a team in my life, but never learned more
either. I took the role of lead motivator for the rest of the team and we
ended up placing top 5.

Point is, if you never tried a programming contest, do it. You dont have to be
a genius programmer to contribute to your team.

~~~
reledi
I've represented my university in the ACM-ICPC four times in a row and this
year I coached. I consider myself average at competitive coding (i.e. if I had
a team that consisted of my clones, we would not be good enough to make top 30
in a difficult region). I participate to learn (both algorithms and coding)
and because I enjoy it. A side benefit is that I'm a quicker problem solver
than when I started.

Every year I try to recruit students. The most common reply is along the lines
of "I'm not good enough". To which I reply "You compete to learn, you'll get
better!". Doesn't work though, the best strategy is to have an authority
figure (e.g. professor) ask students to compete.

edit: This collection of resources I put together may be of interest to some.
<https://github.com/BrockCSC/acm-icpc/wiki>

------
netvarun
I took a similar course at the National University of Singapore called
'Competitive Programming'[1] taught by Dr Steven Halim. It probably has to be
one of the most fun courses I took at uni. I didn't really learn much theory
since most of the content is already covered in a standard algos course, which
was one of the pre-req. But I think my programming and problem solving skills
went up a notch. Our assignments were basically on solving problems from the
UVA Online Judge[2]. We had two competitions for the mid-terms and finals.
Each had an individual component and a team component that run on a custom
grading server.

[1] <https://sites.google.com/site/stevenhalim/> [2]
<http://uva.onlinejudge.org/>

------
ttttttwwwww
I would say if Jaehyun does not qualify, I cannot think of another one who
does

------
macalicious
Just look at his CV[0]. It is just amazing what Park has accomplished with
such young age.

[0]: <http://www.stanford.edu/~liszt90/>

------
mitchi
This bastard is skipping his master thesis, going straight to the phd. I
thought only psychologists and doctors were allowed to do that :)

<\- some guy finishing his master thesis.

~~~
barry-cotter
That's the standard way of doing things in the UK and the former British
Empire. Go straight from doing a Bachelor's, with coursework to doing
research. He probably did the Masters programme requirements while technically
an undergrad. The other interpretation is that he's part of the Ph.D.
programme but he's a Ph.D. student (still doing coursework) rather than a
Ph.D. candidate (gotta finish up that research and write papers/a thesis.)

------
Gilly_LDN
It's only C/C++/Java :(

I think I will solve them by myself for myself in Perl.

------
b0b0b0b
There's some good stuff here too: <http://www.cs.sunysb.edu/~skiena/392/>

------
billyjobob
looks like the course lecturer was still an undergrad student at the time he
lectured this course. I wonder if that is common at Stanford or whether he is
a Doogie Howser style child prodigy.

~~~
anonymoushn
This is not common, Jaehyun Park is just a genius.

~~~
thewarrior
Hes a musical prodigy as well !

------
kummo666
Is it an online course? I can't find the way to enroll in.

