Peek a Boo - Mobile Services and Visual Studio 2013 Preview

by Ventsy Popov
It was not so long ago since GA of Mobile Services (and bunch of other Windows Azure goodies) and now Visual Studio 2013 is knocking on our door as well. For those of us who saw how easy it was to wind a well performing backend, let’s say… for instance for Push Notifications, it might be surprising to find out that things could become even easier. Aiming (probably) at relieving developers from the “burden” of having to go outside Visual Studio to do their job, it is now possible to implement our Windows Azure Mobile Service (WAMS) pretty much entirely form the development IDE.


What I wanted to show is just a quick peek at what we can do with the new version of VS… For example:

 “Add Connected Service” 


Wizard helping you define your WAMS specifics


Customize your service in VS


Customize/Interfere JavaScript for CRUD operations


Launch wizard helping you add Push Notifications functionality


Bottom line - we (developers) have an easier and faster way of doing a certain line of our work. Another way of saying it, is - one step higher to being more productive… Not everything has to be complicated, right?

Visual Studio

TF30063 Not Authorized Error

by Ventsy Popov

Has anyone used Team Foundation Service and got to a point where he suddenly is no longer authorized to connect to his projects? It happened to me a couple of times and as frustrating it might be, there is an easy solution I found after digging a little bit into the issue. Here is what I got as a message:


At first, I started wondering if something’s messed up my service URI, but this was not it… I tried to Unbind/Bind my local solution and after a few other unsuccessful similar acts it got me thinking in another direction. In my, case I have one Microsoft Account (previously called Live ID) which I most often use, but apart from it, there are a few others for different needs of mine. Visual Studio “learned” about my last successful login with a Microsoft Account different than the one I use for my Team Foundation Service. Logically this got me nowhere near accessing my projects :). What was an easy trick is to open the web browser in VS (View -> Other Windows -> Web Browser) and log out from my wrong account, and after that, log in with the write one. Then, everything was back the old ways…

My guess is some clearing of cookies/history form the regular browser might do the job as well, but haven’t tested this one to be sure… I hope the above few sentences might save some minutes to someone getting pissed off by the same issue…

My Windows Store Playing App

by Ventsy Popov

Some time ago I started working on a Windows Store cooking app in Bulgarian. I was eager to play a little bit deeper with the new platform from a developer perspective and see how far a got… Now as the result is evident:  (feel free to give some feedback), I decided to drop a few lines with some of the impressions I got during the process of development.

The tools
As many would suspect, nothing is so significantly changed. We have the commonly used IDE – Visual Studio 2012 with the commonly used programming languages such as C# and C++ (along with XAML), and for the more web oriented guys - HTML5 and JavaScript. Of course there are new APIs with new functionalities, but these are the “goodies” to learn after all :).

Some highlights
In my search for new functionalities, there are a few that you might probably find necessary for every other app you develop:

Also, in my case of an app, I have to download the content from a server, which takes some time for the initial loading of the app. In such scenarios it is good to use the so called “Extended Splash Screen” -, in order to give some visual feedback to the user, telling him that the app is still loading.

Apart from the above, this test app of mine is pretty straightforward. It is working in a passive mode (the user is not allowed to add new recipes), but very convenient for the cooking hobbyists to look at their Windows 8 tablet, displaying the recipe they are currently using for a delicious meal :).

Bottom line – with the ready to use templates in Visual Studio 2012 it seems fairly easy to get traction and create a fairly good Windows Store App. Anyone who is curious (itchy) about it – consider it a small challenge… a game if you would, which will help you learn a few new things.


Microsoft | Windows Store Apps

SQL for Developers with SQL Server Data Tools (SSDT)

by Ventsy Popov

Not so long ago, I took part as a speaker in an interesting event – SQL Saturday. It was the first time the event was initiated in Bulgaria and without trying to be definitive, I think I saw quite many people there. I also got the understanding that the organizers are planning to have it next year as well. If anyone is interested in more information, here is a link you can use to dig deeper:

Now having some minutes (and desire), I am writing a few words to share the main highlights from the session I had. My hopes are that this would be beneficial to someone, who did not have a chance to attend SQL Saturday.

Top of mind issues
We started off by evaluating how “easy” or “hard” it is to deal with SQL development, especially if you are an application developer. And here are some conclusions:

·        Databases are stateful entities, i.e. every change should preserve existing data;

·        Moreover dependencies complicate state preservation;

·        Errors are often found at a late stage  - during execution;

·        Application to DB sync is hard;

·        Targeting more than one SQL version is pain.


Some ways out
Moving to some thoughts for a solution then…

·        If possible - be declarative, not imperative (“CREATE” vs “IF EXISTS”);

·        It will be good to have validation and verification in design time;

·        Nice to have same tools whether disconnected or connected;

·        Useful to compare and update different Schema Models;

·        Be able target more than one SQL version;

·        App and DB development into a single IDE;

·        Use Source Repository for DB as well.


