Jump to content


Check out our Community Blogs

Register and join over 40,000 other developers!


Recent Status Updates

View All Updates

Photo
- - - - -

Apparently I'm terrible at this. [long rant]

nested loop

  • Please log in to reply
6 replies to this topic

#1 ClumsySpelunker

ClumsySpelunker

    CC Newcomer

  • Just Joined
  • PipPip
  • 13 posts

Posted 21 February 2011 - 04:07 PM

So I had probably the most discouraging, offensive encounters with a professor ever after my Intro to CS/C Programming lecture today.

I'm completely new to programming. I had my first CS/C programming class 1 month and 4 days ago. My "professor" is a PhD candidate who clearly is not interested in teaching the class. I found our first homework assignment extremely difficult, and spent basically the entire weekend working mostly on one problem that I would not have figured out if it weren't for help on this board.

Our next homework assignment, one of the problems is to create a connect4 game. Now we've had only brief mention of pretty much everything. Every example is lecture slide is in the simplest possible terms (most examples are how to count. How to count using this loop, how to count using that loop, how to count using this function(introduced last week), macro(introduced today), etc...). There is absolutely nothing that would suggest to me that we're ready to write a program like this, but I welcomed the challenge and thought it might be fun.

I thought I'd start with trying to build the function to print the game board. Soon realized that I had no idea how to work with a 2D array. The powerpoint slides weren't any help, our book doesn't even cover what I needed to know. I spent many hours fussing over it which led to thishttp://forum.codecal...-i-missing.html thread.

At the end, someone suggests looking at Cprogramming.com Tutorial: Loops as if to say that if I had only looked at the, again, ultra-simplistic examples on that page, I would have figured out on my own that a loop has to be nested to define a 2D array.

Which is basically what my professor said when I asked him after class today if there were some other avenues I could take other than his one office hour per week that conflicts with a recitation I have. I cited my difficulty with defining the array and said that I had to find out online about nested loops, and that I don't see how I'm supposed to figure out a concept like nested loops on my own (especially after our last lecture where we, or so I thought, learned that using comma operators in a for loop made consecutive loops function identically). He basically rolled his eyes and said,

"Part of the reason I assigned this problem is because I wanted you to think. I thought that maybe you would think just a little. And you would figure it out."

So, I'm supposed to invent the concept of nested loops based on...? I'm supposed to just figure out that the for loop stacked on top of another for loop is going to skip the bottom loop, run the statement, and then go back to the bottom loop? And that is what I need to do to define a 2d array... Is that intuitive somehow? Is there something fundamental I missed that should make that obvious?


To be honest with you, it's an Ivy school, so there's naturally pressure for everything to be exceedingly difficult. But before taking the class, I watched the harvard lectures and as I watched them again, looking for any help I might get doing these homework sets, I notice they have help rooms, multiple TAs, meaning many, many available office hours, online chat help... So many ways to get help. When I try to get help I get, "try thinking /eyeroll"

So anyway, it's basically just a long rant/procrastination from memorizing stroke orders.

TLDR: Professor made me feel like I must be lazy or exceptionally stupid. Should I be figuring this stuff out so fast?
  • 0

#2 lor

lor

    Programming Goddess

  • Senior Member
  • PipPipPipPipPipPip
  • 497 posts

Posted 22 February 2011 - 12:25 AM

I'm a straight A student and had my very first C++ class last year in March-June and ended up with a database tutor that decided he'd come teach programming. All he did was read notes straight from the book, no input of his own, and in the end I passed with a C and I worked my ** off to understand literally almost everything on my own. I passed Java with flying colours when I had a different tutor last year and that was also introducing new concepts in OOP.

It's amazing how much your grade can change when you get stuck with a... difficult, to say the least, tutor. Nice guy, but could not teach programming.

Also I really think it's up to each individual with regards to how fast they should catch on to things. I caught on really easily in the beginning and then when the harder stuff came I fell behind a bit. It always used to frustrate me because a lot of the other guys in my classes would be a wiz at programming. Some people just "get it", others have to work a bit harder for it.
  • 0
If you enjoy reading this discussion and are thinking about commenting, why not click here to register and start participating in under a minute?

#3 Alexander

Alexander

    YOL9

  • Moderator
  • 3963 posts
  • Location:Vancouver, Eh! Cleverness: 200
  • Programming Language:C, C++, PHP, Assembly

Posted 22 February 2011 - 03:08 AM

I believe that class expects a fundamental, and more importantly working knowledge with the concepts involved prior to the class, I personally would not get the assignment or be able to have the innovative "Ahh! I get that" experience unless I was able to focus on working with what I know already, rather than trying to just know for the assignment.
  • 0

