A Simpler Case for Functional Programming & “Elegant” Code

A lot has been written about the benefits of functional programming, but little of it is accessible to a newcomer. Some of the benefits are easy to understand from an inexperienced perspective (e.g. “it makes concurrency easier”), but others are pretty nebulous.

Chief amongst the inscrutable properties of functional programming is its “elegance.” It isn’t immediately clear what that word actually means in this context. Read more on A Simpler Case for Functional Programming & “Elegant” Code…

Finding a Win-Win in Difficult Situations

There are some extremely smart and creative people in the tech world. Surprisingly, many of them struggle with the simple concept of finding a win-win situation when adversity strikes.

I’ve observed that it’s common for developers to see a difficult circumstance as a win-lose, lose-win, or worse yet, a lose-lose proposition. These situations can seem scary, but they can also provide a great opportunity to grow a relationship. In my experience, people remember how adversity was handled, not that it occurred. Read more on Finding a Win-Win in Difficult Situations…

A Guide to Transitioning from GUI Editors to Vim

Until recently, I had done all of my coding in IDEs and GUI text editors. From Notepad++ to Visual Studio and Xcode, I felt like my text-editing toolset was more than adequate for the work I needed to do. I knew about Vim and Emacs, but they both seemed like esoteric, rocket science editors that only became relevant when a Git merge forced me into the file of a commit message. Read more on A Guide to Transitioning from GUI Editors to Vim…

Reflecting on the Atomic Accelerator’s First Year

I’m very excited to welcome our second Accelerator cohort this summer. This milestone provided a natural opportunity for introspection on the first year of the program. We’re very pleased with the expected–and surprising–successes of the program. We’ve also made some changes based on what we’ve learned from the first year. Read more on Reflecting on the Atomic Accelerator’s First Year…

My 5 Steps for Tackling Stress

Deadlines, miscommunication, conflict. Regardless of what our jobs, projects, or responsibilities may be, we all face these things during our careers. If not handled properly, the stress from these issues can expand to other areas of life, quickly becoming unmanageable.

That’s why it’s critical to learn how to manage stress. While I’m not an expert in the field, I have had some experience dealing with stress and have learned a few things along the way. I’d like to share some tips that I have found useful when dealing with stress in my life.
Read more on My 5 Steps for Tackling Stress…

Five of My Favorite Command-Line Utilities

I spend a lot of time on the command line (generally, GNU/Linux), and often work on automating processes and tasks. My work often occurs on a remote machine to which I do not have access, and it generally must be headless (no GUI).

As a result, I have collected an arsenal of command-line interface (CLI) utilities that I always install when I’m setting up a new development machine for myself. There are often graphical analogues for these utilities, but I prefer these because of their CLI. Below is a sampling of my favorites. Read more on Five of My Favorite Command-Line Utilities…

“Most Advanced, Yet Acceptable” Software Design

Ever had a refreshing ice-cold Mexican Coca-Cola in that sweet glass bottle? The bottle just looks and feels right. Now close your eyes. Imagine the Shell Oil logo. It became so iconic that the company dropped its name from the displays at their filling stations. What about the fuselage of Air Force One? It pops instantly into mind, right? Anyone who has ever been to Johnson Space Center in Houston will also remember the interiors of Skylab and the Apollo moon mission capsules. All these objects are the work of one man: Raymond Loewy. Read more on “Most Advanced, Yet Acceptable” Software Design…

How to Create an Effective Project Charter

Micah Alles and I recently attended a Certified Scrum Product Owner training course with Mike Cohn. In addition to the excellent Scrum-process-focused learning, this course was a reminder of how important it is to maintain a fresh, relevant project goal that aligns and motivates the team. Read more on How to Create an Effective Project Charter…

loading…