• Welcome to Autism Forums, a friendly forum to discuss Aspergers Syndrome, Autism, High Functioning Autism and related conditions.

    Your voice is missing! You will need to register to get access to the following site features:
    • Reply to discussions and create your own threads.
    • Our modern chat room. No add-ons or extensions required, just login and start chatting!
    • Private Member only forums for more serious discussions that you may wish to not have guests or search engines access to.
    • Your very own blog. Write about anything you like on your own individual blog.

    We hope to see you as a part of our community soon! Please also check us out @ https://www.twitter.com/aspiescentral

Computer programming

FromEquestria2LA

Well-Known Member
Alright, I think after some long years, I think I may take up computer programming. Because, partly, my uncle and dad are prodding me to do it.

This thread is for advice on how I can help myself educate myself in this field, and other advices on this career field I may pursue. Any advice, guys? Thanks.
 
Well to start is it something you want to do? If your only doing it because your uncle and dad suggest you should but it not something you want, you might want to consider something else.
 
OK. I guess you need to figure out what kinda of career you want. Do you want to develop web based application, mobile apps, video games, etc?
 
Right off the top of my head I can think of three main programming branches. Applications (desktop and mobile), internet and web development, and then security and [ethical] hacking.
 
There's a lot more to programming than desktop and mobile systems. The fastest growing area right now is probably embedded systems. Everything has a computer in it that needs programming. If you think that area interests you I would order an Arduino, Launchpad, PIC, Raspberry pi, or any microcontroller development board to play with. There are also programmable logic controllers which control everything from manufacturing processes to surgical robots.
 
The basic principles of programming are the same regardless of language. So if you haven't done any in the past, anything you pick up now will have application later. Obviously, different branches have their preferred tools and languages, so once you know what direction you want to take, you can focus on these.
 
Alright, I think after some long years, I think I may take up computer programming. Because, partly, my uncle and dad are prodding me to do it.

This thread is for advice on how I can help myself educate myself in this field, and other advices on this career field I may pursue. Any advice, guys? Thanks.

To get into programming your gonna have to have the temperment for it, logical thinking and the ability to sit for hours and hours working out how to get something working...dont be fooled into thinking it's like the movies.
The reality is that programming requires a lot of time and patience and lots of frustrations along the way.
Like all IT, It's also an ever evolving area so be prepared to constanely learn new stuff forever.

Also the myth of high pay needs to be debunked...it takes expierience and talent to get high paid jobs and it doesnt remove the need for good social interactions but it can lessen them to a degree.
I'm not being negative but the portral on TV and movies of IT is utter nonsense and you need to know what its really like.

If thats you then start with something like java on your own and see how you get on:
The Java™ Tutorials
Hope this helps.
 
"Computer programming" is a huge field. You're going to need to narrow it down. However, instead of asking "do you want to build websites, or do you want to build desktop applications," I propose a different question:

What kinds of problems do you want to solve?

Programming is first and foremost problem solving. This part is the foundation of everything else in the industry. Things get built, because someone saw a problem and thought of a solution.

What kind of stuff do you want to build?

Programming is as much a creative art as it is a science. While there's a lot of mundane stuff to do, too, we developers like to build cool stuff. So, what's your pipe dream thing you want to build? (This goes hand in hand with the problem solving aspect, by the way.)

Do you want to build a self-watering garden system? Then embedded systems with Raspberry Pi and Arduinos might be a good place to start.
Do you want to build a robot? Then robotics is the obvious choice.
Got an idea for a cool mobile or computer game?
Like data analysis and want to build some cool data modeling thing?
Want to be able to modify a Hue smart lighting system or rig up Christmas lights to "dance" to music, just because you can?

What you want to build will guide you on where to go, because each thing has its own problems to solve and existing solutions to build on. These will also dictate what foundational things you'll need to know, and what programming languages will be the most applicable.

Think Like A Programmer

While I was in college, I learned quickly that it takes a certain type of person to become a programmer. That kind of person has to be able to think in a particular way (whether they do so all the time is optional, but you need to be able to do it). In layman's terms, it's known as "thinking like a programmer." I liken it to the "teach someone to make a sandwich" or "teach someone to tie their shoes" exercises you may have done in elementary school.

Did you ever do that kind of exercise? You're tasked with instructing someone to do a particular task that you probably do all the time. Most initial responses look something like this:

Put peanut butter on bread, put jelly on bread, put bread together.

The teacher then proceeds to put the jar of peanut butter on the loaf of bread, quickly illustrating that several important steps are missing.

The final result looks more like:

Remove twistie from bread. Pull out two slices of bread and place on plate side-by-side. Unscrew peanut butter jar. Dip knife into jar and scoop out some peanut butter. Spread peanut butter on slice 1 with knife. (Repeat for jelly.) Place slices together so that peanut butter and jelly are between slices and touching each other.

This time, the teacher is able to successfully make a sandwich.

Being able to break actions down like this and look at things in terms similar to how a computer would see it (if-then conditions, loops, logic gates, etc), is integral to being able to program. The better you can do this, the better you'll succeed.

Now, not everyone knows how to do this by default. If this comes difficult to you, or you don't know how to do it at all, then this would be a good place to start. Start looking at different actions or things and break them down into their constituent parts, as though you're instructing someone to do them. Break down the movements of getting a book off a bookshelf, or can of tomato paste out of a cupboard.

From there, there are a number of books and interactive sites that can help you learn. Treehouse, Khan Academy, Code School, CTF365 (a hacking capture the flag type of game), and other such resources can be helpful in learning the more technical and specific aspects of programming.
 
If you've never done programming before, experimenting or taking on a personal project would be a good idea. It's hard to choose something like "desktop" or "mobile" if you don't really know what that means or what it involves.
 

New Threads

Top Bottom