Sign up

Websites and blogs of people that attended a Homebrew Website Club Düsseldorf.

A public list by dan.

lennybacon.com Valid

.NET Usergroup Rhein/Ruhr Session: Component Based Development

Here are the slides for my session at .NET Usergroup Rhein/Ruhr: 2014 - DotNet UG Rhen Ruhr: Komponentenorientierung by Daniel Fisher

lennybacon.com Valid

Remote control supermicro super server via ATEN IPMI in C#

I really like IPMI so I don’t have to walk to the data center to turn on a machine. But the web interface is so 90s. As I live life on the console I whished I had a command line utility. Et voilà:

lennybacon.com Valid

Are SCM check-out's contemporary?

My VCS story began with Microsoft Visual Source Safe. I was happy… I had my files versioned. I could view differences in file versions. I could restore previous versions. I could view the history of a file. … until the IDE started to crash, I had corrupted files and so on. http://www.flickr.com/photos/nesster/5823554695/ So I gave CVS and then SVN and TFS a try. I was happy… I could work with branches I could version source code “over HTTPS”.

lennybacon.com Valid

Chaining asynchronous JavaScript calls with Angular JS

A while ago I dropped a piece of code that prevents from unlimited callback nesting: Chaining asynchronous JavaScript calls Today I was hacking some Angular JS code and found myself nesting callbacks. So I updated the CallChain to an Angular JS factory: Here is how it is used:

lennybacon.com Valid

Sanitizing Strings according to Windows Client Certificate Enrollment Protocol [MS-WCCE]

The Windows Client Certificate Enrollment Protocol [MS-WCCE] defines a sanitizing mechanism e.g. for common names in section 1.3.2.4 and section 3.1.1.4.1.1. After I gave my favorite search engine a try and ensured there is no built-in function to call I built my own. Here it is:

lennybacon.com Valid

Datenbank Autonomie

Oder warum sollten sich mehrere Anwendungen nicht dieselbe Datenbank teilen? http://www.flickr.com/photos/breville/10731809645/sizes/l/ Viele Köche verderben den Brei: Diseconomy of Scale Eine gemeinsame Datenbank (geteilt zwischen Anwendungen und/oder Teams) sorgt für unterschiedliche Interessen und erhöhten Absprachebedarf, damit es nicht zu einer Art Wildwuchs kommt. Wenn keine klaren Schnittstellen definiert sind sinkt die Produktivität aufgrund des erhöhten Kommunikationsaufwandes. Das gilt in Firmen unter Abteilungen und Mitarbeitern, genauso wie für Software-Projekt-Teams als auch für Software selbst.

lennybacon.com Valid

Sitzungslos/Statuslos

http://www.flickr.com/photos/toofarnorth/8670157331/ Aus der RFC 2616: “It is a generic, stateless, protocol” Das heißt, das Fundament auf dem wir aufsetzen ist Sitzungslos. Wenn das Applikations-Framework, egal ob mit Web Forms oder MVC, oder Python, oder PHP, oder Rails…, das respektiert, wird es den Anforderungen des Web gerecht: Skaliert besser – Ich brauche mir im NLB-Szenario (Network Load Balancing) keine Gedanken über Shared Memory machen oder mit dem ASP.NET State-Server einen SPOF (Single Point of Failure) einführen.

lennybacon.com Valid

MSSQL Log Size

I have a test environment for an application. From time to time I take the database to my local development environment. A smaller database log means less network latency and a faster local reproduction scenario. After a while of pumping data into a MSSQL Server instance the log can grow a bit – even if there is a lot of free space left. Shrinking is NOT GOOD at all, but I don’t have 50gigs of space left to pull up that database on my local machine.

lennybacon.com Valid

MSSQL Backup Size

I have a test environment for an application. From time to time I take the database to my local development environment. A smaller backup means less network latency and a faster local reproduction scenario. Since 2008 Microsoft SQL Server comes with a feature called backup compression. I gave it a try and so I ran the two following statements in competition: BACKUP DATABASE [XXX] TO DISK = N'D:\DATA\SQL\BACKUP\Uncompressed.bak' WITH COPY_ONLY, NOFORMAT, NOINIT, NAME = N'Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10 GO vs.

