Code & Development
Open Transclude
The Website Obesity Crisis
A Talk by Maciej CegłowskiWeb Design - The First 100 Years
A Talk by Maciej CegłowskiVisualizing Algorithms
An Article by Mike BostockAias
A Profile by Nick TrombleyThe Future of Programming
A Talk by Bret VictorWhat Makes Software Good?
An Article by Mike BostockAn incoherent rant about design systems
An Article by Robin RendleNo matter how fancy your Figma file is or how beautiful and lovingly well organized that Storybook documentation is; the front-end is always your source of truth. You can hate it as much as you like—all those weird buttons, variables, inaccessible form inputs—but that right there is your design system.
...being honest about this is the first step to fixing it.
Right-Angle Doodling Machine
A Game by Clive Thompson- You draw one single line. It can be as long as you like.
- To start the line, you put your pen down.
- You can make right-angle turns only, either 90 degrees or -90 degrees.
- You cannot back up. You must always move forward.
- You don’t lift your pen until you’re ready to stop. When you lift the pen, the doodle is done.
What do I need to read to be great at CSS?
An Article by Baldur BjarnasonA rule of thumb is that the importance of a blog in your feed reader is inversely proportional to their posting cadence. Prioritise the blogs that post only once a month or every couple of weeks over those that post every day or multiple times a day...Building up a large library of sporadically updated blogs is much more useful and much easier to keep up with than trying to keep up with a handful of aggregation sites every day.
Designing with code
An Article by Matthew StrömRecently I’ve had a few opportunities to use code to create design. In two of my bigger projects at The Wall Street Journal, writing code has led to new ideas. Problems that typically plague early designs — e.g. “how does this look with real content?” — are easy to solve. By exploring visual ideas directly in code, I’ve started to see the amazing potential of code as a design tool.
Picking better names for variables, functions, and projects
An Article by Tom MacWright- Avoid weasel words
- Follow patterns religiously
- Don’t cheap out on characters
- Call things the same thing
- Don’t name internal projects
- When things change, change their names
this vs. that
A Website by Phuoc Nguyentixy.land
A Websitesin(t * x) * cos(t * y)
Creative code golfing.
Front-of-the-front-end and back-of-the-front-end web development
An Article by Brad FrostA succinct way I’ve framed the split is that a front-of-the-front-end developer determines the look and feel of a
button
, while a back-of-the-front-end developer determines what happens when thatbutton
is clicked.The Great Divide
An Article by Chris CoyierOn one side, an army of developers whose interests, responsibilities, and skill sets are heavily revolved around JavaScript.
On the other, an army of developers whose interests, responsibilities, and skill sets are focused on other areas of the front end, like HTML, CSS, design, interaction, patterns, accessibility, etc.
Painting With the Web
An Article by Matthias OttSo much about [Gerhard Richter's painting process] reminds me of designing and building for the Web: The unpredictability, the peculiarities of the material, the improvisation, the bugs, the happy accidents. There is one crucial difference, though. By using static wireframes and static layouts, by separating design and development, we are often limiting our ability to have that creative dialogue with the Web and its materials. We are limiting our potential for playful exploration and for creating surprising and novel solutions. And, most importantly, we are limiting our ability to make conscious, well-informed decisions going forward. By adding more and more layers of abstraction, we are breaking the feedback loop of the creative process.
Technical debt as a lack of understanding
An Article by Dave Rupert"If you develop a program for a long period of time by only adding features but never reorganizing it to reflect your understanding of those features, then eventually that program simply does not contain any understanding and all efforts to work on it take longer and longer.” — Ward Cunningham
bees & bombs
A Blog
Winning by Design: The Methods of Gordon Murray
A case study of the working methods of one particularly successful designer in a highly competitive design domain - Formula One racing car design. Gordon Murray was chief designer for the very successful Brabham and McLaren racing car teams in the 1970s and 1980s. His record of success is characterised by innovative breakthroughs, often arising as sudden illuminations, based on considering the task from first principles and from a systemic viewpoint. His working methods are highly personal, and include intensive use of drawings. Personality factors and team management abilities also appear to be relevant. There are some evident similarities with some other successful, innovative designers
You need to make the step forward
Throughout a racing season there is constant, relentless pressure on the designer to keep making design improvements. But there is a limit to what can be achieved with any car design, before a jump has to be made to basically a new design, an innovation. As Gordon Murray says, ‘Given the situation and the pressure at any one time, you do get to the brick wall...I mean you're doing all these normal modifications, you know you can't go any quicker, you need to make the step forward.’
In the midst of the pressure, the fervour, the panic, he ‘used to get breakthroughs, I mean I used to get like suddenly a mental block's lifted.’
Drawing the bits
That's what is great about race car design, because even though you've had the big idea - the “light bulb” thing, which is fun - the real fun is actually taking these individual things, that nobody's every done before, and in no time at all try and think of a way of designing them. And not only think of a way of doing them, but drawing the bits, having them made and testing them.
Like designing things for the first time
Gordon Murray insists on keeping experience 'at the back of your mind, not the front' and to work from first principles when designing. For instance, in designing a component such as a suspension wishbone, 'it's all too easy - and the longer you're in design the easier it is - to say, I know all about wishbones, this is how it's going to look because that's what wishbones look like.' But if you want to make a step forward, if you're looking for ways of making it much better and much lighter, than you have to go right back to load path analysis. It is like designing things for the first time, rather than the nth time.
Wonder Plots
Working from first principles, and working in a highly organized way seem to come naturally to him, but his personal design process is much less structured than the results might suggest. Although he can tightly organize his team and run a complex racing organisation, his personal ways of designing are relatively unstructured, based on annotated, thumb-nail sketches. ‘I don't sit down and say, OK, now I've had the idea, let's see, this is a solution, these are the different ways to go, if I do this, and do that; I do lots of scribbles just to save it, before I forget.’
Gordon’s design process is based on starting with a quick sketch of a whole idea, which is then developed through many different refinements. ‘I do a quick sketch of the whole idea, and then if there's one bit that looks good, instead of rubbing other bits out, I'd put that bit to one side; I'd do it again and expand on the good bit, and drop out the bad bit, and keep doing it, doing it; and end up with all these sketches, and eventually you end up throwing ninety percent of these away.’ He also talks to himself - or rather, writes notes to himself on the sketches; notes such as ‘rubbish’, ‘too heavy’ or ‘move it this way 30mm.’ Eventually he gets to the stage of more formal, orthographic drawings, but still drawing annotated plans, elevations and sections all together, ‘Until at the end of the day the guys at Brabham used to call them “Wonder Plots”, because they used to say “It's a wonder anybody could see what was on them”!’
I never have engineers that aren't designers
Although Gordon Murray carried immense personal responsibility for the design work of his racing cars, inevitably it involved a lot of teamwork. Clearly he has been successful in inspiring others to work with him. He likes to involve team members in the design problems, and for that reason prefers to recruit all-rounders to his team; ‘I never have engineers that aren't designers.’
The problem with CAD
He also likes to work collectively, standing around a drawing board discussing problems and trying ideas.
For this kind of teamwork, and especially for conceptual design work, he finds computer aided design systems too restrictive. For the McLaren F1 super-car, he installed a five-metre long drawing board in the design office, so that the car could be drawn full size. ‘The problem with CAD for this sort of stuff is that you can never have a full-size drawing, unless you do a print, and by the time you do a print it's out of date in the concept stage.’ He also does not like the one-person emphasis of CAD screens; ‘You can only ever talk to one person at once - you stand behind and look over somebody's shoulder, which is not very good for a boss-designer relationship anyway, to have somebody standing behind you is never a good thing. To look over somebody's shoulder at a tiny little screen, it's just wrong, it's totally wrong.’
(On the other hand, he fully acknowledges that tasks like a complex suspension plot to determine the wheel envelope are ideal for CAD.)
Drawing as a means of thinking
Two-dimensional plans or sections can be seen with sketches and more diagrammatic marks all on the same piece of paper in what appears a confusing jumble.’ These sound like Gordon’s ‘wonder plots’. The architects also use their drawings as a means of thinking ‘aloud’, or ‘talking to themselves’, as Gordon put it. For example, Lawson reports the architect Richard MacCormac as saying, ‘I use drawing as a process of criticism and discovery’; and the engineer-architect Santiago Calatrava as saying, ‘To start with you see the thing in your mind and it doesn’t exist on paper and then you start making simple sketches and organizing things and then you start doing layer after layer.... it is very much a dialogue.’
The common elements in these similar descriptions are the use of drawing not only as a means of externalising cognitive images but also of actively ‘thinking by drawing’, and of responding, layer after layer and view after view, to the design as it emerges in the drawings. These observations also confirm Schön’s observation of designing as a ‘reflective conversation’ between the designer and the emerging design. It is the reliance on drawing, and the preference for the immediacy of the interaction and feedback that manual drawing gives, that makes the architects, like Gordon Murray, unenthusiastic about CAD as a conceptual design tool.
A new gestalt
The innovator has a systems mind, one that sees things in terms of how they relate to each other in producing a result, a new gestalt that to some degree changes the world.
Intense activity, then relaxation
The working style is based on periods of intense activity, coupled with other periods of more relaxed, reflective contemplation. This working style may not be a reflection of a particular personality trait, but a necessary aspect of creative work, which requires alternating intense effort with relaxation.
Strategic, not tactical
The working methods of the innovative designer are, for the most part, not systematic; there is little or no evidence of the use of systematic methods of creative thinking, for example. The innovative designer seems to be too involved with the urgent necessity of problem solving to want, or to need, to stand back and consider their working methods. Their design approach is strategic, not tactical.
Drawing for parallel design thinking
An important feature of their strategy is parallel working - keeping design activity going at many levels simultaneously. The best cognitive aid for supporting and maintaining parallel design thinking is drawing. Drawing with the conventional tools of paper and pencil gives the flexibility to shift levels of detail instantaneously; allows partial, different views at different levels of detail to be developed side by side, or above and below and overlapping; keeps records of previous views, ideas and notes that can be accessed relatively quickly and inserted into the current frame of reference; permits and encourages the simultaneous, non-hierarchical participation of co-workers, using a common representation.
The drawing of partial solutions or representations also aids the designer’s thinking processes, and provides some ‘talk-back’. As well as drawing, innovative designers frequently like to undertake practical work related to the design solution, such as building models or mock-ups, or participating in construction.
A small team of committed coworkers
The innovative designer also likes, perhaps needs, to work with a small team of committed co-workers who share the same passions and dedication.