All new problems require investigation, and so if errors are problems, try to learn as much as you can and report back.


#4 ClumsySpelunker

ClumsySpelunker

    CC Newcomer

  • Just Joined
  • PipPip
  • 13 posts

Posted 22 February 2011 - 09:34 AM

The course description explicitly states that no prior programming knowledge is assumed. There are a few people who know other languages and are taking the class to (fulfill a requirement with an easy a)learn C. The majority, I know, are complete beginners.

Actually, I just had a very heartening experience with a couple of my classmates while waiting for our TA (who didn't show up).

Turns out, I'm in pretty good shape. And I'm not the only one who thinks the assignments are excessively hard. One girl said she has a lot of CS major friends and would not be surviving otherwise. She said she showed them her homework and they were shocked by how hard it is.

We compared code and the one girl who's farther along with her connect4 was impressed with some of my code (not just the stuff I got help here with xD), I got some hints from her and she got some me. It was cool.

The other girl was completely lost, but her father is a programmer... She said, according to him, that we're in an awkward phase, trying to figure out how basic stuff works and that it will get easier. Based on what the father and the other girl's CS friends have said, we really should, as I suspected, be getting a lot more direction and being "taught" more. Instead of being shown fundamental slides and expected to figure out complex programs on our own.

I realize a lot of people learn programming that way, which is cool! but they are working at their own pace, getting full understanding of what they're learning as they go. Not being thrown into stuff that's way over their heads and putting a no exception due date on it.

When it was clear the TA was a no-show, the topic of how little help available to us came up. We compared our experiences with the prof. The lost girl (who happens to be very pretty), said he'd been very helpful, and essentially gave her some answers on the last homework set. The other girl said he was at least accessible, if not the most revealing in his answers to questions. I told them how I've basically gotten no help at all from him, I'm always referred to the slides or to "think". To which they both said (they both witnessed the scene I ranted about), "oh yeah that was weird in the last class! I was surprised he reacted like that..."

Anyway, I have a real problem with conciseness... I thought I'd share that I feel better and maybe other discouraged people would take comfort to know they're probably not alone.

tldr: I might be terrible at this, but I'm not alone in my terribleness, or in thinking that the teaching is inadequate and the assignments excessively difficult. I feel much better.

Edited by ClumsySpelunker, 22 February 2011 - 09:37 AM.
html fail

  • 0

#5 Alexander

Alexander

    YOL9

  • Moderator
  • 3963 posts
  • Location:Vancouver, Eh! Cleverness: 200
  • Programming Language:C, C++, PHP, Assembly

Posted 22 February 2011 - 03:47 PM

Ah - then they really are a bit silly, I am glad you could find solace in others experiencing the same situation. Programming is relatively new compared to business models, science that dates back so many years, and languages and paradigms change so often it is hard to come up with a guideline other than "teach basics, give assignment" kind of thing, your teacher may not even know much of the language he is teaching, which may be true as what he said before about "Part of the reason I assigned this problem is because I wanted you to think.", is the fairly standard (and albeit valid) thing to say.

Either way, learning yourself and especially with others exposes you to situations and concepts that you will never experience in that class, so think of it as a new depth of learning!
  • 0

All new problems require investigation, and so if errors are problems, try to learn as much as you can and report back.


#6 cdg10620

cdg10620

    CC Addict

  • Senior Member
  • PipPipPipPipPip
  • 344 posts
  • Programming Language:C#, JavaScript, PL/SQL, Transact-SQL, VBScript, Others

Posted 22 February 2011 - 08:09 PM

When i first started programming I had no clue what I was doing. My first couple of classes were very challenging and took me a very long time to do my assignments. Programming is much like math (at least for me). You can hammer away at a problem over and over and over again and then one day it just finally clicks. If it's something you really want to do then stick with it and don't let some professor discourage you. Hang in there.
  • 0
-CDG10620
Software Developer

#7 sourlemon

sourlemon

    CC Resident

  • Just Joined
  • PipPipPipPip
  • 93 posts

Posted 24 February 2011 - 09:23 PM

As you found out, it helps when you guys work together to solve the problem. Do you have tutoring service at your school? If yes, use it. Else, I would talk to an adviser or a nice teacher and said you and some/most of the students are struggling with the class, even with all the effort you put in, does he/she know if the school offer tutoring or have something set up to help the students like you. If your adviser can't fix the problem, go to the dean and complain. If you don't complain, they don't there's a problem, so they don't know how to fix it.

Good luck!! I hope everything works out.
  • 0






Also tagged with one or more of these keywords: nested loop

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download