In response to Foomer
Foomer wrote:
Shlaklava wrote:
I think I am on the border betwix newbie and intermediate in general programming (the parts that do not rely on a specific language or is used in most languages).

I think most newbie programmers just don't want to admit that they're newbie programmers. :)

I just said that I wasn't an intermediate programmer. On the Topic Creator's list, I do 4-5 of those on any projects though they never see the light because of lack of interest and life in general.
In response to Shlaklava
my programming level is ThuperThayan34.
In response to Shlaklava
Shlaklava wrote:
Mecha Destroyer JD wrote:
Lummox JR wrote:
Mecha Destroyer JD wrote:
Well if you're intermediate, I must be a complete newbie..0_0

Bingo.

If I'm a complete newbie, what does that make rippers? XD

Insolent boobs.

Bawling, blasphemous, incharitable dogs!
-- William Shakespeare
In response to digitalmouse
lol ur week
In response to Cavern
Yeah I haxx0red my own version of ThuperThayanTheta and made my "pl" 1.#INF, so :P
In response to Foomer
Foomer wrote:
Yeah I haxx0red my own version of ThuperThayanTheta and made my "pl" 1.#INF, so :P

I'll make you have a "pl" of 0x01004B
In response to Danial.Beta
Aw darn it.
I think Lummox's evaluation on that, while acceptable, is a little strict. Not every programmer is balanced like that, and while some, what I consider, intermediate programmers may be very good in some aspects, they may have very hard times in others, such as robust-ness.

These programmers make their code in such a way that it could blast out runtimes because of inflexible or safe code, yet they make the code so that that kind of situation doesn't happen. However, it's a bad practice if you're working in a group or plan on updating the game.

But, for the most part, I agree. I believe I fall at about "newbie" on his scale.


># Programs robustly.
All the time, I never abuse usr the colon operator or goto, I use bitflags and datums where appropriate.


What about making flexible, reusable, and safe code? (Such as avoiding runtimes by checking type or for null arguments, etc...)

># Almost always chooses good design methods.
I try to, I consult others when I think mine is flawed or there may be better ones, like with loading a .dmp file at runtime.

# Can optimize code (at least somewhat).
I use bitflags and datums alot. I try not to make too many variables, I take advantage of the short circuit properties of || and && in if() statements.


These two requirements kind of go hand-in-hand. Optimizing code means choosing good and efficient design methods, and onces you have a good overall design of your project, it's very easy to then optimize code for it.

># Uses all available reference materials as needed.
I've mesmerized every proc in the DM reference and know it like the back of my hand. I also consult the forum and google when I am stumped.


How does hypnotizing procedures work?
# Programs robustly.

All the time, I never abuse usr the colon operator or goto, I use bitflags and datums where appropriate.

Nearly all of the time. I occasionally do something wrong or do something excess.

# Almost always chooses good design methods.

I try to, I consult others when I think mine is flawed or there may be better ones, like with loading a .dmp file at runtime.

I do as much as I can to find an efficient method in doing something, unless I have a good method already.

# Can optimize code (at least somewhat).

I use bitflags and datums alot. I try not to make too many variables, I take advantage of the short circuit properties of || and && in if() statements.

I am obsessed with this. I try to optimize everything in any language I use.

An example I found as I was going through old source:

(4*n)+(9*n) = 2 Multiplication and 1 Addition

Optimized:

n*(4+9) = 1 Multiplication and 1 Addition

That could matter in other languages though not as much in BYOND.

# Knows many pitfalls and workarounds for them.

I'm not sure about this one, can you please explain better.

I try to work around limitations of myself and the language. For example, the mob limit is pretty small once you get a large game. I changed some objects to turf and helped myself.

In other languages, such as C++, I am not good at using OpenGL directly, so I got Ogre instead. Or when I am making a webpage and cannot do something because IE does not work with CSS, I add some JavaScript to pull the same effect in IE.

# Uses all available reference materials as needed.

I've mesmerized every proc in the DM reference and know it like the back of my hand. I also consult the forum and google when I am stumped.

I don't know about memorizing, but using references and guides is good and I do that a lot when I don't know a certain aspect of a language.

