GDNet Behind the Scenes: GDNet Direct

Well, this should be interesting. I decided last week to start a new series here in my journal to see if anyone at all cared about how I do some of the things I do here at GDNet that most of you witness the fruits of every week. I've always enjoyed Behind the Scenes stuff for just about anything, and there seem to be plenty of shows on TV along the lines of How Stuff Is Made. People are curious, it's in our nature. So if you were wondering what goes into some of the things you see here on GDNet, then I have some answers for you. In this entry I'll be showing you how I put the newsletter together every single week, year-round.

Brief History

The newsletter is something I pioneered back in my early days at GDNet, when I was still a regular member tossing fruit and glass bottles at the site admins from outside the fence (my strikes are much more effective these days, mwahaha). Although the earliest thread I have bookmarked is started by BitBlt, I do mention in there that I brought the topic up beforehand.

After wrangling out some details with Kevin and Dave, I mocked up an HTML format and used that template for the first two issues, starting Jan 26th, 2002. After the first two, I got tired of editing the HTML version and felt it looked like crap anyways and too much like the main page to stand on its own. So I switched to simple plain-text format.

However I still wanted to do an HTML version in a format unique yet within the site's current look and feel. I held a design contest with a few books from Charles River Media up for grabs and ended up with the template above as the winning entrant (picked by me). It went live on the 20th of July, 2004. It was ahead of its time actually, since this was before the main site switched to the white/blue theme we have today. I was playing around with original content at this point as well, featuring code snippets, products, Q&A with industry vets, etc. However this didn't last long as the submission rate by readers was extremely minimal. I also experimented a bit with a bi-weekly newsletter as well, but quickly decided to return to weekly.

Throughout all of this, everything that went into the newsletter had to be done by hand. There were no auto-generating scripts that spat out content for me to insert into the newsletter. This meant that when I had an HTML version and had to also maintain a plain-text one as well for people who hated HTML emails, I was doing double-duty. To this day there are still no auto-generation scripts of any kind, although I did cut down on my workload by tanking the HTML version. Why no auto-gen? I simply don't rate it high enough on the priority list compared to all the other tasks poor Richard is buried under.

Now we're getting into the play-by-play. First step is to load up the home page (yes, I'm still rockin the awesome GDC theme) in the browser and run Notepad to open up last week's edition of the newsletter. The majority of what goes into the newsletter each week doesn't change much, the amount of content that goes in versus the templated stuff already there is minimal in comparison. So reusing the previous week's newsletter greatly speeds up the process by making me have to rewrite as little as possible.

Still, there are little changes I'd like to keep from week to week, like if I'm running the same ad twice or more in a row, so it's best to keep all the old issues (plus I'm also a pack rat by nature). So I simply rename the file to match the new date.

The files are called a "prerelease" because I used to create these templates early on in the week to fill with news items each day so come every Monday I wouldn't have a ton of news items to place in the newsletter, and so that I wouldn't have to go hunting for news items that got bumped off the main page. Nowadays we don't post much news and I only create/edit the newsletter file on the day I publish it, but I've kept the moniker.

Step 2: Ad placement

The first thing I do after renaming the file (well, after changing the dates and issue number) is check to see if I need to update the ad spot. First I check my email to see if Lissa sent me anything over the last week or so. Seeing nothing, I then check the handy-dandy Google doc Lissa and I share for the date of the issue and the column for newsletter ads to see if anything is listed there instead. If so, then I usually ping Lissa through email/IM/phone for details. If not, then it's pretty much up to me what to fill the ad space with. Generally I stick in whatever is in the Spotlight, although sometimes I get the urge to be creative and do a little on the spot philanthropy:

It's never a bad thing to extend a little goodwill to friends right? Kevin is the creator of the RakNet networking library, which I've been a fan of after using it years ago. You'll be seeing regular ads on the site for it in the near future as well.

This is the one part I hate to botch up, and I have on a handful of occasions, whether it's using the wrong hyperlink, forgetting to attach a "http://" at the beginning of a URL, or just using the wrong ad altogether! D'oh.

Step 3: Content, content, content!

After figuring out what the hell to do with the ad placement, I just run down through the newsletter and copy/paste text and links from the site for all the various sections - starting with Featured Articles published in the last week, then grabbing all the headlines and links to Read More from all the news items posted in the last week, checking for new jobs and updating the individual positions list count, seeing what needs to be updated in terms of the events, and checking for any new Showcase entries. All this stuff is pulled straight off the public pages around the site.

Step 4: Featured book

Here's where I go into the Admin panel to change the book that appears on the main page. I took over this job from Dave about a year or two into the newsletter's publication. It's quite simple, I just start typing the title into the drop-down list box to find it, then select it and hit the Update button.

The hard part is selecting a book to feature. Our book library hasn't grown all that much in the recent year, mainly due to my loss of FTP site access thanks to the server fiasco during last year's GDC. This makes it harder for me to add books to the database since I can't upload their image covers. This makes it useless for Featured Books because having a broken image doesn't look that good (although it sometimes happens anyways. Argh.)

Anyways once I pick on a book (usually from my own library, though sometimes I research the Books section to find a popular title not on my shelf) I copy/paste its specifics into the newsletter.

Step 5: Poll results

Another section that has me back in the Admin panel is the Polls. Before I can grab the results, I have to close the current poll by activating a new one. Sometimes I have a few good submissions lined up I can use, sometimes I have a few not-so-good submissions left over that I use only if I can't think of anything better myself. Of course there are also a few that I just delete outright. I can also make copies of previous polls to re-run them to compare results.

This copy function is nice to have for annual polls I run like the "How was GDC?" poll. Sometimes I just copy polls to see if the voting results have changed in the year or few since the poll was originally (or last) run.

After activating the new poll I can vote (if you happen to see a new poll with only one vote, you know that's me) and then check the results of the previous poll now that it's closed and can no longer accept votes. Creating the percentage bars in the newsletter isn't any serious math - everything is simply relative to the largest bar in the results.

Step 6: Publishing

The polls being the last section, it's time to save the file and Ctrl+A to select it all and paste it into the Text Body section of the message send page in the mailing list software we use. The text is word-wrapped in this box and I run through it quickly to make sure nothing was wrapped in a way that breaks the formatting - usually this only affects long headlines in news posts, although sometimes the poll results graphs can run off the edge of the margins.

One final page comes up for a last check-over. Sometimes things wrap a bit differently here - a line of text that stayed to a single line in the previous page's text box appears here with the last word wrapped to a new line. In that case I hit the Back button to fix it up real quick, then double-check on this page again. Once I see that everything is in line and the formatting looks good...

Off she goes to a total 25,482 people's inboxes. It's inevitable at this point, right after I click the Send button that brings me to this page, and despite all my double-checking, that I think to myself "Oh crap I hope I didn't forget anything!" :P At times I realize I actually have forgotten something, though it's usually a minor thing like forgetting to update the date in the subject line.

The End

That's it! Now you know what I do every Monday night without fail (nearly almost!), week after week, year after year, to deliver the latest GDNet news to people's inboxes. You might be wondering how long this all takes me. Well now that I'm well-practiced, I have it down to under 30 minutes on a good night. Mainly it's ad snafus that drag me down sometimes. Regardless, I've never had a real deadline for sending out the newsletter other than "Monday night", so time really isn't an issue.

You Like?

I'm prepared next time to go into detail on how I post Featured Articles to the site, as that's another rather involved process I can detail without (hopefully) putting you all to sleep. If you found this to be in any way informative, let me know. If you think I'm just trying to make myself feel important, let me know too [smile]. Judging by the response, I'll decide whether to do this feature again next week with article posting.