Why Coding Is Not the New Literacy 212
An anonymous reader writes: There has been a furious effort over the past few years to bring the teaching of programming into the core academic curricula. Enthusiasts have been quick to take up the motto: "Coding is the new literacy!" But long-time developer Chris Granger argues that this is not the case: "When we say that coding is the new literacy, we're arguing that wielding a pencil and paper is the old one. Coding, like writing, is a mechanical act. All we've done is upgrade the storage medium. ... Reading and writing gave us external and distributable storage. Coding gives us external and distributable computation. It allows us to offload the thinking we have to do in order to execute some process. To achieve this, it seems like all we need is to show people how to give the computer instructions, but that's teaching people how to put words on the page. We need the equivalent of composition, the skill that allows us to think about how things are computed."
He further suggests that if anything, the "new" literacy should be modeling — the ability to create a representation of a system that can be explored or used. "Defining a system or process requires breaking it down into pieces and defining those, which can then be broken down further. It is a process that helps acknowledge and remove ambiguity and it is the most important aspect of teaching people to model. In breaking parts down we can take something overwhelmingly complex and frame it in terms that we understand and actions we know how to do."
He further suggests that if anything, the "new" literacy should be modeling — the ability to create a representation of a system that can be explored or used. "Defining a system or process requires breaking it down into pieces and defining those, which can then be broken down further. It is a process that helps acknowledge and remove ambiguity and it is the most important aspect of teaching people to model. In breaking parts down we can take something overwhelmingly complex and frame it in terms that we understand and actions we know how to do."
yes, programming, like poetry, is not words, unive (Score:4, Insightful)
I've always thought programming is more like writing POETRY than just being literate - not everyone needs to do it. Both involve writing down words, but knowing the vocabulary and grammar isn't the really the point.
If you wanted everyone to be a programmer, you wouldn't teach them code, you'd teach them skills of system design, troubleshooting, etc. But why would you want everyone to be a programmer? That's like teaching everyone to be a diesel mechanic or poet. Kind of a waste of time.
Re:yes, programming, like poetry, is not words, un (Score:5, Insightful)
Pretty much this. The whole push to have 'everyone' code is because it's trendy and is a definable skill, unlike 'learning how to think' or reason. And it segues quickly into 'jobs' which makes everybody happy. Further, there is this odd belief among many people (including a whole raft of Slashdot posters) that software can do anything and the world should be viewed through the lens of a Von Neumann machine.
Coding is a subset of human activity, not a superset. Even modeling, as championed by TFA is only a small part of human learning.
But schools are in a tough place. They are supposed to teach everyone, from the next Albert Einstein to the kid that will be sweeping the floor. They're supposed to push the latter child farther and faster than they could possibly go while not slowing down the new Einstein. All the while acting as in loco parentis, cop, judge and diaper changer.
For only $29.95 per child.
Re: (Score:2)
I'd put it a different way. From TFS, they try to create an analogy between coding and composition, that just isn't remotely appropriate. If coding is the new literacy, software engineering is the new composition. Yet reading and writing, basic literacy, help billions of people who are neither authors, nor poets in doing their everyday job. Literacy enabled a huge revolution in the workforce, and life in general.
Coding is a tool, like a hammer. Anyone can wield a hammer, some people do so far more proficien
Re: (Score:2)
Yet reading and writing, basic literacy, help billions of people who are neither authors, nor poets in doing their everyday job. Literacy enabled a huge revolution in the workforce, and life in general.
That's what I understand to be the aim of the HtDP project - to put a decent number of people into some reasonable place between the alphabet and Shakespeare.
Re: (Score:2)
So why do we treat "using a computer" specially?
Shouldn't we also teach them about say, cars? And we should add in the legal system. Perhaps IP law, since the majority of /.'s seem to be so intelligent about IT things but completely illiterate
Re: (Score:2)
If I can take one thing away from what's being said without managing to actually get to the point it's that apparently what we really need is to do a better job of teaching mathematics.
I mean, that's really what it all comes down to.
Programming is ultimately just an application of that. The reasons for needing to teach it universally ultimately seem to fall back to the simple fact that current methods of, and the areas of mathematics teaching are currently failing kids.
So rather than recognising that giving
Re: (Score:3)
Scools and education are mighty bizarre places.
There's weird emphasis on useful things except where there isn't.
No one pretends that literary criticism is a useful skill, or that reading books is anything other than entertainment. Yet it is taught. Likewise, History is only needed if you're going to teach history, but it's taught because knowing history is part of being a well rounded person.
Apparently things that can be technical have to be useful.
Personally I think programming should be taught in schools
Re:yes, programming, like poetry, is not words, un (Score:5, Interesting)
I would not say it's like poetry, any more than I would say it can be taught like a foreign language. Neither is true in the broad sense.
My context comes from a Math/Philosophy education (before we had CS degrees). I am not a programmer for a living, but I have had to write programs for nearly 30 years. My "programming" is not something a user normally interfaces with, my programs have to interface with everything else. I have had little problem writing in Perl, Ruby, C, various "sh" scripts, and started with Fortran and Pascal. The reason I could do this is because I know concepts that sit underneath, I know logic and can break problems down to components. I know how to take knowledge in one subject and use it to my advantage in other subjects. Wisdom came with age and practice, but I needed the base knowledge to start with.
This giant push for STEM will not teach people critical thinking and logic, which you can benefit from in any job. This "push" won't make better programmers, because we are not teaching the core logic.
See, the problem with teaching everyone logic is that it comes at a risk. People in power don't want to be questioned, and a bunch more smart people would cause problems. Hence, why teaching Logic and Rhetoric was removed from public schools as soon as the US Government took over the role of dictating a national policy in the 1930s. Here [truth-out.org] is a good summary of political opinion on critical thought, and more can be found written by "insiders" on the subject as far back as the founding of the US Department of Education
For those that want to claim that "we are so much smarter today than we were in the 50s" I will point you to this [bullittcountyhistory.com], and scoff. No, we are not anywhere near it. You just fall for the appeal to emotion that gets tossed out all the time to make you feel good about yourself and our pathetic level of public education.
Re: (Score:3)
I've always thought programming is more like writing POETRY than just being literate
I disagree. You don't hire poets to design a space ship - it may be pretty, but it won't work. You don't hire sci-fi writers either - it may look workable to the masses, but the pesky laws of physics and economics will have their say.
Programming is more like engineering. As in being able to construct something that actually works.
Coding, on the other hand, is more like manufacturing, where you produce something based on what the engineers have come up with.
But too often these days, it's not engineers tha
yes, I was relating it to literacy (Score:2)
Agreed, competent software engineering is more like mechanical engineering than it is like poetry. There's a reason the National Society of Professional Engineers has recently added a software engineering as one of the disciplines they certify in, along with mechanical, chemical, etc.
My analogy to poetry was only in the frame of the article talking about coding as LITERACY.
Literacy is general purpose.
Writing software is a specific skill set few people need, with computer literacy as the prerequisi
They tried this in the early 1980s (Score:5, Insightful)
>> furious effort over the past few years to bring the teaching of programming into the core academic curricula
They tried this in the early 1980s and all we got was the Internet at everyone's home, online shopping and news, free video conferencing, entirely new ways to organize photos, transportation and events, realism-quality video gaming, and cell phones so easy to use that toddlers can participate in the world wide web.
What good could coding literacy possibly do now?
Re: (Score:3)
Re: (Score:2)
The early 1980's was when I discovered in the 7th grade that I came from a "poor" family for not having cable TV to get MTV and an Apple ][ to complete my Logo homework assignments. Worst part, it was the girls who told me.
I wanna know what the girls had to say! :)
I guess I was considered poor, staying at home while the better half pulled in just enough to meet the basics.
Early 80's I started "coding" or teaching myself Basic on the TRS 80 III (cassette storage) that was given to me. I was good except when it came to arrays. but it's also the only thing I had to do, MTV (local station) in the back ground but that was it. The TRS had it's own magazine of which I was also given (many in fact) that had basic programs which I wou
Uh, really? (Score:2)
Math (Score:5, Insightful)
Re: (Score:2)
They are still not talking about literacy - they are talking about problem solving. That makes it the new Mathematics, not the new literacy. (And yes, what I learned coding on my VIP not quite 40 years ago did help me with my degree in Math a few years later, so I do know what I'm talking about.)
Mathematics is under rated. I wish I'd of spent more time with it (progressing courses), but it's too late.
Re: (Score:3)
I wish I'd of spent more time with it (progressing courses), but it's too late.
Why is it too late? Are you almost dead?
Re: (Score:2)
This, indeed. Literacy is about being able to distill complex information from written sources that do not dwell too much on detail. Coding is about writing instructions for a machine that is too stupid to know that a cow is an animal unless someone tells it precisely how to do that. These two activities are pretty much opposites.
Coding does have a lot in common with math, and is also meant for problem solving. It does not share its universality, though. A more apt comparison would be: coding is the new wel
Coding is not literacy. (Score:2, Insightful)
It's more like the old Car maintenance. A skill you can use so you don't get screwed because you know nothing about what makes an important component of your life function.
Re: (Score:2)
>> knowing how to write a script that can read in one CSV file and output another could save a lot of work and cure a lot of mistakes
Yet in the real world, corporate IT departments continue to punish people dropping scripts in their spreadsheets.
Re: (Score:2)
We need better software, not more programmers (Score:5, Interesting)
It's been this way whenever a new technology became normalized in the public eye.
I had a chat with my late grandfather about this in the mid-90s. I told him about when I was a kid and there was a big push in making children "computer literate". So much so, in fact, that I took a class in 3rd grade or 4th grade in LOGO on a VIC-20.
My grandfather said that reminded him of when he was a boy in the 1930s. In his time people thought EVERYTHING would be mechanized and learning how machines work and how to fix them would be required to be literate in the future. So, he actually took classes in engine design (!) and maintenance in the mid-30s, and it wasn't a vocational school.
As we all know, the deep knowledge required to design a car or an oven similar machine is held by specialists and baked into the products we buy.
Similarly, the deep knowledge required to program a computer to do useful work SHOULD be baked into the products we buy.
Think of it this way: who needs to read the manual when they get a new car? You just figure it out because it is largely intuitive. A TON of non-intuitive thought went into making the car easy to use.
I think it is our responsibility (those of us here who are engineers) to work towards putting that level of ease of use to work. This is the real reason Apple is popular. Their stuff is easier to use than most other products and people are HUNGRY for that.
We don't need to teach every kid to program. We just need better programs.
Re:We need better software, not more programmers (Score:4, Insightful)
Re: (Score:2)
Re: (Score:3)
Think of it this way: who needs to read the manual when they get a new car? You just figure it out because it is largely intuitive. A TON of non-intuitive thought went into making the car easy to use.
Driving a car is not intuitive - there's a reason it takes a while to graduate from a learner's permit to a full license. What is it is familiar - most cars are driven the same way with some minor variations (which side the indicator is on, where the handbrake is, etc.) and only one major one (manual vs. automatic transmission). I'm not convinced that anything is truly intuitive, given that even simple things like handwriting need to be taught.
I agree that there is something to be said for making technology
Coding vs. literacy (Score:4, Interesting)
Hmm. If you can't read, you are restricted to looking at pictures. If there is someone to read for you, then you can hear the parts of text they choose to read for you, otherwise you are pretty much restricted to children's picture books. A lot of what happens in the world is simply a mystery to you.
If you can't program, you are restricted to using existing features in the way they are implemented. If there is someone to help you, then they can write a piece of code for you to do whatever mundane task (be it VBA, shell script, a feature or a complete application), otherwise you are pretty much restricted to clicking at links, icons and menus. A lot of what happens in the computer is a mystery to you.
Hmm. Not convinced, myself.
Re:Coding vs. literacy (Score:5, Interesting)
Hmm. If you can't read, you are restricted to looking at pictures. If there is someone to read for you, then you can hear the parts of text they choose to read for you, otherwise you are pretty much restricted to children's picture books. A lot of what happens in the world is simply a mystery to you.
That's happening more and more. I find myself going to web sites looking for manuals and specs, and all they have these days are videos. I don't want videos, I want text, with orders of magnitudes higher information density, searchable and editable.
Dumbing down seems to be across the board. User interfaces, recipes, clothing, handwriting, ability to add and subtract without a cash register or calculator, you name it.
And yes, "coding". Which has taken over for programming. The typical modern "coder" builds houses out of Lego. They may look colorful and shiny, but at the end of the day it's still Lego.
Gone are the days of programmers who actually devised algorithms and discussed them, instead of Googling for something that might be pressured into service. People who would understand what an OS call actually did, instead of treating it as magic. Something as simple as describing what happens behind the scenes when doing an IO request is beyond many newer coders (some of which I work with).
Programmers, they aren't.
We have to start expecting more, and stop rewarding and kowtowing to incompetence.
Re: (Score:2)
Re: (Score:2)
I'm not talking about messing with IO requests. I'm talking about understanding what happens when they're issued, whether it's by you or a library you use, so you don't lock up a system for no good reason.
But these days, this is considered "arcane knowledge" and is ignored, in favor of blindly using magic toolkits and libs, and blaming the system for not performing when it's the app that is badly designed out of ignorance.
Re: (Score:2)
What you talking about is spending 80% of total effort on 20% of the features of the product. Often these features are not even readily visible to anyone.
Apps not freezing or crashing or becoming unusable by the customers aren't features.
They're side effects of programmers (among other things) actually understanding the underlying system and what happens when you poke the beast.
Re: (Score:2)
Gone are the days of programmers who actually devised algorithms and discussed them, instead of Googling for something that might be pressured into service. People who would understand what an OS call actually did, instead of treating it as magic. Something as simple as describing what happens behind the scenes when doing an IO request is beyond many newer coders (some of which I work with). Programmers, they aren't.
Yeah, this is sad, and your last sentence true.
Re: (Score:2)
People who would understand what an OS call actually did, instead of treating it as magic.
...because a multiple-gigabyte behemoth of an operating system on a multicore 64-bit CISC processor is just as easy to understand as a 16K rom chip in a computer with an 8-bit instruction set.
Re: (Score:2)
You seem to have taken this very personal, resorting to personal insults for a post that had nothing whatsoever to do with you.
I suggest you change the relationship and automatically score mod my posts so you don't see them, because I will keep on ranting about things I feel like ranting about, out of the blue, without taking your feelings and opinions into consideration. They're worth exactly nothing to me - sorry.
Re: (Score:3)
You probably failed to read the last paragraph, or then I just wrote it too poorly to be understood.
That being said, I do understand how the browser, the OS, the ./ servers and databases, and the network in between work well enough, that none of it is a mystery to me. I think having this understanding is a good thing. I don't know if it is possible to have this understanding without being able to program at least a tiny bit. This sounds roughly analogous to being able to enjoy a good book vs. being able to
Re: (Score:2)
Ugh... (Score:3)
To achieve this, it seems like all we need is to show people how to give the computer instructions, but that's teaching people how to put words on the page. We need the equivalent of composition, the skill that allows us to think about how things are computed.
Ugh...if only we had something like this...we could call it "computer science" or something like that. We could even write textbooks about it! [neu.edu] But that's just a pipe dream, right?
Coding is problem solving ... (Score:5, Insightful)
At it's core, coding is problem solving, and relies on logic and reasoning to use the tools you have to solve a problem.
Debugging is thinking through logically what has gone wrong, examining the code, and possibly taking some educated guesses (hypotheses) about what might be the problem and what you might need to fix it (depending on the nature of the problem).
So, sure, teach coding.
But don't think you can do this with people who haven't got a good grasp of problem solving, applying logic and reasoning, formulating a hypothesis, and refining your knowledge based on some experimentation -- which over time grows into a body of knowledge.
Do they still teach any of those in schools?
Re: (Score:2)
Do they still teach any of those in schools?
Nope, and I wish I would have saw this before my long post above since they are related.
Re: (Score:3)
Needless Distinction (Score:5, Insightful)
I believe the answer is yes. Through coding, kids can apply and solidify the math they learn in school in a useful way. It also builds a mentality of experimentation that can help with the sciences. It also makes use of writing in general, making english class even more relevant. Real programmers depend on writing well to communicate, which can make a huge difference (see stack overflow questions).
Also, the skill of 'modelling' systems can be practiced and taught through the construction of computer programs. It can be very useful to build reasoning skills that are useful even if the person never codes again. Many of the subjects taught in schools don't offer skills that can be used anywhere else but in that specific subject, and are only taught for the sake of 'forwarding the knowledge of that specific field', whereas coding seems to offer many skills that transfer over into other subjects.
code monkeys vs architects (Score:2)
Sure, (almost) anyone can code, just like (almost) anyone can string words together on a page. That's a bit different from being able to write a readable story (let alone novel), or construct a useful program.
I wouldn't trust an architect who didn't know how to lay bricks, but even less would I trust a bricklayer to design a house.
That said, to paraphrase Heinlein, everyone should know how to lay a brick, hammer a nail, write a paragraph and code a program; specialization is for insects.
This is so wrong... (Score:2, Insightful)
... Enthusiasts have been quick to take up the motto: "Coding is the new literacy!" But long-time developer Chris Granger argues that this is not the case: "When we say that coding is the new literacy, we're arguing that wielding a pencil and paper is the old one. Coding, like writing, is a mechanical act. ...
The new literacy?
.
GMAFB
Coding is a talent or a skill. Beyond that, there is nothing, not a single thing, special about it.
The extreme productivity that some software engineers possess is not due to their literacy in coding. It is due to their ability to look at, understand, and solve problems at a level higher than most.
It is not a question of literacy. It is a question of problem analysis and resolution.
[aside: I often wonder why software engineers constantly have he need to elevate thems
When something is "new" it doesn't imply... (Score:2)
...that other things are automatically obsolete.
"new" in this case means "additional". And no, this is not about generating "code monkeys", this is about giving people an insight into what computers are, and equipping them with enough knowledge so they can form their own ethical framework around it.
Computational Thinking (Score:5, Interesting)
This is a man standing too close to the forest to see the trees. He's right, but also completely wrong.
What is being taught is "computational thinking", not coding. Coding is just the conduit.
I've seen the stark difference in my work with primary and junior high kids (Scratch, Python, Javascript), where some kids learn sufficient language to enable them to do a bunch of neat things, but *still can't do it*. They're not making the neural connections between "here's a bunch of capabilities I have at my fingertips", and "here's how I put my capabilities together into a structure of my own creation to achieve my goal".
It's a skill that has application far beyond the keyboard. It's not about learning the syntax of a for-loop, it's about the epiphany that follows. Seeing a kids face when they (all too rarely) get it that they've become wizards and the sky is the limit, is priceless. They are visibly empowered and their view of their relationship with the world around them alters.
*That's* what it's about.
Re:Computational Thinking (Score:4, Insightful)
Indeed, but this is like bad spoken language teaching too. "What is the first-person singular subjunctive present suffix of third conjugation verbs?" may get the right answer, but the skill the learner really needs is to be able to say "I ask" in Latin. Any teaching that focuses on structure without meaning is hopelessly lost. The reason that coding should be considered a fundamental skill is that the alternative is to have a specialist class of coders who have no subject knowledge. How do you learn a language if you don't have anything to say?
There were a lot of computer concepts that didn't make sense to me until I found a real-world problem they modelled. I hated OO with a passion at university, because the examples and tasks we were given were contrived, rather than demonstrating a real-world need. As such, I think coding would be far better taught within the context of a content subject -- engineers have different problems from biologists, who have different problems from linguistics researchers. That also leads us down the road to declarative programming, because our beginners' programming skills courses are currently dominated by various fiddly technical details of the imperative language we're using that we have to deal with before we get to deal with our first problem.
My TRS-80 Color Edition (Score:3)
I spent a good bit of time in the woods building tree houses. Building a tree house followed a similar pattern each time. Find old tree houses in the woods. Scavenge material, especially the long boards for the floor/frame. Find or cut new material like saplings to fill in the gaps.
Then I got a TRS-80 Color Edition could hook to a TV. Suddenly I could "conjure up" raw material with code. If I needed a board I "coded" one. I could build anything I could imagine. I had indeed "become a wizard" and the
Forest knowledge, not just tree knowledge (Score:2)
In my opinion, those likely to be end users or power users mostly need to know about factoring (redundancy), set theory versus hierarchies; and associations, such as 1-to-many relationships versus many-to-many relationships.
Understanding loops and IF statements is good knowledge perhaps, but end users seem more lacking in practical knowledge about relationships of data objects (information) than they do relevant knowledge of loops and conditionals, and this leads them to poor decisions and confusion when wo
Fail (Score:3)
I'm a long-time developer too, and I don't equate coding with just putting instructions in a machine the same way I don't equate literacy with cursive writing. Anyone who's done 'coding' knows that the main part isn't the syntax of a particular language, an API or an IDE, but a way of setting goals, decomposing functionality and building it at various levels of abstraction. The word 'coding' is a bit of a misnomer and therefore people come up with false dichotomies like coding vs. 'development' or 'software engineering'.
The benefit of teaching programming to everyone isn't that everyone becomes a software developer, the same way that teaching writing to everyone does not make everyone a creative writer, still nobody argues for the eradication of teaching writing. But it gives the chance to all; gives a powerful problem solving tool for the slightly more academic type (e.g. helping their research); it gives a means of communicating complex relations, and people will gravitate to various levels of competence, including the ability to control ever more complicated home automation.
Ah maybe this guy is a _really_ long time developer and equates coding with punching cards... how is that relevant in today's world.
Duh (Score:2)
Why Coding Are Not the New Literacy
FTFY.
Coding is the new spelling (Score:3)
Coding isn't even the new grammar. It's the new spelling. The magic lies in the structure of the data and the dance of the algorithms. Programming is writing a novel; coding is learning how to spell.
I Think Literacy (Score:2)
Cart before the horse (Score:2)
Coding as the new literacy is putting the cart before the horse. To be able to code, one needs critical thinking skills. They need to understand logic (and not just AND OR NOT, but real logic). Those are the skills required for the new literacy. Coding is just one way those skills can be applied, but it does not make one literate, any more than strumming a few chords on a guitar makes one a musician. It is the underlying skills and understanding that makes one a musician and likewise, makes one literate.
coding should be taught as coding (Score:4, Insightful)
I want people to understand loops. Loops that happen a number of times, loops that run at least once and end on a condition, loops that are entered on a condition and may never run. I want people to get an understanding of how fast computers are at calculating things. I want people to understand functions, datatypes and recursion. These are all completely academic topics, nothing harder than long division. There is no reason not to teach this stuff. You can do it all with block based languages (scratch/blockly) or with various text languages. That doesn't matter. It is the fundamental concepts that everyone needs to be introduced to, just like everyone gets to do a bit of algebra and a bit of chemistry and a bit of geography.
when we have a president who can code ... (Score:3)
Re: (Score:2)
Saying "coding" is like it's learning medical billing or something. Which is probably more useful for most people.
Coding, or rather programming, is not a new literacy in the sense that exposure should be forced. Programming tools are free and there are free programming tutorial websites. That should more than suffice for today's equivalent of most of us here who did whatever we could to get our hands on a PC, type in programs to learn, taking courses by choice, and enjoying it.
We programmers are not more or
Re:What? (Score:5, Interesting)
Which is fairly meaningless.
Sure, I can check out a medical text from a library ... won't make me a doctor.
The fundamental basis of coding is applying logic, reasoning, problem solving, a lot of trial and error, and then refining it over the years.
Free access is meaningless, unless people are motivated to do it, and have the aptitude for it, and probably have some guidance. Very few people can teach themselves programming from soup to nuts and really grasp all of it -- I've known a few who did, but they were exceptions.
Unless things have changed, programming tends to have a double-tassel distribution -- you get it or you don't. Is this a fault in teaching method or available tools? Or is this a limitation on human brains? I honestly can't say, but I've definitely seen it.
I can tell you not everybody will do well with programming, and some will utterly fail at it -- and how you make it accessible to everybody, I don't know.
There's more grokking involved than most people are willing to admit. There is some aspect of it which actually is art.
Everybody says "programming is just math". Math might have conceived of programming, but I've known brilliant mathematicians who suck at programming. And I've know brilliant coders who suck at math. I don't believe they're one and the same.
I don't think coding is some secret voodoo to be held among the elite. But I don't think everybody is capable of doing it either.
Because it's not really how most people think and do stuff, and because historically, that double tassel is a real thing no matter what people want to believe.
Re: (Score:2)
Sure, I can check out a medical text from a library ... won't make me a doctor.
Not a doctor, no, because not all the information is available, and you need to be licensed. All the information is available to learn how to code, and there's no license required.
Re: (Score:2)
Re: (Score:2)
Re:You nerds need to get over yourselves (Score:5, Insightful)
Anyone who's taught programming at a university level will know that even among intelligent students who want to learn, there are a large minority who (while they have many other valuable skills) are just not mentally wired to think in the way needed to develop software. It's a huge waste to try and push these people into doing something that they're not equipped for, instead of focusing on talents that they do have.
Re:You nerds need to get over yourselves (Score:5, Insightful)
Nope, let's not even justify it to that extent. Coding is a job description, and an increasingly blue collar one like plumber or electrician at that. This whole push by giant corporations to get into schools (!) is simply a means for them to reduce future worker salaries and ensure a steady supply of bright young idiots all fresh'n'ready to be abused and burned out.
End of.
Re:You nerds need to get over yourselves (Score:4, Insightful)
I guess going off your comment, assuming coding was just a blue collar job...
A room full of shitty coders is always going to be worth less than a couple real coders salaries. Either in initial cost or support.
Re:You nerds need to get over yourselves (Score:5, Insightful)
You could say the same about almost any skilled labour though, good enough is often good enough. I agree with what you're saying but it doesn't make what I'm saying less true.
Re:You nerds need to get over yourselves (Score:4, Insightful)
Re: (Score:2, Insightful)
What starts off as "good enough" quickly turns into negative value. After some time, the company is being held up by a few decent programmers and the rest are constantly creating messes for those
Re: (Score:2)
Programming large systems is a job description. Ability to make small scripts and macros is an utility skill. Everyone needs to know how to unclog a toilet or change a lightbulb without frying themselves, even if they aren't electricians.
Re: (Score:3, Insightful)
Odd. In my experience, the people who insist you need a 'special mind' to code are deeply insecure people with no other skills.
Programming is absurdly simple. Back in the 80's, you couldn't throw a stone without hitting a kid who wrote games for his home micro as a hobby. Hell, the bulk of the users here taught themselves before the age of 10!
You've probably noticed this yourself, but there are a LOT of really stupid professional developers. It doesn't take genius; just interest and a little time.
Re:You nerds need to get over yourselves (Score:5, Insightful)
Programming is absurdly simple. Back in the 80's, you couldn't throw a stone without hitting a kid who wrote games for his home micro as a hobby.
There were plenty of kids who knew how to write "10 PRINT FART; 20 GOTO 10" or who typed in listings from magazines, and I agree that programming at that level is probably accessible to most people - but you can't equate that level of programming with modern software development.
You've probably noticed this yourself, but there are a LOT of really stupid professional developers.
I wouldn't phrase it as "really stupid professional developers". There are certainly a lot of incompetent professional developers, and they're part of what's formed my opinion about some people not being mentally equipped for software development. Do you honestly believe that such a proportion of people who make their living developing software are that bad at it purely because they're lazy, apathetic or unmotivated?
For the obligatory car analogy, most people are probably capable of learning to swap to a spare tyre, change the oil, or top up the radiator (learning some simple scripting). Most people are probably not capable of learning to design high-flow intake manifolds or variable valve timing mechanisms (useful commercial software development).
Re:You nerds need to get over yourselves (Score:5, Interesting)
For once, a car analogy that makes sense!
I believe basic "coding" should be a part of general education. The kind you would do in BASIC or a spreadsheet. Everybody has a computer, they could be using them more effectively if they knew how to automate stuff.
In my office, I sometimes get called in to split CSV files of addresses into street and streetnumbers; everybody should be able to do that in any spreadsheet. Nobody should have to call in a professional developer for such tasks.
Heck, just learning how to make complex iTunes and Google searches would be a huge time-saver for most people.
In that respect I agree with TFA's notion that modeling (breaking down a problem) is the core requirement, not some random programming language's syntax.
Re: (Score:3)
I would be able to do that with cut, sed, awk, QBASIC, C or whatever, but I don't know how to do it in a spreadsheet.
Re: (Score:2)
Steps in Excel (Score:2)
Insert a new column after the address column
Highlight the columns and select the "Text to Columns" button on the data tab/toolbar.
Select the proper delimiter, which is the hardest part. Probably the first space.
Street Number will be in old address column, rest is in the second column.
Re: (Score:2)
I believe basic "coding" should be a part of general education. The kind you would do in BASIC or a spreadsheet. Everybody has a computer, they could be using them more effectively if they knew how to automate stuff.
In my office, I sometimes get called in to split CSV files of addresses into street and streetnumbers; everybody should be able to do that in any spreadsheet. Nobody should have to call in a professional developer for such tasks.
Exactly. Even when working in an IT company, I was given tasks that involved manually looking through users one by one to check group memberships, and manually make a list. Instead I did an export from Active Directory and spent a morning learning enough about .BAT scripting to extract the information I needed. Three days' work in my bosses' estimation, and I did it in less than an hour with a scrappy, imperfect script and manual checking of failed cases only. Everyone should be able to do that.
But in order
Re: (Score:2)
I don't know why you believe everyone should be able to split CSV files or things like that. Learning coding as a general education will not enable people to do such things. They will know they may be able to do it if they invest enough time to practice coding. The point is those people who are calling you have something else to do and have to excel at something else, they have no time to figure out how to do such things and they even don't have to do it often enough for them to worth learning it. So, they
Re: (Score:2)
You kind of prove my point. General population don't need to learn how to do programming, but they need to be able to take a complex problem and break it down into small steps which they can run using existing tools.
In the case of the CSV first/last name splitting, the solution was to add a column with a formula that contained the position of the first space, a second column that contained the part of the full name up to that position and a third column with the rest. This gets you ~90% of the way. Finally
Re: (Score:2)
but you can't equate that level of programming with modern software development.
Why not? There are just a few simple concepts you need to understand. It's why so many pre-teens were able to easily 'graduate' from BASIC to Assembly back in the 80's -- they already had all the necessary skills. The rest, like any skill, improves with practice.
Hey, let's face it: modern software is a disaster. A few easy examples: I've got a simple Pac-Man game I found for my phone that weighs in at nearly 30mb. I'm not even sure how that's possible. (Give it a shot. Over the weekend, write a pac-m
Re:You nerds need to get over yourselves (Score:5, Interesting)
Similarly, I feel like there's a good deal of coding that falls in between changing the oil and manifold design.
Re: (Score:2)
But you also can't equate being able to read and write these comments - or baking instructions, street signs, or whatever - with writing "War and Peace", "The Lord of the Rings" or $your_favourite_book. "Modern software development
Re: (Score:2)
Programming is absurdly simple.
Oh, sure, if you make absurdly simple programs. Innovating and coming up with clever solutions to complex problems is beyond most people, however. It's the difference between a bad/mediocre programmer and a truly good one.
Re:You nerds need to get over yourselves (Score:5, Interesting)
No, it's not. (Thinking is a learned skill, after all.) That sort of egomaniacal nonsense is why so many programming communities are cesspits. Get over yourself.
Most people don't even truly come to understand mathematics, even though we attempt to teach it everywhere. I don't see any good reason to believe they could have the sort of critical thinking skills required to become truly great programmers, or truly outstanding when it comes to anything. I just don't see any evidence that leads to this. I see people who act like mindless robots when it comes to politics, fail to understand mathematics, believe in magical sky daddies for which there is no evidence, and do all sorts of other tremendously illogical and irrational things despite the education we attempt to give them; that makes me conclude that most people are hopeless.
I see no evidence that they'd be geniuses or very smart if they just worked harder, so at the moment, I simply lack a belief in that being true.
Is it because you're actually insecure and want to believe that those you admire for their talent are "just lucky"? Is it that you'd rather believe that it's not your fault that you're not as accomplished as you'd like to be? Isn't it far more empowering to accept that you're skilled because you put in effort and that you can continue to improve?
Do you believe what you do because you're frustrated that you're not as good as you'd like to be, so you fool yourself into believing that anyone can become truly great through hard work?
If that doesn't sound accurate, it probably isn't. Trying to psychoanalyze other people over the Internet just makes you look like an idiot in my eyes. It isn't even relevant to the conversation.
Re: (Score:2)
How much experience do you have, and what is it worth?
I've seen hundreds of students who try to learn to program. Some of them have the right kind of mind for it and most don't. The ratio seems to be about 40:60, which is what has been recorded in the literature as being the norm for most samples.
The right kind of mind is not necessarily that clever. It is not a 'special mind' in any kind of wonderful precocious sense. It is normally people who see through superficial explanations, that have a knack for mod
Re: (Score:3)
Programming is absurdly simple.
Yeah.
All You Have To Do Is...
And I bet when you puncture an artery opening one of those "theft-proof" plastic packages for a product you just bought you run out and look for the nearest Boy Scout. Because bandaging up a cut is absurdly simple.
Re: (Score:2)
Odd. In my experience, the people who insist you need a 'special mind' to code are deeply insecure people with no other skills.
Programming is absurdly simple. Back in the 80's, you couldn't throw a stone without hitting a kid who wrote games for his home micro as a hobby. Hell, the bulk of the users here taught themselves before the age of 10!
You've probably noticed this yourself, but there are a LOT of really stupid professional developers. It doesn't take genius; just interest and a little time.
Your comment is all over the place. First you are saying that programming is absurdly simple, but then admit even professional developers aren't very good at it. Or are you saying that even stupid developers are still very good at programming? I find it hard to take you seriously if that is your contention.
And you must have grown up in Silicon Valley if you thought kids writing video games as a hobby was common in the 80's. I was in high school in the 90's and it wasn't even common then. I grew up in a 12,0
Re: (Score:3)
Odd. In my experience, the people who insist you need a 'special mind' to code are deeply insecure people with no other skills.
eh. I think one does, but not in the way many people mean. I think "young" or "not already messed up" is the specialness required. An alternative interpretation is that "special" means "attuned to the way most teaching is done". If of course you only do teaching in that way then it tautologically does in fact require a special mind.
At school (age 13), my school rather unusually had
Re: (Score:2)
You're conflating literacy with writing professionally at a high level.
They're not the same thing.
When people say literacy they mean people being able to understand the code and understand how computers work. They mean being able in a pinch to write some basic code if they need to do it. But they don't mean someone that writes the code professionally.
When someone is literate at a language that doesn't mean they automatically seek employment in a writing profession or that they are competent to fill such a p
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Get used to being increasingly confused by a world you increasingly will never understand.
When people say coding is the new literacy they are not suggesting that everyone become professional programmers anymore then saying someone should be able to read and write means they should become professional writers.
Rather, as we progress into the information revolution, citizens of this society will increasingly be expected to understand how the technology actually works. In same way that people that lived at the
Re: (Score:2)
When people say coding is the new literacy they are not suggesting that everyone become professional programmers anymore then saying someone should be able to read and write means they should become professional writers.
Exactly. Go back a couple of hundred years and you even have well-off people saying 'I don't need to learn to write, I can afford to hire a scribe'. You had people saying 'not everyone needs to learn to read and write, there aren't enough jobs for that many scribes anyway'.
Before he retired, my stepfather was the head groundskeeper on a golf course. Not exactly the kind of job you think of as requiring coding skills. Except that they had a computerised irrigation system that could trigger sprinklers
Re: (Score:2)
Yep. How many bonehead leaders and managers are fucking it up by the numbers because they frankly aren't competent to run anything in the 21st century?
Its fucking astounding.
The music industry killed themselves by dragging their feet when it came to embracing the future.
Same thing with movies.
Same thing with TV.
Same thing with news.
Finance shockingly seems to be mostly adapting to the new realities though they are resisting bitcoin. But they're very much embracing the internet otherwise.
That whole thing wit
Re: (Score:2)
Lots of businesses are cut throat without the managers realizing they can't operate like it is 1950. Advertising is cut throat but they haven't figured out that advertising doesn't work anymore the way they were doing it.
Re: (Score:2)
Re:You nerds need to get over yourselves (Score:5, Funny)
Get used to being increasingly confused by a world you increasingly will never understand.
Been there, done that. I used to cry myself to sleep and have bizarre dreams because I was wasting my time learning Linux and Internet protocols and running an ISP while my professional peers were out there making six figure salaries exploring the awesome potential of Microsoft Dot Net and making embedded Corporate Widgets that harnessed the power of ten thousand suns, to deliver sleek desktop solutions to a world desperate for answers.
"But it's all gibberish!" I would shout at the angry skies as gale force winds whipped my tattered robe. "It is like living inside a Dilbert cartoon! The buzzwords come in fast and thick but to me it is just Microsoft-centric Vertical Market software of no specific kind, and your market is people who know they need software automation but don't know why!"
"WHAT WOULD YOU KNOW?!?" thundered the sky as a lightning bolt rent the knoll upon which I was standing, sending forth rivers of money that would always be just out of reach. "You are merely a PLUMBER of the Information age. We are the CODERS."
And the storm would part and a rainbow spanned the sky. Bluebirds would appear to help bind the perfect hair of Software Developers into blue and pink ribbons --- and we --- the ones who had bound the Internet together with sticky-tape and protocols and C would for ever gather around their feet like pigeons waiting for crumbs. But yet, at least there was a place for us.
Until the dot com bubbles burst and they migrated outward with their pretty resumes and took over our Network and Sysadmin jobs. And the telecoms swallowed all the regional ISPs to replace them with centralized warrens of cubicles.
Today I am attending a Special Needs class trying to learn Microsoft Dot Net. So far, every app I try to make always turns out to be an ashtray.
Re: (Score:2)
While amusing, I'm not sure what this post was supposed to be about? A rant against MS? It really doesn't matter. I don't care what people code in so long as they understand how programming languages work and could follow along with the code if you put a gun against their heads and counted to ten Mississippi.
Again, I'm not saying they need to do this so they can be coders. I'm saying they should do this so they can UNDERSTAND what coding is and how it works. They currently have no god damn idea what they're
Re: (Score:2)
To your first question: yes.
To your second question: yes.
To your third question: what portion of the fridge? The air compressor, the insulated box, or the electronics? The air compressor is mostly just a compressor with temperature exchange blocks. The insulated box is nothing special. Typically just a steel box with foam filling the middle. And the electronics have a temperature sensor that kicks on the compressor when the temp rises above the desired temp.
To your fourth question: Are you asking me if I kn
Re: (Score:2)
I'm not saying you need to understand everything well enough to personally build it yourself. I'm saying you need to understand it well enough to know roughly how it ACTUALLY works.
For example, jet engines work by very rapidly compressing hot gas to create a very high pressure exhaust which is what drives a jet plane forward.
I'd expect you to know that it involves some very precisely engineered bits of machinery that spin around very quickly under very high pressure and temperature conditions. I would expec
Re: (Score:2)
the problem that i've found is that it's not like literacy where you pick a language and you learn the syntax.
Sorry to burst your bubble, but that's not much of a literacy either. :-p Otherwise people wouldn't be taking writing courses.
Re: (Score:3)
All my life, the perennial story has been that kids are stupid. American kids aren't measuring up to any other country. We're always last in lists of how educated people are. Regardless of how much we spend. The education industry perpetuates this perennial stupidity to get more money. Kids will NEVER be smart. What's the most difficult thing anyone can ever try to do? Write working code that adequately solves a problem. Let's teach it to kids! So they'll be stupid. Kids will NEVER measure up with coding.
Your argument is akin to suggesting that we shouldn't teach reading and writing because most kids will never be able to write an internationally best-selling trilogy of crime novels. There are many day-to-day tasks that can be improved with a little bit of coding knowledge. If every kid learned a modest amount of coding in school, the curse of the corporate world, Excel, would finally be redundant. Spreadsheets have survived this long because they allow people to do data manipulation that they wouldn't othe
Re: (Score:2)
Brought to you by the teachers' unions. Your kids are morons. We can't teach them. So no fair blaming us if they can't pass achievement tests. Just give us the raises for warehousing your brats and shut the hell up. And also parents of Bubba The Moron. My boy shouldn't be ranked against his peers. While everyone else is studying, he is winning football trophys for the school. So he deserves the same diploma as all the other kids, with no adverse grades attached.
Most of the rest of the world has figured thi
Re: (Score:3)
Sigh, forcing people to "learn to code" is just going to create legions of substandard programmers.
Alternately (and somewhat more likely), it will create a legion of future business people with software needs who know how to articulate those needs in a logical way when trying to write a specification.
Yaz