About Us

Bulletpoint StarImulus® is a technology focused design + interactive agency.

In addition to our client services we also have a few products in the works. Our office is always filled with chatter and this blog is an outlet for our creative energy, rants and ideas.

Podium

StacksStacks ®
A group task management solution that finally makes sense.

Sign Up For A Free Trial »

Featured Project

Category: development

Jan8

Using Microsoft’s Web Deployment Tool to automate backups

Recently here at Imulus we had a production server go down, meaning all of our clients’ websites on that box were unreachable.  Thankfully, we had the proper precautions taken and backups were restored in hours.  Yet it was a very stressful time for all of us and it led me to wonder what else was out there and how much better we could have responded in an emergency.

After a bit of research I found Microsoft’s Web Deployment Tool, also sometimes referred to as MSDeploy.  Of course it only applies to Windows Servers with IIS, so if you are looking for another OS/web server solution this article is not for you.

I was somewhat skeptical at first because, well, I’m skeptical of everything.  They even call me the skeptic here at work.  It also seemed a lot of people that were writing about it were fanboys and it was a very new product (I started testing when this product was still a release candidate).  After reading about it thought I should give it a shot since it sounded very powerful.  Here is a short version of what we were looking for:

  • Able to take all manual steps out of recovery
  • Backup all files and code that made up the website
  • Include all settings, SSL Certificates, Bindings etc.

After playing with it and doing some tests I was very impressed.  The tool does deployment/backups per site, so if you host multiple sites on a server and want to customize depending on site you are able to do that.  You can view code dependencies, backup databases – do almost anything you want.  You can choose to use the GUI from IIS Manager or go command line.  You can choose to export the package to another server immediately or create a folder with an archive of all necessary files for restoration later.

If you are interested in using it for deploying, go get it,  check out this overview page or visit their forums.

If you are interested in seeing how we created a fully automated solution, read on.

Since we wanted something that had little or no human interaction, and therefore not error prone with a high degree of reliability, I came up with a solution that took all human involvement out of the backup and recovery process.  The solution we came up with is broken into 3 parts.

1) Backups of all sites in IIS needs to occur in case of a server failure.

2) Replicate backups to other available live servers as well as offsite automatically.

3) The ability to recover our site(s) needs to be easily and quickly available with fewest manual steps as possible.

To address all these I wrote a small, simple program to help the Web Deployment Tool with this process.  The program has two purposes and can easily be scheduled through the task manager in order to create a repetitive and up-to-date solution.  The program writes two files.  The first .bat file should be run nightly, or however often you want, and contains commands for msdeploy that create an archive backup for each site in IIS.  The second bat file contains all commands for msdeploy to install/restore each website that has been archived.  This second file should only be run if a server goes down and you need to restore sites on your standby server.

To take care of our first step we must schedule an execution of our custom application to generate our archival and restore bat files.  We must also schedule an execution of the archival .bat file our program generates to be run afterwards.  The bat file execution results in the creation of an archive for each site.

Now that all sites are backed up with step #1, we need to take care of step #2.  To do this, just use your favorite sync tool to copy all necessary files to other server(s) and offsite.  If you don’t know what I am talking about, check out Super Flexible File Synchronizer or Microsoft’s Sync Toy.  Using a program to move files on an automatic basis allows us to be ready to execute step three if we ever need to.

Step #3 is the only manual step in this whole process and is quite easy.  First, bind the new server you are recovering to with all necessary IPs, or do whatever network voodoo you need to.  Secondly, run the recovery .bat file.  The file will install your site(s), application pool, certs and restore all settings.  One click recovery?  Yes please!

If you think this code could be used in your environment you may grab a generic version here – I hope it helps.  Obviously, I make no warranty about any of this process or code.  If you do use the code, please read the readme as well as the code comments.  The code is a Visual Studio 2008 C# solution licensed under GPL.  Use your heads and do your testing people!

If you come up with anything different feel free to comment and let us know how you have improved upon the process.  If you modify the code please send me what you have done.  Enjoy!

Sep3

Who is Imulus?: Interview With Taylor Smith. Interface Developer

who-you-gunna-call

Name, rank, and occupation soldier!
My name is Taylor Smith and I’m an Interface Developer. I take all the pretty pictures the designers draw all day and turn them into functioning, interactive websites.

What was the first development project you worked on?
The first websites I can remember working on weren’t exactly what I would call “development projects.” They were more like personal sites put together with the limited knowledge of HTML and CSS I had back in the late 90s. At the time I was more into photography and messing around with Photoshop, which sort of naturally led me to web design. From there, it seemed that becoming better at HTML and CSS was the next step I needed to take in order to get my designs online, so that’s what I did.

