Category Archives: Cool Stuff

spike

Reddit is melting our server, here’s what we did (Nginx, Apache, Django and MySql)

I help out a popular clothing retailer, kuhl.com, sometimes when they need some after-hours help. Last night at dinner I got an urgent text from the lead developer who is based in Europe saying the website was melting due to being mentioned in a highly popular Reddit post. It seems that one of the Boston bombing suspects was spotted wearing a hoodie from Kuhl.

The first problem was that there weren’t enough database connections available, the second was that, of the M1.extra-large’s 15G of RAM, only 4G was being used, and the third problem was that the disk i/o and cpu usage was close to nil. We solved all of these problems, and they all helped, but ultimately could only handle the load by serving a static copy of the popular page. But here’s the process I took to get there and how each step impacted performance. Continue reading

The Marching Band

March’s coolest links – Inside Aperture Science, indestructable phones and encouraging kids to fail

I’ve decided to start monthly blogging about the links and stories I favorited in March. You’ll find an eclectic mix of web development, open source, usability/ux and whatever trips my fancy.

This month we have news about Firefox OS app payments, how to get Netflix running in Ubuntu, indestructible cell phones and some WordPress tips.

Continue reading

wp-o-matic

Don’t panic! Build your own Google Reader in 12 minutes with WordPress

Like many I am saddened that my favorite newsreader will go away. I use the app Reeder and the web service IFTTT to hook into Google Reader to keep up to date on my feeds so now I’ll need to find something new. Reeder has said it will continue to work after the change and Feedly looks like it may also be something to consider.

Maybe we should untether our selves from a service we don’t control. I did some experimenting and it looks like with a tiny bit of effort we can make our own Google Reader app right in WordPress. And it will take you less time to do than it takes me to write this blog post! You’ll get the ability to star posts and you’ll have categories and a single central feed of all the sites you keep up on that you can read in any reader app. Continue reading

Mario Land

Google IO 2013 8bit codes

I’m considering going to Google I/O 2013 so was checking out the website. I noticed you could click on the letters when a friend pointed out that it was making 8bit codes at the bottom. I tried entering the values for 2013 and a few other common numbers but didn’t get anything. I browsed the source but I don’t like reading minified code so gave up.

Today I’m sick and can’t go to work, so I thought I’d play with it a little bit more. There are patterns you can enter to get to some hidden games and other novelties. Here’s what I found:

So far I’ve identified 12 different patterns. I’m wondering if there are actually 13 (for 2013) but so far I’ve been unable to find another. If you find one, I’d love to know it. Continue reading

Memory Lapse

Setting up your own Git server with Gitlab

During my hands on lab teaching Git I mentioned that I have instructions on how to set up your own Git server using Gitlab. This is an awesome tool that gives you some of the best features of Github along with the ability to privately host it on a server in your own private network.

You get a git server accessible via git:// ssh and http/https, a slick web interface where you can manage projects, your team, create tasks (i.e. bug reports and etc), do pull requests and run a wiki for project documentation. I particularly like the ability to manage user’s SSH keys via the web interface. I’d like to explore it’s ability to authenticate against Active Directory, Google or other providers as well. Continue reading

2378867408_4cc90791d6

Test driving Javascript training by Industrial Logic and @bengrue – Day two review

On the heels of yesterday’s post I am publishing my notes from day two of the training my work has sent me to. The training is to help our team improve the way we use automated testing to verify the behavior of our JavasScript

I’m actually a bit surprised at how un-standard JS testing is. The barrier to entry is high due to immature tools and a lack of good documentation. I’ve picked up and read a few books on the subject, which I’ll go into in a later post, and I’ve tried out a few different tools that are each popular but very different from each other. I feel there needs to be a bit of a revolution in this industry for it to take off. (by the way, the tools I’ve explored are JSTestDriver, which is what my team uses, QUnit, used by the jQuery framework, Jasmine, which is a BDD testing tool, and Buster.js which has my favorite set of assertion suite and mock/spy features, but least favorite regarding documentation and integration tools) I intend to bring the information I’m learning back to DSM and help build a community around solid JS test practices there.

Here are my notes from Ben McGraw’s training. There is a lot unsaid here, since much of the day was doing hands-on labs. However his presentation was filled with useful nuggets of information that I felt would be great to share. As before, my editorializing is italicized. Continue reading

9 Usability Testing Biases

One of my coworkers did a presentation in our team meeting on a topic he’s passionate about, usability testing. It is also something I’m fascinated by as well.

If you’ve ever done user testing you’ve definitely observed all or most of these issues. I’m very familiar with them but until now didn’t know the terms to describe them.

So here are my notes from the short presentation by Simon Whatley on 9 Usability Testing Biases (which was adapted from Jeff Sauro’s 9 Biases in Usability Testing): Continue reading

swimming phone 5535811575_6af6ddddc5_b

Your phone *wants* to go swimming

The smart phone has changed the look of the mobile phone. Each new generation of devices pushes the envelope with new features and capabilities, to the point where they are now getting ridiculous. Today I saw mention that Samsung is releasing a phone with a flexible screen. Yeah, I’ve always wanted a bendable phone! Not. A few years ago there was a race to see who could make phones smaller and smaller, and now we’re trying to make them bigger and bigger! (case in point, that phone linked has a 5.5 inch screen).

I feel like the phone makers are mostly out of touch with what consumers actually need. Here are a few practical features I’d love to see in a phone: Continue reading

Using Selenium Simple Test

Unit tests are a great way to test your code but some interactions are hard to verify unless you open a browser and click around. Selenium is a great tool for automating a web browser but the learning curve is a bit steep. Selenium Simple Test is an easy to learn tool that allows you to harness the power of Selenium for your own projects.

Here is a two-part video series that I recorded to help you understand SST and begin using it for your projects.