I do think that today's kids would benefit not only from knowing a thing or two about how to raise some food (very different from actual "farming") and also from having much more contact with the natural world.
I also think that many kids would benefit from learning the "art" side of programming - the stuff that's fun and interesting, like solving puzzles, appreciation of the hard-to-define idea of elegance, reverse engineering, etc. Nothing else I've learned to do has had quite the impact on my ability to consider many angles in a situation and reason a way to get from one state to another, and at least for me it's been a fun process to learn it all.
My real complaint when anybody says "Everybody should have to learn X," is that I think it should be "Everybody should have a chance to learn X." Coding was the best path for me to learn to think about complex, abstract things and apply that thinking to the real world (including farming). For others, it may not be so.
From my own experience, try Assembly or Ook, they're both more geared towards mammals. Haskell is for communicating with machinery, that's your mistake right there ;)
On another note, what I found when working land is that time flies by, you can zone out just as easily ploughing a chunk of land as you can while writing code. And it's inspiring. Another thing that it shows you is how much wildlife there is on an otherwise visually empty piece of land.
The skills are definitely transferrable , particularly time and planning skills. Mathematics and engineering skills are almost vital for success as well.
However the most important things it gives me are peace, tranquility and space to think. I can go for a wander and come back with a fully modelled system and some potatoes :)
All skills gained are valuable in an uncertain future.
Look at me exercising a form of conspicuous consumption (the time of a highly educated profeasional) that my class and culture peers think are praiseworthy. Let me say everyone should indulge in my hobby. Let's look down on those who don't together.
Some of us, myself included consider it to be a valuable skill in an unstable world and some insurance against the fuckwits we have to trust in society.
Also the stuff tastes better.
Because most of them have no idea just how grim the life of a subsistence peasant farmer really is, and how that differs from the lucky few who get to sell boutique "organic" produce to rich people.
You could say the same about oil rig workers or coal miners and they are going to use both coal and oil when they grow up. Should we teach kids how to do these professions too? Where should we stop? There's many "grim" professions, things that need to be done in life, yet school kids are usually shown none of them. So what?
I don't think people should have to be subsistence peasant farmers.
Farmers in developed western countries probably have it worse. Supermarkets have driven prices down to ridiculous levels, so the profit of, for example, dairy farmers is very low. There are reasons the suicide rates in rural areas is high.
Economists tell us the "developing countries" will never actually develop until rich countries stop subsidizing their agriculture. Those folks in developing countries are stuck.
Because people forgot in a hanfdul of years (that's what it is, compared to the span of human history) what was slowly learned over the course of centuries and millennia. And the result? That kids nowadays almost think that foods magically pops out from the shelf at the supermarket.
Specialization (in the sense that nobody does everything, everyone does his small part) is definitely good, unless you forget what everything is about and depend on others too much.
Nobody expect people to go back to farming, but at least to know how is done. You never know.
Yet for some reason it matters where my food comes from? Really, why?
My wife just the last few years started to grow some food in our backyard and at one point we had chickens, granted our family would not survive on the small crop we gathered or the few eggs we got but seeing our kids (and ourselves) learn what it takes to grow a tomato or a carrot is priceless. Seeing our kids wake up in the morning and take the time to check on the seed they planted or go out to the yard and get their own lettuce and cilantro for their sandwich is priceless. Have our kids see the chicks we bought into full grown chickens and learn where the eggs come is priceless.
We don't expect our kids to become farmers, heck we don't expect us to become a full farming family but it has been great to share moments as a family and learn in the process. It is ok for us to go out to a restaurant once in a while and for a moment not care where the food came from or where our leftovers will end up at.
They don't try to see behind the scenes and so they just appreciate the game and nothing more.
As a software engineer with whatever limited knowledge I have about those things, I'm able to appreciate the game at even more levels. When I see a perfectly flowing graphic I wonder how the coding was done and how much effort the developers put in for creating it or how did they even come up with such a use case.
Or take the case of movies. Once you start understanding about the planning that goes behind the scenes and how such a great movie was made, you start to appreciate it even more. Whey did they keep the camera there ? Wow, they could have changed the lighting to this corner....
Same with life. The more you understand, the better you appreciate it.
fair enough. "learn farming" is not necessarily the next logical step though.
http://www.zerohedge.com/sites/default/files/images/user5/im...
Farming today has to be a large scale, highly studied and high-yielding enterprise. There's lots of room for improvement, but very little benefit to it on a microscopic scale (put seeds in ground, water, hope they grow).
Plenty of people are starving today even probably less than a mile away from anyone eating well.
The system does not serve everyone equally and ultimately we may all suffer one day.
We're 3 days from no food at any time.
I will add that it causes big problems when decision makers have no clue where stuff comes from, what the world's limits are, etc.
Coding only makes you better micro managers, "thinking of efficient ways to make idiots do things you like".
Also teaching agriculture or other physical goods producing craftsmanship to kids would make them better at real world challenges. Modern society seems to be run by digital arts but it's just an illusion of how we live.
Yes,but not for kids. You won't teach any of these subjects to kids, even if they are better for logical thinking. But if you show them an interesting way to start programming,they will see a very clear connection between what is being said and what happens = logic. Then it can be extended later in life, but this article specifically targets kids.
And I have the exact opposite view to yours - I think there is not enough logic in our lives. Our society might be addicted to digital works, but it does not mean they understand how it all works.
Really? Why? We have been doing it for millenia.
That makes no sense. I've taken literature, I've read hundreds of books on my own. Most of them are full of illogical things. At best they are OK to teach morals, not logic.
Philosophy is closer.
Computer programming is pretty much pure logic and problem solving.
The only better way to teach logic is to teach logic.
> teaching agriculture or other physical goods producing craftsmanship to kids would make them better at real world challenges
Computers and code are real world, and they solve real world challenges.
Programming doesn't teach you cognitive biases. You don't become more aware of yourself by programming. You learn more about human logic by reading "Thinking, fast and slow" than by programming for your entire life.
Programming is very close to logic.
Of course, there are other fields that require logic and problem solving. Engineering, science, for instance.
It's a real shame that most people seem to look down on the trades as somehow being inferior to white collar work. This is what Mike Rowe has been preaching about for the past 4 or 5 years. Just listen to his TED talk [1].
[0] http://en.wikipedia.org/wiki/Tradesmen
[1] http://www.ted.com/talks/mike_rowe_celebrates_dirty_jobs.htm...
If they aren't then they will be unsuccessful as car salesmen. Apart from "how can I sell more cars?" there is "what is the optimal number of cars I can fit in my showroom?", "how shall I present my most profitable deal to its most likely demographic?", "which aspects of my communication skills can be improved?"...the list is endless. Point being there are logical challenges to be solved everywhere.
Not trying to be snarky, but what level literature classes did you take?
I was an English major for a few semesters and I found that there were a league of differences between an introductory course which was little better than reading something on my own (plus a professor's gospel, which we were asked to support or comment but never refute) -- and an upper-level course, which was more centered around research: diving inside of a text and an author, plumbing for patterns and arguments much like one would dive into JavaDocs.
"Say Kitty move right, Kitty move left and do this about 5 times." is not about logic. This logic, that you can teach with programming is only mathematical logic. "If a > b and a is negative then b should be negative". Real world logic does not work like that. There is not only 1's and 0's, blacks or whites. There are also shades of gray and reds, purples, blues. Some fractions, doubles.
Everyday you make many decisions. Some are easy yay/nay decisions, some are hard decisions like "what to wear today" or "Voting that candidate or this?" or "Should I ask her out, but what if it's too soon?". Many things affect them; Human interactions, weather conditions, light conditions, feelings... So many unknowns. Maybe just some luck? Murhpy laws?
We can not or have not yet deducted them into pure mathematical logic.
So giving kids programming as logical thinking aid would help, but maybe in a wrong way. It would teach them an illusionary version of logical thinking where everything is 1 or 0.
Why such a desperate trend to make everyone grow their own food again? Sure, the food industry is not always honest,not always as good as your own home-grown food, but still - it allowed us to do something else with our lives, and pushed our societies an order of magnitude ahead.
As much as people should APPRECIATE farming, I don't think that everyone should do it. We produce enough food as it is. We should teach kids how to code however, not because we need more programmers(which we do,but I digress) - but because it's the easiest way to introduce kids to logical, technical-like thinking. That way we can have more mathematicians, physicists, astronomers, engineers - people who we can afford to keep alive(almost literally) because they do not need to grown their own food anymore! They can sit at their desks for the whole day, thinking how to make the world better, instead of looking at how the crops grow.
I would say - why not give kids both? Is it too much to ask? Show them how vegetables are grown, how animals are cared for and how are they slaughtered, but at the same time, yes, please teach them how to code.