It had been ten years ago, since I was the last time in the Ukraine. Back then in Kiew I held an architects workshop together with Michael teaching Service Oriented Architectures with the Microsoft .NET Framework 3.0, Windows Communication Foundation (WCF) and Windows Workflow (WF). I can remember that I lost my luggage (bad) and the nice people, good questions and superb feedback we received (definitely good). Nataly Potapova, of Sigma Software, contacted me to ask If I would like to become one of the speakers for the Network conference.
Websites and blogs of people that attended a Homebrew Website Club Düsseldorf.
.NET Framework 4.6 Release
The new framework version is out. As with every new release it seems to me that the search indexes on Microsoft downloads have not been rebuilt yet. So I abuse this blog post and note the download links to myself… Microsoft .NET Framework 4.6 (Offline Installer) for Windows Vista SP2, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2008 SP2 Windows Server 2008 R2 SP1, Windows Server 2012 and Windows Server 2012 R2
Maven Archetypes in IntelliJ
IntelliJ has the ability to use Maven as build and project system. The concept of an archetype is a predefined project or project template. When “File | New project” is used to create a new project and “Maven” is selected the following dialog is displayed: IntelliJ comes with a few archetypes but of course custom ones can be added. On the MVN Repository for example several archetypes for Wildfly are available: http://mvnrepository.
Code Snippets in IntelliJ
Code snippets can be helpful. Otherwise the can lead to code duplicates – so use them with wisely. In JetBrains IntelliJ the code snipptes are called Live Templates. They are stored in files saved in C:\Users\{UserName}\.IntelliJIdea{Version}\config\templates on Windows and ~/.IntelliJIdea{Version}/config/templates on Linux. To create a live template open IntelliJ and open the Settings from the File menu. In the Settings dialog you can use the search text box to quickly access the Live Templates section.
Get the public key for the InternalsVisibleTo attribute
Get the public key for the InternalsVisibleTo attribute from a string name key pair file: Get the public key for the InternalsVisibleTo attribute from a strong named assembly:
Enable or disable FxCop Code Analysis solution wide in Visual Studio Package Manager Console
I really like FxCop. But in a debugging session it can be useful to save time by temporarily disabling the code analysis. Sadly there is no global switch to turn it off and on again. So here is my approach: Create a new text file in the directory C:\Users\{your user}\Documents\WindowsPowerShell named NuGet_profile.ps1 and add the following code: Restart Visual Studio. Click the menu View | Other Windows | Package Manager Console.
Using credentials based on a SecureString that is disposed
Today I was building a credential store API. One implementation against the Windows Credentials Manager (CredMan), the other one persisting information in a database. Of course the data is not persisted in clear text. I use either the MachineKey functionality or a RSA certificate based encryption. So far so good, but I want the passwords to be secure in memory to. The .NET Framework already has a Type built in for that purpose: SecureString
Speed up Firefox: Manage Cache
Open Firefox Type about:config into the address bar Search for browser.cache Set browser.cache.disk.enable = false Right-click | New | Integer | disk.cache.memory.capacity = 65536
New Notebook - HP ZBook G2 15 Review
After 4 years it really was time to get a new notebook. Back in the days at newtelligence we had Alienware stuff. Pretty impressive until Dell bought them and keeps them small (in CPU/RAM/…). So again (this is the 5th) I decided to go for HP: ZBook 15 G2 Some Specs: Intel Core i7-4910MQ 256 GB HP Z Turbo Drive PCIe SSD 15.6" diagonal LED-backlit FHD SVA eDP anti-glare (1920 x 1080) NVIDIA® Quadro® K1100M (2 GB dedicated GDDR5) 4 x USB 3 1 x Thunderbolt 1 x VGA, 1 x Displayport LTE SmartCard reader 2.
Manage Fusion Log by Powershell
Note to myself…
.NET Licensing - ode to monolithic applications?
The Microsoft .NET Framework has a built in licensing technology. It can be found in the namespace System.ComponentModel and System.ComponentModel.Design. Here is a small sample implementation of the minimal required classes: A lot of component producers use this licensing model – so does Tx Text Control – the component that I wanted to use. As a user you just create a *.licx-file, include it into the project as embedded resource and add the components that should be licensed by their fully qualified type names – one per line:
Batch processing Visual Studio ProjectItems with the Nuget Package Management Powershell Console
Today I helped a customer to minify and bundle a bunch of JavaScript files. We used WebGrease triggered from MsBuild to do the job. The next thing to do is changing the BuildAction property on all non-bundled-and-minified JavaScript files so that only minified and bundled files are published. Here is my script: Hope that helps
How not to do support: eBay
As a software developer I know software can contain or contains bugs – that is very likely. I accept that. Looking at the (german) ebay support site they do not. There are quite a few know issues around buying or selling as well as a searchable knowledgebase. But there is no way to tell them if something else is wrong. And don’t try to call them – a bug is out of scope for the call center.
Powershell Script to open IIS applicationHost.config
I got a bit tired of walking down the directories to manually edit the IIS configuration file. So I wrote this little script to ease up opening the file from 32 and 64 bit Powershell:
Microsoft Research JavaScript Cryptography Library
Microsoft research has published a JavaScript library that extends the W3C WebCrypto API. http://research.microsoft.com/en-us/downloads/29f9385d-da4c-479a-b2ea-2a7bb335d727/default.aspx The download is amazingly big for a JavaScript library: 254 MB! I’ll have a look over the source. If you are interested in security and JavaScript you should too.
Poor Man's SQL Data Generation
Data generation is at best done with tools. Since Visual Studio Data Tools have dropped support there is for instance red gate’s DBA bundle. My current license does not work with Microsoft SQL Server 2014. I need a quick solution to reproduce a scenario with some more data in just one table. Which means I already have some data in the table. So I wrote the following TSQL script to help me out.
Bye bye RFC2616, Welcome RFC 723X
The IETF has published a bunch of new RFCs to update HTTP/1.1 specs and make the 15 year old 2616 obsolete: RFC 7230: Message Syntax and Routing RFC 7231: Semantics and Content RFC 7232: Conditional Requests RFC 7233: Range Request RFC 7234: Caching RFC 7235: Authentication RFC 7236: Authentication Scheme Registrations RFC 7237: Method Registrations RFC 7238: the 308 status code RFC 7239: Forwarded HTTP extension Here I listed a few changes:
Remote Work: Book Recommendations
I had the first contact to 37signalsbasecamp by reading Getting Real when it was published in 2009. I just finished their new book “Remote”. Since I’m working a lot from my home office since a few month I find more and more reasons for working remote. The latest one is from “The-Thinking-Clearly” by Rolf Dobelli: “Studies prove, that commuting is the main reason for dissatisfaction” Two books I can really recommend!
Windows Defender Registry Settings for Visual Studio Speed
To increase Visual Studio performance several things can be done. One is to configure Windows Defender:
DotNet Cologne 2014 Session: Build, Build, Build
Here are the slides for my session at dotnet cologne: 2014 - DotNetCologne: Build, Builder, Am Buildesten by Daniel Fisher