Application Persistent Database Connections

Category asynchronous programming, couchbase, JavaScript, Tips

Applications under stress stress out their databases.

This post explores solutions to aid applications to persistently connect to their database when under unusual stress.

Couchbase is demonstrated specifically.


Making MySQL Query Results More Concise with GROUP_CONCAT

Category Learning, MySQL, Tips

Group concatenation condenses items from specified columns into a list of values.
This is a bit easier to explain with visuals. Let’s begin.


Using getMulti in Couchbase

Category couchbase, getMulti

Do you ever find yourself making Couchbase calls inside of a loop to get your documents, and you ask yourself if there is a better way? One handy method in the Couchbase SDK, version 4.5 or greater, is getMulti, a variant of the get method that allows you to perform bulk retrieval operations. 


Kubetail - Watch multiple pod logs the easy way

Category DevOps, Docker, Kubernetes, Tips, Tutorials

At CKH we have been using Kubernetes for orchestrating our Docker containers.   One of the challenges when using Kubernetes, however, is when you have a Deployment that is set to scale your app to multiple Pods, watching logs for all of those pods.  Let's talk about kubetail and how it can help us with this issue.


Improving E-commerce Security

Category E-Commerce, Security

The state of e-commerce

Electronic commerce, more often known as e-commerce, continues to grow at a staggering rate. In 2014, worldwide e-commerce sales totaled $1.3 trillion and by the end of 2017, e-commerce sales topped $2.3 trillion dollars. In 2017, U.S. Black Friday e-commerce sales alone amounted to $5.03 billion. With so much money being transferred electronically, many people are concerned about how to protect themselves online while still enjoying the convenience of e-commerce.


Retooling

Category Growth, Learning, Retooling
Tech moves fast, there's no question. New languages, frameworks, ecosystems--it all develops at breakneck pace. It is simply impossible to keep up with all the things. Most of the technologists I know find something to deep-dive into, but also try to keep a pulse on what the broader community is doing. To make it a career, it's almost required to find a groove and rock it for a long time. Time spent and code written (and tested and debugged and refactored) is what allows deep context, which is what defines an effective developer. But as it goes, the tech landscape changes, clients (internal or external) require new shiny things, previously developed deep-context is no longer relevant, and the meaning of life is lost forever! (Too dramatic? Maybe it's just me? I digress...) When it's time to retool, do not lose heart! You did it once (or twice, or thrice), you can get back to being (and feeling) productive.

Asynchronous Programming with JavaScript Part 1: Introduction & Overview

Category async/await, asynchronous programming, callbacks, JavaScript, promises, Tutorials

Thanks to recent language updates, there are a variety of ways to hand asynchronous programming with the JavaScript language.

This is an introduction to the available JavaScript asynchronous programming method options: Callbacks, Promises, and Async/await.


Get Paid For Networking (Referrals FTW)

Category Marketing, Networking, Referrals

In August of 2017, we celebrated our twentieth year in business. It has been quite a journey and a lot has transpired over the years. We’ve learned a lot, one of the biggest lessons we continue to learn each day is that networking is a critical component of a thriving business. We have been fortunate over the years to connect with so many in the development community that we have learned from, worked together with, and ultimately developed close relationships with. Early on we implemented a referral program to reward those that sent business our way. So, I thought I would tell you more about how that works so you can network with us and get paid too!


Legacy app, meet ColdBox

Category ColdBox, ColdFusion, Refactoring, Tutorials

The term "legacy application" strikes fear in the heart of many a developer, invoking images of spaghetti code, undocumented secret sauce, and evidence of multiple attempts to start some semblance of a paradigm that might have been in the vague direction of a coding standard or convention. Fortunately, there now exists a direct path to bring your legacy out of the cold and into the warm embrace of a modern framework.

ColdBox has seen the need for a migration path for these applications and implemented a feature called Implicit View Dispatch. This means that without having an event handler defined, you can create views, and the events and actions are implicitly created based on folder structure of /views. For example, I can create a view file in the location of views/about/contactUs.cfm, and the corresponding event is implicitly created, permitting the URL mysite.com/about/contactUs to display that view. No handlers, no layouts, no routes. Just views. Pretty slick.


Slides for Say goodbye to “it works on my machine” with Chef and Vagrant

Category cfObjective, Presentations, Vagrant

Thanks to everyone who came out to my presentation today on Say goodbye to “it works on my machine” with Chef and Vagrant.  I hope you learned a ton and are excited to start automating all the things

You can find the code for it at https://github.com/gratzc/it-works-on-my-machine-chef-vagrant or you can just view the presentation online at http://gratzc.github.io/how-to-be-a-good-os-citizen/it-works-on-my-machine-chef-vagrant.


1 2 3 >>