In answer to your title, because for over fifty years, the high school curricula in most states has been systematically gutted of anything that could possibly be useful to a graduate looking for a job of any sort.
But that's the definition of a trade school, not a college. In no way shape or form should a college's goal be to prepare you for a job. It should enhance your knowledge and life. If you can use things that you learned in college in your future careers, all the better.
Uh, so what's the goal of a college's school of Engineering, or Architecture, or Nursing? Besides the poster you are replying to is referring to high school, not college. In most parts of the world, including advanced industrial nations like Japan or Germany (as well as in many developing countries), HS is intertwined with vocational training.
Even here in the US you get a chance for vocational training in HS (if you live in the right area). Last time I checked (about 15 years ago), here in South Florida we had a few high schools with vocational tracks in auto and boat mechanics, for example.
The sad thing is that those are the exception, with the rule being high schools being turned into day cares that will guarantee you to graduate even if you cannot add or subtract fractions or know the rules of punctuation, without the slightest idea of what one is supposed to do after graduation, with no qualifications other than for mopping the floor at a McDonald's.
You can thank our public education system and our stupid ethos that young people cannot make life decisions at 18 (but can only after spending 4 years and several thousand dollars in college for educational tracks for which they were never evaluated and which might not fit their local or state economies.) Yay!
The notion that a four-year degree is essential for real success is being challenged by a growing number of economists, policy analysts, and academics. They say more Americans should consider other options, such as technical training or two-year schools, which have been embraced in Europe for decades.
Yes, yes, yes and yes.
There is too much emphasis on 4-year college degrees to the detriment of post-HS vocational education (or a HS education that actually lead to *gasp!* education and preparation to enter the work force in some specialized capacity.
Something along the lines of the German Hauptschule and Gymnasium is what we need. Certainly not the exact same thing, but we need something that institutionalizes meaningful vocational training in a manner that makes sense to our society and economy:
A similar mechanism has existed for more than a century for preparing HS graduates as elementary school teachers in many parts of the world... and dare I say that has been extremely successful:
I can imagine at this point a few of the ZOMG-THINK-OF-TEH-CHILDREN crowd arguing that teenagers aren't capable of making a serious educational decision when they are in their teens. Bullshit. The rest of the world does it well, so what can't we? Are we that stupid?
The other thing to keep in mind is that in most parts of the world, industrialized or not, people have to pass qualifier exams to apply to a limited # of opportunities for a given degree. You just don't sign up for Law or Physics. Only the top-N candidates get accepted... and that's for most degrees, even for Fine Arts.
Countries understand that, it is stupid for us not to. Besides, in countries with vocational high schools, kids prepare themselves with vocations with multiple applications - mechanics, plumbing, electricity, HVAC, book keeping and secretarial training.
And contrary with some tards who argue otherwise, a kid graduating with a vocational degree can later prepare and apply for entrance to a 4-year university program. If he qualifies, he goes in.
You get to apply for a 4-year degree based on merit, and you get the opportunity to learn a vocation that can help you get somewhere (possibly even your own technical service business as you become a master technician.)
But here in the US, what do we get? A HS system that churns kids who can't add fractions, with an education that qualifies them as hamburger flipper engineers, in a society where there is no merit or glory unless you have a college degree.
And what's worst (and saddest) is that if any of these kids wants to train in a vocation, they have to go to a 2-year college (which are usually looked down even if they are excellent), or worse, fork thousands of dollars in private vocational schools... for vocational training they should have gotten when they were in the public education system to begin with.
People setting the syllabus should be recommending, a modern, clean, free, cross-platform language. That means something like Python, Ruby, or Java.
First, how do you teach system-level concepts with those languages. I would grant you that you can learn the basics of programing, Python and Ruby would be fine (not Java since you can't express things procedurally if a problem requires so.)
But you can't divorce the basics of programing from the fundamentals such as programming on non-memory-managed systems without having to face (and learn to deal with) portability issues. This has been one of the greatest fallacies of all, to think you can efficiently cultivate programmers with an exclusive or almost exclusive usage of extremely high-level languages.
Second, what's wrong with Delphi, as a teaching programming language. It has many (if not all) the strengths of Pascal-like languages (Turbo-Pascal in particular) while at the same time introduces new programming concepts that did not exist when Pascal and Pascal-dialects were conceived (properties come to mind.)
Yes, Pascal has been hacked away into multiple dialects, but all capture innate qualities. OO and advanced pointer manipulation is usually very similar from one another. So for the purposes of teaching programming, any one modern Pascal dialect will suffice.
Delphi has been an industrial language (however, niche it might be), and Anders Hejlsberg, the chief architect of Delphi, is also the lead architect of C#. C# (the 3rd-4th most widely used programming language in industry) has a lot more immediate roots in Delphi than on any other C-syntax-like languages.
When we consider these facts in addition to Delphi's qualities as a modern programming language, I would say these are more than enough reasons to use it as one of the modern non-gc-babysitted tools for learning structured programming in both procedural and object oriented paradigms.
Trying to argue that you extensive knowledge of Pascal, JAVA and Assembly for the given platform means you will be able to work efficiently anyways, since you'll very quickly pick up the C knowledge needed, probably won't get you hired, even if it is true.
Only it's not true. A programmer who doesn't know C is either very lazy or, given the relativeabundanceof each language suffers from some weird form of autism.
There's no denying it, C is the basis of everything in computing. Anyone who has studied or done any professional work in computing has had contact with the C language at some time. A programmer who never had at least the curiosity to learn C, if only to understand some function he downloaded from the web, will never, ever, be a competent programmer.
Is that still true? A decade or so ago it would have been, but we have some bright young programmers who have only seen Pascal (from early training), Java, Python, and C#.
The operative word is some. These programmers you mentioned would have be bright ones almost regardless of the programming languages they have been exposed to. And that goes to say more about their aptitude and their instructor's aptitude than anything else.
But just because some exhibit great programming skills w/o having been exposed (at least cursorily) to C, that does not mean that extends to the rest.
Purely anecdotal, so take it with a grain of salt, but I've found that, in general, programming proficiency is proportionally related to one's exposure to natively compiled programming languages where explicit resource allocation/de-allocation is required (Pascal-like languages, Ada, C/C++ come to mind.)
Many examples now are in one of these languages or pseudocode.
Many examples of what? Memory-managed application-level problems? Yes. There is a whole class of problems that you cannot illustrate with such languages/pseudocode. Application-level programming is just a subset of programming as a whole.
In answer to your title, because for over fifty years, the high school curricula in most states has been systematically gutted of anything that could possibly be useful to a graduate looking for a job of any sort.
But that's the definition of a trade school, not a college. In no way shape or form should a college's goal be to prepare you for a job. It should enhance your knowledge and life. If you can use things that you learned in college in your future careers, all the better.
Uh, so what's the goal of a college's school of Engineering, or Architecture, or Nursing? Besides the poster you are replying to is referring to high school, not college. In most parts of the world, including advanced industrial nations like Japan or Germany (as well as in many developing countries), HS is intertwined with vocational training.
Even here in the US you get a chance for vocational training in HS (if you live in the right area). Last time I checked (about 15 years ago), here in South Florida we had a few high schools with vocational tracks in auto and boat mechanics, for example.
The sad thing is that those are the exception, with the rule being high schools being turned into day cares that will guarantee you to graduate even if you cannot add or subtract fractions or know the rules of punctuation, without the slightest idea of what one is supposed to do after graduation, with no qualifications other than for mopping the floor at a McDonald's.
You can thank our public education system and our stupid ethos that young people cannot make life decisions at 18 (but can only after spending 4 years and several thousand dollars in college for educational tracks for which they were never evaluated and which might not fit their local or state economies.) Yay!
The notion that a four-year degree is essential for real success is being challenged by a growing number of economists, policy analysts, and academics. They say more Americans should consider other options, such as technical training or two-year schools, which have been embraced in Europe for decades.
Yes, yes, yes and yes.
There is too much emphasis on 4-year college degrees to the detriment of post-HS vocational education (or a HS education that actually lead to *gasp!* education and preparation to enter the work force in some specialized capacity.
Something along the lines of the German Hauptschule and Gymnasium is what we need. Certainly not the exact same thing, but we need something that institutionalizes meaningful vocational training in a manner that makes sense to our society and economy:
http://en.wikipedia.org/wiki/Education_in_Germany
http://en.wikipedia.org/wiki/Hauptschule
A similar mechanism has existed for more than a century for preparing HS graduates as elementary school teachers in many parts of the world... and dare I say that has been extremely successful:
http://en.wikipedia.org/wiki/Normal_school
I can imagine at this point a few of the ZOMG-THINK-OF-TEH-CHILDREN crowd arguing that teenagers aren't capable of making a serious educational decision when they are in their teens. Bullshit. The rest of the world does it well, so what can't we? Are we that stupid?
The other thing to keep in mind is that in most parts of the world, industrialized or not, people have to pass qualifier exams to apply to a limited # of opportunities for a given degree. You just don't sign up for Law or Physics. Only the top-N candidates get accepted... and that's for most degrees, even for Fine Arts.
Countries understand that, it is stupid for us not to. Besides, in countries with vocational high schools, kids prepare themselves with vocations with multiple applications - mechanics, plumbing, electricity, HVAC, book keeping and secretarial training.
And contrary with some tards who argue otherwise, a kid graduating with a vocational degree can later prepare and apply for entrance to a 4-year university program. If he qualifies, he goes in.
You get to apply for a 4-year degree based on merit, and you get the opportunity to learn a vocation that can help you get somewhere (possibly even your own technical service business as you become a master technician.)
But here in the US, what do we get? A HS system that churns kids who can't add fractions, with an education that qualifies them as hamburger flipper engineers, in a society where there is no merit or glory unless you have a college degree.
And what's worst (and saddest) is that if any of these kids wants to train in a vocation, they have to go to a 2-year college (which are usually looked down even if they are excellent), or worse, fork thousands of dollars in private vocational schools... for vocational training they should have gotten when they were in the public education system to begin with.
http://under30ceo.com/wp-content/uploads/2009/08/snob1.gif
cheers from europe.
Indeed.
http://blog.ju29ro.com/uploaded_images/hooligans-reuters-735894.jpg
http://www.ilga-europe.org/var/ilga/storage/images/europe/photo_galleries/budapest_pride_5_july_2008/budapest_pride_2008_hooligans__5/70616-1-eng-GB/budapest_pride_2008_hooligans.jpg
http://www.awitness.org/eden2003/kosovogenlg.jpg
http://atlasshrugs2000.typepad.com/atlas_shrugs/images/paris_riots_day_9.jpg
Joel Spolsky actually argues for both to be used as a weed-out mechanism (and I could not agree more on that!)
People setting the syllabus should be recommending, a modern, clean, free, cross-platform language. That means something like Python, Ruby, or Java.
First, how do you teach system-level concepts with those languages. I would grant you that you can learn the basics of programing, Python and Ruby would be fine (not Java since you can't express things procedurally if a problem requires so.)
But you can't divorce the basics of programing from the fundamentals such as programming on non-memory-managed systems without having to face (and learn to deal with) portability issues. This has been one of the greatest fallacies of all, to think you can efficiently cultivate programmers with an exclusive or almost exclusive usage of extremely high-level languages.
Second, what's wrong with Delphi, as a teaching programming language. It has many (if not all) the strengths of Pascal-like languages (Turbo-Pascal in particular) while at the same time introduces new programming concepts that did not exist when Pascal and Pascal-dialects were conceived (properties come to mind.)
Yes, Pascal has been hacked away into multiple dialects, but all capture innate qualities. OO and advanced pointer manipulation is usually very similar from one another. So for the purposes of teaching programming, any one modern Pascal dialect will suffice.
Delphi has been an industrial language (however, niche it might be), and Anders Hejlsberg, the chief architect of Delphi, is also the lead architect of C#. C# (the 3rd-4th most widely used programming language in industry) has a lot more immediate roots in Delphi than on any other C-syntax-like languages.
When we consider these facts in addition to Delphi's qualities as a modern programming language, I would say these are more than enough reasons to use it as one of the modern non-gc-babysitted tools for learning structured programming in both procedural and object oriented paradigms.
Only it's not true. A programmer who doesn't know C is either very lazy or, given the relative abundance of each language suffers from some weird form of autism.
There's no denying it, C is the basis of everything in computing. Anyone who has studied or done any professional work in computing has had contact with the C language at some time. A programmer who never had at least the curiosity to learn C, if only to understand some function he downloaded from the web, will never, ever, be a competent programmer.
Is that still true? A decade or so ago it would have been, but we have some bright young programmers who have only seen Pascal (from early training), Java, Python, and C#.
The operative word is some. These programmers you mentioned would have be bright ones almost regardless of the programming languages they have been exposed to. And that goes to say more about their aptitude and their instructor's aptitude than anything else.
But just because some exhibit great programming skills w/o having been exposed (at least cursorily) to C, that does not mean that extends to the rest. Purely anecdotal, so take it with a grain of salt, but I've found that, in general, programming proficiency is proportionally related to one's exposure to natively compiled programming languages where explicit resource allocation/de-allocation is required (Pascal-like languages, Ada, C/C++ come to mind.)
Many examples now are in one of these languages or pseudocode.
Many examples of what? Memory-managed application-level problems? Yes. There is a whole class of problems that you cannot illustrate with such languages/pseudocode. Application-level programming is just a subset of programming as a whole.