lennybacon.com Valid

Disabling Registry-System-Redirection on 64bit

x64 view from x86: using Microsoft.Win32; using(var registryKey = RegistryKey.OpenBaseKey( RegistryHive.LocalMachine, RegistryView.Registry64 ).OpenSubKey(@"Software\Microsoft\InetStp\Components")) { var value = registryKey.GetValue(@"WMICompatibility"); } x86 view from x64: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft

lennybacon.com Valid

Fixing Msbuild Error msb3247 - Found conflicts between different versions of the same dependent assembly.

Set MsBuild Verbosity to find out which assemblies conflict: http://msdn.microsoft.com/en-us/library/ms164311.aspx msbuild.exe .\Compile.msbuild /verbosity:detailed ... There was a conflict between "xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxx" and "xxx, Version=1.0.12152.1, Culture=neutral, PublicKeyToken=xxx". "xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxx" was chosen because it was primary and "xxx, Version=1.0.12152.1, Culture=neutral, PublicKeyToken=0313e76cb5077f22" was not. References which depend on "xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxx" [D:\Projects\abc\bin\xxx.dll]. D:\Projects\abc\bin\xxx.dll Project file item includes which caused reference "D:\Projects\abc\src\Web.BuildServer\bin\xxx.dll". xxx References which depend on "xxx, Version=1.0.12152.1, Culture=neutral, PublicKeyToken=xxx" [].

lennybacon.com Valid

Asynchronicity rules the world

Designing architecture for a scalable system always involves thinking asynchronous parts. For example: placing an order to a system. At first sight this process of course requires feedback. What happens if the order is invalid because it contains incorrect data? Especially for the non-technical stakeholders it is hard to imagine how this can be accomplished. Therefor it is always helpful to have an example that is taken from the non- technical world.

lennybacon.com Valid

Disabling File-System-Redirection on 64bit

The following call disables File-System-Redirection on 64bit Windows in WOW mode (e.g. Accessing Program Files and ending up in Program Files (x86)): // Minimum client Windows XP Professional x64 Edition or higher // Minimum server Windows Server 2003 with SP1 or higher NativeMethods.Kernel32.Wow64DisableWow64FsRedirection(pt1);

lennybacon.com Valid

Adobe, trust, WTF

Mixed language content was in the past a good indicator for phishing – just not as professional as the real provider. Today I received an e-mail by Adobe that asks me to change my password, as they were being hacked in the past and beside passwords (not even hashes? what the hell), program code as well as certificates have been stolen or compromised. I was a bit scared that Adobe now offers a mixed language site especially after what happened to them…

lennybacon.com Valid

NDepend customizing rule: Declare types in namespaces

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Avoid namespaces with few types In general types should be placed in namespaces. But compiler generated types (caused by linq queries) are sometimes not.

lennybacon.com Valid

NDepend customizing rule: Avoid namespaces with few types

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Avoid namespaces with few types I observed that the original rule outputs an unnecessary line for namespace {} because of the compiler generated classes (caused by linq queries).

lennybacon.com Valid

NDepend customize rule: Avoid defining multiple types in a source file

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Avoid defining multiple types in a source file I completely agree, with one exception: When having a generic and a non-generic type e.

lennybacon.com Valid

NDepend customize rule: Types too big

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Types too big I use extension methods to collect several functionality for e.g. framework types as string. Each Extension-Class is typically spread across several files and partial to keep overview and maintainability.

lennybacon.com Valid

NDepend customize rule: Quick summary of methods to refactor

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Quick summary of methods to refactor This rule gives you a quick overview of what needs to be refactored.

lennybacon.com Valid

NDepend customizing rule: Static fields should be prefixed with a 's_'

NDepend is a tool that offers a wide range of features to let developers analyze a .NET code base. It comes with about 200 built in rules. But there are a few default rules that do not fit “my rules”. This blog post shows how to customize one and even more important why. Static fields should be prefixed with a ’s_' I use underdashes for instance fields and therefor I have a custom rule for static fields.