At six, what did you want to be when you grew up?
I wanted to be a front-end XHTML/CSS/JavScript specialist with an emphasis on user interface design and usability, obviously. I also had a short lived interest in becoming a Ghostbuster.

In this field, who do you look up to?
The people I look up to most in this field are the people who blur the lines between development, design, and interaction. There are a lot of talented people specializing in just one of those fields, but the people who can take a step back and understand the overall experience of a website are the ones I find are creating the most compelling content. People like Dan Cederholm, Jason Santa Maria, Dave Shea, Shaun Inman, and many others are not only actively engaged in furthering their skills as front-end developers, but they make it look damn sexy in the process.

What podcasts do you listen to?
I listen to a lot of podcasts. Taking the bus between Denver and Boulder provides me with about 3 hours a day of downtime, and my commute is only made tolerable by the likes of This Week in Tech, Macbreak Weekly, This American Life, You Look Nice Today, Car Talk, and Diggnation. The nice thing about these podcasts in particular is their length; they usually span the entire length of the commute. I have to say, however, that my favorite podcast is The Moth. These are much shorter, but I have yet to hear a story that hasn’t moved me in one way or another.

What nerdy things do you do outside of work?
I use internet lingo in everyday conversations, apply Twitter hashtags to situations outside of Twitter, and have been known to text in lolspeak. I also go lollersaking, ride in a roflcopter, and have an escape route planned for the impending zomgie apocalypse.

Tell us the funniest thing you saw online?
I spent way too much time “researching” this question and have decided it’s impossible to narrow it down to just one, so I’m going to list five that come to mind. Auto-Tune the News #2, Motherf***ing Parking Ticket (NSFW), Cat vs. Printer, Lazy Town Remix feat. Lil’ Jon (NSFW), and David After Dentist.

If you could take a Delorean back to your freshman year of college but only 10 seconds, what would you say to yourself?
“Go snowboarding. A lot.”

How would you change HTML?
My biggest gripe with HTML is definitely the amount of time it takes for upgrades to be implemented. It is unlike almost every other technology out there. HTML5 includes some amazing advancements, but is slowed down not only by the people creating it, but also by the implementation of all the major browsers, AND the adoption rate of customers. Ian Hickson, the editor of the HTML 5 specification, has estimated that HTML5 will be completed in 2022. That’s right. Thirteen years from now.

What is the best part about working at Imulus?
The best part about working at Imulus is almost certainly knowing that everyday I get to work with a group of immensely talented and passionate people. Not only that, but I get to make a living doing something I genuinely enjoy doing, and something that I can actually see myself improving at everyday.

What’s the problem with radio today?
The biggest problem with radio is that there’s no diversity; every station sounds the same. In their defense, it’s a tough industry to be in these days, but I think they brought a lot of that on themselves. Their attempt to appeal to the lowest common denominator has resulted in there being a lot of stations with zero personality. When a new station emerges that tries to do something different, they are often short-lived. Indie 101.5, for example, had great programming, but has recently brought their broadcast online and been replaced by The Pole: Stripper Radio. Sounds like a winner.

If electronic devices stopped working, how would you cope?
I think I would cope pretty well. I could be wrong, but I feel most people who work very closely with technology have the occasional urge to leave it all behind and disconnect permanently. If I were ever in a scenario where I could no longer do the work I do I’d probably find some remote part of the country to move to and find a job working outside. Although I would certainly miss working on the web.

What’s the first thing you do when approaching a new project?
I do not have one specific thing I do when approaching a new project, but I’m beginning to realize there are many things I should be better at doing during the initial phase of a new project. Specifically I am trying to be better at foreseeing how the finished product will work from all points of view: from the view of Imulus, the client, and the audience. The specific tasks I take to achieve this is constantly evolving.

Name the best prank pulled at Imulus.
Unfortunately, I wasn’t working for Imulus at the time of what many refer to as the best prank, but there have been some good ones since I started. I was particularly fond of the prank I’ve always wanted to pull myself. I think it worked out pretty well.

Jun10

Keeping up to day with TextMate tips

TextMate rules!My long time friend Erik Reagan (@ErikReagan) runs a website by the name of TextMate Tips. It’s a useful resource for keeping up to date with interesting TextMate hints, shortcuts, and utilities. Further, the site is open for contribution and is always on the look out for new and interesting TextMate uses.

If your a fan of TextMate you should definitely check it out and maybe give it a bookmark if you’re feeling extra generous.

Apr22

Who is Imulus?: Interview With John Skufca. Technology Director / Co-Founder

John Dreaming

