Age/Gender: 31, Male
Location: Hoboken, NJ
Job: Code Jockey
I helped create Newgrounds. Then I left. Then I came back. Then I left again. It's like that movie "Runaway Bride", but with fewer movie stars and more computer programming.
Newgrounds Stats
Whistle Status: Normal
Exp. Points: 1,605 / 1,880
Exp. Rank #: 20,474
Voting Pow.: 5.47 votes
BBS Posts: 186 (0.05 per day)
Flash Reviews: 12
Music Reviews: 0
Trophies: 0
Stickers: 0
Entry #1
I can't believe we made it. We've been working furiously on the redesign for what feels like an eternity, and it's neat to see it finally being used by more than the handful of us at the office. (This is one of the great things about working on Newgrounds - you never feel like your hard work goes to waste. At a previous job, I spent two years working on a big web application, only to watch the project get shelved. That was sad.)
So here we are, at last. Unlike previous NG redesigns, this one was more of a "reinvention" than a redesign. Normally when people hear "redesign", they think it only applies to the cosmetic aspects of the site. Which it does - this was a total XHTML/CSS overhaul, not a single scrap of HTML (outside of NG Mag) lives on from the previous site, thanks to Stamper and Bob.
But the really juicy part was the total back-end rewrite James and I did. When I first started programming Newgrounds in late 1999, I was motivated and hardworking - but very inexperienced, with little appreciation of good programming practices. The site worked, but I made a lot of bad decisions that resulted in a messy and largely unmaintainable codebase. (Not to mention that PHP 3 was the state of the art at the time.) Miraculously, after I left, James was able to figure out what my code was doing and change/rewrite/extend it to suit the site's ever-evolving needs. However, its fundamental flaws - lack of centralization and modularity being the big ones - grew more pervasive.
By the time I made it back to Newgrounds a little over a year ago, I was a changed programmer. I've become a big believer in object-oriented programming (thanks to Java), something I would've never dreamed I'd become when NG first started. I've also learned a lot about software design in my time in the wilderness - what works, what doesn't, and most importantly, what happens when design is an afterthought.
The site you're using now was almost completely rewritten in object-oriented PHP 5 and JavaScript - I'd estimate at least 90% of the back-end code was rewritten from scratch for the redesign. On top of that, the site moved from being an old-school site (click a link, go to a page) to a more modern Web 2.0-type site, with lots of AJAX and in-page interactivity. This required coming up with a whole new framework for doing things - I could write a book (or a series of blog posts?) on the things I learned while working on the NG redesign. It's been quite a journey, and of course I'm still learning.
However, we're not in Xanadu yet. There remains a lot of troubleshooting to do - many users have probably picked up on a glaring bug or two. (I'd be fixing them right now, if I wasn't on a train, without Internet access.) But I'm really proud of what we accomplished with the redesign, and I'll be even happier in a few weeks once we've gotten most of the kinks ironed out. There are a lot of fun features in the pipeline - just with respect to blogs, I'd like to add things like tagging, searching, rich text editing, the ability to save drafts, and more.
But that's for later. After almost 72 hours straight of redesign work (with a few breaks to eat and sleep), it's time to spend some time with my wife, who's probably forgotten what I look like. :)
Updated: 07/19/07 10:40 AM Log in to comment! | Share this!The People Have Spoken
22 Comments