14 Replies - 1201 Views - Last Post: 04 February 2019 - 09:40 AM

#1 Cryptfusion   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 25-November 18

My kid wants to program. HELP!

Posted 25 November 2018 - 11:18 PM

Hi, my son starts college next fall and has decided to take up Associate in computer sciences; programming in particular. I have very little knowledge in this area and need some help. My first question, should he go this route? I believe Networking or Cybersecurity is a better route but not sure where the computer industry is headed. He knows a little coding but I think he maybe getting in over his head. Second, What could he start doing now to prepare? I was going to buy him some programming books, any suggestions?

Now, what computer languages should he study? The obvious is C++, I also was thinking Java and maybe Mobile app. Below is what is being offered.

Programming Language Courses - Complete 20 Hours w/a minimum of 8 Hours in Tier II (20 Hours)

Programming Language Tier I - Choose Three of the Following (12 Hours)
CIST 2311 Visual Basic I
CIST 2341 C# Programming I
CIST 2371 Java Programming I
CIST 2351 PHP Programming I
CIST 2361 C++ Programming I
CIST 2381 Mobile Application Development
CIST 2580 Interactive and Social Applications Integration

Programming Language Tier II - Choose Two of the Following (8 Hours)
CIST 2312 Visual Basic II
CIST 2342 C# Programming II
CIST 2352 PHP Programming II
CIST 2362 C++ Programming II
CIST 2372 Java Programming II
CIST 2373 Java Programming III

Lastly, I want to purchase a Laptop as a graduation present. Anything special needed or can programming be done on any run of the mill Laptop.

Thank you all in advance.

Is This A Good Question/Topic? 0
  • +

Replies To: My kid wants to program. HELP!

#2 macosxnerd101   User is online

  • Games, Graphs, and Auctions
  • member icon




Reputation: 12585
  • View blog
  • Posts: 45,714
  • Joined: 27-December 08

Re: My kid wants to program. HELP!

Posted 26 November 2018 - 12:10 AM

Quote

My first question, should he go this route? I believe Networking or Cybersecurity is a better route but not sure where the computer industry is headed. He knows a little coding but I think he maybe getting in over his head.


Programming is a useful and desirable skill in the job market. I know someone that recently graduated with a networking and cybersecurity degree and had difficulties landing a job, with one reason being a lack of programming skills. This person is now gainfully employed in their chosen field, but it was tough finding a job.

In regards to your son's specific degree program, it looks like a "learn a lot of languages" track. If this is the case, then it's likely a program that lacks any real depth. These programs keep re-hashing the basics in various languages and don't give students the opportunities they need to deepen their understanding or apply what they have learned to bigger projects.

If your son is simply looking to get a job, the following three courses are what I would recommend: Intro to Programming, Data Structures and Algorithms I, and Discrete Math. The Data Structures course will provide more abstract reasoning skills, as well as key tools and techniques that are the bread and butter of every programmer. The Discrete Math class focuses on mathematical tools that CS folks will want, as well as developing one's problem solving skills.


Quote

He knows a little coding but I think he maybe getting in over his head.


This is normal. Programming is hard. It requires folks to think. Generally, it takes a year of solid practice to become proficient.

For what it's worth, it is probably better to let your son arrive at the decision that he is in over his head, rather than making that decision for him. It is quite common for folks to change majors.


Quote

Now, what computer languages should he study? The obvious is C++, I also was thinking Java and maybe Mobile app. Below is what is being offered.


Pick one language and take a year to focus on mastering that language. Learning to program is really about training oneself to think in a very precise manner. The chosen language is a tool to express this thinking. It is counterproductive to try and learn multiple languages while learning to think in a new way. Based on the courses you listed, Java and C# are solid places to start. Both are highly desirable in the job market. The Java and C# forums also have a number of pinned resource threads. You can start there for book recommendations.
Was This Post Helpful? 2
  • +
  • -

#3 NeoTifa   User is offline

  • NeoTifa Codebreaker, the Scourge of Devtester
  • member icon





Reputation: 4472
  • View blog
  • Posts: 19,014
  • Joined: 24-September 08

