About gordon

This author has not yet filled in any details.
So far gordon has created 109 entries.

Setting up Redis on a windows server and testing connectivity

In this post I will show you how to install redis on windows and test for connectivity.



Download the latest release at https://github.com/MSOpenTech/redis/releases

Perform the installation, leave everything as default. By default, redis should already configure your windows firewall to allow communication with the redis-server.exe file, redis server runs on port 6379 so make sure that port is opened on hardware firewalls, etc.


After the installation is complete, a window service called “Redis” is created, this is your redis server.

Browse to the installation path, on my setup this was C:\Program Files\Redis

Open the file redis.windows-service.conf NOT redis.windows.conf

We want to make a couple changes to secure the server with a password and set the ip address binding:

  • Setting Password: Search for the word “requirepass”, this was on line 445 in my configuration file, uncomment and set a proper password, something strong.
  • Setting IP Address binding: By default it seems the redis server is configured to only work locally, because of the one binding to the loopback interface address, you should see a line “bind”, make sure to comment this, by doing so your redis server will be bound to all ip addresses on the server.

After making these changes, restart your Redis service and check the log file server_log.txt for error, you should see something like:

“[5676] 10 Sep 09:38:35.358 * The server is now ready to accept connections on port 6379”

Testing Remote Connectivity

After installing you may want to test your remote connectivity to the redis server.

Grab a copy of redis-cli.exe in the installation folder and place on another computer to test.

I then opened a command prompt and went to that folder where redis-cli.exe was placed and issued the command:



I hope this helps! If you have any questions feel free to contact me on twitter: @tekguy

By |September 10th, 2016|Coding|0 Comments

Exposing Artifacts during project build in Team City

I recently found myself in a situation where I needed to publish my artifacts to the team city’s internal nuget feed server DURING the build (not after). In order to accomplish this I had to let Team City know about my artifacts folder (or files) during the build. I simply needed to output a message. I used Team City’s Service message syntax to do this. In my build project I create another target step:

<Target Name="ExposeArtifacts" DependsOnTargets="CreateNugetPackage" AfterTargets="CreateNugetPackage">
  <Message Text="##teamcity[publishArtifacts '$(Root)\_build\Artifacts']" />


By |August 10th, 2016|Uncategorized|0 Comments

Microsoft Azure Blueprints

The azure team at Microsoft has put together quick scenario based diagrams to help put together solutions, from BI to DevOps and Live Media Streaming scenarios, you can review them by clicking here.


By |July 26th, 2016|Azure|0 Comments

The definitive guide to form based web authentication

If you are using form based authentication, here is a great stack overflow post that provides some guidelines on how to implement form based authentication properly: http://stackoverflow.com/questions/549/the-definitive-guide-to-form-based-website-authentication

By |July 22nd, 2016|Coding|0 Comments

OWIN WsFederation custom authentication and authorization

I recently setup OWIN WsFederation in my app, but I needed a way to perform an additional check against my local database to validate the user. For example the user authenticating from the STS may not be allowed to authenticate to the app, because of their department, etc. So in order to perform this additional authorization check I needed to setup a “notification”. In this case the notification is called “SecurityTokenValidated”, here is a sample implementation:

new WsFederationAuthenticationOptions
    Wtrealm = AppSettings.IdpRealm,
    MetadataAddress = AppSettings.IdpMetadata,                 

    Notifications = new WsFederationAuthenticationNotifications
        // check and create additional claims
        SecurityTokenValidated = notification =>
            // identity object to access claims from IDP
            var identity = notification.AuthenticationTicket.Identity;
            return Task.FromResult(null);
By |June 20th, 2016|Coding|0 Comments

Set default startup directory in Cmder for admin powershell task

To set the default startup directory when executing admin power shell, use the following command (currently I have my directory set to c:\dropbox\dev)

*PowerShell -ExecutionPolicy Bypass -NoLogo -NoProfile -NoExit -Command "Invoke-Expression '. ''%ConEmuDir%\..\profile.ps1''' -new_console:d:"c:\dropbox\dev"

Make sure to make the change on the tasks tab:



Then set that task as your startup


By |April 20th, 2016|Windows|0 Comments

My experience at Build 2016

Now that Build is over I had some time to reflect on the experience. This was my first time at a major developer conference. I’d like to thank my employer for sending me to this awesome event. The theme at this conference has been creating a better developer experience. If you haven’t seen the videos I encourage you to take a look at: https://channel9.msdn.com/events/build/2016

Some of the key announcements at this event:

  • Bash on Windows: This is incredible news. It’s not a full linux system, it’s not a VM, it’s 100% native. You get all the great dev tools that’s on Linux such as awk, grep. Launch vim (or emacs), imagine the ability to launch a bash command and use apt-get.
  • Xamarin is now free: That’s right, 100% free. For all versions of Visual Studio 2015, even community edition.
  • Windows Anniversary edition: Bio-metric security integration for apps and edge, Ink improvements

My favorite sessions:

Introducing ASP.NET Core 1.0: A breif overview of things to come in .NET Core 1.0. Hanselman did a live demo showing off the power of ASP.NET Core, running on docker containers on Azure, AWS, etc.

Power BI Embedded: You now have the ability to integrate Power BI directly into your apps, for some sample code click here.

As I have time I will continue to update this list.



By |April 2nd, 2016|Coding|0 Comments

Windows 10 – Broken start button and missing icons for Edge and Windows Store

I’ve been using Windows 10 for a couple months now. I have one issue and it’s very annoying.  My start button no longer works. Yes, you heard that right. The start button no longer works and some other symptoms appear as well:

  • Windows store, Edge icons disappears from the task bar.
  • The CPU becomes extremely slow, it takes about a min to launch windows explorer.

After some google searches it seems I am not the only one experiencing this issue. What seems to have worked for me is reinstalling all the windows apps (not your personal apps, but the ones come built into windows). This may sound like a daunting tasks. Fortunately all you need to do is run a powershell script:

Let’s get started, obviously the start button doesn’t work so we have to find an alternative way to launch powershell.

  • Right click on your taskbar and hit Task Manager, you might have to wait a couple seconds.
  • In Task manager click File then Run New Task.
  • In the textbox type powershell, before hitting enter make sure to check “Create this task with administrative privileges.”
  • After powershell opens, type the following command:
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}

You might have to wait for a little, don’t worry about all the red error messages, this is normal. After everything finishes, restart your computer, you should now have access to your start menu again.

If you’re still having issues, create a comment with your symptoms and we can try to help.


By |February 11th, 2016|Windows|1 Comment

Restoring files from Synology CloudSync

After using the Synology CloudSync package to upload 250GB of ENCRYPTED data to Amazon Cloud Drive I quickly realized there was no interface to actually restore these encrypted files from CloudSync itself. After some research I found Cloud Sync Decryption tool provided by Synology.

Some more documentation on the tool can be found by clicking here.

To decrypt the files simply download the files from Amazon or whatever provide you are using, place them in a folder and run the following command:

.\SynologyCloudSyncDecryptionTool.exe -p <PASSWORD HERE> c:\temp\encrypted-files c:\temp\decrypted-files

This will decrypt all your files and place them in an output folder using the password you used to setup the cloud sync backup service.

If you have any questions feel free to contact me!

By |December 14th, 2015|Uncategorized|0 Comments

Setting the time zone for an azure web app

If you need to set the timezone for your azure web app, you now have an option to create an app setting. You can do this via the azure portal:

Click on “Application Settings” then add a new key/value under the app settings section, for example:


Value: Eastern Standard Time



By |November 24th, 2015|Coding|0 Comments