Over the past few days, the Product team at LexBlog has been launching a few bodies of work that have been a long time coming. While our Success team launches sites and solutions on a hourly basis, the product side of LexBlog has the luxury of spending weeks, sometimes months, working on new features. It’s a truly fortunate situation, and one that we don’t take for granted.

This week, our team had the pleasure of being in the same offices together with Scott Fennell (who blogs over at Code in the Cold) and Brian Biddle (LexBlog’s Lead Developer and Director of Design, respectively) making their quarterly visit to the home base (now at WeWork!), and we made sure to capitalize. This Thursday and Friday we celebrated our team’s geographical unity, short-lived though it may be, by launching a new admin color scheme, a redesigned LXBN – named The LexBlog Network from here on out – and LexBlog Network subscription options for each author on LexBlog’s publishing platform.

While our authors may not find the new admin color scheme groundbreaking, this update was the source of some of the larger philosophical headaches for me, and served as a great technical opportunity for Mr. Biddle and Angelo Carosio, LexBlog’s in-house DJ and developer extraordinaire.

My frustration was primarily around the notion of the update itself! As a curmudgeon, UI changes annoy me (I avoided Bitbucket’s new UI for months!), and while the old admin color palette was not my favorite, making changes for the sake of making changes is a bad habit that too many companies fall into. Ultimately, I overcame these mental challenges (which were primarily self-inflicted) by making a simple decision: To give our authors control.

To that end, the new admin color scheme comes with a default palette that reflects our updated brand and falls in line with our new LexBlog Network design and two additional options for those that want something a bit different from our off-the-rack option.

The technical fun was that Brian got the opportunity to stretch his technical legs and learn a bit of Sass and Git – a huge departure for a self-proclaimed lover of Photoshop. Meanwhile, Angelo dodged around some core WordPress issues, which has it’s own expectations for color schemes, to make sure that publishers and admins logging in for the first time were greeted by the new look.

Here are each of these three options in all their glory:

LexBlog Classic - the default for all users!
LexBlog Classic – the default for all users!
LexBlog Slate – my personal favorite 🙂
LexBlog Turquoise – I think Brian just wanted some pretty colors here

This update was launched Friday, shortly after our team finalized the new Lexblog Network’s design. The LexBlog Network (a.k.a., The Artist Formerly Known as LXBN) is LexBlog’s portal to all of our client’s content. Built in 2013, the site had not received a proper facelift in years, and feature additions were managed in an ad hoc fashion, creating a bit of a Frankenstein’s monster of a theme.

Over the past several sprints, Angelo and Scott – with guidance from Brian – updated our core theme to support the site. This forced us to engage in a practice called dogfooding, or, put differently, use the same products for our corporate properties that we ask our clients. Now The LexBlog Network, Real Lawyers Have Blogs, and this blog, all make use of the same core technology that our publishers use everyday. Eating our own dogfood, as it were.

For The LexBlog Network, this is just the beginning. This facelift is part of a larger effort for LexBlog to reinvest in our publishers’ content and engage our network of over 15,000 authors, which is why the third major update was targeted at helping these authors subscribe to specific channels. Over the last few years, we’ve added the capability to subscribe to the site by category, allowing authors that are interested in only employment law to get content from blogs focused on employment and labor concerns. Until now, the subscriptions were managed entirely through a form on the site, but with some hard work from Angelo and Scott each publisher on the platform can manage their subscriptions through their user profile!

To view this yourself, just log into your blog (if you have multiple blogs with LexBlog, any blog will do), click on the “Howdy, [your name]” link in the upper right-hand corner of the screen, and navigate to the bottom of your user profile. Here you will see an option to click on a button to manage your subscriptions to content from The LexBlog Network. For Premier blog admins, this capability is present in the Network User Management screens for individual users as well, giving you the capability to expose your authors to content from hundreds of blogs on subjects that matter to them.

At first you don’t see it…..
And now you do!

Our intrepid document writer, Ted Cox, has put together an article on our help center that should guide you through the process better than my feeble attempts at explaining, and if you’re a publisher on our network you should be seeing some emails coming to you shortly from our marketing team, led by Mellina White-Cusack (who has a blog of her own – also on our network – The Seattle Conservative).

Overall, a great week, and fun things to get out the door. Moving forward, The LexBlog Network will continue to be a focus for the LexBlog team, both in terms of how content gets to the site and how we use it to shine a light on our publishers, giving our team a lot to bite off and chew over the next few months.

In my time at LexBlog, I’ve seen three different office buildings and worked in two.

The first LexBlog offices where my first “real” desk job began was on 95 South Jackson Street in Pioneer Square. The building was near the waterfront, and a stone’s throw away from the Seattle Ferry Terminal. Our CEO, Kevin O’Keefe (he of Real Lawyers Have Blogs), lives on Bainbridge and so LexBlog has always stuck near the ferries. The offices were nice; brick walls, open layout, corner offices with good views, but toward the end of LexBlog’s lease we were neighbors with one of the largest construction projects in Seattle’s history.

Continue Reading LexBlog is Moving to WeWork

