669
If you can’t explain something in simple terms, you don’t understand it
I’ve found this to be true of programming as well. It’s critical for any engineering team to be talking regularly about its code. Doing so forces its members to understand what they’re doing.
development 
5 days ago
Damage
There’s a lot of whining about how undervalued native apps are these days. The kernel of truth in this post is that $1 apps don’t sustain a software business by themselves. The rest of this post is a yearning for a bygone, pre-Internet, platform-centric era written by a Mac industry journalist.
business 
7 weeks ago
“UX drives all of this.”
Chris Coyier, astute as ever, agrees with both sides of the web tooling complexity argument.
development 
7 weeks ago
Six programming paradigms that will change how you think about coding
Yevgeniy Brikman’s article is the programmer’s equivalent of an acid trip. The less familiar the alternative paradigms are to you, the crazier your trip will be.
development 
7 weeks ago
#FFFFFF diversity
Erica Joy:

“I’m done with fighting for the kind of diversity that unequally benefits one group. I’m done with fighting for ‘Women in Tech.’ I won’t fight against ‘Women in Tech.’ I will still cheer for ‘Women in Tech’ when progress is made. But ‘Women in Tech’ don’t need me to battle for them. ‘Women in Tech’ have the Benioffs and the Parkers and the Anita Borgs and the whole of Team Colorless Diversity to fight for them.”
business 
9 weeks ago
Material Design Color Tool
My colleague Mickey sent me this link to Material Design’s color theme tool. I suspect he has me pegged as a hyper-rationalist thinker.

My gut reaction is to love this thing intensely. And yet, in spite of representing the pinnacle of Google’s achievement with the Material Design spec, this tool is also a reductio ad absurdum against cookie-cutter UI design.

We may at some point reach peak Material, at which point it will feel bland, impersonal, and commodified. I suspect we will begin to see (if we don’t already) a revival of the postmodern aesthetic. I never fully understood postmodernism and do not flourish as a designer in its “no more rules” modality. However, its defining characteristic is its deep connection with cultural context, which is distinctly one-dimensional in a highly commodified UI kit.
development  design 
10 weeks ago
Great pic
This Poorly Drawn Lines comic sums up the contemporary digital experience.
design 
february 2017
Comparing Elixir and Go
I’m already enjoying learning Elixir. After reading this article I wish I had time to learn both.
january 2017
What I wish I'd known about equity before joining a unicorn
Or: reasons not to work for equity in a venture capital backed startup in the first place.
business 
january 2017
11 simple npm tricks that will knock your wombat socks off
As web development stacks coalesce around node for everything from dependency management to production UI servers, these sorts of articles are going to come in handy.
development 
january 2017
The Eta programming language
Here’s an intriguing new functional programming language. It’s presumably aimed at the Java community due to its interoperability therewith. I’m not seeing quite as many features as Elixir in the documentation, but it’s encouraging to see growing interest in purely functional languages.
development 
january 2017
Venture capital is going to murder Medium
I’ve been saying this for years. I would genuinely like to be wrong, but I really doubt it. I hope everyone gets their content out in time.
business 
january 2017
Hello, Yarn!
Reading this article about Yarn by Isaac Schlueter in the npm blog, I wouldn’t be surprised if Yarn’s killer features were cherry picked into the official npm client over the next year or two. As Schlueter writes, “This is how open source works.”
development 
october 2016
Intro to web workers
Brian Cooksey wrote this, the best guide I’ve read so far to web workers. The age of the web worker API is showing. All the other guides I’ve read seem to gloss over the fact that the web worker constructor expects a worker source URL, which throws a wrench in most modern front-end builds. I don’t think JavaScript bundling was very common at the time the spec for this was first drafted. It’s certainly pre-grunt.

Cooksey identifies what appears to be a common workaround implemented in abstraction libraries wherein any function can be converted to a Blob and passed into the constructor in its place. There are other restrictions, but the short of it is this: Any pure function (no use of closures or globals and no side effects) can theoretically be run in a worker with the right boilerplate.
development 
october 2016
Mixing HTML pages inside your WebGL
This tutorial by Alexandra and Jerome Etienne could come in handy for anyone trying to add interactive UI controls to a WebGL app.
development 
september 2016
The babysitters club
Jesse Barron in a brilliant article for Real Life Magazine on being coddled by the cutesy language in our apps:

