Developer Skill Shapes
Embrace the dynamic nature of developer skillsets, and keep your team's landscape evolving to stay ahead of the curve.
My thoughts on programming, leadership, product design, and more, collected in chronological order.
Embrace the dynamic nature of developer skillsets, and keep your team's landscape evolving to stay ahead of the curve.
Tracing Network Calls Across Your Application Stack with Envy.js
An update to my `hapi-lambda` npm package to help you easily host Hapi.js 17+ applications on AWS Lambda
Here is a simple method for adding sorting to any table in Angular 2+. It's a simple approach that allows you to define how the table is filled with data, instead of the table sort forcing you to use either client side or server side.
Web Content Accessibility conformance levels are organized based on the impact they have on the design or visual presentation of the pages. The higher the level, the more restraining it becomes on design. As a rule of thumb, success criteria from level A should be invisible or barely noticeable to the interface. On the other hand, level AAA will have such a high impact on design, that most organizations will not be able to achieve that level.
An easy way to implement the Serverless Monolithic Pattern with Hapi.js and AWS Lambda
Add some spice to git bash to help battle the cubicle blues.
Here is a useful Dockerfile for running Mule ESB EE in Docker. We are currently running this on Red Hat's Openshift (kubernetes-based) container server and it runs quite well.
There are a great many tools available for testing REST Api's by various vendors, open source plugins, browser plugins, and the old classic `curl`. If you're looking for a really simple way to test REST Api's that is easy to maintain and entirely automated then you should consider using Cucumber with Javascript.
The morning standup meeting is a chance for everyone to participate in a conversation that aims to share an understanding of the current objectives, coordinate team efforts, share problems and offer help, and identify potential issues.
Shower Thoughts: "This is dynamic! It's great! So Simple! None of that overengineered junk!"
A new plugin I wrote that will allow Hapi to authenticate against PINGFederate Opentoken endpoints.
Here is the family sailing on our boat "Venti" 4th of July weekend. We sailed a short hop from Manitowoc to Sheboygan, WI.
A unique way of working with ranges in a more fluent way in a REST API. What is nice about this approach is its easy to hook up to javascript and is still a valid url scheme.
A new plugin I cobbled together that will add a view handler to Hapi.js routes to serve themeable content. This allows you serve different stylesheets by theme name, serve different layout files, or whatever you need. Content can be themed by url (default), http header, or a custom function.
Linqpad is great for writing a quick test or exploring some api features. If you need to write a group of tests, you can use this quick little snippet to run Linqpad like a unit test.
The proliferation of N-Tier architecture has caused a common anti-pattern with the use of interfaces in .NET applications. This anti-pattern often presents itself as a form of dependency injection (DI) with its usage intending to reduce the coupling between applications but often creates the exact opposite situation.
To make glass development easier or just set things up for a presentation, you can mirror the glass display on a desktop or laptop using Android Screen Monitor (ASM).
The Brew Bucket is a winner, hands down. My only real hold up is the price and the amount of beer that could get left behind when you rack, but otherwise this is a real high quality product clearly designed with homebrewers in mind and not just some scaled down version of what the big boys are using. I'm really looking forward to any other products that might be coming out of their shop in the future.
Outside of the traditional method of gathering values from Arduino inputs, there are a couple of other excellent tools in the workshop we can use. Interrupts provide the means to allow hardware devices to trigger a routine in your sketch and perform additional processing outside of the main loop. This trigger usually happens when an input changes state, allowing you to monitor an input pin without having to check it each time the main loop runs.
Microsoft has done an excellent job of building a cloud solution that is downright fun to work with, regardless of the language or toolset you want to use. They are regularly releasing updated API's and new cloud service offerings, have remained competitive in their pricing, and have even been called visionary.
It seems that every example on the internet involving Node and web sockets is some sort of chat application. Let's break out of the mold for a bit and do something a little different.
A flexible, easy to configure replacement for the standard WPF Grid control. AutoGrid lets you reduce the amount of xaml when using grids for layout by allowing you to define rows and columns as simple properties and alleviating you from having to explicitly specify the row and column a child control belongs to.
When you're working with WPF or Windows forms one of the common issues that crops up is cross threading in your viewmodels. The following is a simple solution that wraps up a `BackgroundWorker` in some standalone classes that can be used with your `DbContext`. The nice thing about this solution is it doesn't require you to inherit any classes and you can stick the code in yuo project where you feel it works best.
This is a video board created for DuClaw Brewing Company to display what's on tap at the Maryland Brewer's Oktoberfest. Created to run on Xbox 360 or Windows 7 connected to a big ass Flat Panel television and a set of very loud speakers. The board also plays promotional videos on a set schedule and has a few more animations and effects not shown in this clip. The board actually runs on 3 different screens all with their own content, beer selection, videos, etc. We wrote the original for Oktoberfest 2009 and it gets updated each year. It's pretty much a giant video game written with XNA and C#.
Anytime I start a new project I’m usually super pumped to dive into some code and get something done. There I am, a cup of coffee and three energy drinks later, translating the latest business requirement into something simply amazing… or more likely, just another contact management application for the CEO of unnamed company X. But I’m happy, delightfully punching keys on the keyboard, slinging abstractions and enterprise patterns like its just another day. Just one more look at the functional spec and, wait, what is this? That’s right, I just realized that this is not a functional spec at all. This is **Functional Spaghetti**.
A useful extension for developers that don’t shy away from anonymous types in their viewmodels.