- Melding Feature Development and Sustainment into a Seamless Workflow
In the realm of software development, two core activities dominate the scene – Feature Development and Sustainment. The former is about adding new capabilities to the system, while the latter deals with maintaining and refining the existing system to ensure its steady and reliable operation. Traditionally, these two are seen as separate tracks, often managed by distinct teams with different sets of priorities and timelines. However, as the industry evolves towards more agile and lean practices, it’s time to question this division and advocate for a more unified approach.
Read More
- Evolving the Developer-QA Dynamics
The quest for efficiency and quality in software development beckons a paradigm shift, where Quality Assurance (QA) is not seen as a separate entity, but as an integral part of the development lifecycle. Automation stands as a cornerstone of this transformation, offering a myriad of benefits when adopted in the QA process. When sustainment developers and the QA team collaborate in the same repository, contributing to the code as equal partners, a new horizon of productivity and quality unveils.
Read More
- Greetings from Post-DEVIntersection
Note: the fake template string below is intentional
Dear {{firstName}},
I’m sure you’ve received marketing emails that start like this. It’s obvious that someone botched the mail merge. It feels lazy or incompetent, definitely unprofessional. But what if they got it right? What if your name was correct in the greeting? Is that really any better? Honestly, have you ever truly believed they were sending emails just to you?
Read More
- Watch Your Writing - Tips to Improve Your Written Communications (Revised Dec 2021)
With the explosion of social media over the past decade or so, the written word is often the first, and sometimes the only, exposure other people will ever have of you. There are hundreds, perhaps thousands, of people who who will only ever know you through your writing. Fair or not, many of them will judge you on how well you express yourself. This article is an attempt to provide some simple guidance to improve your language and your writing, to make that first impression a positive one.
Read More
- Mike's Mics - A Simple Test of Common Microphones in Virtual Meetings
Like most of you, I have attended countless online virtual meetings over the past couple of years. In every one of those meetings, there is always someone who sounds truly awful. Most people, I presume, do not give much thought to how they sound when they buy a new headset. They are more concerned with the quality of their speakers. I wondered, “If others sound horrible, what do I sound like? Am I using the best microphone to make it easy for others to understand me?” These meetings are bad enough as it is; I hate to complicate them by not being understood when I speak. That is when I decided to find out.
Read More
- No Good (Zoom) Deed Goes Unpunished
Earlier this year the leader of our church congregation asked me to take over the Zoom meetings for our weekly services. We meet in person, but some of our members still do not feel comfortable gathering indoors. The church pays for a Zoom license, so we set up a recurring webinar for them. All I need to do each week is provide a device, log on, start the Zoom meeting, and monitor the chat for any issues. I’m a technical guy. I can manage a Zoom meeting. It sounded like a simple enough assignment, so I agreed. It has been anything but simple, but I’ve learned a lot along the way, some of which may be useful to others.
Read More
- An Exercise Routine for the Sedentary Developer
Sitting behind a desk all day is a typical part of a software developer’s life. It is easy to become lazy and sedentary, which describes me over most of my career. That all changed in 2020. The COVID pandemic brought on a new era of remote work. Not having a daily commute gave me the chance to come up with a new morning routine.
Read More
- Diagnosing Random Angular Test Failures
Have you ever had an intermittent or random failure in your unit tests? I did, and I was pulling my hair out trying to figure out the problem. Below I will describe how I finally managed to find the offending tests and solve the problem.
Read More
- What Did Prettier Do to My HTML?
I have resisted installing and using Prettier for a long time now, mostly because I was happy enough with the job VS Code does formatting my code. Then over the Christmas break, my son convinced me to install it. After I did, he said, “Now open an HTML file and I’ll show you something you aren’t going to like.” Sure, now he tells me! That struck me as ominous, but I decided to go along for the ride.
Read More
- Upgrading an AngularJS Project to Angular
For the past few months I have been involved with migrating an AngularJS 1.4 app to a more modern version of Angular. Below I will describe some of the processes, techniques, and issues I have encountered to make the migration successful.
Read More
- New Book Announcement - Angular Advocate
How I became the go-to Angular Advocate at work – and how you can, too!
Read More
- Upgrading Angular from 8 to 10
Angular is on a six-month release cadence, which means you need to stay on top of them in your own projects. The last thing you want to do is wake up one day and find that the latest version was just released and you are stuck on a version from two and a half years ago. Fortunately, the Angular team has made it very easy to upgrade.
Read More
- Guns in the Office
What do you get when you combine a bunch of software developers with a perceived impending disaster? In one case, we got guns, and lots of them! The weirdest thing is how normal it all seemed.
Read More
- Pixabay.com - a Review
The other day I was looking for a picture of a swimming pool for a mobile app I am writing (more on that later). Much to my excitement, I stumbled upon an online image catalog called Pixabay.
Read More
- How I Got My First Programming Job
I wanted to become a software developer from the time I wrote my first “Hello World” app in 9th grade. After graduating high school in 1985, I entered the University of Maryland’s Computer Science program. It did not go well. I completed only four semesters of college over the next five years. My dream of becoming a professional developer faded. In 1995, nearly ten years after high school, I finally landed my first paid programming job. Here is how I did it.
Read More
- My Disastrous 3-Year Programming Hiatus
Ten years into an otherwise successful software development career, I experienced significant burnout and walked away from a 6-figure salary. I quit my job, sold my house, moved to a remote part of New Hampshire, and did not work again in software development for almost three years.
Read More
- Debugging AngularJS from VS Code with Docker Containers
This post describes how I built a docker container that runs an express server, which serves an AngularJS app, written in TypeScript, with live reloading, remote Chrome debugging, with Source Maps served from a different directory, and VS Code breakpoints.
Read More
- Passive Income from Side Gigs
My side gigs have brought in almost $7000 in passive income through the first half of this year, mostly by formatting and editing content I already had lying around. Here is why and how I did it.
Read More
- Hybrid Mobile Development at Disney
One hot summer day, my team received a somewhat frantic email. Due to some hardware support issues, a very large and visible part of our business was at risk of being shut down. They wanted to know what we could do about it. This post will provide some of our challenges, and the solution we ultimately provided, to keep the business running.
Read More
- Why I Work at Disney, Part 2 - Career Benefits
Last week I posted an article describing all of the cool things I love about working at Walt Disney World. Things that have nothing whatsoever to do with my actual job; they were simply the extra benefits available as a bonus. This post is all about the career benefits of working here.
Read More
- Why I Work at Disney, Part 1
I am currently in my tenth year as a Disney Technology Cast Member. As the tenth year is a milestone year at the company, I have spent some time reflecting on my time here, my career, and where I want to go over the next decade. My conclusion is that I cannot imagine working anywhere else. This post describes some of my reasons why.
Read More
- Walt Disney's Four Keys (Of Software Development)
I recently celebrated nine years as a software developer at Walt Disney World in Florida. It is the longest I have ever stayed with a single company in my nearly 30-year software development career. Not coincidentally, it has also been one of my most rewarding. In this post I will describe a philosophy of Guest Service known as Walt Disney’s Four Keys Basics. In a follow-up, I will discuss how to apply these basics to software development.
Read More
- The Most Magical Job on Earth
I normally ignore unsolicited emails from recruiters. They are almost never a good match, and feel as though they are “shotgun” email blasts sent to hundreds or thousands of people. This one was different, though. It had the word “Disney” in the subject line.
Read More
- How to Create an Effective Ionic Menu With and Without a Split Pane
One of my blind spots when creating apps with the Ionic Framework is adding a side-menu after the fact. Even after using it for so many years, it seems I always need to look up how to do it. So I created this post to remind me (and you) how to create an effective Ionic Menu with and without an Ionic Split Pane View in an Ionic Angular application.
Read More
- I Finally Understand Ionic Menu Types
It took some experimenting and creating a video, but I finally figured out what the difference is between the three
Read Moretypes
for an ion-menu component in the Ionic Framework.
- Displaying "Network Offline" in an Angular and Ionic Application
One of the key features of Progressive Web Applications is the ability for them to function without a network connection. Angular makes it really easy to turn any web app into a PWA. Believe it or not, though, having a PWA that works offline does come with some downside, primarily due to it caching much of your application. If your users are expecting current data, but your service worker is serving cached data, there could be some confusion. So in this post, I will show you how to provide a small visual indicator to your users whenever the app is offline.
Read More
- My PWA Journey
Deploying to app stores is painful. It is hard. There are many aspects of deploying apps that you must get right, and the process differs between the Apple App Store and the Google Play Store. This post describes my experience with that process, and why I became so captivated with Progressive Web Applications (PWAs).
Read More
- Watch Your Language - Spelling and Grammar Tips for Developers (Updated April 2020)
At the risk of offending some of my peers, I want to make an observation. As a group, we tend to be horrible at written communication. Software developers are some of the worst writers I have ever read. We make sloppy mistakes, both in spelling and in grammar. Whether you write technical articles for a living, blog posts for a hobby, or pull request comments, this article is an attempt to provide some simple guidance to improve your language and your writing.
Read More
- Online Course - Ionic and React, Zero to App Store
A while ago I made a post I titled “Confessions of a Reluctant Ionic-React Fan”. That post led to an experiment where I began to recreate using Ionic-React a subset of one of my existing Ionic v4 apps written in Angular. That in turn led to my latest online video course, Ionic and React, Zero to App Store. This is my most ambitious course idea yet, which I explain in more detail below.
Read More
- A Few Days with Twilio Flex
Have you ever needed to create an application for customer engagements? Imagine building a call center application from scratch that needs to support phone calls, web chat, and SMS messages, interactive voice response, speech recognition, and more. If the thought of doing all of that makes you cringe, you might want to consider Flex from Twilio.
Read More
- Ionic-React, Upgrading to Ionic v5
Ionic v5 has been released, right in the middle of the conversion of one of my Ionic apps to Ionic-React. So in this post, I will describe what I had to do to upgrade this work-in-progress to the latest version.
Read More
- Ionic-React, a Brief Introduction
The other day I made a post I titled “Confessions of a Reluctant Ionic-React Fan”. That post contained some snippets that got added to the default Ionic SideMenu template, but it neglected to provide any real functionality. In this post, I will attempt to recreate using Ionic-React a subset of one of my existing Ionic v4 apps written in Angular.
Read More
- Confessions of a Reluctant Ionic-React Fan
What happens when a committed Angular developer crosses over and experiments with React, while working on an Ionic application? Would it work out well, or result in catastrophe? As it so happens, I did that exact thing over the 2019/20 New Year’s break. I was asked to come up with some sample questions to test someone’s knowledge of Ionic. “Angular or React?” I asked. “How about both?” was the reply. So I set out to create some Ionic questions, based on some real issues I had faced, creating both Angular and React examples. This meant learning at least some of Ionic-React. This post summarizes some of the things that I found pleasantly surprising.
Read More