“We are put in a position where we either embody the forces of repression or we enjoy a Silicon Valley product. What a convenient little elision for the Valley, the seat of real power. They’re not the repressive force; opposing them is. All they want is to let us be as free as when we were kids.”
design  business 
september 2016
Performance tooling today
Our intern Cole shared this link with the team. Check out the list of performance tools in particular.
development 
august 2016
10 things you need to learn in design school if you’re tired of wasting your money
Mike Monteiro for the Dear Design Student series:

“No matter how good your shit is, at some point you are going to have to sell it, invoice for it, and collect your money.”
design 
august 2016
The cost of small modules
Though there are some thoughtful criticisms of the methodology of this study of the performance cost of small JavaScript modules in the comments, I can’t help but wonder if is the the final nail in the coffin for hypermodularity, at least on the browser side if not in node.
development 
august 2016
Tips for testing your designs with UserTesting.com
I’m just getting familiar with UserTesting.com and found this handy guide by Michael Margolis of Google Ventures.
design 
august 2016
ChadMiller
One of the best portfolio sites I’ve seen yet. VCFA grad Chad Miller is now a senior designer at Pentagram. His work is delightfully simple. There are a lot of subtle touches to this site, like the way the letters “L O A D” appear in the corners during page transitions and the ligatures in the Maison Neue web font.
design 
august 2016
The Daily Pic #1605
You’ll have to pardon the political post. One thing I enjoy about working with other professionals in a professional setting is how it requires us to set aside ideological differences and work together toward common causes. This election year has been absolutely crazy, though. I can’t bite my tongue any more.

This is an excellent post by Blake Gopnik on the way that design has been (ab)used as a tool to scare people into voting for a particular ticket. The 1949 billboard he discusses is similar to if somewhat more blatant than the racist undercurrents in our 2016 election.
design 
august 2016
The problem with graphic design, part one
This is Elliott Earls’ PDF chart or “précis” from his YouTube video by the same title. For those like me who are unfamiliar with the philosophical terrain of aesthetics and the ideological fissures within the design community, this seems like a good start or, at the very least, something of a bibliography.

You may need to open this in Acrobat. macOS’ Preview seems to choke on it when zooming in.
design  do-not-format 
july 2016
The future of the digital agency
Paul Boag asks (and answers) the question: “Are we currently witnessing the demise of the digital agency?”
business  design  development 
july 2016
Don’t listen to Le Corbusier—or Jakob Nielsen
Nielsen Norman recently published yet another “study,” this time on the efficacy of logo placement (should it be in the middle or on the left?). I shudder to imagine what would emerge from a similar study of the evolution of automobile controls around the turn of the 20th century. The habits and expectations of people are not set in stone. Searching the web angrily for someone who could articulate this better than me, I found this critique by Amy Hoy from 2010. She hits the nail on the head:

“There’s nothing wrong with the scientific study of usability. Until you pretend that it’s prescriptive, instead of descriptive. That something good for humans can be reduced to mathematical certainty. That there is a science for designing. Then you get **engineerism.**”

She elaborates further in response to indignant comments:

“Eye tracking is not a science. Usability testing is not a science. It pretends to be science. It can tell you things — yes. But it cannot tell you why ... Nielsen’s faux science never tells you about how the test was performed, the goodness, usefulness, or relevance of the content to the test subjects. That’s not science. It’s pseudo-science. His partner Don Norman’s work is much more scientific, but he’s a quiet partner and doesn’t make loud, detrimental announcements about how the web should be.”

At best, these studies are snapshots in time. They tell you what will probably work somewhat better today, but they probably can’t tell you why, and they definitely won’t tell you what will work next year.
design 
july 2016
Real–world HTTP/2: 400gb of images per day
Setting aside the controversy over 99designs’ spec-based business model, this is an interesting analysis of their HTTP/2 rollout.
july 2016
A comprehensive guide to font loading strategies
I’ve done some font loading research in my time, but whoa...
development 
july 2016
We don’t fight the talent war
Jason Fried makes the argument that high profile talent in Silicon Valley is overrated and that poaching is a losing prospect.
business 
june 2016
Don’t ask: Gartner’s 2000 annual report
I usually post this sort of work on Pinterest. In this case it’s a PDF, so I have to post it here. Gartner’s 2000 annual report was put together by Cahan & Associates and featured in the book, “Making and breaking the grid,” by Timothy Samara. It is as fresh today as it was 16 years ago.

