Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!


1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!


How many of you are self-taught/hobbyist programmers


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
67 replies to this topic

#21 Servant of the Lord   Crossbones+   -  Reputation: 23865

Posted 30 August 2012 - 10:05 PM

Self-taught hobbyist (trying to go indie).
I started learning mostly through books, then mostly through online tutorials, and now by trying to get the real two or three chunks of gold in hour-long conference videos or multi-page articles.
...and I've always learned by asking stupid questions on this forum until I think I understand whatever I'm asking about.

I also learn alot by seeing a short, clearly-commented, piece of code or pseudo code from someone else, and walking through it in my head and then modifying it and running it to learn how it works. I first copy and paste, but then rewrite in my own coding style and add comments as I walk through it, and then modify to confirm that that's how it actually works and to get it to do what my project needs, and then often scrap it and rewrite it completely to better fit the architecture of my project or to be more re-usable the next time I come across it.
Note: I do this when learning something (like an algorithm) I'm not familiar with; not for whenever I run into a problem in my code - less than 00.01% of my code is not directly written by me, excluding libraries and such. Copy+Pasting other people's code is a bad programming habit, IMO, unless you are doing so to learn how they did it (and not to just copy what they did).

The most important advice I can give is: Learn new things, but don't jump from new thing to new thing every week - you need to stick with one project or topic long enough to actually really "learn" it before moving on. Project abandonment happened all too frequently with my earlier projects which never got finished. Now I only abadon a subproject if I find it's detracting to much from my real primary project.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]


Sponsor:

#22 lawnjelly   Members   -  Reputation: 429

Posted 31 August 2012 - 01:50 AM

I have a feeling whether you need a 'bit of paper' qualification in e.g. computer science may depend on what particular field of programming you are going into. Certainly in game programming, at the moment, if you know your stuff you don't need a CS degree.

In programming it's fairly easy to show whether you have a grounding in the basics, that's why they often have programming tests in interviews. And the relative lack of importance of qualifications in the field ... in other subjects it can be much more difficult to quickly assess your knowledge, therefore a bit of paper is more useful.

A problem can be that qualifications are often set at such a basic level as to be effectively useless. The kind of people who are good at programming aren't those who need to be 'spoon fed' by formal education, but as said earlier in this thread, people who can adapt and are constantly learning new areas and ways of working. Ok - you'd be expected to know the kind of things taught in CS to work in CS, but that knowledge alone is a given, and doesn't indicate any kind of skill or talent (I've met many with CS degrees with no talent or flair).

In my age group (coming up to 40) the best programmers on the whole tend to be those that started early. There was ample opportunity for us to get started early (8-15 is typical) and those that started later tended to not have the genuine interest. If you are a 'computer' person, you will know it from the very first time you play with one. You will be instantly drawn to it and want to change stuff, learning how it works, move pixels on the screen etc. You'll literally have to be pulled away from it.

If it takes you until you are 18 to even think about this, you have to seriously ask whether you have found the field for you. You would be entering it as a 'profession' like law or medicine, rather than because of a love of it. Are you ever going to be anything other than a 'mediocre' at best programmer? There may also be benefits to starting very young - learning foreign languages is proven to be easier at a young age, and the same may occur with programming - with it framing the way you think.

That said, there may be exceptions to the starting early. Certainly for older people (50-60) there was not the availability of home programming until the early 80s, and there are some exceptional older programmers.

Another point however is that today, although in some ways new programmers are lucky (having a huge amount of info on the internet, free tools, etc etc), the barrier to entry can be much higher unless you start with a simplified system. In the early 80s, there was only 'so much' you needed to learn to get started and be producing cutting edge level stuff. Nowadays there is so much interoperability with different components and it's more difficult to produce something that would be considered 'professional grade', so I do understand to an extent the 'late starters'.

Back in the 80s, home computers came with built in programming languages - basic, assembly. These days, you need a considerable investment in time just to install a programming language and get it writing 'hello world' on the screen, which may put people off. Which is the reason for efforts such as the raspberry pi project.

