22 Oct

Interesting Design Pattern: Content Organized by Date


I’ve noticed in several apps and sites lately that the way they organize content based on date metadata ends up being pretty convenient. What these apps have in common is that you can interact with any given type of content said apps are specialized in based on when that interaction happened, not other common properties such as file name or extension. In other words these apps are not a calendar, but they’re looking like one, which I find interesting just like an outliner as a separate app isn’t terribly valuable to me, but I do love outliners within apps as a way to organize the UI.

I think the temporal axis maps well with how the brain works, and if well done, it allows for some fuzziness. Sometimes you may not remember a file’s name or location, but you know for sure you worked on it on Monday last week, or maybe just sometime last month. Examples: Read More

21 Oct

Using Docker Instead of Vagrant for Web Dev on a Windows PC


I started using Vagrant to develop Linux-based websites on my Windows desktop in 2014, as an upgrade from running XAMPP. At the time there were significant practical differences between Vagrant and Docker, but since then they’ve been moving towards each other – functionally if not in strict architectural terms – as Docker Inc. has been gobbling components with the acquisition of KitematicTutum (now Docker Cloud) and other projects.

I’ve been reading about Docker to wrap my head around this ecosystem, and now that I’ve started using it here are my notes, updated on an ongoing basis as I go through a bunch of research/trial/error/fix phases. You’ll find plenty of practical tips to address the kind of pesky issues you run into when you really try to get a whole stack working, as opposed to just kicking the tires with a couple containers that don’t do much.

Read More

11 Oct

PhpStorm Integration & Productivity Tips for Windows-Hosted PHP Dev [Visual Guide]


Along with my recent move from Vagrant to Docker I decided to revisit a number of tooling choices that I hadn’t second-guessed in a couple of years. The best new mousetrap I adopted after that review is PhpStorm, an IDE that manages to include a huge amount of features and integration capabilities without feeling bloated.

Here’s how I set it up so far with my Docker/LEMP/WP/JS/Jquery/Bootstrap/LESS stack in mind. Though this entry is focused on Windows, PhpStorm is cross-platform and most of that stuff applies to Linux and Mac users.

Read More

29 Sep

Microsoft Outlook As A Platform – Take 2: From the Desktop to the Web


This 2004 entry was updated from the 2016 vantage point. Keep reading to the bottom for entertaining archaeology and to see how Microsoft is now making a real effort at integrating with modern web apps.


09/27/16 – New Outlook partner integrations help you extend your email capabilities. This makes desktop Outlook both a web-enabled app and a more traditional client-server app (if connected to MS Exchange Server), which is pretty cool.

See this list of 200+ add-ins for Outlook and Office 365 Connectors, which are starting to work with Outlook. And also Saas Integration Trends & Players.

Read More

17 Aug

Geopolitical Tectonic Movements: Watch the Mediterranean & Beyond

Note: this entry was originally published in February 2015, with ongoing updates and edits since then. Though the daily ebbs and flows of the news cycle may make it seem like some of these issues – like the Greek debt crisis – have been resolved, in reality these are deep-seated problems that continue to simmer under the surface.

Italians have become very concerned [Corriere della Sera] about ISIS’ recent inroads into Libya, adding a new twist to a humanitarian crisis that has been going on for years [The Migrants Files]. Deutche Welle summarizes the situation in Lampedusa:

“The residents of the island are waiting and hoping that no war breaks out right at their doorstep. There are frightening new rumors that have found their way across the Mediterranean. Read More

13 Aug

Integrating Judo and BJJ for Effective, Holistic Grappling [2016 Olympics Update]


When I was learning judo as a kid while growing up in France in the early 80s, ground work (aka newaza) was a significant component of the art, especially as it was taught to children. We didn’t call it Kosen Judo, but it was pretty close to it in spirit and purpose. (For the semantically inclined, Kosen Judo is pretty much a varsity ruleset, not some special handshake secret form of judo, and it’s now called Nanatei Judo.)

Fast forward 30 years, and when I wanted to practice again, I found that judo had to some extent devolved into a standing-focused sport because of how official competition rules changed over the past decades. I heard about brazilian jiu jitsu and instantly fell in love with its intricate ground game and focus on submissions (as opposed to pins). But again it turns out sports competition took its toll to undermine the essence of the underlying martial art. Read More

24 Jul

Ideas to Improve Software Documentation, Raise Productivity of Mere Mortals

July 2016 update: I’m resurfacing this entry, first posted in March 2014, in light of StackOverflow’s launch of their Documentation hub. They’re one of the best-positioned companies to tackle at scale the challenges I explain below. One of their key areas of focus is code examples, which is exactly what the doctor ordered.

The explosion in the quantity and quality of both commercial APIs and open source projects is a huge enabler for digital start-ups and small businesses. Instead of painfully rolling your own version of, say, sending email newsletters or displaying a media gallery, in many cases “there’s an app for that.” However, behind the numbers, the very uneven quality of the documentation made available with said APIs, plugins, and packages, is a serious impediment to fully realizing the productivity gains promised by these vibrant ecosystems. (Wow this sounds way too much like an enterprise software whitepaper!)

Typically documentation takes shortcuts by implying bits of knowledge that the reader may not have, skipping necessary steps, leaving out important nuances, or providing incomplete and obtuse examples. These issues are compounded because of today’s development by integration more than pure coding. I’ve been thinking about how this could be alleviated. Read More