Tsachi Shlidor
Front-End developer @
Maintainer of Sasson, Salsa and a few other projects. @shlidor on twitter
What does that even mean ??
Being a pro Drupal FED, usually means you get to write code.
You want full control on your markup, styles and scripts. and no point-and-click UI will be able to give you such controll.
The big questions are:
How much code do you write ?
You should write as little code as possible, writing code takes time, that means more work - less fun.
How fast do you get there ?
You will have to write some custom code, don't waste too much time on that.
Are you constantly improving ?
Being a pro means following best-practices and always learning new stuff.
How much do you enjoy it ?
You should enjoy what you do, or at least minimize the hassle.
How?
Work faster
Not harder, Just faster.
The key is not doing more work, but achieving your goals faster.
This will leave you time for contributions, for self improvements and for more work, if you must.
Heck, you can even have a life!
Use Sass
or any other CSS pre-processor, or Sass.
Sass, with the SCSS syntax, is just like CSS on steroids, it looks like CSS but has tons of features that may make your work a lot easier and faster.
Quick example: mixins
instead of repeating yourself (DON'T) or putting all your styled containers in one place, you can have a mixin:
“Someone complained that I took 3 days to write 3 lines of code. I told them they could have had it in 1 day but it would have been 20 lines.”
Nicole Sullivan.
Use Compass
Compass can make your life so much easier, and your work so much faster.
Have you ever created a sticky footer ?
or reset paddings and margins from Drupal core's stylesheets ?
with compass you just - // Create a sticky footer
@include sticky-footer(54px)
// Reset padding, margin and border
@include reset-box-model;
Layout and Grid system can substantially shorten the time you spend on your layout, and later on browser compatibility issues.
With systems like Salsa, Susy, Zen Grids and others it becomes very simple to create your layout.
These 3 lines of code will give you a 3 column layout with full control on the position and order of the columns - .e1 { @include grid(2, 8); }
.e2 { @include grid(6 container, 0); }
.e3 { @include grid(2, 6); }
How many lines of CSS (and time) does that worth ?
Don't write vendor prefixes
They take time to write.
They add bloat.
They need maintenance.
You should strive to produce the best results possible.
Use the latest technologies.
Follow latest best practices.
Use the right tools for the job.
Amaze, just for the sake of it.
But where do you find all this top-of-the-line know-how ?
Contribute
Contributing to Drupal core is probably the best way to learn new stuff, mingle with the pros, hear about the latest technologies and see what other people are working on, how they do it and why.
You write a patch - you get a review.
You write a review - you see other's work.
Contribute documentation - you learn from code.
Join the discussion - you learn from others.
There are many ways to contribute, you can start here or with the new Drupal Ladder project.
Advanced
Front end development
a presentation by Tsachi Shlidor (@shlidor)