What's the best way to learn to be a programmer?

  • (2 Pages)
  • +
  • 1
  • 2

24 Replies - 3425 Views - Last Post: 30 June 2016 - 12:33 PM

#1 dhovanessian5  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 1
  • Joined: 06-June 16

What's the best way to learn to be a programmer?

Posted 06 June 2016 - 07:39 PM

If I have to be honest, I've tried for a couple of months now, haven't been able to because it's so intimidating and I've had almost a full-time job (meaning, nearly 40 hours a week). I sort of kind of learned from my one Java class but that's it. Where should I start? I want to learn so much about coding, I want to be comfortable, I want to be confident. Where should I start? Are any of those websites with a required paid membership worth it?

Is This A Good Question/Topic? 0
  • +

Replies To: What's the best way to learn to be a programmer?

#2 modi123_1  Icon User is online

  • Suitor #2
  • member icon



Reputation: 13545
  • View blog
  • Posts: 54,057
  • Joined: 12-June 08

Re: What's the best way to learn to be a programmer?

Posted 06 June 2016 - 07:50 PM

I am not sure why this is in 'networking and wireless', moving to 'software dev'.

I would suggest looking at the plethora of other threads about this exact same topic.
Was This Post Helpful? 0
  • +
  • -

#3 Ratatoskr  Icon User is offline

  • D.I.C Head

Reputation: 40
  • View blog
  • Posts: 223
  • Joined: 02-January 16

Re: What's the best way to learn to be a programmer?

Posted 06 June 2016 - 09:13 PM

Take this post entirely with a grain of salt because I no where consider myself satisfactorily experienced to any substantial degree. My experience from a intermediate-hobbyish perspective, I would say the intimidation comes and goes. The second I start to feel like I am finally understanding something, the more I find out how much more there is for me to learn. Meaning, if you stay persistent what you are intimidated by now will pass and you will gain confidence to that extent(As with most things), but the learning never ends.

This forum has an extensive amount of information to help you learn just about anything. I personally enjoy C# and anything .Net. The C# tutorial section on here is flooded with useful information and guidance. If you are familiar with Java, C# might not be a bad idea.

The members on here astonish/inspire me with how well they understand everything. However they definitely will not spoon feed anything to you - don't make the mistake of expecting that. :offtopic:/>


So, to end my blabbering. I personally enjoy Udemy and find some of their courses very affordable and reasonable. There is this one guy Mosh Hamedani who has a few great courses(If going the C# direction).

This post has been edited by Ratatoskr: 06 June 2016 - 09:15 PM

Was This Post Helpful? 0
  • +
  • -

#4 Recoil  Icon User is offline

  • D.I.C Addict

Reputation: 51
  • View blog
  • Posts: 504
  • Joined: 28-June 08

Re: What's the best way to learn to be a programmer?

Posted 06 June 2016 - 10:11 PM

Advice from a hobbyist:

When I was the teachers assistant in the programming classes 8 years ago I noticed a lot of people struggled to get through school along with full time jobs and family life. Programming was a very complicated class they had to work hard to understand, but they needed the class to get their credits. That being said you are not limited to what you can learn in 1 environment. However, if I can offer ANY advice for your ambitions is to start small and work your way up!

You say you already have a Java class under your belt (from how long ago?) but you probably kept your book with all the assignments in it, right? If not then reach out to a school buddy who has and get theirs, or get another one for beginners. Go from beginning to end and not skip anything, because what you think might be too simple and stupid, or something you have done already, go over it again so that you can whiz through it.

You will be surprised at how much you can get done after a month if you just dedicate 30-60 minutes a day.

P.S. Save all your projects so you can throw in a portfolio one day ;)
Was This Post Helpful? 1
  • +
  • -

#5 jon.kiparsky  Icon User is online

  • Chinga la migra
  • member icon


Reputation: 10714
  • View blog
  • Posts: 18,348
  • Joined: 19-March 11

Re: What's the best way to learn to be a programmer?