Re: My kid wants to program. HELP!

Posted 27 November 2018 - 03:13 PM

You shouldn't really pick his classes for him. He might have a specific focus area he's interested in, and you can't just force him to pick what you want. Ask him what he wants. Also, everything mac said.
Was This Post Helpful? 3
  • +
  • -

#4 Cryptfusion   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 25-November 18

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 03:52 AM

Thank you both for your input. NeoTifa I think you misunderstand my intentions. I am not wanting to pick his classes, I just want to get a read on what is viable in programming now and down the road, let say in 5 to 8 years. I know a lot will change in that time so some direction is better than no direction. He is picking his own classes when the time comes. He is looking to me for advice so getting info from people who program to me seem like the best answer.

I would still like to know he he will need a high end laptop to code or will any run of the mill one work. Does it matter if its say a Windows laptop or a Chromebook? Will he need 1TB HDD or 10TB, heck maybe 256gig SDD.

Thanks again for you time to answering my post.
Was This Post Helpful? 0
  • +
  • -

#5 xclite   User is offline

  • I wrote you an code
  • member icon


Reputation: 1380
  • View blog
  • Posts: 4,206
  • Joined: 12-May 09

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 07:03 AM

Just to reiterate, because I see this perception a lot: The demand for software engineers is MUCH higher than security experts and IT people. As mac said, nobody I know who wanted to get into that actually successfully got into it. Every developer I know got a job writing code.
Was This Post Helpful? 2
  • +
  • -

#6 baavgai   User is offline

  • Dreaming Coder
  • member icon


Reputation: 7429
  • View blog
  • Posts: 15,402
  • Joined: 16-October 07

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 07:46 AM

Hmm... just a quick opine. I encourage your kid, not you, to investigate further.

First, "Interactive and Social Applications Integration" sounds like either basket weaving or something that you'd already need some programming understanding to get anything out of. "Mobile Application Development" will require a language as well, most likely Java, so offering it before you know a language seems pointless.

Interestingly, each of the languages listed do occupy their own distinct domain, mostly.

C# Programming: If you want to program on Windows, this is the winner, hands down. Conversely, if you have no interest in Windows programming, this is of dubious value, though you can wedge it in. Professionally, this is the language I currently use the most.

Java Programming: This is kind of the cast iron frying pan of coding. Few programmers end up pulling it out all that much, but is tends to form the foundation of the tools they do use. Android programming is Java programming (sort of) and you'll want a good understanding of it before going mobile. It's still in demand and debatably one of the best beginner languages out there. Indeed, some majors offer this one as default.

C++ Programming: This is the messy subterranean dungeon of modern computing. Modern operating systems and games are written in C++ and it is the tool of choice for many applications. While everyone should know this one, it is not naturally found in web or mobile development. Not the friendliest first language, but some would argue it does teach the hard lessons early. Yes for a programmer with game dev dreams, no for anyone who doesn't hate themselves.

PHP Programming: Welcome to the web. However, web tools are legion and just knowing PHP isn't going to get you that far. I'd argue that the most important programming language for web is Javascript, with HTML and CSS also required. PHP enjoys popularity due to its level of adoption rather than intrinsic value. Not a recommended first language. Or, really, any language.

Visual Basic: You could argue that this has the same strengths as C#, but you'd be wrong. While it runs in same scope, it is a bastard step child with uniquely wonky syntax appealing only to nostalgic coders who recall 90s VB dominance or those who believed the lie it was easy. I could say more, but it would be truly beating a dead horse.
Was This Post Helpful? 1
  • +
  • -

#7 jimblumberg   User is offline

  • member icon

Reputation: 5726
  • View blog
  • Posts: 17,531
  • Joined: 25-December 09

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 08:21 AM

Quote

I would still like to know he he will need a high end laptop to code or will any run of the mill one work. Does it matter if its say a Windows laptop or a Chromebook? Will he need 1TB HDD or 10TB, heck maybe 256gig SDD.

For learning to program almost any laptop will work, but remember programming is not the only thing the computer will be used for, but because your kid will probably be lugging the computer all over try to keep it lightweight and portable with as much battery life as possible.

