Interesting answers on Stack Overflow from July
At “my new job”:http://blog.stackoverflow.com/2010/06/welcome-stack-overflow-valued-associate-00008/ I have been looking at better ways of highlighting recent interesting answers. Here is a list of 10...
View ArticleHow I learned to stop worrying and write my own ORM
UPDATE Dapper is now open source A few weeks ago we started investigating some performance issues at Stack Overflow. Our web tier was running hot, it was often hitting 100% CPU. This was caused by a...
View ArticleA day in the life of a slow page at Stack Overflow
In this post I would like to walk through our internal process of tuning a particular page on Stack Overflow. In this example I will be looking at our badge detail page. It is not the most important...
View ArticleProfiling your website like a true Ninja
After a mammoth effort by Jarrod Dixon the team’s production profiler is now ready for an open source release. http://code.google.com/p/mvc-mini-profiler/ Let me start with a bold claim. Our...
View ArticleAutomatically instrumenting an ASP.NET MVC3 app
Update: There is now a nuget package that will take care of wiring this up automatically see: http://nuget.org/List/Packages/MiniProfiler.MVC3 MiniProfiler seems to have upset quite a few people. One...
View ArticleOh view where are thou: finding views in ASP.NET MVC3
WARNING Pretty much all the results / conclusions here are off. Turns out ASP.NET MVC has some pretty aggressive caching that is disabled in certain conditions: protected...
View ArticlePorting LINQ-2-SQL to Dapper for great justice
I got this email over the weekend: I created the page which is extra embarrassing. Mister performance created a big fat performance mess. It is not the most important page on the site, it is only hit a...
View ArticleExtending the ASP.NET error page (show me the SQL edition)
ASP.NET has the infamous yellow screen of death. Rumor is that it was written by “The Gu” himself. It is an incredibly useful page that allows you to quickly and easily determine why stuff went wrong,...
View ArticleSpam, bacon, sausage and blog spam: a JavaScript approach
Anyone who has a blog knows about the dirty little spammers, who toil hard to make the Internet a far worse place. I knew about this issue when I first launched my blog, and quickly wired up akismet as...
View ArticleOptimizing ASP.NET MVC3 Routing
A few weeks ago we started noticing a fairly worrying trend at Stack Overflow. Question:Show, the most active of pages on Stack Overflow, started slowly trending up on render times. This did not happen...
View ArticleIn managed code we trust, our recent battles with the .NET Garbage Collector
Recently Marc blogged about some performance optimisations we implemented at Stack Overflow to work around some Garbage Collection (GC) issues. This post evoked many emotions and opinions both on his...
View ArticleThat annoying INSERT problem, getting data into the DB
One of the top questions in the Dapper tag on Stack Overflow asks how to insert records into a DB using Dapper. I provided a rather incomplete answer and would like to expand on it here. Many ways to...
View ArticleStop paying your jQuery tax
Reminder, script tags block rendering It is common advice to move all your external JavaScript includes to the footer. Recently, the movement for fancy JavaScript loaders like ControlJS, script.js and...
View ArticleMiniProfiler 2.0, almost out of the gate
Nine months ago I blogged about our MiniProfiler open source project. I used some hyperbole in the announcement blog. I goaded others to port MiniProfiler to their favourite web stack and accused us of...
View ArticleWhy upgrading your Linux Kernel will make your customers much happier
Sometimes we hear that crazy developer talk about some magical thing you can do that will increase performance everywhere by 30% (feel free to replace that percentage with whatever sits right for you)....
View ArticleSam's ultimate web performance tool and resource list
While preparing for my talk at Codemania I started filling my slides with links, clearly not something that scales. So, instead, here is a big list of interesting tools and resources that can help you...
View ArticleTesting 3 million hyperlinks, lessons learned
There are over 3 million distinct links in the Stack Exchange network. Over time many of these links rot and stop working. Recently, I spent some time writing tools to determine which links are broken...
View ArticleLeaving Stack Exchange
For the last 2 years I lived and breathed my job at Stack Exchange, now I am moving on. It has been an awesome ride, I wanted to recap on some of the things I did and perhaps explain why I am moving...
View ArticleMiniProfiler Ruby Edition
About a year ago we released a MiniProfiler for .Net. Ever since, I have been wishing for a Ruby port. It seems I was not alone as this Stack Overflow question attests. I am very happy to now announce...
View ArticleMobile mapping is not a cartographic problem, it is a search problem.
Much has been said about the absolute failure of iOS 6 in the mapping department. Apple took one of its killer features in iOS and destroyed it. Completely. Tim Cook is very clear about the reason the...
View Article