Discussion in 'OT Technology' started by Ebtromba, Jun 22, 2006.

1. ### EbtrombaActive Member

Joined:
Nov 22, 2005
Messages:
6,050
0
Location:
alexandria, VA
A bit about me- I am a music major, and am about to register for my last undergrad class EVER. I have always been good with computers, and a sizable chunk of life right now is editing and manipulating digital audio. I am a math retard, I never got past algebra II in high school, and I have not taken a math class in 5 years.

I am considering taking COSC1410 INTRO TO COMPUTER SCIENCE I. It has always interested me. However I have no desire to take anything I can’t handle which is why I am pretty sure I won’t go through with it. The reason? Prerequisites: MATH 1330 and credit for or concurrent enrollment in MATH 1431. The first one is precal and the second is calculus. The course description says “Computer organization, introduction to structured programming, C programming language, and algorithm design.” The last one sort of scares me. How much math will be involved in this class?? Is a working knowledge of precal and such absolutely essential, or will I be able to figure it out as I go?

It has almost totally scared me away. Still, the curiosity remains. Thoughts?

2. ### P07r0457New Member

Joined:
Sep 20, 2004
Messages:
28,491
0
Location:
Southern Oregon
well, the first year of compsci for me was very easy. Basic intro to C++, structures, enums, basics, etc... Then we went into OOD, such as classes. I remember we talked about b-trees, and things like that. Discrete mathematics was a pre-req (could be satisfied by parallel enrollement) but except for basic logic opperands, I saw no other correlation between the two.

If you understand == != && ||, the concept of a boolean, and order-of-operands (parenthesis, exponents, multiplication, division, addition, subtraction) then you'll be fine.

3. ### EbtrombaActive Member

Joined:
Nov 22, 2005
Messages:
6,050
0
Location:
alexandria, VA
Well, as I had never heard teh word
boolean before I googled it, and it seems quite simple enough. and while I have never heard the word 'operand' either google again pointed me to this extremely simple concept.

not sure what you meant by
but this is actually looking very doable. Its an intro course afterall (100 level) so its not going to be terribly advanced stuff I'm sure. and its the only thing I'll be taking. The only thing I was worried about was the math.

I'm kind of excited. should I feel dirty?

4. ### P07r0457New Member

Joined:
Sep 20, 2004
Messages:
28,491
0
Location:
Southern Oregon
They are all logic opperands. In fact, they're all binary opperands.

assume:
a=2
b=3
c=2
d=4

== is "is equal to": (a==b: false; a==c: true)
!= is "is not equaly to, or is different than": (a!=b: true; a!=c: false)
&& is "and": (a==c && a!=b: true, a==c && b==c: false)
|| is "or": (a==c || a==b: true; a==b || b==d: false)

5. ### CorpOT Supporter

Joined:
Sep 11, 2003
Messages:
28,201
0
Location:
Providence, RI
if it's anything like my intro to comp sci was this year, i would say no just because you dont learn anything worthwhile. i didnt really learn anything in either of my comp sci classes this year

6. ### crontab(uid = 0)

Joined:
Nov 14, 2000
Messages:
23,580
35
.

Although I didn't take Comp Sci, I'm a Elec/Comp Engineer so intro classes were similar. Don't take it. Complete waste of time. Will serve no use for you whatsoever.

7. ### deusexaetheraOT Supporter

Joined:
Jan 27, 2005
Messages:
19,712
0
My experience has been that people who know their ass from a hole in the ground in regards to comp. sci. have a much easier time getting their computers to cooperate with them -- no doubt this is because it trains them to think in very strict, logical terms when necessary. If you're capable of thinking about things in logical steps, take the course. It will help you decide whether you have any real interest in learning more about the discipline; that's what intro courses are for, after all. And if nothing else, you'll have a somewhat better understanding of what goes into making all that nifty digital audio software work.

8. ### HardTechhungry

Joined:
May 5, 2000
Messages:
28,103
1
Location:
NorCal
My experience with computer geniuses has been that they ALL have a background in music.

9. ### P07r0457New Member

Joined:
Sep 20, 2004
Messages:
28,491
0
Location:
Southern Oregon
music is math computers are math

too bad my father is a big software dev, and he's very not musical so that pretty much ends the validity of that comparison

10. ### HardTechhungry

Joined:
May 5, 2000
Messages:
28,103
1
Location:
NorCal
well, they both require you to think on your feet

what's weird is that my best programming teacher went music all the way.. undergrad, masters, and PhD. I just found out that my IT Leadership professor (PhD level... VERY brilliant) graduated with her masters in the flute. Not to mention Paul Allen (Microsoft co-founder) is a huge Hendrix fan, and actually got Gates started into music

maybe computers come naturally to musical people, and vice versa. I'm pretty musical too, so I'm naturally a genius j/k

anyway, intro to computer science is good. My first programming class was Java and it beat the shit out of me. I spent more time in the lab than anyone else and still failed out. Now, I love Java and am pretty damn good at it if you ask me

11. ### PeyompNew Member

Joined:
Jan 11, 2002
Messages:
14,017
0
Take a CIS/MIS intro class instead.

12. ### EbtrombaActive Member

Joined:
Nov 22, 2005
Messages:
6,050
0
Location:
alexandria, VA
I have not decided yet...

13. ### ClarityNew Member

Joined:
Feb 14, 2006
Messages:
3,309
0
Math retard? I'll say! You didn't even get past Algebra II?!