# Can develop new algorithms based on old ones or the underlying theory. (E.g., an advanced programmer could figure out from scratch how to do 47-state autojoining turfs, though it might take them a while.)

That I am not at that level yet, it is very hard for me to do autojoining with BYOND's directional system.

Dunno about this.


So I guess I am as I said, a border between newbie and intermediate*; just a little more newbie. You could actually break it down farther than three levels also.


X=Me

|------|------|-X---------|----------|------|----|
| Noob |Newbie|Experienced|Proficient|Expert|Guru|


Noob:
Just starting, might ask quite a few stupid questions.

Newbie:
Has probably gotten smarter and devised a small amount of projects which build upon his skills. Is able to search for answears and/or devise his own solutions.

Experienced:
Know a lot about the language, along with a large amount of skills in programming in it. May not know everything and still asks questions every once in a while about the language. Starts to answer questions.

Proficient:
More skills and more complex programs. Nuff said.

Expert:
Is really good...really good. Probably has made a large project and some smaller ones. Can do complex things without help. Helps others a lot.

Guru:
Use your imagination.

Chinese dude says: "Teaching is learning twice"

<small>
*Don't say "Oh he is just giving himself too much credit"; I have been doing this for quite a while.
</small>
In response to Shlaklava
Shlaklava wrote:
I am obsessed with this. I try to optimize everything in any language I use.

An example I found as I was going through old source:

(4*n)+(9*n) = 2 Multiplication and 1 Addition

Optimized:

n*(4+9) = 1 Multiplication and 1 Addition

And did you know 4 + 9 = 13?
In response to Abhishake
Abhishake wrote:
And did you know 4 + 9 = 13?

I was showing how many different actions you do, not the actual answer.

But that does remind me of this one time I was teaching my cousin math; he is not good at it...

Me: 3x4=12
Him: Ok
Me: 6x2=12
Him: What! You just said that 3x4=12! Make up your mind!
In response to Shlaklava
Shlaklava wrote:
Abhishake wrote:
And did you know 4 + 9 = 13?

I was showing how many different actions you do, not the actual answer.

From what I made of it, you took an example from one of your projects. I was just helping you to fuel that optimisation craze =P.
In response to Abhishake
Abhishake wrote:
Shlaklava wrote:
Abhishake wrote:
And did you know 4 + 9 = 13?

I was showing how many different actions you do, not the actual answer.

From what I made of it, you took an example from one of your projects. I was just helping you to fuel that optimisation craze =P.

Oh...I thought it was sarcasm. I see what you mean now.
Do skilled programmers comment their code? If thats so, I'm the as noobish as it gets!
In response to ShadowUser
Most seasoned programmers do, but commenting code doesn't affect your rating as a programmer. I hardly ever comment my code, but I've been needing to do so with this scripting language. Nested if statements and loops are killing me.
In response to CaptFalcon33035
CaptFalcon33035 wrote:
commenting code doesn't affect your rating as a programmer.

Um, yeah, it does. A lot.
In response to Foomer
Foomer wrote:
CaptFalcon33035 wrote:
commenting code doesn't affect your rating as a programmer.

Um, yeah, it does. A lot.

Great...
In response to Foomer
Foomer wrote:
CaptFalcon33035 wrote:
commenting code doesn't affect your rating as a programmer.

Um, yeah, it does. A lot.

There was once two programmers of great skill. Both needed a job position. One commented with gusto, the other more skilled. The former got hired. Why? The second was more skilled but the employer did not understand his ways and no other programmer could without help from him.

I have to work on commenting code. Last I checked I had 250+ lines of code and 20% being comments.
In response to Shlaklava
What if your working by yourself? BYOND is easy to use, so, unless your doing something really complex, I'd think that in most cases that comments wouldn't be necessary. A programming language like Java or C++ is another story...
In response to ShadowUser
ShadowUser wrote:
What if your working by yourself? BYOND is easy to use, so, unless your doing something really complex, I'd think that in most cases that comments would be necessary. A programming language like Java or C++ is another story...

It won't matter. If you do something that you think "I can't forget!" and a few months later (or a few days...who knows) you forget. Then you have to look at it and figure it out when you could be doing something better. And when people try to help it will be easier to help someone who comments.
Page: 1 2 3 4