Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Design Minded Development
Search
Austin Bales
March 01, 2013
Design
520
8
Share
Design Minded Development
Good designers and good developers have a lot in common.
Austin Bales
March 01, 2013
More Decks by Austin Bales
See All by Austin Bales
UI Encapsulation with Handlebars and Sass
austin
5
1.1k
Building Awesome Products at Do.com
austin
2
200
Building Do on Heroku
austin
7
710
Other Decks in Design
See All in Design
ClaudeCodeでマーケターの課題を解決する
kenichiota0711
11
13k
生成AIの不確実性を価値に変える、「ビズリーチ」の体験設計 / KNOTS2026
visional_engineering_and_design
6
1.1k
「余白」と「欲望」を味方につける ——AI時代のデザインエンジニアリングと「越境」の作法 #KNOTS2026
koyaman
1
1.8k
Figma MCPを活用するためのデザインハンドブック
vivion
7
16k
AIスライド生成を進化させるMDファイル
kenichiota0711
0
830
デザインを信じていますか
sekiguchiy
1
1.1k
Mandalyn_DT5001_FinalAssignment.pdf
lynteo
0
210
全員がアウトプットを出せる時代、 誰を採用する?
nishame
0
520
From the Visible Crossroads: Turning Outputs into Outcomes
takaikanako
2
1.4k
AIスライドデザインを生成する仕組みを社内共有する
kenichiota0711
7
5.3k
はじめての演奏会フライヤーデザイン
chorkaichan
1
290
Storyboard Assignment: Storyboard from Comic Strip
lynteo
3
260
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
440
Marketing to machines
jonoalderson
1
5.2k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
69
39k
What's in a price? How to price your products and services
michaelherold
247
13k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Tell your own story through comics
letsgokoyo
1
900
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
130
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
710
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
290
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Transcript
Design Minded Development The work, dress and concepts displayed within
are the property of Austin Bales or others. Some or all rights reserved. Austin Robert Bales arbales
do.com
None
Design Minded Development The work, dress and concepts displayed within
are the property of Austin Bales or others. Some or all rights reserved.
Good designers and good developers have a lot in common.
“ What is it that makes it what it is?
” Karen Moyer
DESIGN IS PROCESS from an existing state – to a
preferred one
DEVELOPMENT IS PROCESS from a concept – to a functioning
system
PATTERNS SIMPLICITY CLARITY & DRYNESS The Commonalities
LABELS!? (DANGEROUS COMPLIMENTS)
UNICORN / NINJA
NINJAS THROW STARS, THEY DON’T WRITE CODE.
YOU CAN BE A TOO DON’T PLACE PEOPLE ON PEDESTALS
LEARNING Steps for
What do you want to Build? The Build icon is
a trademark of Andy McMillan.
How can I realize an idea?
Start somewhere, somehow. <?php ?>
Iterate
Gradually aim to solve more complex problems.
PATTERNS SIMPLICITY CLARITY & DRYNESS The Commonalities
PATTERNS No. 1
“ Good product design incorporates a number of timeless principles
for human-computer interaction. ” “The Philosophy of UI Design: Fundamental Principles” OS X Human Interface Guidelines
-‐ (void) setupVolumeView { NSView *volumeView =
[NSView initialize]; [volumeView setDelegate: self]; } song = Song.new song.name = "Ocean Man" song.artist = Artist.where(name: 'Ween').first song.save
In Design
None
None
Art & Technology Lectures presents… Richard L. Gregory The Peculiarity
of Pictures 7pm on November 31, 2007 Margaret Morrison Carnegie Hall 5232 Forbes Avenue, Pittsburgh Admission Free
Art & Technology Lectures presents… Richard L. Gregory The Peculiarity
of Pictures 7pm on November 31, 2007 Margaret Morrison Carnegie Hall 5232 Forbes Avenue, Pittsburgh Admission Free
Art & Technology Lectures presents… Richard L. Gregory The Peculiarity
of Pictures 7pm on November 31, 2007 Margaret Morrison Carnegie Hall 5232 Forbes Avenue, Pittsburgh Admission Free
Art & Technology Lectures presents… Richard L. Gregory The Peculiarity
of Pictures 7pm on November 31, 2007 Margaret Morrison Carnegie Hall 5232 Forbes Avenue, Pittsburgh Admission Free
None
SIMPLICITY No. 2 Contains quotations and excepts from… The Laws
of Simplicity by John Maeda
“ Simplicity is about subtracting the obvious, and adding the
meaningful. ” The Laws of Simplicity by John Maeda
In Code
“Subviews” in Backbone
Album art from Up From Below. Copyright Vagrant Records.
Control View Volume View
render: function(){ this.$el.html(Warble.templates.controls()); volumeEl = this.$("[data-‐region='volumeControls']"); this.volumeView
= new Warble.Views.VolumeControl({ el: volumeEl, currentVolume: this.model.get('currentVolume') }); this.volumeView.render(); this.volumeView.on('change:volume', this.changeVolume()) } warble_control_view.js
render: function(){ this.$el.html(Warble.templates.controls()); volumeEl = this.$("[data-‐region='volumeControls']"); this.volumeView
= new Warble.Views.VolumeControl({ el: volumeEl, currentVolume: this.model.get('currentVolume') }); this.volumeView.render(); this.volumeView.on('change:volume', this.changeVolume()) }
render: function(){ this.$el.html(Warble.templates.controls()); volumeEl = this.$("[data-‐region='volumeControls']"); this.volumeView
= new Warble.Views.VolumeControl({ el: volumeEl, currentVolume: this.model.get('currentVolume') }); this.volumeView.render(); this.volumeView.on('change:volume', this.changeVolume()) }
render: function(){ this.$el.html(Warble.templates.controls()); volumeEl = this.$("[data-‐region='volumeControls']"); this.volumeView
= new Warble.Views.VolumeControl({ el: volumeEl, currentVolume: this.model.get('currentVolume') }); this.volumeView.render(); this.volumeView.on('change:volume', this.changeVolume()) }
Render Initialize Render Bind Events
“Subviews” in Ember
{{view Warble.VolumeControlView}} control_view.hbs Warble.JukeboxController = Ember.ObjectController.extend({ volumeChanged: function(e) {}
}); jukebox_controller.coffee
{{view Warble.VolumeControlView}} Warble.JukeboxController = Ember.ObjectController.extend({ volumeChanged: function(e) {} });
{{view Warble.VolumeControlView}} Warble.JukeboxController = Ember.ObjectController.extend({ volumeChanged: function(e) {} });
1. Specify a Subview (2. Customize)
Simplicity is about subtracting the obvious, and adding the meaningful.
” “
In User Interfaces
Adding Contacts & Subscribers
None
“Mentions” in Do, Facebook, etc.
None
Simplify UI by designing for user behavior.
CLARITY No. 3
In User Interfaces
Microsoft Word
None
46 WIDGETS
Pages
None
23 WIDGETS
Reduce.
In Code
Gob Bluth
<span class="avatar-‐wrapper"> <img src="{{avatar.url}}" alt="…" title="…" class="avatar" /> </span>
Gob Bluth
<div class="avatar-‐wrapper"> <img src="{{avatar.h48.url" … class="avatar big" /> </div>
<i class="avatar-‐profile" data-‐image= "<%= current_user.avatar.full"></i> <span class="avatar-‐wrapper"> <img src="{{author.avatar.url}}" … class="avatar" /> <span class="guest-‐indicator"></span> </span> <div class="avatar uploader" data-‐role="uploader"> <img src="{{url}}" alt="…" title="{{../../name}}" class="avatar big" /> <label class="button button-‐upload icon"> … </div>
Don’t repeat yourself.
<div class="avatar-‐wrapper"> <img src="{{avatar.h48.url}}" … class="avatar big" /> </div>
<i class="avatar-‐profile" data-‐image= "<%= current_user.avatar.full"></i> <span class="avatar-‐wrapper"> <img src="{{author.avatar.url}}" … class="avatar" /> <span class="guest-‐indicator"></span> </span> <div class="avatar uploader" data-‐role="uploader"> <img src="{{url}}" alt="…" title="{{../../name}}" class="avatar big" /> <label class="button button-‐upload icon"> … </div>
{{constructAvatar user size=32}}
{{constructAvatar user size=48}} {{constructAvatar user size=80 style="rounded"}} {{constructAvatar user size=32
guest=true}} {{#constructAvatar user size=32 wrapper="uploader"}} <label class="button button-‐upload icon"> {{/constructAvatar}}
Uniform tag construction Consistent image sizes! Documented options Easy-to-Update Forget
forgetting alt, title, etc.
Keep it DRY
Good designers and good developers have a lot in common.
Have a great day. arbales