How to achieve all this?

To get all of the above goodies you can try-out SQL Server Data Tools: For a developer using constantly Visual Studio it should be quite convenient to have T-SQL editing capabilities in daily heavy used IDE. On top of that some other cool features for DB development:

·        IntelliSense;

·        Validation (platform specific);

·        Code navigation;

·        Visual table designer;

·        Additional language support (i.e. resolving capabilities);

So, check it out if you are into DBs :). It’s worth it...



How I Joined Microsoft's Team

by Ventsy Popov

Some Background
Beginning of summer 2011 I decided I need to make some changes in the professional field, and look for new opportunities outside the company I worked for back then. Although I really valued my colleagues there, and from many of them I learned great deal of things, I felt the need to widen my comfort zone and experience new things. Recently after I made this decision and talked to my boss, I was able to find quite interesting projects to work on (and get paid for :)). For some months working on the new projects I was part of an American company's team. The guys were amazingly professional and punctual (it honestly surprised me!). Things happened with very good coordination and pragmatism... as if the work was done in an effortless manner :).

The Catalyst
But how did all this lead to Microsoft? Well... guys that know me, can confirm that I lo-o-ve participating in community events either as a speaker or just attending. The atmosphere in such places is always energizing and motivating. Not only due to the contents leading to gaining some useful knowledge, but also for meeting new people, having the geeky talks and good laughs on jokes which are quite often more than dull for non-technical people :). On such an event I found out about this opportunity in Microsoft for a guy who should take the role of “Developer Evangelist”. A role which did not speak very much to me back then and to be honest, I looked at with suspicion. Nevertheless, I decided not to overlook this chance and give it a good thought (and also make some research). What followed was my decision to pursue this, and series of different types of interviews... and luckily – my hiring :). In the meanwhile I managed to finish the projects was contracted for around that time.

Where are we at
Now, I am a one-month employee. Still on-boarding, but getting better perception of my responsibilities and taking more and more active part in the team with each day. I am excited that one of my goals would be to help the developers' community (not only Microsoft-centric one) learn all about trends in technologies on the road of each participant to being more effective while having great fun :).

The rest is yet to come as they say :)...

Tags: ,


Office 365 Available in Bulgaria

by Ventsy Popov

Office 365 cloud service of Microsoft was announced to be available in Bulgaria. I quickly went to and checked it up to see what would I receive once I register. It is worth sharing my experience to guys who wonder whether or not to try it out.

Registration Process
It took me 1 minute to fill-in the registration form and then a couple more to wait for the features to be automatically set up for me:

Clicking Around
Once the the environment was set, I had a SharePoint Team site configured for me and could create a couple of test documents with Word, Excel and PowerPoint the same way as I would with these applications desktop equivalents:

I Also got an out of the box email account which could be accessed through a secure (HTTPS) connection:

An out of the box publicly visible site, which content could be easily edited within the SharePoint portal:

And finally I took a look at the administrative panel. Turns out you can add your own domain instead of using the domain name that you received when you signed up. On this custom domain you can host a SharePoint site after making some configuration changes. Along with this you can manage/purchase licenses within this panel, monitor your services health and write to support if you need help:


After having said all of the above what remains untold is probably the value of it... Here are a couple of things that come to mind as a start:
    - Companies residing on multiple locations can easily use this service to have a central place where they can sync their documentation.
    - The ones that do not have an office license (but might still use it :P) can be attracted by the small price (expected to be monthly between 1,79 and 25,50 euro per user depending on the license) and use the office on the cloud.
    - No need to be an IT to support your team portal and email server infrastructure, because it is taken care of for you.
    - No need to be a developer to put a fairly good looking public web site together.
    - Currently there is a trial period and you can register for free.

Oraganization | Office | Cloud Services

Web Platform User Group - ASP.NET Frameworks Comparison

by Ventsy Popov

A couple of days ago a Web Platform User Group meeting was held at Microsoft Bulgaria's office. It was a well attended discussion and I hope also a useful one. The topic was “ASP.NET Web Forms vs. ASP.NET MVC vs. ASP.NET Web Pages” or shortly called “ASP.NET Frameworks”.

Although we were sure the above technologies were already familiar ones, the point with this meeting was to see if we can consider some rules and questions that will help us decide when to use one instead of another. In a very brief way here is what we talked about:

ASP.NET Web Forms
A mature (and the oldest of the three) technology aimed mainly at rapid development, simulating stateful model of the Web. With its postback and event-driven model provides a small learning curve when a windows forms developer should transfer to web forms.

MVC pattern-based architecture of the developed applications. Allows developers to have very fine tuning control over the final HTML. SEO inclined with clear separation of concerns of the system components and TDD oriented.

ASP.NET Web Pages
Have the same full control over HTML as with the ASP.NET MVC case and uses Razor syntax. WebMatrix is a small and free IDE tool for Web Pages completing the whole idea for simplicity of this web development case. The main target here is not using commercial development products when you need to create a relatively small web site for demonstration, education, and in rarer cases commercial purposes.

