tags:

views:

379

answers:

6

I see people in this forums with a lot of points, so I assume they know about a lot of different programming stuff.

When I was young I knew about basic (commodore) and the turbo pascal (pc). Then in college I learnt about C, memory management, x86 set, loop invariants, graphs, db query optimization, oop, functional, lambda calculus, prolog, concurrency, polymorphism, newton method, simplex, backtracking, dynamic programming, heuristics, np completeness, LR, LALR, neural networks, static & dynamic typing, turing, godel, and more in between.

Then in industry I started with Java several years ago and learnt about it, and its variety of frameworks, and also design patterns, architecture patterns, web development, server development, mobile development, tdd, bdd, uml, use cases, bug trackers, process management, people management if you are a tech lead, profiling, security concerns, etc. I started to forget what I learnt in college...

And then there is the stuff I don't know yet, like python, .net, perl, JVM stuff like groovy or scala.. Of course Google is a must for rapid documentation access to know if a problem has been solved already and how, and to keep informed about new stuff by blogs and places like this one.

It's just too much or I just have a bad memory.. how do you guys manage it?

+3  A: 

Spend some time on SO. You will be amazed what you learn and how much you already know!

Byron Whitlock
And even more, how much you don't know!
James Kolpack
+1  A: 

Look up Malcolm Gladwell's discussion of the 10,000 hour rules, in Outliers.

Or as Yogi Berra said, "You can observe a lot just by watching."

Robert Rossney
+6  A: 

Points on this site, just like other competing sites, are more based on time spent answering questions than knowledge. Obviously the really good guys here are going to gather rank / points faster, but I do know a lot of points / reputation is gathered by volume rather than quality.

The one thing I do like SO over EE is people lose reputation for bad answers here. That is what keeps SO cleaner, IMO.

The rest just comes down to "do you do this for the love or for a job?"

If its just a job, its unlikely you'll ever match folks who love it.

mrjoltcola
+2  A: 

Who is supposed to know everything, besides Jon Skeet of course? I know some of what I know because I read something somewhere or had an experience that taught me something and so I share that information.

Don't forget that those of use with high reputations probably also have tons of answers. Just to give an example, look at this question.

JB King
+3  A: 

Many of the people on SO have practical applied experience. The only stuff I retain is the stuff I apply. I imagine, it's a bit of "use it or lose it" going on. The people on this site aren't your typical software engineers.

Pestilence
+2  A: 

This is a good blog post on the subject:

No One Knows What the F*** They’re Doing (or “The 3 Types of Knowledge”)

The tl;dr version is:

Realizing what you do not know makes you better than someone who believes they know everything.

Kevin Panko