(You can find the full list here)
Gather near, grasshopper, and let me tell you of the venerable ancients of programming. These sages of the code pass their wisdom on to the young, instructing them in the ways of pointers, and objects, and closures. There is much experience to be found here, in their minds. You have only to listen.
Venerable Ancients are the experts of the programming world – the ones who have been doing it longer than some of their peers have been alive. They can tell you stories of the old days. Before the dark times. Before Microsoft.
er, where was I? Ah yes. Venerable Ancients. There are two kinds of Venerable Ancients. Those who have changed with the times, and those who havent. If you are so fortunate as to work with a Venerable Ancient who is still an avid learner, who can compare and contrast Ruby with Smalltalk, C with C#, Python with Lisp, then you ought to spend as much spare time as you can working with that person. Experience is good, but experience and adaptation? Priceless.
If, on the other hand, you work with a Venerable Ancient who seems set in their ways, who is excruciatingly well informed about one language, or one particular hardware platform, or one set of compiler tricks, then your road is more difficult. These people are often smart, and knowledgeable, but they don’t like all this newfangled stuff that keeps you away from the machine. Pointers and Drivers and hand-crafted assembler – that was real programming. These kids todays? They’re playing with toys.
Good Things
- Adaptive Ancients are usually incredibly good at solving problems elegantly and simply. Mainly because they’ve solved it 1500 times before
- Adaptive Ancients do not fall for hype, but do listen
- Both kinds of Ancients can tell you stories of the old days that will make your toes curl
- “Set in their ways” Ancients can spot and fix problems within their area of expertise faster than anyone else, usually much, much faster
Bad Things
- Adaptive Ancients rarely put up with bullshit, because they don’t have to, which makes them likely to leave all but the most developer-friendly environments.
- “Set in their ways” Ancients rarely accept change – they don’t like learning new things. (Otherwise, they wouldn’t be called “Set in their ways”
How to identify them
“Set in their ways” Ancients say things like:
- “The architecture of the PDP-10 was just art”
- “Garbage collection is for people who don’t know what they’re doing”
- “I like vi. vi works for me. I’m not going to use your stupid IDE”
- “I’m too old for this shit.”
- “I just want to see the contents of the registers. Why is that so hard?”
Adaptive Ancients say things like:
- “Ah, they borrowed that concept from Smalltalk”
- “Emacs was good, but this IDE is really powerful, once you get used to it.”
- “Wow. That’s neat.”
Update – I’ve seen enough comments on the subject that I will point out add that everyone who isn’t old enough to be a Venerable Ancient is obviously a Venerable Ancient in training.
Another adaptive ancient feature: they cross-ferilize ideas. They’re the sort of people who’ll port Parsec to C++ template metaprogramming.
Comment by Julian Morrison — November 1, 2006 @ 12:13 am
> “I like vi. vi works for me. I’m not going to use your stupid IDEâ€
That’s my attitude and I’m post-Microsoft and only 27, so I hardly qualify as a ven/ancient.
Comment by cratuki — November 1, 2006 @ 12:29 am
I have yet to meet an IDE that even comes close to vim/emacs in usability. The major problem is that they’re not programmable to the same extent, so you’re limited to what the IDE designers thought you might want to do.
I’ve tried a bunch of different IDEs. I’ve really wanted to like some of them, too. I always end up going back to a real editor.
Comment by jerith — November 1, 2006 @ 1:50 pm
[...] Venerable Ancients [...]
Pingback by Indefinite Articles » The Fourteen Types of Programmers — November 1, 2006 @ 4:12 pm
I used to work with a load of ex ICL mainframe guys, of both camps of venerable ancient. Some being of retirement age having started there from school. Made metings interesting and arguments hard to win, fun though.
Comment by simon — November 1, 2006 @ 6:27 pm
[...] Application/Web Development .NET Rocks! #200 – The 200th Episode Quiz Show! Get DataTable as HTML String (C#) Get DataSet as HTML String (C#) Dynamic Drive CSS Layouts The Fourteen Types of Programmers – Type 5: Venerable Ancients Now Available – Microsoft Visual Studio 2005 IDE Enhancements Have you noticed this function in C# 2.0 Reading/Writing Data from a Text File: VFP and DotNet E-Books links What’s a SQL Injection Bug? [...]
Pingback by Web Links 11.02.2006 « Rhonda Tipton’s WebLog — November 2, 2006 @ 12:21 pm
Strange that Cobol was not mentioned. I spent half an hour among Ancient (I wouldn’t say Venerable) Cobol programmers, it was scared.
Why half an hour ? because I’ve quit. The place was terrible.
Comment by Pupeno — November 3, 2006 @ 10:43 pm
Listen,
We coded in assembler before you birth…
When you come to us saying XYZ is so cool and will change the world, understand that we have been hearing this for the past 30+ years.
Approach us as guardians of knowledge to reap the benefits of our company.
Comment by David Ginger — November 26, 2007 @ 6:07 pm
I’d hardly say I’m a venerable ancient, considering that I’m 20, work in web dev, and am far more interested in Python, Ruby, Scala and Haskell than C, C++, Java, or Smalltalk. Nonetheless, I use an editor (Komodo) with vi-bindings if in X, and vim if not. There are things that the fancy-pancy new IDEs do well, but they don’t generally give the raw power you get from vim or Emacs, and that’s much more useful than a small learning curve.
Comment by Xiong Chiamiov — September 16, 2009 @ 9:01 pm