GeekSpeak

Tech talk that doesn't necessarily fall into any specific category, but really isn't generic day-to-day stuff.

Why is Source Control Such a Barrier?

Yesterday we moved Autofac over to GitHub. I’m cool with that. There’s a lot of momentum behind Git and GitHub in the source control community and I understand that. Nick Blumhardt’s post on the Autofac forum and the linked Eric Raymond post in the Emacs developer list hit close to home for me – I wish Mercurial had “won,” but Git’s fine, too. I don’t feel super strongly about it.* In moving, we got a lot of really nice and supportive tweets and posts and it’s been a nice welcoming party. That’s cool. Then there have been...

FluentValidation and MVC - From Server to Client

We do a lot of interesting stuff with FluentValidation at work and more than a few times I've had to give the whiteboard presentation of how a server-side FluentValidation validator makes it to jQuery validation rules on the client and back. I figured it was probably time to just write it up so I can refer folks as needed. Let's start out with a simple model we want to validate. We'll carry these examples with us in the walkthrough so you have something concrete to tie back to. public class MyModel { public string Name { get; set;...

Manually Running the Java Update

I swear every time I change the Java settings to stop auto-updating it still pops up that stupid "A Java Update is Available" toast in the corner and I want to punch it repeatedly. Killing the scheduled task from startup works until you actually do install the next update, at which point you forget it and it puts itself back. I run as a non-admin user. The Java auto-update thing hates that. It tells me there's an update, then I say, "OK, do it then." It asks me for admin credentials, I enter them, and I instantly get a...

WHS v1 End of Life – What’s Next?

Windows Home Server v1 is end of mainstream support tomorrow and some folks have asked me what I'm going to do. Options for switching include upgrading to WHS 2011, switching to Windows Server 2012 Essentials, or moving off the Windows platform entirely to something else. If you've been following my Media Center solution, you'll know I have both an HP MediaSmart Windows Home Server v1 and a Synology DS1010+. I use the WHS for: PC image-based backups General file sharing Image sharing Music sharing (both via file system and via UPnP using Asset). Windows 8 File History I use the Synology DS1010+ for: Storing DVD movie images Serving the MySQL instance...

2012 in Review

2012 has come and gone, and it's time to look back at what happened. Because if I don't, well… my memory isn't quite what it used to be, you know? It was a good year both personally and professionally, though I noticed I blogged a lot less. That happens, I guess. I find I post more of my little personal updates on Twitter or Facebook, which reduces the noise here but definitely splits up the content. Maybe that's a good thing. You can subscribe to the stuff you like, ignore the stuff you don't. (I use Twitter for more...

Autofac 3.0 Beta Packages Available on NuGet

We're super close to having a final release of Autofac 3.0 with support for Windows Store apps and Windows Phone 8. Beta packages are available on NuGet now. Rather than repeat what Alex has already said, go check out his very detailed explanation of all the new/fixed/updated stuff available.

Autofac Project Update - Ownership Changes; 3.0 Coming Soon

For those of you who use Autofac, I thought I'd provide a bit of a project update to let you know what's going on. First, there's been a little shake-up in the project ownership role. Nick Blumhardt, original creator, will still be working on the project as a committer but has stepped down as an owner. Alex Meyer-Gleaves will remain an owner, and I've now been made a co-owner with him. Nick has posted a formal announcement in the Autofac newsgroup. Huge props to Nick for making such an awesome product; I hope I can help carry that forward...

NDepend 4 - CQLinq, NDepend.API, and Beyond

I recently updated to NDepend 4. I got an early preview of the sweetness that is CQLinq (code query using LINQ syntax) so I couldn't wait to dive into the full deal. For new users of NDepend, the "getting started" part of things isn't too different from NDepend 3 - same download/unzip/run xcopy-style installer, same UI, same super-robust reporting. I wrote a good entry on getting started with NDepend 3 and most of that still applies here so I won't rehash it. For existing users of NDepend, CQLinq is really the big deal in this latest...

