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 of Interfaces
Search
Christian Schlensker
March 20, 2013
Technology
1
110
Design of Interfaces
Christian Schlensker
March 20, 2013
Tweet
Share
More Decks by Christian Schlensker
See All by Christian Schlensker
React Native and VR
wordofchristian
0
170
Other Decks in Technology
See All in Technology
国井さんにPurview の話を聞く会
sophiakunii
1
350
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
160
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
130
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
310
First-Principles-of-Scrum
hiranabe
3
1.6k
20251225_たのしい出張報告&IgniteRecap!
ponponmikankan
0
110
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
12k
2025年 山梨の技術コミュニティを振り返る
yuukis
0
150
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
15
4.9k
Master Dataグループ紹介資料
sansan33
PRO
1
4.2k
Digitization部 紹介資料
sansan33
PRO
1
6.4k
Redshift認可、アップデートでどう変わった?
handy
1
130
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
670
Testing 201, or: Great Expectations
jmmastey
46
7.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Design in an AI World
tapps
0
110
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
97
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
0
1k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Transcript
Design of Interfaces
http://xkcd.com/1168/ TAR It seams there’s a XKCD any example you
need to make. > There’s a command line program that I use much more often than TAR and that’s GIT
Git
> git branch make_it_suck_less A lot of the appeal of
git, really it’s showcase feature was this concept of easy branching. It’s really easy to do.
> git branch make_it_suck_less > git branch make_it_suck_less --delete A
lot of the appeal of git, really it’s showcase feature was this concept of easy branching. It’s really easy to do.
> git push origin :make_it_suck_less What does this command do?
If you didn’t already know... could you tell just by looking at it?
When I first saw this command I had to squint
really hard to try and figure out why it worked this way.
> git push origin :make_it_suck_less What does this command do?
If you didn’t already know... could you tell just by looking at it?
WHAT ARE YOU PUSHING?
> git push origin :lemming
push
> git push origin :make_it_suck_less WHY THE COLON
Torvalds!!!! When I first saw this command I had to
squint really hard to try and figure out why it worked this way.
> git push origin local_branch:make_it_suck_less It makes more sense after
you’ve seen this. This is me pushing my local branch to update the remote branch.
> git push origin <null>:make_it_suck_less
> git push origin --delete make_it_suck_less Why is this better?
Mental Models vs Implementation Models
Mental Model Implementation Model Hide the implementation
Mental Model Implementation Model How we think something works Hide
the implementation
Mental Model Implementation Model How we think something works How
it actually works Hide the implementation
Mental Model Implementation Model How we think something works How
it actually works > git push origin --delete make_it_suck_less Hide the implementation
Mental Model Implementation Model > git push origin <null>:make_it_suck_less How
we think something works How it actually works > git push origin --delete make_it_suck_less Hide the implementation
None
Delete
OO Design and BDD
Information hiding is the principle that users of a software
component (such as a class) need to know only the essential details of how to initialize and access the component and do not need to know the know the details of the implementation. — Timothy Budd, 1991
NOT THE CODE YOU THINK YOU NEED WRITE THE CODE
YOU WISH YOU HAD
None
None
Closing Thoughts