AnandTech: A Brief History of Time
by Jason Clark on July 26, 2004 6:52 PM EST- Posted in
- IT Computing
AnandTech 1.0
As most of you know, AnandTech started out as a static HTML site, hosted on GeoCities. Static driven sites are simply HTML based with the content contained within; dynamic driven sites fetch their content from external sources (usually database servers). Back then, static sites were quite popular while dynamic driven web sites were really just starting to catch on. In 1998, at Comdex, we laid out the first dynamic version of AnandTech.com. We decided on Oracle 8i as the database server, and ColdFusion 4.0.1 as the application server. We ran Oracle 8i and ColdFusion on two separate Sun Enterprise servers. We had no issues with Solaris or Oracle, performance-wise, but ColdFusion talking to Oracle was another story.We developed a fairly simple content management solution that allowed us to post content through web forms. This approach to publishing saved a lot of time as content and the editorial staff grew. Articles could be posted from anywhere, and they could updated or removed at will by using our forms-based interface to the database. At that time, the content management engine was not feature-rich; it performed just the basic tasks necessary for the small editorial staff that we had.
The first version of the site was probably the most problematic version of the website (go figure), and the most difficult to maintain. Oracle is a powerful database server, without a doubt, but it lacks the finesse of Microsoft SQL Server and other database servers to some extent. The management UI leaves much to be desired (it doesn't hold a candle to SQL Server Enterprise Manager), and the language, although powerful, is not for everyone.
For ColdFusion to talk to Oracle, we had to use the Oracle Native drivers, which caused us a fair bit of grief and wasted time, as the SQL syntax had to be compatible with Oracle. When the development team consisted (and still consists) of one developer, time is critical. Speaking as the developer, I come from a SQL Server/Sybase world and while it isn't hard to pick up on Oracle's syntax, it is entirely too painful to use when time is so critical, especially when working with dates. Aside from the pain of the syntax, the native drivers also caused some anguish in ColdFusion. ColdFusion was crashing occasionally and caused some unnecessary administrative headaches that needed to be rectified each time it went down. By this time (about a year or less later), it was time to move on to something more stable.
Hardware used in version 1.0
Sun Enterprise 250 w/ 512MB Memory
View version 1.0 of the website
67 Comments
View All Comments
PorBleemo - Wednesday, July 28, 2004 - link
vda #30:You forget that their servers are a little more powerful then 166Mhz.
JasonClark - Wednesday, July 28, 2004 - link
felix,No where in the comparison did we say the performance comparison was CF vs .NET, well aware that there are some differences in page layout along with architecture. The comparison was the old site to the new site. For us to do a fair comparions the code would have to be quite similar, and even then it is still not apples to apples. Overall, platform, css and a re-architecture of the site brought us some large gains (as illustrated).
Yes we had already invested in licensing, but with some JRUN related issues that went unresolved, and the cost of future licensing .NET was a better choice for us.
RAD is great, but honestly with Visual Studio 2003, the argument isn't as great as you might think.
fbaum - Wednesday, July 28, 2004 - link
Hey ho...
Just noted that your interface from pure HTML to CSS doesn't really result in an apples to apples comparison of cf to vb.NET performance. No matter how you slice it, larger pages = slower rendering site. Taking down pages from 130K down to around 45K in HTML would yield huge performance gains without changing your app server, and wouldn't have required you to redevelop code, just presentation.
Got to agree, the VS IDE is slick. But I'm a RAD fan and a cf fan, I like having useful builtin functions to call upon, and .NET coding sometimes makes development that should be easy harder than it should be.
Why rewrite? Your server licenses are already bought, right?
Disclaimer: my email address ends in @macromedia.com, consider my comments accordingly
-Felix
kenny4269 - Wednesday, July 28, 2004 - link
Nice article, always interesting to read behind the scenes stuff.vda:
I work as a computer tech and have one thing to say about Windows. Outside of the security holes (which ANY OS can have), most Windows problems are caused by the user. Keeping up to date with patches, antivirus, not opening attachments, etc. all all things that MUST be done on ANY OS (open source or not). If you download BonziBuddy on your Windows PC or some poorly written Linux app, you can still have problems.
Don't get me wrong, I like Linux, but don't tell me it's perfect choice for everything just because it's open source.
JasonClark - Tuesday, July 27, 2004 - link
sonixDivx, the performance gain was a combination of our new layout (removing the news), and the architecture of our .NET version. But, the way we wrote the .NET site is similar to writing a ColdFusion app with CFC's as the backend, very similar. I'm not sure we'll do a comparison of the two, since the two sites are fairly different in layout and content.Cheers
JasonClark - Tuesday, July 27, 2004 - link
vda:What happens when a 18 year old genius has the source code to the operating system that your entire system architecture relies on? Then exploits a vulnerability in the source code (yes unix developers make mistakes, enough that redhat network sends out a constant stream of e-mail :)).
Then that exploit (which was easy to find as you had source code) takes your network down and costs you thousands every hour? There is another side to the open source argument, I'm not saying I don't believe in the movement, but your argument is one-sided.
BTW, the registry has never been corrupt for us, and that's what emergency backup disks are for btw, I certainly hope you don't run linux assuming it will never break :).
Phiro: we use Linux Virtual Server (vda are you reading this? LINUX virtual server :)). We use 5 web servers run the site, we could run off of 1 except on extremely busy days. We like redundancy.
vda - Tuesday, July 27, 2004 - link
> In regards to linux, our expertise lies in windows and it hasn't given us any grief what so everProblems do happen with every OS. Now, when Windows hangs on you, what do you do? When registry got corrupted, what do you do?
Nothing. You can do nothing because you have no source of the damn thing. You have next to nothing in regard to debugging facilities. No strace. No gdb. No kernel debugger. Disassembling stuff is
possible but illegal.
It does not matter for "yesterday's advanced user"
style admins and web designers, for they are Gates' target audience.
For me, it does matter.
vda - Tuesday, July 27, 2004 - link
> Code is as bloated as the developer makes it, experience, experience...Hehe. Our corporate Internet gateway have
lots of stuff. Tons of network utils
(nmap, mtr, tcpdump, iptables, traffic shaper)
and services (*transparent chaching web proxy*,
www, mail, secure ftp, DNS server, DNS cache).
It runs on Pentium 166 and 40Mb of RAM.
Try to install Windows NT on that.
--
vda
vda - Tuesday, July 27, 2004 - link
I once said this:'What happens when you read some doc and either it doesn't answer your question or is demonstrably wrong? In Linux, you say "Linux sucks" and go read the code. In Windows/Oracle/etc you say "Windows sucks" and start banging your head against the wall.'
To my surprize, it even propagated into some .signature files :)
Aaron - Tuesday, July 27, 2004 - link
A well written C++ .Net ISAPI filter on IIS beat out Apache in any confguration last I checked.Anandtech Team: Are you looking to add any additional developers to your team? I am a senior .net dev / usability designer / MS SQL Server DBA / systems architect. Work on your application would make a welcome addition to my resume. Email me if you are interested.
aaron.dezeeuw #at# gmail.com