Posted 06 June 2016 - 10:18 PM

*
POPULAR

The first thing to do is to write a lot of code. Seriously: the more stuff you write, the more you'll understand. Start by making a list of things that might be fun to do. Then order the list in terms of their apparent degree of difficulty, and pick the first one that is a little ahead of where you're at now. If you look at it for a while and can't figure out how you'd start it, you've gone too far. Pull back to a less advanced project that you can make a good start on.
Write it. If you have trouble, ask smart questions about it. When you get to the end, ask yourself a few questions:

1) What was awesome about what I did there?
2) What was less than awesome?
3) How easy would it be to change this to do something a little bit different? What sorts of changes would be hard, and what sorts would be easy?
4) What was the one decision that I made in writing this that caused me the most trouble, and what should I have done instead?

Don't spend a lot of time agonizing over these questions - if you go past an hour, you've definitely overdone it - but be sure to think about them. Then pick a new project and start.

Pro tip: this is an iterative exercise, which pays off after repetition. Therefore, it behooves you to pick your projects so as to make the iteration cycles as short as possible. Don't get lost in details, write for structure. For example, if you decide to write an interactive fiction engine, your example game should have a minimal set of rooms that demonstrates functionality, rather than a complete and playable game. If you decide to write a shopping cart system, you should not try to actually start a business to go with it.

View PostRecoil, on 07 June 2016 - 12:11 AM, said:

You will be surprised at how much you can get done after a month if you just dedicate 30-60 minutes a day.


This is wisdom.
Was This Post Helpful? 5
  • +
  • -

#6 JacobH  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: 26
  • View blog
  • Posts: 176
  • Joined: 07-September 15

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 11:00 AM

The answer to your question is the same as it is to learning any skill. The first step is to accept there is no short-cuts and there is no magic answers. You need to pick a programming language, and go find a recommended tutorial. Finish it from step one to the end with out skipping anything. Then go ahead and grab your self a book about programming, once again many are posted here.

From this point it is all up to you, your hard work, dedication, and consistently setting realistic goals and tracking your progress towards them. No matter how much you read, ask, or procrastinate it will pale in comparison to actually writing code with a goal in mind over and over. All the other details, such as your language choice.

I highly suggest C++ as a language to learn, but as mentioned if you dislike it the one you like is just fine. I think most languages you teach you core programming ideas, but C++ teaches you them a little better imo ;).
Was This Post Helpful? 0
  • +
  • -

#7 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 5921
  • View blog
  • Posts: 20,243
  • Joined: 05-May 12

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 03:19 PM

View PostJacobH, on 07 June 2016 - 02:00 PM, said:

I highly suggest C++ as a language to learn, but as mentioned if you dislike it the one you like is just fine. I think most languages you teach you core programming ideas, but C++ teaches you them a little better imo ;)/>.


In my opinion, this is because C++ makes you worry about the low level implementation of the core programming ideas. It's like the math teacher that makes you show the long division solution on paper instead of just letting you use a calculator.
Was This Post Helpful? 2
  • +
  • -

#8 JacobH  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: 26
  • View blog
  • Posts: 176
  • Joined: 07-September 15

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 05:25 PM

That is exactly right. I think there is some miss-conceptions about how valuable knowing more low-level programming can be. C# and other managed languages are great, and help you avoid worrying about lots of things due to it doing them for you. It however is not so good you can simply ignore all the niddy griddy of how an application actually is working and write as good of programs as you would like to.
Was This Post Helpful? 0
  • +
  • -

#9 jon.kiparsky  Icon User is online

  • Chinga la migra
  • member icon


Reputation: 10714
  • View blog
  • Posts: 18,348
  • Joined: 19-March 11

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 07:16 PM

