Updated Oct 31 2020 :: by Alex Yumashev

In February 2013 Amy Hoy has shut down "Charm" - her web-based help desk app. The primary reason for the shutdown was high availability requirement (since downtime is not an option for a helpdesk app) and the product becoming too demanding in terms of server architecture and monthly bills. To sum up - it stopped being fun and became an engineering PITA.

But wait, "monthly bills"? I'm sure they were using mostly open-source stuff. They don't need some stupid Windows licenses or a Microsoft SQL Server right? So I assume, the majority of their bills was coming from bandwidth and the servers. The Linux servers. How much could that be?

Turns out their server bills were close to a whooping $4,000 a month.

What does this have to do with Microsoft?

Unlike the cool startup kids building stuff with "Socket.io on top of Node.js with MongoDB and a Rails layer", our startup is mostly Microsoft-based. To be honest, I do regret that sometimes... I wish I was a cool kid too - hacking stuff in XCode, doing Rails development... In fact, we do try all these tools for our experimental projects. But when it comes to a commercial product - after hours of fighting discussing all the pros and cons we keep choosing Microsoft. Over and over.

I know. "Meh". We're dull. Microsoft. This is so 90s. But...

All our stuff runs on one (1) server

You heard me. One server is all we need. "The stuff" includes:

  • This very website - in-house developed SQL-backed CMS with a software licensing system and a shopping cart, handles about 15k daily visitors, peaking up to 110-150k daily visitors if something on this blog goes "viral".
  • Our SaaS Help desk app - hundreds of companies (with hundreds of employees each) use it on a daily basis. We're processing more than 5k new support tickets every day. This app uses the same code-base as our "on-premise" helpdesk ticketing system
  • Our SaaS CRM app - less heavily used, have to admit, but still a couple of dozen big customers
  • Our Live Chat solution - the "live support" SaaS app. I should probably mention that the app uses "SignalR" - a websockets-framework that relies on lots of persistent concurrent connections (as opposed to "lots of requests per second")
  • The "HeatTest" project - before it was shut down due to low cash flow. It's a "CrazyEgg-like" heatmap analytics tool. Now, this one was eating tons of memory and CPU. Because when our server was building a heatmap, it was spawning actual "virtual" browser instances in memory, to capture a screenshot of a webpage and calculate all the DOM-element coordinates. Actually, we've built a pretty cool technology... But that's not the point.
  • Database servers for all of the above
  • File-storage for all of the above - since most of our apps offer file-attachments in some way
  • Number of side-projects - Teamdoer.com, Twitgrade.com, Keyfreeze.com, Ncode.me and other stupid things we build for fun.
  • Lots of background stuff - FTP, SMTP, HTTP, Firewalls, Search-indexes etc. etc.

All this stuff fits on one server. That costs us about $200 a month. By the way, that's Amazon - with it's pricey traffic, storage charges and ridiculously slow hard drives. A "traditional" VPS would cost about $90/mo and would probably run twice as fast. Again - one small server with 8 gigs of RAM powers up my whole company *.

Apart from the above - why MS?

  • Because I love C#. And all the cool tools like Dapper or Nuget etc. Unfortunately, C# hasn't gained much traction within the open-source community but I still love the language. And we do our best to change the former by publishing and contributing to a number of open source projects.
  • Because "MS is expensive" is a myth. Becoming a member of their "BizSpark" program literally provides you with all the software free of charge. Entering BizSpark is easy and costs nothing. The only MS product we paid for - is the server OS, and only because this cost is a part of Amazon bills. Never paid a penny for my team's Windows licenses or Visual Studio... Oh, by the way
  • Because of Visual Studio - I personally believe VS is the best IDE on the market today (just my humble opinion, no intention no start a holy war here).
  • I could go on, but...

But most importantly, because the customer doesn't give a shit. My clients don't care what I'm based on as long as it works. So when choosing a platform for your great idea - just go with whatever platform you're comfortable with and start hacking, stop wasting time.

The only thing I dislike about Microsoft recently - is their CEO is that MS keeps shooting itself in the foot (things like Windows 8... oh, don't make me go there). Let's just hope it won't shoot itself in the head one day.

*To be honest, we have switched to a 2-server configuration about a week ago, but only because it's easier to back things up and perform the "2008-to-2012" Windows migration, but the above config was running literally for years. Also, we do have a tiny Linux instance that schedules Amazon backups via the API.

P.S. Aka "what if your server goes down"

That's the reason we use Amazon. We have hourly backups, daily snapshots and everything else needed to spawn a clone-server in 5 minutes.


MS is no better than Linux, just like Linux is no better than MS... Is was not my intention to start a holy war in the comments. All I'm saying is that MS is a viable option for startups, just like open-source platforms. Both MS/Linux are just tools, pick one that works for you, that's it.

'My startup is Microsoft-based, here's why' was written by Alex Yumashev
Alex Yumashev
Alex has founded Jitbit in 2005 and is a software engineer passionate about customer support.

Subscribe comments Tweet

Brought to you by

Help desk software

Jitbit Helpdesk