Thread: What do you guys think about this CodeYear thing?

  1. #1
    Make Fortran great again
    Join Date
    Sep 2009
    Posts
    1,413

    What do you guys think about this CodeYear thing?

    Learn to code, get a job - CNN.com
    Code Year
    Learn to code | Codecademy

    This guy at work who can barely write a batch script won't shut up about this CodeAcademy site which has crappy little Javascript tutorials, and then Michael Bloomberg decided to join the Code Year pledge thing and it's on CNN.

    Is it just me or is this just all in poor taste? Seems like the prescription for a wave of terrible script kiddie programmers. I don't claim to be that good myself, but with this site I can at least ask how to do something and/or try it myself, and then ask for criticism so I can learn how to do something the right way.

  2. #2
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    We could always use script kiddies... they're not going to take our jobs, but at least they'll have a bit more competence with computers and programming than the everyday man does right now. I support anything that promotes understanding computers even if they're not really doing it right. It's not like they're suggesting you should drop everything and study exclusively with CodeAcademy... it's meant to be supplemental to your current skill set.

    You have to try not to grade everyone who attempts programming on the level of a professional programmer... sometimes that's not what everyone is looking for. Sometimes people are just looking to have a few more options available at their disposal when they put together an Excel spreadsheet. I've spent plenty of times working in operations departments in banks and if you've seen the things some people do manually, it'd blow your mind. The only time you have to worry about "script-kiddies" or poor programmers is when they already have a job they shouldn't be doing with control over things they probably shouldn't be touching.
    Last edited by SlyMaelstrom; 01-12-2012 at 09:31 PM.
    Sent from my iPadŽ

  3. #3
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,613
    My experience with the immersion method has never worked, personally; at least when it came to programming. I learned (then forgot) VB this way. That was a very strange text book to read. I'm surprised there wasn't some learning disc attached to the back with some kind of achievement noise. They could have wrote, "please play the achievement noise now," after each chapter. Each chapter written as a list.
    Last edited by whiteflags; 01-12-2012 at 10:40 PM.

  4. #4
    Novice
    Join Date
    Jul 2009
    Posts
    568
    Quote Originally Posted by SlyMaelstrom View Post
    We could always use script kiddies... they're not going to take our jobs, but at least they'll have a bit more competence with computers and programming than the everyday man does right now. I support anything that promotes understanding computers even if they're not really doing it right. It's not like they're suggesting you should drop everything and study exclusively with CodeAcademy... it's meant to be supplemental to your current skill set.
    Little knowledge can be more dangerous then complete ignorance. More so if it promotes a false sense of competency.
    Disclaimer: This post shows my ignorance at the time of its making. I claim ownership of but not responsibility for all errors in it. Reference at your own peril.

  5. #5
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    The CNN article implies that a lot of the people wanting to do this perhaps don't have professional aspirations -- eg, Michael Bloomberg -- but perhaps work in a field where IT is important (like Michael Bloomberg).

    If that's the case, I think this is good. It may give people an appreciation of what's involved, since anyone who thinks they are going to "learn computer code by the end of the year" in the amount of spare minutes per day Michael Bloomberg has is kidding themselves. In general, it seems to me people who don't program have no idea what goes into it.

    I've never had to deal with a completely naive client or manager before -- all the work I've done was either subcontracted, or for an organization that employed other programmers and I dealt with experienced management -- and dread the idea of having to do it. I'd way rather deal with someone who had at least an inkling of knowledge and therefore could understand things in greater, more realistic, detail.

    It also reminds me of people who have the great suggestions about "this app you should make". Next time I will point them to CodeYear and tell them to go make their own million dollars.
    Last edited by MK27; 01-13-2012 at 09:25 AM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  6. #6
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    Quote Originally Posted by msh View Post
    Little knowledge can be more dangerous then complete ignorance. More so if it promotes a false sense of competency.
    How vague and entirely unfounded... tell me how everyone knowing a little bit about programming is at all dangerous to society? Where is anyone suggesting a false sense of competency? The goal of this project is to give people a small basis in a subject that almost everyone is bound to run into at some point in their professional career yet very few people actually know anything about. There is no harm to programmers if everyone has programming 101 under their belt.
    Sent from my iPadŽ

  7. #7
    Novice
    Join Date
    Jul 2009
    Posts
    568
    Quote Originally Posted by SlyMaelstrom View Post
    How vague and entirely unfounded... tell me how everyone knowing a little bit about programming is at all dangerous to society? Where is anyone suggesting a false sense of competency? The goal of this project is to give people a small basis in a subject that almost everyone is bound to run into at some point in their professional career yet very few people actually know anything about. There is no harm to programmers if everyone has programming 101 under their belt.
    Yea. I should explain my concerns.

    I fear that this could devalue Programming as art and craft.

    I agree with you that, yes, more people having programming 101 under their belts is not, inherently, a bad thing, and that all participants, being the reasonable human beings that they are, will understand the limitations of this course and thus realistically asses the level of competency they will possess after its completion.

    But (a) humans are anything but reasonable and (b) have a natural tendency to over-estimate their own level of skill. Thus I fear that, after the completion of CodeAcademy course, they could be left with an impression that what they've just learned is all there is to programming. Which would be dangerously false. It would mean that, in their eyes, programming can be equated to near-unskilled labour that a trained monkey can do. And it's not unthinkable that some would push the envelope on this and decide that they are fit judge the skills of others, perhaps actually competent programmers with years of experience. Google Dunning-Kruger effect for funsies.

    And perhaps I'm being excessively pessimistic, but I'd hate to see this come true.
    Disclaimer: This post shows my ignorance at the time of its making. I claim ownership of but not responsibility for all errors in it. Reference at your own peril.

  8. #8
    Make Fortran great again
    Join Date
    Sep 2009
    Posts
    1,413
    Quote Originally Posted by msh View Post
    Yea. I should explain my concerns.

    I fear that this could devalue Programming as art and craft.

    I agree with you that, yes, more people having programming 101 under their belts is not, inherently, a bad thing, and that all participants, being the reasonable human beings that they are, will understand the limitations of this course and thus realistically asses the level of competency they will possess after its completion.

    But (a) humans are anything but reasonable and (b) have a natural tendency to over-estimate their own level of skill. Thus I fear that, after the completion of CodeAcademy course, they could be left with an impression that what they've just learned is all there is to programming. Which would be dangerously false. It would mean that, in their eyes, programming can be equated to near-unskilled labour that a trained monkey can do. And it's not unthinkable that some would push the envelope on this and decide that they are fit judge the skills of others, perhaps actually competent programmers with years of experience. Google Dunning-Kruger effect for funsies.

    And perhaps I'm being excessively pessimistic, but I'd hate to see this come true.
    That's a great point. Especially with the way the majority of morons are out there, they'll just think "Programming isn't anything special, you can learn that on ____ site in a couple of weeks." All you guys who actually work in the software field are already in competition with outsourced programming, this sort of thing devalues you even more.

  9. #9
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    I really don't know what to think about what's being said... there is a whole lot you can do with programming without getting into anything complicated or special. Some programmers really need to stop convincing themselves that everything they do is so incredible that only a select class of people can do any of it. What a person can learn in a year can save them a lifetime of manual effort. Conditional statements, control structures, basic I/O... it can go a long, long way and it doesn't take much intelligence to learn it. I don't know if you work in a living stereotype of a department, but where I'm from most of the people I know are more than competent enough to program if they could just get past their own feelings of intimidation.

    That's all this is trying to achieve... it's asking people to take a look at programming and realize that there is a whole lot that can be achieved with little knowledge and little effort. Are you going to be up to a professional level in a year? No, of course not. Are some people going to think they are after a year? Sure... but then programming has tangible results, doesn't it? All it really takes is a few failed attempts at something above their pay grade for people to lose their ego about it. I really don't get the "If you're not going to dedicate yourself to it as much as I do, then don't bother" attitude. That's like Lance Armstrong starting a campaign to get people off of bicycles unless they're planning on trying to compete in the Tour de France. If an influx of people with basic programming knowledge has you concerned for your job or pay scale then you can't be very good at what you do.
    Last edited by SlyMaelstrom; 01-18-2012 at 08:46 PM.
    Sent from my iPadŽ

  10. #10
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Google Dunning-Kruger effect for funsies.
    Okay, so the first time I heard of this one was here:

    Is this really true ?

    But I think you have misinterpreted an element of it, vis, that people who exemplify the effect are also prone and able to recognize the error of their ways when they are made aware of it*. I think a fairly significant percentage of people actually learn this way -- by over-estimating themselves, failing, getting back on a horse.

    I say, the more horse the better!

    Quote Originally Posted by mst
    I fear that this could devalue Programming as art and craft.
    You forgot as science, skill, and practice. That's a high horse. Isn't the Dunning-Kruger effect all about over, under, de-, and re- evaluation?

    * just not all of them
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  11. #11
    Make Fortran great again
    Join Date
    Sep 2009
    Posts
    1,413
    Quote Originally Posted by SlyMaelstrom View Post
    I really don't know what to think about what's being said... there is a whole lot you can do with programming without getting into anything complicated or special. Some programmers really need to stop convincing themselves that everything they do is so incredible that only a select class of people can do any of it. What a person can learn in a year can save them a lifetime of manual effort. Conditional statements, control structures, basic I/O... it can go a long, long way and it doesn't take much intelligence to learn it. I don't know if you work in a living stereotype of a department, but where I'm from most of the people I know are more than competent enough to program if they could just get past their own feelings of intimidation.

    That's all this is trying to achieve... it's asking people to take a look at programming and realize that there is a whole lot that can be achieved with little knowledge and little effort. Are you going to be up to a professional level in a year? No, of course not. Are some people going to think they are after a year? Sure... but then programming has tangible results, doesn't it? All it really takes is a few failed attempts at something above their pay grade for people to lose their ego about it. I really don't get the "If you're not going to dedicate yourself to it as much as I do, then don't bother" attitude. That's like Lance Armstrong starting a campaign to get people off of bicycles unless they're planning on trying to compete in the Tour de France. If an influx of people with basic programming knowledge has you concerned for your job or pay scale then you can't be very good at what you do.
    When I read on here a few months ago about how many CS grads fail the fizzbang test, I would have to disagree and say that being a competent programmer is a feat in itself. And none of this has nothing to do with my abilities, it has everything to do with retarded managers who don't know how to judge the value of employees. The person at my work isn't of threat to me because he's already a manager and therefore would not be doing any programming himself. I'm more concerned about the already large amount of script kiddies out there (outside of my company), which is certainly going to increase now.

  12. #12
    Devil's Advocate SlyMaelstrom's Avatar
    Join Date
    May 2004
    Location
    Out of scope
    Posts
    4,079
    Quote Originally Posted by Epy View Post
    When I read on here a few months ago about how many CS grads fail the fizzbang test, I would have to disagree and say that being a competent programmer is a feat in itself.
    But surely you can differentiate between the results of someone aiming for a meaningful piece of paper vs someone who is getting nothing out of their training besides the acquired knowledge. India, right now, has a huge problem with students that bribe their professors for a grade... they don't do this so the "Fizzbuzz" question can be instantly zapped into their head. They do it so they can write the degree they were given on their resume. I'm sure almost all of them went into their interviews knowing that they don't actually know jack about programming. The CodeYear initiative is asking people to dedicate their own time to learning something with no additional gains. That is to say, if they can confidently admit that they didn't actually learn anything, then they'd know they aren't holding any cards for a programming position.

    Additionally, I have worked with tons of non-programmers who's head would probably explode if they saw the "FizzBuzz" question, yet they can copy and paste chunks of code I've written in the past, change a couple of words and numbers, and end up with some pretty useful stuff. It can be disgusting, inefficient, and unmaintainable... but it works for what they need it for, saved them tons of man hours, and I can comfortably lean back in my chair, smile, and say to myself "Wow... this guy will never, ever have my job."

    Here is a funny story for you all... About five years ago when I worked in an Ops department for a brokerage firm, I wrote a simply little data stripping program from the IBM mainframe terminal they're still using. It was done using this little VB-like language that the terminal emulator had built into it. At one point, after the I/O code was written, I decided to throw in a little progress bar with their half-assed dialog system, but I hacked it together really fast and got pulled away before I could test it and finish it properly. Somehow, however, this was the version the staff got their hands on and they used it for a year after I had moved to a different role. When I came back to visit, I saw that one guy was using it and he was just sitting at his desk jiggling his mouse back and forth really fast while the terminal was flashing through the screens. I went up to him to ask what he was doing and he said "I'm using the program you wrote for us." When I noticed that there was a progress bar, I got confused, so I took a look at the code they were using... it turned out I was basing the form drawing on some event that demanded that the user wasn't idle... so every time they wanted to strip data, they would have to sit in front of their computer and keep jiggling their mouse just so the program would keep chugging along. ... and all I remember thinking as I was staring at my stupid error was "Geez... if only someone else here had known a little bit about programming..."
    Last edited by SlyMaelstrom; 01-19-2012 at 06:00 PM.
    Sent from my iPadŽ

  13. #13
    Make Fortran great again
    Join Date
    Sep 2009
    Posts
    1,413
    You have valid points. I've just been made fairly negative by my current job and know that if my company operates the way it does, there's a good chance that there are other companies out there who operate the same way.

  14. #14
    Registered User
    Join Date
    Jun 2005
    Posts
    6,815
    Quote Originally Posted by msh View Post
    I fear that this could devalue Programming as art and craft.
    All of your other points I agree with. This particular one I do not.

    My view is that the worst thing that has ever been done for computer programming, or for software development in general, is describing it as some sort of art or craft, with all the sense of mystery or black magic that implies to many people.

    What is really needed to address problems of software is to treat it as science and engineering. There is intellectual discipline needed to design and develop the foundations of software and, more importantly, to get them working correctly. We are nowhere near that point yet but, increasingly, software is being used to do things that are very difficult to do in any other ways.

    Many applications (including control of aircraft, control of pace-makers, control of nuclear power plants, elevator control systems, automotive control systems, even control of a magnetron in a microwave oven) put people in grave danger if they malfunction. And you know what the greatest impediments are to getting those applications working?

    The first impediment is developers who insist on hacking, and then testing by putting the software in the end-use environment and bypass policy, engineering, or technical safeguards in a way that puts people at unnecessary risk. It is very difficult to teach someone who has learned by hacking that those safeguards are there for a reason, not as something to be bypassed or hacked around.

    The second impediment is managers who think "it's just software" .... often encouraged in that view since they have completed a 3-day "programming 101" course or some management overview thereof. These people insist on using software for many things that can't be done (cost effectively) any other way. They also view software development as something that is easy to learn, in part because there is so much material out there claiming to provide the ultimate ease of development and the ultimate productivity support (where "productivity" is specifically measured in terms of volume of software that can be churned out, and number of "features" that can be added to software, not in terms of ability to provide evidence that software works as intended, in whole or in part). These people look at novices who have done "computing 101" or similar courses, and employ them on projects that demand vastly more than those courses have prepared anyone for. If they are managing the types of software that, if it goes wrong, will kill people .... much of their effort is spent lobbying regulators or governments to relax the rules, a lot of effort is spent in selling the benefits and achieving sales, and (if we are lucky) a little effort is spent in recruiting and developing a good engineering team, and supporting the work of that team. The view of software as an art rather than a discipline also encourages them to rely on silver pellets (or herculean effort by some dedicated developer somewhere) in getting the software working right. Bear in mind that one tenet of most management and business administration education is that management techniques are universally applicable, and that it is unnecessary to understand particular technical (engineering, scientific, actuarial, mathematical, whatever) disciplines in depth in order to manage technical work.

    The third impediment is the education system itself, as it is concerned with computers and software. I do not dispute the importance of "computing 101" courses, but the focus of a lot of such courses is often the use of computer software (for example, spreadsheets, work processors, etc) backed up with a little hacking (aka scripting) and there is very little on the disciplined development of such software. So we get a lot of people having completed the basic courses, believing they are computer literate because they can use certain software suites, and then seek jobs to do things right outside the sphere what they have learned. The courses beyond "computing 101" are seriously compromised as well. How often do we see educators who are insisting on using tools that were superseded decades ago? How often do we see educators passing on a particular fad (programming language, paradigm, or whatever) as the panacea to all problems of software development? How often do we see vendors investing significant effort in locking educators and students into their particular product (programming language, IDE, or other tool)? How many people who have completed a "computing 101" course understand even the elementary aspects of computer architecture that impose most practical limits on programmers?

    In the end, I am an advocate of good education. However, it is highly debatable whether programming 101 courses achieve that. The best case is that these courses provide the foundation, so people can move on and learn the techniques and disciplines needed to be effective software developers, or effective managers of software developers. However, a lot of these courses are portrayed as an end in themselves, and are certainly not intended as a first step towards an education. The worst cases are that they encourage a simplistic view of programming, can provide "negative learning" (they teach stuff that has to be unlearnt before one can do things properly or effectively in the real world) and encourage a view of software development as something simple, trivial, and easy to manage.

    None of that means I consider the art and craft of programming should be eliminated. But, if you were building a skyscraper, you need the foundations to be correct before you can support the aesthetic, artistic, and other creative characteristics that make your skyscraper a thing of beauty. There is no point on having a skyscraper that is a towering monument to beauty, if a gust of wind from the wrong direction can make it fall. But, somehow, in software there is often an attitude that we can focus on the surface attributes, and ignore the foundations.
    Last edited by grumpy; 01-19-2012 at 07:15 PM.
    Right 98% of the time, and don't care about the other 3%.

    If I seem grumpy or unhelpful in reply to you, or tell you you need to demonstrate more effort before you can expect help, it is likely you deserve it. Suck it up, Buttercup, and read this, this, and this before posting again.

  15. #15
    Make Fortran great again
    Join Date
    Sep 2009
    Posts
    1,413
    Not saying anything either way, but a lot of people I know do see it as black magic as you say. Being a mechanical engineering student, almost all other students show a look of puzzlement when I start talking anything related to computers or electronics, or see me do something neat in MATLAB, which is a weak programming language to begin with.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Hey Guys, can anybody help?
    By MstrKurt in forum C Programming
    Replies: 13
    Last Post: 01-05-2012, 01:37 PM
  2. Need some help guys.
    By elvar88 in forum C Programming
    Replies: 4
    Last Post: 11-12-2009, 02:50 PM
  3. Replies: 5
    Last Post: 12-05-2008, 10:04 PM
  4. Thanks Guys...
    By frodonet in forum C Programming
    Replies: 0
    Last Post: 11-03-2007, 08:16 PM