To answer the questions though, myself I was self taught, along with most of my fellow programming nerds (hence my obvious bias lol). Began at 9 (this was typical at the time). I did do a computer science ancillary on my degree, in with the CS full time students, and the courses they had were diabolically basic. I actually cracked up with laughter during the lectures (pascal, systems analysis, AI etc), and ended up doing the other students programming assignments for them (in CS), and taught the engineers 6502 assembly. Had enough exposure to be glad I didn't waste my time doing a full CS course. I also did considerable programming on my phd, but that would be more professional use, rather than a learning course.

I did game programming as my job, until I was in a position to retire, since then I've done programming independently (often for fun rather than profit), but also had other means of earning money (gambling, extortion, drug running etc).

#23 Tribad   Members   -  Reputation: 955

Posted 31 August 2012 - 02:11 AM

All self-taught.
Started 1979 at age of 13. First earnings with something like Software engineering 1988. Now making software and system designs for automotive companies.
Never gave up even it needed along time to get reasonable payed for my knowledge.
RL has been sometimes a problem. But now everything is fine.

#24 mikeman   Members   -  Reputation: 2353

Posted 31 August 2012 - 03:04 AM

Yeah, I'm self-taught...


...which just means that I had a crappy teacher :P

#25 slayemin   Members   -  Reputation: 3564

Posted 31 August 2012 - 04:42 AM

I'm a mix of self-taught and formally educated. I thought I knew everything I needed to know about programming and that everything I didn't know, I'd learn through on the job training and experience. I decided that if I truly knew everything, then getting a formal education should be easy enough and a good way to "check the box". To prove it, I went and got my degree. Having a CS degree would make me much more marketable to employers.

I had the luxury of being in a position where I could get a well paying job with or without a degree. If a degree is useful only for getting a good job, then what's the point of getting a degree if I can get a good job without one? I like to think I was one of those rare students who decided that I'd go to school to acquire wisdom instead of a job, so I took a bunch of philosophy courses. Heh, am I more wise as a result? I'm wise enough to know that most of philosophy is people bullshitting and hiding behind a daunting language of esoteric philosophical terms. I think the best way to acquire wisdom is through a variety of life experiences and to critically read the words of those who you believe are wise.

It's worth mentioning that a lot of my learning came from this site :)

#26 Machaira   Moderators   -  Reputation: 1028

Posted 31 August 2012 - 06:33 AM

The only courses I took in programming were back in high school in the early 80s - COBOL, FORTRAN, and BASIC using an Apple 2c. Other than that I'm completely self-taught and I've been programming for a living for about 15 years doing .NET development. I took a C++ refresher course before I started with a company when I was in the industry and ended up helping out the other students since the course taught me nothing I didn't already know.

I should go back and get my degree though as it's getting harder to get any further in my career. I still want to go full-time indie game development but that's difficult when you have a family to support.
Microsoft XNA MVP | Check out my blog for random ramblings on XNA game development

#27 Madhed   Crossbones+   -  Reputation: 3452

Posted 31 August 2012 - 08:22 AM

Self taught here.
Started with Amiga BASIC around '91. Then QBasic, Turbo Pascal, C++, C#, PHP, JavaScript, etc.
I attended CS in college for a few semsters but dropped out because I found it to be pretty boring there. The thing I took from college however was the course about basic algorithms which really helped.
I might go back sometime but at the moment I'm pretty good with how things went. ;)

#28 BeanDog   Members   -  Reputation: 1063

Posted 31 August 2012 - 08:46 AM

I was self-taught, and landed my first paid development position before I'd taken any CS classes at all. But I've since completed a 4-year CS degree from a good program (BYU) and I don't regret the time or expense at all. I learned things there that I never would have even known existed; recursive-descent parsing, statistical natural language processing, compiler design, security primitives and protocols, etc. Don't shoot yourself in the foot by being too proud to learn in a formal environment.