Think of graphic design as a stage upon which the actors of art and copy are thrust. If the stage is designed poorly, the audience doesn’t understand the play. If the stage is merely functional, the audience understands the words but leaves vaguely disappointed. If the stage is sublime, it is a silent third actor, and the audience’s experience is transcendent. This report is an amazing example of that silent third actor. With a few photos, some type, a grid layout and some bold colors, it punctuates a very compelling story about how Gartner’s research made its clients more competitive, how those clients preferred not to be named in the report, and how that anonymity is a *selling point*. The design backs that up by making anonymity a visual motif that repeats itself in various forms throughout the report.
design 
june 2016
JavaScript developers, be warned about this crazy JIT bug in V8!
Most of the time `typeof null === 'undefined'` is `true`, but every once in a while it isn’t.
development 
june 2016
The ideal design workflow — prototyping: from UX to front end
Keaton Herzer delivers a tongue-in-cheek tour of digital design tools for the Prototypr blog.
design 
june 2016
10 lodash features you can replace with ES6
This is a handy reference by Dan Prince for SitePoint. I recommend it for anyone who loves lodash. (I do). I’ve worked on an ES6 project without the benefit of lodash. My team had a policy of cherry-picking individual lodash functions we absolutely needed, which turned out to be surprisingly few for our project. The tip about `_.partial` is especially helpful. I had no idea you could do that in ES6.
development 
june 2016
Stop bringing strong typing to JavaScript
I agree with James Wright’s title of his article. Most of my computer science coursework in college was done in Java. I don’t miss having to explicitly cast the hell out of everything.

That’s not Wright’s problem with strong typing in JavaScript, though. His premise is that “if one is developing a system so complex that it requires strong typing, then one should be using a language that supports strong typing at its core.”

Wright then goes on to say how important he thinks runtime type checking is without explaining why. How many bugs has he *really* caught with runtime type checking? How difficult would they have been to resolve *without* the runtime checker? In my own experience and that of most of the other full time JavaScript developers I’ve worked with, the answers are not many and not long.

The worst consequences of JavaScript’s duck typing are evident when consuming other peoples’ APIs. Unless those APIs are explicitly clear and consistent about their inputs and outputs, there can be a great deal of confusion: type errors emanate from code with which the consumer is not familiar; the API returns a value of an unexpected type and but the consumer assumes the problem lies somewhere in *their* code. But bad API design can be mitigated with decent unit tests and tools like Flow, which allow static typing to be bolted on at build time in a way that is both configurable and optional.

I think the core of Wright’s argument is actually this bit here:

“I prefer to keep my JS as light as possible. I understand that this isn’t always a possibility in reality, but if backend systems serve as the source truth for fundamental business logic, then frontend code becomes lighter and less redundant.”

