Chat transcript from TCHS SRM 58: Spotlight Session with SnapDragon
|
glue2glee | SnapDragon: why didnt you ever appeared in IOI? |
SnapDragon | cpphamza: Yo |
SnapDragon | glue2glee: Canada wasn't really organized back when I was in high school |
SnapDragon | glue2glee: We fielded an IOI team, but it was only from the Eastern provinces. I never had a chance to try out. |
tsalman | SnapDragon: hi :) |
SnapDragon | 'lo all |
tsalman | SnapDragon: can you describe the training you had during your university ? |
tsalman | SnapDragon: in your interview, you said that extensive training gave u all |
SnapDragon | tsalman: Sure, but let's wait till more people are here :) |
tsalman | SnapDragon: skills u have now :-) |
cpphamza | SnapDragon: I've a question, What skills do you think one needs to be like high red in topcoder, i mean good knowledge of algorithms along with good coding skills only grants me and many people i know to be yellow here! |
tsalman | SnapDragon: sure :-) |
SnapDragon | tsalman: Yeah, it's 90% due to practice |
jmpld40 | In a few minutes the chat will start officially! |
SnapDragon | cpphamza: Well, I know it's a dissatisfying answer, but I really just think it takes a lot of practice :) |
AjJi | SnapDragon: I heard that you are a great gamer, are you a fan of mariokart64 ? :-) |
SnapDragon | cpphamza: And it's probably harder to be red now than it used to be. |
SnapDragon | AjJi: I did like it. Went for a couple of times, but the competition in MK64 is in-bloody-sane |
SnapDragon | AjJi: I seem to remember my best-rated time was on Banshee Boardwalk or something |
SnapDragon | AjJi: Snaking is so hard |
AjJi | SnapDragon: great :-) |
cpphamza | SnapDragon: I see, well do you think such practice should be in some direction/approach, or just pick any problem and solve it! |
SnapDragon | cpphamza: To do well in TopCoder you really need breadth, I think |
SnapDragon | cpphamza: On an ACM team you can get away with specialties |
SnapDragon | cpphamza: So you need to practice all kinds of problems. ESPECIALLY the ones you have trouble with. :) |
martins256 | hi |
oh_No | SnapDragon: do you participate in match? |
xhae | oh the Dragon is here :D |
SnapDragon | oh_No: No, too late for me |
SnapDragon | oh_No: I only do the 9:00 pm ones these days |
martins256 | SnapDragon: how old are you? |
cpphamza | SnapDragon: I've problems with problems that contain a lot of details and may require a combination of multiple algorithms/tricks to solve, I just can't hold all the details up in my head, any advice how to approach such problems? |
SnapDragon | martins256: 28 |
SnapDragon | martins256: Sorry, 29 |
SnapDragon | martins256: LOL |
martins256 | SnapDragon: :D |
SnapDragon | cpphamza: Actually, I find the complex ones usually don't have hard algorithms. |
cpphamza | SnapDragon: yep but many details, and that's my problem |
SnapDragon | cpphamza: But that's definitely a skill, being able to assemble a lot of pieces together reliably |
SnapDragon | cpphamza: And I think part of why I do well is I've gotten more consistent. It's a lot easier to find 1 or 2 bugs in a program than 10 or 15. |
SnapDragon | cpphamza: Once you've practiced a lot, you're really just piecing together things you've coded before, 99% of the time. :) |
novero | SnapDragon: how did you practise when you just started pragramming ... any specific strategy followed |
SnapDragon | novero: It was a different era back then |
SnapDragon | novero: But it's the same as today: I just did zillions and zillions of problems of all kinds |
SnapDragon | novero: Back when I was starting out, UVA didn't exist; it was hard to find good contest problems |
SnapDragon | novero: Nowadays there are almost too many |
Neverauskas | SnapDragon: How big is your zillion? about 1000? |
felix_halim | SnapDragon: are you planning to write books on those problems? |
SnapDragon | Neverauskas: I've probably done thousands of problems in my lifetime |
SnapDragon | Neverauskas: That's my off-the-cuff estimate :) |
mishastassen | SnapDragon: how did you find contest problems in "that era"? |
SnapDragon | felix_halim: Lots of others have written web guides (and even a book or two) |
SnapDragon | felix_halim: I've considered making a website before, but never got around to it :) |
SnapDragon | felix_halim: And there are plenty out there |
SnapDragon | mishastassen: They were quite trivial by today's standards |
SnapDragon | mishastassen: A simple DP was actually considered a tough problem |
mishastassen | SnapDragon: well, I meant that you couldn't look at uva-site |
SnapDragon | mishastassen: Everyone was new to programming contests. The "standard" algorithms hadn't really crystallized |
SnapDragon | mishastassen: Yeah. I believe we dug up some ACM Regionals, but even that was quite hard |
mishastassen | SnapDragon: ah, interesting evolution |
Neverauskas | SnapDragon: Why didn't you register for todays SRM? |
SnapDragon | mishastassen: In the very beginning we actually mostly practiced on old ACM Finals and problems our coach came up with |
SnapDragon | Neverauskas: Too late for me. Going to bed afterwards :) |
felix_halim | SnapDragon: how often do you read research paper to solve hard problems? |
mishastassen | SnapDragon: and you tried to find good testcases yourself? |
SnapDragon | felix_halim: A problem that requires a research paper to solve is a bad problem. |
mishastassen | SnapDragon: acm doesn't give their testcases |
SnapDragon | felix_halim: You won't see them on Topcoder or (intentionally) in the ICPC. You might see a couple at UVA :) |
SnapDragon | mishastassen: Yeah, our coach came up with the testcases |
tsalman | felix_halim: and some more in IOI ;) |
SnapDragon | mishastassen: And ran the contest as best he could in our local environment |
mishastassen | SnapDragon: good coach :) |
glue2glee | SnapDragon: who was he? |
SnapDragon | mishastassen: Yeah. He was Gordon Cormack. A fanastic guy, and I think I owe all my career to his guidance :) |
SnapDragon | mishastassen: He'd just taken up coaching the year I came to University, and he really helped us out |
SnapDragon | mishastassen: He was learning just as much as we were |
tsalman | SnapDragon: cool. cormack was your coach :D |
SnapDragon | mishastassen: Again, none of us really knew the skills that are basic today |
felix_halim | SnapDragon: why do you think research paper problems are not suitable for contests? |
SnapDragon | tsalman: Yep. :D |
SnapDragon | felix_halim: Because the only people who solve them are those who've read the result before. |
SnapDragon | felix_halim: You can't solve a research problem in a contest. |
Sarkin | SnapDragon: Hello! |
SnapDragon | Yo |
felix_halim | SnapDragon: not until everybody knows the results (just like DP back then)? :) |
SnapDragon | felix_halim: Right. Back then, if a Max Flow problem came up on a contest, nobody would have a chance of solving it. |
SnapDragon | felix_halim: You can't derive Max Flow on your own in contest time. :) |
SnapDragon | felix_halim: Mind you, new algorithms DO show up. |
SnapDragon | felix_halim: But they're the kind that are possible to figure out, if you're smart. |
SnapDragon | felix_halim: I don't know if you saw my Tunnel Revision problem on a past Finals |
SnapDragon | felix_halim: That one was probably too close to a research paper problem |
SnapDragon | felix_halim: Nobody solved it |
SnapDragon | felix_halim: Nobody really came close :( |
SnapDragon | felix_halim: (Though there are so many problems at the Finals these days that people might just not have had time to think about it) |
SnapDragon | felix_halim: Heh, NOW it gets announced :P |
jmpld40 | yeah sorry about that |
Sarkin | SnapDragon: Where did you learn algorithms or how? |
jmpld40 | tech difficulities :) |
SnapDragon | Sarkin: Well, I took the usual Algorithms courses in University |
SnapDragon | Sarkin: But really, it was from ACM practice |
ilham | SnapDragon: Where did you learn to play games like ... that? |
Sarkin | SnapDragon: When did you start programming And how old are you now? |
SnapDragon | ilham: Heh, just played games all my life :P |
SnapDragon | Sarkin: I'm 29, and probably started when I was 5 or 6 with BASIC |
tsalman | Sarkin: he is 29 :) |
ardiankp | haha, a lot of questions repeated now :P |
SnapDragon | Sarkin: I didn't really start real programming until Grade 10 or so |
SnapDragon | Sarkin: And even then it was still non-OO Pascal |
ktuan | Did you achieve somethings in high-school ( like IOI ) ? |
Sarkin | SnapDragon: 5 or 6 that's so early! |
SnapDragon | ardiankp: I'm just surprised I haven't had to say "practice is everything" very much yet :) |
SnapDragon | Sarkin: I hadn't exactly mastered control flow at that age ;) |
mincer | SnapDragon: how much time one should train everyday to become red? |
felixj | ktuan: no, he had never time to try that |
Sarkin | SnapDragon: Yeah |
mogers | SnapDragon: Hi. Do you think that TopCoder contests are a good way to train for acm regionals/finals? thanks |
SnapDragon | ktuan: I competed in the IMO, but no, I didn't start computer contests until University |
ilham | SnapDragon: So is practice everything? |
maradonah | SnapDragon: What training plan would you suggest for novice and intermediate programmers for preparing for ACM? |
SnapDragon | mincer: As much as you can stand. :) I'm able to focus a lot; when I practice, I really go overboard. |
SnapDragon | mogers: TopCoder is a fantastic way to train for the ICPC |
SnapDragon | mogers: Nothing really compares to solving problems in a contest environment |
Sarkin | SnapDragon: When you learned algorithms you just practiced or you used some books or something if yes what's it's name? |
Sunny_05 | SnapDragon: wat advice wud u wanna giv to starters on topcoder ?? |
SnapDragon | mogers: And since TopCoder is less forgiving, you'll be much more accurate in your ICPC submissions |
SnapDragon | ilham: Yep, practice is everything :) |
mincer | SnapDragon: how do you improve your challenge skills? Do you train it for special? |
SnapDragon | maradonah: I would suggest doing past Regionals in a contest environment (ie, sit down for 5 hours and compete) |
litwin | What editor & font are u using ? :) |
SnapDragon | maradonah: And compete on TopCoder, of course |
SnapDragon | maradonah: Doing past UVA questions also helps |
marcadian | SnapDragon: what's your favourite game ? |
vinay.emani | SnapDragon: your DP solutions are like textbook for me. |
SnapDragon | mincer: My challenge skills aren't that great :( |
SnapDragon | mincer: That's one thing Petr really mastered that I never really did |
mogers | SnapDragon: how about team practice? Did you often practice along your teamates? |
SnapDragon | mincer: (part of it that I never ever "shotgun" challenge, even though it's often a good strategy) |
Sarkin | SnapDragon: Is "Introduction To Algorithms" good? |
comwizz14 | SnapDragon: do you think that your coding and problem solving skills are entirely upto practice or is it due to you starting early as a lot red coders i see have good mathematical foundation participation in math olympiads,it seems a steep curve if you st |
SnapDragon | marcadian: Tetris Attack :) |
xhae | SnapDragon: Actually I think SRM is quite different from ICPC because I felt SRM problems are tend to easy-coding problems... so |
xhae | SnapDragon: do you have any recommendation to practice such codings for ICPC? |
SnapDragon | vinay.emani: Thanks. :) I've done so many, they tend to always come out the same way! |
SnapDragon | mogers: Yes, we practiced 1 or 2 full contests a week |
SnapDragon | mogers: It helped a LOT |
SnapDragon | mogers: Although on Waterloo teams we were pretty independent, solving problems on our own |
marcadian | SnapDragon: why you like that? what make you interesting? |
SnapDragon | Sarkin: Yes, CLR is a great reference |
SnapDragon | xhae: Actually, that used to be the case... but I'm not sure any more |
mogers | SnapDragon: owo. we practice only once a month :P thank you :) |
SnapDragon | xhae: TC problems have gotten quite brutal over the years |
SnapDragon | xhae: Many equivalent in difficulty to hard ICPC problems |
SnapDragon | comwizz14: The mathematical foundation definitely helps |
SnapDragon | comwizz14: But the thing is, I never excelled in math the way I did in coding |
piva | SnapDragon: In what moment did you notice you were getting really good at programming? And what do you think that made the diffrence? |
xhae | hm- thanks :D |
SnapDragon | comwizz14: I'd attribute that to a) practice, and b) the newness of the field |
SnapDragon | comwizz14: (when nobody's very good, it's easier to rise to the top :) |
mohamedafattah | SnapDragon: When playing as a team, what was your best strategy? |
SnapDragon | piva: Well, I guess the first hint was when I qualified for Waterloo's B Team the first time I ever wrote a contest :) |
SnapDragon | piva: But really, I didn't get what I'd consider "good" until my second ICPC Finals |
cuihaochuan | SnapDragon: do you have a girlfriend? |
SnapDragon | piva: There was a HUGE amount of practice between the two |
SnapDragon | mohamedafattah: We were all smart people at Waterloo, so we were fine picking a problem and working independently to solve it |
SnapDragon | mohamedafattah: If there was a conflict for the keyboard one of us would try to write out pseudocode on paper while waiting |
SnapDragon | mohamedafattah: And we had to be really good at estimating how long it would take to code a solution |
SnapDragon | mohamedafattah: That was definitely a skill we cultivated with practice |
mohamedafattah | SnapDragon: what do you mean by fine picking? |
SnapDragon | cuihaochuan: Yes, I had to kick her off Spore to come chat :) |
mohamedafattah | SnapDragon: trying to know which problem is for which person? |
black_hole | what do u suggest for improving coding speed ? |
coder29 | SnapDragon: whats ur basic stratedy while picking up the problems? |
SnapDragon | mohamedafattah: I mean that we each just picked a problem and worked on it ourselves |
SnapDragon | mohamedafattah: We didn't collaborate much unless we were in trouble and had to debug |
mincer | SnapDragon: how did you combine trainings with the studying at the university? Did you have any problems with the "main" studying through sparing so much training on trainings? |
SnapDragon | mohamedafattah: We would a) pick a problem, b) figure out how to solve it, c) estimate the time it will take to code, and then d) take the computer if our estimate was lower than the current user |
mincer | SnapDragon: *so much time on trainings |
SnapDragon | mincer: Not really. I did a lot of both. :) |
mohamedafattah | SnapDragon: what if the problem went wrong and you got about 3-4 WAs? |
Sarkin | SnapDragon: Did you participate in the IOI? |
SnapDragon | mincer: And school was fairly easy compared to ACM contests |
black_hole | SnapDragon:what do u suggest for improving coding speed ? |
SnapDragon | Sarkin: No. Unfortunately, Canada was just getting an IOI team together my last year of high school. |
Sarkin | SnapDragon: If yes did you get any medal? |
mohamedafattah | SnapDragon: do you leave it at all / continue as you did effort in it / leave it and pick it up again? |
ziliang | SnapDragon: if we perform well in algorithm contest, what kind of job do you think we can do better? |
SnapDragon | Sarkin: And only from the Eastern Provinces, so I never had a chance. |
ilham | SnapDragon: how fast do you type? |
SnapDragon | black_hole: That's something that comes purely from practice. |
ilham | SnapDragon: any chances beating Minilek in a typing game? |
Sarkin | SnapDragon: When did you join TC? |
ybgnahz | SnapDragon:how do you balance your study and the programming |
SnapDragon | black_hole: When you've coded the same thing 10 times before, it comes out really fast and really smoothly. (And really elegantly and bug-free) |
SnapDragon | ilham: I'm pretty sure Minilek would beat me :) |
SnapDragon | ilham: But I'm one of the faster typists at TC, I think |
SnapDragon | ilham: That's what I recall from past TCOs, anyway |
Sarkin | SnapDragon: Yeah you wright in a flash! |
ilham | SnapDragon: :) |
SnapDragon | ilham: I'm held up by thinking speed when coding. |
ilham | SnapDragon: hehehehe |
ziliang | SnapDragon: if we perform well in algorithm contest, what kind of job do you think we can do better? |
ilham | SnapDragon: aren't we all :D |
SnapDragon | ziliang: Well, it'll make it easier to GET a software job. Don't know how much it will help you PERFORM it. :) |
kcm1700 | SnapDragon: How do you catch other's bug? <- What's your know-how of challenge? |
SnapDragon | Sarkin: About 2 years into its existence, I think? |
SnapDragon | kcm1700: I'm not actually very good at challenging |
black_hole | SnapDragon: how do you choose problem , means u start with any prefernce order or somthing else? |
SnapDragon | kcm1700: I tend to be surprised by the mistakes people make on problems |
AjJi | SnapDragon: why did you choose working at google ? :) |
kcm1700 | SnapDragon: thanks a lot. |
SnapDragon | kcm1700: Some good challengers know what to look for right away |
mincer | SnapDragon: Did you have adequate private life (sparing time with friends, girlfriend, sports, etc) while doing a lot on both contests and university? |
Sarkin | SnapDragon: First when you joined TC were you red from the start?How much time did it take you to become red? |
SnapDragon | black_hole: In TC? Easy, Medium, Hard. I hope to solve them all or it's a bad contest :) |
Mindhunter74 | SnapDragon: What's the best way to learn DP? |
SnapDragon | AjJi: Everybody was doing it :) |
ybgnahz | SnapDragon:how to coding faster? |
SnapDragon | AjJi: Just wish I'd done it sooner! |
hamedvalizadeh | SnapDragon: What's your idea about string parsing problems? |
SnapDragon | mincer: No, I didn't have much of a life |
Sarkin | Mindhunter74: Practise! |
SnapDragon | mincer: It was gaming, contests, school :) |
shady_mokhtar | SnapDragon: can only being a good programmer in problem solving and algorithms get a nice job and what is it if yes ????? |
SnapDragon | hamedvalizadeh: What about them? I usually just solve them heuristically. |
ziliang | SnapDragon: that's what i'm thinking about. it's just something that one can show off. but no idea how much it can help us in work. unless you're doing some core technic in google,ms... do you think so? |
SnapDragon | hamedvalizadeh: I seldom have to write a recursive parser or anything |
AjJi | SnapDragon: why aren't you participating in marathon matchs ? :p |
SnapDragon | shady_mokhtar: Yeah, doing well in TC will really help you get a good job :) |
ziliang | SnapDragon: and btw, where are you working/studying? |
black_hole | SnapDragon: no what u prefer easy,med.,hard r first analyze all three n then decide? |
Sarkin | SnapDragon: Why don't participate in MMs? |
AjJi | Sarkin: hehe, same question :p |
SnapDragon | ziliang: I really don't find it's too applicable to work, honestly. :( Work coding is boring and tedious... that's why you get paid. |
SnapDragon | ziliang: The interesting problems are very rare. |
SnapDragon | ziliang: Working for Google |
piva | SnapDragon: What do you think are the most important category of problems both for TC and ICPC? Do you try to practice more of one kind? |
Sarkin | SnapDragon: Like Petr! |
SnapDragon | black_hole: No, you have to solve them as you open them because the time ticks down. |
ziliang | SnapDragon: you don't find it useful even when you work in Google? |
SnapDragon | Sarkin: Lack of time. I did a few at the start. |
comwizz14 | SnapDragon: havent you thought of going into research in CS ? that shud not be boring :) .. |
comwizz14 | SnapDragon: with ur ability |
SnapDragon | Sarkin: Yes, and Tomek, and John Dethridge, and Dan Wright, and many many other red TopCoders :) |
Sarkin | SnapDragon: WHy don't you work for Microsoft? Isn't it possible? |
SnapDragon | ziliang: I don't find the work at Google is very atypical. |
SnapDragon | ziliang: It's the environment that's great. |
SnapDragon | ziliang: The work's still boring. :) |
SnapDragon | comwizz14: I did consider it. Unfortunately, I got burnt out after Undergrad, and left Grad school |
SnapDragon | comwizz14: I still think I might've been happier in academia. Tough to say. |
SnapDragon | Sarkin: Certainly considered it. I have friends who do. |
CoreDumped | SnapDragon: which games do u play now? |
SnapDragon | Sarkin: BTW, another thing I find really helps: learn to write "elegant" code |
SnapDragon | Sarkin: That was a mantra back when I was first competing in the ACM and TC |
SnapDragon | Sarkin: Your code should look like what it's doing |
stone | SnapDragon: Why does Google hire one who thinks work is boring:) |
Sarkin | SnapDragon: What do you mean elegent? |
SnapDragon | Sarkin: If you can understand it at a glance, bugs become a lot easier to find |
SnapDragon | Sarkin: And a lot rarer, because you won't even make as many mistakes writing it |
progfool | hello evryone |
progfool | hi SnapDragon |
SnapDragon | stone: Maybe it wasn't smart of them :) |
SnapDragon | Elegance is hard to define |
AjJi | SnapDragon: what do you think is boring out there? |
SnapDragon | AjJi: Any development you get paid for :) |
AjJi | SnapDragon: hehe :) |
black_hole | SnapDragon: why google's product(many) are in beta stage though it has best coders in the world? |
mohamedafattah | SnapDragon: What is your job in Google? What project(s) are you responsible for? |
SnapDragon | When I think of an algorithm in my head, the code should closely match what I'm doing in my head |
SnapDragon | Even line by line |
solafide | SnapDragon: Do you contribute to any open-source projects? |
marcadian | SnapDragon: even if it's boring, u still can play game at google :) |
jarrah | SnapDragon: what's the relationship like between tomek and your girlfriend? |
SnapDragon | Nobody can write ugly code consistently |
progfool | Hey SnapDragon....do you learn algorithms???? |
bucephalus | Tell us about you crazy puzzle solving. Puzzles that challenged you the most. |
bucephalus | *your |
SnapDragon | The best coders are very good at writing elegant code, which works the first time they compile because it's so "straightforward" |
andrei-alpha | SnapDragon: how fast do you write ? |
SnapDragon | solafide: No |
SnapDragon | solafide: I'm not much of a Unix coder, to be honest :) |
progfool | Should we try to learn algorithms!!!...... |
SnapDragon | progfool: Definitely. |
SnapDragon | progfool: Take algorithms courses in University |
SnapDragon | progfool: Read CLR |
rahulgarg123 | SnapDragon: So, did you actually took a stab at Grad School before joining google? |
SnapDragon | progfool: The same kinds of algorithms come up ALL THE TIME at TC and ICPC |
AjJi | SnapDragon: do you write some code on your sparetime? if yes, what codes ? :p (besides TC) |
hamedvalizadeh | SnapDragon: What's the biggest project you have done ever? |
SnapDragon | andrei-alpha: Probably 100 wpm or so? I never really measure it |
SnapDragon | rahul1990gupta: Yeah, I did one year at Toronto |
rahulgarg123 | SnapDragon: theory,I presume? |
black_hole | SnapDragon: ALL the algorithms from CLR must be mastered? |
SnapDragon | AjJi: I do a lot of contest work in my spare time |
andrei-alpha | SnapDragon: oo good :) |
progfool | And what about the maths tht is involved.. |
SnapDragon | AjJi: I test-solve problems for UVA, various Regionals, the Finals |
SnapDragon | AjJi: The Google Code Jam |
AjJi | SnapDragon: ok :) |
SnapDragon | AjJi: The IOI, sometimes |
SnapDragon | AjJi: Lots :) |
pSaiko | Do you smoke while coding? or do you have favourite drinks? |
SnapDragon | hamedvalizadeh: Uh, on my own? |
srivatsan_1991 | SnapDragon: What do you think about solving problems from online judges |
hamedvalizadeh | SnapDragon: yeah |
SnapDragon | hamedvalizadeh: Probably a PC graphics Demo I coded back in high school. |
progfool | SnapDragon: Actually whenever i submit solutions...it exceeds time limit... |
SnapDragon | hamedvalizadeh: 80k or so of pure assembly. (That was really stupid, but fun. :) |
progfool | SnapDragon: What should i do about that.. |
SnapDragon | black_hole: No, not even close. |
samsam | Petr: are you there |
seaking | what's the IOI?? |
CoreDumped | SnapDragon: heard you are a gamer. what are you favorite games? |
SnapDragon | black_hole: There's really a standard set of easy-to-code well-known algorithms that are used in contests |
srivatsan_1991 | SnapDragon: Do u think OJ's are a better way to practice and learn algos or TC style competitions are better? |
jarrah | seaking: international olympiad in informatics, only the best high school computer science competition in the world |
SnapDragon | progfool: You need to learn how to analyze runtime complexity |
SnapDragon | progfool: It's complicated, but CLR talks about that kind of thing a lot |
seaking | jarrah: thanks :) |
ACThread | SnapDragon: how to study algorithm |
SnapDragon | progfool: In particular, you need to know the difference between exponential and polynomial runtime |
progfool | SnapDragon: thank you so much |
SnapDragon | CoreDumped: Tetris Attack :) |
Nerwosolek | What's CLR? |
progfool | SnapDragon: I jus started reading CLRS.. |
SnapDragon | srivatsan_1991: OJs? |
srivatsan_1991 | SnapDragon: Online judges |
samsam | Petr: are there anything like inborn talent |
progfool | SnapDragon: do you work or u r at university? |
SnapDragon | srivatsan_1991: Oh. Competitions are always better, because you just don't get into that frame of mind unless it really "matters". |
pankaj_k | yes |
black_hole | SnapDragon: how to master bitmask used in dp? |
SnapDragon | srivatsan_1991: However, contests don't run all the time. :) |
pSaiko | SnapDragon: What are your habits while coding? Any special music, cigarettes, drinks? |
SnapDragon | srivatsan_1991: You definitely need to practice a lot of OJ problems, I think |
black_hole | SnapDragon: i find it hard |
SnapDragon | progfool: I work at Google |
progfool | SnapDragon: ohhh....gr8 |
mohamedazouz | fenak ya ahmedsad |
pankaj_k | Petr: yes |
SnapDragon | black_hole: Bitmasks are used in plenty of problems, not just DP |
SnapDragon | black_hole: I think there are some good TC articles about it |
mohamedazouz | fenak ya ahmedsadek |
samshu | SnapDragon: Dont you think "Software Engineering" is a lot more than Programming?? |
progfool | SnapDragon: Actually i even find it really tough to think in terms of 0's and 1's as bit theory demands |
SnapDragon | black_hole: There's nothing really complicated about bitmasks, but they do reduce the elegance of your code a little. |
black_hole | SnapDragon: oh... thnx |
SnapDragon | black_hole: I use them when necessary, but sometimes a vector<vector<int> > is better than a vector<int> of compressed bitmasks :) |
samsam | SnapDragon: being in blue is enough to work at google or not... |
maradonah | SnapDragon: what algorithms do u recommend for your ICPC algorithms library? |
SnapDragon | samshu: Absolutely. TC skill may be correlated with SE skill, but it's definitely not all there is to it. |
hamedvalizadeh | SnapDragon: Do you have another profession than programming? |
srivatsan_1991 | SnapDragon: did u take part in any of the iois ? |
SnapDragon | samsam: Yeah, nothing wrong with being blue :) |
piva | SnapDragon: Petr said he almost didn't do OJ. Do you think it depends on the person, or that we should try OJ problems? |
SnapDragon | samsam: Honestly, having a high rating at TC just means you're good at ... solving TC problems |
SnapDragon | samsam: In the real world it matters a lot less |
SnapDragon | samsam: Lots of really great programmers and really smart people have tried TC and not done well :) |
maradonah | SnapDragon: like me :) |
SnapDragon | piva: Can't hurt to try. :) |
SnapDragon | piva: More practice is always better. |
raviupreti85 | SnapDragon: why the name "SnapDragon" |
DieIng | :) |
SnapDragon | srivatsan_1991: No, Canada didn't really get organized until I was out of High School. |
kphmd | why |
piva | SnapDragon: But how do you choose the problems you are going to train with? Based on difficulty, or category? |
SnapDragon | hamedvalizadeh: No, just programming. |
srivatsan_1991 | SnapDragon: oh |
SnapDragon | raviupreti85: No real reason; I've had it for a long time. It's basically a pun, and I like it. |
raviupreti85 | SnapDragon: great!!! |
progfool | SnapDragon: I am a beginner in algorithms.....where would you suggest me to start from?? |
SnapDragon | raviupreti85: And since I'm famous with it, I can't get rid of it :P |
progfool | SnapDragon: only CLR or something else also? |
pSaiko | SnapDragon: Do you suggest macros? |
raviupreti85 | SnapDragon: ha ha....there you go |
samsam | SnapDragon: what rating will Ken thompson(unix developer) will attain if he is topcoding |
pSaiko | SnapDragon: Do you suggest macros? |
samshu | SnapDragon: I find that very few Algorithm toppers are playing MM's.. |
samsam | SnapDragon: :) |
SnapDragon | progfool: CLR is good, I think. Work on math problems, too. |
samshu | SnapDragon: Any reason behind it?? |
Nerwosolek | progfool: what's CLR? |
mogers | SnapDragon: do you think that someone (like me) that works a lot on an interesting project, but tends to not work when faced with a boring project have chances to be hired by google? |
SnapDragon | progfool: A solid math basis is really good for those times when you can't just use a standard algorithm. |
kphmd | ? |
SnapDragon | samsam: Uh, no idea :) |
SnapDragon | samshu: Really? venco was doing really well at them back at the start |
raviupreti85 | SnapDragon: Why is everybody so crazy about google |
progfool | Nerwosolek: ITs Cormen,Book for algorithms....4 writers |
SnapDragon | samshu: But it's similar to how there isn't much overlap between top TCers and top component developers |
progfool | Nerwosolek: amazon.com u can search for it |
raviupreti85 | SnapDragon: i say ataryt your own google |
SnapDragon | samshu: They're different skills and appeal to different people |
raviupreti85 | SnapDragon: start* |
srivatsan_1991 | SnapDragon: Is working in google fun or does it mean a lot of boring dirty work :P ? |
SnapDragon | mogers: I guess so, I'm probably the same way :P |
Nerwosolek | progfool: OK. I think I know it. |
SnapDragon | raviupreti85: Heh, Google isn't quite the fun startup it used to be |
SnapDragon | raviupreti85: But you do get to work with really smart people |
progfool | SnapDragon: What kind of math problems...and where can i get those??? |
mogers | SnapDragon: good to hear that :) |
SnapDragon | raviupreti85: And the environment and perks are great |
kphmd | what about? |
samsam | SnapDragon: you told in google you are coding the standard algorithms.....if it so what is the use of being in red...:) |
pSaiko | SnapDragon: would you take a job at microsoft? |
SnapDragon | srivatsan_1991: Boring dirty work mostly, same as anywhere :) |
samsam | SnapDragon: any one can just do it... |
SnapDragon | samsam: Well, it got me the job :) |
raviupreti85 | SnapDragon: ok...i guess a mind like you can do his own google :P |
ACThread | SnapDragon: I am a beginner in algorithms.....where would you suggest me to start from?? |
SnapDragon | progfool: High School Olympiad problems are a good place to start. |
samsam | SnapDragon: :)ofcourse you are right..... |
samshu | SnapDragon: "Boring dirty work mostly"..i hope Larry is'nt somewhere around.. |
Lugera | SnapDragon: at what age did you start programming? |
SnapDragon | pSaiko: Probably, if I wasn't already comfortable at Google :) |
SnapDragon | raviupreti85: I don't know, you have to be pretty lucky to have a startup become the next Google, no matter how smart you are :) |
SnapDragon | ACThread: Take a University Algorithms course, read CLR |
hamedvalizadeh | SnapDragon: How many hours do you use computer during a day? |
SnapDragon | ACThread: There are lots of good TopCoder articles, too |
SnapDragon | ACThread: Covering standard contest algorithms |
SnapDragon | hamedvalizadeh: Probably 10-12 |
SnapDragon | Lugera: 5 or 6? |
raviupreti85 | SnapDragon: luck comes with your hardwork and your power to dream big |
SnapDragon | samshu: You're not Larry, are you??? |
samshu | SnapDragon: :D |
pSaiko | Ishan: i asked if he would take a job at microsoft... |
samsam | SnapDragon: why dont you try for Bell labs...:) |
raviupreti85 | SnapDragon: anyways...you are one gem of TC... |
SnapDragon | raviupreti85: And luck comes with a great big heap of luck, too :() |
SnapDragon | raviupreti85: Heh, thanks :) |
srivatsan_1991 | SnapDragon: whats ur age! ? |
raviupreti85 | SnapDragon: yup |
SnapDragon | raviupreti85: Though my star has kind of set... heh |
SnapDragon | srivatsan_1991: 29 |
wrick | SnapDragon: i noticed that you have a great challenge success rate. what does it take to be a good challenger? do you build cases before challenge ? |
black_hole | SnapDragon: are u interested in Algorithms research ....? |
{magneto} | SnapDragon: how well is one's performance in TC SRMs recognised around the world ? do you think they are as prestigious and weel known as ACM ICPC ? |
SnapDragon | wrick: Actually, to be honest I don't think it's good to have a high challenge success rate |
simplysuperb_kn | SnapDragon: Which books should be read for graph related problems? |
VArt | SnapDragon: Do you use Linux or Windows? |
wrick | SnapDragon: really? why? |
SnapDragon | wrick: Petr has won many SRMs just by "shotgun" challenging, applying a tough test to people's solutions without even reading them |
SnapDragon | wrick: It works well |
SnapDragon | wrick: I'm always too wimpy to do it |
SnapDragon | black_hole: Yeah, I love trying to come up with new algorithms :) |
raviupreti85 | SnapDragon: You i think spotlight sessions are good for novice like us but for you- whos facin it, it must be like an apple and 100s of shooter...good luck |
wrick | SnapDragon: i know what you mean. i do that when i am in div2... div1 people are smart for me |
srivatsan_1991 | SnapDragon: i tried what u said Petr did n i lost all the points i dint hav !!! |
binarywithme | hi |
SnapDragon | {magneto}: Honestly, I wouldn't have the "fame" I do now if it weren't for TC. I think it's MORE prestigious than the Finals, really. |
SnapDragon | {magneto}: Because two times at the Finals and you're out. |
SnapDragon | {magneto}: Whereas if you're a target at TC, you're there for years |
pSaiko | SnapDragon: do you optimize your code for performance after making sure its correct? |
SnapDragon | raviupreti85: Heh, thanks :) |
simplysuperb_kn | SnapDragon: Which books should be read for graph related problems? |
binarywithme | SnapDragon: hello snapdradon |
SnapDragon | srivatsan_1991: Well, it has to be a good challenge on a problem with a "twist" to it |
samshu | SnapDragon: I was taking a Testing seminar in my firm last week.while i was talking on test cases i had you,Petr..etc in mind..The way you ppl think . |
SnapDragon | srivatsan_1991: One good way to come up with a challenge case is if you find a bug in your own code |
SnapDragon | srivatsan_1991: Remember it, and look for it in others' code |
ACThread | SnapDragon: Thanks |
SnapDragon | srivatsan_1991: And if you think it's really an easy bug to make, then try the shotgun challenging... but I assume no responsibility for lost points :) |
srivatsan_1991 | SnapDragon: lol |
SnapDragon | pSaiko: No, I tend to write my code once. |
SnapDragon | pSaiko: You learn to estimate how fast you need to write it from the start |
SnapDragon | pSaiko: (There are exceptions of course) |
samshu | SnapDragon: i told them the importance of your development skills for Testing a piece of code |
pSaiko | SnapDragon: thx |
mohamedafattah | SnapDragon: I always see your problems used in regionals / world finals, and they are wonderful. Why don't you write for topcoder? |
SnapDragon | samshu: Again, I'm not really in Petr's league when it comes to challenge cases |
simplysuperb_kn | SnapDragon: which company you work for SnapDragon? |
SnapDragon | samshu: It's definitely an acquired skill, finding bugs in other people's code |
innocentboy | simplysuperb_kn: Google. |
mohamedafattah | simplysuperb_kn: Google |
samsam | SnapDragon: why dont you register for SRM |
raviupreti85 | SnapDragon: you aint taking part in todays SRM |
samsam | SnapDragon: only 4 mins left :) |
SnapDragon | samshu: The best way to test code is to write it elegantly so it's obvious it's correct :) |
bardek | SnapDragon: are you going to participate in this SRM ? |
supernova | reviupreti85: I think he's registering for the high school one |
SnapDragon | samshu: If it's a soup of "if"s and "goto"s, I don't care how much you've tested it, there's probably still a bug |
muxecoid | SnapDragon: Can you name a few software projects you worked on? |
wrick | maybe SnapDragon is the writer! |
wrick | oh no! |
MH35 | Any Japanese here? |
SnapDragon | I'm not doing the SRM today... too late for me |
SnapDragon | simplysuperb_kn: Google |
SnapDragon | muxecoid: Erm... famous ones? Not really |
samshu | SnapDragon: Ah that's a good clue.. |
SnapDragon | muxecoid: I work on Ads Quality at Google :) |
Danko | SnapDragon: How do you solve problems? :) Do you use some heuristic methods? |
simplysuperb_kn | SnapDragon:Thanks!! |
SnapDragon | muxecoid: Before that, I worked on a competitor for BLAST, in the Bioinformatics field |
samsam | SnapDragon: just do let us how it goes |
gautamverma | SnapDragon: what the best way to score in a SRM?? |
SnapDragon | Danko: I solve problems by writing the same code I did the last time I saw the problem. :) |
MH35 | To register or not to register? |
SnapDragon | Danko: 80% of the problems I see are variations on ones I've solved many times before. |
pSaiko | What was/is the hardest "genre" of problem you had/have to overcome? |
miz-kmm | are there japanese??????????????? |
MH35 | I'm very tired |
SnapDragon | Danko: That's what practice does for you |
simplysuperb_kn | SnapDragon: Can you please suggest us the book for graph problems? |
pdallago | SnapDragon: is it? many of the top coders usually have an "if soup" approach when dealing with complicated problems... and it seems to work |
SnapDragon | simplysuperb_kn: I don't know of a Graph problem-related book |
samshu | SnapDragon: dont you think TC's sometimes hurting a persons Coding skill.Neat codes are a rarity in here.. |
superkinhluan | how long did it take you to practice in order to achieve that 80% familiarity? |
SnapDragon | pdallago: No, I think the best coders find the clever way to make the code pretty |
progfool | SnapDragon: If you have very less time left.....which algorithm would you go through....i mean which is the most widely algorithm appearing in contests |
mozeda | SnapDragon: hello~! |
SnapDragon | pdallago: Ok, it can still get a little complicated |
progfool | SnapDragon: sorry for my english... |
MH35 | I retire today's SRM |
SnapDragon | pdallago: But I think if you compare, say, Petr's code on a tricky detail-oriented problem with someone else's, you'll notice it has far fewer special cases and such |
sahiltiwari | SnapDragon: In solving problems which part you think is most important.It is logical thinking or Implimentation |
SnapDragon | pdallago: It's necessary for consistency, especially since TC is so unforgiving of mistakes |
gaohaidong | Don't leave... |
SnapDragon | samshu: I don't think TC HURTS a programmer's skill |
pdallago | SnapDragon: ok, thanks |
vexorian | SnapDragon: What is your favorite problem from last months' SRMs ? |
SnapDragon | samshu: It does teach you how to write more elegant, bug-free code. |
SnapDragon | vexorian: I haven't done an SRM in a month. :( |
gautamverma | SnapDragon: what is a Bug Free code?? |
SnapDragon | vexorian: (And, regrettably, I don't have time these days to do all the TC problems as they come out) |
jmpld40 | okay folks let's wrap this up since the SRM is about to start |
samshu | SnapDragon: true...but a neat code is very important for SQA! |
ulzha | gautamverma: :D |
cuihaochuan | SnapDragon: thanks |
solafide | SnapDragon: Thanks for putting on this chat - many thanks for staying up late for us. It's been very enjoyable. Good luck on your target status! ;) |
jmpld40 | Thanks to SnapDragon for chatting with us this morning/evening/afternoon |
felix_halim | SnapDragon: thanks |
progfool | SnapDragon: All the best to you for further progrmming:) |
SnapDragon | progfool: Dijkstra (Breadth-First Search) is probably one of the most common problem types |
comwizz14 | SnapDragon: thanks a lot |
ACThread | kphmd: you are very well |
jmpld40 | the chat will be posted shortly on the website |
samshu | jmpld40: evening here!! |
SnapDragon | solafide: Thanks, hope I can hold on to it :) |
jansonh | thanks all |
gautamverma | SnapDragon: i think i m too late ... |
SnapDragon | Good luck all |
pSaiko | thanks man |
ulzha | enjoy |
chokudai | Good Luck All!! |
progfool | SnapDragon: Thankyou for your advice and help |
jmpld40 | hope everyone learned something good so now good luck with the srm! |
algoboy | SnapDragon: thank you |
kphmd | ACThread: who are you |
abhinavkulkarni | Thanks SnapDragon! Same to you! |
SnapDragon | No problem, have fun :) |