Programming With Stenography

Garrett Hopper Other, Technology Snapshot 3 Comments

As developers, we spend a ton of time typing, so any small improvements in speed or comfort are well worth it.

If you’re anything like me, then you spend a full day typing at work only to come home and continue typing into the wee hours of the morning. With so much of my life spent typing, things like RSI are a serious concern. I’ve tried a variety of different ergonomic keyboards and I’ve even switched to Dvorak, but none of it made any significant difference in speed or comfort.

In my search for alternative text input methods, I discovered stenography. In this blog, I will give an introduction to stenography and how programmers (like me) have implemented it in an effort to make typing more comfortable and efficient.



Event Storming For Rapid Domain Learning

John Hoestje Agile, Consulting, Dev Methodologies 1 Comment

Tl:dr: Use Event Storming to rapidly gain group understanding of complex business domains while having a more enjoyable time.

While I was browsing tech news sites looking for articles, a headline caught my eye talking about domain-driven design (DDD). Its main idea was to implement Event Storming to drive the understanding of the business domain. The more I read about it, the more I saw the value in what Event Storming offered.

On a recent consulting project, we were piloting Agile in a Waterfall environment, so in reality, any requirement gathering process used would have been new. We chose to compare Event Storming to User Story Mapping, allotting just one hour to work with each process. The process that the pilot Agile team favored would then be used going forward.

In this blog, I will share the main takeaways and benefits that became apparent while implementing Event Storming sessions, especially as compared to User Story Mapping. I will first explain the project we worked on and underlying opinions that drove our trial, what key aspects of Event Storming stood out to us, and then tips I picked up along the way for effective Event Storming sessions….



See Keyhole at KCDC 2017

Lauren Fournier Community, Company News Leave a Comment

The Keyhole Software team is excited to once again be involved in the Kansas City Developer Conference from both a sponsorship perspective and as conference speakers! As a Platinum Sponsor, we will have a booth at the conference during the pre-compilers and main conference days. Stop by the booth to enter for a chance to win an Amazon gift card. Keyhole Software team members Brice McIver, Jaime Niswonger, Billy Korando, and Chase Aucoin will present talks at the conference…



Converting Enterprise Applications to TypeScript

Clayton Terry JavaScript, Single-Page Application, Technology Snapshot, TypeScript Leave a Comment

We have all been there: some new technology comes out and we know it would improve our maintainability. But we can’t use it. We already picked a technology, it is already implemented, and we can’t change it now. We are stuck.

TypeScript does not work like that. TypeScript is JavaScript, and JavaScript is TypeScript. What this means is any existing files you have are compatible with any new file you add.

So why waste time changing if it’s all the same anyway? TypeScript has some great advantages that JavaScript does not. In this blog I will introduce some of those advantages, as well as some troubleshooting tips for if you run into issues when you choose to convert to TypeScript…



Building Applications Using the backbone.khs Framework Extension

John Boardman BackboneJS, JavaScript, Node.js, Technology Snapshot Leave a Comment

Backbone is a very powerful application development framework. However, it can be a little “close to the metal” in terms of how much work is needed to produce a working application with it. I see Backbone as a low level framework that could use some help in making it a bit easier and faster to use.

Keyhole has released an extension to help! The backbone.khs framework extension npm module (available by clicking the link) does its best to minimize the work necessary to get a Backbone application up and running.

The extension makes it easier to deal with:
• browser history
• root level non-Model Object implementation
• caching
• session support
• regions (which break pages up into more workable segments)
• a top-level Application object to manage the application
• modules to help with page and URL routing
• a Backbone View extension to seamlessly integrate Backbone Stickit and make Marionette templates easier
• a Collection View to enhance working with groups of items.

In this blog, I’ll describe these enhancements with some code examples…