Four Feeds I’m Reading Right Now

I’ve some a semi-annual pruning and searching on my RSS feed.  Here are some of the feeds I find valuable as a developer, engineering manager, and person. 

  • Daniel Bachhuber – I’ve known Daniel for years, and his feed focuses on things that are important to him. It’s not a single topic site by any means, but his writing on open source often influences my thinking. 
  • Rands in Repose – A manager of mine turned me on to Rands about 8 years ago, and I’ve been reading it regularly ever since. It’s a must read if you are interested in engineering leadership. 
  • Four Short Links – An eclectic collection of links five days a week. 
  • Jeff Wong – I sat near Jeff while we worked together years ago and he became one of my biggest influences on how I think about design. Years later and I still enjoy his writing. 

Who are you reading these days? 

WordPress at 15

I came into WordPress like a lot of people: I wanted a blog. I tried blogspot and it was lacking, so I googled around and discovered WordPress.  This was 2007, WordPress 2.2 had just been released. Widgets were the hot new thing. Tags were still a few months away from being added to core. It was an entirely different WordPress than we have today.

WordPress has had a giant impact on my every facet of my life since then. In just the last week, I organized a last minute Happy Hour for a friend I made because of WordPress. I sat at the house of a friend enjoying the company of him and his family because I got involved with WordPress. I started a job I got because I got involved in WordPress. I took a friend out for a drink who I met because of WordPress. I wore a bow tie that was given to me with a WordPress logo because I got involved in WordPress. I stayed up entirely too late making Art to celebrate WordPress because I got involved in WordPress.

Above you’ll find 15 mono prints I made in celebration of WordPress’s 15th anniversary. Inspired by the WordPress logo, I based the text on Dalliance, Jason Santa Maria’s inspiration for the original W, before cutting the linoleum and making each print. For the Blue, Black, Orange, and Grey, I used printmaking ink. The green is acrylic paint. I then splatter painted till I was happy with the effect. Each print is hand numbered and signed on both the mat and the back of the print.

Over the coming weeks, I’m hoping to send a few of these off to some of the people who have influenced me the most in the WordPress community. I also think I’ll throw one or two on ebay to raise some money for charity. Comment below if you want me to update you when I do so.

I continue to remain optimistic about the long term success of WordPress. I’m writing this in Gutenberg, where I’ve written almost all my posts over the last year. Five years ago I went to JSConf and the reaction of many people towards hearing I worked on WordPress was that it was amateur. This last week I went to a CSS meetup and the reaction to people hearing I worked on WordPress was respect. Always bet long on WordPress. 

I previously blogged WordPress’s 10th anniversary and hope to blog it’s 20th as well. 

A quick review of Local by Flywheel

I recently decided to check out Local by Flywheel for local development, and my initial thoughts are that it’s strong for many things, but is far from perfect.

In the past, I’ve used MAMP, XAMPP, VVV, and custom docker environments for local development. Each of these has it’s own strengths and weaknesses. Local’s strength is that it is by the far the most user-friendly route to having a local development environment. It’s all GUI driven, you don’t need to mess with hosts files, and having an SSL cert for your local site couldn’t be easier. If your goal is to have a local site with little fuss, Local By Flywheel does it.

Where Local falls short is developer friendliness.  Installing XDebug, for example, isn’t easy. Customizing the environment to include anything beyond the standard config options also isn’t easy. If you are developer that needs XDebug or wants a PHP Extention that isn’t included out of the box, you are going to need to do some work for it.

Installing the development checkout of WordPress also isn’t straightforward. I would love for it to out of the box support using either the regular or development versions of WordPress. I could see a GUI tool like Local being very valuable for onboarding new WordPress Core Contributors who aren’t as familiar with git, svn, or the command line if it did this. 

Would I recommend Local by Flywheel?

