Today I thought I would take a different approach to my typical virtual interview methods and interview the founder of (this site) devArticles.com... Mitchell Harper. In this interview, Mitchell talks about devArticles, his role as its manager, the admin app used to power the whole site, as well as his favorite books and perks of running this site.
Virtual Interview: Mitchell Harper - The Interview (Page 2 of 4 )
1. Who are you and what do you do?
My name's Mitchell Harper and I'm from Sydney, Australia. I've been programming since I was about nine, when I purchased my first XT computer from a school fete (ahh… those days were good). I work for a small development company in Sydney, and I manage all public relations and business contacts for devArticles.
At the moment I'm learning C# and fine-tuning my knowledge of Unix systems. For some strange reason about three years ago I decided to learn PHP and MySQL. Being from a Windows background, the whole concept of an alternate OS was pretty new, but thanks to sites like WebMonkey and PHPBuilder, I picked up PHP and MySQL in a matter of days, and then spent the next year building on the basics to get through to the advanced concepts, which I used to build devArticles.com.
2. Describe the hosting setup of devArticles.com
Well, devArticles is hosted on a Linux server running Apache, PHP 4.1 and MySQL 3.23. The site is hosted by WebAccess [at the time of this writing -ed], which is one of Australias most popular hosting companies. I've never had any problems with their service, and we’ve had 100% up time. Our servers also run Webalyzer, PHPMyAdmin and iManager, which is a bundled file/mail manager suite. I'm more of a coder however, so I prefer to manipulate our databases using raw PHP code.
3. Can you describe the database setup of devArticles.com?
Sure. As mentioned above, we run MySQL. We chose MySQL because it's the most efficient and most widely documented DMBS for Apache; it's also free, which is a big bonus. We run two databases. The first database contains 21 tables. These tables contain all of the content for the site, and include the articles, the contents (pages) of the articles, the zipped support files, author bio’s and pictures, recommended books, categories, affiliate links, and more. The second database runs the forums.
We initially had only 6 tables in the first database, but as more and more visitors started coming to the site, I decided to add extra features to it, including the free eBook links and daily news. These two additions to the site have proven to be a huge success, and now account for at least 25% of our daily traffic.
4. Talking about traffic, how many visitors does devArticles.com get per day?
As mentioned earlier, we've only been around for four months, but I think we're going pretty well so far. Just looking over the log files, we're averaging 1137 unique visitors a day, and 2503 hits per hour.
5. Take us through the process of adding a new article to devArticles.com
Ok, well one of our content editors will load the devAdmin suite into their browser and login. I wrote DevAdmin entirely from scratch, and it's turned out to be one of the best browser-based admin apps I've ever written. If there's a big enough demand, I will be looking into creating a generic version that can be used by other sites. Here's how the login screen looks:
Once the editor has logged in, they click on the "Add Article" link that appears in the menu down the left side of the screen:
There are two steps to adding an article. Firstly, you have to enter its details, such as title, author, summary, related books and links, support material etc. This is done on the screen shown below:
When I was creating devAdmin, I knew that there were several ActiveX components on the market that could be used to create HTML on the fly. I looked at a couple, but decided that a custom made page would work best. Here's a screen shot of our content editor:
It's nothing really fancy, but it gets the job done. Pages can be added and shuffled around to change their ordering, and both images and links are added in real-time using a couple of popup scripts that I wrote. The dropdown list shown top-right allows our editors to change the style of the text in the pages. They simply highlight the text they want to change and select a new style from the dropdown list. It adds a <span> tag with references to one of our style sheet classes.
Once the editor has added all of the pages to the article, he simply clicks on the "Add Article" button, and depending on whether or not the article is set to visible, it will be displayed on the devArticles.com front page and under its relevant categories (such as PHP and MySQL).
At this point, the editor will click on a button that will automatically update our XML content feed. Here's a screen shot of our XML content feed:
That's pretty much all there is to adding an article to the site. I’m currently working on a script that will automatically convert a Microsoft Word 2000 document into an article, but that's about three weeks away from being completed.