~BenDilts( void );

Lucidchart: Online Flow Chart Software; Lucidpress: Digital Publishing Software


#29 szecs   Members   -  Reputation: 2291

Posted 31 August 2012 - 10:33 AM

99.99% self thought. We had 1 semester of C, 1 of C++, 1 of computer graphics. Engineering University, so these were just introductions to the topics. I'm working as an engineer and but once I programmed an application for my work and I'm very proud of it.
Other than that in the first 2-3 years: no internet, no programming friends, no books. Just some very few tutorials and documentation I downloaded to floppy disks.

I'm a very sloppy programmer, I have to add.

#30 smr   Members   -  Reputation: 1715

Posted 31 August 2012 - 10:49 AM

100% self-taught. My interest (actually it began as an obsession) when I was in grade school. My cousins had a Tandy CoCo3 with ROM BASIC. When I realized that programming is how you created computer games, I was obsessed. I didn't have a computer at the time, so I would check out every book on programming in the local library (a town of 2000 people. The library didn't have much) and read them all. I would then write programs down on paper. None of those programs actually made it into a computer though... Shortly thereafter I got an Amstrad something-or-other IBM compatible (8086, 640k, dual 360k floppies) and from then on I spent most of my free time writting terrible code in BASICA, QuickBasic, then finally moving to Borland Turbo C.

I've been working as a professional developer since 2001, being hired at nineteen. My title is Senior Applications Developer. I actually was offered the development manager position a couple months ago but turned it down due to some office politics that I didn't want to get in the middle of. The best decision of my life so far, seeing what the poor schmuck who did take the position is having to deal with.

#31 Nypyren   Crossbones+   -  Reputation: 6539

Posted 31 August 2012 - 12:13 PM

Self-taught from elementary through high school (Basic, C and x86 assembly language) followed by 4-year Software Engineering degree at a C++ oriented college.

The college experience was VERY easy in the first two years, but then I learned awesome stuff in 3rd and 4th years that I doubt I would have learned as thoroughly on my own (language and compiler theory, operating system kernels, distributed computing, functional programming, etc), and which heavily influence how I think about programming.

I suspect that my self-taught background allowed me to get more out of the college classes than those without. I could spend less time stressing out about homework and cramming memorization and more time contemplating the reasons and ramifications of things we were being taught. While some graduates feel like all they got out of college was a piece of paper to find a job, I feel like I actually got my money's worth.

Edited by Nypyren, 31 August 2012 - 12:15 PM.


#32 tstrimple   Prime Members   -  Reputation: 1744

Posted 31 August 2012 - 02:02 PM

+1 for "self taught". What that really means is learning by doing, and getting help from various communities online when things get tricky. Very few people are really self taught, we just didn't go through a formal education process. There are two things I would have appreciated from getting a college degree.

1. The piece of paper which is extremely helpful in getting interviews when you're just starting out. This doesn't matter at all once you have a few years under your belt, but keep in mind companies are getting dozens if not hundreds of applicants and a quick filter that HR can apply is who has a degree and who doesn't. You can work around this by being smart about how you apply. You've got to find a way to talk to the person who will be interviewing you and skipping the HR drone if you can.

2. Networking. If you play your cards right, you can come of of college with a network in your field already built. You cannot overvalue the importance of having a network of people that you interact with in your field. It's important that you talk with lots of people. Develop relationships outside of your immediate work environment. Like it or not, the world is very much a who you know environment. Sure, it helps to be technically competent, but getting to the right person at the right time is crucial.

You can of course build a network outside of college. I've been doing this myself. Go to local user group meetings. Go to local code camps if you have something like that nearby. To really stand out and develop relationships with the right people, volunteer at the user groups. Start giving talks on programming topics at those small conferences.

I barely graduated highschool and I am now the Director of Software Development at the company I work for, and there are always plenty of opportunities for me to choose a new position if I wanted to.

#33 Eastfist   Members   -  Reputation: 159

