# is it possible to be a self taught programmer ?



## forex (Dec 29, 2010)

are they here , self-taught progr.

can you put here what you did to achieve.
what did you learn , what not to do , did you had a schedule or any books must haves etc.

i don't have much points , just wanna hear your story how you succeed in it.


----------



## burrito (Aug 29, 2012)

Ive heard many stories of people teaching themselves. As with anything though it will take time and probly just diving into it to see first hand. Im sure someone else more knowledgeable will chime in, but what exactly did you want to learn to code? Websites, programs, videogames? There are a few different code languages. Im not familiar with the similarities between them or if theyre all very different. Things like C+, C#, Ruby etc


----------



## Canucklehead (Aug 28, 2012)

I was a self taught programmer before going to cosci classes, and while it was a leg up in some regards, it actually set me back in others.

You teach yourself bad habits that are hard to break if you ever want to do it as a profession.


----------



## burrito (Aug 29, 2012)

Canucklehead said:


> You teach yourself bad habits that are hard to break if you ever want to do it as a profession.


A good point.


----------



## forex (Dec 29, 2010)

burrito said:


> Ive heard many stories of people teaching themselves. As with anything though it will take time and probly just diving into it to see first hand. Im sure someone else more knowledgeable will chime in, but what exactly did you want to learn to code? Websites, programs, videogames? There are a few different code languages. Im not familiar with the similarities between them or if theyre all very different. Things like C+, C#, Ruby etc


websites, programs. i was thinking of python it says is easy to grasp the fundamental.


----------



## Paper Samurai (Oct 1, 2009)

Generally speaking web programming has the lowest barriers to entry in terms of complexity of concepts and math. If you can divide and multiply you're pretty much sorted lol since it's all about logic more than anything. The downside to this relative simplicity is that you need to know a wide range of stuff (breadth rather than depth) 

Video game programming requires a ton of mathematical theory under your belt before you can do anything. Also, you need to know more complex prog languages to make sure you're using every last bit of available memory efficiently. 

Smart phones apps are somewhere inbetween the above two (depending also on what you want the app to do) quite fun to develop, with a lot of helpful tutorials and frameworks available on the web.

Finally there's also embedded programming - code for devices ranging from car stereos systems, hospital equipment and toasters.  You'll need to know some of the harder languages for this as well as good comp sci knowledge. Can be a pain though, as architectures vary so much from device to device.


----------



## StGlen333 (Sep 27, 2012)

I once checked the wanted ads for what was in the most demand a few years ago. The top most demanded language turned out to be SQL for databases. I was going to learn it. I went and got a college textbook on it too. I never followed through with that. I can't remember what was in 2nd demand.

But if you want to actually get a job and make an income, I'd suggest looking to see what is the most demanded computer skill.


----------



## AceRimmer (Nov 12, 2008)

If you're looking at getting your feet wet, Edx is running a CS course from MIT which uses Python. Coursera is also running a python course but that one is much, MUCH easier. Udacity also has a CS101 course which uses python to create a web crawler. I'm going thru the Edx and Coursera ones right now and will try to tackle Java afterwards.


----------



## dassad (May 13, 2012)

Personally, I went to school to learn programming, but school for me only taught the fundamentals. To become very good at a specific programming language or to learn new programming languages you have to do it yourself most of the time.


----------



## whattothink (Jun 2, 2005)

I once started a workbook on Python a couple of years ago. It was very easy, but I just lost interest. If you're fresh to the programming world I've read that Python is a great first language to learn.


----------



## Guldove (Oct 17, 2012)

Python is a great language to begin with, but it's kind of niche. People need to take the time to install Python on their machine at this point in order to run something coded in it. It definitely has a following, though, so at least a brief foray into it should be worthwhile, especially if you're testing the waters.


----------



## ComeAndSee (Oct 18, 2012)

I learned HTML when I was 12 designing websites on geocities. 

I self taught C++ as well because I design programs for my own job. 

I learned mySQL and SQL from designing game servers.

Honestly, I don't consider myself a "programmer" because I'm just really good with finding what I need code wise on the internet and manipulating it in order to work with my programs.


----------



## A SAD Finn (Sep 16, 2007)

I'd also recommend Python. It's easy and intuitive yet very powerful and expressive. When you've learnt the basic concepts of programming in one language it's pretty easy to learn other languages such as Java/C#/Ruby. I'd recommend Linux/Mac OS X over Windows for programming. It's very easy to install all the required programming tools on most Linux distributions.

I don't know of any specific self-learning materials for learning programming with Python but I think it'd be wise to look for a good book as your first learning resource.

Personally I taught myself VisualBasic, Delphi and C/C++ when I was something like 13 to 15 years old. I used a few books but most of my learning was done messing around with existing code, changing it and seeing how it affects the behaviour of the program etc. Nowadays, I write programs mainly to do simple numerical simulations of physics/math problems.

Feel free to PM me if you wanna know more about Python or anything programming related.


----------



## BabyBlueGamer (Oct 2, 2012)

I think its possible to teach yourself anything but this will take alot of time, effort and discipline and problem solving skills also. Well problem solving for me at least, I tried to learn it on my own but it didn't work out. I recommend a book or online course or college.


----------



## forex (Dec 29, 2010)

thanks all for your comments.

i will begin with python bc it was told everywhere it was easy to grasp , for me i want the basics just to understand the flow and how i break it down if i see something.
and am running ubuntu on my system and downloaded a book called "think python" 300 pages with the basics easy explained.


----------



## Guldove (Oct 17, 2012)

Keep us updated on how your experience goes.


----------



## Rich224 (Aug 25, 2012)

I started out using a simple scripting language from a game call grall many years ago, always had a interested in building video games, moved on to a program call game maker, learned its scripting language. As soon as I fully understood that I went after the big language c++. Now that was a challenge its hard concept to grasp (aka pointers....) when your trying to learn it your self. I went and got a open source game server and studied its coding, changed things, added my own code, trial and error stuff. Now today I am able to code advanced servers/clients, AI know alot of scripting languages, sql, xml, lua, php, html. best advice I can give you is try not to rush into it you will get frustrated, read some online tutorials get your self a compiler and try and make some simple programs.


----------



## gorbulas (Feb 13, 2004)

i gotta say that you have to keep at it if you're going to go after it. i took a few classes of programming in college before i switched majors and I can't remember nothing now (granted it is 10 years later). 

what's your motivation to be a programmer?


----------



## A SAD Finn (Sep 16, 2007)

forex said:


> thanks all for your comments.
> 
> i will begin with python bc it was told everywhere it was easy to grasp , for me i want the basics just to understand the flow and how i break it down if i see something.
> and am running ubuntu on my system and downloaded a book called "think python" 300 pages with the basics easy explained.


Seems like a pretty comprehensive book. The official Python tutorial http://docs.python.org/tutorial/ is very nice too. The Python standard library reference http://docs.python.org/library/ is an absolute must when you've learnt the basics and start doing any serious stuff.

Good luck and please keep us updated on your progress.


----------



## bobby. (Mar 29, 2011)

I'm a self taught programmer, so yeah it's possible. I haven't got a programming job yet though as I'm still working on building a portfolio that I can show off. Up until now I don't think I've been good enough to actually work in the industry, but I've improved a lot recently.

I started with OPL (which is similar to BASIC), then moved onto Visual Basic, and now I work almost exclusively with C++. In my opinion it would've been better to start with C, and then move quickly onto C++. I spent far too much time faffing around in VB when I should have been doing real programming.

If you're going to learn C++ (which I recommend, because it's awesome), then you should buy the following two books by Scott Meyers:
- Effective C++
- More Effective C++

They're quick and easy to read, and not expensive either. They don't actually teach C++; they expect you to know the basics already.

I'm currently in the process of building a 2D game engine, and there's nothing more satisfying than having your program run correctly and knowing also that your solution is elegant. Here's something I wrote earlier today. Pretty scary looking, but also kind of beautiful in a strange way. Idk maybe I'm just weird.

Btw, I post a lot of code on my blog, so check it out if you like. I intend to write some tutorials one day, as I've a friend who's been struggling to learn C++ and wants me to write one.

And yeah, python is nice, but it's just a scripting language; unlike C++ it's not compiled into machine code and executed natively on the target platform. However, python is good if you want to actually get things done quickly. Learning C or C++ as a first language is somewhat demoralising because for the first few weeks you'll be doing nothing but console apps most likely. Idk, it's your decision. Good luck with it


----------



## Paper Samurai (Oct 1, 2009)

Oob said:


> I'm a self taught programmer, so yeah it's possible. I haven't got a programming job yet though as I'm still working on building a portfolio that I can show off. Up until now I don't think I've been good enough to actually work in the industry, but I've improved a lot recently.
> 
> I started with OPL (which is similar to BASIC), then moved onto Visual Basic, and now I work almost exclusively with C++. In my opinion it would've been better to start with C, and then move quickly onto C++. I spent far too much time faffing around in VB when I should have been doing real programming.
> 
> ...


Dude, well I'm impressed with the code lol. I like your comment walls & C++ always looks good to me for some reason.


----------



## van0014 (Oct 28, 2010)

Learning Game Maker is really easy. http://www.yoyogames.com/gamemaker/studio

It starts basic, with drag-and-drop "coding" and you always have the option to use entire code when you get better at it. I taught myself how to use it and now im really good at it.

I just learnt the whole language by reading the help files.

Here is sample code that you will eventually be able to program yourself



> //change the font
> draw_set_font(font0)
> //only draw if 'draw'=1
> if draw!=1 exit;
> ...


----------



## JRaymond (Aug 15, 2012)

I taught myself html, copying codes, googling things I knew I wanted my html to do. 
I often do html without any programs. Often just using a simple notepad or Rich Text Document. Tho I'll admit it can get boring at times. I'm actually taking a long break from it atm. 

I also taught myself programming Bot & macro software, using AutoIt has the program to do the Scripts in. Its not that complex.

I'm sure like html or software creation using AutoIt scripting, any programming can be self-taught. Just takes time, patience, and a willingness to learn


----------



## Maninthebox84 (May 3, 2012)

It's possible. It's also possible to study computer science for 7 years and not learn how to program. In my case, the latter is true.


----------



## coldmorning (Jul 4, 2007)

Maninthebox84 said:


> It's possible. It's also possible to study computer science for 7 years and not learn how to program.


So very true.


----------



## DubnRun (Oct 29, 2011)

I learned C++ ima gonna learn .net aswell so I can look for work in that field. Need to brush up though on my skills.


----------



## Saekon (Jan 13, 2010)

I do programming as a hobby, I basically do something everyday at the moment. Right now I'm working on a project that's taking up a lot of my spare time and I'm really fond of it but I don't want to say what it is (identity safety and all).

I've worked with C#, C++, JavaScript (and HTML and CSS for a cruddy HTML game as well as a website). And I really hate to say this but I've also used QuickBasic and QBasic, but thankfully I've forgotten it all - I'll never return to them after having experienced other languages, that's just me though. 

When I first started seriously programming which was with C++ I looked on the web for some tutorials that covered basic syntax, classes, pointers, etc. After that I got pretty bored of just following tutorials and found I learnt a lot more when I worked on my own projects where when I found a problem I'd get an urge to look it up on StackOverflow or similar. 

StackOverflow has been an invaluable resource since then, I find that as I come across a problem I need help getting across I merely have to search online to find a suitable method to either the same or a similar problem and can apply that in creating my own solution (they also tend to have a big long and often very interesting and useful discussion over it too). I guess I take a problem-oriented approach, and I've learnt lots that way; I wouldn't say I follow best practices though but some of those you end up picking up whether you like it or not, it just makes it easier for you in the end most of the time.

So yeah... pretty much no schedule. I do plan to pick up a book or two though but until now I've felt like I just don't have the time to dedicate to concentrating on one (even without the hobby - yeah it's detrimental).


----------

