Our “Back To Now” app: Now available on iOS and Android

October 22, 2019: Valley Programming is proud to announce the first release of our free Back To Now app for iOS and Android devices.

How it works

Back To Now is a “mindfulness reminder” application that helps you return to the present moment. In this first release the concept is simple:

An Android location “Fused Location Provider API” example

As a brief note to self, here’s some Java source code for a little Android project that kind of strips things down so I can focus on how to get Android location information with the Fused Location Provider API:

How to access fields in a Kotlin object from Java

An interesting thing I ran into today when using mixed Kotlin and Java code on an Android project is that if you want to declare constants in a Kotlin object, you’ll either want to do this:

object Constants {

    @JvmField internal val UPDATE_INTERVAL_IN_MILLISECONDS: Long = 10000
    @JvmField internal val REQUEST_CHECK_SETTINGS = 100
    @JvmField internal val last_known_location = "last_known_location"


or this:

Kotlin Quick Reference (a Kotlin/Android book)

As a brief note today, I started using Kotlin for Android development in 2018, and I’ve enjoyed it so much I started writing a new book that I called, Kotlin Quick Reference, which you can find online at that link.

Kotlin Quick Reference - book cover

How to fix null values in Spark DataFrame columns

No telling if I’ll ever need this again, but this weekend I was helping someone with some Scala Spark work, and the short version of the story is that they were ending up with null values in their data after creating a Spark join. The null values were ending up in two fields, one named balance and another named accountId, so I created these two Spark udf functions to fix the data, converting null values into Long in the first example, and null values into empty strings in the second example:

Useful, common, Docker commands for managing containers and images

As a brief note to self, this is a short list of useful, basic Docker commands that I just used while getting some Docker containers up and running:

My Automated GUI Testing software

Back in 2010 I initially released some software that I named Automated GUI Testing, or AGT, for short. As its name implies, I used this software for running automated GUI tests. I originally created it to test “thick client” desktop applications, but it can be used to test the GUI of any application, or at least any application that you can get running on a Mac, including mobile applications that can be tested in an emulator. (It should also work on Linux and Windows systems, but I haven’t tried it on those yet.)

ScalaCheck property-based testing

Note/Introduction: This article is a reprint of my original article, An introduction to ScalaCheck and property-based testing. The article is a short chapter from my book, Functional Programming, Simplified, and it begins after I have just talked about pure functions.

User Story Mapping, a Business Analyst and Product Owner design technique

If you’ve never heard of User Story Mapping before, it’s a great tool that Business Analysts, Business Systems Analysts, and Product Owners should know. When working with project managers, domain experts, and other business customers, it’s a terrific way to create a shared understanding of the requirements and design of a complete software system. It’s surprising how many people jump into creating a software system when many people on the project don’t have a complete understanding of the system.

Valley Programming software consulting services, 2019

If you have read my blog posts on or my tweets on Twitter, you know that I have a rare, non-contagious blood disease and it took 26 doctors over a period of seven years to properly diagnose. To tell you how rare this blood disease is, there are only 25 of us in the state of Colorado.


Subscribe to RSS - blogs