Jim
Was This Post Helpful? 0
  • +
  • -

#8 jeffindenver   User is offline

  • D.I.C Head

Reputation: 40
  • View blog
  • Posts: 196
  • Joined: 07-August 15

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 08:27 AM

If you do buy a laptop, just get one with a long battery life or that includes a backup battery. I bought a cheapo unit, and the battery was nearly dead at the end of each class.

Edit: Chromebook is no good. Go for Windows or MAC. If it's like my classes, he'll be required to install software (IDEs) not supported on Chromebook.

Edit: removed comment about every class having a pc

This post has been edited by jeffindenver: 28 November 2018 - 11:30 AM

Was This Post Helpful? 0
  • +
  • -

#9 andrewsw   User is offline

  • quantum multiprover
  • member icon

Reputation: 6792
  • View blog
  • Posts: 28,050
  • Joined: 12-December 12

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 08:32 AM

There seems to be a preference for teaching Java... because it has III parts (maybe just emphasising the tutors' preferences and skillsets ;) but just a wild guess on my part).
Was This Post Helpful? 0
  • +
  • -

#10 xclite   User is offline

  • I wrote you an code
  • member icon


Reputation: 1380
  • View blog
  • Posts: 4,206
  • Joined: 12-May 09

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 10:50 AM

View Postjeffindenver, on 28 November 2018 - 10:27 AM, said:

About that laptop, every single computer science course will be held in a room with a pc on each desk, so it's not required.


This was definitely not true at my university.
Was This Post Helpful? 1
  • +
  • -

#11 NeoTifa   User is offline

  • NeoTifa Codebreaker, the Scourge of Devtester
  • member icon





Reputation: 4472
  • View blog
  • Posts: 19,014
  • Joined: 24-September 08

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 11:24 AM

Yeah, definitely no pc in every class. We had like 2 labs our entire engineering building. You're expected to bring a laptop. I would say something with several cores and decent ram, and make sure you get an external hdd for backups. I only say about the cores and ram because I've run into several instances where you need to run a virtual machine, and if you don't have enough juice you can't do anything because the computer locks up so often.
Was This Post Helpful? 0
  • +
  • -

#12 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11505
  • View blog
  • Posts: 19,576
  • Joined: 19-March 11

Re: My kid wants to program. HELP!

Posted 28 November 2018 - 12:20 PM

Everything mac said, I agree with. I incline towards Java as the best choice of first language - it's a good language to know, and it sets you up well to learn other languages.
Also, it's a good language to work in when you take algorithms and compilers.
Was This Post Helpful? 0
  • +
  • -

#13 hexagod   User is offline

  • 😂😂😂
  • member icon

Reputation: 31
  • View blog
  • Posts: 577
  • Joined: 29-October 16

Re: My kid wants to program. HELP!

Posted 17 December 2018 - 11:16 AM

I'm posting in this a bit late but I'd say that it is an excellent idea for him to learn programming.

1.) Learning how programming works is beneficial no matter what branch of CS he goes into. I work as a super low level admin and because I know how to program I've created software that makes my job 1000x easier and faster. I've automated the boring and time wasting tasks and it gives me more time to develop and do research. Also, I'm more effective at troubleshooting software because I know how it works from a coding standpoint and from a HW standpoint, so I'm worth more as an employee (even though I don't get paid more lol).

2.) I would advise him to also learn deep learning and AI integration, robotics aspect of programming. Very soon it is possible that a lot will be automated so getting into that niche in programming will give him an edge in the years to come.

3.) Windows laptop, all the way, VS 2017 is free with windows (if you don't sell your software) and is an INCREDIBLY powerful tool for learning how to program. VS knows what you're trying to do 10 steps ahead of when you do it and is great for beginners IMO (although it's very daunting at first). You can put Google dev tools on a windows machine but AFAIK you can't put VS on a chromebook. He can use windows PC to develop for every other platform in one unified IDE and that will come in handy later on in his career when job market changes.

4.) In terms of Job market: Angular, Node.JS, SQL, C#, JAVA JAVA JAVA, HTML, CSS are all hot right now. Data analytics is big aswell so wrapping that up in the CS degree is highly advised.

5.) I personally love C# and XAML, then can be used for Windows and Mobile development

