Programming languages and paradigms - procedural, object-oriented, functional, and combinationsĪlgorithms - efficiency, big-O notation, proof of correctnessĪrchitecture - how does a computer really work at the bit level? We're really about something very different, that just uses programming as its foundation:ĭiscrete math - binary/octal/hex/2's comp, Boolean algebra, propositional logicĭeep programming - pointers, memory management, optimizationĭata structures - linked lists, binary trees, stacks, queues Building a program is great, but that's just the beginning. Again, that's not the person I will send on an internship at a firm I've developed a long trust relationship with.Īs others have said, programming does not equal computer science. No, you're showing that you won't follow instructions from a software engineer or a customer, and you'll be a liability in a development firm. ![]() I suspect you won't like the way an assignment is designed and will do something totally different than is expected, thinking that you're showing your brilliance. But you'll be shocked the first time you get a C on a programming assignment. Making sure everyone knows how smart you are will backfire. I would absolutely not recommend you for an internship regardless of your skills if I feel you do not have the interpersonal skills to pull it off well. But then come to office hours and ask anything you want. If you want to go deeper than where the class is currently going, save it for office hours. Answer my questions if nobody else is speaking up. Just don't do it.Īsk questions in class if you really need clarification. That is probably not what you are looking for. If you push it, most professors will choose to maintain control of the classroom, and will utterly humiliate you in front of the class. If you try to have an alpha programmer contest with me in the middle of a lecture, I will try to avoid it. I don't have much patience for that, especially if you're desperate to prove me wrong. I think you will be tempted to 'ask' questions in class that are not meant to clarify or to gain knowledge, but to demonstrate superiority. Do exactly what is asked, and if you want to embellish to show off your skills, do it on a secondary version of the project, not the main assignment. ![]() If you want me to know how advanced you are, do every problem well. It doesn't matter to me if you're a better programmer than the wrestling coach who was forced to teach CS in your high school, or that every adult you've met thinks you're really smart. I don't know who told you how smart you are, but it's a new, blank scorecard here. It will take all of my skill and experience to help you take that dose of natural talent, that relatively light experience (I've probably been programming since your parents were in eighth grade) and that massive ego, and help you become a solid thinker who can truly solve problems that others think are impossible. ![]() ![]() You will be among the most difficult students in the class. You probably think you'll be the easiest person in class because you already know everything you need to know. I will enjoy teaching you, but not for the reasons you think. Here's a love letter to you from a CS Professor:
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |