Programming Advice From the Pros (This Means You!)

Posted on 2014-08-28
Last Modified: 2014-09-06
Hello, what advice can you give to someone that wants to get in the programming field? I am helping out a relative that is in college and want to get a degree in IT and focus on developing.

-What are good certifications in the programming arena he should look at to go along with a degree?

-What are the best, hottest, languages he should start with to get in the field?

-What is the best to learn long term if different than someone starting out?

-Any other advice to someone on how to get started?

Thanks for any tips and advice you can offer.
Question by:REIUSA
    LVL 26

    Accepted Solution

    My 2 cents on this:

    a) Certifications are rarely useful.  That's generally only helpful if you wish to work on contract - series of short term gigs - where you need to demonstrate a specific skill set for a 6 month project.

    b) Best languages - these days the top 2 I'd suggest would be JavaScript and Java.  (Don't let the similar names mislead - they are totally different).  JavaScript is a strong choice for front end web development work.  Java is a good choice for backend development work.  C# is fine as well (instead of Java) - it's a slightly better language but opens fewer doors as it's tied to the Microsoft software stack and most people don't use Microsoft for server work.

    LVL 74

    Assisted Solution

    by:käµfm³d 👽

    ...but opens fewer doors as it's tied to the Microsoft software stack
    That statement is not quite accurate. C# itself is standardized, and there is an open-source implementation of the .NET Framework called Mono whose language of choice is C#.


    I agree with dpearson:  Certifications aren't all they are cracked up to be. I can go cram tonight and pass tomorrow several of the .NET certifications. (I've known a couple a people who've done so.) Certs look good to HR people; they don't look as good to actual developers/developer managers.

    As far as "best" langauges, you really need to define what it is you plan to do. If it's mobile development, then Java (for Android) or Objective-C/Swift (for iPhone). (Some will say C# for Windows Phone, but market-share would beg to differ.) If you're doing web development, the environments are varied. There are ASP.NET shops (which uses either C# or VB.NET behind the scenes); there are PHP shops; there are Ruby shops. I agree that you're almost guaranteed to have to know Javascript/CSS. You probably need to research the companies that you'd be interested in working for:  see what they use. If you're programming hardware devices, then you're almost guaranteed to be working in C, and possibly even assembly language.

    You might try joining some open-source projects in order to gain experience and knowledge from professional developers. Sure, you won't be getting paid, but the knowledge and industry experience you gain from such a venture should compensate for that.
    LVL 74

    Expert Comment

    by:käµfm³d 👽

    I will add that you should focus on getting a strong understanding of programming fundamentals. If you understand the core concepts of programming, then jumping between languages merely becomes learning syntax (and a handful of language-specific idioms).
    LVL 31

    Assisted Solution

    I agree with kaufmed, in that getting a strong understanding of programming (especially object oriented programming) fundamentals is essential. I recall the professor who taught me in introduction to program saying "Whatever language you learn to program in will surely be different from the language you will actually program in over time. Learn how to program first then adapt to the syntax and features provided in each successive language you encounter."
    LVL 10

    Assisted Solution

    by:Jeffrey Dake
    I agree with a lot of what these guys are saying. Interviewing a lot of candidates I always test for object oriented design concepts and understanding of basic programming concepts.  Degrees from a university always help but are not required in this field. That being said I get a lot of people who understand the very basics of programming, but have no concept of design. They can work with the languages, but write inefficient code or use the wrong data structures.  I recommend a degree, but do your homework about the programs. The best programs combine a mixture of programming theory with hands on development.

    Author Closing Comment

    Thanks for the tips and advice.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
    Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
    Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
    Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

    761 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    13 Experts available now in Live!

    Get 1:1 Help Now