6.) Let him chase his dreams! =]
Was This Post Helpful? 0
  • +
  • -

#14 andrecasal   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 9
  • Joined: 01-February 19

Re: My kid wants to program. HELP!

Posted 01 February 2019 - 05:26 PM

Hello Cryptfusion.

Being that programming, or computer science in general, is the study of information and the tools we use to do it, it is a very wide field that has applications in every other scientific field. This means that, on the one hand the computer science field has seen an enormous growth so it's easy to find a well paid job and, on the other hand, because computer science is so widely applicable, your son can later jump to another field with the critical advantage of already knowing how to code.

Learning to code is not that hard, specially if you choose a beginner friendly language, like Javascript (not to be confused with Java) and a good resource to study from. In fact, most enterprise level apps today are built with Javascript (using the Angular, React or Vue frameworks for the frontend and the Express framework for the backend). And the field of web, mobile and desktop apps is only growing, even more so that Networking or Cybersecurity, even though those would be good bets as well. Also, within Computer Science, the mobile market has seen an enormous explosion and there's no end in sight to that growth.

So, in summary, here's what my 14 years of experience in the field of computer science can, hopefully, help you clarify:
  • Programming, or Computer Science in general, is a widely applicable field that has seen and will continue to see enormous growth. If your son likes programming, he should definitely go for it.
  • The most beginner friendly and arguably most powerful language your son could learn is Javascript. It's the language used to build enterprise level applications today.
  • A hands on course is much better than a dry academic book. I'm sure your son will enjoy this course made by Wes Bos, the most prominent professional teacher in our industry.
  • I recommend 'CIST 2381 Mobile Application Development' for the Tier I and 'CIST 2352 PHP Programming II' for Tier II. PHP is the #2 language (after Javascript) for enterprise level apps today.
  • Finally, the most important piece of a computer, for a programmer, is the screen. We spend many hours looking at our screens, so it's important to have a big, anti-glare, (at least) 120Hz screen that doesn't hurt the eye. A 15 inch MacBook Pro ($2400) is best possible choice. If that's too much, you can go for a Toshiba Portege Z30-C-138 ($1200) or a Lenovo ThinkPad E470 ($500). Quality varies accordingly, as one would expect, but they're still very good choices for each price point.


I hope I was able to give you some clarity on this issue :) Good luck!
Was This Post Helpful? 0
  • +
  • -

#15 hexagod   User is offline

  • 😂😂😂
  • member icon

Reputation: 31
  • View blog
  • Posts: 577
  • Joined: 29-October 16

Re: My kid wants to program. HELP!

Posted 04 February 2019 - 09:40 AM

" A 15 inch MacBook Pro ($2400) is best possible choice. "

2400$ for a programming laptop made by Mac? I couldn't disagree more, unless he exclusively wants to develop iOS apps. My 1500$ Dell work laptop runs circles around macs and can develop for android, windows, iOS, can run virtual machines, is more upgradeable, has more gaming choices, is faster.

I had another old dell laptop that my work loaned to me and it was almost as fast as brand new macs. Windows has less bloatware... shoot.. i'd recommend a chromebook before a mac but I think windows has the biggest selection of IDEs afaik. Acer, Asus, Gigabyte also make good laptops/motherboards

Almost everything relevant runs native in windows and unless he wants to be an exclusive unix programmer he's probably better off in windows. Even if he wants to develop unix/linux programs he can run a virtual machine for that.

Macs are overpriced and for fanboys. I also produce/play music, do graphic design (which are things a lot of people think macs do better) and my 8 core 4.2ghz 150$ 16GB gigabyte mobo AMD-FX rig blows brand new macs out of the water for a fraction of the cost AND I can play the latest games to boot. I can run Fl Studio (natively), PhotoShop, Visual Studio and Counter-Strike Source etc all at the same time without lagging lol

This post has been edited by hexagod: 04 February 2019 - 09:41 AM

Was This Post Helpful? 0
  • +
  • -

Page 1 of 1