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
Fronteers talk Digiti — "Pre-processing"
Search
houbenkristof
June 22, 2012
Technology
8
550
Fronteers talk Digiti — "Pre-processing"
SASS, COMPASS & LESS
houbenkristof
June 22, 2012
Tweet
Share
More Decks by houbenkristof
See All by houbenkristof
Prototyping for the real world.
houbenkristof
1
70
Extending Sketch App with awesomeness.
houbenkristof
3
240
My inner-design-monkey
houbenkristof
1
110
De knop (The button)
houbenkristof
0
55
Challenge accepted!
houbenkristof
1
240
Fronteers conference 2011 summary
houbenkristof
3
140
Other Decks in Technology
See All in Technology
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
210
Qiita埋め込み用スライド
naoki_0531
0
5.2k
DevFest 2024 Incheon / Songdo - Compose UI 조합 심화
wisemuji
0
140
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
300
型情報を用いたLintでコード品質を向上させる
sansantech
PRO
2
120
[トレノケ雲の会 mod.13] 3回目のre:Inventで気づいたこと -CloudOperationsを添えて-
shintaro_fukatsu
0
110
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
280
pg_bigmをRustで実装する(第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
shinyakato_
0
110
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
660
20241220_S3 tablesの使い方を検証してみた
handy
4
660
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
110
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
140
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
How GitHub (no longer) Works
holman
311
140k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Adopting Sorbet at Scale
ufuk
73
9.1k
Docker and Python
trallard
42
3.1k
Done Done
chrislema
182
16k
How to Ace a Technical Interview
jacobian
276
23k
Transcript
Pre-processing INCEPTION ALL OVER AGAIN!
RIP ARJAN EISING He’s not really dead :)
Hi, I’m Kristof @houbenkristof —
[email protected]
Front-end/design at Mobile Vikings
I’m always up for a Challenge
Run a small firm CALLED TREESHADOW MEDIA
Creative Brewski TOGETHER WITH @TOMCLAUS & @DENNISJANSSEN
LEt’s TALK CSS
"You don’t need a new stylesheet syntax, CSS is simple
and you’re a moron if you can’t do it."
C’est très simple
Not that easy to maintain
Stylesheets evolve
Simplicity creates complexity
Keep things DRY DON’T REPEAT YOURSELF
we should Reference to existing information
"CSS is the weakest link in the web developers toolbox.
The problem goes deeper than CSS’s lack of variables. Unlike the “function” in programming, CSS has no fundamental building block."
It’s all about Abstractions
CSS PRIMITIVES HAVE NO MEANING
That’s our job!
Abstractions ARE GROUPS OF PRIMITIVES
Abstractions are not abstract to us
We give BUILDING BLOCKs meaning SO IT MAKES IT EASIER
FOR US TO UNDERSTAND
Our DESIGNS CHANGE
A kitten dies every time that happens
Find & replace OH PLEASE, DON’T GET ME STARTED!
Client: “We want #000 to be #333 but not the
user information underneath my #bada55 body text, oh while you're at it could you position absolute that element and rotate it a gazillion degrees, … oh, #333 doesn't look that great after all… Change it back!”
You’re screwed
What do we NEED?
The interior decorator!
Decorates with parts
He does not make those parts LAMPS, TABLES, CHAIRS…
PArts for PArts
Oh my god YOU REUSED A BUTTON!
When elements are common REUSE tHEM!
Focus! ON WHAT IS IMPORTANT, YOU MUST!
Hard to upgrade Customized third party stylesheets
Clearly we are in need of some Pre-processing
"In computer science, a preprocessor is a program that processes
its input data to produce output that is used as input to another program.” — Wikipedia
Syntactic CUSTOMIZED SYNTAX, EXTEND THE LANGUAGE, ADD IMPROVEMENTS
ex. SASS & LESS
Keeping things maintainable
SASS BY HAMPTON CATLIN & NATHAN WEIZENBAUM
Written in Ruby
Don’t worry, there are also GUI’s
Watches folders & compiles on save
2007 ORIGINAL SASS SYNTAX
None
Hard to convert existing CSS TO SASS
2010 SASS 3 INTRODUCES SCSS
None
Regular CSS = VALID SCSS
BUT WAIT there’s also COMPASS
It’s chock full of the web’s best reusable patterns.
None
None
Also contains other cool features IMAGE SPRITING, COLOR FUNCTIONS
None
None
You say LESS
It’s all javascript ORIGINALLY WRITTEN IN RUBY BY ALEXIS SELLIER
Regular CSS = VALID LESS
LESS INSPIRED SCSS
VS LESS SASS Thanks to Chris Eppstein - https://gist.github.com/674726
Learning curve YOU HAVE TO KNOW JACK SH*T ABOUT THE
CLI
CODEKIT IS HOT!
CSS3 Helpers SASS HAS COMPASS, LESS DOES NOT
Variables
None
Mixins
Extending
Custom units in SASS MAKING THE LANGUAGE MORE FUTUREPROOF
Looping
DEMO
Thank you!
Resources: http://coding.smashingmagazine.com/2011/09/09/an-introduction-to-less-and- comparison-to-sass/ http://sonspring.com/journal/sass-for-designers http://css-tricks.com/sass-vs-less/ http://chriseppstein.github.com/blog/2009/09/20/why-stylesheet-abstraction- matters/
Questions?