Page 1 of 2
How well do you program?
Posted: Thu Jan 17, 2008 8:26 pm
by crazygray1
Just wondering, how good does every one consider themselves to be of a programmer?
Posted: Thu Jan 17, 2008 8:38 pm
by mathematician
Modesty prevents me.
Posted: Fri Jan 18, 2008 12:21 am
by Solar
Tricky question. How to do yourself justice without being immodest? Whom do you consider a "10" on your scale, and how brain-dead do you have to be to rate "1"? Believe me, I have encountered both off-scale-high demigods and off-scale-low wannabes in the trade. Do you only value raw coding skill, or do you factor "soft skills", documentation etc. into it, too?
I will quote from my last job interview. (You know, one of those situations where false modesty can cost you the job opportunity.)
Interviewer: "Do you consider yourself to be a good C++ programmer?"
Me: "Yes."
{Couple of seconds of uncomfortable, eye-locked silence, with the interviewer obviously waiting for some "modesty" qualifier}
Interviewer: "Well, that is a statement."
He ran me through a timed, 50-question multiple-choice C/C++ test afterwards, claiming he "usually [doesn't] do this in the first interview, but since you claimed earlier that you are good at this...".
I got the job.
Posted: Fri Jan 18, 2008 12:51 am
by Colonel Kernel
There are several things I consider when judging my own coding ability:
- How long it takes me to implement a given component from specification to all tests passing.
- How much copy-paste code is there in the end result? (Hint: If the answer is anything other than "none", the code isn't finished yet. Furthermore, the code was written by monkeys.)
- How many bugs are found in test, and later in maintenance.
- (For bonus points) How many compile errors there are. I tend to write everything before compiling even once. On rare occasions when it compiles with no errors on the first try, I stare in disbelief for a few seconds.
In my experience doing well on #2, 3, and 4 has a negative impact on #1. Sadly, even though it is still more cost-effective to do it right the first time, higher-ups often don't see it that way.
But Solar pointed out the most important thing -- there is a lot more to being a good developer than just coding skill. For example, debugging skill -- how long does it take you to diagnose a problem? How many of your hypotheses are disproved along the way? Design skill -- do your designs make the right trade-off between cost and functionality and performance? Are they understandable to other people? Etc.
Posted: Fri Jan 18, 2008 4:57 am
by Combuster
I would probably say as much as "I wrote a 3D platformer, a raytracer, and built a website for helping people train basic maths, so I guess I'm decent at it"
Posted: Fri Jan 18, 2008 5:03 am
by AJ
I really don't know, because my code has never really been judged. I am entirely self taught and this means that there are programming methodologies I am not aware of and I only know what I have needed to know, and what I am specifically interested in.
All I can say is that my programs do what I want them to do (from C#.net to ASM) and I try to do things in an optimal way if possible.
Cheers,
Adam
Posted: Fri Jan 18, 2008 6:16 am
by JamesM
While maintaining a modicum of modesty, I feel that I write easy to read, documented, maintainable code. I have recently learned the many advantages of unit and exhaustive testing, and proper design (one has to bear in mind that this is my first programming job, and as such I learned the things that you don't get taught at university).
I also feel that I am good at debugging (generally), and can understand / fix compile errors in seconds. I think, and hope that I am good at getting my point across in a non aggressive way, and also that I have decent leadership skills when required (I am a kayaking instructor, so I hope so!)
Use the above to make your own decision on my proficiency, given the weights you personally attach to each trait.
I think i am alright ...
Posted: Fri Jan 18, 2008 11:20 am
by DeletedAccount
I think i am alrigtht .. I have won prizes in many coding contests including first prize in an 8085 asm programming contest .. I am a finalist of WIPRO's code zap Guru contest ... [National Level Coding coding contest] ... I was one of the youngest contesters ... Only some 20 - 30 people are chosen from a province ... But i have no experience with huge sized projects ... with teams of programmers working for a project [Defenitely i will have it sooner or later
... ] .... I think i am a decent programmer .... I do not have a job yet ... But a big company gave me one .... I wont tell you which .... (Personal Secret
) ... The questions they asked were more or less based on concepts than purely technical ... Initially there was a objective - C/C++ + DBMS + Aptitude knockout round ...
Posted: Fri Jan 18, 2008 12:38 pm
by Zekrazey1
Posted: Fri Jan 18, 2008 2:54 pm
by Alboin
I'm pretty much in the same kayak as AJ.
Posted: Fri Jan 18, 2008 6:56 pm
by piranha
Well, I can program basic and C.
I can't really deal with ASM, and most of the time I program, I should be doing homework.
So, I don't know, my code is angrily written, so not organized.
-JL
Posted: Fri Jan 18, 2008 10:23 pm
by Telgin
AJ wrote:I really don't know, because my code has never really been judged. I am entirely self taught and this means that there are programming methodologies I am not aware of and I only know what I have needed to know, and what I am specifically interested in.
All I can say is that my programs do what I want them to do (from C#.net to ASM) and I try to do things in an optimal way if possible.
Cheers,
Adam
Sums it up for me too, I guess.
I'd say that I'm at least a competent programmer. I think I understand "programming" as a concept fairly thoroughly (as in, once you know how to program well in one language, it's not a big deal to pick up another one).
I've been doing C++ for a relatively long time now. In other words, over a quarter of my life (I'm only 20). Of course, I'm no guru, and there's plenty of people out there that have been programming in C/C++ since the language's founding.
I know I'm not an expert. There are still plenty of situations where I have to stop and think about what I'm supposed to be doing before I can write it out. The latest thing for instance was bitwise operations in C/C++. Other things I have little experience in include stuff like practical use of complex data structures, templates, multiple inheritance, and the use of things like the Win32 API, and so on.
But, I know I'm not a complete noob. I can usually immediately realize what to do when I need to in a C++ program. I like pointers, and I have used things like data structures in real, practical ways from time to time. I can't remember the last time I couldn't get a hobby program to work.
Likewise, I've seen plenty of 1 out of 10 quality coders before. I had to work in a group for a final coding project in my last programming class, and the results were a little scary. I wouldn't rate my group mates at 1/10, but probably around 3/10. They knew C++ syntax okay, but they didn't seem to know how to use the language, or really even how to program effectively. Way too much time debugging simple things that could have been solved in ten minutes with the proper use of a debugger, no idea how to organize the program (i.e. three or twenty classes?).
The fact that I ended up writing almost the entire thing myself (a client-server model game) reaffirmed to me that I'm not really that bad of a programmer.
Posted: Fri Jan 18, 2008 11:19 pm
by earlz
I have been programming(in some language) for about 5 years(and I'm currently only 16) and I think only now am I capable of *finishing* projects...
I think I program pretty well, I usually can make simple things compile once and it work first time, and I am fairly fast at learning new stuff... for isntance, I taught myself (by trial-and-error, no manual or anything) to program TI-BASIC...which I am still amazed that I have learned...
But I have coded about 5000+ lines on my x86 emulation project(single handed) and it works quite fast, and is in C++, so I think I'm at least an OK programmer, if not a good one...
Posted: Sat Jan 19, 2008 2:23 am
by thegreatseph
I think I am probably much like many hobby programmers in that while my command of my language (Pascal) is great, my ability to actually finish things is not.
I have written many complete things, however many of my larger projects have simply not been finished, For example I have been working on a compiler for about 6 years, I have rewrote the language at least 10 times and rewrote the compiler probably 30 times. I get the feeling it will never be finished.
Posted: Sat Jan 19, 2008 8:45 am
by Zacariaz
in terms of skills/talent/whatever you wanna call it, i would rate my self fairly high on the scale, as for knowledge and dedication i am, unfortunantly pretty low on the scale, which is atually worse than if it were the other way around i think.