For the right person, yes.  If you wouldn’t call yourself a developer and have no interest in contributing to core, then Local is definitely worth checking out. If you want XDebug, are comfortable on the command line, want to run PHPUnit, or need a nondefault PHP setup, then you likely should look elsewhere.

Have you tried Local by Flywheel?  What are your thoughts on it? 

A timeline of thought when someone blows off your meeting

Yesterday: “That’s an interesting idea. Let’s discuss it during a meeting tomorrow”. Send out an email with one paragraph on the idea so they are prepared to discuss it. Meeting scheduled for noon.

11am:  I have a meeting in an hour. That’s enough time for me to make some good progress on this ticket.

11:45am: This is a a good stopping point. I’ll get some water and then check my email and hacker news.

11:58am: I have 5 more browser tabs than I had 10 minutes ago, but I should go online for this meeting. 

12:01pm:  I guess they are running a little late.  I’ll look at Twitter since there is no point in starting back on real work. My meeting is starting soon.

12:15pm:  Hmm, I wonder if this meeting is going to happen. I’ll look at Reddit.

12:30pm:  WTF.

12:35pm:  Seriously, WTF.

12:45pm: Great, now I’m going to be pissed off the rest of the afternoon and when I finally share my idea, I’m going to come off as an asshole.

1:00pm: Fuck everything.

1:15pm: Apology email from the higher up that blew you off. They suggest rescheduling the meeting for Friday. 

7pm: I could have left an hour ago if people had respected my time.

Thirty Five

This is my fifth tetrahedral number birthday and me second consecutive semi-prime birthday. As a multiple of five, it’s also a “round number”.

Thirty Four was a year that I continued my growth as an artist. I regularly painted, sketched, and played with colors and shapes. I’ve started experimenting with block printing, and set up aaron.jorb.in to be the home of my art. I have art hanging in my friend’s homes. As a thirty five year old, it would be cool to have someone I don’t know own my art. Seems like a good goal.

From a professional perspective, Thirty Four was mostly a stable year. I spent time launching a new brand and relaunching another. My contributions to WordPress continued, but at a much slower pace. I helped organize the flagship WordPress conference and a new event focused on the intersection of WordPress and Publishing.  The next one is accepting speaker submissions for the next few days. Most importantly, I’ve set Thirty Five up to be an incredible year on the professional front.

One of my biggest personal accomplishments was being elected to the board for a non-profit I’ve volunteered with since I graduated college. Additionally, I got to see a childhood best friend get married at an amazing camping wedding, become an uncle for the first time (I can’t express how happy I am for my brother and sister-in-law) and had my first Christmas Morning celebration with two amazing kids and some of my best friends.

I’m excited for Thirty Five on so many fronts. I’m excited to see more amazing art as I work on my 2018 goal of seeing everything at The Met, while continuing to enjoy MoMA and making it to some of the other museums in town as well. I’m excited for the art that I’m going to make. And I’m excited for everything I have lined up from a professional perspective. Cheers to 35 years with me. I’m going nowhere but up!

I’ve previously blogged 34, 32, 2928.

A week with a Chromebook

I’m an idiot.

Saturday, I would like a redo

A post shared by Aaron Jorbin (@aaronjorbin) on

Not really, but I knocked my tripod into my laptop, busting the screen and logic board in the process. For the past ~2 years, I’ve been primarily a one laptop person, using my MacBook for both work and pleasure. I have a large windows machine that mostly collects dust since try as I might, I can’t get used to developing on Windows and a Chromebook that I keep near my couch for things that I want a bigger screen than a phone, but its use has been lessened as I try to be screen free at home as much as possible.

With these two options, I decided that the Chromebook made more sense for me to use, primarily because it’s about 1/3 the weight of the windows machine. I wanted something more than just a basic shell I could ssh into other machines for though, so I used Crouton to return to developing on Linux for the first time in a few years.

