Posts filed under code4ward

Visual Studio 2013 - can't update nuget.exe

I stumbled upon a very strange error when trying to compile one of our projects lately:

It says: 

The ‘Microsoft.Bcl.1.1.9’ package requires NuGet client version ‘2.8.1’ or above, but the current NuGet version is ‘2.7.4090675’.

Try 1: Use the command line to get more information

I tried to execute the suggested command line in the second error by myself as an admin - no use. I got the same error ;) 

 

Try 2: Checking the NuGet version and updating the NuGet Package Manager

I check with Visual Studio 2013 what NuGet version I have:

NuGet version 2.87.5

And - lo and behold! I have installed NuGet v 2.8.5! So why is it complaining?

I tried to uninstall and freshly install the NuGet Package Manager - no use.

 

Try 3: SOLVED - Update nuget.exe manually

Visual Studio is keeping its own nuget.exe for each solution (!) in a directory located at $(SolutionDirectory)\.nuget\nuget.exe along with a .targets and a .config file. In the targets-file you even see at the bottom a task "DownloadNuGet" that fetches the new version of nuget.exe.

Download the file manually from nuget.org (it is located at https://www.nuget.org/nuget.exe)  and copy it in the given directory. Then restart Visual Studio.

 

But why?

I am pretty sure, there is a more elegant version of updating nuget.exe for any given solution - and I couldn't actually locate the nuget.exe Visual Studio is actually referring to when it says in Tools -> Extensions and Updates that it has the NuGet Package Manager 2.8.5 installed. 

Anybody can help me out here?

Cross-Plattform Entwicklung - Microsoft Event Wrap Up

 Different trade offs if chosing a client implementation technology

Different trade offs if chosing a client implementation technology

Microsoft Austria was organising a quite interesting event today: Cross-Platform-Development in a heterogenous world. As you probably know Microsoft and Xamarin are partnering on a global level to enable C# devs to write great apps for iOS and Android. And since we at code4ward are having our products also released for OS X,  Android and iOS, we were curious to see best practices in this area. 

 

 

 

Agenda

The agenda was a bit fuzzy and contained two parts: the first part mentioned that Xamarin will be presented and how this tool can help developing mobile apps for iOS and Android. And a second part where they show "which tools Microsoft is offering for cross-platform development and how Microsoft Azure can be utilised here.

 

After a quite high-level overview ("what makes a modern app?" and why building native apps is hard), we got introduced to client technology choices - also on a high level (how does decision between a web app and a native app impact portability, performance, updatability etc. Then we've seen a short demo on how using Visual Studio and Xamarin to develop an Android app. The rest of the time was used for a lengthy presentation of Windows Azure Mobile services  and Visual Studio Online and how a Web Load Test can be conducted in the cloud.

 Depending on the chosen client technology stack you get different products and distribution models

Depending on the chosen client technology stack you get different products and distribution models

 

Wrap Up

The topic itself is interesting for many devs - as room was almost full with devs. But the majority of the presented content missed the point in my opinion. Quite some time was spent on advertising Azure with features that are barely relevant for cross-platform development. Additionally an annoying amount of time was spent with copy and pasting code around in Visual Studio solutions - this should be prepared upfront in a a working solution, since we never walked through the code anyways (and of course, this is error prone ...) 

 

I really expected much more focused, in-depth and hands-on development content - because reworking your codebase to support cross-platform development is not easy. I recommend having a level provided with the agenda so one can better evaluate, if an event is helpful.

 

A Last Recommendation

Much better depth of content I found in the //build/ presentation of Miguel de Icaza on "Go Mobile with C# and Xamarin" - watch this! He gives an overview on how Xamarin works and how to structure your source code. 

Royal TS is featured in Scott Hanselman's Ultimate Tools List

Scott Hanselman is publishing on an almost yearly basis his most indispensable tools he uses and this is his list for 2013. And it's nice to see our efforts recognised:

 

Royal TS is on the list of recommendations

We are listed in the category "Things Windows forgot" :) And additionally to the RDP features mentioned by Scott, we have advanced support for SSH/Telnet, External Applications, Web Connections and a real-time Performance View for your servers - check it out

RoyalTS - If all you do all day long is remote into machines, then RoyalTS is the app you’ve always wanted. It’s Outlook for Terminal Services. I’m not sure if that’s a thing but it sounds impressive. RoyalTS is amazing.
— http://www.hanselman.com/tools, Dec 21st, 2013

Royal TS supports SSH/Telnet as well as advanced real-time Performance Views

And I am not even talking about the multi-platform we have (check out our iOS and Android versions of Royal TS)

Posted on December 21, 2013 and filed under code4ward, development, Royal TS.

Using a Windows Azure hosted VM for development

2013-11-05 11_28_54-Virtual machines - Windows Azure - Internet Explorer.png

A recent blogpost from Scott Hanselman "Using a Surface 2 (RT/ARM) to get actual work done + Remote Desktop + Visual Studio + Azure" showed how to create your development environment inside a Windows Azure hosted VM.

 

I found this idea appealing and decided to give it a try for myself. I went for a 4-core machine with 7GB memory. I won't use the 7GB but i want to have more than 2 cores since i need this to test my development-work for Royal TS which is heavily based on doing multithreading stuff in the background (to not block the UI thread)

 

Optimizing the Azure VM for performance

I created a fresh VM in Windows Azure which has Visual Studio 2013 already installed and added another empty disk with 64GB space for my code, tools and other stuff. 

This is described in detail in the before mentioned blogpost

 

As a starting point, I imported the RDP file, that was generated by the Windows Azure portal and made a few tweaks:  First make sure, you have your Windows Keys redirected, else you will end up with a Disk Management Window from your LOCAL machine. This could be a bit confusing... 

 Make sure, your Windows Keys are passed to the VM (Screenshot was done with Royal TS V3)

Make sure, your Windows Keys are passed to the VM (Screenshot was done with Royal TS V3)

Also, check the Clipboard Redirection to get a smooth working experience: 

 

 Clipboard redirection configured in Royal TS for sharing the clipboard between host and VM

Clipboard redirection configured in Royal TS for sharing the clipboard between host and VM

I tried to install the Desktop Experience feature as well, since my VM is based on a Windows  Server 2013 image. 

 

2013-11-05 11_04_29-mseirer-dev-vm.png

After rebooting Windows tried to configure the changes, got some error and reverted the changes. After a reboot i got again the message 

2013-11-05 11_16_23-mseirer-dev-vm.png

I found the following error in the "Setup" Windows Eventlog:

 

Update InkAndHandwritingServices of package InkAndHandwritingServices failed to be turned on. Status: 0x800f0922.

 

I will keep you posted on how performant the VM while doing real work is. 

 

One moe thing...

 

Starting a stopped VM takes a good couple of minutes - so prepare to fetch yourself a cup of coffee before you can actually start working. Of course this applies only, if you want to stop and start your VM over night - which makes sense, since you don't get charged for a stopped VM since a couple of months.

 

Posted on November 5, 2013 and filed under code4ward, development, productivity, Windows Azure.

E2EVC 2013 in Rome - my personal highlights

The last session of the E2EVC 2013 in Rome is over and it was again an awesome conference. Although i was only two times there already, i recognised many of the attendees from Copenhagen previously this year!

 

Remark: Stefan and I will attend the next E2EVC in Brussels also - see announcement

0001-3.jpg

Conference & Organisation

Its remarkable that this conference is completely community-driven - so no speaker is "invited"  - the E2EVC lives from all the participants, that are experts in their respective areas and are willing to share their learnings in in-depth-sessions. I don't think there is a conference where so many conference participants also give presentations?

A big praise also goes to Alex Juschin and his team that did exceptional work to make the conference experience very smooth. Especially when it comes to the personal shuttle service - Alex himself transfers participants from and to the airport! Also, Alex made sure, we have WIFI even in the shuttle bus - perfect! :)

 

