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
Crafthouse 002 - Designers Can Code
Search
Simon Rand
November 20, 2012
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Crafthouse 002 - Designers Can Code
..and coders can design.
Simon Rand
November 20, 2012
More Decks by Simon Rand
See All by Simon Rand
Ruby Ireland - Titanium
simonrand
2
87
Designing your app
simonrand
4
360
Other Decks in Programming
See All in Programming
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
920
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
400
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.6k
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
140
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
280
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6.9k
20260722_microCMSで考える、AI時代のコンテンツ運用設計
yosh1
0
120
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
250
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
540
Android CLI
fornewid
0
180
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
360
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
450
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
The browser strikes back
jonoalderson
0
1.4k
Typedesign – Prime Four
hannesfritz
42
3.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
160
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
A Soul's Torment
seathinner
6
3.1k
Skip the Path - Find Your Career Trail
mkilby
1
170
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
Transcript
DESIGNERS CAN CODE ...AND CODERS CAN DESIGN @simonrand
DISCLAIMER
BACKGROUND
I STARTED WHEN I WAS 7
[INSERT GRAINY 1990s PICTURE OF ME AT MY COMPUTER]
I GOT INTERNET IN 1992
I MADE WEBSITES (TERRIBLE ONES) Face saved by the terrible
harddrive loss of 2007
I GOT BETTER AT DESIGN I GOT WORSE AT CODE
I WENT TO ART COLLEGE I DIDN’T DO ART
I GOT WORSE AT DESIGN I GOT BETTER AT CODE*
* or my other talk: How Ruby on Rails got me back coding
I WAS OK AT DESIGN AND OK WITH CODE
STARTED IORUM 2006
WE ARE WEB & MOBILE DEVELOPERS* * or whatever else
we want to work on
None
None
None
None
None
CLIENTS INCLUDE Breaking Tunes/FMC, Brown Bag Films, Climote, Irish Film
Board, Matchbook, uSwitch.ie
define([ 'date', 'helpers', 'base/module', 'users/module' ], function(date, helpers, base, user)
{ 'use strict'; var Model = base.Model.extend({ initialize: function() { base.Model.prototype.initialize.call(this); this.set('user', new user.Model()); }, parse: function(response, xhr) { response['event-filters'] = new OptionsCollection(response['event-filters']); response['site-menus'] = new OptionsCollection(response['site-menus']); response['event-filters'].get('event_start_filter').get('options').each(function(option) { var after = Date.parse(option.attributes.criteria.after); var afterIsToday = after.toDateString() == (new Date()).toDateString(); option.attributes.attributes.title = afterIsToday ? 'Today': after.toLocaleDateString(); option.attributes.text = afterIsToday ? 'Today': after.toLocaleDateString(); option.attributes.criteria.after = after.getTime() / 1000; option.attributes.criteria.before = Date.parse(option.attributes.criteria.before).getTime() / 1000; }); return response; }, url: function() { return helpers.urlFor('/application/', { mock: true }); } }); var OptionsCollection = base.Collection.extend({ model: base.Model.extend({ relations: [{ key: 'options', relatedModel: base.Model.extend({}), type: Backbone.HasMany }] }) }); return Model; }); —
None
YOU SHOULD TOO (ENOUGH ABOUT ME)
NOT JUST FOR OPPORTUNITIES MONEY GIRLS/BOYS
TO BE BETTER AT WHAT YOU ALREADY DO
MAKING THINGS FOR THE WEB
THE OTHER SIDE DESIGNERS & CODE
WHAT DO YOU WANT TO DO? FETCH DATA FROM A
DB MAKE SOMETHING MOVE OUTPUT SOMETHING BUILD YOUR DESIGN MAKE SOMETHING FASTER MANIPULATE USER INPUT CREATE SOMETHING YOURSELF
YOU WANT TO BUILD YOUR IDEAS
BUT HOW?
TO UNDERSTAND A CODER YOU MUST BECOME A CODER
LOOK AT YOURSELF, YOU KNOW YOU’RE NOT A CODER
JUST LIKE YOU KNOW YOU’RE NOT A DESIGNER* * some
of you actually are
CODERS HAVE SKILLS* * add nun chuck skills and you’re
set
CODERS HAVE FOCUS
CODERS HAVE CONFIDENCE
CONFIDENCE TO SAY YES
CONFIDENCE TO SAY NO
YOU SHOULD BE JEALOUS BUT SO ARE THEY* * possibly
because they want rid of you, but can’t do without you
BEING ABLE TO UNDERSTAND THEM WILL MAKE THEM LIKE YOU*
* not guaranteed, and probably only a little bit
WHERE DO YOU START?
LANGUAGE WILL DEFINE YOU
LANGUAGE IS NOT EVERYTHING
TOOLS ARE YOUR FRIENDS* * try saying that about Creative
Suite
TOOLS TERMINAL VERSION CONTROL EDITOR
THE TERMINAL OR “YES, YOU TYPE THE COMMANDS IN”
None
THE TERMINAL CONTROL AUTOMATE INSTALL INVESTIGATE WHATEVER YOU LIKE
THE TERMINAL IS BRILLIANT, DON’T BE AFRAID
VERSION CONTROL “OH CRAP”
VERSION CONTROL GIT* * not Github
GIT LET’S YOU COMMIT BRANCH MERGE PULL TRACK COLLABORATE
None
DESIGNERS SHOULD USE GIT DEATH TO crap_rev2.psd
KNOWING GIT OPENS A WORLD OF POSSIBILITIES
None
EDITORS CUSTOMISABLE AUTOMATABLE .. ARE AN OBSESSION
EDITORS TEXTMATE SUBLIME TEXT
None
None
REAL EDITORS* VIM EMACS * I strongly disagree
None
None
“USE WHAT YOU LIKE”
LANGUAGE
TOO MUCH TO COVER
YOU MIGHT ALREADY KNOW SOMETHING USEFUL
JAVASCRIPT (NOT JQUERY!)
JAVASCRIPT IS POSSIBLY THE FUTURE
JAVASCRIPT MOBILE (TITANIUM) NODE.JS
None
None
None
THE LANGUAGE ISN’T JUST WHAT YOU TYPE
PROGRAMMER HAPPINESS RUBY! (PYTHON, CLOJURE, etc.)
I HAVEN’T MENTIONED PHP (I HAVE TO BE CAREFUL)
PHP IS PROVEN THERE’S A LANGUAGE FOR EVERYONE
“USE WHAT YOU LIKE”
BEING A CODER IS MORE THAN WRITING CODE
THE OTHER SIDE CODERS & DESIGN
NOT A DIRECT OPPOSITE
CODERS JUST WANT TO MAKE THINGS LOOK BETTER
THEY HAVE THE CONFIDENCE TO BE HAPPY WITH WHAT THEY
DO
WHERE WOULD THEY START? GRIDS TYPOGRAPHY COLOUR
WE CAN DEAL WITH THAT ANOTHER TIME
SO.. AN IDEA
2-3 DAY WORKSHOP WON’T TEACH YOU TO CODE
WILL HELP YOU TO BECOME A CODER
THOUGHTS?
@simonrand