Without Automated Testing You Are Building Legacy

Billy Korando Agile, Testing Leave a Comment

I have worked with several different organizations in my career on initiatives to rewrite legacy applications. A common theme for each project was that the organization struggled to deliver both maintainable and “agile” applications.

As developers, we’re curious by nature. I needed to understand exactly why this happens. In my contemplation of this common challenge, I discovered Automated Testing and became fascinated by it. I have since worked to include it as a central step as I write and maintain applications.

In this article particularly, I lay out how automated testing, or rather the lack there of, lies at the heart of many of the struggles we face as developers…



One Router to Rule Them All: React Router

Mat Warger JavaScript, React, Technology Snapshot Leave a Comment

Previously, we looked at a very basic example of how one can benefit greatly by using community projects such as Formik to avoid the tedium of certain solutions while embracing convention to create composable and scalable applications. We will be build on that foundation to explore the objectively great library that is React Router.

React Router has been at the forefront of routing in the React ecosystem for as long as I can remember. If you’re new to React, this is the way to go when you move state and start needing more options such as parameterized routing, nesting, and conditional rendering. If you have experience with React, this brings a powerful pattern to bear in that everything is a component. It takes the composablity of React and uses that to its benefit, handling any and all use-cases with relative ease.

In this blog, we’ll introduce the basics of the React Router through hands-on examples using its features.



Core ML

Core ML After Dark

Derek Andre Machine Learning, Mobile, Technology Snapshot, Tutorial Leave a Comment

So you’ve made this great social media app, and you are about to sit back and wait for the money to roll in. But, there is a problem: people keep trying to upload nude photos to it.

What if we could have a trained machine learning model that could detect not safe for work (NSFW) content and do it on a iOS device, before any image would be uploaded to a server?

Developing this trained machine learning model is way out of scope for this blog post. Luckily, the good people at Yahoo have already done this with their open-sourced trained Caffe models. The question now is, how can we use this on an iOS device?

In this post: The sultry side of your iPhone can collide with acceptable use policies. We introduce a machine learning solution that can help your application decide what is truly too hot for the internet using Core ML on iOS…



Azure Functions Breakfast Boost Scheduled

Keyhole Software .NET, Company News Leave a Comment

We are excited to announce the next free public Keyhole Software educational event: Building Your Evil(?) Empire with Azure Functions.

This Breakfast Boost event is a live learning opportunity that is open to the public. The presentation is geared to benefit software developers who are interested in implementing Azure Functions or building Cloud Solutions using JavaScript and .NET technologies.

For this educational talk, Keyhole will bring in guest speaker Bryan Soltis of Kentico, a Microsoft Azure MVP and Technical Evangelist.

This free presentation will be held at the Keyhole Software office in Leawood, Kansas on Wednesday, January 31, 2018 from 8-10 a.m. Space is limited. To get more information and reserve your free tickets, please visit this link to Eventbrite.com or https://azurefunctionswithkeyhole.eventbrite.com…



OpenShift Quick Start: Build, Deployment and Pipeline

David Pitt Microservices, OpenShift, Tutorial Leave a Comment

This post is a continuation of our hands-on OpenShift Quick Start blog series.

In the first post we introduced OpenShift & its features. In part two, you worked to get OpenShift running locally & adding a Container with an API service to a Pod. In part three, you worked on scaling pods and managing Cluster with the CLI.

This blog continues that series, introducing the automated Continuous Integration / Continuous Delivery (CICD) features of the OpenShift platform using both the Web Console and the Command Line. A hands-on exercise will then show how a Jenkins build Pipeline can be customized…