Sign in to follow this  
Followers 0
rAm_y_

Are some people not cut out for programming?

35 posts in this topic

If you want to go into language parsers in a big way, the "dragon" book will be a great asset.

http://dragonbook.stanford.edu/lecture-notes.html

Also, perhaps you might want to have a look at a slightly simpler implementation of a C (not C++) parser.

http://code.google.com/p/picoc/source/browse/trunk/parse.c

More than likely not as robust but since you are probably a games developer and want to make games rather than language parsers, it might be a better starting reference.
2

Share this post


Link to post
Share on other sites

It's also a good idea to NOT compare the code you've worked on for a few days/weeks as your first attempt at a solution, with code worked on by dozens of experts for many man-years, not counting the hours they spend on similar problems, and writing scientific papers about it.

This. Seriously this.

 

You're comparing yourself, to one of the oldest and most prominent codebases in Unix world that compiles most of the software out there. Their parser must have been tweaked by hundreds of different coders.

 

Hell, if your code remotely resembled that, you'd probably be a friggin programmer genius.

2

Share this post


Link to post
Share on other sites

 

It's also a good idea to NOT compare the code you've worked on for a few days/weeks as your first attempt at a solution, with code worked on by dozens of experts for many man-years, not counting the hours they spend on similar problems, and writing scientific papers about it.

This. Seriously this.

 

You're comparing yourself, to one of the oldest and most prominent codebases in Unix world that compiles most of the software out there. Their parser must have been tweaked by hundreds of different coders.

 

Hell, if your code remotely resembled that, you'd probably be a friggin programmer genius.

 

 

Good point, I knew plenty of people were working on it and also as it's open source people can post in suggestions/fixes, so in that case it's got a head start, however, I do think you should be able to reproduce similar code of the top of your head. My code works, string manipulation is easy enough, as I said you could do it in java-script, however there was no overall architecture to my design, only to start with the pre-processor directives and work it out from there, start building more and more generic functions. It will be interesting to try and validate a class with multiple inheritance,  

 

I will soldier on.

Edited by rAm_y_
0

Share this post


Link to post
Share on other sites
It's all about motivation and persistence. Everything flows from that in my experience.

I'm always baffled by newcomers on here asking people to suggest a project. I've had a zillion things I wanted to do since they gave me a ZX Spectrum.

Clear, focused goals are good, but so is dreaming big as long as you can cope with the let downs of reality.
2

Share this post


Link to post
Share on other sites

Yes... some people are just not cut out for doing certain things.

 

Whether you are or not is another question that only prolonged interaction with you would really be able to determine.

 

If you understand the basics of what you are doing and can do it decently then more than likely you just need practice, but if you don't understand it no matter how much you try or you understand it but after a long time can't get it right, it's more than likely you're not cut out for it...at least at the moment.

 

On top of the above there is also some things out there that you may "know" but until something happens it just won't sink in to the understanding level. And then when something like that, which is usually transformative on more than one area, happens, you might suddenly become cut out for it with some things. This is the case with programming as it is a logic thing, which a lot of people don't get for a long time, and then suddenly get it which causes them to be able to then understand programming better.

1

Share this post


Link to post
Share on other sites


I would say that its true that there are people who just aren't cut out for programming -- just in the same way there are people who aren't cut out to be astronauts, firefighters, theoretical physicists, or professional wrestlers.

From my experience, the only ones not 'cut out for it' are the ones that don't care to begin with.


I know we live in a world where most of us grew up hearing that you could be anything you set your mind to, but its honestly not true.

Yes and no. You can be anything you put your mind to, but you also have to put in the effort to achieve it. To be a wrestler you have to find out where you have to go in order to get the training, then you have to eat right, lift weights, etc. To achieve anything you have to put for the effort to find out what is needed and do it. So in that respect you are right that it isn't true, but if you are willing to put your mind to it, make the effort required to find out what is needed, and the dedication and drive to do what is required.


