Showing posts from January, 2015

Interesting Applications of the Blockchain

In an earlier post, I discussed why the blockchain is important and you should get familiar with it . More and more articles are starting to pop up, each mentioning some startup or project applying blockchain technology to address an issue . Below are three that caught my eye this week: How One Startup Will Use Blockchain Tech to Disrupt Online Gaming Play, a Chinese/international startup team that plans to disrupt the incumbent online game industry using blockchain tech to remove trust, has recently 'gone public' as a decentralized autonomous company (DAC) on crowdfunding platform In its prospectus, Play claims it offers a third-party verifiable mechanism to ensure true randomness and fairness for gamers by placing the games' logic on a blockchain. This would remove the need for trust in centralized institutions, it says . I like the idea of using the blockchain to verify randomness. Implemented correctly, this approach not only provides untainted rand

WCF: WS-* Federation HTTP Binding (WSFederationHttpBinding)...

I haven't forgotten to follow up on federated security and WCF. Indeed, it's been quite fun and interesting digging around in it before I do any more write-ups on it. What I thought was going to be a two-part piece on WSFederationHttpBinding will in all likelihood be a four-part piece. WCF: WS-* Federation HTTP Binding (WSFederationHttpBinding), Part 1 Part 1 is an overview and is can be found here . WCF: WS-* Federation HTTP Binding (WSFederationHttpBinding), Part 2 This will cover installing, configuring, and managing a security token service (STS). In the real world, this will probably have already been done by the time you consider WSFederationHttpBinding. (If you have ActiveDirectory, for instance, you're pretty much already done.) But, for the purposes of having something we can play with, we'll need to find, install, configure, and use a simple STS. WCF: WS-* Federation HTTP Binding (WSFederationHttpBinding), Part 3 With part 3 we'll look at connec

Weekly Raspberry Pi Maintenance: Kernel and Firmware Updates

In my previous post concerning weekly Raspberry Pi maintenance , not much was said about keeping the Linux kernel and Raspberry Pi firmware up to date. I finally had some time this week (and found the motivation) to look into the issue. As it turns out (and as expected), the kernel and firmware are Debian packages, so they are indeed checked and updated by apt-get . So, as long as you're running apt-get update and apt-get upgrade or apt-get dist-upgrade , your kernel and firmware will remain current. The versions pulled by apt-get, though, are the current stable releases. Stable releases of the kernel and firmware undergo quite a bit more scrutiny than other packages may. As a result, updates and the new features and optimizations to the kernel and firmware may take longer to get into the stable release than similar changes within other packages. If you're the daring (or trusting) type, then you can run more recent and experimental versions. The easiest way so far to ma

WCF: Handy Piece of Code to Display the Endpoints

Work's been crazy lately but in the course of testing a WCF service we have here, I cranked out the typical quick-and-dirty self-hosting console application. A simply addition I made to my usual code is the display of the endpoints on which the service is listening. The result looks like this: The list of service endpoints is useful so you can verify the configuration of the client without having to go back into Visual Studio, find the app.config file, open it, and dig through it until you find the addresses. Here's the code; important pieces are highlighted: using System; using System.ServiceModel; using CNEG.RetailGasSystem.ServiceFacade; namespace StarTesterSelfHost { class Program { static void Main(string[] args) { int exitCode = 0; try { ServiceHost serviceHost = new ServiceHost(typeof(StarService)); serviceHost.Open(); Console.WriteLine("Service ho