I have be developing in c# for the last about the last 8 years.
I feel that i am quite experienced and knowledgeable in the whole .net platform.

I have got to the point where i want to start learning objective-c. I have been watching dev videos, reading books and researching online. So far i am getting a good idea of the development principals.


I have not written 1 line of code. For some silly reason i have some type of mental block about writing code. I keep thinking: But what if i am not as good as when i do c# coding.
This leaves me in a endless spiral where i cannot code.

If you have been in this kind of situation what was the best way to get out of it.

  • 1
    The only thing I can tell you is... Just Do It... Write something very small, deploy to your iphone or whatever, then you should be on your way... It's the only way I have ever gotten out of writers block. – Max Jul 4 '11 at 19:12
  • You should not learn other language because it will possibly spoil your perfect C# record as GOOD programmer. – Predator Jul 4 '11 at 19:39
  • Another way to look at it would be .. what if I'm better at it than C# ? No easy way to answer it apart from just giving it a good try. You don't stand to lose in any case. – Gishu Jul 5 '11 at 8:22
  • @Neale - Seriously, just start coding, the fact that you can waste time worrying about how good or not you'll be is just counter productive, you know this. - Let's say you can drive a car and you decide you want to pilot a boat too, are you going to let yourself be deterred simply because you'll be utilizing similar but not identical skills? - Get to it! – ocodo Jul 5 '11 at 8:28

Yes, I have definitely encountered this sort of an irrational fear of trying something new :)

The only thing that has ever worked to help me overcome it is to work on a few confidence building projects before attempting anything serious.

My "new" projects are small, easily understandable and if possible, fun. I try very hard not to learn new concepts while gaining familiarity ... keep it as easy to succeed as possible.

Hope it helps.


The best way to get past this point is to sit down, launch your editor or set up your IDE of choice, copy-paste the code for objective C hello world, and launch. There's a reason why this seemingly inane action is so darned popular amongst programming language reference materials. The psychological boost of such a simple action is understated.

Here you are:

#import <stdio.h>
int main( int argc, const char *argv[] )
    printf( "hello world\n" );
    return 0;

You have to realize you won't be as god at Objective-C - at least not at first. That's what learning a new language is all about. You start with a simple "Hello World" program in Objective-C. Should be easy for an 8-year experienced coder, right? Then something a little harder, maybe something that takes two numbers, adds them, and prints the results. Should be easy too, right? Then build up from there. Find some simple tutorials, with compilable code would be even better. There will be bumps along this road and you will get past them.


Accept the fact that you'll make mistakes. We all do, and it's the best way to learn. You weren't perfect in C# on day 1, were you? Now go and code! :)


It is only natural that you will not be as good as writing C#. You are going to fail once or twice (and a lot more) and it is OK. I am guessing you have the mental block because you are not used to playing with new technologies as much. Well stop worrying, dive in and just enjoy the ride!


But what if i am not as good as when i do c# coding.

You won't be, but why is that such a horrible thing? You could try to root cause analyze why you have this fear, when was it first seen, what metaphors could one use to describe it using various periods of literature, theater, movies, music or television, or you could just start trying stuff and see what happens.

We weren't born how to know to do everything. We developed those skills, so go get developing!


I think this is for many, if not all, the same. I learned Java at the University, then I must jump into C# for my job without any time to learn it quitely, but now I am quite confortable with it.

2 months ago I started learning programming with Android, even if I am goign slow due to work and girlfriend duties, but the "baby" is growing, so do not feel scared about the new language you want to learn, if you really want to learn it.

About 1 year ago I started to program with Adobe Flex and I started to make some simple application integrated with ASP.NET, but then I left over it and I did not go further. Therefore just never give up if you are really intentioned in learning something new, cause you will do it!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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