On the other hand, some people really are not cut out for programming. Take my wife, for instance. Just could not grasp the concept of iteration or aggregate data stores (loops and arrays). Has never needed that knowledge since she tried taking a course in it. Can not program the VCR (kids, that's a kind of linear MP4 player your granparents used for timeshifted entertainment). She's happy.

Again, that doesn't mean she isn't cut out for it. You left out whether she got stuck and just gave up or if she got online and started googling and searching to understand loops and arrays. She may have also been doing it just to see what you liked about it and when it wasn't something that caught her interest she gave up before she ever got to loops and arrays. Programming is like Spanish, the more you use it the more you understand it and since she got stuck and then never used it after that course, I can understand why she never understood it.

 

 As for programming a VCR, that really doesn't prove anything to your point either. For example, my father-in-law knows how to set the DirectTV to record his shows, but doesn't care to do it so I get drafted to do it. 

 

The examples everyone gave doesn't come across as not being cut out to do it. You have to put everything into what you want in order to achieve it. I wanted to be a wrestler, but didn't want to do all the steps required to become one. I learned BASIC in 7th grade and was hooked. I wanted to be a programmer and was told repeatedly I wasn't cut out for it, but I put everything I had into it and programmed every night for 3 to 4 hours and here I am still programming, helping others, and making games for my son. I may not be the greatest programmer or be famous, but my goal was to simply be a game programmer which I achieved because I put my mind to it, was dedicated to learning it, and had the drive to do it even when I was told I'd fail and wasn't cut out for it.

1

Share this post


Link to post
Share on other sites

 



I know we live in a world where most of us grew up hearing that you could be anything you set your mind to, but its honestly not true.

Yes and no. You can be anything you put your mind to, but you also have to put in the effort to achieve it. To be a wrestler you have to find out where you have to go in order to get the training, then you have to eat right, lift weights, etc. To achieve anything you have to put for the effort to find out what is needed and do it. So in that respect you are right that it isn't true, but if you are willing to put your mind to it, make the effort required to find out what is needed, and the dedication and drive to do what is required.

 

Sorry to burst your bubble, but that is simply not true. Those who believe that can be said to clearly not have a good understanding of how evolution or biology works. Regardless of how much one works at trying to be some things they simply cannot be that thing in some cases. And in some cases, it is so not possible, that training, no matter how much or how good the training is, they will not be able to do certain things.

 

There are areas where this is more true than others, but I would say, in the realm of programming which is largely logic based and language based this is probably an area that some people will just never get, because we know that if you don't start getting taught a second language before a certain age those brain cells die off, and likewise, logic is really hard for a lot of people. Most people have some instinctual level logic, but most have problems with a lot of the basic of it. Not to mention grammar and writing, themselves, are pretty problematic for a good amount of people.

 

So, with programming you have several skills that quite a number of people don't have, and then medium sized number will have a hard time struggling to attain them at low levels... So I would say that for programming it is especially true that it is the case that there are people who are just not cut out for it.

 

That's ignoring the mental fatigue aspects of it too where you can be incredibly good at it in general, but something about it mentally fatigues you... for example in animation you might be able to produce frames of animation at high quality, faster than average, but if your mind just isn't good at doing roughly the same thing over and over day after day after day you are just as equally not cut out for it as if you didn't have the requisite skills to do it in the first place.

1

Share this post


Link to post
Share on other sites

So I decided to write a c++ parser


Well, there's the reason. That's an EXTREMELY complex undertaking. Not a very good benchmark to judge whether someone's cut out for programming in general.
1

Share this post


Link to post
Share on other sites


Sorry to burst your bubble, but that is simply not true.

You didn't burst anything. It's my opinion and I stand by what I said no matter what evolution and biology says otherwise.

1

Share this post


Link to post
Share on other sites

Websites like codeacadamy and the recent week of code tell everybody that anybody can code.  Also since the whole app ecosystem and social got big I know plenty of non-techies who have learnt enough to put out an app / game and make money.

 

However when I went to university there were people on my course who were very technical some of them already had mathematics or physics degrees and they just couldn't get there head around even the simplest of constructs such as a switch statement or an Array and as soon as pointers got introduced they gave up.

1

Share this post


Link to post
Share on other sites

Well I guess some people are not cut out for it, but what you describe is not something that should worry you.

Do you have a basic understanding of what data structures are important for ... and how algorithms can be efficient or inefficient etc?

You have

 

decided to write a c++ parser

so I would not worry about being one of those people.

 

Most people who are not cut out for it fail a lot earlier and do not have the resilience to dive that deep into programming.

Find the right approach and you can and will improve in many areas. You will laugh when you see the code you wrote one year ago.

 

I guess reading about skill acquisition might be something for you (I like the book "The First 20 Hours"). I know I am no good at learning & improving on my own.

I need either guidance or invest a lot of time in thinking about how to improve consciously. I need input from many directions in order to avoid stagnation.

 

Avoid specializing too much and obsessing over something that does not deserve much attention.

 

Also: consider reading or rereading "The Seven Habits Of Highly Effective People". It might change how you feel about interdependence and make huge projects seem more manageable in one lifetime :-)