Overall, switching back to Linux was easy. Since I normally develop on the command line and with Vim, all my dev tools were available to me. The only thing lacking was 1Password which meant I needed to manually enter passwords.  As someone who has been using a password manager for a few years, it was a reminder of why people use bad passwords and use the same password everywhere. Manually entering 50+ character passwords is hard.

The only other areas of issue for me were that High Five video calls didn’t work that I never got the wifi switcher to work in XFCE (I admittingly spent like 3 minutes on this), so I had to bounce back to Chrome whenever I needed to connect to a new WIFI. In many ways, going back to Linux was like returning to an old friend. It’s where I started to code. 

Thankfully, I’ve been reunited with my macbook and the screen is good as new. Despite it going in just needing some screen repairs, my hard drive needed to be whipped.  So I’m thankful for having backups of everything important, though I’m regretting not having pushed a few branches in git.

Let this serve as a reminder: Laptops are not invincible, backup your data. 

Lessons I learned from #sndnyc: What is Design?

Design is many things, but the best design is cooperative, constrained, and empowering. Those are the biggest takeways I have from the 2018 Society for News Design workshop. The three-day event included talks, workshops, and social events, all of which helped me learn about what makes helps make design great. 

The Best Design is Cooperative

Michael Donohoe, Mindy Yuen, and Michael Villaseñor from Hearst Newspapers highlighted this in their cross-functional talk. The "Double Diamond" method they utilize starts with a narrow problem that expands during the discovery phase, only to be narrowed during the decision phase and re-expanded during development until finally narrowing again during delivery. By expanding and contracting during different phases, multiple teams are able to really have a say in the process.

Ivana Wong from Alley Interactive did a Post It Note workshop on kick-offs which highlighted the importance of bringing together stakeholders from across the organization to come up with the objectives for a project by asking "How Might We" questions. These questions can eventually form the basis of objections. Asking "How Might We Increase people entering the sales pipeline" can become the objective "Increase people entering the sales pipeline."

The Best Design is Contrained

James Morehead and Alex Valdivia from the Google Bulletin team discussed the "Why" and encouraged designers to ask "Why" rather than "How". Most of the design work they did didn't take place at computers. They also launched missing features they thought they wanted and learned from how people use Bulletin.

Allison McCann from Vice News has tried to bring interactive style data journalism to TV and thus has had to learn all the constraints. She took inspiration from Guitar Hero for presenting Data Dense visualizations. She learned to use pacing in ways you don't need to necessarily consider in non-linear storytelling.

The Best Design is Empowering

The most important takeaway for me came from Scott Stowell of Open who's team empowered the ACLU and all its chapters with a design framework and language. They looked at the almost 100 years of history of the organization to pull out key values. They used the Supreme Court briefs as a typeface influence and they made Accessibility a key value.

They also took inspiration from the pocket Constitutions that the ACLU is known for producing and produced a pocket design constitution that is given out internally. The end result is an organization of non-designers who can make visually impressive work that has an impact.

John Maeda also highlighted the importance of inclusion in design. This goes as far as how he attempts to be inclusive of introverts in the Q&A portion of his talks.

As I continue my personal exploration of design, using the skills and ideas I learned at SNDNYC will help me create designs by being cooperative, staying constrained, and empowering others.

Learning Makes Developing Fun

Like many developers, I get into ruts where I'm not excited about what I'm working on. There are pieces of development that each of us doesn't enjoy for some reason. Maybe you hate QA.  Maybe you hate refactoring. Maybe it's writing JavaScript, PHP, CSS, or Go. It doesn't matter what it is for you.  These roadblocks of lack of excitement and interest need to be broken through if you are going to succeed, and one of the best ways to do that is to make things new and fun again through learning. 

Having Fun isn't Hard

When you've got a Library Card 

Arthur

Learning and using new techniques makes things fun again. Coding gets boring when we spend our time doing the same thing over and over again. When we aren't pushing ourselves forward, we are being left behind. It's important to overcome the challenge of doing something new so we continue moving forward.

