News for hackers. Stuff that matters.
Re:Please don’t learn to code by imgabe on Wednesday May 11, 2016 @10:28AM (#11675576)
I never interpreted "everyone should learn to code" to mean "everyone should get a job as a software developer". Coding is a highly useful skill that can be applied in many professions. It doesn't mean everyone has to write professional quality software in the hottest language du jour.

"Learning to code" just means recognizing when a problem can be solved by applying a discrete series of repeatable steps and then learning how to tell the computer to do those steps rather than doing it yourself. The productivity boost we could get just by eliminating people manually copying and pasting (or, dear god, re-typing) things from one spreadsheet to another would be enormous, let alone other applications.

Re:Please don’t learn to code by cm2187 on Wednesday May 11, 2016 @10:39AM (#11675695)
I was about to make the exact same comment. People should automate their most boring and mindless tasks, that's the only way to achieve large further productivity gains. It's never going to be economical to pay a developer salary full time to analyse and automate everyone's little tasks. But for that coding needs to be simpler, easier to do occasionally. VBA-style (but VBA was a 90s language that was never updated since). In that spirit, teaching C++ in school is counter-productive.

Exactly like everyone shouldn't need to be a professional carpenter, but have a basic DIY tools and know how to assemble some ikea furniture. Or basic physics understanding to know what to do and not to do with an electrical socket!

Re:Please don’t learn to code by enraged_camel on Wednesday May 11, 2016 @11:04AM (#11675957)
>>I was about to make the exact same comment. People should automate their most boring and mindless tasks, that's the only way to achieve large further productivity gains.

Productivity gains that will be captured by their employers in the form of higher profits and bonuses for executives and most likely won't be passed down to the employee.

Not saying learning coding is a bad idea, but some perspective is useful I think.

Re:Please don’t learn to code by dragonwriter on Wednesday May 11, 2016 @12:07PM (#11676566)
> Productivity gains that will be captured by their employers in the form of higher profits and bonuses for executives and most likely won't be passed down to the employee.

Assuring that aggregate economic gains are justly distributed is a social (politico-economic) problem that clearly (in light particularly of the last ~40 years of history, where there has been clear and damaging regress in that area) needs to be address, but that doesn't mean that we should stop seeking aggregate gains.

Re:Please don’t learn to code by sevensor on Wednesday May 11, 2016 @11:39AM (#11676279)
Not necessarily. Productivity gains can come back to the employee. I used to work at a place where my boss wanted a status report printed out and on his desk by 7:00. Before I figured out how to automate the status report, I had to come in at 6:00 every day to prepare the report. I was on salary, so I didn't get paid for the extra time. After, I came in at 6:45. I guarantee I captured my own productivity gains there.

Edit: I was working as an engineer at a manufacturing plant, for context.

Re:Please don’t learn to code by lisivka on Wednesday May 11, 2016 @11:09AM (#11676015)
Bold statement without a proof. Can you point to a poor nation with highly productive employers?
Re:Please don’t learn to code by enraged_camel on Wednesday May 11, 2016 @02:57PM (#11678165)
It's well-documented that, in the United States, productivity has increased massively since the 70s but wages have remained stagnant.

http://www.theatlantic.com/business/archive/2015/02/why-the-...

Re:Please don’t learn to code by superqd on Wednesday May 11, 2016 @10:47AM (#11675774)
Exactly this. I think the article misunderstands, and/or misinterprets, the Learn To Code "movement". It's not a call to enlist more people as software engineers, it's a desire to teach powerful problem solving techniques and tools to everyone.
Re:Please don’t learn to code by parennoob on Wednesday May 11, 2016 @10:55AM (#11675861)
> it's a desire to teach powerful problem solving techniques and tools to everyone

And like any teaching, that job should be properly paid. What I find irritating is that it almost seems to be a given in the tech industry that people would do this job for free. And the fact that it will create more software engineers on an average leads me to think that all the "Learn to Code" movements are not as altruistic as they may seem.

I agree that everyone should learn to code, but similarly why shouldn't everyone learn basic science, economics, or civics? I know a lot of people the US anyway seem to be really behind the curve on these matters, but because it doesn't really benefit large corporate entities, they aren't lining up to teach kids these skills.

Re:Please don’t learn to code by bskap on Wednesday May 11, 2016 @11:18AM (#11676081)
> similarly why shouldn't everyone learn basic science, economics, or civics

We already teach those things to every child in the US. Whether or not they pay attention is something we have less control over. The vast majority of students do not have any opportunity to learn to program.

Re:Please don’t learn to code by parennoob on Wednesday May 11, 2016 @11:44AM (#11676314)
> We already teach those things to every child in the US.

Exactly, and the teachers are paid for it. You rarely find companies promoting movements offering to teach economics or civics for free.

> The vast majority of students do not have any opportunity to learn to program.

Then it should be put into the school curriculum, and a qualified person should be paid to teach them, instead of the current expectation which seems to be "programmers will teach these kids coding in their spare time because...everyone should learn to code!".

Re:Please don’t learn to code by Kalium on Wednesday May 11, 2016 @11:45AM (#11676326)
I have often seen it pitched as "Software engineers make a lot of money! Everyone should learn to code!". It's not quite an explicit link, but it's often strongly implied.
Re:Please don’t learn to code by caseysoftware on Wednesday May 11, 2016 @12:00PM (#11676493)
And all the studies showing software developers or "IT people" make the most money.

Individuals can understand nuance, people don't.

I'm reminded of that exchange from Men In Black. J (Will Smith) insists that people will understand about aliens, K (Tommy Lee Jones) disagrees:

J: "Why the big secret? People are smart. They can handle it."

K: "A person is smart. People are dumb, panicky dangerous animals and you know it. Fifteen hundred years ago everybody knew the Earth was the center of the universe. Five hundred years ago, everybody knew the Earth was flat, and fifteen minutes ago, you knew that humans were alone on this planet. Imagine what you'll know tomorrow."

Re:Please don’t learn to code by gremy0 on Wednesday May 11, 2016 @11:54AM (#11676441)
I don't see why, it would just look silly if it was framed that way for anything else.

"Mathematicians make a lot of money! Everyone should learn to count!"

"Authors make a lot of money! Everyone should learn to write!"

"Cartographers make a lot of money! Everyone should learn to read a map!"

"Micheal Phelps got a lot of Olympic gold medals! Everyone should learn to swim!"

Re:Please don’t learn to code by dragonwriter on Wednesday May 11, 2016 @12:10PM (#11676596)
To be fair, while the push from some corners of academia and some other places for everyone learning programming/program design is not motivated that way, the push from tech industry capitalist for widening the base of skilled developers is exactly that (and not so that more people can make lots of money, but so that software development labor, due to increased supply, is cheaper). And its pretty much that tech industry capitalist push that has driven the language of "learn to code" rather than "learn to program".
Re:Please don’t learn to code by Ma8ee on Wednesday May 11, 2016 @10:42AM (#11675726)
It's like you can gain a lot from just the first basic knowledge how to do things outside your main profession. In the same way as everyone should know how to sew a button or replace a fuse or power plug and save themselves a lot of money, knowing how to script your excel might save you countless hours. That doesn't mean that everyone should be professional tailors or electrical engineers, or developers.
Re:Please don’t learn to code by drdeca on Wednesday May 11, 2016 @11:33AM (#11676216)
"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." — Robert Heinlein on "The competent Man"
Re:Please don’t learn to code by kamaal on Wednesday May 11, 2016 @01:14PM (#11677152)
Very big difference between

>>Specialization is for insects

and

You can know the name of that bird in all the languages of the world, but when you're finished, you'll know absolutely nothing whatever about the bird. You'll only know about humans in different places, and what they call the bird. … I learned very early the difference between knowing the name of something and knowing something. - Richard Feynman

Re:Please don’t learn to code by kamaal on Wednesday May 11, 2016 @12:25PM (#11676717)
>>Coding is a highly useful skill that can be applied in many professions.

Every set of X elementary skills is a highly useful skill set that can be applied many set of Y professions.

Ask any doctor and they will explain to you the importance of first aid, and basic knowledge of a healthy human body. Ask a driver and they will explain to you why driving skills are so important. Plumbers are likely to tell you the importance of learning some basic tap-changing, flush-knob changing skills. Teachers may emphasize on learning and teaching skills as the most important skills on earth. Basically every skill has the same importance as every other skill.

>>"Learning to code" just means recognizing when a problem can be solved by applying a discrete series of repeatable steps

This in the old days was called 'Math', and trust me has been a part of school curriculum for more than a century and half now and things seemed to have barely changed anything.

You assume that by learning to code a person begins to start thinking about automating any process he/she comes along. While that skill is a rarity even among programmers.

Re:Please don’t learn to code by dragonwriter on Wednesday May 11, 2016 @12:30PM (#11676758)
> Ask any doctor and they will explain to you the importance of first aid, and basic knowledge of a healthy human body.

Yes, and, guess what, teaching first aid and basic human health in schools is (outside of debates over content relating to sexuality and reproduction) relatively uncontroversial and widely accepted.

> Basically every skill has the same importance as every other skill.

This conclusion does not follow from the idea that some people will argue generality for any given skill, nor have you supported it otherwise.

Re:Please don’t learn to code by kamaal on Wednesday May 11, 2016 @12:57PM (#11677010)
The assumption here is programming in some way is special.

What's actually special is building things. While in school, my school principal had our school host science and art exhibitions every year. We would routinely attend other science and art contests at other schools. The common pattern there? You will see the same 10% population in every school participating everywhere else.

To break this pattern, our principal bought in a concept of team work, basically to pair up 90% people with the participating 10%. It was a colossal failure, apart from the fact they were teams on paper, it was essentially those 10% people doing all the work while everybody else in just for the participant tag.

The issue here is human behavior and psychology. The assumption that merely teaching programming will likely build master makers, automation identifiers out of every school. In reality a bare regular 10% of the kids are likely to have the motivation and discipline to see things through.

Re:Please don’t learn to code by parennoob on Wednesday May 11, 2016 @11:47AM (#11676349)
"The productivity boost we could get just by eliminating people manually copying and pasting (or, dear god, re-typing) things from one spreadsheet to another would be enormous, let alone other applications."

You do realise that:

a) Historically working hours have not decreased with an increase in productivity, and

b) The notion of a basic income, and the concept that not everyone needs to work is regarded with extreme suspicion (in the US anyway)?

All those people who are copying and pasting things are doing a certain job. You can eliminate those jobs with a single script, but I'm not so sure doing this en masse would be a positive thing without making a parallel effort to reduce work hours for everyone and making a push for basic income.

Re:Please don’t learn to code by lisivka on Wednesday May 11, 2016 @01:24PM (#11677236)
Historically, working hours are decreased with increase of productivity. 10-16 hours working days 6 days a week was common just few centuries ago.

https://en.wikipedia.org/wiki/Eight-hour_day

Re:Please don’t learn to code by dragonwriter on Wednesday May 11, 2016 @01:30PM (#11677301)
> Historically, working hours are decreased with increase of productivity. 10-16 hours working days 6 days a week was common just few centuries ago.

Those long days arose in consequence of the industrial revolution (both because the things which enabled them were products of the industrial revolution, and because they were adopted to maximize the return of the capital investments in factories in industrialization), working hours were shorter previously.

Its true that they later came down as a result of social movements spurred by the conditions those long hours produced, but its not clear that those were net shorter hours from productivity or just a reversion of the increase.

(In some areas of the developed world, there've been further reductions since, which may be a continuation of the same social movement adapting to changes in the production capacity, which would perhaps illustrate a socially-mediated course for the trend you suggest, but that hasn't been universal.)

Re:Please don’t learn to code by lisivka on Wednesday May 11, 2016 @03:05PM (#11678233)
Before IR, nobody had watches to count hours. Working days were irregular, i.e. worker must work as long, as sun is in the sky, from child age till death. I myself helping my father from 10am till 10pm when harvesting wheat, and I am not surprised when my parents are saying that they worked much more than me when then were young, for much less.
Re:Please don’t learn to code by dragonwriter on Wednesday May 11, 2016 @12:06PM (#11676543)
> I never interpreted "everyone should learn to code" to mean "everyone should get a job as a software developer".

"Everyone should learn to code" has the same relationship to "everyone should get a job as a software developer" as "everyone should be literate" has to "everyone should get a job as a writer" or "everyone should learn some math" has to "everyone should get a job as a mathematician". Though, really, I prefer "everyone should learn to design programs", or "everyone should learn to analyze and structure systems to perform defined tasks".

To quote from the preface of the excellent How to Design Programs, 2e:

--

Programming differs from good programming like crayon sketches in a diner from oil paintings in a museum. To emphasize this difference, we refer to the latter as program design. Don’t let the words “painting” and “museum” scare you. We wouldn’t have spent fifteen years writing this book, if we didn’t believe that everyone can design programs and everyone can experience the satisfaction that comes with it. Indeed, we go as far as saying that program design—not programming—deserves the same role in a liberal-arts education as mathematics and English: everyone should learn how to design programs.

Re:Please don’t learn to code by sametmax on Wednesday May 11, 2016 @10:39AM (#11675699)
Exactly. If you work in an office with a computer at any job, learning basic coding can save you a week of work every year.
Re:Please don’t learn to code by mberning on Wednesday May 11, 2016 @11:02AM (#11675946)
I take no issue with people that are passionate about education trying to make a programming curriculum and promote it. Far from it. But when you have politicians and high ranking business officers beating the drum it does become suspicious. Visas are already abused to manipulate the labor market. And now they want to create even more cheap labor domestically.

Also, it is not as if there are huge barriers to learning to program. Anybody that can type a google query can get started. All the tools and knowledge needed are at your fingertips for a sufficiently interested person. As many in this thread have pointed out, they started from nothing, learned on their own for a year or two, and landed a gig.

To me I can't escape the feeling that well monied interests are working their hardest to ruin one of the last good, well paying careers.

Re:Please don’t learn to code by whoiskevin on Wednesday May 11, 2016 @11:22AM (#11676127)
Yes they are trying to create more cheap labor and yes they are trying to eliminate well paying programming jobs. This has been the goal of business from the start not just for programming. I would love to see more cheap labor domestically. I'm tired of work being shipped offshore to come back broken and barely functional simply because it is cheaper. At least maybe we could ship it around the country. Business will continue to try and assembly line all processes including programming. I've had to learn to live with that and I think we all will have to as well.
Re:Please don’t learn to code by crispyambulance on Wednesday May 11, 2016 @11:01AM (#11675939)
"learn to code" as a movement, has an unfortunate name.

You're right that it has never meant the everyone literally needs to be able to write software in the programming languages du-jour.

I think the author understands this but is responding to those around him who have taken the words "learn to code" literally.

The "learn to code" movement came about around the time that Doug Rushkoff wrote "Program or be programmed". I don't blame Rushkoff as he clearly made the case for individuals taking control of their digital lives lest it be taken from them. He never meant that everybody literally needs to start programming.

Re:Please don’t learn to code by malz on Wednesday May 11, 2016 @11:05AM (#11675973)
Yep. My kids are encouraged to learn to code whenever they get the chance. Coding is problem solving, applied logic, putting abstract math to use in everyday life. They also play with Legos, but it doesn't mean they're expected to grow up to be civil engineers.
Re:Please don’t learn to code by simonsarris on Wednesday May 11, 2016 @10:57AM (#11675882)
"Everyone needs computer programming. It will be the way we speak to the servants." -John McCarthy in 1966 (Developed Lisp, coined the term A.I.)

(Later he said: "Alas, it didn't come to pass.")

Re:Please don’t learn to code by peterchon on Wednesday May 11, 2016 @11:20AM (#11676097)
Just as you interpret it a certain way, I'm willing to bet a lot of people are interpreting it as "learn software, make millions!" as well.
Re:Please don’t learn to code by rdudek on Wednesday May 11, 2016 @11:29AM (#11676181)
Can't same be said for other industries as well? "Get into oil business, you'll make millions!" "Get an MBA, start your own business and make millions!" "Become a real estate investor and make millions!"

Coding is just one of many things that has potential to make millions. But it's not something that will be done overnight. All these make millions statements forget to point out how the folks in these industries got to those millions.

Re:Please don’t learn to code by rustynails on Wednesday May 11, 2016 @11:11AM (#11676035)
I don't read it that way anywhere. You seem to be talking about problem solving and algorithms. These concepts run much deeper than coding. I suspect the emphasis is less on problem solving and more on recognising scripted languages.

I recently took on a hobby of building a very large shed and successfully completed it. I learnt more about problem solving using tools (saws, files, chisels, pincers, RHDs, etc) and physics than I have in years through coding. Dealing with stresses, gravity, plumbing, etc was amazing.

I learnt a lot about problem solving without coding a single line of code. The learn to code is emphasising the wrong lessons. I've use several of these sites with my kids to see this first hand.