Jump to content

  • Log In with Google      Sign In   
  • Create Account

School? I would not call it that way.


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
57 replies to this topic

#1 anonymous22   Members   -  Reputation: 199

Posted 30 November 2011 - 12:16 AM

[redacted]


Edited by anonymous22, 05 April 2014 - 08:33 AM.


Sponsor:

#2 Cornstalks   Crossbones+   -  Reputation: 6991

Posted 30 November 2011 - 12:27 AM

You should grow up. You lost me at "she thinks she can teach". She may or may not be a good teacher, but you are far from someone whose opinion I would fully trust.
[ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

#3 swiftcoder   Senior Moderators   -  Reputation: 10440

Posted 30 November 2011 - 12:29 AM

Yes, a lot of highschool CS teachers suck. So do a lot of college professors and industry professionals. Regardless:

* knows java (not a language I would teach to starters anyway)

Java is far-and-away the most common first programming language in both highschools and university. And there is good reason to teach it in the 10th grade: the AP Computer Science test is largely Java-oriented, so your students will have a headstart in that respect.

* she says use doubles when numbers grow fast, not mentioning their purpose for high-precision decimals.

Big numbers are a great justification for using doubles. It takes a pretty solid understanding of binary representations fully comprehend when doubles are required.

* she never mentioned floats.

Modern languages don't even have floats: Python, Ruby, JavaScript - no floats to be seen.

* she thinks there is an _ASCII_ code for every letter in whatever alphabet. I believe she means Unicode.

You are both right. The difference is that when using ASCII, you have to change the locale to match the character set you wish to use.

* she says (quote) "programmers use shorthand operators for no good reason". Eg. she prefers "a=a+1;" over "a++;".

Programmers are lazy. Her way is no less correct than your's, and in some cases may be less error-prone.

What do I do? I sit and listen to how she ruins other peoples future!

Nobody's future is going to be ruined by a crappy semester of programming. Those that care will learn on their own, and those that don't care will go off and have an actual social life (this never changes: most college professors suck at teaching programming as well).

Quit obsessing over her lack of l33t h4ck3r skills, and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#4 DenzelM   Members   -  Reputation: 295

Posted 30 November 2011 - 12:31 AM

Sometimes you just have to realize where these people come from, what they were exposed to, and what they grew up with. I had a teacher just like that in high school, but nonetheless her background in computer science was amazing to say the least. I wouldn't have guessed it had I taken her lessons at face value. It all boils down to the fact that there are good teachers and bad teachers. The sooner you realize this, the less you will have to worry about.

Save yourself the wasted breath of any long winded arguments between yourself and her. Furthermore, if you are that worried about the other students, then maybe start a "computer club" after school where you all can gather to share ideas and experiences.
Denzel Morris (@drdizzy) :: Software Engineer :: SkyTech Enterprises, Inc.
"When men are most sure and arrogant they are commonly most mistaken, giving views to passion without that proper deliberation which alone can secure them from the grossest absurdities." - David Hume

#5 anonymous22   Members   -  Reputation: 199

Posted 30 November 2011 - 12:34 AM

[redacted]


Edited by anonymous22, 05 April 2014 - 08:33 AM.


#6 swiftcoder   Senior Moderators   -  Reputation: 10440

Posted 30 November 2011 - 12:40 AM


... and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.

Regret? Why regret?

Because you are only young once.

In a couple of years, you won't have half the time and energy you do now, to tryout a new sport, chase after that redhead, learn to fix motorcycles... But you will always have time to learn esoteric programming languages, because it's the kind of thing you can squeeze into half-hour breaks between class, work, and so-forth.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#7 Sirisian   Crossbones+   -  Reputation: 1793

Posted 30 November 2011 - 12:41 AM

Not bad. The 10th grade language courses when I was in HS were VB6 (rofl?) and C++. The only difference was my HS teacher was crazy smart. She had like a masters in math and knew C++ inside and out. I had been using C++ for a while so I took her C++ class with 4 other students in it. She had it structured like a university course. Good times. You'd get the same level of learning from reading any C++ book though really and practicing.

I recommend just going with the flow. Anyone that is serious about programming will be programming in their spare time already. If you wanted to challenge yourself you need to dual enroll and take real CS courses at a local university/college. A lot of HSs have systems set up for that.

#8 Cornstalks   Crossbones+   -  Reputation: 6991

Posted 30 November 2011 - 12:49 AM



... and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.

Regret? Why regret?

Because you are only young once.

In a couple of years, you won't have half the time and energy you do now, to tryout a new sport, chase after that redhead, learn to fix motorcycles... But you will always have time to learn esoteric programming languages, because it's the kind of thing you can squeeze into half-hour breaks between class, work, and so-forth.


^THIS^

Can't emphasize it enough. If I ever did it all again, I'd make a rule for myself of no programming after 5pm on weekends.
[ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

#9 anonymous22   Members   -  Reputation: 199

Posted 30 November 2011 - 05:47 AM

[redacted]


Edited by anonymous22, 05 April 2014 - 08:34 AM.


#10 sooner123   Members   -  Reputation: 241

Posted 30 November 2011 - 07:31 AM

This looks like a lot of disagreeing for the sake of disagreeing. If you want to point out that the kid's whining is useless, then point that out. If you want to point out that most CS instructors are pretty bad, then point that out.


But don't take some person you've never met's side on a range of issues they were wrong on to try to prove the prior points. It just makes you look like the type of person who will take an incorrect stance for the sake of argument and utterly destroys your credibility.


Java is far-and-away the most common first programming language in both highschools and university. And there is good reason to teach it in the 10th grade: the AP Computer Science test is largely Java-oriented, so your students will have a headstart in that respect.


Valid.

Big numbers are a great justification for using doubles. It takes a pretty solid understanding of binary representations fully comprehend when doubles are required.


Invalid. Understanding the binary behind primitive data types and why/when to use them is simple and can be grasped by a 10th grader. And he was correct. Her not pointing out the use of floats/doubles for high precision rather than just high value was poor on her part.

Modern languages don't even have floats: Python, Ruby, JavaScript - no floats to be seen.


Invalid. There are floats in javascript. And other "modern" languages besides the few you listed use floats. CPUs are hardwired to deal with floats.

You are both right. The difference is that when using ASCII, you have to change the locale to match the character set you wish to use.


Invalid. The obvious implication of what she said was that ASCII has a value for every character. Not true. It has 256 characters. You can arbitrarily change what these characters are mapped to but then guess what? You lose the other ones they used to be mapped to. There are more than 256 characters between all characters in all languages. Quite a bit more in fact. This kid is right. His teacher was wrong. He is also right about unicode.

Programmers are lazy. Her way is no less correct than your's, and in some cases may be less error-prone.


Invalid. He didn't say either way was more or less correct. He said that she said that programmers use shorthand for no good reason. This isn't true. a++ is more easily descriptive than a = a + 1. It has its uses in good practice and the kid realizes this.

Nobody's future is going to be ruined by a crappy semester of programming. Those that care will learn on their own,


Valid.

and those that don't care will go off and have an actual social life


Invalid. Embarrassingly so. Beyond the need for explanation so.

Quit obsessing over her lack of l33t h4ck3r skills, and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.


Invalid. And indicative of some strange kind of envy you have for one particular subset of people.

#11 way2lazy2care   Members   -  Reputation: 782

Posted 30 November 2011 - 07:36 AM

What would you have rather done after 5 pm on weekends?

Can't tell if serious or trolling...

I think the entire premise of this thread is crazy. You have 3 years of hobbyist programming under your belt and you are upset that your highschool level CS course is keeping it simple and giving advice based on the knowledge that most of the people in the CS course have highschool level knowledge of CS (IE: 0 knowledge of CS). For beginners most of her advice isn't even that bad; you should just be glad that your school is offering any CS at all higher than HTML.

#12 way2lazy2care   Members   -  Reputation: 782

Posted 30 November 2011 - 08:04 AM

This looks like a lot of disagreeing for the sake of disagreeing. If you want to point out that the kid's whining is useless, then point that out. If you want to point out that most CS instructors are pretty bad, then point that out.

But don't take some person you've never met's side on a range of issues they were wrong on to try to prove the prior points. It just makes you look like the type of person who will take an incorrect stance for the sake of argument and utterly destroys your credibility.

I don't believe we have the whole story. Almost everything the teacher said could easily have very valid reasons for why she said them; ESPECIALLY when viewed through the lens of a HIGHSCHOOL LEVEL CS COURSE.


Big numbers are a great justification for using doubles. It takes a pretty solid understanding of binary representations fully comprehend when doubles are required.


Invalid. Understanding the binary behind primitive data types and why/when to use them is simple and can be grasped by a 10th grader. And he was correct. Her not pointing out the use of floats/doubles for high precision rather than just high value was poor on her part.

I have a CS degree and even though I know how doubles are represented in binary I still find them confusing. ALSO, FLOATING POINT NUMBERS ARE NOT PRECISE.

Invalid. There are floats in javascript. And other "modern" languages besides the few you listed use floats. CPUs are hardwired to deal with floats.

I don't think javascript specifies the difference between float and double currently. It has floating point numbers, not to be confused with the common type "float". I think they set themselves up to start using floats and doubles, but I don't believe the language specifies anything other than a number being a floating point number in it's current state.


Programmers are lazy. Her way is no less correct than your's, and in some cases may be less error-prone.


Invalid. He didn't say either way was more or less correct. He said that she said that programmers use shorthand for no good reason. This isn't true. a++ is more easily descriptive than a = a + 1. It has its uses in good practice and the kid realizes this.

This one I take the most issue with. There are plenty of cases where shorthand obfuscates code at the least and causes hard to find bugs more often. I totally agree with the teacher even if the example is somewhat contrived and basic. In the case of ++, given that it's a HIGHSCHOOL LEVEL CS COURSE, I'd say her advice is fine. I wouldn't want my kids hacking together solutions they don't understand because they wrote ++a instead of a++. I'd much rather shield them as much as possible from themselves.

I have to side with the teacher for the most part, because the teacher isn't a whiny highschool student that came on the internet to rant about mostly legitimate observations made/practices done by his teacher and I think we don't have any of the context for any of her recommendations. Given the rant-like nature of the post I have to imagine he is extrapolating more than a little.

#13 mdwh   Members   -  Reputation: 901

Posted 30 November 2011 - 08:18 AM

I agree with sooner123 - going on about things like social life seems like an attempt to find fault in every possible way, rather than focusing on the actual points. Also a bit disappointed to see negative moderation used to add to this. If you disagree, say why, don't mark people down.



... and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.

Regret? Why regret?

Because you are only young once.

In a couple of years, you won't have half the time and energy you do now, to tryout a new sport, chase after that redhead, learn to fix motorcycles... But you will always have time to learn esoteric programming languages, because it's the kind of thing you can squeeze into half-hour breaks between class, work, and so-forth.

I went to a single sex school, and it was an adult that I had the opportunities, time, energy - as well as confidence and experience - to have relationships. Social life was limited by parents, legal restrictions of being under 18, and money, and nothing compared to the freedom I have now. Sports involved running around in mud, where as now I'd have the choice to do what I wanted.

But I never regret the time I spent learning how to program as a child.

(And I'm not sure programming is an activity best done squeezed into random half-hour breaks - when we're not just talking about learning a new language by reading a book, but gaining experience by doing programming itself.)
http://erebusrpg.sourceforge.net/ - Erebus, Open Source RPG for Windows/Linux/Android
http://homepage.ntlworld.com/mark.harman/conquests.html - Conquests, Open Source Civ-like Game for Windows/Linux

#14 swiftcoder   Senior Moderators   -  Reputation: 10440

Posted 30 November 2011 - 08:37 AM

But don't take some person you've never met's side on a range of issues they were wrong on to try to prove the prior points. It just makes you look like the type of person who will take an incorrect stance for the sake of argument and utterly destroys your credibility.

I'm merely pointing out that as a teacher one is forced to make a lot of simplifications in order to convey the essence of a subject, and programming is a particularly thorny issue in this respect. The amount of trivia that one could teach (did one have the time) is boundless, but occasionally one has to make sacrifices.

I'm not suggesting that the teacher is any good. I'm just pointing out that there might be rational decisions behind her some of her simplifications.

Invalid. There are floats in javascript.

Really? I see a 64-bit 'Numeric' type that handles all floating-point calculation.

CPUs are hardwired to deal with floats.

Really? Intel introduced the 80-bit floating-point unit in 1989, which has been fairly standard ever since. And while there are some specific instances of cache/SIMD optimisations where floats perform better than doubles, this is in general not the case.

He said that she said that programmers use shorthand for no good reason. This isn't true. a++ is more easily descriptive than a = a + 1. It has its uses in good practice and the kid realizes this.

You are both acting as if a++ is equivalent to a = a + 1. I assume that you are actually both aware that this is not in fact true. While Java thankfully doesn't have the horror of sequence points, one is still required to explain quite a lot of semantics surrounding the post-increment/decrement operators.


Quit obsessing over her lack of l33t h4ck3r skills, and go do all the usual highschool things - sports, girlfriends, etc. You'll only regret it later if you don't.

Invalid. And indicative of some strange kind of envy you have for one particular subset of people.

I was on the sailing team, the fencing team, and the swim team. I was also a programming geek. It's not envy on my part, its an observation of the kids who didn't manage to strike such a balance.

Ever seen the 5 hour energy ad that says 'nobody wished they slept more in college'? Well, nobody ever wished they spent more hours of their youth slaving over a computer either. If you end up with a career in any aspect of computers, you are going to stare at a screen 60 hours/week for the next 40+ years. - I suggest you enjoy the sunshine in the meantime.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#15 swiftcoder   Senior Moderators   -  Reputation: 10440

Posted 30 November 2011 - 08:42 AM

But I never regret the time I spent learning how to program as a child.

I never suggested he shouldn't learn to program. I suggested that the time spent whining about in online could be more productively spent - whether he uses that time to learn a new programming language or pick up a pretty girl, is entirely up to his personal preferences.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#16 Bregma   Crossbones+   -  Reputation: 5498

Posted 30 November 2011 - 08:56 AM


You are both right. The difference is that when using ASCII, you have to change the locale to match the character set you wish to use.


Invalid. The obvious implication of what she said was that ASCII has a value for every character. Not true. It has 256 characters. You can arbitrarily change what these characters are mapped to but then guess what? You lose the other ones they used to be mapped to. There are more than 256 characters between all characters in all languages. Quite a bit more in fact. This kid is right. His teacher was wrong. He is also right about unicode.

I know it's irksome to go off topic here, but ASCII is a 7-bit code that has defined values only in the range 1..127.

The OP is technically correct in a prescriptive sense.

"ASCII", sometimes incorrectly known as "ANSI" to those US residents with a DOS/Windows programming background, is commonly used to refer to any and all methods of representing textual information as a sequence of integral values in computer storage media. This includes not only ASCII proper, but any of the ISO, MAC, or CP localized 8-bit character sets, and often many of the multibyte or wide character sets that predate Unicode. ASCII is often also used interchangably with the UTF-8 Unicode representation (just as Microsoft's UNICODE is often confused with Unicode).

So, in a descriptive sense, the OP's teacher is correct and the OP needs to tone down his arrogance and seek knowledge instead. Being asinine is not a good substitute for being intelligent.
Stephen M. Webb
Professional Free Software Developer

#17 mdwh   Members   -  Reputation: 901

Posted 30 November 2011 - 09:49 AM


But I never regret the time I spent learning how to program as a child.

I never suggested he shouldn't learn to program. I suggested that the time spent whining about in online could be more productively spent - whether he uses that time to learn a new programming language or pick up a pretty girl, is entirely up to his personal preferences.

Your first statement did, but I was referring to your later post, which talked about learning esoteric programming languages, rather than complaining about teachers.

As for time spent online being used more productively - well sure, that could go for everyone contributing to this thread :)
http://erebusrpg.sourceforge.net/ - Erebus, Open Source RPG for Windows/Linux/Android
http://homepage.ntlworld.com/mark.harman/conquests.html - Conquests, Open Source Civ-like Game for Windows/Linux

#18 Antheus   Members   -  Reputation: 2397

Posted 30 November 2011 - 10:42 AM

If this were computer science, the content would be slightly different.

Instead of talking about floats and doubles, one would be proving commutativity of a ring, followed by Winograd algorithm in a 0,1 vector space to derive two's completement arithmetic. How to represent irrational numbers would be left as homework and excercise to the reader. Individual types would then be simply a matter of taking n=4, n=8 and n=8+23 for given IEEE representations. One would also wire the ALU on a protoboard, implementing those operations for some obscure width digits.

Or some similar theoretical stuff.

Computers and languages would not be involved.

-----

Java class is intended as introduction to programming. Majority of people in that class have never written a line of code. Most will be stuck on understanding a for loop.

To someone who knows how to write, explaining that letter A is written using 3 specific strokes will be boring. But we all had to learn it once. Same with programming.

#19 anonymous22   Members   -  Reputation: 199

Posted 30 November 2011 - 11:49 AM

[redacted]


Edited by anonymous22, 05 April 2014 - 08:35 AM.


#20 swiftcoder   Senior Moderators   -  Reputation: 10440

Posted 30 November 2011 - 12:21 PM

Can anyone confirm this? I doubt it will absolutely, unquestionably, have to be for 40+ years or for 60 hrs/week.

Retirement age these days is 67, and you typically graduate college around age 22-23, so that makes 40+ years of employment.

Standard work week in the US is 40 hours/week, which is the bare minimum you will work in a career. But a lot of development jobs (particularly in game development) are known for 'crunch time', when you might end up working 80+ hours a week for weeks on end... Depending on how what career you pursue, you'll be lucky to only work 40 hours/week on average.

Now, obviously this doesn't have to be the case. You could get lucky and make it big in a startup, and retire at 35. You could accept a low salary and work in academia, where overtime doesn't exist. You could accept a lower salary and no prospect of career advancement to work half-time... You get the picture. Its a tradeoff between standard of living and amount of work, moderated by a sprinkling of luck.

I would love to. BTW, the reason I asked the previous question was because (believe it or not) not everyone has had (or "is having" for the matter) teenage times like yours. Some live in different countries and live in different surroundings. So what you may think is a piece of cake for you (in any aspect), for others might actually be a different universe.

Life is what you make of it - that's just as true in highschool as it is in adulthood. Sure, different people have different environments and backgrounds, but you need to make the most of whatever you have.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS