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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
houbenkristof
June 22, 2012
Technology
640
7
Share
Fronteers talk Digiti — "Pre-processing"
SASS, COMPASS & LESS
houbenkristof
June 22, 2012
More Decks by houbenkristof
See All by houbenkristof
Prototyping for the real world.
houbenkristof
1
90
Extending Sketch App with awesomeness.
houbenkristof
2
270
My inner-design-monkey
houbenkristof
1
140
De knop (The button)
houbenkristof
0
71
Challenge accepted!
houbenkristof
1
250
Fronteers conference 2011 summary
houbenkristof
3
160
Other Decks in Technology
See All in Technology
なぜ、IAMロールのプリンシパルに*による部分マッチングが使えないのか? / 20260518-ssmjp-iam-role-principal
opelab
1
130
Redmine次期バージョン7.0の注目新機能解説 — UI/UX強化と連携強化を中心に
vividtone
1
170
React Compiler導入から21ヶ月、いま始めるならこうやる
astatsuya
2
250
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.7k
分断された OT と IT を繋ぐ架け橋 -Kubernetes が切り拓く 産業用組み込み製品の現在地 -
yudaiono
1
120
クラウドからエッジまで ~ 1,700台を支える監視設計~
optfit
0
110
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
660
20260515 ID管理は会社を守る大切な砦!〜🔰情シス向け〜
oidfj
0
650
O'Reilly Infrastructure & Ops Superstream: Platform Engineering for Developers, Architects & the Rest of Us
syntasso
0
260
最新技術を"今は選ばない"という技術選定
leveragestech
PRO
0
190
Purview Endpoint DLP 動かしてみた
kozakigh
0
440
既存プロダクトQAから新規プロダクトQAへ
ryotakahashi
0
160
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
220
Are puppies a ranking factor?
jonoalderson
1
3.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Claude Code のすすめ
schroneko
67
220k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
200
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
120
Raft: Consensus for Rubyists
vanstee
141
7.4k
Everyday Curiosity
cassininazir
0
210
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?