Form API #states

Drupal's Form API helps developers build complex, extendable user input forms with minimal code. One of its most powerful features, though, isn't very well known: the #states system. Form API #states allow us to create form elements that change state (show, hide, enable, disable, etc.) depending on certain conditions—for example, disabling one field based on the contents of another. For most common Form UI tasks, the #states system eliminates the need to write custom JavaScript. It eliminates inconsistencies by translating simple form element properties into standardized JavaScript code.

DrupalCon 2015: Lullabot Sessions

*/ /*-->*/

This year we have a variety of presentations for you at DrupalCon LA. These all come out of the hard work we're doing all year round on projects such as Tesla, Syfy, SNL, NBC, Bravo (to name a few), and also within the Drupal community.

Robert Douglass and Thomas Bonte: Open Source Bach

This special bonus episode of Hacking Culture coincides with the release of the Open Well-Tempered Clavier, a Kickstarter-funded project to produce a public domain recording and digital score of Bach's Well-Tempered Clavier, plus a braille edition for blind musicians.

Wrapping AngularJS modules in Drupal CTools plugins

A crucial requirement for the MSNBC's recent online TV revamp was a highly interactive user interface that didn't interfere with the site's all-important video player. In our previous work on the main MSNBC site, we had used AngularJS to decouple complex front-end UI behaviors from the Drupal-powered backend. With that experience, using AngularJS for the new requirements was a no-brainer.

DrupalCon Bogotá Recap

Porting Drupal 7 modules to Backdrop

Note: this article assumes some experience working with Drupal modules and doesn't profess to be a general introduction to writing a Drupal or Backdrop module from scratch.

Now that an official release of Backdrop CMS is available, we have the opportunity to examine this fork of Drupal more closely, and evaluate its appropriateness for projects. It’s impossible to evaluate Backdrop’s feasibility without having an understanding of the level of effort involved in porting modules.

A Lullabot’s Guide to Successful Meetings

One of the core skills of our client services team is the ability to communicate clearly, efficiently, and humanely to each other and to our clients. It’s this communication that gets us through gnarly project roadblocks and beyond the purely technical solutions. Unfortunately, this can lead to the dreaded wave of “calls”, “syncs”, “touch-bases”, and “meetings” which eat up our calendar hours.

Drupal Console

In this episode, Amber Matz talks with Jesus Manuel Olivas, one of the maintainers of the Drupal Console project. Drupal Console brings the Symfony Console component to Drupal 8 and provides code generation and module scaffolding commands as well as commands for interacting with a Drupal 8 installation. Extended notes and resources are on the Drupalize.Me blog.

Adjusting to Lullabot's Culture

Last month, I talked about my experience being hired by Lullabot. Now, I'd like to tell you about my first few months as a UX Designer. I am still learning about my coworkers and finding my groove, but can already look back on where I started and see my progress.

Front-End Fundamentals, a Book Written by Bots

One of the coolest things about Lullabots is their desire to teach and share their knowledge. They do this in many formats: podcasts, articles, presentations, and even writing books. Joe Fender and Carwin Young decided there was an absolute need to write a book that brings all aspects of Front-End tools, frameworks, concepts, and procedures into one place — Front-End Fundamentals.

Understanding JavaScript behaviors in Drupal

I can barely remember the first time I added JavaScript to a Drupal page using a custom module. I'm sure looked at the documentation, took the example snippet, tweaked it, tested it, and moved on to something else. It was only later, using a debugger, that I saw how Drupal's "behavior" system worked and realized that my code was not being executed as I expected.

In this article, we'll cover the key facts about Drupal behaviors, then look at a real Drupal project to inspect its behaviors and optimize them.

Drush and Composer

In this week's episode Addison Berry hosts Greg Anderson, one of the Drush maintainers, and Juampy Novillo Requena to discuss Drush. We start off by explaining why Drush exists and some cool things about it. One of the big hangups people have with Drush is installation, so we talk a bit about that, and how it is easier now with Composer.

Getting Hired By Lullabot, a Distributed Company

I’ve been a 'Bot' for about two months now. Looking back on it, it seems to have gone by fast. Like one of those really awesome parties you threw in college. It feels even shorter still, because so far, I’ve spent almost as much time trying to get hired by Lullabot as I have actually working for them. Let me share a little bit about both phases of starting my career with Lullabot, over a series of articles.

Wireframing in Illustrator

Designing as a team can be challenging. This is especially true with larger and more complex projects as well as with larger teams. At Lullabot, our design team has encountered many of these challenges, and as our team continues to grow, I’m sure we’ll encounter many more. If you've ever tried to produce and maintain wireframes with several other people, you know the pains of sharing assets and making sure everyone has the most up-to-date version of what they’re working on. Is everyone using the same icon set or the latest logo? What screen sizes should we wireframe for?

Lullabot's 2014 Year In Review

Wow! What a Year!

As we throw away the empty champagne bottles and start retraining ourselves to write a different year on our checks, it’s always a good time reflect upon the past year. 2014 was Lullabot’s 9th year in business and it was our biggest year ever. We contributed to projects for MSNBC, Pac-12,, Bravo TV, Saturday Night Live, Tesla Motors, NAMM, CNBC, Hotwire, Harvard University, American Booksellers Association, Intel, Comcast, GE, Qualcomm, and Teach For America, amongst others.

Coding in Schools

In this episode, Amber Matz and her guests Eric Schneider and Matthew Tift talk about the successes and challenges on how parents and school officials worked together to get coding into the curriculum in Minnetonka Schools. Eric Schneider is the Assistant Superintendent for Instruction, Minnetonka Public Schools and Matthew Tift is a Senior Developer at Lullabot and a Minnetonka parent.