Lucky bastard you are though. C Programming. The bastards at my school are teaching Java. As if I didn't have more shit to waste my life on.

14. ### ClarityNew Member

Joined:
Feb 14, 2006
Messages:
3,309
0
you bastard. my hs offers java only. fucking ridiculous, and i've already delved a bit into c++. you will regret divulging that info, i'm now going to ask you c++ questions

15. ### peerkNew Member

Joined:
Mar 14, 2005
Messages:
984
0
More than 2/3 of my intro to comp sci class dropped because they were just trying to kill a CS requirement and get an easy A. They thought they would be taking a "how to use word" class.

But if you are willing to put a good amount of time into the programming projects the class shouldn't be a problem.

16. ### CorpOT Supporter

Joined:
Sep 11, 2003
Messages:
28,201
0
Location:
Providence, RI
thats all my hs had, i took it for 2 years and absolutley loved the class. my hs classes were worth more than my college classes so far.

17. ### PeyompNew Member

Joined:
Jan 11, 2002
Messages:
14,017
0
Fuck a C++. Its a totally inappropriate first langauge.

18. ### Penguin ManProtect Your Digital Liberties

Joined:
Apr 27, 2002
Messages:
21,696
0
Location:
Edmonton, AB

Although, no less appropriate (I would venture to say slightly more appropriate) than Java.

19. ### deusexaetheraOT Supporter

Joined:
Jan 27, 2005
Messages:
19,712
0
C++ is arcane at first glance, but it enforces good structured programming techniques that other languages (notably VB) slack off on. That said, because languages like VB are so lax, they are more appealing to people who don't know how to think like a programmer yet. So I guess the question is whether your focus is on quality-control or marketing.

20. ### Penguin ManProtect Your Digital Liberties

Joined:
Apr 27, 2002
Messages:
21,696
0
Location:
Edmonton, AB
Yes, VB is possibly the _least_ appropriate first language. However, C++ has so much hidden complexity that beginning programmers simply don't need, making it a not so appropriate choice. I don't think any object-oriented language is an appropriate choice for an introductory course.

In the good old days, everyone taught Pascal as a first language. It's a superb choice: very structured, but without the complexities of C++ or even C.

21. ### PeyompNew Member

Joined:
Jan 11, 2002
Messages:
14,017
0
C++ is so complex that only a few people on planet earth know all of it. Therefore it is a totally inappropriate first language. Its got nothing to do with quality control or marketing. The fact is, C++ in general has HUGE quality control problems, C++ projects only scale if you have extremely talented programmers (and you probably don't), and C++ in general isn't useful for most students in the jobs they will get. C++ in a highschool would be a misguided nightmare.

Teach them something OO, and teach them C. And go from there. Java and C are good choices for first langauges. Although I'd prefer that they start with C, so students learn to manipulate memory, pointers and perform bit operations. When I hire, I ask C questions no matter what. As per Joel on Software, if you can't create a linked list in C, you can't work for me as an engineer. Period. The only reservation I have about Java as a first language is that its so fucking verbose and has such an inefficient way of doing anything that I'd hate for them to think that its normal. They SHOULD think that Java's way of doing things is sometimes much lengthier and verbose than C's, and they should appreciate the high level of abstraction and efficiency it provides through its libraries... because they've worked at a lower level in C.

So, C first. Java second. Whatever theoretical coursework requires after that, but no language classes period.

Know what they taught at my school first? Javascript. One of the reasons I never completed a CS course.

Last edited: Jun 24, 2006
22. ### deusexaetheraOT Supporter

Joined:
Jan 27, 2005
Messages:
19,712
0
Interesting.

I taught myself BASIC and Visual Basic in middle school and high school, and I took a C++ course senior year in high school. I failed it. Then I took C++ again in my first semester of college (because that was the CS language of choice at my school) and I aced the living hell out of it. A lot depends on the professor.

I didn't take an assembly course until junior year in college; I'd have to say that's a very good thing, because I wasn't mentally ready for it before then. I never have taken a C course; I'd be interested to learn it for knowledge's sake, but since I pretty much exclusively develop for Windows nowadays, it wouldn't do me a hell of a lot of good in real life.

23. ### Penguin ManProtect Your Digital Liberties

Joined:
Apr 27, 2002
Messages:
21,696
0
Location:
Edmonton, AB
I would tend to agree with this, although I'm not against teaching OOP as a concept using more than one language. For example, there used to be a course here called Object-Oriented Programming Languages that covered Java and Smalltalk, or something like that. I think learning about the OO model and comparing/contrasting between different implementations (whether you choose Java/C++ or Java/Smalltalk or whatever, doesn't really matter) is a Good Thing for CS students. It's not necessarily the most practical way of teaching things, but I don't think practicality should be the goal of university studies.

I heard Ken Thompson speak recently and he shared an interesting anecdote about the development of C++. According to Ken, Bjarne Stroustrup's sole goal in his career was to write a popular programming language. Because his goal was to make C++ popular, whenever someone would suggest a feature, Bjarne would put it in. No questions asked. This was the design philosophy behind C++ and helps explain why C++ has become so popular, as well as why C++ is so freakin' complex.

24. ### deusexaetheraOT Supporter

Joined:
Jan 27, 2005
Messages:
19,712
0
Actually, if your goal is to teach object-theory, then you NEED to use more than one language -- otherwise the object-theory will become inextricably tied to the specific language in the minds of the students, and you'll have to fight their misunderstanding to make them advance. I've seen it happen many times.

Joined:
Jan 11, 2002
Messages:
14,017