|
Tom Archer is an author, Visual C++/C# consultant and was the site administrator
for CodeGuru for 18 months. Tom worked with Zafir Anjum and I for many months
before the sale of CodeGuru to EarthWeb, so has been in the unique position to
witness CodeGuru evolve from a volunteer run community site to EarthWeb's flagship C++
site, and then be passed down to Internet.com along with many other of EarthWeb's former
sites.
Tom has worked with companies such as IBM, AT&T,
Equifax and Peachtree Software and lists one of his proudest accomplishments as being the
lead programmer on two award winning applications (at IBM and Peachtree). He has lived all
over the world, and is currently based in Atlanta, Georgia.
Tom has recently left CodeGuru to pursue his writing, training and consulting interests,
so I figured it was a great time to have a chat with him about the past, present and future.
If you ever wonder just how geeky a couple of web admins can get, this entire interview was
conducted using XML over email. Each iteration of the interview saw us try and out-do the other
in terms of XML style and presentation and it was only when I found myself spending an hour debugging
an XSL/T page did I come to realise that once a geek, always a geek.
CodeGuru has been through some amazing changes since we first worked on it
all those years ago. Can you describe how the various changes affected the
overall atmosphere and goals for the site.
When Zafir first started CodeGuru, it was one of the first developer
sites on the Web. It's aim was clearly stated. It was a site run
by developers who freely donated their time in order to help other
developers. However, it didn't take long for corporations and
entrepreneurial types to figure out that with the traffic these sites
were getting, there was money to be made. Many of us incorrectly
thought that the influx of corporate money would lead to better
sites. Unfortunately, it didn't work out that way. Most corporations
that purchased the more popular sites came in with their bureaucracy and
attempted to run the sites as they did their previous interests.
Therefore, the focus changed from one of "let's create this really
cool code repository" to "how can we make more
money from this". It's a subtle distinction since you would think that one would
help the other. However, anyone that has any business experience knows that
once you go from a product (or service)-centric approach to one that is more
focused on advertisers and the bottom-line, it's the consumers that lose out
in the end.
Can you give some examples of where you saw this happening on CodeGuru?
I'll give just one or we could talk all day on this. Shortly after
EarthWeb purchased CodeGuru and many other sites, they decided to do a
massive redesign of all the sites so that they would integrate more
seamlessly. Certainly a decent idea. However, the problem was in the
day-to-day running of the sites. People (all non-programmers) who never
used any of the sites couldn't understand why people such as myself
didn't want to completely stop posting content and updating the site to
spend 3-6 months updating spreadsheets and Word documents and attending
meetings. They just didn't get the concept that if we stopped posting
content there wouldn't be any customers for this new redesigned site!
I can't tell you how many times I came close to being fired because I was
trying (as best I could) to keep the site fresh. That's why it irks
me when people say thinks like "Oh. CodeGuru is really stale". Hell, there
wouldn't have been *any* content without me fighting management and
posting it. This is what I mean when I say that most of these corporation put
their own bureaucracy and rules ahead of the actual product and customers. And
by the way, I'm not just picking on EarthWeb. My very favourite site used
to be Experts-Exchange - really cool knowledgebase-like site run by a family.
However, they finally sold a large part of the site to a big company that
now runs the site. Needless to say, the site is having the same problems
that CodeGuru ran into with regards to the hardware and software problems and
bad customer service.
Many people think that running a community site for developers is the best
job in the world. Is it?
Running a developer site certainly has its advantages such as working from
home and not being tied to "office hours". However, its definitely a labour of love.
In other words, those of us that run sites certainly don't do it because there's
any money in it. We do it because we enjoy helping others. Best job? No, not really.
Too much maintenance and not enough programming. I think the best gig is a
combination of writing books and consulting. That way, I'm still working my
own schedule, I continue to help others and yet I'm programming most of the time.
Even so, you started a new site as soon as you left CodeGuru.
Yeah, but TheCodeChannel.com doesn't belong to any corporation. It's certainly
not meant to be a competitor to any site. As I've said from the beginning, this is
going to be a site that is mainly a hobby of mine and a few friends. We're not
looking to become millionaires off it. It's basically returning to the roots
of CodeGuru where we are simply helping others through the site without the
need or desire for banners ads or corporate funding.
With hindsight, would you do it all again?
Absolutely. I've met many talented programmers and just really great people
running CodeGuru. I wouldn't change a thing if I could go back and do it all
over again.
Do you see the online developer community maturing as a whole with people
more willing to help each other, or do you feel in general that people on
the net are becoming more demanding?
While trying not to sound negative, I would definitely say it's
the latter. The simple fact is that a couple of years ago, we all
lived this Utopian-like existence where sites like CodeGuru were
created with the single goal of helping each other out. However,
at this point, people have seen how much a Zafir sold the site for
and that has lead to a very competitive (and sometimes very ugly)
environment. However, I'm not just talking about other Web sit owners.
While at CodeGuru, we had people volunteering to help all the time.
That never happens any more. Everyone wants to be paid. In addition,
many (not all) people have stopped being appreciative and have come to
expect perfection from Web sites and the people that run them. I guess
what I'm saying is that over the past couple of years, I've seen a
increase in the lack of appreciation to those that freely donate their
time to help others.
What do you see as the future of developer Web sites?
I think that the people that make use of sites need to be very careful. There is so much meanness
going around between the users of the various sites that many people who simply do this to help others are
being turned off and dumping their sites. That in combination with the free-fall in advertising revenue
is leading us directly down a path where free sites will one day be a thing of the past. Just look at
sites like DevX and ASPToday. They started out free and are now subscription-based. It's a simple formula.
Many individuals are tired of dealing with unappreciative people when they stay up to 3am every night just
to help others out. Therefore, we're getting to a point where only companies are running the sites with
a decent amount of content. If users are going to expect a professional site with tons of content and
other niceties (discussion board, chats, interviews, etc.), then these companies are going to have to hire
more and more people to run the sites. Therefore, with ad revenue down and costs up, the only way for
companies to make these sites profitable is to recoup that money is via subscriptions, products and services.
NET is front and centre at the moment, but how do you see .NET affecting the average developer, and will .NET cause developer sites to change the way they operate?
Honestly, I truly don't think that most developers know or care about .NET. Microsoft has changed directions so many times in the past few years that most developers are going to take a "wait and see" attitude. It's going to be Microsoft's responsibility to illustrate exactly why developers should care about .NET and I don't believe they've done a good job of doing that so far.
Are there any significant positives or negatives of .NET that stand out for you?
Having been involved in several large, distributed applications, the positives that I personally applaud are language interoperability, a single class library and easier versioning and deployment.
What about for C++ developers in particular?
As mentioned before, I think that many C++ developers are going to hold out until they see some tangible reasons for switching. Let's face it. How many people would even consider using C today instead of C++? However, I remember when C++ first came out and most people were like "So what? I can do the same thing with structs!" or "I have gotten this far without it. I don't need it." For some reason, there's always that initial rejection of anything new. However, .NET is simply too good not to catch on sooner or later.
What about you personally? How do you feel about .NET?
I'm infatuated with it and its promise for the future. As you know (probably better than me), you simply can't beat what they've done with ASP.NET. I absolutely love the CLR and the interfaces it provides. It's definitely going to be fun the next few years.
How do you feel about C#? It's stregnths? Its weaknesses?
According to Larry Tesler's law of Conservation of Complexity, you can not reduce the complexity of a given task beyond a certain point. Once you've reached that point, you can only shift the burden around. This rule holds especially true for programming languages. Programming languages are about as simple as they're going to
get and still be usable in terms of creating professional applications that meet
the needs of today's users.
However, what the designers of C# did was to move much of the complexity of writing code from the client (class consumers) to the server (classes). Examples of this are operator overloading, interfaces, delegates, indexers, properties and user-defined conversions. The common thread that ties all these features together is that they all make client code easier and more intuitive to write. However, they also put more of a burden on the class writer. In my humble opinion this is a great design since, if you're writing your object-oriented code "correctly", the client code will constitute the majority of your code. Therefore, my answers are that Yes, I truly enjoy the design of C# and yes it will make you a more productive programmer overall.
What is your pet peeve about .NET?
My pet peeve is with the compiler teams. There's an on-going debate as to what languages will implement what parts of the CLR. I'm with the CLR team in terms of letting each language have access to the same things. After all, that was the promise of the CLR to begin with. Don't get me wrong. Each language is still going to have access to the majority of the same functionality. However, check out the dotnet mailing list and you'll see that the VB guys definitely believe they're getting the shaft.
And your pet love?
The BCL, no doubt. As one microcosmic example, take a look at IEnumerable
and how it enables you to provide enumeration capabilities for any class!
I love that! You can tell that the CLR guys have put a lot of thought
into how this thing is going to be used. Additionally, I still can't get
over how cool Reflection is. I'm not just talking run-time identification
stuff. I'm talking about the ability to dynamically generate code that can
then be executed and even saved! I definitely could have used that a few years
ago for a system I wrote at AT&T.
Now that you are no longer at CodeGuru what does the future hold in store for you? We have seen mention of your new book for Microsoft Press - but are there bigger and better things in store for you, or will you be taking a much needed break?
I'm going to go back to mainly consulting full-time and running TheCodeChannel
Web site as a hobby. In addition, I've just signed on to do a Visual C++.NET book. So,
in other words, these bags under my eyes don't figure to get any smaller
anytime soon :)
Thanks Tom for taking the time to speak to us.
Actually, thanks goes to you Chris. You're one of the first people to
start the whole concept of developer sites and we all owe you a tremendous
amount in making our programming lives a bit easier and much more fun.
| You must Sign In to use this message board. |
|
| | Msgs 1 to 25 of 57 (Total in Forum: 57) (Refresh) | FirstPrevNext |
|
|
 |