This post was written using Gutenberg, the code name for the WordPress core team’s effort to overhaul the WordPress post editor.

One of the things that we strive to do at LexBlog is help data drive decision making processes. The fetishization of data in business is somewhat akin to the fetishization for new specs and frameworks in development, but data is still a helpful tool (just like arrow functions in ES6) and should not be ignored. And so we track actions in the admin – clicks, navigating to a certain page, performing an action – all the data that a product manager like myself craves. One thing I’ve noticed in watching how our customers use the LexBlog platform is that people post. A lot.

That simple fact shouldn’t be surprising. We run a network of digital legal publications. Lawyers are trained writers, so they write constantly. Basically, if you give a lawyer a blog, be prepared to see them log in, go to Posts -> Add New, and begin writing away. So when I heard that Matt Mullenweg included the editor in the list of primary focuses for the core team, my interest was piqued. When I saw Aaron Jorbin’s post on using Gutenberg last night, I had to try it out for myself.

Continue Reading Gutenberg – The Future of WordPress’s Post Editor

At LexBlog, my team is responsible for keeping a lot of sites up and running. We help manage the reputation of lawyers and law firms, where each pixel matters. As a result, our product team performs a host of functional tests before launching updates, and we lean on test driven development practices to catch things that functional tests cannot.

An unfortunate blind spot is that humans aren’t machines. We’re prone to miss simple things, and after staring at a screen for hours on end, our brains and eyes get tired. To help catch things that we may gloss over, we use an internal application built using Node.js, React, and Selenium that integrates with the WordPress REST API and an external service, Applitools.

Continue Reading Building a Visual Regression Testing Application Using React, Selenium, Node.js, and the WordPress REST API

Every Product Manager that I’ve had the opportunity to speak with, listen to, or read about makes one thing abundantly clear: Knowing your users is your job. Unfortunately, that’s easier said than done. If you take a moment to peruse career pages or job boards with Product Management positions, you’ll notice that each listing notes an ability to simultaneously be an Excel/SQL/database master and product expert. The nature of product management requires you to live, breathe, and eat the customer’s experience while understanding why their experience is the way it is.

Continue Reading Getting To Know You, Getting to Know All About You

I’ve spent a lot of time over the past year wrapping my mind around what it means to build a content management platform for lawyers. For nearly a year and a half, LexBlog has completely turned our model of delivery on its head, and shifted our focus from a project-to-project business, to one that focuses on developing new products. As you may guess, the cost of this shift has not been small.

Continue Reading Building a Legal Blogging Platform

Recently, I got it into my head that learning how to build a Chrome extension was a good idea. My current list of extensions includes LastPass, Chrome UA Spoofer, Live HTTP Headers, React Developer Tools, JSON Viewer, and a few others that you can see in this dandy screenshot:

Screen Shot 2016-07-22 at 10.19.05 AM

The last icon you see there, is from your truly! The function of this extension is straightforward – I love Game of Thrones, refuse to watch the television series because I’ve invested too much time in the books, and I hate spoilers. This intractability combined with a love of surfing the internet has lead to a dangerous cocktail that this tool endeavors to support by blocking all elements on a webpage that could contain spoilers.

Continue Reading Game of Thrones Spoiler Blocker – an Exercise in Building Chrome Extensions

As a denizen of Wallingford, Seattle much of my time is spent in wonder at the greenness of it all. My time as a child and young adult in Montana did not prepare me for the lushness of Seattle, and Wallingford is no exception. The spring, summer, fall, and winters here are green and if you look closely enough, you’ll see something blooming during all those seasons as well.

Continue Reading The Beginnings of A Wallingford Sensor Garden

This title speaks to my life for the past four months. For years, I’ve known that JavaScript is the language of the present and future on the web and for years, I’ve avoided learning it. It’s easy to chalk this up to a myriad of reasons, but ultimately, the two largest factors were intimidation and motivation.

Intimidation because my entire programming experience is on the server-side using languages that support classical object oriented programing practices. JavaScript is the antithesis of both those paradigms. A language that is compiled in a completely different fashion and relies nearly entirely on the client to interpret and run the code, while also seeming to generally laugh in the face of OOP and passes around functions like it was going out of style.

Ultimately, I had to admit that I didn’t know JS.

Continue Reading JavaScript JavaScript JavaScript JavaScript

A few weeks ago, Matt Medeiros published a post on the Matt Report that is still making some waves in the comment section on his blog, as well as over on Hacker News. The tl;dr version of the post is that WordPress isn’t easy, in fact very little on the web is, but WordPress confuses the issue by seeming so easy.

On Hacker News, the argument, not surprisingly, is different. In front of a more technical audience, WordPress, and the professional services market that taps into  the software, is quickly the source of derision for any number of reasons:

  • Outdated technology stack
  • Slow (see above)
  • Prone to security issues
  • Spaghetti code programmers
  • Etc., etc., etc. (read the entire thread if you’re interested, but some of the comments are downright silly, so I’m not going to rehash them here)

Continue Reading Nothing on the Web is Easy