Coding - the new Latin
-
destynova wrote:
I think everybody should learn how to program
What a total waste of time and education resources! Only a small percent of those would go on to use it in their careers. Far better to tech kids something useful.
destynova wrote:
Practically zero
Exactly. What are the chances an accountant/mechanic/immunologist will need programming. Zero.
destynova wrote:
Practically certain
You know nothing about engineering. You would use properly written tools, not cobble together some hacked up app yourself.
destynova wrote:
Apart from its wide-ranging usefulness
Bollocks.
destynova wrote:
it's just a superb mental exercise in its own right
So is chess.
destynova wrote:
leads to very good computer literacy
Bollocks. How does learnign to code in VB help one use the internet? Set up a network card? Set up a file share? Create custome headers in Word?
============================== Nothing to say.
Erudite_Eric wrote:
Exactly. What are the chances an accountant/mechanic/immunologist will need programming. Zero.
Accountants use spreadsheets and the like all the time. If they've learned a programming language or two, they'll be better able to (at the very least) construct and/or debug spreadsheets, more reliably and quickly. Plenty of mechanics need to perform calculations when adjusting/installing/designing things. Immunologists perform all sorts of simulations that require completely new computational models to be written. Programming it themselves will lead to a more thorough exploration of their assumptions and, probably, a more correct program, than passing off the job to some "generic" coder. Where did you pull "zero" from? Absolute nonsense, that is.
Erudite_Eric wrote:
You know nothing about engineering. You would use properly written tools, not cobble together some hacked up app yourself.
Sounds like you're the one who knows nothing about engineering :laugh:
Erudite_Eric wrote:
destynova wrote:
Apart from its wide-ranging usefulness
Bollocks.
Not much of an argument, that.
Erudite_Eric wrote:
destynova wrote:
leads to very good computer literacy
Bollocks. How does learnign to code in VB help one use the internet? Set up a network card? Set up a file share? Create custome headers in Word?
How do you think? By learning to program, you get better at understanding how all of these things might be designed and how you might interact with them, because that's how you would design it. Less and less of the tasks you're confronted with look like "black magic". Learning to code hasn't taught me how to configure a network card or a file share or custom headers in Word, but the point is that I can figure out those things much more quickly, rather than bashing my head off the table in confusion. Come on, be honest rather than just shouting "bollocks" at me. How many people have you seen - who have used computers for years - who can't understand why their email won't work, who try to click on buttons repeatedly when a modal dialogue is making it impossible? How many programmers have you seen
-
jschell wrote:
There a many things that would benefit people if they learned them. However:
1. There is no assurance that they will learn.
2. Education costs money which is finite resource.
3. Education takes time which is a finite resource
4. There is no assurance that it will in fact benefit them. Certainly none that justifies the cost and time.I don't believe that I made any promises that every learner will have an assurance that they will learn, nor that education was free in terms of time and money. Those constraints are entirely irrelevant and apply to all skills. Regarding your fourth point, well that's where we differ; I expect that anyone who has learned to program will have an extremely useful and widely-applicable tool at their disposal, forevermore, as well as a powerful way of looking at and breaking down problems.
jschell wrote:
There are any number of displines that cover that. And I seriously doubt that programming covers it better. For example learning how to deliver a speech in front of a crowd seems more likely to increase communication versus learning a programming language.
No. Learning to program is quite unique in forcing the programmer to systematically break down the problem and their intended solution into clear, unambiguous low level steps. You can't "gloss over" details when writing programs as you can when writing emails or, indeed, giving a speech. This is why (good) programmers tend to be more precise and clear in speech than, for example, politicians, who have ample experience in giving speeches in front of crowds :laugh:
jschell wrote:
Learning how to cook involves problem solving. Learning how to fix a flat involves problem solving. Learning how to balance a check book involves problem solving. Learning how to compare different types of loans involves problem solving. All of those are more likely to help the average person with specific skills and, presuming that "problem solving" can be taught is just a likely to lead to that skill.
Thank you, these examples precisely highlight how programming differs from those activities as far as problem solving goes. Each of those problems (perhaps with the exception of cooking) requires a very specific skill and solution, with little or no creation of new tactics and strategies. On the other hand, when you write a
destynova wrote:
This is why (good) programmers tend to be more precise and clear in speech than, for example, politicians, who have ample experience in giving speeches in front of crowds :laugh:
Developers as a group have at best average communication skills when compared to disciplines that require comparable levels of communication. So for example I could suppose that developers have better skills than small job carpenters but they do not have better skills than teachers and sales people. And they do NOT acquire those skills from programming itself but rather because of the need to communicate via speech and writing about what their programming is intended to do.
destynova wrote:
with little or no creation of new tactics and strategies.
Err...you obviously haven't actually looked into what type of 'loan' packages exist in the world. And since I have in fact been a professional cook I can assure you that it does in fact often require creating something new. Matter of fact the top cooks in the world, and probably those locally as well, exist solely on creating new forms. Not to mention the constant introduction of new ways tools and even ways to cook to which even the average home based cooks are exposed.
destynova wrote:
his process of invention is worlds apart from, and IMO more transferable than the examples you've provided.
Nonsense. First you are proposing that learning a minimal amount of programming BY ITSELF is going to invest the student with the ability of "invention". Programming is not magical. Second the fact that programmers use many ways to implement the same thing does NOT mean that they are 'inventing'. What they are doing is implementing. In the same way that a competent cook can substitute a fork or even a spoon for a whisk and achieve the same result.
-
destynova wrote:
This is why (good) programmers tend to be more precise and clear in speech than, for example, politicians, who have ample experience in giving speeches in front of crowds :laugh:
Developers as a group have at best average communication skills when compared to disciplines that require comparable levels of communication. So for example I could suppose that developers have better skills than small job carpenters but they do not have better skills than teachers and sales people. And they do NOT acquire those skills from programming itself but rather because of the need to communicate via speech and writing about what their programming is intended to do.
destynova wrote:
with little or no creation of new tactics and strategies.
Err...you obviously haven't actually looked into what type of 'loan' packages exist in the world. And since I have in fact been a professional cook I can assure you that it does in fact often require creating something new. Matter of fact the top cooks in the world, and probably those locally as well, exist solely on creating new forms. Not to mention the constant introduction of new ways tools and even ways to cook to which even the average home based cooks are exposed.
destynova wrote:
his process of invention is worlds apart from, and IMO more transferable than the examples you've provided.
Nonsense. First you are proposing that learning a minimal amount of programming BY ITSELF is going to invest the student with the ability of "invention". Programming is not magical. Second the fact that programmers use many ways to implement the same thing does NOT mean that they are 'inventing'. What they are doing is implementing. In the same way that a competent cook can substitute a fork or even a spoon for a whisk and achieve the same result.
jschell wrote:
And they do NOT acquire those skills from programming itself but rather because of the need to communicate via speech and writing about what their programming is intended to do.
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail. Unless you can think of a way to prove this (or for me to prove the opposite), we're just repeatedly asserting our own viewpoints uselessly. Similarly, I assert that (most of) the developers I've been acquainted with are excellent communicators, while you state that they are merely average. To each their own.
jschell wrote:
And since I have in fact been a professional cook I can assure you that it does in fact often require creating something new. Matter of fact the top cooks in the world, and probably those locally as well, exist solely on creating new forms. Not to mention the constant introduction of new ways tools and even ways to cook to which even the average home based cooks are exposed.
And that's why I said:
destynova wrote:
Each of those problems (perhaps with the exception of cooking) requires a very specific skill and solution, with little or no creation of new tactics and strategies.
Unlike you, however, I am not a remotely competent cook. But if it is so full of creative invention as you suggest, then maybe everybody should learn how. I certainly should... getting tired of pot noodles and tea :laugh: But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
jschell wrote:
First you are proposing that learning a minimal amount of programming BY ITSELF is going to invest the student with the ability of "invention". Programming is not magical.
Second the fact that programmers use many ways to implement the same thing does NOT mean that they are 'inventing'. What they are doing is implementing. In the same way that a competent cook can substitute a fork or even a spoon for a whisk and achieve the same result.Indeed, I would not suggest that swapping a fork for a whisk is inventing, any more than swapping one instruction for another is. But constructin
-
Erudite_Eric wrote:
Exactly. What are the chances an accountant/mechanic/immunologist will need programming. Zero.
Accountants use spreadsheets and the like all the time. If they've learned a programming language or two, they'll be better able to (at the very least) construct and/or debug spreadsheets, more reliably and quickly. Plenty of mechanics need to perform calculations when adjusting/installing/designing things. Immunologists perform all sorts of simulations that require completely new computational models to be written. Programming it themselves will lead to a more thorough exploration of their assumptions and, probably, a more correct program, than passing off the job to some "generic" coder. Where did you pull "zero" from? Absolute nonsense, that is.
Erudite_Eric wrote:
You know nothing about engineering. You would use properly written tools, not cobble together some hacked up app yourself.
Sounds like you're the one who knows nothing about engineering :laugh:
Erudite_Eric wrote:
destynova wrote:
Apart from its wide-ranging usefulness
Bollocks.
Not much of an argument, that.
Erudite_Eric wrote:
destynova wrote:
leads to very good computer literacy
Bollocks. How does learnign to code in VB help one use the internet? Set up a network card? Set up a file share? Create custome headers in Word?
How do you think? By learning to program, you get better at understanding how all of these things might be designed and how you might interact with them, because that's how you would design it. Less and less of the tasks you're confronted with look like "black magic". Learning to code hasn't taught me how to configure a network card or a file share or custom headers in Word, but the point is that I can figure out those things much more quickly, rather than bashing my head off the table in confusion. Come on, be honest rather than just shouting "bollocks" at me. How many people have you seen - who have used computers for years - who can't understand why their email won't work, who try to click on buttons repeatedly when a modal dialogue is making it impossible? How many programmers have you seen
-
So lets take this down a step. Do you think you need to know about machine code, electronics, gate theory and L1 L2 cache in order to program better?
============================== Nothing to say.
Erudite_Eric wrote:
So lets take this down a step. Do you think you need to know about machine code, electronics, gate theory and L1 L2 cache in order to program better?
Interesting question, although I'm not sure if it makes sense to say "do you need to do X in order to do Y better". If there are other ways of learning to program better, then you could argue that learning about machine code, electronics etc are not necessary. If you said "do you think that knowing about ... will help one to program better", then I'd say "sure", but of course you can be a good programmer without knowing much about these things. If I had 8 weeks to try to teach someone programming from scratch for 2 hours a day, these would not be the first things on the list. But sooner or later, they would start to crop up in conversation - for example, cache coherency/locality has a noticeable effect when writing tight loops with arrays, so getting the nesting of loop counters wrong (e.g. for i { for j { do stuff with x[i][j] }} vs for j {for i { ...x[i][j] }}) could be twice as slow. So while I think it can have tangential benefits, and obviously becomes more important if the programmer wants to start doing lower-level things (or, for example, starts playing with a Teensy or Arduino etc), it's probably not necessary for the purposes of becoming a competent programmer. What's your view on it?
-
jschell wrote:
And they do NOT acquire those skills from programming itself but rather because of the need to communicate via speech and writing about what their programming is intended to do.
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail. Unless you can think of a way to prove this (or for me to prove the opposite), we're just repeatedly asserting our own viewpoints uselessly. Similarly, I assert that (most of) the developers I've been acquainted with are excellent communicators, while you state that they are merely average. To each their own.
jschell wrote:
And since I have in fact been a professional cook I can assure you that it does in fact often require creating something new. Matter of fact the top cooks in the world, and probably those locally as well, exist solely on creating new forms. Not to mention the constant introduction of new ways tools and even ways to cook to which even the average home based cooks are exposed.
And that's why I said:
destynova wrote:
Each of those problems (perhaps with the exception of cooking) requires a very specific skill and solution, with little or no creation of new tactics and strategies.
Unlike you, however, I am not a remotely competent cook. But if it is so full of creative invention as you suggest, then maybe everybody should learn how. I certainly should... getting tired of pot noodles and tea :laugh: But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
jschell wrote:
First you are proposing that learning a minimal amount of programming BY ITSELF is going to invest the student with the ability of "invention". Programming is not magical.
Second the fact that programmers use many ways to implement the same thing does NOT mean that they are 'inventing'. What they are doing is implementing. In the same way that a competent cook can substitute a fork or even a spoon for a whisk and achieve the same result.Indeed, I would not suggest that swapping a fork for a whisk is inventing, any more than swapping one instruction for another is. But constructin
destynova wrote:
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail.
That is not how I define "Success". It must run, it must continue to run, it must solve the business needs for which it was written, it must be delivered in a reasonable amount of time and it must not be excessively costly to maintain. All of those are a subset of what you suggested above. Just as there is a big difference between someone that writes a book and a book that becomes a best seller or wins a nobel prize.
destynova wrote:
Similarly, I assert that (most of) the developers I've been acquainted with are excellent communicators, while you state that they are merely average. To each their own.
And how many people of other occupations do you regularly communication with on a significant basis compared to the numbers of developers to which you talk?
destynova wrote:
But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
Nope. I can't install a toilet. I can't install cabinets. I can't replace a transmission. I can't wire a house. I can't build a house. I can't do the taxes for a even a small business. I can't play a guitar. I am never going to win an award for giving a speech. I am dead certain that no one wants me doing cold calls for sales nor attempting to close a deal. And definitely not a million dollar deal. I am almost certain that I would go bankrupt if I attempted to run a farm as a business. I can't paint. And I am never going to win a bike race nor win a amateur golf tournament. I do in fact know developers who have some skill in most of the above. But it wasn't learned by programming.
-
destynova wrote:
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail.
That is not how I define "Success". It must run, it must continue to run, it must solve the business needs for which it was written, it must be delivered in a reasonable amount of time and it must not be excessively costly to maintain. All of those are a subset of what you suggested above. Just as there is a big difference between someone that writes a book and a book that becomes a best seller or wins a nobel prize.
destynova wrote:
Similarly, I assert that (most of) the developers I've been acquainted with are excellent communicators, while you state that they are merely average. To each their own.
And how many people of other occupations do you regularly communication with on a significant basis compared to the numbers of developers to which you talk?
destynova wrote:
But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
Nope. I can't install a toilet. I can't install cabinets. I can't replace a transmission. I can't wire a house. I can't build a house. I can't do the taxes for a even a small business. I can't play a guitar. I am never going to win an award for giving a speech. I am dead certain that no one wants me doing cold calls for sales nor attempting to close a deal. And definitely not a million dollar deal. I am almost certain that I would go bankrupt if I attempted to run a farm as a business. I can't paint. And I am never going to win a bike race nor win a amateur golf tournament. I do in fact know developers who have some skill in most of the above. But it wasn't learned by programming.
jschell wrote:
destynova wrote:
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail.
That is not how I define "Success". It must run, it must continue to run, it must solve the business needs for which it was written, it must be delivered in a reasonable amount of time and it must not be excessively costly to maintain.
You seem to be disagreeing for the sake of it here. I'm not suggesting that running a program once is enough to check that it is completely perfect - it should be obvious from the text you quoted that I'm not defining what "Success" is. I'm not sure where you got that from. The point is, if your program is written correctly, then you have clearly communicated the intent of the program to the computer. Otherwise it would not be written correctly. I'm saying that writing correct code - meaning, code that solves the problem it was designed to solve - is a clear way to communicate the program's intent, because the compiler and your unit tests verify that the code does what you wanted it to do. This is something we can't do with human speech. Frankly, moving the goalposts around and adding baggage such as "must be delivered in a reasonable amount of time" is subjective and completely irrelevant to this discussion.
jschell wrote:
destynova wrote:
But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
Nope. I can't install a toilet. I can't install cabinets. I can't replace a transmission. I can't wire a house. I can't build a house. I can't do the taxes for a even a small business. I can't play a guitar. I am never going to win an award for giving a speech. I am dead certain that no one wants me doing cold calls for sales nor attempting to close a deal. And definitely not a million dollar deal. I am almost certain that I would go bankrupt if I attempted to run a farm as a business. I can't paint. And I am never going to win a bike race nor win a amateur golf tournament.
I do in fact know developers who have some skill in most of the above. But it wasn't learned by programming.You've missed the point - perhap
-
Erudite_Eric wrote:
So lets take this down a step. Do you think you need to know about machine code, electronics, gate theory and L1 L2 cache in order to program better?
Interesting question, although I'm not sure if it makes sense to say "do you need to do X in order to do Y better". If there are other ways of learning to program better, then you could argue that learning about machine code, electronics etc are not necessary. If you said "do you think that knowing about ... will help one to program better", then I'd say "sure", but of course you can be a good programmer without knowing much about these things. If I had 8 weeks to try to teach someone programming from scratch for 2 hours a day, these would not be the first things on the list. But sooner or later, they would start to crop up in conversation - for example, cache coherency/locality has a noticeable effect when writing tight loops with arrays, so getting the nesting of loop counters wrong (e.g. for i { for j { do stuff with x[i][j] }} vs for j {for i { ...x[i][j] }}) could be twice as slow. So while I think it can have tangential benefits, and obviously becomes more important if the programmer wants to start doing lower-level things (or, for example, starts playing with a Teensy or Arduino etc), it's probably not necessary for the purposes of becoming a competent programmer. What's your view on it?
destynova wrote:
I'm not sure if it makes sense to say "do you need to do X in order to do Y better".
Thats exactly what you just said! That accountants need programming to do spread sheets better! Clearly you are obsessed with programming, and think everyone should learn it. You then invent reasons why, and then in a total absence of logic apply those same reasons to yourself.
============================== Nothing to say.
-
destynova wrote:
I'm not sure if it makes sense to say "do you need to do X in order to do Y better".
Thats exactly what you just said! That accountants need programming to do spread sheets better! Clearly you are obsessed with programming, and think everyone should learn it. You then invent reasons why, and then in a total absence of logic apply those same reasons to yourself.
============================== Nothing to say.
Erudite_Eric wrote:
destynova wrote:
I'm not sure if it makes sense to say "do you need to do X in order to
do Y better".Thats exactly what you just said! That accountants need programming to do spread sheets better!
That's actually not what I said; obviously you haven't been reading my posts:
destynova wrote:
What are the chances that someone who applies resonance theory in their daily work might also benefit from programming (even it's just designing a prototype simulation model, setting something up in Matlab or R, etc)?
"Might also benefit from" is not the same as "need". I don't know if you've purposely misstated my position or if you were just being sloppy.
Erudite_Eric wrote:
Clearly you are obsessed with programming, and think everyone should learn it. You then invent reasons why, and then in a total absence of logic apply those same reasons to yourself.
That's a rather odd thing to say, given that you're the one who has "invented" my position to suit your argument. I had a couple of other things to say on the issue but I won't discuss it further with you if you're going to dishonestly twist my words.
-
jschell wrote:
destynova wrote:
Successfully writing a program is possibly the clearest way to communicate what it is intended to do. After all, if there were any mistakes in your instructions, then the program would fail.
That is not how I define "Success". It must run, it must continue to run, it must solve the business needs for which it was written, it must be delivered in a reasonable amount of time and it must not be excessively costly to maintain.
You seem to be disagreeing for the sake of it here. I'm not suggesting that running a program once is enough to check that it is completely perfect - it should be obvious from the text you quoted that I'm not defining what "Success" is. I'm not sure where you got that from. The point is, if your program is written correctly, then you have clearly communicated the intent of the program to the computer. Otherwise it would not be written correctly. I'm saying that writing correct code - meaning, code that solves the problem it was designed to solve - is a clear way to communicate the program's intent, because the compiler and your unit tests verify that the code does what you wanted it to do. This is something we can't do with human speech. Frankly, moving the goalposts around and adding baggage such as "must be delivered in a reasonable amount of time" is subjective and completely irrelevant to this discussion.
jschell wrote:
destynova wrote:
But apart from that, wouldn't you agree that your programming skills can be of use in so many different domains than your cooking skills?
Nope. I can't install a toilet. I can't install cabinets. I can't replace a transmission. I can't wire a house. I can't build a house. I can't do the taxes for a even a small business. I can't play a guitar. I am never going to win an award for giving a speech. I am dead certain that no one wants me doing cold calls for sales nor attempting to close a deal. And definitely not a million dollar deal. I am almost certain that I would go bankrupt if I attempted to run a farm as a business. I can't paint. And I am never going to win a bike race nor win a amateur golf tournament.
I do in fact know developers who have some skill in most of the above. But it wasn't learned by programming.You've missed the point - perhap
destynova wrote:
You seem to be disagreeing for the sake of it here. I'm not suggesting that running a program once is enough to check that it is completely perfect - it should be obvious from the text you quoted that I'm not defining what "Success" is. I'm not sure where you got that from.
YOU said the following. "Successfully writing a program is possibly the clearest way to communicate what it is intended to do". I pointed out the criteria that I use to define a "successful" program. The code itself has nothing to do with 'communicating' and there are many ways it which to write a program which runs and yet would still provide a very difficult medium to communicate what it was supposed to do. And I have seen many examples that fail to 'communicate' their purpose.
destynova wrote:
You've missed the point - perhaps my communication skills do need some practice :-D . I mean here that you can use your programming skills to write programs that are useful in many different domains - finance, music, art, games, engineering, etc. You cannot really do this with cooking (unless you want to make homemade explosives or something :) ).
Skill does not translate to actual benefit. Skill does not translate even to desire. And that presumes in the first place that a teaching curriculum could exist which would produce enough skill in the first place.
destynova wrote:
However yes, I do believe that learning programming can help improve many of your other skills
And I believe that better math, reading, writing and spoken skills can lead to many improvements. I also have seen a lot of evidence that suggests that many education systems have a severe problem teaching just those skills. Not to mention how much it costs just to make the attempt to teach those skills.
destynova wrote:
I started taking piano lessons around 7 or 8 years old. A year or two later I started to teach myself programming (very slowly) since my Commodore 64 booted straight to a Basic interpreter. The more of both of these skills I learned, the more it felt like they were connected to some of the same areas of mental machinery.
I am presuming that you are not aware that music scholarship and math aptitude have already been shown to be highly correlated.
-
destynova wrote:
You seem to be disagreeing for the sake of it here. I'm not suggesting that running a program once is enough to check that it is completely perfect - it should be obvious from the text you quoted that I'm not defining what "Success" is. I'm not sure where you got that from.
YOU said the following. "Successfully writing a program is possibly the clearest way to communicate what it is intended to do". I pointed out the criteria that I use to define a "successful" program. The code itself has nothing to do with 'communicating' and there are many ways it which to write a program which runs and yet would still provide a very difficult medium to communicate what it was supposed to do. And I have seen many examples that fail to 'communicate' their purpose.
destynova wrote:
You've missed the point - perhaps my communication skills do need some practice :-D . I mean here that you can use your programming skills to write programs that are useful in many different domains - finance, music, art, games, engineering, etc. You cannot really do this with cooking (unless you want to make homemade explosives or something :) ).
Skill does not translate to actual benefit. Skill does not translate even to desire. And that presumes in the first place that a teaching curriculum could exist which would produce enough skill in the first place.
destynova wrote:
However yes, I do believe that learning programming can help improve many of your other skills
And I believe that better math, reading, writing and spoken skills can lead to many improvements. I also have seen a lot of evidence that suggests that many education systems have a severe problem teaching just those skills. Not to mention how much it costs just to make the attempt to teach those skills.
destynova wrote:
I started taking piano lessons around 7 or 8 years old. A year or two later I started to teach myself programming (very slowly) since my Commodore 64 booted straight to a Basic interpreter. The more of both of these skills I learned, the more it felt like they were connected to some of the same areas of mental machinery.
I am presuming that you are not aware that music scholarship and math aptitude have already been shown to be highly correlated.
jschell wrote:
I pointed out the criteria that I use to define a "successful" program. The code itself has nothing to do with 'communicating' and there are many ways it which to write a program which runs and yet would still provide a very difficult medium to communicate what it was supposed to do.
And I have seen many examples that fail to 'communicate' their purpose.Sure, I'm not denying that many programs are written in such a way (or such a language...) as to be almost incomprehensible. Nevertheless, what I'm getting at is that if you have correctly written your program, then you have communicated to the computer everything that needs to be said about how the program should work. In a demonstrably correct way, which can't be done with human speech. However, I'll concede that I'm focusing here on the accuracy and correctness of communication, without considering clarity, conciseness and other important factors.
jschell wrote:
destynova wrote:
However yes, I do believe that learning programming can help improve many of your other skills
And I believe that better math, reading, writing and spoken skills can lead to many improvements. I also have seen a lot of evidence that suggests that many education systems have a severe problem teaching just those skills.
I completely agree with you here. Completely. I'd never suggest that we should not improve the teaching of those fundamental skills. Regarding problems in existing education systems and monetary issues, I don't think it's fair to dismiss a new venture based on this. Maybe if programming was carefully integrated into the system, it could help with the teaching and learning of mathematics, making it more hands-on. It is after all, a bit like a cousin of maths - if it's taught and learnt properly!
jschell wrote:
I am presuming that you are not aware that music scholarship and math aptitude have already been shown to be highly correlated.
No, I hadn't heard that, but it makes a lot of sense - thanks for pointing it out!