Thread: Are students getting dumber or is the site getting more popular?

  1. #16
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,611
    >> In fact, knowing how an array is stored in memory is a drawback, not a positive thing. Because there could be thousands of ways of storing arrays, and as such, abstraction is good. Use it, without knowing how exactly it works.

    Well, I think you're making a bigger point here, but the array is the simplest data structure there is. I would even argue that arrays are the foundation for understanding other data structures: Probably because numbered, sequential locations is easy to visualize, and you can express many other ideas within it. (If you use the index as the link in linked lists, then you could show the principal idea of how lists work, for example. I've personally understood more binary tree algorithms because of doing things like this, as well....)

    So I would expect that people at least master arrays. It shouldn't be a language problem, you can do that in any language.

  2. #17
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Char*Pntr View Post
    No. That was your assumption, not mine. I used the phrase "new member". Whether someone has 1 year, or 30 years of programming experience, the person is still a new member when they register. :-)
    Hoping not to seem overly argumentative here...

    The assumption was implicit in your way of describing the issue which, btw, could include me as easily as not.

    In fact I've seen this quite a few times on various public forums. Someone new joins the conversations and everyone automatically assumes they know nothing. Then when the newbie turns out to be fairly knowledgeable there's always someone who's ego gets all bent out of shape, feels threatened and starts a weenie wagging contest that can only end one way. Kinda sad really.

  3. #18
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by whiteflags View Post
    >> In fact, knowing how an array is stored in memory is a drawback, not a positive thing. Because there could be thousands of ways of storing arrays, and as such, abstraction is good. Use it, without knowing how exactly it works.

    Well, I think you're making a bigger point here, but the array is the simplest data structure there is. I would even argue that arrays are the foundation for understanding other data structures: Probably because numbered, sequential locations is easy to visualize, and you can express many other ideas within it. (If you use the index as the link in linked lists, then you could show the principal idea of how lists work, for example. I've personally understood more binary tree algorithms because of doing things like this, as well....)

    So I would expect that people at least master arrays. It shouldn't be a language problem, you can do that in any language.
    Knowing how to use an array is not the same as understanding how an array is laid out in memory. The later is not necessary.
    Knowing that arrays is basically a structure in which all elements are contiguous to each other holds merit only in such way that it is important to understand when developing algorithms. But again, then we're moving back into the algorithms area, which is really language independent.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  4. #19
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,611
    >> Knowing how to use arrays is not the same as knowing how they are laid out in memory ... Knowing that arrays is basically a structure in which all elements are contiguous to each other holds merit only in such way that it is important to understand when developing algorithms.

    Well we're really splitting hairs now. Again, I think that you were making a bigger point, but in the first place there has to be "thousands of ways to store arrays" in order for what you said to be true, and that an array must be contiguous really does limit how fancy you can be.

  5. #20
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,608
    Maybe we are all just a bunch of cranky old coders. I find myself so resistant to change in programming partly b/c I don't see any good on the other side of the change. However, it could also be that I do not allow myself to see the good in it.

    I'm to the point that I just don't know anymore. I see lots of things changing in the world from what they used to be and computer science is no exception to that. More and more I can now understand why those older than me have always been resistant to change be it good or bad. In fact I find myself using the same types of phrases they did then to justify their digust with things being in a state of flux. Let's face it. In our modern world you cannot become attached to anything b/c tomorrow it may not be there. This could not be more true when it comes to computer languages than it is today. The minute you begin to wrap your head around a technology it is either completely overhauled or deprecated entirely.

    So apart from the programming side of things are most of us just really resistant to change? I like to think of myself as an open minded person, except when it comes to matters of my personal faith, but in all other areas I try to be as open as possible. However I find that as I grow older my brain just doesn't work that way anymore and now I need consistency and constant-ness if that is even a word.

    So back to the topic. Is teaching Java a bad thing and is it producing dumbed down programmers? I don't know. Based on my interviewer experience I would say yes but perhaps that is not representative of the typical Java programmer or college graduate. Is making languages simpler a bad thing? I honestly don't know. Will computer programming become so simple in the future that anyone will be able to do it? I don't know. Is that a good thing if it does end up like that? Again...I don't know.

    What I do know is I consistently find myself on the grumpy old man side of debates and why that is....I don't know. So in the end has cprog been overwhelmed by noobs lately? It seems that way but maybe that is b/c I've been here a long time and could probably quote the question they are about to ask. Does that make it a dumb question? Not really since most of us have answered that same question in the past with eagerness.

    With the advent of Google it is easy to tell someone to go search and I've done it as well. But in all honesty we are here to help people. Where is the line between them helping themselves and us spoon-feeding information to them? I don't know if I can draw that line but I do know when it has been crossed. I believe this is one question we will never have a pat answer to b/c it differs from poster to poster, member to member, and admin to admin. We all know when the line has been crossed....but we cannot clearly define that line in words. I believe most of us here have found our little niche as to when to help and when to re-direct someone to more help. It's definitely not a simple task to sum up someone's abilities from a few posts and since most of us are computer nerds who are notorious for not being able to express ourselves and/or communicate well...I think the task is even more difficult given the nature of the material.

    What I have seen less of is people arguing with answers they are given. I'm not sure why but these types of threads have died down quite a bit.
    Last edited by VirtualAce; 11-14-2010 at 06:35 PM.

  6. #21
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Angola
    Posts
    8,445
    Quote Originally Posted by Bubba View Post
    I'm to the point that I just don't know anymore. I see lots of things changing in the world from what they used to be and computer science is no exception to that. More and more I can now understand why those older than me have always been resistant to change be it good or bad. In fact I find myself using the same types of phrases they did then to justify their digust with things being in a state of flux. Let's face it. In our modern world you cannot become attached to anything b/c tomorrow it may not be there. This could not be more true when it comes to computer languages than it is today. The minute you begin to wrap your head around a technology it is either completely overhauled or deprecated entirely.
    My problem with that is that I'm openly resistant to change. But not because I resist progress, more that I fail to see any palpable advance in what many people consider progress.

    Take operating systems new versions, for instance. For the most part, nothing really progressive happens here. Some innovations, but nothing that should really justify the "progress" moniker or sometimes even the time spent developing them. Windows 7 is not a progress over Windows XP, for instance. It is just something new, slightly different and with some innovations that really don't affect the lives of those using it.

    Or the open source community... Git offers nothing new to the vast majority of programmers. Nothing that other similar distributed version control systems haven't before it. The idea that new features are now essential features, when just a few days ago they weren't, is just an example of the marketing creed "we build needs".

    And yet, both things are hailed as progressive, big advances in the way we work and use them. They are not.

    So back to the topic. Is teaching Java a bad thing and is it producing dumbed down programmers? I don't know. Based on my interviewer experience I would say yes but perhaps that is not representative of the typical Java programmer or college graduate.
    I would indeed take the last option. The question could be put in another way: Is learning C/C++ complicating things more than they should? If faced with a competent Java programmer capable of taking a game like Minecraft and make it sell half a million copies in a little over an year, I have to bow down to evidence that it is not the programming language that dumbs down people, but people that dumb down the programming language. If faced with a competent programmer that takes on Adobe Director scripting language to produce such a game design pearl like we haven't seen in recent years, as was the case with Solium Infernum, I just have to concede that what matters is the end result and anything else is irrelevant.

    The kick in the butt happens when we realize that both authors of these two games couldn't have made them if they had to do it in C++. They wouldn't know how to do it.

    Is making languages simpler a bad thing? I honestly don't know. Will computer programming become so simple in the future that anyone will be able to do it? I don't know. Is that a good thing if it does end up like that? Again...I don't know.
    I don't either, Bubba. But in one thing I believe: We are just getting closer to a critical point, in C++ at least. The requirements for complexity of software keeps growing and production values will keep increasing to levels that will eventually make it unsustainable for anyone to produce anything of value in a programming language like C++. We are already today being forced to construct development teams with tenths of individuals to release anything that meets today requirements. Mainstream AAA software based on C++ is becoming increasingly more expensive to produce, more complex to manage, and taking longer to reach production.

    The programming language needs a fix. Either that, or it will have to be one day abandoned for something else. This is not new. It's the same process that "killed" languages like COBOL. And the fact there has been a constant stream of new programming languages for the past decade and a half pretending to be the alternatives to C/C++ is revealing of the fact fewer and fewer people want to tackle with it as a means to create their every more complex software. We can be glad that C++ has survived this long. I'm just not sure for how long more will it be a mainstream programming language we can rely on to have work done.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  7. #22
    Registered User Char*Pntr's Avatar
    Join Date
    Sep 2007
    Location
    Lathrop, CA
    Posts
    198

    Smile

    Quote Originally Posted by Elysia View Post
    What exactly are you proposing? That new people take tests?
    No Elysia, that was a joke on my part. If that were to be implemented, then we'd have a flood of posts, something like "Help Help! I can't pass my test!" That would make things worse than they are now. Obviously, nothing is going to change. My posts, and others, are just to vent out a bit of frustration. And if others here have some things to vent out on this topic, I think they should be allowed to vent them out here without your approval. I think Bubba's post said it all, IMHO. And I'd like to thank you for the many times that you have helped me with my C programming questions! :-)

  8. #23
    Registered User
    Join Date
    Nov 2010
    Posts
    15
    It is not just newbs to programming, through school, college or real interest, who will join a forum but people who have had programming thrust upon them from different disciplines, the physical sciences etc, will begin to show up and ask for help. Programming is, after all, the future. We may not be pure blood but we're muddling through the best we can.

    Also I have this test coming up.....

  9. #24
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    I find myself so resistant to change in programming partly b/c I don't see any good on the other side of the change.
    I'm about there myself. I'm good with languages and tools evolving for the better, but I'll pass on all the change for the sake of change.

    The kick in the butt happens when we realize that both authors of these two games couldn't have made them if they had to do it in C++. They wouldn't know how to do it.
    You realize that do you?

    If a programmer is skilled with almost any programming language they can make virtually anything that they want.

    Soma

  10. #25
    Novice
    Join Date
    Jul 2009
    Posts
    568
    This site is becoming more popular because students are getting dumber. Which is doubly bad -- dumb students don't ask challenging questions, they just want "teh codez", and reduce our "smart" gravity, i.e. smart people are less attracted to places where dumb people congest. Bit of a downward spiral.

    I expect this trend will continue, as more and more universities train their students instead of educating them. Replaceable parts is what business needs, not people who are able to quickly learn new skills and technologies. Those people tend to be expensive, and seen as "overqualified". Sad times ahead.

  11. #26
    l'Anziano DavidP's Avatar
    Join Date
    Aug 2001
    Location
    Plano, Texas, United States
    Posts
    2,743
    I'm still waiting for us to beat the 2346 users we had online on 12-11-2008 at 6:24 PM.
    My Website

    "Circular logic is good because it is."

  12. #27
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Angola
    Posts
    8,445
    The ratio between online guests and members has always been high on Cprog. Assuming that number is beaten, we won't probably notice it.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  13. #28
    Mayor of Awesometown Govtcheez's Avatar
    Join Date
    Aug 2001
    Location
    MI
    Posts
    8,823
    I like that I can be away from this board for years and the same questions are being asked

  14. #29
    Codus Conjectus spongefreddie's Avatar
    Join Date
    Sep 2010
    Location
    USA
    Posts
    86
    It's late at night. I'm only two exercises away from finishing my first textbook on the C language, and I'm feeling chatty, so I thought I'd add my two cents to this discussion... knowing full well I'm still merely a fetus in hackerland. Regardless...

    The age of instant information is greasing the gears for the ethos of automation that is slowly sliding every technical aspect of our lives 'under the hood.' Why should the generations raised in this era be expected to do anything more than press a button? I would argue that there is still an inestimable value in understanding the algorithms that are often hidden to the programmer in more 'evolved' and specialized languages.

    Looking 'under the hood' is precisely why I'm interested in programming. For that reason I chose C; I read enough about the various programming options to gather that it is a good way to develop an intimate relationship with my computer hardware. If someone wants to plug-and-play some Internet-downloaded code into .NET and make a million dollars, I say, have at it. I'd rather get my kicks from those sweet revelatory moments that make all the extra effort worth it. Apple users used to dismiss us clone users as 'tinkerers.' I wear that label very proudly, thank you.

    As for the relative mental capacities of current university students... we may never be able to discern them with any accuracy, as they're possessed by the demons of distraction, addicted to never-ending truckloads of electronic crack, and rarely ever sit still long enough to read a book, much less slog through something as arcane and elegant as pointers or BST's.

    But, hey, what would I know? I'm just an old geezer barely out of the C logic gate.
    Last edited by spongefreddie; 12-04-2010 at 01:36 AM.
    V8 Interceptor: KDE Neon 5.15
    Steering wheel: gcc 7.3.0 in Code::Blocks 16.01
    Supercharger: NASM 2.13.02
    Engine: AMD Ryzen 7 1700
    Dashboard: NVIDIA GeForce GTX 1060 6GB
    Rusty old trailer for hauling 50% of my Steam games: Windows 7 Pro 64bit SP1
    Roach-infested ORV for Bandlab Sonar: Windows 7 Pro 64bit SP1

  15. #30
    Officially An Architect brewbuck's Avatar
    Join Date
    Mar 2007
    Location
    Portland, OR
    Posts
    7,398
    Quote Originally Posted by spongefreddie View Post
    The age of instant information is greasing the gears for the ethos of automation that is slowly sliding every technical aspect of our lives 'under the hood.' Why should the generations raised in this era be expected to do anything more than press a button? I would argue that there is still an inestimable value in understanding the algorithms that are often hidden to the programmer in more 'evolved' and specialized languages.
    It goes beyond value. It is necessity. The technology we surround ourselves with is not handed to us by aliens, it is created by human beings. To most people, including even a large portion of those who program the machines, the physical machine itself is magical. "What use is there in learning assembly language anymore?" The use is that, without the knowledge, the devices become incomprehensible and unduplicable. The people who comprehend the lower depths of the machine are becoming a smaller and smaller fraction. If people do not continue to learn these depths, we risk creating an elite class of technologists who rule the rest of us.

    At the risk of sounding like an egotistical ass, the level of my knowledge is such that I could absolutely lord over most of those in rudimentary technology programs such as "bachelors" of computer science. I am not in any way pleased by this. In fact, I find it highly disturbing. My greatest fear is that the dwindling population of physical technologists will become so small that it is no longer able to sustain the industry. What will eventually happen is a sudden collapse of the manufacturing potential followed by a centuries-long period of stagnation in the development of technology.

    Yes, I'm cynical.
    Code:
    //try
    //{
    	if (a) do { f( b); } while(1);
    	else   do { f(!b); } while(1);
    //}

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Need Help Please
    By Ekrish in forum C Programming
    Replies: 13
    Last Post: 12-11-2009, 03:59 PM
  2. C program using structs to calculate grades
    By TampaTrinDM88 in forum C Programming
    Replies: 4
    Last Post: 07-06-2009, 12:33 PM
  3. Contract Cheating
    By jim mcnamara in forum A Brief History of Cprogramming.com
    Replies: 61
    Last Post: 05-22-2009, 06:29 AM
  4. new problem with class
    By jrb47 in forum C++ Programming
    Replies: 0
    Last Post: 12-01-2006, 08:39 AM