Posted 31 August 2012 - 04:10 PM

Not completely self-taught in the sense that I went to Barnes and Nobles and picked up a 400 page "how-to". Took a few programming classes in high school (Turbo Pascal) and college (VB.Net, java), but didn't major it in, never wanted to become a "professional". Wanted to go into filmmaking. But I wanted to focus on something in the creative arts, so I just dipped into whatever interested me and for some reason programming and digital drawing and graphic design seemed 2nd nature to me. But systems and how things work also interests me. But learning how to learn is crucial. You learn the basics of programming from Pascal, it teaches you how to organize variables and methods. Then you pick up HTML, then VB.Net, then go back to PHP, then to C#, then to javascript, then to java, then to c++. You realize programming concepts are almost all the same, it's just that the language is different. This is why object-oriented programming is so popular. Then you take this "pattern revelations" or like when Neo finally sees the code, and you apply it to real life. You see that the code works the way it works because the people who wrote it needed to base it on something, and that is their own real life. So software that is clunky but looks really nice are made by people who are superficial. Software that is minimal in design but never crashes and is scalable is written by people who are good at efficient problem solving. It could just be my generalizations, but it really is the soul of the programmer in the software. So if I applied this to my own software, it would be incomplete and tacky because I'm still learning about all the parts and slapping it all together with duct tape. LOL!
Be part of the man/machine revolution. SDXM 2D game engine.
www.eastfist.com

#34 kseh   Crossbones+   -  Reputation: 2439

Posted 31 August 2012 - 04:11 PM

Mostly self taught using a couple books and tutorials over several years. There were a few computer classes in school in which we did some programming but I was always already ahead of anything they taught until I got to college about 9 years after I first took interest in learning programming.

The main thing that held me back at first was a lack of a computer to learn on. All I had was an Apple IIe that was sitting in the school hallway, a small book from the library, and no disks to save anything on. Even then, I did the majority of my "programming" by hand writing the program in pen in a notebook that I kept. Those programs never made it to a computer and I had no idea whether they worked or not but it was what I had for the day and age. After I think about 2 years of doing that I got a C64 and was finally able to learn some fundamentals. Today, if I was starting over as a young hopeful, hopefully I could figure to download VS express and find a few tutorials. Assuming I have a computer I can work on, and assuming that I found this website, I'd probably learn a lot faster than what I actually did.

When you are determined, you find a way.

#35 Net Gnome   Members   -  Reputation: 773

Posted 31 August 2012 - 09:04 PM

although i have a degree in computer engineering, my current position has me in a managing/oversight role rather than getting to do anything hands on. That basically means i don't get to program unless i do it on my own time Posted Image. Unfortunately, the degree makes a nice wall-hanging right now as far as usefulness Posted Image well, not entirely true, it gives me some interesting insight as to what the silicon is doing behind the scenes, but it doesn't help me keep up with the explosion of new programming trends since i received my degree. So, while not 100% self-taught, i've taught myself various things when I've had the time to do so, like the language i'm using now (c#) and im doing it as a hobby. If, and thats a big if, i think i've produced something worth selling, i may try to go indie with it. I'd say the first electronic game i ever made was an RPG with TI-Basic back in high-school. The game + graphics basically took up most of the memory, and TI-Basic didnt have great memory management, so when it called other programs to do things, it would slowly eat all the memory untill it crashed the calculator ;D

Edited by Net Gnome, 31 August 2012 - 09:46 PM.


#36 Orymus3   Crossbones+   -  Reputation: 13682

Posted 31 August 2012 - 09:27 PM

How many of you program just for fun or are self taught? Im talking about people without degrees in CS?CE/IT.
If so how did you learn and what do you do for a living? And how did you manage to learn with other RL issues


