Computer Science Canada Compsci.ca, a reflection |
Author: | wtd [ Fri Oct 13, 2006 7:19 pm ] |
Post subject: | Compsci.ca, a reflection |
From a recent e-mail from myself to a colleague detailing my activities for the past few years. --- I feel as though a lot of the students who have come to compsci.ca are there precisely because they have been learning to program. Unlike myself, most are learning in an organized classroom setting, yet I think they come to the site and ask for help because they feel that that system has in some way let them down and that they cannot get the help they need from their teachers. There are two types of problems that are posed. The first, and easier problems are specific questions about a particular technology. In these cases I am either familiar with that technology or not, and can offer help on that basis. Much more interesting is the problem of students who want to learn to program, but are lost. Among this group there are two types of people. I'm sure the division is well known to yourself and Richard. There are those who heard from a relative or school counselor that computer science and programming was a good path to a high-paying career. This group is pretty hard to help. Unless they can go from "Hello, world!" to building Quake 5 in a week or two, they get frustrated and move on. The others are the passionate ones. They represent the fun challenge for me. They may or may not have recognized that passion within themselves, but either way they've decided to take a computer science class. Something, however, has gone wrong. They're ready to give up. Identifying that problem is one of the most stimulating intellectual challenges I've ever experienced. Learn Spanish or Mandarin is in the running for that distinction as well, though. The problem for these students is almost always one of two things. They may find the course unsatisfying. Perhaps the teacher is unenthusiastic or the pace is slowed for the ones who have no passion for the subject. For these students, I have attempted to craft lessons that can convey a fundamental understanding of the conceptual material and specific programming language knowledge that their courses are likely to cover. With it being online, and an open forum, there is no one holding them back from learning as fast as they want. This is something I'm sure JJ People is very familiar with. An example of the work I have done in this regard is to craft an introductory Java tutorial aimed at rather rapidly introducing OOP concepts. For those students at schools still using it, I have also written extensively on the subject of C and C++. The other group appeals to the polyglot in me. They have few problems with the course, but just find that for whatever reason, the particular language being used to demonstrate concepts is either unappealing or incomprehensible to them. Dealing with this group probably represents the greatest amount of work I have done on the site because there is little way for me to know which language will make all of the concepts make sense. I describe my approach to this as throwing languages at a wall, and seeing which stick. I've briefly delved into numerous languages hoping to spark some interest. When languages do elicit that interest, I will generally devote considerably more effort to them. The biggest success I've had in that regard has probably been Ruby, but I've also encouraged considerable interest in functional programming in the Objective-Caml programming language and recently at least one other contributor has expressed interest in SML. I have also written about Objective-C, C#, D, Pascal, Eiffel, Perl, Python, Erlang, Haskell, Scala, Nice, Scheme, Common Lisp, and likely others I'm forgetting at the moment. The successes I've had in this endeavor have been hugely satisfying for me. I know that the academic world either won't or can't afford to employ this strategy to encourage passionate young programmers, so it's nice to think that perhaps I am better in some way, despite the fact that I don't have a degree. |
Author: | cool dude [ Fri Oct 13, 2006 10:19 pm ] |
Post subject: | |
don't shoot me for asking but what do you do as a career? |
Author: | we64 [ Fri Oct 13, 2006 10:47 pm ] |
Post subject: | |
cool dude wrote: don't shoot me for asking but what do you do as a career?
lol, I wonder the same thing. |
Author: | md [ Sat Oct 14, 2006 10:52 am ] |
Post subject: | |
I would like to offer my thanks to wtd for all the work he has put into his tutorials, and for answering many questions from many people. I believe that wtd is one of our most outstanding members and we as a community should be grateful to have him here. So thank you wtd for all your hard work, and for getting me to actually think about scheme and lisp as useful languages. ![]() |
Author: | wtd [ Sat Oct 14, 2006 11:05 am ] |
Post subject: | |
Thank you. ![]() |
Author: | Cervantes [ Sat Oct 14, 2006 12:19 pm ] |
Post subject: | |
I, too, offer my sincere thanks. I owe the vast majority of what I know about programming to you, wtd. But even more important than all the knowledge you've given me is the realization that there is so much to learn in the world of computer science, and the tools to learn that material. I know it's been frustrating for you at times. I'm amazed at how much you've truly accomplished. Three cheers for wtd! |
Author: | Tony [ Sat Oct 14, 2006 1:24 pm ] | ||
Post subject: | |||
I own my tool choices (OSX, Ruby) to wtd, as well as getting to be so much more open minded about the technology out there. |
Author: | rdrake [ Sat Oct 14, 2006 10:50 pm ] |
Post subject: | |
Tony wrote: I own my tool choices (OSX, Ruby) to wtd, as well as getting to be so much more open minded about the technology out there. Definitely one of the most important things I have learned from you, wtd. Opened my mind so much ![]() |
Author: | apomb [ Sun Oct 15, 2006 4:02 am ] |
Post subject: | |
i may have said some stupid things before, but wtd, you truly do give considerable effort to this site and to anyone who asks for help. I guess its up to the person asking the questions whether or not to take the advice and help constructively. Sincere gratitude towards you, wtd -Adrian |
Author: | Delos [ Sun Oct 15, 2006 3:50 pm ] |
Post subject: | |
Huzzah for wtd, apparently the inspiration for our annual What-The-Duck-athon...now, my question (rather comment) is, that was written in GMail, right...that alignment looks mighty familiar! |
Author: | wtd [ Sun Oct 15, 2006 4:08 pm ] |
Post subject: | |
Yes, it was written in GMail. And thank you. |
Author: | Naveg [ Mon Oct 16, 2006 9:07 pm ] |
Post subject: | |
I realize i'm somewhat of a lurker on this forum these days...but let me utter my words of thanks to wtd as well. When I first came to compsci.ca during my first year of high school for help with my Turing projects, it was you who enabled me to uncover my hidden passion for computer science. Your tutorials and brief glimpses at various languages are nothing short of extraordinary! |
Author: | wtd [ Mon Oct 16, 2006 10:25 pm ] |
Post subject: | |
Thank you. ![]() |
Author: | [Gandalf] [ Tue Oct 17, 2006 1:34 am ] |
Post subject: | |
Thank you wtd, for all the help, great tutorials, and overall insightful thoughts. Whenever I've asked for help you've been willing to give it, whether through the IRC channel or in any of the compsci.ca forums. You are always brewing up a new tutorial which, whether I understand it or not, is always something to ponder over. All the effort you put into passing down your immense wisdom and knowledge to the younglings here is greatly appreciated and has personally been of great benefit to me. Right now I'm more than half asleep and probably not making any sense, so I'll finish here. Keep it up! ![]() |
Author: | TokenHerbz [ Fri Oct 20, 2006 6:39 am ] |
Post subject: | |
yeah wtd is a good guy, as are many others who teach, and explain on this site. Iv'e had help from many many people, and its awsome that i actually learnd what i know now, out of school, from here... I enjoy programming, and i wish i was much better at it, and with that means more learning, something which is very hard to teach yourself, when you dont know it. (try learning french by yourself, you know its going to be hard) Alot of people lay down information, concepts and help to make the path easier. Perhaps we should have lessons made up like ones that would be found at a school, to go over the basics, math need'd, how to implement it, OOP, and really advanced things, in Turing, or C++, both of which im really interested in ![]() Iv'e been on the hunt for a turing one, and i've yet to find it.. Link anyone? Anyways, ofcourse its 6:40am, im a night hawk, missed everyone in irc, but props wtd, and all you others:) |
Author: | ZeroPaladn [ Fri Oct 20, 2006 12:26 pm ] | ||
Post subject: | |||
I love the tutorials that you post, wtd. also, your creation of the Functional Programming area of the site is truly amazing. I meddled wth O'Caml a few nights ago, and i think im getting the hang of it. It's freakin neat.
|
Author: | wtd [ Fri Oct 20, 2006 12:43 pm ] | ||
Post subject: | |||
In that case, write a function in O'Caml which cheers a certain number of times. ![]() It should be callable like so:
|
Author: | Clayton [ Tue Oct 24, 2006 1:46 pm ] | ||
Post subject: | |||
![]() thanks alot wtd props to you |
Author: | rdrake [ Tue Oct 24, 2006 3:06 pm ] | ||||
Post subject: | |||||
Freakman wrote:
![]() thanks alot wtd props to you
![]() |
Author: | Cervantes [ Tue Oct 24, 2006 3:50 pm ] | ||
Post subject: | |||
We don't need to explicitly say anything about the parameter that our cheer function takes. Only that cheer is a function, which means it takes one parameter, and we will pattern match it:
Damn, I've got to get back into O'Caml. Well... does Scheme have pattern matching? |
Author: | wtd [ Tue Oct 24, 2006 10:19 pm ] |
Post subject: | |
Cervantes wrote: Well... does Scheme have pattern matching?
If so, certainly not along the same lines. ![]() |
Author: | Aziz [ Wed Oct 25, 2006 8:48 am ] |
Post subject: | |
Indeed props to wtd, for deflating my ego: the following is a dramatization Common dialog between me and wtd on irc wrote: Aziz: Hey rdrake, wtd, Ultra!
rdrake: why hello young chap Ultrahex: rOckIN dUDEs! wtd: Good evening, Sir Aziz. Aziz: So watchya all doin? Ultrahex: stICKin MAH TOeS in MY NOes!!!11! rdrake: waiting for class. methinks class is going to be late wtd: Oh, pretty busy doing some simple tri-functional self-sustaining ecosystem algorithms. Aziz: oh, busy ol' wtd! Hey guys, I just finished my leet programzz. It took me a long time. Check it out *link to post* rdrake: cool, nice work Aziz ![]() Ultrahex: holy crap teh 1337z! mine's still AWZOMers! wtd: Ah, yes, quite nice. But did you know that 1000 lines of code is unefficient, sloppy, and could be shorter? It is nice though. Except why did you do this: <some code snippet> Aziz: well <some n00b explanation>. what dos thou suggest? wtd: Well, take a look at this: <rafb.net link to some SML or O'Caml or similar language snippet> Aziz: I understand the line 'x = y + z' anything else is gibberish wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: oh yeah i got that but what about...<more questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: Oh friggin' sweet. Thank you wtd! wtd: You're very welcome. Aziz: sorry for keeping you away from your crazy wiseman work wtd: Oh, don't worry, I finished it while you were asking your 32nd question. Aziz: ................ o.o damn son Ultrahex: aziz, WTD is OLdER than YOU! idiot! XD Also, props to rdrake and Ultrahex too. They've helped me immensely as well. But i had to take advantage of them for this one. Note that ultrahex isn't quite as goofy as I made him seem (for those of you who don't frequent the irc channel). Though, I'm not far off XD |
Author: | md [ Wed Oct 25, 2006 9:01 am ] |
Post subject: | |
Aziz wrote: Indeed props to wtd, for deflating my ego:
the following is a dramatization Common dialog between me and wtd on irc wrote: Aziz: Hey rdrake, wtd, Ultra!
rdrake: why hello young chap Ultrahex: rOckIN dUDEs! wtd: Good evening, Sir Aziz. Aziz: So watchya all doin? Ultrahex: stICKin MAH TOeS in MY NOes!!!11! rdrake: waiting for class. methinks class is going to be late wtd: Oh, pretty busy doing some simple tri-functional self-sustaining ecosystem algorithms. Aziz: oh, busy ol' wtd! Hey guys, I just finished my leet programzz. It took me a long time. Check it out *link to post* rdrake: cool, nice work Aziz ![]() Ultrahex: holy crap teh 1337z! mine's still AWZOMers! wtd: Ah, yes, quite nice. But did you know that 1000 lines of code is unefficient, sloppy, and could be shorter? It is nice though. Except why did you do this: <some code snippet> Aziz: well <some n00b explanation>. what dos thou suggest? wtd: Well, take a look at this: <rafb.net link to some SML or O'Caml or similar language snippet> Aziz: I understand the line 'x = y + z' anything else is gibberish wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: oh yeah i got that but what about...<more questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: uh....<questions> wtd: <explaining explaining> Aziz: Oh friggin' sweet. Thank you wtd! wtd: You're very welcome. Aziz: sorry for keeping you away from your crazy wiseman work wtd: Oh, don't worry, I finished it while you were asking your 32nd question. Aziz: ................ o.o damn son Ultrahex: aziz, WTD is OLdER than YOU! idiot! XD Also, props to rdrake and Ultrahex too. They've helped me immensely as well. But i had to take advantage of them for this one. Note that ultrahex isn't quite as goofy as I made him seem (for those of you who don't frequent the irc channel). Though, I'm not far off XD Zomg! rofl! (yes, I actually did laugh out loud on this one, but I didn't fall of my chair ![]() |
Author: | Aziz [ Wed Oct 25, 2006 12:50 pm ] |
Post subject: | |
You liked it? Well, I'm proud now ![]() ![]() ![]() |
Author: | Tony [ Wed Oct 25, 2006 2:54 pm ] |
Post subject: | |
Aziz wrote: Common dialog between me and wtd on irc That was actually rather well done ![]() |
Author: | iamcow [ Wed Oct 25, 2006 4:45 pm ] |
Post subject: | |
however getting back to the topic of compsci.ca. I believe the concept is that students coming here to learn get better at programming so that later, they can assist newcomers to the site. This is obviously not the case with everyone so we owe quite a bit to the regulars of this site |
Author: | Mazer [ Wed Oct 25, 2006 4:57 pm ] |
Post subject: | |
iamcow wrote: [...]This is obviously not the case with everyone so we owe quite a bit to the regulars of this site
Some of the regulars. It may not mean as much coming from me, but thanks wtd. You're a huge part of this community. |
Author: | wtd [ Wed Oct 25, 2006 6:20 pm ] |
Post subject: | |
iamcow wrote: however getting back to the topic of compsci.ca. I believe the concept is that students coming here to learn get better at programming so that later, they can assist newcomers to the site.
More to the point: my goal has been to help all of you become people I can proudly call equals or say have surpassed my skills. |
Author: | wtd [ Wed Oct 25, 2006 6:29 pm ] |
Post subject: | |
Aziz wrote: Indeed props to wtd, for deflating my ego
The first step on the road to success is soul-crushing, humiliating failure. ![]() |
Author: | Aziz [ Wed Oct 25, 2006 9:44 pm ] |
Post subject: | |
wtd wrote: iamcow wrote: however getting back to the topic of compsci.ca. I believe the concept is that students coming here to learn get better at programming so that later, they can assist newcomers to the site.
More to the point: my goal has been to help all of you become people I can proudly call equals or say have surpassed my skills. Surpass. Hah. Encouragement is one thing, but you're just giving us false help XD. But indeed, this is the site anyone who I've talked says the go to get help. The best (and probably only) Turing support site around, and a lot of regulars are not only teaching, but learning! Doing a tutorial teaches you a few things too ![]() ![]() |
Author: | Tony [ Wed Oct 25, 2006 10:07 pm ] |
Post subject: | |
Aziz wrote: Doing a tutorial teaches you a few things too
![]() A few? You don't realize just how much you don't know about a topic, until you try to explain to someone else. This is why I try to just sit down and write about topics I'm interested in. I learn so much, in great detail, and get to teach others ![]() |
Author: | Aziz [ Thu Oct 26, 2006 8:01 am ] |
Post subject: | |
Indeed. You think it's gonna be simple and easy until...."Well, wait a second...". That happens all too much in programming XD Again, Luckily there's the generous folks here. Okay, last repetitive post, it's becoming spam. *fears teh ban* |
Author: | wtd [ Thu Oct 26, 2006 1:02 pm ] |
Post subject: | |
It'll be the epilepsy-inducing avatar that gets you banned. ![]() |
Author: | Mazer [ Thu Oct 26, 2006 3:23 pm ] |
Post subject: | |
Adblock is my hero ![]() |
Author: | Aziz [ Fri Oct 27, 2006 8:23 am ] |
Post subject: | |
Do you not like it *shame'd* |