My First Application for Windows Phone 8

by Dmitry Kirsanov 1. September 2013 16:33

It finally happened - I am releasing my first application for Windows Phone 8. And Windows Phone 7.1, for a change. Taking into account the average (in all meanings of that word) quality of applications in Windows Phone Store, I should be proud of myself.

If, by chance, you own a Windows Phone device, and in need of a currency converter for Windows Phone, I highly recommend this app, as it’s the most advanced one in the store at the moment, and will become even more useful in time.

Here are the few images of it that you can also see at the store:

wxga1 wxga2 wxga3 wxga4

I really like how it looks and works so far. Planning to release its Windows 8 analogue in a few days.

If you are planning to give it a try, let me know what you think and what else you’d like to see in it. Your feedback is important!

Restoring Access to Microsoft SQL Server

by Dmitry Kirsanov 26. August 2013 13:29

As a note to system administrator – what to do, when your one and only administrators account is locked on your SQL Server.

You need to perform 5 quick steps. More...

A short note about using Windows Updates

by Dmitry Kirsanov 16. August 2013 00:00

On second Tuesday of each month Microsoft releases batch of patches for Windows and everything. Some of these patches require restarts of machine. Sometimes during the process machine can shut down instead of restarting. Sometimes the machine can’t even shut down properly. Yet in many cases production servers have "Install updates automatically" setting turned on. This is a sort of Russian roulette.

Morale: do not enable automatic installation of updates on production servers or machines you can’t switch on immediately.

Creative Ideas for Pond Owners

by Dmitry Kirsanov 12. August 2013 13:09

So, you have a pond. Now, what to do if the fish is lazy to breed? Here is the answer from LinkedIn.

First, let’s see if Bob was looking for Alice in Wonderland. Let’s say, there were 20 different Alices, but not the one he was looking for. Let’s wait for about a month and send invitation from random Alice from the previously displayed list to Bob, and from Bob to Alice. They both will think that they initiated the invitation. But first we need to make sure, that they can’t ask questions before accepting the invitation, so let’s remove that feature.

Yeah, that’s how it works in LinkedIn now. Now let’s hope that Alice is not ex-wife of Bob, or his ex business partner, or even better – a partner of his ex wife.

What happens when you leave your Windows session unattended for days

by Dmitry Kirsanov 11. August 2013 08:33


This is a CPU usage graph of a Windows Server 2008 R2 machine, with all latest patches applied, and Internet Explorer 10 left opened for a few days. It had only two pages opened, both are Microsoft’s own support pages with no active content.

Remote session (RDP) was opened for about 5 days, and every hour Internet Explorer process took more and more memory and CPU, until it took most resources from server.



by Dmitry Kirsanov 10. June 2013 06:00

A few weeks ago I had to install very old software on very old server. And it turned out, that a few libraries for Visual Basic 6 were not found anywhere in the net. The company which made them doesn’t exist for many years, their website was abandoned and purchased by squatters since then. There were some binaries posted at some ancient pages, but most of them led to 404 (file not found) and the authority of the files that I managed to find, couldn’t be verified. I mean – I wouldn’t install such file at production server.

And if you think that such ill fate is only for small and unknown companies – you couldn’t be farther from truth. One of such companies is Sheridan, if you remember such name. They were quite famous in the era of Visual Basic 4, 5 and 6. But the point is – any binary of any company can be virtually lost or extremely hard to find in 10 years from now – at least the specific version of it.

That’s how I came with the


What if, just like the NuGet Package Manager, we would be able to get the binaries from a simple and never changing link, and be sure that this file is not infected and won’t disappear?


Design Language is not Design

by Dmitry Kirsanov 8. June 2013 03:14

Last year I visited event at Dublin’s Aviva stadium, where Microsoft’s principal researcher at Microsoft Research, Bill Buxton, presented a keynote about design. Microsoft Windows Apps team was generous enough to share this video with the world, and I highly recommend it to everyone who wants to understand the concepts and reasons behind the design shift we experience today.

It’s almost 90 minutes, but they might well worth it, despite the quality.

Bill Buxton–Design Language is not Design, keynote at Aviva Stadium, Dublin

Getting Rid of Windows 8 Virtues

by Dmitry Kirsanov 29. May 2013 12:40

I had two problems with my Windows Me 8. At least two which were clearly bugs in operating system and not a usual Dell hardware failure. And seems like both of these problems had the same solution, which potentially should be able to fix some other issues with Windows 8. More...

SQL Bits: Working with AlwaysOn Availability Groups in SQL Server 2012

by Dmitry Kirsanov 24. February 2013 22:23

In SQL Server 2012, we have 4 main options for High Availability: Database Mirroring, Failover Clustering, Availability Groups and Log Shipping. All but Availability Groups (AG) are available in SQL Server 2008 as well. Today we’ll review Availability Groups and how to create and use them.

Before we begin, make sure you understand what is Windows Server Failover Cluster (WSFC). I covered it almost a year ago for Windows Server 2008 R2 and SQL Server 2008 R2, and you’ll need WSFC in order for AG to work.

A few points about Availability Groups to make sure they are what you are looking for:

  • Availability Groups are not share-nothing scalability option. They are using shared storage, such as storage area network (SAN), although it’s not a requirement. We’ll speak about share-nothing scalability later.
  • For AlwaysOn Availability Groups, you need SQL Server 2012 Enterprise edition or higher. Business Intelligence edition or Standard won’t do.
  • AG provide failover with up to 5 readable nodes.
  • AG provide you with something like load balancing option, but AG is not NLB. Also, all nodes can work independently, i.e. you can still connect to them to retrieve information. Only the primary node can change information in the database.
  • AG does not require working in the same IP subnet, but it requires Active Directory domain. This means, that you can have geographically remote nodes participating in one AG, but they must be members of the same AD domain.
    In case of multi-subnet cluster, you’ll have to implement the file replication solution on your file servers to synchronize the data.
  • AG is database-level, as opposed to node-level failover cluster. AG serves group of databases, unlike the simple database mirroring, with 4 replicas instead of one.

Overall, the AlwaysOn Availability Groups are conceptually similar to database mirroring, but provide more advanced functionality and security.


SQL Bits: 8 Most Important New Features In SQL Server 2012

by Dmitry Kirsanov 16. February 2013 07:00

SQL Server 2012

If you are developer, then you work with relational databases as well. And if you work in a Windows world, most likely your system of choice is Microsoft SQL Server.

With every new DBMS release we find something that changes the way we solve common problems in new solutions. SQL Server 2012 is no exception.

In SQL Server 2012, instead of just enhancing the productivity and robustness of the server, Microsoft solved a number of architectural problems we previously had to deal with in our applications when working with SQL Server.

Problems like saving files in databases, load balancing database clusters and simple restoration of data, finally got the minimum viable solution, which should only improve with time.


Month List