|
|
How much did Zafir get for codeguru??
Did Chris profit at all..? I've read many articles and noticed Chris seems to have contributed just as much I see(n) his name everywhere...it's been a while since I visited codeguru...any kind of horizontal scrolling drives me nuts...especially while browsing a web site
What is so special about ASP.NET...? I think personally I will stick with PHP...for these reasons...
1) Cost effectiveness...hosting is almost always half price.. 2) It's syntax is just like C and with version 5 they have much better support for OOP 3) Open source is nice...you know bugs are goinna get fixed ASAP 4) I read an article where the guy seemed to really know what he was talking about...his comparison in terms of effiecncy really favoured PHP over ASP.NET and classic ASP...I have un-intelligently argued this fact with numerous CPians in the past, but neither I nor they could prove either wrong...so really I thought it was a he said she said argument...I personally figured being open source and written in C while running under linux would naturally have speed advantages...over windows anything...unfortuantely I can't find that article  5) When you want to do anything fancy in ASP doesn't it cost you money? For instance creating PDF docs in PHP is easy and many times comes precompiled as an extension with PHP. So it costs you nothing!!! In ASP wouldn't you have to purchase a COM component to do this for you?
The only reason IHMO ASP would be have an advantage would be the IDE that visual studio provides...however when writting web apps I find I don't need fancy debuggers, profilers, etc...
I can write code quicker using a simple small colorizing editor with some features like tab/untab (I do a lot of copy and paste when writting web apps)
Cheers
How do I print my voice mail?
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Hockey wrote: How much did Zafir get for codeguru??
Did Chris profit at all..? I've read many articles and noticed Chris seems to have contributed just as much I see(n) his name everywhere...
Zafir never disclosed the sale price of CodeGuru and it would be inappropriate of me to start guessing. I was contributing a lot back when I was looking after the day-to-day running of CodeGuru but neither myself nor Tom (after he came on board) or the other editors profited. We were all aware it was Zafir's site and we were happy simply being a part of a fun community.
cheers, Chris Maunder
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Maybe you want to consider putting up a wish list? I knew WinPCap developers do that and sometimes people do appreciate and grant the wish.
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
chris thinks he is a geek? hmm, wheres my dictionary.....
"When the only tool you have is a hammer, a sore thumb you will have."
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Actually a friend read this and sent me an email saying 'these guys are as geeky as you'.
Christian
No offense, but I don't really want to encourage the creation of another VB developer. - Larry Antram 22 Oct 2002
Hey, at least Logo had, at it's inception, a mechanical turtle. VB has always lacked even that... - Shog9 04-09-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
 |
