A small column on design, technology, and productivity. Published from San Francisco. Made on a Mac.
The LoungeBuddy Product Team recently concluded our inaugural Hackathon, where we had two days to work on anything we wanted: a project we had on the back burner, an idea we needed more time to explore, or a new skill we wanted to develop. Originally I was going to build a coded style guide for our different design components, but there was a small project that had always been on the back of my mind: learning iOS development.
I noticed a trend amongst designers who got started developing apps: almost everyone starts with a tip calculator. Two notable examples that I’ve actually used in the past were created by Kevin Clark, Design Lead at Shopify and Patrick Wong, Design Manager at Lyft. In hindsight, I understand why tip calculators are commonly used as starter projects; they are simple enough to be built in a relatively short amount of time, but complex enough that you’ll actually learn something.
Originally I thought I would do the same, but I wanted to create something I would actually use. This is when I thought of the idea for 1RM — a simple weightlifting calculator that calculates the percentage breakdown of the total weight entered in nineteen increments, from 95% down to 5%. The app uses the fundamentals of a tip calculator, but displays the information in a unique way. Here's some screenshots of 1RM running in the simulator:
Having never written a line of Swift or Objective-C before this event, I wanted to take the time to write down how I went about creating an app in just two days, and the resources I used to help get 1RM for iPhone on the App Store.
In the excitement leading up to the Hackathon, I had already put together some mocks of what I wanted 1RM to look like. I wanted to make the most of the event, and so I planned the functionality I wanted to build over the two days.
Here's what I ended up with in Sketch:
To get started, I knew I had to work through a simple Swift 3 “tip calculator” tutorial. I followed this two-part video tutorial by Junkie Labs, Building a Tip Calculator Using Swift 3.
The tutorials aren’t difficult to follow, and when I was done, I had a working tip calculator (pictured below). It is important to stick with everything they show you in these videos; you can always make interaction and design changes on your own when you have an idea of what you are doing.
Now that I knew how to make a functional tip calculator, the next step was to learn about UITableViewControllers. Not only was this a key part of the design, I chose this visualization for the percentage breakdown because I know how versatile and significant Table Views are in iOS development.
Originally thought I would need to create custom Table View Cells, so I followed this tutorial by Jared Davidson, Custom Table View Cells. As it turns out, that was completely unnecessary; iOS has many default table cells you can use, including the Right Detail option often used in Settings.
I switched gears and found another short tutorial, How To Create A TableView In Xcode 8 by The Swift Guy, which shows you how to “print” a list of items in a Table View.
At this point I had everything I needed to start building my app. I was going to piece together everything I learned up to this point to build 1RM, but it felt like something was missing. Had I stuck with what I had learned in these tutorials, I would have manually created a list in code. Though functionally the same, it wasn’t what I wanted.
I spoke with a few people on the engineering team, and they were incredibly helpful in translating Swift-speak into something I could understand. If you’ve been following along with the tutorials above, I’ve created the following gist which shows you how to generate your Table View rows, and use them to inject content into the labels. Automagically.
I had a day left of the Hackathon, and 1RM was functional. You could type a number, and the app would update the table view controller with a breakdown of what you entered. Today was going to be all about the looks; it was time to get 1RM to look like the mocks.
The final tutorial I used was this fantastic tutorial, Implementing a Collapsing / Expanding UITableView Header by John DeLong that gives you a step-by-step overview on how to animate a UIView and UITableViewController.
1RM was nearly there. I was done with tutorials, and I started searching Google to help me implement the details like font colors, tweaking animations, and customizing specific interactions.
You wouldn’t believe how many little things go into creating such a simple app, but there is so much power in being able to make something people can use. I think every (digital) designer comes to a point where creating images of what you want to be real isn’t enough anymore, and that’s when you take the time to learn how to make your ideas a reality. This is why there is such a huge debate around “should designers code.” It’s usually the designers who can code, and know how powerful of a skill it can be, who push others to do the same.
1RM is a simple weightlifting calculator for iPhone that I designed to teach myself iOS development. 1RM is available for free on the App Store. You can read more about the story behind 1RM in my portfolio.
Note: Be careful which tutorials you follow; make sure they are written in Swift 3 or newer, otherwise you’ll quickly find out how unforgiving Xcode can be.
When I notice someone force quitting apps on their iPhone, I now have the perfect resource to point them to; especially this little nugget in the footnotes:
The other contributing factor to believing that force quitting is good for your iPhone are the handful of apps that have been found to be repeated abusers of loopholes in iOS, such that they really do continue running in the background, wasting battery life. Most infamously, Facebook was caught playing silent audio tracks in the background to take advantage of APIs that allow audio-playing apps to play audio from the background. They called it a “bug”. In those cases force-quitting the apps really did help, and I see no reason to trust Facebook. So if you want to keep force quitting Facebook, go right ahead. But don’t let one bad app spoil the whole barrel. The Battery section in the iOS Settings app can show you which apps are actually consuming energy in the background — tap the clock icon under “Battery Usage” and don’t force quit any app that isn’t a genuine culprit.
I’ve always had an issue with the term “culture fit,” but I haven’t been able to put my thoughts into words in the same way Elyse and Kevin were able to in this excellent interview with Tobias van Schneider:
… I’m not a huge fan of the term "culture fit." It implies that culture is a thing that should be protected and that there’s a specific mold you have to fit into, which simply isn’t true. So instead, we’ve been calling it "culture addition."
I’ve gotten into many heated discussions about whether or not a company should focus on culture, or if "culture fit" shouldn’t matter so long as they are good at what they do. The reason I like Shopify’s use of the term “cultural addition” is because it promotes and embraces change. I’ve seen too many qualified candidates go by the wayside, because they didn’t fit into someone’s perfect mold: socially and professionally. If you want to know how the tech industry has gotten so screwed up, take a look at the hiring patterns of companies you hear stories about. By continually hiring someone just like you, you are unknowingly cultivating a group of same-minded people, and when a serious issue comes up, you won’t know about it until it’s too late.
Dan Eden’s articles are not the run-of-the-mill posts you see scattered across the internet; his essays are always well researched, and professionally written. Dan is currently writing a series of posts about design systems, what they are and how to maintain them.
One of the most appealing things about defining a pattern language or design system in this way is the flexibility that it affords. For novice builders who just need a high-level component or concept of their project, they can find it at the top of the heirarchy and use the component as it comes. For those pioneering new experiences or experimenting beyond the confines of existing produce surface, they can take those high-level components and concepts and deconstruct them into their composite parts; they can keep doing this until they have the primitive, atomic components they need to construct a bespoke pattern that still fits with harmony in the wider system.
It’s much easier to create a palette of components once you have an idea of what you are building. Where I (and many others) struggle is when the defined palette of components don’t fit with a new concept: do we revisit the existing design system and update our collection of components, or is the new experience misaligned with the goals of the product? The answer to this question is not black and white; this will have a profound affect on the style and direction of your product.
Dan’s metaphorical ties between design components and grammar is an interesting abstraction. His concept allows the designer to explore new ideas, without severing ties with the system as a whole. We see companies like Facebook experiment with these “atomic components” all the time. Some of these make it into the wider design system, but most don’t. If we adhere to the grammatical metaphor in Dan’s essay, maintaining a record of your components is critical; something added to your design documentation should be treated with the utmost scrutiny. However, this should not inhibit exploration and ideation; how can you move a product forward if you are always concerned with maintaining the past.
This month, Spotify launched the original series, I'm With The Banned, a musical collaboration between American artists and artists from those countries included in the proposed travel ban. The songs cover a range of topics from immigration to LGBTQ equality.
I've embedded the "enhanced" playlist below — be sure to click through for the full experience.
Jon Aizlewood on the process of creating a design system:
Good design systems start with a vision. A creative direction before they become a thing. They need to have the relationships between elements worked out. The hierarchies, grids and layouts need to flex and scale. Proximities, similarities and placement need examining. Gestalt theory has to get applied. None of these things are possible if you start with a loose collection of bits.
This is what differentiates a style guide from a design system — or as it's positioned in the article, are you designing components or are you designing a system?
Augustin Kennedy's answer is incredibly thought provoking — I encourage you to click through and read his entire response.
Really think about what success means to you, because I can promise you that “success” — even professional success — doesn’t look anything like how the media portrays it. It is truly a state of mind.
Reading a statement like this is difficult for me; I have a very hard time separating personal success from professional success. Many of my peers would describe me as a "workaholic," but I've learned that setting aside time for yourself (with a hobby or side project) leads to a more balanced career.
Personally, I've been doing CrossFit 3-5 days/week for the last four years, and you'll never see me go a weekend without working on some sort of side project. Some will argue that I take on more than I should, but I find that by keeping myself busy, the feelings of "emptiness and hopelessness" described in Kennedy's response haven’t settled in. Focusing on improving yourself mentally and physically always seem to lead to success. This sounds kitschy, but the reason you see this sentiment parroted throughout the internet is because it's true.
Kevin Clark, Design Lead at Shopify, shares some mocks on his personal Twitter account of what Mail, Calendar, Messages, and Notes could look like had Apple gone with a more extensive and consistent design refresh for iOS 11.
I took a stab at what iOS would look if Apple went with a bigger design refresh with iOS 11 and adopted the Music aesthetic everywhere: pic.twitter.com/pQTbTy6FRy— Kevin Clark (@vernalkick) July 3, 2017
Here’s how it would look like on the iPad: pic.twitter.com/DibgOTMpBR— Kevin Clark (@vernalkick) July 3, 2017
The primary changes demonstrated in Kevin's mocks pertain to spacing, alignment, and hierarchy — the easiest things to brush off as nonessential when it's time for implementation. Pay special attention to the increased line weights used for icons, and how he deemphasized edge-to-edge elements on the screen; all of which lead to a cleaner and more streamlined design. These images illustrate how important it is to follow through with details, since they often have the most impactful outcome.
Speaking of WWDC, John Gruber's recently released episode of "The Talk Show," features an interview with Apple executives, Phil Schiller and Craig Federighi. Gruber's post-WWDC interviews are always a treat, and his interview style has only gotten better over the last three years. If you are interested in hearing some of the more technical explanations behind decisions at Apple, you'll enjoy this.
Now that WWDC is over, I wanted to take this opportunity to highlight a few design-specific sessions hosted by Apple over the past week. These presentations cover in-depth technical development and design details across all of Apple's platforms in about an hour apiece.
If you watch nothing else, be sure to watch Monday's Keynote Address and State of the Union (a more technical rundown of what's new).
Even though the target audience at WWDC are Developers, it behooves any Designer to understand the new experiences you can design for and what's possible with the new frameworks. The following is a list of some of the more design-specific talks given throughout the week:
There are many more sessions from WWDC 2017 on Apple's Developer site, including videos from past WWDC events.
Helen Tran's framework for keeping communication alive is worth preserving; it is so easy for a project to get off track or lose momentum when the lines of communication breakdown.
You can see a poor feedback loop in action if one person hands off work to another and communication ceases. When you send your work to another person to implement, it’s your responsibility to follow up:
- Is what I gave you enough to do your job well?
- How can I test this?
- What can I prepare for the next stage?
This concept doesn’t apply to just projects shipped but relationships in which one person is dependent on another. If someone asks you to do something, and you do it, get back to them and tell them what happened. If you do this simple thing:
- It confirms your dependability as a teammate
- It gives them feedback so they can figure out what to do next
- It resolves that issue for both of you, taking up less headspace
If there’s any career advice I can give anyone, it’s to take notes and close all feedback loops.
Regardless if I'm directly involved or not, there is nothing more irritating than being out of the loop on a project's status. Keeping in touch with everyone on the team is invaluable; it's surprising how much you learn by simply asking someone how things are going.
Like Helen, I also use a modified version of Ryder Carroll's Bullet Journal that helps me keep track of what's going on, the deliverables I'm responsible for, and reminders about anything I need to follow-up on. I might not get to work on every project that goes through the different departments, but I have a better understanding of where each item sits because of it.
A brief, but significant blog post authored by Lyft co-founders, John Zimmer & Logan Green:
This weekend, Trump closed the country's borders to refugees, immigrants, and even documented residents from around the world based on their country of origin. Banning people of a particular faith or creed, race or identity, sexuality or ethnicity, from entering the U.S. is antithetical to both Lyft's and our nation's core values. We stand firmly against these actions, and will not be silent on issues that threaten the values of our community.
We know this directly impacts many of our community members, their families, and friends. We stand with you, and are donating $1,000,000 over the next four years to the ACLU to defend our constitution. We ask that you continue to be there for each other - and together, continue proving the power of community.
There are more than 65 million citizens of the world recognized as refugees by the United Nations, and we are developing plans to hire 10,000 of them over five years in the 75 countries around the world where Starbucks does business.
M.G. Siegler isn't too happy with the updated "Explore" tab on Twitter, so he wrote some thoughts on what he believes would make Twitter chirp. Siegler's proposal downplays Trending Topics (which have never been very compelling) and replaces them with the best of Twitter: Tweets (highlights from your feed, moments, live video, etc).
I've had similar thoughts about Twitter, but that's part of the problem; everyone who uses Twitter has their version of what would make it "perfect." I would bet the changes Siegler is suggesting don't test well, and this is how we've ended up with the generic product that's shipping today.
Justin Stahl, a Product Designer at Facebook, shares how he and the rest of the Search team were able to rethink how users interact with Facebook Search.
Although it would introduce friction — another tap — for some searches, it would reduce friction — the cognitive load — for all searches, making both navigation and content search easier to understand.
The "it" being a simplified auto-complete, which slows down the process of getting to the search results in favor of clarifying what the user is trying to find. Using "number of taps" as a metric for success (or failure) is patently false for 99.9% of interactions on mobile, and Stahl's article is evidence of that. Education and clarification will always yield far more fruitful results.
Later on in the post, in a section titled "Getting from there to here," Stahl gives us a glimpse at how projects materialize at Facebook:
Even with positive direction, we couldn’t shut everything down for six months to build a final product. Working backwards from the final model to the existing one, we broke the transformation into stages to smooth the transition, like the cover of an Animorphs book.
We used each stage of the redesign as an opportunity to review, investigate, question our assumptions, and alter the course of the product if necessary.
I've said this before, and I'll say it again: designer's should never approach a design in stages. We produce far more successful results tackling a project from the macro-perspective, with the creative freedom to explore new ideas while safeguarding against any potential edge-cases that may come up. With the larger picture envisioned, it is much easier to break the design down into stages for development, where you can continue to test your hypothesis and makes changes as needed.
"Why Paper is the Real 'Killer App'" is a series of short interviews with founders and entrepreneurs who have opted for non-digital methods of organizing and planning. The following is from one of these interviews with Angela Ceberano, founder of Flourish PR:
You can get caught up in this stream of technology and actually it's always on someone else's terms […] With those apps, the reason I don't use them is because they are someone else's format. It's not they way my mind thinks.
This is going to sound like hyperbole, but being able to design with the flexibility of your users in mind is the mark of a great product designer. Everyone has their way of accomplishing the same task, which is why so many people find it difficult to work with digital systems; they are too rigid.
As an example, I've been trying to find a new app for sketching wireframes and app ideas, but no app worth its salt has as realistic of a pencil texture as the stock Notes app. The ones that do have strange ways of drawing straight lines (I'm looking at you Procreate) or don't support shading with the Apple Pencil. Each of these are examples of persistent annoyances that make users ditch your app for something else, which in the case of the BBC article is paper.
Chuq Von Rospach on the controversial 2016 MacBook Pros:
… in many ways, a lot of the unhappiness I’m seeing about these new computers comes down to dealing with the realities of the Mac itself becoming a niche product to Apple […] all the whining and moaning aren’t going to undo the market forces driving this. Apple is reacting to changes, not pushing them.
As I quipped on Twitter, both of my parents use iOS devices as their only "computers." My father rarely uses his iPad, and runs his business from an iPhone 6. My mother recently switched from an 11" MacBook Air to the 12.9" iPad Pro and uses her iPhone 6 Plus when she's traveling. My brother uses an iPhone when he's not at work, and has said on multiple occasions that he plans on buying an iPad Pro as his "next computer." The Post-PC era is here, and there are fewer and fewer of us that require the power of a Mac, let alone a pro machine.
… the fact that so much of the Mac product line is such a cluster and Apple didn’t acknowledge that makes the criticism understandable and deserved.
My main concern with the Mac product line is illustrated by Rospach above; from the customer's perspective, the Mac product line as a whole feels aimless. The trust built by Apple over the last few decades is slowly eroding, which is evidenced by the unexpected and vociferous complaints emanating from Apple's biggest fans.
To be clear, the new MacBook Pro is an incredible machine (both in industrial design and performance). I maintain that the Touch Bar is going to be a kick-ass interface for non-pro users (which is part of the problem), and the consolidation of ports is going to be quickly forgotten once users get their hands on the machine. I agree with Rospach, the way forward is to communicate the Mac's release schedule without actually saying anything, while educating pro users on the benefits of Apple's design philosophy.
Kevin Marks writes a plea to designers concerning the diminishing contrast between type and background.
As screens have advanced, designers have taken advantage of their increasing resolution by using lighter typeface, lower contrast, and thinner fonts. However, as more of us switch to laptops, mobile phones, and tablets as our main displays, the ideal desktop conditions from design studios are increasingly uncommon in life.
Marks' article is well researched, with shocking examples from Google's App Engine redesign (before) (after), which appear to be a very robotic (dare I say engineer-like) response to written guidelines and suggestions.
I often have to remind myself that my eyes have been trained to spot minute difference between colors, but the vast majority of people can't and simply don't care. Font-weights have a far more impactful resonance than subtleties in color ever will, but combining the both color and weight is what brings life to a design. The solution here is not a utilitarian "keep your type black", but a reminder to adhere to suggested contrast ratios and accessibility guidelines.
In other words, you can pry #2E2E30 from my dead cold fingers, but I promise not to overlay that on #000000.
Not to muddy Mark's message, but this line really got to me: "Typography may not seem like a crucial design element, but it is." Typography is arguably the single most important element a designer can work with; if a user can't see your design, what's the point of making it in the first place?
The video for Sia's new song "The Greatest," is a chilling and esoteric tribute to the 49 victims of the Pulse Nightclub massacre which took place just a few months ago in Orlando, FL.
Soon after completing the first version of Jony.io, I started to realize the potential of having my own corner of the internet. I immediately wanted to share more content than the previous infrastructure could support, and began analyzing the designs of some of my favorite sites. I had an idea of what I wanted to accomplish: a more open and less structured homepage that featured a number of unique post types. My goal was to create a set of standards that could evolve over time, without affecting the content. This resulted in a few minor design trade-offs, but if I wanted to create a new post type or make significant changes to the template, doing so would not interfere with what's already been published.
Every website I had been involved with up to this point used WordPress for the site's backend, and because I had been working with the CMS for years, I was never worried about implementing my designs. From the inexhaustible list of plugins to covetous themes, WordPress is infinitely scalable and grows as your site grows. There are so many benefits to using WordPress, not to mention the wealth of amassed knowledge and tutorials for just about any problem you might come across; if I encounter an issue, I know that somewhere in the depths of the internet is a solution.
When the time came to start developing the second version of Jony.io, I had to make a few architectural decisions — namely how will posts be uploaded, categorized, and subsequently styled?
There are many ways to accomplish a multi-post system with WordPress, but none of them are perfect. You can use the default Post Formats, but the thought of labeling a "Project" as an "Aside" was going to drive me crazy. Another option was to use Categories to style posts, but this would severely limit sorting options should the site grow to any modicum of success. The third option was to create custom Post Types that would style posts based on how they were sorted. There are even more choices (not to mention plugins), but each one felt like another hack that I would regret in the short term.
Before going further, it is important to point out that there is a very big difference between the fully hosted WordPress.com and the self-hosted WordPress.org. Though it isn't advertised as such, WordPress.com is essentially a stripped-down version of its .org counterpart, which is more suited for "techies that prefer to maintain full control over their code." You can read more about the differences here. I'm bringing this up, because Calypso introduced an anomaly in the WordPress release cycle; notable features were missing from the .org interface — namely custom fields. This made me pause, because I wasn't certain whether or not Automattic planned on phasing the feature out, if custom fields just didn't make it into the initial release, or if the Calypso interface was never intended for .org installations.
Despite the excitement, speed improvements, and more attractive interface, Calypso terrified me.
It was at this point I started questioning whether or not I wanted to use WordPress. Ultimately my goal was to make it as easy as possible to publish content, and any hurdles to getting things online was a possible deterrent to posting things in the future. WordPress' implementation of custom fields is powerful, but if you use more than one or two, things quickly get out of hand. Combined with the unsettling release of Calypso, it was time to explore other solutions.
With a deadline looming over my decision, I consulted with Google to find the "best CMS." Kirby had been on my radar for some time now, but I noticed the name appearing more and more throughout my search. A number of respected professionals had made the switch to Kirby. Ivo Mynttinen had been using Kirby for various client projects, and now uses it for his personal site as well. Chris Bowler was an early adopter, migrating from ExpressionEngine to Kirby in 2013. I also took notice of Kirby's Showcase, a collection of websites powered by Kirby that featured several design portfolios and a number creative projects. All of this was building the case for Kirby as a serious web publishing platform.
Kirby is a file-based CMS by Bastian Allgeier that's gives you the freedom to structure your content in the manner that suits you best. It's extremely fast, and does not require a database, which means everything is stored as files and organized by folders: content, templates, plugins, etc. Moreover, Bastian's licensing policy is extremely tolerant: try Kirby on any local installation before paying a nickel. From purchasing, to installation, to daily use, Kirby is just as simple as it sounds. For information on pricing, please visit the Kirby Store.
This all sounds extremely positive, because I'm writing this from hindsight's perspective, but in the moment, my unfamiliarity with Kirby's backend and template structure was unsettling.
Kirby's homepage is adorned with the masthead, "Kirby is a file-based CMS. Easy to setup. Easy to use. Flexible as hell." The folder-based structure is consistently touted as its best feature, but file-based organization does not appeal to me in the slightest. It immediately felt like Kirby was built by developers, for developers. Maybe it's the designer in me, but give me a UI over the filesystem any day. I don't want to worry about numbers before folder names, nesting folders to create the URL structure I like, or using
name-semicolon for the different fields in a plain-text document.
Mobile publishing isn't promoted or advertised anywhere on Kirby's site or in the docs. I live on my iPhone, and maintain that the main reason I have been unable to develop a consistent blogging habit is because of how difficult it is to get things online from a mobile device. Despite reading what feels like every article about "posting to Kirby from iOS," the process seems to involve multiple apps and devices. Some use a Dropbox account that periodically syncs with their server (which isn't possible on my Media Temple Grid), while others rely on their Macs at home and a Hazel script. There are solutions, but they all pale in comparison to Federico Viticci's WordPress Workflow, which can post to MacStories with one tap. If you know of any solution that uses Ulysses, Workflow, and Transmit, please get in touch.
There were also little quirks that I wasn't sure I was willing to overlook. For example, I personally like Daring Fireball's approach to URLs,
/category/year/month/title, which makes it highly unlikely two posts would ever compete for the same URL. With WordPress, this is a simple thing to change – just go to your settings and WordPress will handle all of the routing for you. It looks like this is possible with Kirby, but it requires some advanced techniques and willingness to experiment with the backend. Another example: most link-blogs only show the date once-per-day. WordPress has a built-in syntax, that handles this for you, but with Kirby this is more complicated than I would like. I created a thread about this in the Kirby Forum, but the proposed solution was too complicated for such a simple result.
If you use what's advertised, you shouldn't have any issues, but if you plan on implementing custom details, things quickly get complicated.
In the end, "my goal was to make it easy to post content," and so details like these would have to take a backseat to Kirby's superior publishing workflow.
Introduced with Kirby 2.0, the Panel is the UI component to getting things online. You can manage your content, add or remove users, interact with plugins, and so much more. The Panel is extremely simple to use and has a very shallow learning curve, meaning it's great for our less tech savvy brethren (aka clients). There are a few minor oddities; not everything can be accomplished with the Panel. For example, it is very difficult to move content to another section once it has been published. This is rectified by Kirby's infinitely malleable backend, but if you are at all uncomfortable with code, this might affect your decision substantially.
Blueprints create the individual form fields in the Panel. You can have a different Blueprint for each post type, page, template, etc. Think of Blueprints as Custom Fields on steroids. I am using unique Blueprints for articles, links, quotes, projects, pages, and more. This allows me to see only the fields that matter for a given post. For example, a Quote only needs two fields, the
author, whereas a Project will use substantially more. These are not the identifiers I'm using personally, but this gives you an idea of the power of Blueprints.
Kirbytags allow you to extend Kirbytext, which is an extension of Markdown. Think about that for a second; you can create your own (modified) Markdown syntax to create content or format text. Some examples include automatically linking to a Wikipedia article, adding links to Twitter profiles, or listing all downloadable files for the current page. Phillip Gruneich from One Tap Less wrote a custom Kirbytag to embed actions, workflows, and scripts into his articles. You can see an example of Gruneich's Kirbytag in action here.
On a more philosophical and personal note, Kirby offered what I wanted out of the box. What was considered a "hack" in WordPress is a feature in Kirby. For personal sites, I had never planned for longevity, which meant very little care was given to archives, backups, and organization. Kirby handles the organizational part for you, storing all content as plaintext files, using standards like Markdown, which means you can migrate the site pretty easily if you decide Kirby isn't for you.
I've only just started using Kirby, but I've gotten very comfortable with both the template structure and publishing workflow. I was worried I was going to encounter unreconcilable issues during development, but even with my limited programming experience, I was surprised at how much I was able to do on my own. Though it may not look like it, I am doing a lot of custom things in the background that won't be obvious without diving into the code. I would say that the site is about 95% of what I wanted it to be, and the remainder can be attributed to my own mistakes, changes during development, or details like forgoing my preferred URL structure. If I were to ever ditch Kirby, it would be in favor of a superior mobile publishing workflow.
I would be remiss not to mention the friendly and accommodating support I received from the Kirby community. The Kirby Forum is absolutely invaluable to help answer questions or solve any issues that you come across. The forum is extremely vibrant, and eager to help you accomplish your goals. The Kirby Docs are also extremely detailed, and guide you through all of the basic setup for getting your project online. I wouldn't have been able to create what you see here without their help – kudos and beers are definitely in order.
I built this site with the hopes of developing a blogging habit; the things we share (both in-person and digitally) say a lot about what matters to each of us as individuals. I imagine my personal filter will cover design and technology, but it is my hope that these topics will be sprinkled with social commentary, politics, and general chit-chat. I've been working on this update for months, and still some features and content I had planned didn't make it into the first release. Luckily the web has developed into an ever evolving stream of content, and the foundation I've set should last for a very long time.
Incredible hardware crippled by subpar software. I'm curious to see what the reviews say when this launches in a few weeks.
Gruber's cocky op-ed speculates on the future of our favorite analogue port:
My hope is that they ship wireless ear buds. When Apple eliminates ports, they tend to do so in favor of wireless technology. Pushing wireless as the default would solve the problem of listening to audio while charging the device, too.
The article runs though five options for what might ship in the box alongside the next iPhone. I have very strong thoughts on this subject, but the vehicle that is the headphone-less iPhone 7 is already in motion, so bitching about it here wouldn't make a difference. Later in his post, Gruber brings up a good point regarding the 3.5mm adaptor unveiled by 9to5Mac:
If they ship it in the box, the implied message is that a 3.5mm headphone port is something every iPhone should have, which is contrary to the decision to remove the port from the device itself. If they’re eliminating the port, they’re saying most people should not need it. If most people shouldn’t need it, there’s no reason to ship the adapter with every iPhone.
Agreed. However, I think Gruber overlooked a sixth option: not including any headphones or 3.5mm adapters in the box. In this scenario, Apple can promote the oft-referenced $99 wireless headphones without "muddling their message." You can compare this with the Apple Pencil and Smart Keyboard; both accessories are sold separately, and though they significantly increase the utility of the iPad Pro, they are not essential. Culturally however, this contradicts Apple's long-standing mantra, "music is in our DNA".
While we are speculating, perhaps Apple plans to increase iPhone pricing in the same manner as the iPad Pro (which saw increased revenues as a result this past quarter), and include premium headphones in the box…
Updated 7/30/2016 @ 4:37 PM: Looks like I wasn't the only person to suggest the sixth option.
The new Maps also gains a more subtle and balanced color scheme to help users differentiate between man made and natural topographic features, as well as identify places like hospitals, schools and highways more easily.
The level of detail designers at Google, Apple, Facebook, et al. are able to attain is enviable. To be sure, this is a result of designing a mature product, but those who say Google doesn't care about design haven't been paying attention in the last year.
Arya Srinivasan shares a discussion with UX Designer and coworker, Mason Lee about his work developing AdRoll's style guide.
The problem was design inconsistency, both across products and within a single product. For example, a button that should look the same everywhere but actually varies in color, font weight, and border style.
This tends to be a problem where (1) designs are created in silos, or (2) a style hasn't been defined yet. From the interview it seems AdRoll was experiencing the first scenario, where designers placed on product teams did not interact with all products under the AdRoll umbrella. The second scenario is what most startups, agile, or engineering-driven companies experience. This happens because they tend to move fast, iterate rapidly, and leave little time for a thorough design process.
There is one thing I would like to point out that is not made clear in this otherwise smashing write-up: let designers explore.
Research, iteration, and ideation are the foundations of design. If time is not a luxury you can afford, this exploration has to happen within the bounds of the product, and design variabilities should be expected. Design Synthesis is a project in and of itself; preventing exploration or defining rules too early can hinder creativity and the development of your brand. Some reasonable speculation: assuming AdRoll had forced the design team to observe an unrefined style guide, they would be having much larger problems than polishing the product; there is nothing worse than forcing questionable design metaphors onto fictitious or rudimentary concepts.
Manton Reece quoting a New York Times profile by Gail Collins:
You can argue the pros and cons of Hillary Clinton’s character, or her potential to change the nation, or her position on trade policy. But you can never take away the fact that she was the one who made the idea of a woman becoming president so normal that many young women are bored by it.
There is no one who has fought for the presidential nomination as much as Hillary. Is it a coincidence then, that she is also happens to be the first female candidate to be seriously considered for the position? Wanting something does not entitle you to it, but in this case Reece nails the the significance of her campaign, "Hillary is a strong [candidate], and her place in history is worth fighting for and celebrating." Milestones like this don't come easy. This is the first step to opening the White House to more races and demographics, with a candidate who is more than qualified. I can only hope that as a country we don't fuck up this opportunity.
President Obama delivered a statement on the tragic shooting that took place overnight in Orlando, Florida.
Today, as Americans, we grieve the brutal murder -- a horrific massacre -- of dozens of innocent people. We pray for their families, who are grasping for answers with broken hearts. We stand with the people of Orlando, who have endured a terrible attack on their city. Although it’s still early in the investigation, we know enough to say that this was an act of terror and an act of hate. And as Americans, we are united in grief, in outrage, and in resolve to defend our people.
The fact that the President's opening remarks do not include the clarifiers gay, LGBT, bisexual, transgender, or "community" should not be overlooked.