2. My Basic Data
• My name: Wei Xia
• My gender: male
• My hobbies: quite a lot
• My date of birth: 1982-8-27
• My constellation: Virgo
• My degree: Bachelor, CS
• Height: 176 cm
• Weight: 66 kg
• Health: excellent
• Blood type: O
• Marriage condition: married
3. 2000 - Entering UESTC
• UESTC
– University of Electronic Science and Technology
– Located in Chengdu, Sichuan, P.R.China
– One of the best colleges in south-west China
• College entrance exam
– 570, the second highest score in my high school
• Start to learn programming
– Pascal (a course in school)
– HTML (built my first homepage website)
– Java (tried to build a dynamic web page)
4. 2002 - Entering Technical Office of News Center
• A small team to build and maintain the website and network
– http://www.news.uestc.edu.cn/
• In the 2nd year I became the technical director
• Technologies we used there
– ASP/VBScript (before 2002)
– ASP.NET/C# (from 2003)
– XML + XSL rendering
– Web Service interface
• Technologies we learned there
– C/C++/C#/XML/everything...
5. 2003 - The Graduation Project
• A O/R mapping tool to generate class wrappers for database
• Most DB operations won't need SQL querying
• Tables and views are mapped with strong typed classes
• Supported database
– SQL Server
– Oracle
– MySQL
– PostgreSQL
• Supported language
– C#
– VB.NET
– JScript
6. 2003 - The Attempt to Start a Company
• An American investor wants to build a online C2C shopping
system like today's Taobao in China
• We built a small team
– I'm a PM and major developer
– With a UI designer
– Plus a junior tester
• Technologies used
– ASP.NET, SQL Server, XML/XSL, customized protocol based on HTTP
(for bank interface), etc.
• After 6 months of work the project finally failed due to
– At that time I was too young to manage a project
– The investor underestimated the complexity of the shopping system
7. 2004 - Microsoft Community Star
• In 2003~2005 I spent a lot of time in CSDN (China's biggest
developers network) to discuss technical problems
• I also helped thousands of people to solve their technical
problems in the forum
• In 2004 Microsoft elected me
as a Community Star
• In 2005 & 2006 Microsoft
elected me as a MVP (Most
Valuable Professional)
10. 2006 - Translated a Book "Enterprise Service with the .NET Framework"
• A book to introduce COM+ (Enterprise Service) in .NET
• English version written by
– Christian Nagel
• Chinese version translated by
– Wei Xia (major translator)
– Xuegen Jin (reviewer)
11. 2008 - FDelta Binary Differ Tool
• Problems to solve
– Replicate large amount of data (GBs) between multiple sites across
different countries on limited network bandwidth (KBps)
– The data is usually product builds which update daily
• Approach
– Implement an binary diff algorithm to calculate differences (delta)
between different versions of data in binary level
– Base data is needed to copy once. Later only delta is needed to copy
over network
– New versions of data can be assembled with base data and delta
– Replication performance is improved 5-10 times in this way
13. 2010 - Code Merge Tool
• Problems to solve
– Some code (millions of lines) is wrote upon a base layer (millions of lines of
code), however the base layer is significantly changed (30%+ API re-write
with different signatures)
– The team needs a compilable code to do manual merge process
• Approach
– Write a compiler front-end like analyzer to parse out references to base
layer and inter references inside the new layer
– Comment out all code in new layer which has invalid reference to base
layer
– Comment out all code which has reference to commented code
– Now the code can compile, although cannot run
– The reference tree becomes a map to determine merge sequences
– Hundreds of human-month efforts is saved
15. 2010 - DevTest Cloud, a PaaS solution
• Turns Microsoft development server & tools as a cloud platform
• Combines VMM 2008 R2, SharePoint 2010, and TFS 2010 together using
DDTK toolkit, Hyper-V API, TFS Object Model, and SharePoint API, into
single web interface (ASP.NET MVC)
• Multi-tenant/project/user/VM concepts
• Designed for high security projects where developers can perform coding
work while can't take code out of office. E.g. outsourcing projects
• Testers can use VMs to do test work (Test Manager & VMM integrated)
• PMs can read project reports via web (TFS Report & SQL Reporting Service
integrated)
• Billing system
16. 2011 - CloudApp, a SaaS solution
• Delivers desktop software in cloud way
• Based on Microsoft RemoteApp technology but overcomes most of its
disadvantages
• Clustering support, theoretically the number of cluster nodes is not
limited at all. Load balancing is implemented too
• App profiles automatically roam between cluster nodes (not AD user
profile roaming)
• User can access files from local hard disk or server storage (cloud storage),
or both - upon administrator's settings, keeping transparent experience
(not using tsclient namespace)
• User can request software on a web page, and track usage on the web
page too
• Upgrading a software is as easy as close and reopen apps, which can be
done in several seconds
• IME support
18. Hobbies besides Programming
• Reading books
– Technologies, history, psychology, etc.
• Playing basketball, billiards, badminton, ping pong, etc.
• Swimming
• Travelling around the world
• Computer games
– Quake 3, Starcraft, Age of Empires 3, etc.
19. Great People I like
• John Carmack, id Software
– Who created the Quake 3 engine and game
• Steve Jobs, Apple
– The ultimate genius of art, technology, and business
• Ma Yun, Alibaba
– Who created Taobao, the biggest C2C platform in China