Quick Start: Spring Security 5 OAuth2 Login

Brandon Klimek Development Technology, Security, Spring, Tutorial Leave a Comment

Social logins using Oauth2 have become a industry standard. It has revolutionized the way sites share data and has allowed users to quickly access new applications without having to create a new set of credentials. This article gives an example of why OAuth2 was invented and provides a working example of a Spring Security 5 application integrated with Google.

Avoiding Test-Driven Development?

Ryan LaRue Dev Methodologies, Testing Leave a Comment

Throughout time, there have been certain questions that will always result in great battles. In one recent throw down, I drew my line in the sand and bravely asserted, “Hell no, a hotdog is not a sandwich!”

There are other more dangerous questions that we’ve all heard, of course… is Mac better than PC? Is Android better than iPhone? Are dogs better than cats? That last question is the silliest of all as the correct answer is so very obvious. Regardless, these intriguing questions have often led to disastrous consequences such as sulking and hurt feelings.

Allow me to add another one to the list: Is Test-Driven Development (TDD) a good practice?

I know, provocative. In this blog, I will discuss test-driven development, why many in our field seem to hate it, and why you should choose to still implement some of its main concepts in your development….

White Paper: Demystifying Enterprise Cloud Modernization

Keyhole Software Architecture, AWS, Azure, Cloud, Keyhole Creations, Modernization Leave a Comment

Many IT budgets are consumed by maintaining existing applications and resources, and getting out from under the weight of these existing applications can be daunting—schedule is king, and making time to address modernization comes at the expense of current business needs. However, as the business world moves into the digital space to prepare to meet the next generation of customers and to compete globally, organizations can’t manage their applications in the same way as they have in the past—they must take them to the next level. 

Cloud technologies provide many of the building blocks to help businesses achieve these goals and prepare themselves for the future. This white paper is a solution-agnostic resource to help you understand enterprise cloud modernization and migration and to help you decide which strategy is right for your business. Are your applications ready for the new tomorrow?

[Video] Azure App Modernization & Innovation Day with Keyhole & Microsoft: Remote, 4/15

Keyhole Software .NET, Cloud, Community, Company News, Educational Event, Keyhole, Modernization, Video Leave a Comment

We are excited to announce Keyhole Software’s partnership with Microsoft to sponsor Azure App Modernization and Innovation Day on April 15, 2020.

During this free community event, attendees will have the opportunity to learn about Azure developer services and the latest on industry trends from Azure application development experts.

The agenda for the day will include three presentations with topics such as Azure App Services, Serverless Computing, Microservices & Containers, DevOps on Azure, AI for Developers and more!

An Antlr4-Based Expression Parser

Lou Mauget Development Technology, Java, Programming Leave a Comment

In this blog, we’ll present a simple arithmetic expression parser implemented through an Antlr4 parser generator. It will be able to take in an input string (such as 2+4+-4+-2*10%9*7) to produce the result (-12.0).

You may be thinking, “Great, but what’s the point?” Well, to answer your question, as simple as this example may seem, the principles involved actually extend to use cases such as DSLs, transpilation, and anything else expressible by grammar rules.

This post has two parts. In part 1, we’ll discuss the background components of a parser. In part 2, we’ll cover building the demo and running it. If you already understand grammar parsing, you could skip part one.