Wright would presumably prefer it if the rest of the world would follow his lead and stop writing so much JavaScript. This attitude of relegating JavaScript to purely DOM-related code closes the door on a lot of possibilities. Writing an app using isomorphic JavaScript *completely* eliminates redundancy. Only the lack of native module support stands in the way of broad adoption of this pattern, and [it won’t be for long](https://bugs.chromium.org/p/v8/issues/detail?id=1569).
development 
june 2016
Considerations for styling the `pre` tag
Useful tips from the prolific Chris Coyier.
development 
may 2016
Design systems and Postel’s law
Mark Boulton:

“Collaborating across an organisation to create a meaningful, impactful design system means you have to be liberal in what you accept from others into the system. Be it code, thoughts, design work, content, or criticism. That input can also come from many different teams, strategy, executives, products, people. You see, it’s a big mess! And the only way, really, to work with a system like this is to be open to all input from wherever it comes, in whatever form [it] takes.”
design  business 
may 2016
The other half of design
Frank Chimero on his new company, Abstract, and a demand for tools that support design process he believes is unmet. He doesn’t say what that demand is, exactly. The marketplace of design tools is getting rather crowded. But Chimero is the author of “the shape of design” and other thoughtful commentaries on design and its processes. He tends to weave some pretty great design into his writings, so I expect at the very least a compelling concept if not an outright success.
design  business 
may 2016
Portland Opera preview: rebuilding a magical world
I just went to Portland Opera’s production of the Magic Flute. The Sendak sets were fantastic.
design 
may 2016
Five mistakes to avoid when designing micro-interactions
It’s a good thing I found this. I was just starting down the road of overdoing animations in a project I’m working on. Hopefully I read it in time...
design 
may 2016
Why React? Why not Angular 2?
I agree strongly with Dave Ceddia’s sentiment here. Only once in over a decade of writing a lot of JavaScript did I wish it had type checking, and even then it was only for the sake of people consuming my API. If type checking really matters to you, Flow is a much more elegant way to accomplish this than TypeScript. Angular 1’s appeal was in how productive it made developers. Angular 2 is a step in the wrong direction. React solves a very specific problem: binding JavaScript state to HTML templates. While the React community has gone a little crazy with tooling, the fundamentals of React itself are solid.
development 
may 2016
Welcome to Friday
This is a nice portolio site for a UX agency in the UK. I especially dig the animated gif in the abstract mobile phone.
design  portfolio-2016 
april 2016
R/M Design School
This site is an amazing introduction to the fundamentals of graphic design. The first two articles are about font pairings and grid systems. Two more on color and layout are due later this year.
design 
april 2016
A day in the life of a young black male engineering student
A harrowing account of a black coding bootcamp student trying to cash his stipend check.
business  development 
april 2016
Changes to npm’s unpublish policy
`npm unpublish` is effectively dead. You can still be a jerk and remove all the versions of a package and “break the Internet,” but the package itself can’t be unpublished once doing so can “break any other installs.” Presumably the “other installs” means public packages that depend on yours, but that isn’t clear. They may be referring to private packages or maybe even ones published on npme servers as well.
development 
april 2016
My year in startup hell at Hubspot
Dan Lyons shares a short account of his time at HubSpot for Fortune. (A much longer one is available in his book, for which this article is a promotion.) It’s incredible that any startup would hire such a savagely witty satirist, much less a startup that makes for such an easy target.
business 
march 2016
kik, left-pad, and npm
npm’s official response to leftpadgate. It may be the most clear-eyed commentary on the whole fiasco. Though it doesn’t address any questions about the drawbacks of hypermodularity, it’s pretty level-headed and transparent given all the criticism they’ve weathered lately.
development 
march 2016
The most dangerous writing app
If you stop typing for more than five seconds, it erases everything. It reminds me of Twitter in that it places an artificial constraint on writing, just in a different way.
design 
march 2016
Small modules: it’s not quite that simple
Rich Harris on the leftpadgate debacle:

“Everyone has an idea about how to make it easier to find needles in the haystack, but no-one bothers to ask what all this hay is doing here in the first place.”

We used to have awful monoliths like YUI. Now we have sawdust particles like left-pad. Developers should be able to quickly comprehend the APIs of the dependencies in they projects they work on—something that’s especially tricky for projects with multiple authors. Both the monolith and the sawdust particle sizes obscure comprehension: the former by the sheer weight of largely unused code, the latter by splintering individual functions across packages with no consistency in style or structure. Surely there must be a happy middle ground somewhere.
development 
march 2016
npm and left-pad: have we forgotten how to program?
It isn’t surprising that a .NET developer would be amongst the first to pick up a torch in the movement against tiny npm packages. npm has an unfortunate history of discounting the Windows environment. While I agree with much of what David Haney says here, I think it’s important to emphasize moderation. We should not let the pendulum swing back toward monoliths like YUI or Ember. As Haney himself writes:

“Who really wants a ‘cosine’ dependency? We’d all really like a ‘trigonometry’ dependency instead which encompasses many ‘tricky’ functions that we don’t want to have to write ourselves.”

Note that Haney says “trigonometry” and not “math.”
development  from twitter_favs
march 2016
Smoother dashboard typefaces might enhance driver safety
On the one hand, it’s great to see an institution like MIT put together a study reaffirming the value of humanist typefaces. On the other hand, looking at all of design through A/B tests like this is like looking at the world through a straw. Graphic designers trained in art fundamentals can contribute a more wholistic vision of how user interfaces should look.
design 
march 2016
How to not break the internet with this one weird trick
Rich Harris of The Guardian describes how leftpadgate broke a lot of downstream packages (including Babel) and has a good idea how to prevent this sort of thing from happening again in the future.
development 
march 2016
We only hire the trendiest
A compelling story by Dan Luu about how engineers can go from being worth $200K/year to nothing and back again based on superficial attributes. I’ve seen this first hand. There’s an opportunity here for hiring managers to get great engineers who are significantly undervalued. Step one is to take a hard look at your recruiter’s qualifications (or maybe even to not use one at all). Step two is to look for candidates who demonstrate a capacity for curiosity and adaptability, not just someone who uses the right buzzwords.
development  business 
march 2016
Pitch perfect
Rick Klau of Google Ventures gives good advice on how to pitch. My favorite tip:

“Don’t leave empty-handed. Go into the pitch with an idea of what you hope to accomplish. Whether you’re looking for investment, a commercial arrangement, a partnership, or something else: make sure to ask the audience for it before you leave, and identify who in the room you should follow up with after the meeting.”

This holds up for anyone pitching anything to any room, even if the “anyone” isn’t a startup and “any room” isn’t a VC firm in Silicon Valley.
design  business 
march 2016
The new Met logo and how we critique design
Khoi Vinh makes the case for professional design criticism in the wake of the backlash against the Met’s new logo.
design  business 
march 2016
Is the money still bored?
Justin Jackson lamenting the demise of Tumblr and the predictable fall from grace that every company like it goes through following an acquisition:

“Why not focus, from the beginning, on delivering value that people will pay for?”
business 
march 2016
How to pass a programming interview
Ammon Bartram:

“Preparing for interviews is work, and forcing programmers to learn skills other than building great software wastes everyone’s time. Companies should improve their interview processes to be less biased by academic CS, memorized facts, and rehearsed interview processes.”

Unfortunately, as Bartram explains, Triplebyte hasn’t changed its interview process, in spite of the evidence he presents here demonstrating how ineffective it is.

If you conduct interviews at your company, remember that every minute a candidate spends brushing up on sorting algorithms they haven’t used years is a minute they could be spending on preparing to explain how their experience is relevant to the job you’re hiring them for. Getting a candidate to answer riddles correctly means absolutely nothing about their value to your company.
development  business 
march 2016
Garrett Kroll – user experience designer
This is a really nice portfolio site. The copy, images, layout and typography all work perfectly with each other and the animations weave the whole thing together with tastefully subtle transitions.
design 
march 2016
Typesetting in Sketch
“We’ve listened to your feedback and tried to create a very consistent and reliable rendering system. We’re making a strong emphasis on line spacing on this update, but we’re just getting started. This is the first part in a series of type improvements we plan to release this year.”

Hallelujah!
design 
march 2016
Software has bugs. This is normal.
David Heinemeier Hansson:

“Next time you hit an annoying bug, give it five minutes before you fire off that indignant tweet. Marvel at the miracle it is that anything as complex as a modern piece of software works at all!”

Or, from a developer’s perspective, if you treat every piece of software you write as a deal with the devil, you will treat it as your last recourse rather than your first.
development  business 
march 2016
Don’t swim against the current
Justin Jackson:

“It’s very difficult to fight the tide. This doesn’t mean you can’t have values, or stand for something, it just means you have to give people what they want first.”
business 
february 2016
</html>
HTML is literally done.
development 
february 2016
Frontend design
Brad Frost:

“A frontend designer (who may also go by UI developer, client-side developer, UI engineer, design engineer, frontend architect, designer/developer, prototyper, unicorn, or Bo Jackson) lives in a sort of purgatory between worlds. They understand UX principles and best practices, but may not spend their time conducting research, creating flows, and planning scenarios. They have a keen eye for aesthetics, but may not spend their time pouring over font pairings, comparing color palettes, or creating illustrations and icons. They can write JavaScript, but may not spend their time writing application-level code, wiring up middleware, or debugging. They understand the importance of backend development, but may not spend their time writing backend logic, spinning up servers, load testing, etc.”

I wonder if this is too limiting. Can there be a frontend designer with a deep understanding of both engineering and design—a polymath who can design and execute a software product end-to-end? The recent rise of sophisticated hosting and integration services and the creation of the “dev ops” role have taken infrastructure out of a typical developer’s job. On the other end of the spectrum, illustration hasn’t been prerequisite for salaried graphic design work since my grandfather last practiced it in the 1960s.

In short, these two domains—software engineering and graphic design—no longer require two lifetimes to master. Can they both be mastered in just one?
development  business  design  from twitter_favs
february 2016
Harnessing vector awesomeness in Sketch
Thank you to Peter Nowell for saving my bacon on a student project. This is a must-read if you want to do any unions, subtractions, intersections or differences with text. The trick is converting the text to outlines.
design 
february 2016
Kill your dependencies
This needs to be done in npm right now.
development 
february 2016
The Zen of Erlang
This is a really well-written good philosophical overview of the Erlang language by Fred Hébert. I strongly recommend it if you’re learning Elixir as the fundamentals are basically the same.

I studied Erlang in a computer science class many years ago. I remember finding the syntax unfriendly. I also remember failing to see the value of functional programming as compared with all the derivatives of C I’d become accustomed to. Maybe I was too inexperienced.

Now that I’ve spent a few years working professionally in JavaScript where the functional and classical paradigms live very awkwardly together, I would love to work work on a professional project in a purely functional language. And before you suggest Haskell, work in a language by Yoda designed I’d rather not.
development 
february 2016
Intel fails to improve proportion of black and Hispanic staff after diversity pledge
The flip side to Intel’s announcement: no change in Black representation and a net loss of Hispanic employees.
business  development  from twitter_favs
february 2016
Microcontainers: tiny, portable Docker containers
Travis Reeder of Iron.io explains how to reduce the weight of Docker containers by a factor of ten.
development 
february 2016
The controversial state of JavaScript tooling
Nicolás Bevacqua:

“The problem with hypermodularization, though, is that adoption becomes trickier. Undoubtedly, people will immediately point at small modules as the culprit. ‘Too many API touchpoints’ – some say. ‘Too much plumbing’ – others point out. Some might even say that larger bundles of things were better, as you didn’t have to spend time forming an opinion as to how half a dozen modules should be plumbed together, or dealing with boilerplate generators such as yeoman (another non-solution – code generators are hardly ever the answer).”
development 
february 2016
Intel hired 43% women, minorities in 2015
Intel CEO Brian Krzanich:

“I did this for one simple reason: If we want the technology industry to define the future, we must be representative of that future. And we must represent the consumers and the populations we serve. And this genuinely leads to better business results.”
development  business  from twitter_favs
january 2016
Whitespace
Mark Boulton wrote this almost a decade ago. This article was a harbinger of one of many traditional graphic design principles that are finally becoming mainstream in web design.
design 
january 2016
Why React/Redux is an inferior paradigm
André Staltz explains why Elm and his Cycle.js library are better:

“React may be superior in ecosystem, or with feature coverage, but not so as a paradigm. These are three different concerns you should bear in mind when choosing a library/framework. You may need the ecosystem or some specific features, so paradigm may not be important. In other cases, you want to choose the library/framework with the most ergonomic paradigm. That means a good signal-to-noise ratio: each line of code contributes to delivering features, each line of code is ‘semantic’ and reads like a specification. In short, the closer the code is to a description of ‘what I want the program to do,’ the better. But the more manual wiring there is, the more ‘noise’ is added to your code, and the more verbose it gets.’”

As skeptical as I was when I started this article, Staltz’s criticisms rang true to me. I’ve been working on React projects for about three months now. Not long, but long enough to get a sense of its pain points. Unfortunately, his timing isn’t great. The march from jQuery to Backbone to Angular to React is to the JavaScript community what the retreat from Moscow was to Napoleon’s army: a long, costly slog with several bloody battles along the way. The appetite for this sort of conflict isn’t [what it was four years ago](http://throneofjs.com).
development 
january 2016
How to program independent games
I’m neither a gamer nor a game developer, but there are several really good gems of wisdom in this 2011 UC Berkeley talk by Jonathan Blow, like this one at about 19 minutes:

“You might optimize for speed, meaning you’re trying to minimize the number of seconds your program takes to execute. You might optimize for space, which means you’re trying to minimize the amount of storage it takes. But another angle on what I’m talking about here is that there’s a third thing you might want to optimize for, which is much more import than either of these, which is years of your life required per program implementation.”

And for those of us who have to maintain our projects well after their initial releases, optimizing for implementation time can also translate into optimized debugging time if we’re disciplined about it.
development  video 
january 2016
The past, present and future of Sketch
Peter Omvlee, the creator of Sketch, spoke at length about his product and competition from Adobe’s Comet in an interview with Geoff Teehan of Teehan+Lax. While discussing Sketch, Omvlee touched on the animation trend going on in product design right now:

“On one end, you have basic things like the original Flinto where you’re tying screens together to visualize a flow. There’s definitely value in that. On the other end you have tools like Origami and Framer where you can go completely wild with very custom animations. You can do really interesting things there. However, I think that’s not something every designer will be interested in. I may be a bit worried that those kinds of animations are going to become as overdone as the skeuomorphic stuff we saw before the days of iOS 7. I value animations but I think designers have a tendency to jump into new things a bit enthusiastically.”
design 
january 2016
Learning to see
More Designlab 101 required reading, this one by iA:

“Designers see more, and more precisely. This is a blessing and a curse—once we have learned to see design, both good and bad, we cannot un-see. The downside is that the more you learn to see, the more you lose your ‘common’ eye, the eye you design for. This can be frustrating for us designers when we work for a customer with a bad eye and strong opinions. But this is no justification for designer arrogance or eye-rolling. Part of our job is to make the invisible visible, to clearly express what we see, feel and do. You can’t expect to sell what you can’t explain.”
design 
january 2016
Designing for a hierarchy of needs
This Smashing Magazine article by Steven Bradley is required reading for Designlab’s 101 course:

“Maslow’s hierarchy can be translated to design, for which the hierarchy from low to high would be functionality, reliability, usability, proficiency and creativity... Look at the design hierarchy as a guide. Most of the time, meeting lower-level needs before attempting to satisfy higher-level needs makes sense. If your website isn’t usable, you will probably want to fix that before giving visitors more ways to be proficient.”
design 
january 2016
What kind of design work should I do?
An excellent (if not comprehensive) flow chart by Julie Zhuo.
design 
december 2015
Building Basecamp 3: mobile prototypes
37signals is jumping on the Framer prototyping train. Now if Framer would just swap out that CoffeeScript for ES6...
design  development 
november 2015
Three years with CSS Grid Layout
Rachel Andrew, who has been following the CSS Grid spec closely, shares some (mostly) good news about the latest developments.

There are still a couple of things that bother me, though. The first is that, as of the November 2015 draft, the spec does not support infinite grids. Instead grids have a finite number of rows and columns within their container. This is a problem on the web where layouts are flow-based and content can push its siblings down or sideways ad infinitum. The most prominent use case for infinite grids is known in graphic design circles as a “baseline” grid. These are horizontal lines with even vertical spacing between each of the lines. Yes, you can hack a basic baseline grid with `rems`, but there are a lot of things you can’t do with `rems` that print designers take for granted in tools like InDesign. In fairness, print designers work in a static medium, so their baseline grids are conceptually much simpler.

My second concern is that CSS itself is already a massive spec that is ill-suited to the task of web design. The new CSS Grid spec may have gotten layout right in a way that the existing spec does not, but it, too, is massive and it doesn’t replace anything. Browser vendors implementing the CSS Grid Spec must support both it *and* all the crap that came before it without sacrificing paint performance. Little wonder that everyone but its author has been so reluctant to implement it over the last four years.

At any rate, kudos to Rachel Andrew for writing all this up in such detail.
development  design 
november 2015
Arrow this
Kyle Simpson explains why ES6 arrow functions don’t actually have a lexically bound `this`. In fact, they have no `this` at all.
development 
october 2015
Composition over inheritance
Mattias Petter Johansson (MPJ), an engineer at Spotify and creator of FunFunFunction, explains very eloquently the advantages of object composition over class-based inheritance using JavaScript.
development  video  from twitter_favs
october 2015
Mnesia
This rant about Erlang’s Mnesia database made its way to the top ten on Hacker News today, most likely because of it’s apocalyptic vision for online advertising:

“The elephant in the room being that the ad market is falling apart because it isn't worth anything near like what we imagined. If views were what mattered it would be impossible for Twitter to be in such trouble, Arstechnica be struggling to maintain its editorial standards, or sites like Huffington Post and Forbes to be forced to display clickbait panels and load 40 - 70 third party plants per page load.”
development  business 
october 2015
« earlier      
audio business design development do-not-format portfolio-2016 video

Copy this bookmark:



description:


tags: