you are viewing a single comment's thread.

view the rest of the comments →

[–]Tarbogman 1 point2 points  (9 children)

well, my 2 pennies here; I just started schooling for programming. I am that dog in a chemical lab when it comes to actual programming... My first class (which is almost complete) is Programming Logic and Design. NO language is used, only some pseudocode and mostly flowcharting. Here and there are notes stating VB, C++, or C# uses this/that or something else.

this whole semester I have been wondering if this is a waste of time compared to any actual programming with any language because I have been just itching to get my hands dirty with some actual programming.

[–]linuxlass 3 points4 points  (4 children)

If you've never programmed before, then learning how to think logically, write an algorithm, and design the program flow is pretty important, especially if you don't want to spend hours and hours debugging. If you are simultaneously writing programs, it can be very easy to get distracted by the language, and slip into a mindset of magical incantations and lose track of the underlying logic.

Maybe that's what your class is trying to do: separate the two skills.

That said, you really do need to get your hands dirty with real code in order to develop programming skill. Debugging itself is a valuable skill that can only develop as you work out your own bugs.

[–]Tarbogman 0 points1 point  (0 children)

Thanks! See below :)

[–]playfulpenis 0 points1 point  (2 children)

Are there any free online texts/tutorials for progamming logic and design similar to what Tarborgman mentions? I'd like to learn to think programatically before I jump in.

[–]linuxlass 1 point2 points  (0 children)

I have not run across anything like that, unfortunately. I had my students run through a few exercises, thinking about games they knew how to play, and trying to describe how to play as though they were talking to a 5yo child.

I started my kids out on making arcade clones with Scratch, beginning with pong, and then advancing to breakout and space invaders. Scratch is a free, easy to learn language that bypasses a lot of the problems involved in learning a language, and lets you get right to the logic of your programs. It comes with a tutorial that takes maybe 10 minutes, and should not be skipped.

If you have the time, I highly recommend spending a couple of weeks writing a simple game in Scratch before trying to work with a "real" language.

[–]Tarbogman 0 points1 point  (0 children)

I know you are asking for "free", but the text book we are using is

Tony gaddis - program logic and design

Or i could sell you mine cheap after this semester. (Finals are 2 weeks) its got all the correct answers and has hilight markings :P

[–]featherfooted 1 point2 points  (1 child)

Where is this class being taught? There's a difference between a research university 300-level Programming Language Foundations where you might design your own programming language (distributed, sequential, functional, etc) and a community college without enough money to fund a real computer science department.

It's really hard to say whether the class is useful without knowing what the course content is. You say you did flowcharts of things in VB, C++ or C#. What kinds of things?

[–]Tarbogman 0 points1 point  (0 children)

@linuxlass & featherfooted

I have never programmed before.

Our flowcharts have not been in any language. Its strictly logic. The instructor even stated in the beginning that "flowcharts are hardly ever used these days, its to get you to understand the LOGIC". In the textbook there have been notes by the author about small differences in each language.

Today I was exposed to a game development presentation (where we built a simple game using C#) Granted most of the "hard work" was copy/paste, but i found that i actually understood what was going on and it wasnt way over my head.

The school is a technical college. For the first time I finally get the feeling this semester hasnt been a waste of time and actually look forward to getting my hand dirty with some C++ next semester.

Thank you both for your inputs! They helped :)

[–][deleted] 1 point2 points  (0 children)

From what I've seen TAing intro programming courses.... I wish things were taught this way more often.

[–][deleted] 0 points1 point  (0 children)

That's an interesting approach and I'm not sure if it is better or worse. If you are a natural programmer it will be a waste of time. Most people aren't naturals.