1

Share this post


Link to post
Share on other sites

I double what both, Bregma and Dare Developer, said.

 

People usually develop interest on what they are actually cut out for. Game Development is a complex case since lots of people develop an interest based on liking to play games, not natural interest in the development process. But still, the simple fact that you decided, by yourself, to write a C++ parser, shows that you are probably going to be there someday.

 

And, repeating what Tom Sloper posted, Practice and Hard Work; I mean real practice, not read some books practice.

Edited by dejaime
2

Share this post


Link to post
Share on other sites

Okay, I take it back. Some people definitely are not cut out to be programmers and if they are in my family they should be heavily supervised when they are programming. Monday I gave my cousin one of my editions of C++ Primer. Just received an email asking me to help him fix his code and had a heart attack upon opening the source code. I was greeted with this at the top of the main function.

int statSize = 1024, *psSize = &statSize, **ppSize = &psSize;
int ***pppSize = &ppSize, ****ppppSz = &pppSize, *****pppppSz = &ppppSz;

Is it possible to give the compiler and computer a pointer overload? 

 

After seeing that, I have to agree with what the others are saying. Practice and hard work, but try not to over complicate things even if you are just testing things out.

0

Share this post


Link to post
Share on other sites

Okay, I take it back. Some people definitely are not cut out to be programmers and if they are in my family they should be heavily supervised when they are programming. Monday I gave my cousin one of my editions of C++ Primer. Just received an email asking me to help him fix his code and had a heart attack upon opening the source code. I was greeted with this at the top of the main function.

int statSize = 1024, *psSize = &statSize, **ppSize = &psSize;
int ***pppSize = &ppSize, ****ppppSz = &pppSize, *****pppppSz = &ppppSz;

Is it possible to give the compiler and computer a pointer overload? 

 

After seeing that, I have to agree with what the others are saying. Practice and hard work, but try not to over complicate things even if you are just testing things out.

Wait what... Wait... What... What did he ... like... you know... try to do?

Edited by diventurer
0

Share this post


Link to post
Share on other sites

Okay, I take it back. Some people definitely are not cut out to be programmers and if they are in my family they should be heavily supervised when they are programming. Monday I gave my cousin one of my editions of C++ Primer. Just received an email asking me to help him fix his code and had a heart attack upon opening the source code. I was greeted with this at the top of the main function.

int statSize = 1024, *psSize = &statSize, **ppSize = &psSize;
int ***pppSize = &ppSize, ****ppppSz = &pppSize, *****pppppSz = &ppppSz;

Is it possible to give the compiler and computer a pointer overload? 

 

After seeing that, I have to agree with what the others are saying. Practice and hard work, but try not to over complicate things even if you are just testing things out.

 

cheech-wtf-gif1.gif

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0