In this blog we discuss basic concepts surrounding quantum qubits (quantum entanglement, superposition, and decoherence), relate superposition to the “Bloch Sphere,” obtain a random value by measuring a qubit in superposition, and present a Q# quantum number generator (QRNG) that generates random numbers to the console…
Keyhole Speaking & Sponsoring Blockchain KC Conference
We are pleased to announce that Keyhole Software is a Gold Sponsor of the 2020 Blockchain KC Conference! Our very own principal consultant and managing partner, David Pitt, will be speaking on Blockchain software from his rich experience with the platform.
The one-day conference will be held on April 23rd in Kansas City. Multiple tracks and sessions will be offered on a wide range of topics including Blockchain for Enterprise, Cryptocurrency Regulation, Developing Blockchain Applications, and New Developments on the Horizon. Industry leaders from technological, legal, financial, and business development standpoints will share pointers for successful development and administration and coach organizations on how to utilize Blockchain in their enterprise architecture.
Decoding Mobile Development Options
It can be challenging to decide on the right strategy for reaching the mobile audience, though. If you decide an app is what you need, the next question is “what are my options?” In general terms, the types of mobile applications you could choose to build can be divided into three groups: vendor-native, cross-platform, and hybrid web.
In this post, we give an overview of the various mobile development strategies on our shortlist for enterprise clients to consider; for example, Xamarin, Flutter, React Native, and Ionic. For each tool, we give a brief introduction and highlight the key advantages and disadvantages found in implementing each mobile development approach.
An Antlr4-Based Expression Parser
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.
Transferring Spring Batch Apps to AWS Cloud
The last few years have seen a lot of movement to bring applications that don’t require manual intervention from the mainframe to Unix, Linux, Windows servers, or even to the desktop. This concept is commonly known as batch programming, and Spring Batch has been the tool many of us are using to accomplish this. Another trend that is gaining steam is to move from an internally-hosted server to a cloud-hosted system.
In this post, we discuss multiple ways for transferring Spring Batch applications up to the AWS Cloud, including EC2, Docker, Lambda, and others. I concentrate on AWS in this post, but, from my experience in Google Cloud, the same ideas will apply…