Here are the full presentation: WPUG_ASP.NET_Frameworks.pdf (540.94 kb) and demos: (3.36 mb)  for more details.

ASP.NET | Presentations

Acquiring Microsoft Certified Trainer (MCT) Recognition

by Ventsy Popov

I am happy to brag about successfully taking the “Microsoft Certified Trainer” (MCT) exam. Although the enrollment process is still ongoing, the rest is paperwork that has yet to be done.

Trying out in a more formal way to see if my presentational skills worth something was a thing that circled in my mind for while. I've always had affinity for presenting on subjects I care about and this was a kind of natural step to take. Here are my tips based on the experience, if anyone might find it useful:

   1. Research from previous exams - ask friends who already are MCTs to share experience, contact Microsoft Bulgaria and get all the information there is about possible dates, requirements, fees, etc.
   2. Choose wisely a topic from an official Microsoft learning course. This should be considered well, because the purpose of the exam would be to mainly show your presentational skills, and not how expertly deep you are in a certain technology. In other words - the harder the topic, the more likely you might get it confused. And the second criteria is to pick something you really have knowledge of, and not start learning it now. The reason – additional questions would be asked to verify your expertise.
   3. After making your choice is the easy part – start reading the materials for the chosen course, so you can get familiar with the structure of the content. I even wrote down some bullets for every lesson in order to know what are the highlights I should not forget to mention.

Day of the exam:
   1. The exam usually takes place in one of Microsoft's certified learning center partners – in my case it was ITCE.
   2. There is a committee of judges who evaluate you, and also - a few students who listen and ask questions from time to time.
   3. Every candidate has to:
        - Present in exactly 25 minutes a lesson he already prepared. Having the last of these 25 minutes reserved for questions.
        - After that, judges pick a random lesson from the whole course and give you about 5 minutes for an overview.
        - When the five minutes are up, you have about 15-20 more minutes to present this lesson.
        - Lastly – judges ask you question(s) regarding the technology presented, so they can verify  you have practice with it, compared to just reading a book and memorizing it.

What to have in mind:
   - Timing
   - Attitude
   - Body language
   - Making contact with audience
   - Using presentational tools/materials

I think these are the main things one should have in mind if giving the exam a try :).



Windows 8 Developer Preview - First Boot

by Ventsy Popov

After watching the BUILD conference keynote and being spammed so much with announcements about Windows 8, I decided to install it and give it I try for myself. Since I didn't wanted to mess with my working machine. On my sight suddenly (and purely unintentionally) appeared my girlfriend's PC. Elected by a majority in the house (me, me, me,.... oh – and me) it was to be immolated in the name of some-not-so-geeky-but-very-deep-sounding reason.

*Side note – no computer was harmed during the down-described process. I can even state that the mentioned PC is now “stronger” after the experience it had.

OK, if anybody bore my jabbering so far, here is a more focused description of my first impressions of the expected new OS.

I. Installation
I followed a very well described procedure from Scott Hanselman to make the installation on a bootable VHD. Here is a quick link: GuideToInstallingAndBootingWindows8... It should not take you more than half an hour to prepare for installation and about as much for the installation process to finish.

II. Loading
When the OS had to load for the first time, the boot manager has been changed for me in order to recognize the two available operating systems (Win7 was the existing one) – coolah! Although it took at least three times more than the speculated 8 seconds, the system was loaded asking me to create a new account. Here was my first surprise – it gave me the chance to create an account correspondent to my Windows Live ID. Later on I saw what could come out of this:
     - Personalize settings for this account, which can be used from another machine of mine.
     - Integrated access to my mail, messenger, skydrive.
     - Keeping me in context wherever my Live ID is needed.
...and leaving the door open for every other cloud service that can be expected to be part of “Windows Live”.

III. Logging
After I logged in – to be honest I had something of an “organizational” shock with all the tiles (instead of windows), which composed my desktop. See what I mean:


However I'll give it a chance, play a little for the next days, and probably write about my (hopefully) interesting findings. 



Ergonomics - Starting With a Keyboard and Mouse

by Ventsy Popov

After spending some time in pains and using different ointments for my wrists I decided it's about time to ease my everyday work with my PC. As a starting point, I began digging throughout the net in search of appropriate ergonomic solutions for a keyboard and a mouse. One of the options was a pack of Microsoft keyboard and mouse (this is not an ad, though I might tend to be a little subjective when it comes Microsoft :)). My choice weighed down that direction even more,  when a friend of mine (thanks Viktor) gave me firsthand positive feedback.

I am happy to brag about my new purchase – Microsoft Natural Ergonomic Desktop 7000: 


And here is what you can find inside the package: 


I also took a couple of shots to see the main idea of how wrists are positioned in a more straightened and restful way:



That was my first step (I intend not to be the last) into comforting my work. What are your tricks for making a comfy working environment?