The rollout of the Healthcare site last week should serve as a lesson to aspiring developers everywhere of a few different but equally important tenets… chief among those –
- If you’re going to expect a lot of hits, load test your hardware
- If load testing fails, upgrade your hardware
- If load testing STILL fails – check your code
Below is a screenshot of a “waterfall” showing the loading of the signup page (I should note that I didn’t take the initial SS, and I’m not sure who did). It makes a grand total of 94 HTTP requests for assets (images, JS, HTML, etc.). Notice how nearly every one of them is for “www.healthcare.gov”. Most of those items being loaded are “stock” jQuery assets – which could easily be offloaded to Google’s CDN, Cloudfront, etc. Static images could be moved to another CDN. I highly doubt they’ve customized any of the default JS files for the site.
Point being, some of the hangups of the site could have been reduced from day one by an offload. I’m not saying that loading all these files from other sourced would have reduced the glitches, but it would have reduced the HTTP requests against whatever hardware is powering this site (and I’m sure it’s quite beefy). But when you throw enough HTTP requests at Apache, it eventually clogs up and says “I give up!”
11 CSS files, 56 JS files, no caching on those… Pretty sure a shared hosting provider by now would have suspended the account. 😉 I’m also giggling a bit because I just checked the source code, and they commented out the “Google Fonts” in the header, thinking that it would help with load.
The Republican Party of High Point (RPofHP) site was an interesting evolution in terms of my involvement. Again, this was precipitated through conversations with Ed & Anna Currie of Exclamations. The genesis of the project was dealing specifically with a series of fundraising events over the coming months, culminating in a large dinner to commemorate Ronald Reagan’s birthday in February. Paul Norcross, Chairman of the High Point Committee was specific in terms of his needs – the ability to register and pay online (while meeting Federal Election Committee reporting requirements) and publicizing the events – through email and social media. The original conversation started with a discussion of creating websites for each event. When I researched what sort of infrastructure RPofHP had in place already, the answer was “very little”. The RPofHP is generally speaking, a new committee, somewhat separate from the Guilford County Republican Party. (High Point technically spans four counties, with the majority residing in Guilford.) While I’m not sure what led to the establishment of a separate committee, the need for an online presence was there.
Without any infrastructure to rely on for these events, I discussed with Paul the need to establish it’s own website with all the bells and whistles, and then use that as a launchpad to promote the events. Rather than “re-create the wheel” each time, we could keep the underlying systems in place and then leverage those.
The site came together very quickly in terms of turn-around. The site was published the first week of August due to the first event on August 22nd. E-mails needed to go out to publicize the event and registrations had to happen as soon as that e-mail was sent. As of this posting (Aug 27, 2013), there are still chunks of content that haven’t been fully completed yet. Event management processes are still being refined, but I have to say that our first event did have it’s successes with the new registration system.
The site features a feed from the National, State, and County websites that will re-post the latest news onto the site. This benefits the RPofHP in that as we build out our content and newsletter procedures, we can include pertinent information from those entities. The centerpiece, of course, is the event management/registration system. There are also registration and volunteer sign up forms, as well as limited integration with social media. The site features a directory listing of elected officials, and for the upcoming 2014 mid-term elections, the intention is to aggregate candidate information and links on the site.
I created the header logos on the site (the elephant is part of the original logo). Additionally, I helped create the e-vite that went out via email for the first event. There are additional print/online graphics designs in process for upcoming events.
- Home page with news slider
- Event management & registration (with secure credit card payment)
- Secure donation form
- Email/Newsletter integration & management
- RSS import from National, State, and County Republican Committees
- Photo Gallery
- Mobile-friendly (responsive) design
The Greensboro Pony Drive site is an event-specific site for the 2014 Pony Drive to celebrate the 50th Birthday of the Ford Mustang. The drive itself starts in Mustang, Oklahoma and will travel both east and west towards the final destinations of Las Vegas and Charlotte. Along the way, Mustang owners will join with the ride to create (what several are hoping) the longest parade of Mustangs. Greensboro is the last stop before rolling into Charlotte, and is a “lunch stop”. The final overnight stop is in Asheville, NC. Given the route, Greensboro is expected to be the staging point for everyone North and East of Charlotte who wants to travel to the 50th Birthday Celebration as part of this drive.
I was asked to take care of this project by Ed Currie, one of the owners of Exclamations Catering, who I’ve worked with for almost 10 years now. The original intent of the project was much grander in terms of scope as there was little direction from the Mustang Club of America regarding these stops. Unfortunately, the project was scaled back due to the release of their requirements. The site features a registration form, integration with Google Maps (for local information), and a sponsors listing. The site is “responsive”, meaning it scales down to mobile screens.
Originally, the site would be able to accept registrations and print out tickets that could be scanned by mobile devices at check-in. These tickets could be paid for online with a credit card. This registration system would have covered entry, lunch order, and a t-shirt order.
In addition to the site, I’ve also done some print materials (the “printable flyer” at the moment). The header logo is my creation.
- Home page with news slider
- Event registration form
- Google Maps integration
- Customized sponsorship listing with logos
- Responsive layout (desktop fixed-width)
- Full-width photo background
This was a quick one-page site that one of my gaming friends asked me to create for him. The original concept/coloring was proposed by a mutual friend of ours, and he was initially supposed to take care of the site, but due to his own commitments, asked me to take over the project.
The site is dominated by the large streaming and chat windows for when he streams video game play. The feed is handled through the streaming service twitch.tv. He was able to use my graphics (header logo, “game over”, avatar) within his Twitch user account to handle his “branding”.
- Video streaming connection through twitch.tv
- Chat window connection through twitch.tv
- Fixed-width layout
The NC Triad Hokies site represents my longest tenured project. I picked up control of the site in 2005-2006 and eventually migrated the site onto a Content Management System from it’s previous static design. The idea behind that was to allow multiple officers the ability to update the website with relevant content without my interaction. With the movement into a CMS, we were also able to adopt forums, allowing us to (hopefully) increase local user interaction and a possible marketplace. In the upgrade to a CMS, we also brought newsletter management in-house, allowing users to manage their subscriptions, as well as providing sending access to all approved officers.
The latest iteration of the site is built around WordPress. As of August 2013, the site features a fixed-width layout. I anticipate re-writing the theme before the end of 2013 into a mobile-friendly (responsive) layout, allowing me the opportunity to drop several plugins from the installation.
- Home page with news slider
- Forums for local interaction/participation
- Events manager with RSVP system (not connected to any payment services)
- On-site newsletter management (creation, sending, subscriber management)
- Photo gallery
- Integration/auto-posting with Facebook & Twitter accounts