White Paper Published – Microservices: Patterns for Enterprise Agility and Scalability

Keyhole Software Architecture, Company News, Microservices, Tutorial Leave a Comment

We’re excited to announce the release of a new, free white paper on the Microservices software architecture style.

Microservices is an architectural pattern gaining steam in the development community. A Microservices architecture addresses problems that modern enterprises often face, including responding to market demands, handling spikes in traffic, and being tolerant to failure. These benefits are achieved by functionally decomposing a business’ domain into microservices, services that handle only a single responsibility.

In this white paper, we discuss how Microservices came to be, contrasting architecture patterns, features of a Microservices architecture, established patterns, how to get started with Microservices, and suggestions for Microservices adoption.

Download the free Keyhole Software white paper today!



Getting Started With Ionic 2

Adam Costenbader JavaScript, Mobile, Technology Snapshot, Tutorial Leave a Comment

Everyone wants to have an “App” to represent them, their company, or just to perform some common task they might have in mind.

The problem with this is that there is so much to mobile app development. iPhone apps require that you have a Mac to compile them. Android apps have to deal with platform fragmentation. iPhone apps can mean working with Objective C, Android can mean Java– and if you aren’t a polyglot and fluent both these languages, you probably feel that mobile app development is quite the daunting task.

Luckily, though, there are other options to choose from – like the Ionic 2 framework. In this blog, we’ll show just how easy it is to get up and running with Ionic 2 by creating a reference mobile application. By the end of this blog, our application will have the ability to run in the browser, emulator, or be built-out to run on a device.



Learning Angular C.R.U.D.

Chris Berry AngularJS, JavaScript, Technology Snapshot, Tutorial 1 Comment

So, you’ve learned JavaScript and now you’re wanting to get into Angular. But where do you start?

There are quite a few examples out there. One of the best ideas I have personally found useful for a new developer to learn is how to do Create, Read, Update and Delete operations.

In this blog we’ll go through the process of building a simple, working Angular address book application with C.R.U.D. operations. By the end, and by studying the full, working code, you should have a better grasp on Angular.



Cobol to Java

Adventures In Modernization: Strategy + Example Converting COBOL To Java

Dallas Monson Consulting, Java, Keyhole Creations, Programming, Technology Snapshot, Tutorial Leave a Comment

We have consultants who specialize in moving old to new, renovating dilapidated code bases, and designing brighter futures for enterprises who have been vendor-locked for most of their existence. We have come across some repeated patterns and strategies for how to approach modernization of legacy systems. In this blog, we will cover a strategy that is very popular right now, Re-Platforming.

The basic flow of this post will be:

Introduction to Modernization
High-level definition of the Re-Platforming Strategy for Modernization
Sample of Re-Platforming using Keyhole Syntax Tree Transformer, COBOL –> Java
Additional thoughts on the value/risk of this strategy

Let’s get started…



Spring Boot – The Right Boot For You!

Matt McCandless Java, Spring, Technology Snapshot, Tutorial Leave a Comment

Need a little spring in your step? Tired of all those heavy web servers and deploying WAR files? Well you’re in luck.

Spring Boot takes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as possible.

The aim of this blog is just to get you familiar with how to get Spring Boot going on your machine. It is going to be fairly straightforward and vanilla. The goal is to get you started…



Setting Up Angular 2 MockBackend

Todd Leininger AngularJS, JavaScript, Technology Snapshot, Tutorial 6 Comments

Todd was working on a client project developing one of the company’s first Angular 2 applications when he found that he needed access to the REST services before they were ready. He needed a good way to mock them up, so he set up a mock service for an Angular 2 application using MockBackend.

In this article Todd shows a step-by-step example of setting up a mock of RESTful web service APIs for an Angular 2 application using Angular’s MockBackend. With this method, he could then use that mock to work on the application before the real APIs were ready.



Using Toastr With SignalR

John Holland .NET, Technology Snapshot, Tutorial Leave a Comment

When you submit data to the server within a Single-Page Application (SPA), you are not performing the usual form post of data that would generate a new page load. Rather, you send the data using AJAX and are able to parse the response returned by the API using JavaScript and can act accordingly. In the past, this would most likely come in the form of an alert or populating a div with the appropriate message. This approach did what I needed it to do, essentially notifying the user of success or failure and allowing them to move on with their work.

Enter Toastr. Now I can have a non-blocking, consistent way in which to display these messages to the user, that are styled respective to the type of message it is. This is where the story gets interesting. So with this easy to use, non-blocking, consistent way of displaying messages, you can pair it up with SignalR and provide that same messaging from the server-side.

In this blog, we will demonstrate the use of the Toastr messaging library and how, when you couple it with SignalR, it can provide you with an easy-to-use, consistent messaging alternative.



Web Development Business

Creating a SQL Database Project for Isolated Development

Rusty Divine .NET, Databases, Problem Solving, Technology Snapshot, Tutorial Leave a Comment

In this article you see how to create a database project that will let you quickly and consistently deploy a database to your local environment. This approach can help to solve some issues from team members interfering with each other’s work on a shared development database.

Then, in an upcoming article, we will show you how to take the next step to include this database project in your continuous integration process and deploy it to each environment up the chain to production so that you can eliminate the need for any direct interaction with database updates.



Quick Start: End-to-End Testing With Protractor

Todd Horn AngularJS, JavaScript, Technology Snapshot, Testing, Tutorial Leave a Comment

As AngularJS applications become more complex, manual testing becomes unreliable and repetitive. Unit Testing is a great start for testing the code, but eventually End-to-End testing is needed for better coverage.

A great tool to use for this is Protractor, an end-to-end test framework for AngularJS applications. In this blog, we’ll briefly introduce the benefits of Protractor and give you the steps needed to get started with the tool.



Handlebars – A More Dynamic Way

Dagin Fullmer JavaScript, Single-Page Application, Technology Snapshot, Tutorial Leave a Comment

Handlebars.js is a popular templating engine based on the Mustache template language. In this blog, we will explore how Handlebars is a dynamic template creation tool and what benefits logic-less templates afford us. During our discussion we will cover Handlebars’ precompiling, partials, and helpers, and how each supports or contradicts dynamic and logic-less templates…