Windows 8 Navigation and Hyper-V

I had a tiny breakdown yesterday where I finally got Windows 8 installed (on a Hyper-V VM) and hit a massive "someone moved my cheese" moment where I basically couldn't figure out how to do anything. The Windows key wasn't doing anything, I couldn't figure out just the right spot to right-click... bad times. My Google-fu totally failed me, too. This morning, with a fresh set of eyes, suddenly looking for the same search terms yielded two super-helpful articles. For those in the same [late] boat as me... "Getting Around in Windows 8" tells you...

Quick Overview of Samsung TecTiles

I recently upgraded my phone to a Samsung Galaxy SIII. So far, seriously, this thing is awesome. It's fast, I love Android 4.0, the screen is super clear, the camera is nice... serious win over my older Droid X. One of the things Samsung seems to be pushing is the NFC (near field communication) abilities of the phone. They have these little NFC tags you can buy called "TecTiles" that you can use to play with NFC. They have an Android app you can use to program the tags or use them to execute programs from tags read by...

SublimeMSBuild - MSBuild Package for Sublime Text 2

Sublime Text 2 is the first text editor that's actually gotten me excited about text editors(!) for quite some time. It's fast, clean, super extensible... I bought my license when it was still in beta and I've never looked back. One of the things it was missing was support for MSBuild scripting - syntax highlighting, build execution, and so on. I do a lot of MSBuild work, I wanted to try my hand at Sublime Text 2 extensions, plus I wanted to try out GitHub, so I took the opportunity to roll all of those things into One Giant...

Convert Any Set of Headphones to Bluetooth/Wireless

When I'm at work I like listening to music... but I hate being tethered to my computer (or iPod dock, or whatever) by the headphone cord. If I want to slide my chair over to the whiteboard to write something up or reach over and get something out of my bag, I have one of two choices: make the cord so long that it gets tangled up on my chair and in my desk stuff; or take the headphones off to go do whatever it is and put them back on. Also, I like my headphones. I have some...

CR_Documentor 3.0.0.0 is in the Visual Studio Gallery

I'm pleased to announce I've got the CR_Documentor 3.0.0.0 release up and running in the Visual Studio Gallery! You can either get it from the gallery, or, from the Visual Studio Extension Manager, search for "documentor," "dxcore," "coderush," or other related terms and it'll come up. It's a full VSIX installer, so it'll install right into Visual Studio without you needing to download, unzip, or do anything additional. (I think I'm the first DXCore plugin with a VSIX installer to appear in the gallery, so... I have to say, I'm a little proud. Huge props...

CR_Documentor 3.0.0.0 Released

The latest version of CR_Documentor, 3.0.0.0,  has been released. This version is an update to .NET 4 in preparation for a VSIX-based installer (think Visual Studio Gallery) so it will only support Visual Studio 2010. It also resolves a small issue where some interfaces changed in DXCore 11.2.8 and the plugin was throwing exceptions. You will need the latest CodeRush/Refactor/DXCore (11.2.8) or things may not work. (I admittedly haven't tried it on earlier versions.) Free, as always, so go get it! And watch for the VSIX installer, coming soon!

Potential Typemock Gotcha: Allow Static Construction to Happen Before Mocking Static Methods

I love Typemock Isolator. I do. The power it gives me to deal with legacy code interaction testing is phenomenal. However, every once in a while, I'll get an odd failure that doesn't make sense. Today's error message looks like this: SetUp method failed. SetUp : TypeMock.ArrangeActAssert.NestedCallException : *** WhenCalled does not support using a property call as an argument. - To fix this pass null instead of LoggerWrapperImpl.Logger *** * Example - this would work: - MyObj argument = Something.Other().GetStuff(); - Isolate.WhenCalled(() => ObjUnderTest.MethodUnderTest(argument))...; *** * Example - this would not work: - Isolate.WhenCalled(() => ObjUnderTest.MethodUnderTest(Something.Other().GetStuff()))...; at cv.a() at...