Default image for blog posts - purely decorative

The Executable Code Review

Tim Broyles Articles, Programming, Testing Leave a Comment

Testing has a bad rap. The thought of writing unit tests to exercise code with the goal of 100% code coverage can be overwhelming for many projects. The number of man-hours to set up tests, create mocks when needed, test boundary conditions, contrive odd ball test cases can take some steam out of the project. If this is the definition of test, then yes, writing these types of tests can be tedious and feel meaningless.

I am a proponent of writing tests with a narrow focus. The tests I describe here show the completion of a story or the resolution of a bug. With this narrowness in mind, the task is much less daunting. My goal now is not about code coverage, but more about quality code. With this test, I want to be able to demonstrate to myself (and to whoever is reviewing my changes), that I have successfully resolved my task.

In this blog I will talk about my suggestions for writing meaningful tests in the context of a code review.

React v16.0 Release Overview and Migration

Luke Curran Articles, Development Technologies & Tools, JavaScript, React Leave a Comment

React v16.0 was released by Facebook on Tuesday, September 26th. This version introduces performance boosts and other very helpful features.

React 16 brings some significant internal changes features to the table. In my opinion, one of the most interesting thing about this release is that React has been rewritten. Luckily, in terms of upgrading, if your app runs in 15.6 without any warnings, it should work in 16 (with minor exceptions).

In this blog I highlight some of the new features introduced in React v16.0, in addition to demonstrating how to update your current React applications to v16.0 using a Keyhole open source application for reference…

Using Docker + AWS to Build, Deploy and Scale your App

Brandon Klimek Articles, AWS, Cloud, DevOps, Docker, Python, Spring, Spring Boot, Tutorial 8 Comments

I recently worked to develop a software platform that relied on Spring Boot and Docker to prop up an API. Being the only developer on the project, I needed to find a way to quickly and efficiently deploy new releases. However, I found many solutions overwhelming to set up.

That was until I discovered AWS has tools that allow any developer to quickly build and deploy their application.

In this 30 minute tutorial, you will discover how to utilize the following technologies:
– AWS CodeCommit – source control (git)
– AWS Code Build – source code compiler, rest runner
– AWS Codepipeline – builds, tests, and deploys code every time the repo changes
-AWS Elastic Beanstalk – service to manage EC2 instances handling deployments, provisioning, load balancing, and health monitoring
-Docker + Spring Boot – Our containerized Spring Boot application for the demo

Once finished, you will have a Docker application running that automatically builds your software on commit, and deploys it to the Elastic beanstalk sitting behind a load balancer for scalability. This continuous integration pipeline will allow you to worry less about your deployments and get back to focusing on feature development within your application.

Default image for blog posts - purely decorative

Programming Ponderings

Ryan LaRue Articles, Consulting, Opinion, Programming 2 Comments

Editor’s Note: After nearly 20 years in software development, Ryan LaRue introduces three lessons he has learned in his programming career with takeaways that apply to all levels of experience.

Open Door Policy
One of the reasons I’ve always loved Software Development is its open door policy to new entrants. No MBA, PhD or, heck, degree required.

If you’re smart, like to solve problems, and get things done, then you will be welcomed with open arms.

At a recent client, one of the company’s permanent developers was, in her near-term past, a police officer. At some point, she decided she didn’t want that lifestyle anymore and worked her way into a nice position with a company that valued her work ethic and programming skills….

A Conversation About Conversations

David Pitt Articles, Conversational Apps, Development Technologies & Tools, JavaScript, Keyhole Creations, Mobile, Node.js, React Leave a Comment

We created a platform that supports developing a “conversational” type application through SMS. The user experience between a user and an SMS application can be thought of as a conversation. A user texts a question or topic, and a reply is returned, then another question and reply is performed until a desired result is accomplished.

Now, this is not a universal user experience, but for many use cases it can provide an easy to deliver users functionality quickly and conveniently. There is no need to install or download apps, or pop open a browser and type in a URL; just have a conversation through your texting app.

In this blog: Why conversational applications are handy, examples of conversational applications we have created, and a walkthrough of the application architecture used to develop those SMS applications. Includes how to make texting a richer experience, state, and session handling insights.