Chris LeCompte I make web things... among other things.

Stuff I write about

Life like a government

October 13, 2017

I think of life like the government. I know, that sounds like an oxymoron. Since humans organized into tribes, there’s always been a clash between individualism and collectivism. So how can I can possibly equate life to that of a government?

It’s simple. I, myself, am the government/nation, and I organize my thoughts, actions, and plans into different “departments.”

Most governments are divided into smaller entities. Within the executive branch of the U.S. government, we have multiple departments. Each of these groups carry out different missions to achieve goals that impact the health and continuation of the government and nation. Individual life is not much different. We serve ourselves—the government and nation—and to achieve that purpose we must organize our thoughts and actions into logical bureaus of internal interests and outside relations.Keep Reading

Involving QA with the front-end development process

September 25, 2017

Building interfaces is a touchy area. Behind the scenes, you have ever-changing JavaScript libraries and naming schemes that can ripple throughout your application’s architecture. Then you must take into account the multitude of operating environments and the way they render your interface. A user on Windows looking at your application on Internet Explorer 10 must have the same experience as the user on a Mac with Google Chrome.

With all of these variables to manage, implementing a sane quality assurance process can quickly become a nightmare.

To maintain the sanity and to keep our QA folks from skipping town, my company has adopted a number of processes that streamlines software testing.

Keep Reading

Giving Meetings a Little Structure

August 24, 2017

Most people I know hate meetings. They’re long, boring and often unrelated to the tasks at hand. And we’ve all been in that environment where every decision requires a meeting. Meetings just suck the energy and motivation from the office.

But what if I told you meetings don’t have to be so cumbersome?Keep Reading

Increasing Web Project Efficiency With Time Tracking

August 11, 2017

Everyone wishes they could have more time. With extra time, we could get so much more done—finish those long-delayed projects, get more sleep, learn new career skills, read Lord of the Rings backwards (or forwards). But we don’t have the ability to create time. We’re stuck with those finite number of hours per day and nothing’s every going to change with that.

Given how much we value time, why do we allow it to pass so casually? Shouldn’t we track and understand where it’s going?

The obvious answer: yes. Especially for our web projects.Keep Reading

Forcing myself to write

July 31, 2017

I’m sitting on the couch, staring at an empty screen. I set out to write something—anything. But my mind went blank. All thoughts circled around the idea of watching YouTube videos or perusing the web. Writing was desired but not necessarily expected.

I want to write more. I used to write a ton—books’ worth of content, actually. However, I’ve found myself in a perpetual state of writer’s disdain.Keep Reading

Iterate, Iterate, Iterate

July 19, 2017

How many times have you started a task—or thought about starting a task—only to quit immediately because it seemed too hard? You wouldn’t be alone. I’ve quit many, many things for the simple but dumb reason that it looked like too much work. We all fall into this trap.

The worst is allowing your brain to shut down a task before you’ve even begun. For example, re-designing my personal website has been on my mind for a couple of years now. I’ve thought about it over and over, about all the work that would be required, about the new content I’d need to develop. My brain would register these seemingly endless tasks and then shut me down. It was just too daunting for me to take on a re-design of my site.

So I quit.Keep Reading

Waiting for the Perfect Time

March 29, 2016

I’ve spent a lot of my life waiting. Waiting in traffic, waiting in line, waiting for a friend. Waiting is never going to go away — it’s always going to be there.

But there are things we don’t need to wait on. Creativity, writing, adventures — none of those need to be constrained by waiting. But I do it all the time. I always wait for the perfect time to write a blog post (which, judging by the timestamps of my blog, is an apparent rare occasion…). I say to myself that I need to update my website first, that it must look better, that I must fix some feature before I can write. That’s all bogus. It’s an excuse not to write. And frankly, no one cares. It’s the content that matters, and to create content, you must write.

It’s hard not to wait. Procrastination is threaded within all of us. We rely on waiting to delay the hard work, to be lazy.Keep Reading

Making Email Testing Easier with Grunt.js, Mailgun and Amazon S3

August 3, 2014

After seeing Lee Munroe’s excellent Grunt.js script for automating the email design testing process, I decided to expand on it and fork it over to my development process. Both Grunt and Gulp have made enormous contributions to my workflow in recent months. And when it comes to designing, building, and testing emails, automation is key.

When testing an email campaign, here’s what’s needed:

  • Legacy code that works across email clients (especially Outlook)
  • A place to host images
  • A way to send test emails
  • And, preferably, a tool to render test emails in different environments

Lee’s script handles all of this, from using Handlebar templates for multiple email bodies to compiling Sass and inlining the styles. Mailgun then steps in to send out the freshly created email code to whatever email account you want.

The only modifications I made to this script was to dump Rackspace Cloud Files in favor of Amazon s3. I also added support for image optimization. Here’s the code I added to my Gruntfile:

Keep Reading

Getting CodeMirror to Work With Ruby on Rails

July 19, 2014

codemirrorI’m in the process of building a pattern library at my current job. Keeping with the culture of the company, I’m building the library on Rails, using Sass and Haml to expedite the code writing. Part of the library needs to show code snippets, so to do this, I needed pretty output for the Haml source code I wanted to show. Basically, I didn’t want to settle for outputting code using <pre> and <code>.

Enter CodeMirror. CodeMirror is an in-browser editor that enables you to display source code with much of the power and theming capabilities of a full-blown editor. For my purposes, I just want it to show code coloring and line numbers.Keep Reading

Boosting Customer Retention in an Increasingly Service-Oriented Marketplace

July 10, 2014

600_295750542I recently attended a super awesome meetup held by the DC Lean Startup Circle group in downtown DC. The talk, titled How to Retain Customers, Create Raving Fans & Make ‘Em Beg for More, was about — you guessed it — customer retention.

I was intrigued by this topic because customer retention is a huge issue. I suppose it’s actually always been an issue for businesses, especially startups, but it seems to me that with “Software As A Service” taking off, keeping customers around has never been more essential for growth.

So with pen and paper in hand, I trudged my way through the hot mugginess that is DC in June and found myself enthralled by the first speaker.

Her name is Donna Khalife, and she’s the CEO of Surprise Ride, a startup business that sells parents on a monthly educational/care package for their children. I think this is a winner of a concept. Even more interesting about this speaker was that her company was a recent Shark Tank contestant. I don’t watch the show, but I know it’s popular, and anyone who cut their teeth under the derision of Mark Cuban must have something good to say.

And so here are my notes from Donna’s talk.Keep Reading

More Posts

A brief bio

Working from Northern Virginia, I’ve been designing, building, and managing websites for nearly a decade. I’ve been involved in both large and small projects in multiple industries and fields. Through these experiences, some good — and some bad — I’ve grown to appreciate just what is possible on the web. I’ve coupled my experiences with a degree in Management from George Mason University.

Chris LeCompte

    ID.me 2014–Present

    Front-end web development, design & other cool stuff in the digital identity arena.

    Freelancer Forever–Present

    Web development, design & strategy for tons of awesome clients.

    CXO Advisory 2007–Present

    Complete web and technology management for an investing site I co-run with my father.

    ACS Creative 2013–2014

    The front-end development guy for a small creative agency in Fairfax, Virginia.

    CAVENDO 2006–2013

    Web development, design & web project management – taking care of all the clients at the small web agency I ran with a friend.

Working on cool things