If Imulus were a person, what would its personality be?
They would be someone who constantly tries to excel and push to better themselves. A person who would be a professional but also not have a bug up their ass. They would be so excited about their work, they find it hard to fall asleep at times.

Star Wars or Star Trek?
During my childhood years, it was all about Wookies, lightsabers, and X-Wing fighters. At 5 years old, my Dad and I soldered LED’s all over my Millennium Falcon. Although, as I got into high school and my love for science grew, I started watching Star Trek:TNG and also got hooked on the movies with the original cast. It’s amazing my brain has enough room for programming languages, OOP concepts, and database schemas with all the obscure, nerdy knowledge in there. KAHHHNNNN!!!

What is your most embarrassing story?
Blowing myself up. During my early part of college, my friend and I were filming a scene for a computer game we were making. I had strapped a home-made black powder charge to my chest to simulate a gun shot. We had put a little too much powder in the charge and after depressing the button to ignite it, a fireball the size of a beach ball fired from my chest. I wasn’t on fire but I went against everything I was taught by running around, arms flailing, trying to find water to dump on me. After the fiasco was done, my chest and neck looked like they had a bad sun burn. Thankfully, my Mom was there to comfort the wounds and the ego. The most embarrassing part is the video still exists out there. Somewhere.

If money were no object, what would you do with your life?
I would try to build a house. I know a little bit about most aspects in house construction but it would be nice having the money and time to figure it all out. Another area I would like to dabble in is creating independent computer games. Like game development, I’m ecstatic to be in a field where so many talented people can come together to produce a product from the idea phase to seeing it fully functional on screen. Or I can combine the two and build an old school arcade cabinet and then sleep on a hammock at the beach all day long.

What do you do for fun?
Listen to dirty talk radio with my headphones on causing my co-workers to look at me weird as I’m laughing out loud. Recently, I have found a love for cooking. My wife helped me discover that the art of cooking is really the science of chemistry. Someday, during some free time, I need to watch the dozens of Good Eats episodes saved on my TiVo.

Favorite Programmer joke?
“Keyboard not found. Press ‘F1′ to RESUME.”

Bonus joke. Warning… its very dirty:
4920736177206d79206769726c667269656e6420666f6f6c696e672061726f756e6420776
9746820616e6f74686572206775792e204920616c6d6f73742066656c6c206f66662074
6865206c6164646572206a65726b696e67206f66662e

What does curiosity smell like?
Smells like victory. Humanity has grown because we are, by nature, curious. We have made some pretty amazing discoveries because we were curious. I feel curiosity is how we learn where we are, where we’re going, and why we’re here. Answering 2 out of the 3 is a good average.

What made you decide to co-found a company?
My father was a big entrepreneur and I inherited that particular gene. Since late high school, I’ve started three businesses. Third time is a charm. When you start a company, you have to know your weaknesses and you need people to complement your strengths. My two previous businesses did not have the diverse talent needed to be successful. Given the opportunity to work with two of the most talented and well-rounded people I’ve met was a no brainer.

In one word for each, describe the 3 owners.
I have one word for all three:
Passionatededicatedinspirational (that’s a word right? I’m using it in Scrabble.)

What are you afraid of?
I’m afraid of losing a finger. It’s a little selfish I know, but I feel my productivity would suffer dramatically. When I code, I use a lot of keyboard shortcuts and it is second nature for me to use all my fingers for production. It would take awhile to re-train my body and mind to get back to the speed before an accident like that. That is why I never go bowling; those ball returns are dangerous!

If there was one place in the world you could travel, where would it be?
Tokyo, Japan. I would love to learn Japanese and visit Tokyo one day. Being a huge gadget man, what better place to visit!? It’s a country I find amazing with its culture and society constantly trying to better themselves. It seems like a beautiful place where architecture blends both ancient and modern ideas.

If you could sit in a bathtub full of something, what would you chose?
I first thought a bathtub full of money, but I’m sure the Secret Service would arrest me for mutilation of national bank obligations. My second option would be a bathtub full of foam. I imagine I would feel like I was floating and that experience would be very relaxing. My bad attempt at weightlessness.

What is your favorite/least favorite part of your job?
The thing I most look forward to is coming to our building and working on cool applications formed from the heads of some very talented people. I love thinking of smart yet simple ways to solve problems. It gets my blood pumping to find a solution and to write an elegant, reusable method for a project. My least favorite part of the job is the random bug. No matter how hard you try to reproduce it, it never shows it’s ugly head until you’ve THOUGHT the bug was annihilated. Then, out of no where, the bug is glowing on the screen, laughing in your dumb face, mocking you the whole time.

What’s your favorite movie?
Terminator 2: Judgment Day. Great sci-fi story with, (back then), state-of-the-art effects. What more could you ask for!