|
|
 |
|
|
 |
|
|
I feel codetools could charge a small amount of fees to members who wish to get extra services from this site. People who don't want to pay could just stick to the existing services.
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
what kind of extra services...?
Real time help...? 
I'm not sure thats what codeproject attempts to accomplish
How do I print my voice mail?
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
I saw this article cause it came as the feature article on the front page. It was nice to learn more about Tom. I didnt know this stuff before.
Nish
Regards, Nish Native CPian. Born and brought up on CP. With the CP blood in him.
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
 |
|
|
 |
|
|
Before he sold CodeGuru he was talking about his plans to buy an RV and travel around the States. Soon after the sale he travelled to India for a few months and since his return I don't know anyone who's had any contact with him.
It would be interesting to see what he's up to.
cheers, Chris Maunder
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
He bought a van and travelled across the country. In fact may still be doing that. Sometimes I get calls from him from some National Park or another. Haven't heard from him in a while though.
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Next time you hear from him *please* ask him to email me. I'd love to catch up with him!
cheers, Chris Maunder
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Will do. I just realized that while I said I haven't heard from him in a while, I too am guilty of not calling him in a while
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Surprised that he does not have an online presence. Probably the best known Indian coder on the internet and guy's vanished into thin air
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
He spends most of his time snow boarding based on my last conversation with him which was about 6 months ago.
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
 |
