When the 54th GRAMMYs begin this Sunday evening, millions of people will be glued to their televisions -- and a large number of them will also simultaneously be on their computers and smartphones to catch up with the online-only behind-the-scenes action. This type of web traffic calls for a responsive and robust site to handle it all.
Lullabot recently launched a new design for GRAMMY.com. The new site carries over all the functionality from the previous iteration, while adding all the responsive web design goodness users have come to expect from high-profile sites.
The Recording Academy's Kevin Colligan explains the importance of a responsive design for GRAMMY.com:
This responsive approach isn’t just cool, it’s vitally important because more and more people are surfing the web on smartphones and tablets. Over the past 30 days, about 17% of our visitors were on mobile devices. And we expect that percentage to rise steadily.
The GRAMMYs site provided many challenging scenarios in building a responsive design. The media-heavy nature of GRAMMY.com means that we had to work with not only resizing images, but also restructuring the page to fit appropriate advertising, Facebook comments, inline YouTube videos, and various positions of embedded Ooyala videos. Besides simply responding to the size of the screen, all video content also has to be HTML5 compatible of course, to help mobile devices that don't support Flash, such as iOS devices or the new Chrome for Android browser.
The Social Media and Widgets module have become pretty popular in the months since the modules launched. The feature request queues have been filling up. Mostly with requests to customize widgets or add new ones.
Nuvole is going to add a couple of international projects and some advanced Open Atrium customization services for non-profit organizations to its portfolio in the coming months. And if you are a skilled Drupal Developer you can be involved too!
Our upcoming projects will require a stronger presence in Brussels, the place to be for every international organization in Europe. So, while still keeping our Italian headquarters and office unchanged, we've just expanded our Belgian office. The new office is located in ICAB, a modern business centre in Brussels close to the Flemish university: a place with a vibrant international student community, equipped with a gym, a swimming pool and pubs.
The new Brussels office was officially inaugurated with a reception last week (pictures below) and it will be the place where we meet with international clients and we develop the EU-funded projects Nuvole participates in, like:
Want to be involved? We welcome applications: if you are a skilled Drupal 6 and 7 developer, just see our job post and apply!
I recently had a chance to discuss responsive web design with a Drupal developer at the vanguard of this emerging standard, Jurriaan Roelofs.
Jurriaan, based in Utrecht, Netherlands, is the author of the responsive base theme Arctica and its companion theme extender, Tundra.
Here's Jurriaan on responsive theme design, the challenges facing Drupal and what he thinks the future has in store.
Q: When did you first get into responsive design and decide to use it in a Drupal theme?
I'm not really sure when exactly I learned about responsive design, but it must have been around the time the technique was covered by AListApart. From that time on the technique had a place in my mind but for long I didn't do anything with it.
I think I started playing with media queries in the summer, and then decided I should start implementing it on my premium Drupal themes. That's when I started evaluating the status quo.
I looked at AdaptiveTheme, but decided it did not give me enough flexibility. I looked at Omega, and I just didn't agree with the architecture. I need something that makes my life easier, not more complicated. I think Omega tries to do too much and as a result of this it also put a performance penalty on your site. I recently did some testing and Omega made my test setups ~10% slower while most base themes were only around 5% less performant than Stark. (Stark is the baseline test).
Image: screenshot of Arctica-based theme, Respondr
For these reasons I decided to come up with a new system that meets all my requirements:
I reckoned this project was absolutely necessary for my premium themes business to keep existing in 2012, so I worked full time on it for a span of about 2 months. Then more time was spent testing the framework with some real themes, and facing new responsive problems.
Arctica now automatically takes care of a lot of responsive design problems like how it's cleverly using box-model:border-box to allows images with borders and padding to fit in a responsive grid system. Or making jQuery cycle compatible with a flexible container. It's still Wild West in the responsive design field and there's still a lot of new ground to be covered.
Q: Can you talk a bit about the relationship between Arctica and Tundra? How do they complement each other?
This one is difficult to explain. It's kind of unlike any other base theme. I'll try to define the 2 themes and explain their roles:
Arctica base theme role:
In summary, Arctica operates mostly as a theme engine, it provides infrastructure for themers. It's a lean and fast platform to build on.
Tundra's base theme extender role is to provide integration with 3rd party libraries that are part of the theming layer like jQuery cycle, FlexSlider, Sooperfish Dropdown menus, Google Fonts, etcetera. Tundra not only seamlessly integrates these libraries with the theme, it also provides a GUI to their options and features inside the Arctica configurator (the theme settings form).
In summary, Tundra is a package you can optionally use to extend Arctica with awesome jQuery features and integrating custom typography. Of course you can also hand-code these features in your Arctica sub-theme but it's all about saving time.
Image: screenshot of Arctica-based theme, Touch Pro
So if you just need to build a sub theme that's simple, clean, lean and mean, download Arctica and use Arctica as your base theme. If you want a sub-theme with the jQuery features that Tundra offers, download both Arctica and Tundra and declare Tundra as your base theme. Tundra will automatically load Arctica and your sub theme will get the cumulative power of both projects.
Q: Arctica depends on the Skinr module and like a lot of other contributed modules, Skinr has lagged a bit behind the release of Drupal 7. In fact, it's still an alpha release. How has that impacted work on Arctica?
Fortunately when I started working on Arctica, Skinr was already kind of working. It didn't have a release yet but it seemed to work OK. When I came to the point I had to think about layout management in Arctica I found out that the Fusion team had forked Skinr and included it into their "proprietary" module Fusion Apply. I don't think this was a good move. This means that Skinr users don't directly benefit of the work that's put in Fusion apply and vice versa.
Therefore I started talking to Chris of Gravitek Labs about their plans with the module. He told me the Fusion guys never even talked to him and I think he was also displeased about the fork. Chris assured me that he and Bala would collaborate with me on getting a release out for the Skinr module and they were prepared to help me get some ideas into the module that were necessary for making Skinr media query-aware through integration with the theme settings.
In the end this worked out fine and together we got a release out. By together I mean that I spent a lot of time writing a big patch with the functionality I needed and then their awesome backend developer Bala proposed a different patch that was only like 10 lines of code and did the job better than my 100 lines of code.
Q: Moving away from themes for a bit, what is the biggest issue you see facing the Drupal community over the next year or so?
Probably the next year Drupal will have few worries because it's rise in popularity seems to be unstoppable for now. I think we need to worry about the next 5 years though. With the upgrade from D5 to 6, upgrading was pretty easy. D6 to D7 was messy. I upgraded sooperthemes.com recently and it was a big mess, mostly because the changes in tokens meant I couldn't use Pathauto and Taxonomy exactly the same way as in D6. And some modules aren't updated yet so I lost some functionality.
However, with what we're doing in Drupal 8 the upgrade path will be far more difficult, for themes and modules alike. The community will really be put to the test. Other software projects make backward compatibility a priority but we chose the opposite: sacrifice backward compatibility for agility of the projects core. I'm in favor of this approach, it makes Drupal the powerful application that it is today, but I also see problems.
Modules don't get updated, code isn't portable to the next major Drupal version and updating themes can be a lot of work. Drupal 6 has some awesome distributions, I personally use Open Atrium and Acquia Commons. Neither of these projects can be updated to Drupal 7 now because it's just so much work to port all the code over. I'm worried what will happen to the Drupal 7 distros, modules and themes we build in the next years. when Drupal 8 comes out they will be even harder to port.
Q: What's on your wish list for Drupal 8?
As a themer I have my hopes up for Drupal 8. We're going to make Drupal 8 an HTML5 application. This doesn't just mean we get new tags, it means the whole theming system needs to get analyzed and adjusted to produce a correct HTML5 DOM outline.
This means we have the opportunity to improve all markup and generally clean up the code. It also means we're going to make all Drupal output semantically correct; something that I bet is on the wish list of many front end-minded Drupal developers.
The Mobile initiative looks great as well, admin_menu doesn't really work well on my iPhone. I saw Lewis is working on some mock-ups that look much easier to use, although maybe not quiet as fast as admin_menu.
I'm also excited about Jeff's core initiative that I'm in, although we're kind of lagging behind on schedule.
So apart from that front end stuff I'm also expecting a lot from the configuration management initiative. Configuration management is something we really need . Being able to do 1-step builds in multiple environments is something that big software companies take for granted but we often have to do manual stuff to stage new features or new content. Or write really complicated build scripts, thus defeating the purpose of building a build script (saving time).
A Final Word...I want to thank Jurriaan for taking the time to share his thoughts on responsive theme design and what's happening in the Drupal community. I highly recommend you check out Jurriaan's work on Arctica and if you're looking for a commercial solution, sooperthemes.com is where you can check out some of the great options he has available.
In "Site Building and More," new and experienced Drupal users can learn from the innovative mentored, hands-on training presented by the Buildamodule.com team. Students will be guided through the process of creating a fully functional Drupal web site, and more experienced Drupal users and developers can still attend and learn more advanced material. Here are some benefits of the training:
If you will be attending DrupalCon, this training will be a great way to kickstart the week and let you to get much more out of the sessions and other events you'll be taking part in. The cost is discounted for anyone who registers for the conference, and for $350 you get an entire day of excellent training with highly experienced trainers, plus a free 3-month membership.
Learn more about the DrupalCon trainings and register now - visit our Training program page.
Mixed sessions refers to providing, with respect to a user visiting a site, some content over an insecure (HTTP) connection and other content over a secure (HTTPS) connection. A quick online search reveals the widespread problem of supporting mixed sessions. For example, simply redirecting to a secure connection does not eliminate the possibility of session hijacking. To avoid the issues, some sites have gone to all HTTPS sessions (e.g. github). Others have implemented a mixed environment with varying degrees of success. In the Drupal world, Drupal 7 does a better job of addressing these concerns than earlier versions. If you have a Drupal 6 site that wants to implement mixed sessions, what are your options?
Client situationI have a Drupal 6 client situation involving an online shop that allows you to buy products without having to register for an account. The usage preferences are for:
To complicate matters, the client:
From a technical standpoint, we want to:
Several modules are available for Drupal 6 that make it easy to switch between security modes. These include:
These modules provide various configuration settings to indicate which pages to serve up over HTTP or HTTPS. When a request comes in using HTTPS, Drupal core creates a second session record for the user in the "sessions" table of the database. This second session knows nothing about the first session. For example, if there is "data" associated with the first session, this is unknown to the secure session.
The first two modules attempt to address the problem of session hijacking (by creating another cookie), while the third does not. However, during the switch from insecure to secure mode, none of these modules (in conjunction with Drupal core) preserves the session data. Thus, the visitors to your site can add products to their cart over HTTP sessions, but their cart information is lost when they go to checkout using the new HTTPS session. They are greeted with a message like "There are no products in your shopping cart." For this use case, none of these modules (in conjunction with Drupal core) provides a solution.
Drupal 7 and 8 approachIn Drupal 7, the dual session situation is handled with two session IDs on a single record in the sessions table, one ID each for the insecure and secure sessions. Inherent to this design, the session data is automatically shared between the sessions. The cookie for the secure ID is only transmitted over a secure connection. To further address the problem of session hijacking, the session IDs are regenerated when the visitor switches to secure mode (referred to as a "step up").
However, even the Drupal 7 and 8 implementation has some flaws such as:
These concerns are discussed in these issues:
A Drupal 6 solutionOut of all this, I created the Mixed Session module for Drupal 6 that:
This module:
Redirect rules are available for:
The module also declares two API hooks through which a developer can incorporate more complex redirect rules.
With this module you can easily handle the client situation mentioned at the outset. You can also handle other configurations, such as:
We spent a few hours trying to figure out how to use Color to make our custom Drupal 6 theme configurable. Color rewrites your CSS to include the user-configured colours, and adds the resulting stylesheet link to your header.
The first trick was to get the colour picker to show up on the theme settings page. The documentation wasn’t clear, but the easiest way to get started seems to be to copy the color/ directory from the Garland theme into a subdirectory of your theme, and then customize it from there. You will also need to follow the Drupal 6 or Drupal 7-specific instructions for calling the Colour module when preprocessing pages.
Color searches your style.css (and imported stylesheets or other stylesheets defined by the ‘css’ part of your $info array) for colour definitions. Any colour that exactly matches one of the colours defined in the default scheme is replaced by the colour in the selected scheme, with the caveat that the base colour should not appear in the stylesheet. If the base colour is found in the stylesheet, it will be replaced by an empty string. In your stylesheet, make sure your base colour uses the shortened version (ex: replace #cccccc with #ccc) or use a very similar colour instead (ex: #cbcbcb).
So, the easy way to colourize your theme:
Color will attempt to figure out unspecified colours based on those colours’ relationship with the base colour. This can lead to interesting combinations. If there are colours you do not want Color to change, put them in a section after a comment like this:
/******************************************************************* * Color Module: Don't touch * *******************************************************************/All colours specified after that comment will not be rewritten.
Some gotchas to watch out for:
Read the original or check out the comments on: Drupal 6: Adding color support to your theme (Sacha Chua's blog)
ELMS Alpha 6 was released yesterday and in keeping with our releases I wanted to do a recap of developments with the project and why it's important for the Drupal community at large. Download ELMS btopro drupal.org profile
Following this great article from Howard Tyson @Zivtech, I felt I must demonstrate how easy it would be to build the exact same responsive grid with Sasson.
What we're doing is configuring a responsive layout based on 960 grid system using Sass, that means that instead of applying the grid classes to our markup, we're applying them to our element IDs thus keeping a clean and semantic markup and separating content from style.
Now, enough with the geek talk and let's see how simple that is. Basically all you need to do is to set the desired values in this form:
And if you want to set different break points you may configure them on this tab:
So with this minimal effort we have set a grid based layout which is responsive and will adapt to the device it is viewed on.
As a matter of fact, even this little effort is optional. in case the default values that ship with Sasson suites your needs, all you have to do is download and enable it, done.
So why use a base theme ? because it does all this for you, because you don't want to do this again and again every time you start a project, because it keeps you up-to-date with latest technologies and sometimes it can even teach you a thing or two.
Happy sub-theming :)
Hello Business Leaders!
we plan the Drupal Business Days in Vienna to become a very powerful event that allows you to get your Drupal business further!
On May 3th - 5th we will have three days of business discussions, keynotes, products, startups, pitches, fun and more fun!
Register at: www.drupalbusiness.org - We have several actions for you that give you the perfect possibility to get involved...
If one of these points concerns you - get in touch with us via the contact form or at office { a } drupalbusiness.org !
More Info here: www.drupalbusiness.org
To follow up on our post about the Security Training we're running in Denver, we now introduce you to our second training course - "Making the Switch: For Experienced Developers Moving to Drupal" taught by Jeff Beeman, Joshua Brauer, and Chris Porter.
Check out the (very amateur) video below with Jeff Beeman and Erik Webb. Jeff is leading this years course, and Erik taught this course with Jeff in London & Chicago. They have some fun doing a "fireside" chat and covering the outline of the course. Watch for Jeff's watch... ;)
I know it's late, but here's what happened in January.
The Modules Unraveled Podcast is going strong!Most of my January was consumed with starting a new podcast. Check it out on my website or subscribe in iTunes, and let me know what you think.
So far, I've talked with:
Upcoming episodes will include:
If you are interested in attending a FREE live webinar with Jeff Linwood to learn more (and ask live questions) about building native iPhone and Android apps, sign up for the "Building Mobile Apps With Dupal" webinar notification list. This does not commit you to the event, it just enables you get updates as they come out. If you're not familiar with PhoneGap and how it integrates with Drupal, check out the podcast episode I did with Jeff.
ThinkShout is proud to announce that we are facilitating the first ever Drupal Day for Nonprofit IT Professionals event at this year's Nonprofit Technology Conference (NTC) April 3rd, 2012, at the Hilton Union Square in San Francisco.
The content of this full-day event will be geared toward IT decision-makers who either currently manage, or are considering, the Drupal content management system. With this focus, this event will be applicable to Drupal professional service providers specializing in the nonprofit sector, in-house nonprofit software developers, Drupal power-users, and executive nonprofit staff responsible for managing website and web application procurement and maintenance.
This event will not a training on “How to build a website with Drupal,” nor will it be a Drupal vendor or product spotlight. Rather, this is a hands-on opportunity for Drupal users in the NTEN community to:
If you happened to have attended the incredible Drupal Nonprofit Summit at the 2011 BADCamp, the format and structure of the event will be familiar:
Of course, this event would not be possible without our hosts - the Nonprofit Technology Network. If you are not familiar with NTEN or the NTC, definitely check them out. Having attended the last 2 conferences, I can say with confidence that the NTC will be one of the best national tech gatherings of the year. We're also every excited to have the sponsorship and planning support of individuals such as Johanna Bates and organizational partners including Drupal Association, CivicActions, OpenSourcery, and Jackson River.
If you're interested in helping out with case studies or other planning/facilitation opportunities as part of the Drupal Day for Nonprofits, give us a shout! We're hoping that the event will pull together the leading minds in Drupal development for the nonprofit sector from around the country.
Tags: Drupal Planetnon-profit techOutline:
As you may know, Acquia has been growing quite fast. Since I joined the company in the fall of 2008, we have gone from about 25 employees to around 200 today. It has been a fantastic ride for everyone, and we see no signs of slowing. The tough part of growth for us has been keeping up with the demand for talented Drupalists. From what I understand, Acquia isn't unique in this requirement.
We've now wrapped up the first Drupal Coworking Friday and it was a resounding success. We had an estimated 100 attendees worldwide across three countries and 10 cities. The good news is even more cities want to participate this month!
I'm writing this post as a quick update so the curious know how it went overall but ultimately I wanted to thank all of the attendees, hosts and sponsors. Without these three groups this event (well, the first of many events) would have never happened. A special thank you to the hosts and sponsors that took time out of their lives/busy days (as well as money) to make this a reality for the general Drupal public.
Please join us for our 20th bi-weekly meeting to discuss issues and progress related to the Drupal 8 HTML5 initiative. The meeting will be held in #drupal-html5 in IRC at 4 PM EST.
AgendaDuring the meeting, we will discuss the progress of the current sprint and schedule issues for the next sprint. Please post your proposed discussion topics in the comments if you have any.
SubscribeYou can subscribe to the Google Calendar for this and future meetings via the iCal or XML feeds.
IRC Meeting LogPosted after meeting.
Drupal 8 InitiativesThe first-ever election for two at-large Board Members of the Drupal Association was just completed with the selection of Donna Benjamin (KatteKrab) of Australia and Steve Purkiss (stevepurkiss) of the United Kingdom. The two new board members were elected by members of the Drupal Community and then ratified today by the Drupal Association board. They join the current eight Board of Directors of the non-profit Drupal Association in helping to establish policy, hire and manage an executive director, review and approve the budget and financial reports, and participate in fundraising.
If this is your first DrupalCon - welcome to the party! A great way to get yourself up to speed before the conference is to attend the Absolute Beginners Guide to Drupal training session on Monday March 19th.
The course is presented by Open Source Training and is a full-day course available at a discounted price of $350 if you have already registered for the conference.
This is the must-go-to training if you're brand new to Drupal. Whether you're a designer, a decision maker, a project manager or a website developer- this hands-on introduction to Drupal is an essential first step to DrupalCon.
Read more and register now while seats are still available!