Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have been programing for about 11 months. I've learned some things,and evaded some. I know some advanced things and I don't know some basic stuff. I easily get bored with programing when I program in a programing language I know, but it's different when I program in a new language. I like to learn to program and not to make apps, but I'd like that to change.

Also, I am not very consinstent. I start one thing and after a few days end with something that has nothing to do with the thing I started. I am also a loner and a shy person, so I try not to ask for help (stuborn?) and as time passes I lose my confidence and patience. When I visit sites that host open-source projects, I want to join some team, but it seems like everyone is using some language/tools I don't even know they existed. Is this lack of confidence or am I still a beginner?

And as I said, I try to do stuff alone, which is very often completely demotivating. So can anyone tell me how to feel more confident, how to gain willpower to join some team? If you find this question to be misplaced, don't downvote me, just tell me how to erase it or how to send it to StackExchange.

share|improve this question
@Aleksandar: are you really 15 year old? –  user2567 Jul 5 '11 at 18:36
Yes.I'll be 16 august 25th. –  Aleksandar Jul 5 '11 at 18:37
@Wooble.What does aversion mean?(english is not my native language) –  Aleksandar Jul 5 '11 at 18:39
@Aleksander it has the same meaning of "dislike". (Not my native language too, so if I'm wrong, someone correct me) –  Vitor Jul 5 '11 at 18:48
Hi Aleksandar, this question doesn't seem like it's a very good fit here: we're looking for questions that invite the unique insights of programmers; overcoming shyness and boredom are issues that affect everyone, not just programmers. The answers posted so far seem to confirm that. Is there anything about your specific situation that requires the unique insights of a programmer to answer? If so, please edit your question and flag for moderator review. –  user8 Jul 5 '11 at 19:29
show 4 more comments

migrated from stackoverflow.com Jul 5 '11 at 18:26

This question came from our site for professional and enthusiast programmers.

closed as off topic by Michael K, David Thornley, Mark Trapp Jul 6 '11 at 1:01

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

7 Answers

Wow, just relax.

I started picking C when I was 14 (I did some some Logo, when I was 6 or 7, them some Pascal in some optional projects in school).

Programming using professional environments like C or C++ when you're very young sometimes is demotivating: first, when asking really basic questions in online communities people are often flamed (I see you're afraid of downvotes! Don't be. Just keep going.) and this sucks. And second, learning how to sort a list is really boring and it seems senseless to a novice.

Just keep going. Write small projects and publish them using github and similar sites. Use codereview.stackexchange.com as a mentoring tool: post code and ask suggestions on how to improve it! Use the tools you already know to build apps. You'll learn plenty of tools as you go by learning. It's a long way. A time wil come when you're confident enough to join larger projects.

Best of luck!

share|improve this answer
I am using MS VC++.Definitely worse than MS VC# express.I mostly use Notepad++.So my IDEs are more or less alright.I know the VS and I know what is what.The IDE is not demotivating.It's the way I feel when things crash,I know the bug,but I don't have enough will to get rid of it.Thank you for your time. –  Aleksandar Jul 5 '11 at 19:13
@Aleksandar This kind of detail - sorting out memory allocation errors, etc. takes all the fun out of coding. I really suggest you to take a look at Python. It's a great learning tool and WAY better than anything in Visual Studio for "fun coding". Look at xkcd.com/353 but stay away from the medicine cabinet! :) –  Vitor Jul 5 '11 at 19:17
I don't like python.That's maybe I like ruby.It seems weird not to use end and that there are two dots behind an if statement and elif seems ugly to me.Maybe it's a question of religion but I like ruby more.And I already know the Ruby API while I know nothing of python.Btw ruby is the first prog. language I learned.And about memory.That's hard,very hard.And I keep away from it as much as I can(I mean dynamic memory).About the comic.It's funny :). –  Aleksandar Jul 5 '11 at 19:25
@Aleksandar Ruby is fine too. I'd just advise you to try to stay away from more bureaucratic languages like C++. It's really no fun chasing strange compiler errors when doing advanced template wizardry. –  Vitor Jul 5 '11 at 19:29
@Aleksandar A piece of advise from someone who codes for a living: don't do this "I like this, I don't like that". Use wherever is the right the tool for the job even if this means using something you don't like. Good luck! –  Vitor Jul 5 '11 at 19:42
show 4 more comments

whoa there!

First put programming aside, from what you have described you have some serious low esteem issues that you need to resolve first.

Right now your using programming as an escape, a crutch aid to get through life. This current route is destined for failure.

My advice is that you need to apply the same ruthless logic to life as you would programming.

(a) You lack confidence? -> Then do whatever the f*ck you need to get confidence

(b) You find it difficult to communicate? -> Then learn to communicate, learning human syntax is much like learning a programming language : watch, listen, observe, and practice.

(c) Re-program your self -> Change your fashion/clothes style, if you dress like a loser people will treat you like a loser. Learn to dress well, the confidence boost will help you reshape your mannerism. Its the first step, the bootstrap for all the next steps.

(d) Learn the art of social engineering, humans are very, very interesting indeed -> body language is very powerful tool, its a damn shame people never put the effort to really learn it!!!

I can say the above with confidence, because everything above I've described I've personally done.

You think the "high" you get from having power over computers (by means of programming) is something? Then that's NOTHING compared to the "high" you get from controlling people (by means of social engineering, body language etc)


On the point of "Controlling People" I think I could have phrased it better -> Influencing people. This is very important in the world, when you have ideas, you will inevitably need others to be on board to make a change.

share|improve this answer
Night.I don't want to be a psychologist. –  Aleksandar Jul 5 '11 at 20:14
It has nothing to do with wanting to be a psychologist, the only person who can change you is yourself. You can't do that with out understanding humans (of which you are one, no damn different) –  Darknight Jul 5 '11 at 20:17
You have a problem with swearing. –  Aleksandar Jul 5 '11 at 20:19
No I don't have a problem with swearing, I wrote it in that style because that's the only way to express the sentiment, otherwise the advise comes off mild and shy much like your self –  Darknight Jul 5 '11 at 20:22
Hmmm.You can only instill fear in other people by swearing,or remain completely ignored in my case.There is no need to yell.Every problem can be solved by speaking,as long the speakers have the nervs for it.When they lose them duels appear(with swords,guns or swears). –  Aleksandar Jul 5 '11 at 20:26
show 6 more comments

Step 1. Go to school.

Step 2. Get a job.

Step 3. Ask this question again in 5 years.

share|improve this answer
-1 for telling "just quit". I started myself playing with programming way back before college (just after learning how to read, actually). I usually really like you answers but this one sucks, big time. –  Vitor Jul 5 '11 at 19:00
I already study languages.I am too young to get a job :(. I don't know will I be even doing programing in 5 years,though I hope I will. –  Aleksandar Jul 5 '11 at 19:01
@Vitor Braga: Where does it say "just quit"? It says keep going; going to school; going to job. –  S.Lott Jul 5 '11 at 19:06
The impression it gives to me is that you're advising him to now to care about programming right now, to keep living and worry about programming when in/after college. Am I wrong? –  Vitor Jul 5 '11 at 19:09
@Vitor Braga: "keep living and worry about programming when in/after college" Is a good summary. It doesn't sound like "just quit" to me. Am I wrong? What words are missing? –  S.Lott Jul 5 '11 at 19:15
show 10 more comments

One of the key requirements for learning is being able to take initiatives. If you think you want to pursue developing apps, just do it! Start with something small and achievable, and then move on to bigger projects. You could begin with a project as simple as a calendar application that tells you the day when you input the date. Take that up as a challenge.

As for being shy and a loner, you've got to realize that it's the biggest roadblock in your learning process. You've got to learn from examples around you, and unless you interact, you won't get anywhere.

You'll overcome fear, gradually. Didn't you manage to come here and ask for help?

There are wonderful people at stackoverflow.com ready to help you with specific problems that you might face while coding your apps, apart from the lots of existing answers.

share|improve this answer
add comment

You've been programming for 11 months, you are still learning and growing.

Think of it this way: If you were to start messing around with doing carpentry, at its most basic you know any carpenter worth his salt uses a hammer and nails. Then you learn that there are different sized nails, some of which work better on different types of wood. At first you won't know this, you will use the wrong nail on the wrong type of wood and the results won't be as good as you hope for. But from your mistakes you will learn.

Eventually you will learn about an automatic power hammer! This steps you up to a whole new level and lets you do the basic tasks much quicker! Then you start learning about sawing wood, and different types of saws. Oh and don't forget that you can also get into curing and finishing wood. It will take time to learn it all

Depending on the language you use it might be easy to get demotivated especially if its a language considered to be less "easy" to pick up and write code for without a deep understanding like C++ or Haskell.

Don't get discouraged if you start a problem and don't finish it, it could in all honesty be that you don't yet have the breadth of understanding to tackle your problem. Maybe take on smaller challenges?

Open source projects can be daunting to look at. Lots of files, lots of code, no clear point as to where you start. It might take days just to sit down and read the code for some projects to get a real feel as to where everything is, don't worry this is normal. Same for the obscure tools you find people might use, it will take time to learn them all

share|improve this answer
Yes,that's true.But is there an open source project for a beginner like me.Something easy,yet useful? –  Aleksandar Jul 5 '11 at 19:31
It all depends, what language(s) do you know? Do you know any special API libraries? Most importantly: what are your interests? Even if you know nothing about but have an strong interest, that will keep you moving. Also you could consider just writing something on your own! –  BOMEz Jul 5 '11 at 19:36
My interests vary.I'd like to make games,but I still can't(bad at maths),web pages(problems with layout and broswer incompatibilities) and software like paint or text editors just for fun. –  Aleksandar Jul 5 '11 at 20:22
Truth is if you want to program games you will need to understand mathematics. No gentle or easy way to put it. Linear algebra, a bit of physics and calculus are necessary if you want to do anything interesting. I personally hate design as well when it comes to webpages and as a programmer you would rarely have to do it, rather your focus should be on moving data around a web page securely and doing interesting things with it. Try this for a project: Build a webpage which allows a user to login and only when logged in allows them to upload pictures which are displayed on the home page –  BOMEz Jul 5 '11 at 20:32
I was considering to make a web site with asp.net allowing socialistion for my class(sth like fb,but rather simple ;)),but I decided to leave it for later,when I know more SQL and all about it.And data tranfering at all.I don't use the System.Data namespace.I prefer custom data formats.And sometimes XML. –  Aleksandar Jul 5 '11 at 20:34
show 2 more comments

Everyone has to start somewhere, always keep that in mind. Being overwhelmed when looking at a large project for the first time is, in my opinion, completely natural.

Don't forget that Open Source projects with big teams have their code public for a reason, one of them being that it's a great learning tool, and if the language and tools seem completely alien to you don't be afraid to ask where you could go to learn. Regardless of the response you will be no worse off than if you hadn't asked and in many cases come out ahead.

You've already found Stack Exchange so you're already off on the right foot, and our job here is to answer, not belittle or judge, so never be afraid to ask.

share|improve this answer
add comment

You are mixing both Technical & personal issues. Lets check each one.

"I like to learn to program and not to make apps, but I'd like that to change."

Mhhh, think in an app. you would like to do, a project that may interest you. For example, a programming student I had, like soccer, so we made an app. that store soccer teams, and results of soccer games.

"Also, I am not very consinstent. I start one thing and after a few days end with something that has nothing to do with the thing I started."

Having problem staying focused ?

There are several reasons not to stay focused, just been depresed in one of them. The worst part is that depression its a bad loop, people is depressed because having problem doing something right, and do things wrong because is depressed.

Like some people over here, you may want to check with a psychotherapist, thats a sign of Attention Deficit Disorder, or maybe just "procrastination", trying to avoid something you don't like.

"I am also a loner and a shy person,"

Very common among programmers, you may want to start hanging around with another "loner and shy persons", look for people with similar interests, in your city, if not, in internet, but, try to do in person. Like some particular kind of music, videogames, sports...

One more, thing, 15 or 16 years ? Well, at that age, many things in life seems difficult, to anyone, It doesn't matter what you do, you will feel everything is wrong even if you do it right, even small things.

You may want to balance your "geek" life with other stuff like been in a music band, learn to play a musical instrument, do some sport, start with individual simple sport like running or weightlifting, and later in group sports like hockey or soccer.

Sports & music cause your body to produce some substances called endorphines, that make people feel better, when depressed.

Good Luck.

share|improve this answer
I like games.So i try to make games.I fail,get depressed search for help.Decides to chill of.I know a few programers in my town,but they are all extremely arrogant.Yes,life sucks for me,but I try not to mix real life with programing.I try not to feel like a sucker in life.I have friends(non-programers) who help me in real life.I am rather weak.I can't endure long running or weight lifting,though I can and sometimes like walking long distances.About music,mostly folk and metal(darker).And folk about religion and god's punishments over the sinful people.I need a more cheerful music. –  Aleksandar Jul 5 '11 at 20:49
@Aleksandar "extremely arrogant" means "shy & lonner too, instead of depressed been arrogant". Life may be bad, dont let that idea overwhelm you. "I am rather weak.", sports ? people doesn't become ver healthy instantly, you should keep doing sport, step by step. Yeah, you need more happy music, its common to like to hear heavy music when depressed, but try to break the depression loop. –  umlcat Jul 5 '11 at 21:14
@Aleksandar, I forgot, things like games and other stuff in life take time, start learning basic programming stuff, like how to use pointers, collections or data structures. At my programming thesis I made something similar to compiler, my teachers were surprised how do I make something that is complex and difficult, and my answer was, that I already knew the simple stuff, and just put it togheter... –  umlcat Jul 5 '11 at 21:20
Note.I know what are pointers,data structures and collections.I know the difference between difference types.I know a lot,but there is only a small amount of things i can do.I suppose it takes time and experience. –  Aleksandar Jul 7 '11 at 13:15
@Aleksandar: chat.stackexchange.com/rooms/749/softw-dev-tutoring –  umlcat Jul 7 '11 at 15:45
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.