|
|
The online developer sites are only viable as long the people contribute code and the admin keeps the site up-to-date.
A couple of years ago, the spirit of the Net was to share. Then the money poured in and everyone wanted to cash in. Now, we have .NET. 
Users are demanding and do not realize that some sites are not run by corporations but volunteers who are not being paid for the work. Some developers push their source code through such sites. Once they have a sizable market, they move from free source to paid code. Noone can blame them for that as it is their work and they do need to pay the rent. However, they should be honest with the users who supported them and tell them what to expect.
The future of developer Web sites is bleak as talented programmers 'get a life'. We face a paucity without more people like Tom Archer and Chris Maunder.
I would like to thank Chris Maunder for the time and effort he puts into running this site. Thanks, Tom, for your insight into the workings of a developer site.
|
| Sign In·View Thread·PermaLink | 5.00/5 (1 vote) |
|
|
|
 |
|
|
 |
|
|
 |
|
|
I agree. It's thanks to the people who put in all their time and effort, that many of us programmers have a "first port of call" for work-related chat and solutions to those annoying problems that you know someone else has probably already solved. I hate to say it, but I never even venture over to CodeGuru anymore, and I hate to think what it would be like without CP and its contributors, from the side admin and his team to the people who answer questions on the programming forums.
The article was a great read by the way, thanks!
"Oh, I'm sick of doing Japanese stuff! In jail we had to be in this dumb kabuki play about the 47 Ronin, and I wanted to be Oshi, but they made me Ori!"
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
Hi,
I'm a C programmer. Do you think I should learn C++ before learning C# ???
Thank YOU, Pedro Silva
Pedro Silva
|
| Sign In·View Thread·PermaLink | |
|
|
|
 |
|
|
General News Question Answer Joke Rant Admin
|