I'm Self-taught. I was programming at age 9, I *did* attend one session of programming classes (which bore the **** out of me).
Curiosity is a very strong vector as far as learning is concerned. If you have thirst for knowledge and passion to make things happen with it, you can learn programming.
I'm a project manager in the videogame industry, and my 'basic' understanding of programming is invaluable in this field. It really gives me an edge compared to a lot of people who rather excel at management.
RL issues don't get in the way of goals you set for yourself unless you let them be an excuse. Case in hand: I've got kids to feed :)

-=- My Articles-=-
Getting Games Done - Method and tools on how to start a hobby project and get it Done!

Retro Mortis - "RTS" - Article Series (3 Parts) on the history of RTS development


#37 Memories are Better   Prime Members   -  Reputation: 769

Posted 01 September 2012 - 02:20 PM

Self taught, started with PHP then AS, didnt really like them, C# changed my overall programming goals, programming was no longer a hobby but a game, I gave up MMOs and even sex (I know right), I have way too much fun programming, a few months ago I added C++ to the list.

I learnt from a lot of books, lets just put it this way, I have spent more on books in the past 5 years than I have on food, clothes, alcohol and games. For me I got a huge satisfaction over learning something new, so programming was a good fit.

#38 Heath   Members   -  Reputation: 344

Posted 01 September 2012 - 03:14 PM

Self taught, started with PHP then AS, didnt really like them, C# changed my overall programming goals, programming was no longer a hobby but a game, I gave up MMOs and even sex (I know right), I have way too much fun programming, a few months ago I added C++ to the list.

I learnt from a lot of books, lets just put it this way, I have spent more on books in the past 5 years than I have on food, clothes, alcohol and games. For me I got a huge satisfaction over learning something new, so programming was a good fit.

That's awesome! That's the most unique story I've seen yet about how someone learned to program! :P Usually it's "Oh I learned on the Amiga when I was 8 and now I get bored with it" but that's the first time I've heard of someone giving up some amount of sex and inebriation to go write code.

#39 Memories are Better   Prime Members   -  Reputation: 769

Posted 01 September 2012 - 04:45 PM


Self taught, started with PHP then AS, didnt really like them, C# changed my overall programming goals, programming was no longer a hobby but a game, I gave up MMOs and even sex (I know right), I have way too much fun programming, a few months ago I added C++ to the list.

I learnt from a lot of books, lets just put it this way, I have spent more on books in the past 5 years than I have on food, clothes, alcohol and games. For me I got a huge satisfaction over learning something new, so programming was a good fit.

That's awesome! That's the most unique story I've seen yet about how someone learned to program! Posted Image Usually it's "Oh I learned on the Amiga when I was 8 and now I get bored with it" but that's the first time I've heard of someone giving up some amount of sex and inebriation to go write code.


Nice, I actually made a thread on aven a few months ago saying "am I asexual or do I just have more fun doing other stuff?", I could mention some funny stories right now about past experiences but id probably get banned haha

To some however it may sound lame, nerdy or bizarre giving up so much, but I have experienced a lot in my life, did the whole partying till 6 in the morning, socialising my address book to 2k, playing games endlessly for those special epics / titles etc never got anything long term out of it, programming and learning in general is the only thing that has benefited me, shame really took me 22 years to realise :D

The way I see it, if something is fun, doesnt damage your health, is good for you and you learn from it, go for it, the downside is your social life ends up dying, on the plus side you learn a lot of cool and useful skills

#40 Dwarf King   Crossbones+   -  Reputation: 1968

Posted 01 September 2012 - 05:08 PM

I am 100% self-taught. I have no formal education of any kind (dropped out of high school) and certainly no "official credentials" in programming.

I learned by being interested and persistent. If you genuinely care about doing something, you will find a way to do it - "other RL issues" are more or less irrelevant. As I often tell a good friend of mine: some people stare into space dreaming of living among the stars.

Other people don't stare into space, because they are busy building the rockets to get there.


I really love that comment Posted Image I shall copy it and hang it on my wall. It is a shame that I cannot vote you up here.

"The only thing that interferes with my learning is my education"

Albert Einstein

"It is a miracle that curiosity survives formal education"

Albert Einstein

 





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS