Building large scale social applications

In the few past months I have had a pretty amazing and new experience while working on the project of a virtual online city – a social web system, which was challenging in many ways.

The idea of this virtual city was to create a universal place for people to communicate, share, and experience online in enjoyable and “real life” manner. There were several big challenges throughout the project lifecycle.

  • At the very beginning, it was a difficult job to properly analyze and prioritize a large number of business ideas and requirements that the client and Wildbit came up with. The issue was that many requirements were something like “create tools that facilitate online friendship and increase its value”. It says nothing about what system functions are realized by that suggestion. And this way, a big job has been done to transform the ideas and requirements to a set of main site features, which were sketched on wireframe prototypes. The resulted “big-picture” allowed everybody to get a feel of an “essence” of the future system. The sketched features determined the scope and boundaries of the system and allowed Wildbit to estimate the project time frames for design and implementation stages.
  • The next big challenge concerned the use of the latest “web 2.0” technologies to deliver an extremely interactive user interface, seamless application workflows, and light-weight design compatible with web standards. A lot of specific JavaScript effects, that made the application attractive and appealing for users, also produced multiple visual glitches and led to difficulties in design and code. Wildbit successfully recovered from these issues by applying great JavaScript libraries, such as Prototype, that supported a bunch of visual effects and worked stable on many versions of widely used Internet browsers.
  • On the implementation phase, the goal was to design a scalable, secure and robust back-end architecture that allowed enhancing the system with new features later, while providing good system performance and stability to a large user base. To fulfill the requirements above, Wildbit decided to use the ASP.NET 2.0 platform and MSSQL 2000 database. One of the implementation challenges was to create a fast working search engine to search the content on the site by tags, titles and other text data fields. Having spent about one week on performance tests, Wildbit decided to use the built-in MSSQL full-text search engine, that allows to search text data in a more productive way than the use of conventional SQL selects with the LIKE predicate.
  • One of the final challenges we faced on the project was continuous site improvements and adjustment that resulted in small business logic modifications. The issue is similar to what we described in one of our earlier blog posts. Anyway, the experience Wildbit got while refining the site was mutual. Wildbit learned a lot from clients about why these modifications are worth the effort and, in the same time, instantly shared our own suggestions. This way, it was a phase of “post-analysis” – the realistic analysis of the project that was implemented and being prepared to launch.

While working on the project, we maintained constant communication with the client, which saved the project from misunderstandings. This “instant client feedback” and interim client revisions helped to naturally respond to the challenges above.

An ample blend of cool business ideas and latest web2.0 technologies led to crafting a very powerful, stylish and appealing web-system that, I hope, will challenge the market of social applications.

Comments

Our products