What would you write for the first post for your business? My first instinct is to write about the product, and the market for it. I’m not going to do that here though. That’s covered in the about page for the site. Really, if I need to spend a lot of time writing about what the product is for people to understand it, then I’ve failed. 

You may notice I’m using “I” a lot. It is true, I’m just one guy working on this project right now. That’s also touched on the about page.

No, if I’m launching a tech company in the near future, I’m going to talk about the tech behind it. I made several blog posts on my personal site as I worked on Unscatter.com, touching on choices I made, or thought I was making. Now that the product is into development as far as it now, I can finally touch on what the final choices. So, here’s the break down of what’s behind Unscatter.com, and how it works.

Rackspace Cloud Hosting. Currently www.unscatter.com is actually single cloud machine at Rackspace, the smallest 256MB RAM, 10GB storage one. With only a few hits a day, it’s more than enough. As I need to scale, I can do so within their cloud, and when I finally reach the point of needed dedicated hardware, I’m comfortable that I’ll be able to use Rackspace for dedicated server hosting as well.

MongoDB. I looked at a lot of storage options. I finally settled on MongoDB because it was simple to use. It’s more than just a key/value NoSQL hash, and not just a document oriented storage. It has indexing providing support for more complicated queries, and will include built in sharding support for horizontal scalability in the near future. Also, it’s easy to pick up, and support via IRC and Google Groups is great, not to mention there’s the option to purchase commercial support.

Memcached. Honestly, this may be phased and replaced by MongoDB. However, right now it’s in use because of it’s speed and proven performance and reliability. I may be dating myself a bit here, bit I actually remember when Livejournal first announced it.

Tornado. Truth be told, I tried other options after I had the site half built with Tornado. I eventually went back to Tornado because it really was the quickest way for me to build the project. It’s performance in incredible, and the included framework made a lot of the functionality required for Unscatter.com extremely simple to implement. Python still frustrates me at time, but the shortened development time achieved by using Tornado can not be beat.

Nginx. I’ve long been an Apache guy. As an Apache guy, I also know the limitations and overhead that come with Apache. Nginx immediately solved some issues I was looking at with Apache. Nginx primarily acts as a proxy to the Tornado application servers, and eventually will take a larger role in serving static content, and web acceleration. I looked around a long time, and like other choices above, I found Nginx to be the simplest solution to learn and implement, in the least amount of time.

YUI. I’m using version 3 of YUI. Quite simply YUI continues to the best first choice I have for javascript frameworks, when I want to retain complete control over design. I’ve used Jquery on a lot of sites, but those have always felt like mixing and matching widgets to create a web page. For Unscatter.com, I needed a framework that would allow me to really customize and fine tune the application. This is what YUI provides.

Blueprint CSS. As much as I love YUI for a javascript framework, I could never get a good grip of it’s CSS. Blueprint on the other hand is what I start all my designs with. I really have found it to be the easiest way to implement css grids, and it includes other nice resets that provide a very professional looking view.

Bing. Bing provides the web and news results for the internet search, and the domain specific search results for the custom search portals. There are 2 advantages to Bing that I found. It’s API really is unlimited and free, and it has an advertising program I can apply to. Yes, there will be advertising in the search results at some point.

Facebook and Twitter. Sorry to lump these two together, but really they currently are the defacto pair to get an idea of what people are talking about, and where most businesses are putting a focus on using. In the future support for other sites will be added.

Youtube. Similar to Facebook and Twitter, Youtube is simply the biggest video sharing site by far. As lots of businesses use Youtube for their video hosting, it only made sense to include support for it. With the option to search Youtube by newest uploads, rather than relevancy, it also allows Unscatter.com to provide an even fresher perspective of search results for the internet search.

Tumblr. How great is it that not only can I get free hosting for the blog at Tumblr, but I can point a domain at it and set up other static pages. If I want to, I can even implement Google Analytics, and Adsense too! I’m a big fan of Tumblr and what they provide.

This stack provides Unscatter.com a large degree of flexibility. I can add small servers or cloud machines as traffic goes, the only single point of failure at the moment being the nginx servers. I of course have ideas of how to solve that problem as well, but that’s something to be touched on later, when the business is in the black and able to afford the solutions necessary.

As you can see, Unscatter.com really is standing on the shoulder of giants. In the future it may have to grow more appendages of it’s own to better support itself, but I also believe this is a great testimony of how so much can be done by using resources that other organizations freely share. Unscatter.com has already been described as “quite the mashup”, which I believe is an accurate description of it’s current state. However, in the future, I intend to make Unscatter.com more than just a mashup, but that’s neither here nor now. Thank you, and enjoy the website.

  1. unscatter posted this