Here are three things I've read over the last few weeks where I learned something. Maybe one of these will help you learn something new:

  • Linked Lists by Lara Schenck. This is an overview of a data structure that isn't native to any of the languages I spend the majority of my time in. Lara's series on computer science basics is a great primer for those of us without formal CS educations.
  • The Documentation for Styled Components. I was introduced to Styled Components when Laura Medalia started mentioning them on her Instagram Stories. I've started playing around with them to see if they are going to be right for some of the react things I've been doing.
  • A Twitter thread on the Social Model of Disability and Stephen Hawking has helped my thinking about how I speak about disabilities. Hat Tip to Ryelle for sharing it.

Public Parks, Private Gardens at The Met

The impressionist era artists produced a dizzying amount of work the explored and celebrated the outdoors, and in what could be termed The Met garden show, you can see an impressive exploration of this work. The artists displayed include many of the painters that are the biggest names from the late eighteenth century to the early twentieth: Monet, Rousseau, Van Gogh, Seurat, and Renoir.

The exhibit is organized around four main sections: Public Parks, Flowers, Private Gardens, and Portraits in Gardens. Each of these sections includes great works, but here are my favorites from each.

Public Parks

The Edge of the Woods at Monts-Girard, Fontainebleau Forest – Théodore Rousseau

Rousseau's pre-impressionist work shows woods not far from Paris and includes a mixture of young and old trees. As this was the type of painting that many of the other artists on display were likely exposed to as at a young age, it helps set the stage for what will be seen in the rest of the show.

Flowers

I've seen both of these paintings before, but seeing them next to each other allows for the opportunity to compare them in a completely different way. Van Gogh's frail emotion vs. Monet's cheery impression. Van Gogh painted many more sunflowers than this one, but it's frail expression of emotion contrasts with Monet's exploration of color. This room contains still lifes using a number of different mediums and some early photograph prints.  

Private Gardens

Figures under a Tree – Auguste Renoir

One of the things that impressed me the most about this exhibit was the quantity of watercolor and pastel paintings. As easier to use when outside of a studio, it makes sense to see them so highly represented. This Renoir seems like something he may have produced as a sketch rather than a dramatic large painting. This section contains many Monet paintings from the more realist Garden at Sainte-Adresse to the larger than life The Path through the Irises.

Portraits

The Monet Family in Their Garden at Argenteuil – Édouard Manet

Camille Monet's eyes grabbed me the moment I saw this painting. Manet sets a scene that almost looks like the bokeh portrait photographers aim for. This section also includes work by Mary Cassatt, one of the few women and few Americans in this exhibition

The Met has an incredible collection of Monet, and it is on display throughout this show, but it is the opportunity to see multiple artists working on the same or similar subjects is the true highlight of this show.

Public Parks, Private Gardens: Paris to Provence is at The Met until July 29th in Gallaries 964-965 which is on the ground floor below The Robert Lehman Collection. I can't wait for it to warm up a bit so that I can explore it again and then sit in Central Park with these masterpieces fresh in my mind. If you aren't able to make it to New York to see this exhibit, you can view many of the pieces on The Met's site for this exhibit.

Douglas Crockford could sue the White House

Recently, the White House switched to using WordPress for whitehouse.gov. While doing so, they deployed the most recent version of WordPress. WordPress 4.9 includes a copy of CodeMirror for an improved experience when it comes to editing code. In order to provide linting of JavaScript ,CodeMirror uses JSHint.  And this is where things get interesting. 

JSHint is mostly licensed under the MIT license. I say mostly since it inherits some code from JSLint which uses a modified form of the MIT license. It requires that the software only is used for Good, not Evil.

"The Software shall be used for Good, not Evil."

So the White House is using software that can only be used for Good, not Evil. Which means that if the White House has used its website to do evil, it has violated Douglas Crockford's license. 

The next minor version of WordPress removes JSHint, but the inclusion of it will live on in internet archive history.