ASP.NET AJAX Showcase Interview

An interview with the creators of the site “Lottery Post”

What is Lottery Post?

Lottery Post is a popular online community for lottery enthusiasts, with an active forum, daily lottery industry news, a huge lottery results database, and a unique prediction system in which lottery players can try out prediction methods and track them over time against actual results.



Can you describe your business?

Lottery Post is a community web site for people who play the lottery. The center of the community is its forums, containing many years of lottery discussion topics. Other activities include making and tracking predictions (there are over 120 million predictions currently), nearly real-time lottery results (including statistics and a powerful lottery results search engine), daily lottery news, blogs, lottery systems and wheels, and lots of other features that lottery players enjoy.

Lottery Post also offers business-to-business services, such as lottery results data feed service and lottery industy consultancy.

Why did you choose ASP.NET 2.0?

Lottery Post was originally developed using classic ASP. As the site grew - and the volume of traffic grew - it became essential to begin migrating to a more robust, maintainable platform. ASP.NET was the natural progression, because in addition to being able to construct a web site that met all of my technical needs, it also allowed me to run both classic and ASP.NET pages within the same web domain - even within the same folder structure - so I could migrate the site over time.

I started the migration in early 2005, but purposely held off on major redevelopment until November of that year, when ASP.NET 2.0 debuted. To this day, several pages still use classic ASP, and after two years of running in this manner I can safely say that it has been a success. That in itself is a testament to the flexibility and power of the environment - and to the fact that I made a good decision to go with ASP.NET 2.0.

How did ASP.NET AJAX help you improve your user experience?

The improvement of user experience was immediate and profound! Of course there are all the benefits that people typically talk about with an AJAX interface: no page flicker, immediate response, desktop application-like interaction. But for Lottery Post, ASP.NET AJAX provided a vast improvement in user experience beyond the ordinary interface improvements.

The underlying factor propelling the impact of ASP.NET AJAX on Lottery Post members' experience is that a high percentage of the membership is utterly non-technical. This observation is not a criticism of the users, but rather an important recognition that all Web site owners should consider when building their sites. Many lottery players feel more at home with a paper and pencil than they would with a powerful spreadsheet, and I don't fight that. My job is to deliver information and functionality to my members in a way that is so comfortable and intuitive that they cross over the technical barrier to use it.

What ASP.NET AJAX features did you take advantage of?

I use just about every aspect of ASP.NET AJAX, including UpdatePanels, AjaxControlTookit controls, direct use of the client library (types, methods, type extensions, DOM extensions, and event extensions), custom script and extender server controls, PageMethods and ScriptMethods called from the client, as well as low-level access to server resources via the WebRequest model. I’m really excited about some of things I see in the Futures pack, such as client-side data binding, and I intend to put those things to good use as well.

As I see it, the entirety of ASP.NET AJAX has so much more than many people realize, and when books such as ASP.NET AJAX Programmer's Reference (Dr. S. Khosravi) and ASP.NET AJAX in Action (A.Gallo, D. Barkol, R. Vavilala) educate more and more people about the depth of the offering, the need for external libraries will be more targeted and rare. To illustrate the point, the only other client-side library used by Lottery Post is the TinyMCE rich text editor (a fabulous client-side editor, by the way).

What was the ASP.NET AJAX development experience like?

I started experimenting with ASP.NET AJAX when the first "Atlas" beta was released. Like many who used it, I was immediately hooked once I saw how easy it was to "AJAXify" a page by wrapping a few controls with an UpdatePanel. I’d go so far as to say that Microsoft has the most compelling first-use experience of any AJAX development product on the market.

Of course, everything is not as easy to use as the UpdatePanel, and with so many ways to program any given AJAX scenario, it is incumbent upon the developer to understand and choose from each of the possible methods. Some of the ability to choose the right method comes from reading blogs and books like those mentioned above, and some comes from experience.

The best part about developing with ASP.NET AJAX has been that no matter which approach I decided to take for various scenarios, the product had more than enough power and flexibility to do it. In fact, I often felt that I was just scratching the surface.

What other Microsoft technologies does your site use?

The Lottery Post Web site is hosted on a dedicated server running Windows 2003 Server with IIS 6. The Web server participates in a private network of dedicated servers, all running Windows 2003 Server, including a domain controller, a database server, and a mail server. The database server uses Microsoft SQL Server 2005.

Lottery Post was developed using Visual Studio 2005 Professional on Windows Vista 64-bit Ultimate Edition.

Anything else you want to add?

Lottery Post currently receives more web traffic than 84% of the official government lottery web sites in the USA, Canada, and UK, and more traffic than any other independent lottery web site. I give Microsoft ASP.NET and related technologies a lot of credit for helping to keep everything running smoothly, given the huge traffic spikes that can occur, as well as the high level of constant activity inherent with any popular community site.

My blog contains articles written about technical solutions I develop during the development of Lottery Post. It is located at http://blogs.lotterypost.com/speednet. An RSS 2.0 feed is available.

Microsoft Communities