I would say that C++ is the perfect language for learning CS ideas, iff you are the sort of person who groks the low-level ideas that C++ teaches. On the other hand, if you're the sort of person who's more given to working in higher-level abstractions, then all that fiddling around with memory management is just going to drive you bonkers and you won't learn much. I would typically steer towards the middle ground with something like this, and start with something like Java, but really the best thing to do is to learn one language well to start and then start learning different ones. The key is variety - if you start out with C++, moving to a modern language would make sense. If you start out with Java, you might want to try a lisp. If you start out with Ruby or Scala or something, maybe dropping all the way down into C for a while would make sense. If you start out in ML - I'm sorry, what planet did you come from?

The key is to expose yourself to languages with very different mindsets, as different as possible, so that you can start to see how these are really all tools for doing the same job, and that's when you start to really get into the abstractions which each of these languages allows you to do.
Was This Post Helpful? 2
  • +
  • -

#10 JacobH  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: 26
  • View blog
  • Posts: 176
  • Joined: 07-September 15

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 07:31 PM

I'm not really so-sure that C++ will drive anyone bonkers these days. I just started it in recent months, kind of going backwards (C# > C++), but as far as I understand c++ today is a much less stressful world if you are using modern versions. You have the auto stuff, foreach loops, lambadas, all the shiny stuff. I think its a really good balance between abstraction to the extreme and learning what you need to learn.
Was This Post Helpful? 0
  • +
  • -

#11 no2pencil  Icon User is online

  • Professor Snuggly Pants
  • member icon

Reputation: 6556
  • View blog
  • Posts: 30,697
  • Joined: 10-May 07

Re: What's the best way to learn to be a programmer?

Posted 07 June 2016 - 07:40 PM

View Postmodi123_1, on 06 June 2016 - 10:50 PM, said:

I am not sure why this is in 'networking and wireless'

I'm not sure why it keeps getting asked. (continues to hoard the secret! muhahaha)
Was This Post Helpful? 1
  • +
  • -

#12 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 5921
  • View blog
  • Posts: 20,243
  • Joined: 05-May 12

Re: What's the best way to learn to be a programmer?

Posted 08 June 2016 - 10:08 AM

For example, if I were trying to learn the CS concept of graph traversal and trying to solve the traveling salesman problem, I'd rather not be dealing with pointers and hashtables just so that I can load my graph into memory, and then managing queues and lists as I explore the graph. The interesting problem to solve is traversing the graph, not loading the graph, or keeping track of the data structures. (Yes it's much easier now with modern C++ and the standard template library since you can use some of the standard containers -- assuming the teacher lets the student use the standard containers.)
Was This Post Helpful? 2
  • +
  • -

#13 jon.kiparsky  Icon User is online

  • Chinga la migra
  • member icon


Reputation: 10714
  • View blog
  • Posts: 18,348
  • Joined: 19-March 11

Re: What's the best way to learn to be a programmer?

Posted 08 June 2016 - 10:26 AM

Exactly. On the other hand, if I wanted to have a really solid grasp of the organization of the machine memory, I might want to spend some time in a low-level language thinking about pointers and hashtables. It's really about what you're looking to learn.
Was This Post Helpful? 2
  • +
  • -

#14 Skydiver  Icon User is offline

  • Code herder
  • member icon

Reputation: 5921
  • View blog
  • Posts: 20,243
  • Joined: 05-May 12

Re: What's the best way to learn to be a programmer?

Posted 08 June 2016 - 11:03 AM

I never truly grasped the significance of pointers until I was teaching myself assembly language. Then the light bulb switched on. I never really understood how C++ did virtual functions until I had to manually create v-tables in C.
Was This Post Helpful? 1
  • +
  • -

#15 astonecipher  Icon User is offline

  • Too busy for this
  • member icon

Reputation: 2340
  • View blog
  • Posts: 9,388
  • Joined: 03-December 12

Re: What's the best way to learn to be a programmer?

Posted 08 June 2016 - 11:34 AM

I didn't mind learning C, rather enjoyed it actually, but for some reason C++ drove me mad.
Was This Post Helpful? 0
  • +
  • -

  • (2 Pages)
  • +
  • 1
  • 2