If you were a font, what font would you be? (Yes, this one is for the designers entertainment only. I realize you hate me for this.)
Fixedsys: Simple, down to the point, old fashion, and even funny to some.

Feb9

Who is Imulus?: Interview With Bruce Clark. Lead UI Developer

bruce-omnomnomnomWhat drives you?

Being really good at what I do, staying on the leading edge of the industry, and having an impact on people who see/use my work. Too many people stagnate, if I ever start stagnating I want to be taken out back behind the chemical shed and ended.

When not by your computer, where might we find you on a Friday night?

There’s about a 95% chance I’ll be with friends, a 90% chance I’ll be up past 2 A.M., a 70% chance that I’ll be out on the town, and a 50% chance that at some point during the evening I’ll drink a great glass of scotch. Other possibilities include: beating people at Halo, playing pool, chess, or watching amazing movies like No Country For Old Men.

What’s more important loyalty, honesty or passion?

If it’s just one thing I think it has to be honesty. At least if someone is honest you know right away if they will be loyal or not.

Still I’d say ideally it’s a blend of all three. Passion is incredibly important to me, and therefore I need to see it from other people from time to time. If they don’t have passion chances are I won’t associate with them for too long.

If you were a rockstar, who would you be?

I’d like to say Zack de la Rocha from Rage Against the Machine. He has a cause, he has a path he wants to follow, and he does it. The truth though is I don’t think many people could be Zack, even me, so I’d have to say Jon Bon Jovi. He seems nice, he’s into sports, and he knows how to rock it out.

Barack Obama, Steve Jobs, Tiger Woods or John Gruber? Which would you most want to grab beer with and why?

Steve Jobs terrifies the shit out of me. And while I’d love to pick his brain about his approach I think I’d just sit there being nervous. Obama I think I could actually open up to and have a good discussion with. He seems like he’d really listen and take ideas to heart, not to mention tell you when he thinks you’re wrong.

Barack is definitely my choice.

If Internet Explorer was a human and you were alone with it in a room for 30 minutes what would you say or do during that time?

There’s a very very high possibility that after I got the limbs off I’d eat them. Except IE8, I assume IE8 would join me in the feast.

Your bachelor pad is on fire, what are you grabbing as you leap out the window and race down the fire escape?

iPhone. It’d be the fastest way to get ahold of people and figure out the situation. Plus think of all the great tweets you could write.

“My house just burned down, fucking crazy. Want to grab a burger? – twitpic.com/holyfire”

*note: if I had a dog I’d take her instead of the phone.

What rules or general principles guide your coding or interface design?

I guess I look at the whole experience and what I really appreciate when using something. Sometimes you run into a site or concept that is just mind blowingly good and you think to yourself, “wow, someone really refined and nailed that, I should strive to do that in what I do.” That doesn’t mean I always achieve that level, but I’m constantly trying.

Give me a joke. Don’t hold back.

How do you make a baby cry twice? Hahaha, just kidding I’m not going to give that punch line on our blog.

Instead let’s go with: “How many Chuck Norris’ does it take to screw in a lightbulb? None. Chuck Norris likes to kill in the dark.”

What 3 things are you afraid of?

  1. I’m terrified of death. Hence the reason I don’t drive with Scott often.
  2. I’m really afraid of losing a coding finger. Especially to the garbage disposal.
  3. I’m afraid of Kat’s raptor impression.

What 3 things could you improve on?

  1. When I learn the most is when I do things on my own and don’t have people show me. I get too reliant on people around me from time to time.
  2. I could be more conscientious of how my actions and approach effect other people. I think I know how I’m perceived but I’m sure I miss things.
  3. I’d like to be more well read in other areas besides geek topics. I find people with a vast knowledge and cultural background to be fascinating.

What 5 artist are on your iPod right now?

  • Rage Against the Machine
  • Michael Jackson
  • Dj Vernimal
  • Brian Transeau
  • Abdominal

If I could grant you one super-power what would it be?

The ability to read and grasp information 200x faster than I do right now.

What current trend just baffles you?

Girls wearing abnormally massive sunglasses. What is the fucking deal with that? Do they think covering their entire face with fake plastic gold plated glasses is attractive in any way?

Fill this in. I can’t believe I didn’t get tossed in jail for ____?

Using the blink tag.

* you could also replace blink tag with “spacer gif” and it’d be equally as hideous and revolting.

If you were a pro-wrestler, what would be your name?

It’d definitely be Pyrodeath. I mean… there’s no way I couldn’t name myself Pyrodeath. I’d light my pants on fire right before my final move of the match. It’d be seriously epic.