U.S. CitiesCity-Data Forum Index
Go Back   City-Data Forum > General Forums > Science and Technology
 [Register]
Please register to participate in our discussions with 2 million other members - it's free and quick! Some forums can only be seen by registered members. After you create your account, you'll be able to customize options and access all our 15,000 new posts/day with fewer ads.
View detailed profile (Advanced) or search
site with Google Custom Search

Search Forums  (Advanced)
Reply Start New Thread
 
Old 02-01-2014, 09:16 PM
 
Location: Summit, NJ
1,484 posts, read 1,424,220 times
Reputation: 1731

Advertisements

There's a slight chance I'll be teaching a programming class at a local high school next year, and I believe the school doesn't already have such a class.

My background is math, and though I did some programming in my undergraduate classes, it's been quite a while. Matlab is the only language I know particularly well today. I'll have to immerse myself in the coding over the summer, which could be fun.

So, which language is the one to learn?
Reply With Quote Quick reply to this message

 
Old 02-02-2014, 09:28 AM
Status: "Oh wait, what's this?" (set 7 days ago)
 
Location: Tyler, TX
15,222 posts, read 18,587,648 times
Reputation: 8079
I would say it's one of two - PHP or C++. PHP really shouldn't be learned without a corresponding HTML/CSS/JS class, though.

Our son took "computer programming" at his charter school last year. They taught Python. I wouldn't have chosen that language, but that's what they taught. I know Ruby on Rails is also getting kind of popular, but I know nothing about it, or what applications it has in the real world.

Java wouldn't be bad. With the explosion of smartphones & tablets, that might be the most practical language for a current HS student to learn, and it'll give them a foundation if they ever want to learn C/C++. Yeah, I take back what I said above - I'd go with Java.
Reply With Quote Quick reply to this message
 
Old 02-02-2014, 09:59 AM
 
40,869 posts, read 42,278,559 times
Reputation: 17125
As swagger mentioned PHP but that's designed to be used for the web, it doesn't have to be used with web pages. I'll add MySQL or some other database to his list of things that it's used in conjunction with. There is a plethora of documentation and getting it running locally is as easy as installing XAMPP.

Briefly when a request is made to web server it could be a php script instead of a static HTML file, perhaps you would gather some variables from a database. Script could then parse an HTML template and insert the variables.

The CSS is just window dressing that formats the HTML; colors, positioning etc. JS is used for doing things client side. You don't necessarily need them especially the JS.
Reply With Quote Quick reply to this message
 
Old 02-02-2014, 11:47 AM
Status: "Oh wait, what's this?" (set 7 days ago)
 
Location: Tyler, TX
15,222 posts, read 18,587,648 times
Reputation: 8079
Quote:
Originally Posted by thecoalman View Post
The CSS is just window dressing that formats the HTML; colors, positioning etc. JS is used for doing things client side. You don't necessarily need them especially the JS.
You don't need them to learn the PHP language, but if you ever want to do anything practical with it, you have to at least have the basics down. There's not a single modern website that isn't heavy with CSS and JS, so knowing PHP without understanding the other two won't do you a lick of good in the real world. If your goal is to do things outside of a web browser (e.g. text processing, routine maintenance tasks, etc.), Perl would be a much more practical language to know.
Reply With Quote Quick reply to this message
 
Old 02-02-2014, 11:49 AM
 
Location: southern california
57,201 posts, read 76,183,355 times
Reputation: 50297
the curse of the computer industry is that you throw all your books away every 3 years and relearn it all. i wish i could come up with a decent answer to your question. i got a head full of systems that are all now obsolete.
even human language changes. the french i spoke 35 years ago in paris i am now having to reprogram to avoid appearing odd.
Reply With Quote Quick reply to this message
 
Old 02-02-2014, 03:29 PM
 
40,869 posts, read 42,278,559 times
Reputation: 17125
Quote:
Originally Posted by Huckleberry3911948 View Post
the curse of the computer industry is that you throw all your books away every 3 years and relearn it all.
PHP has been around for while, it's not going anywhere anytime soon.
Reply With Quote Quick reply to this message
 
Old 02-02-2014, 08:36 PM
 
32 posts, read 32,288 times
Reputation: 68
Unix
Reply With Quote Quick reply to this message
 
Old 02-03-2014, 08:07 AM
 
2,796 posts, read 3,470,940 times
Reputation: 5564
The whole point of a high school intro to programming course should be to give the students a good foundation for future studies at college level.

For a foundation that would give practical, useful knowledge and a base to build off of, you should teach C with an intro to Object Oriented C++. In C you can easily cover the basic variable types, data structures such as arrays, and control structures such as if,for and while loops. Then teach them how to write a function and call it from within the main program. Once you cover all of that, do an intro to C++ Object Oriented design by having them take the functions from their previous C program and put them in their own class. They will then understand the difference between procedural and Object Oriented design and the basics of how they both work. This would be the best foundation for future programming courses you could possibly give them.

Believe it or not, the C++ for dummies book is a very well written guide for understanding C++ so you might want to get a copy and go through it.

Most College computer science programs currently put a lot of focus on C++ so it would be handy for them to have prior experience. They are now also teaching JAVA widely. Knowledge and understanding of C/C++ makes learning JAVA relatively easy. The basics and structure are more or less the same so basically all you have to do is learn the differences between the two languages.

I would NOT do a high school intro course with JAVA. JAVA is purely Object Oriented and can be very confusing for beginners to grasp basic concepts while at the same time getting their heads wrapped around OO design........it is just too much going on at one time for a beginner.

I wouldn't do an intro course with PHP either. It is a narrow market and it also declining, plus it isn't used widely at all in college level courses.

Last edited by dijkstra; 02-03-2014 at 08:18 AM..
Reply With Quote Quick reply to this message
 
Old 02-03-2014, 08:13 AM
 
24,497 posts, read 36,181,439 times
Reputation: 12852
With PHP being such an outdated language with a huge decline, I'm surprised that it's being suggested.

C++ and JS would be at the top of my list. JS is an easy language to learn (incredibly difficult to master)... runs in any browser and is taking off serverside (essentially replacing PHP nowadays).
Reply With Quote Quick reply to this message
 
Old 02-03-2014, 08:32 AM
 
Location: The Berk in Denver, CO USA
14,501 posts, read 21,331,281 times
Reputation: 24278
Default Data are your friends

TIOBE Software: The Coding Standards Company
Reply With Quote Quick reply to this message
Please register to post and access all features of our very popular forum. It is free and quick. Over $68,000 in prizes has already been given out to active posters on our forum. Additional giveaways are planned.

Detailed information about all U.S. cities, counties, and zip codes on our site: City-data.com.


Reply
Please update this thread with any new information or opinions. This open thread is still read by thousands of people, so we encourage all additional points of view.

Quick Reply
Message:

Over $104,000 in prizes was already given out to active posters on our forum and additional giveaways are planned!

Go Back   City-Data Forum > General Forums > Science and Technology
Similar Threads
Follow City-Data.com founder on our Forum or

All times are GMT -6.

© 2005-2020, Advameg, Inc. · Please obey Forum Rules · Terms of Use and Privacy Policy · Bug Bounty

City-Data.com - Archive 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 - Top