The hotel (H10 Hotel in Rome) was a good choice too.  

 

Content-wise the highlight for me (as a software developer) was Jeff Wouters' session about the new Desired State Configuration Deep Dive in PowerShell. This gave me a lot to think and I even got more pointers from Jeff where i could deepen my understanding. 

 

 The bigger of the two conference rooms 30 mins before the first session

The bigger of the two conference rooms 30 mins before the first session

 Shuttlebus group of 09:00 at Monday

Shuttlebus group of 09:00 at Monday

Networking

Especially at the E2EVC you can expect a great deal of networking and engage in all kinds of technical (or not-so-technical) discussions - great! 

 

Our session "Advanced scenarios with Royal TS" 

 

 nope, this was not a presentation of our iOS client - though we could have done this too ;)

nope, this was not a presentation of our iOS client - though we could have done this too ;)

After having a first presentation at the E2EVC in Copenhagen in May 2013 on Royal TS and its features, Stefan and I got a speaker slot in the E2EVC in Rome as well: this time we focused on more advanced scenarios on Royal TS. And - for the first time ever - we presented the new version of Royal TS and its new features! 

Here is what you missed - in a nutshell: 

  • Advanced features of Royal TS like Bulk-Edit, Templates (applied on single and multiple targets), integration of external applications (demonstrated with PowerShell), advanced usage of Tasks
  • the brand new V3 of Royal TS (a beta-version we are planning to go public with soon) and its features
  • the brand new OS X client of Royal TS
  • a new backend service which we will release also quite soon (think in weeks)

I even cannot provide any slides - we have a 2-page-powerpoint: the first page shows our URL, the second says "DEMO" ;) 

 

Posted on November 4, 2013 and filed under development, Royal TS, code4ward.