Here we go! Portland's Drupalcon is here. Here is a quick update about some of the exciting things that Metal Toad is bringing to the event. Stop by our booth (#207) and come party with us Tuesday and Wednesday. Come watch us record the podcast live and even step up to the mic if you dare. T-shirts, wine, stickers, foosball, Drupal!?!?! Whoa.
I want to thank the good folks at ThinkShout and ZivTech for organizing the Drupal DoGooders Happy Hour to benefit my family and me, as well as giving people attending DrupalCon an opportunity to hang out and have some drinks. Even though I will not be in Portland this week, I plan to be present in spirit, beginning with a virtual appearance there. Join the crew this evening (May 20) at about 4:00 PDT to raise a glass in toast of doing Drupal Good and for a quick Q & A with me beginning about 4:30.
What a long strange trip it's been.
From Sunnyvale in 2007 when I conceived the Embedded Media Field module, to Boston DrupalCon in 2008, where I presented my first State of the Media session, to DC in 2009 where we launched the Media sprint supporting the Media suite of modules, to Chicago 2011 and Denver 2012.
These are the fun times that I recall fondly, doing good with my fellow cohorts. And by doing good, I mean really doing good things. Because where else in the business world can you spontaneously form a group of competitors, build something awesome, and give it freely to the rest of the world?
I'm really going to miss that this year. I mean that even though I continue to contribute to Drupal whatever and whenever I can, I am going to miss seeing you guys this year. There is a magic that happens when you get three or more Drupalers together in the same room. But circumstance has had its way with me these past two years and until we have a DrupalCon "Three Mile Island", I will have to be content with a virtual appearance.
So, join me on Monday evening to see my Stephen Hawking impersonation.
Join Kyle Hofmeyer, Joe Shindelar, Blake Hall, and Greg Dunlap to talk about the somewhat mysterious concept of entities, which was introduced to Drupal in Drupal 7. We explain what entities are, why we have them, and what the future may hold for them in Drupal 8.
Figuring out Entities for Drupal 7 — and 8
Lullabot has always had a big presence at DrupalCon and next week's event in Portland, OR is no exception. We're teaching 4 classes and presenting 11 sessions. We've got 2 booths in the expo hall. We're having a big party on Tuesday night. And nearly the entire Lullabot team will be in Portland. For the latest updates, please follow us on Twitter and like us on Facebook.
Here's the breakdown of where we'll be and when:
In Drupal core, we use issue thresholds to manage technical debt. Both critical (release-blocking) and major (non-release-blocking, high-impact issues) are considered. When we have more open issues than our thresholds, we do not commit new features.
Currently, we have 27 critical bugs, 41 critical tasks, 155 major bugs, and 149 major tasks. This is more than twice our current thresholds for critical issues, and about 50% more than our thresholds for major issues. We need your help to resolve these issues so that we can resume adding new features to Drupal 8. That would be a very exciting place to get to!
There are many ways to help, including not only programming but also updating these issues' summaries, testing the patches, and making sure the patches still apply. I encourage everyone to collaborate on major and critcal issues, and to consider making them a focus at the DrupalCon Portland sprints.
Mentorship consulting is one of the many services that Lullabot provides, and is something we’re known for in the Drupal community. When we work with potential clients to describe what we can do for them, it can sometimes be very difficult to explain how a consulting relationship works. This is especially true if they have never participated in consulting engagements with us or another agency.
DrupalCon Portland is just around the corner, and we're excited to see everyone there. The entire Lullabot team will be in Portland, and we hope you'll stop by our booth (#311) and get to know us. You can also pop around the corner to booth #408 to hang out with the Drupalize.Me folks. We're gearing up for a great sale on annual accounts during the 'con, which you can take advantage of during DrupalCon, even if you're not there.
Jeff Eaton and Jason Scott discuss digital preservation, the historical importance of the web, and the utility of large hard drives.
The web is a part of our culture now, and perserving its history has value
The biggest changes (at least from my end, as usual) since the last update are allowing plugins to have their services injected. It's perhaps not the most beautiful solution ever but it works. Again for plugins, one directory depth have been removed, it's still ridiculous but less so and the PHP-FIG (nudged by our quicksketch, thanks much) is finally moving ahead with creating a new autoloader standard which will make the directory structure a bit saner.
Now, on to the future: I had a phone call with Dries and a few others discussing the future of hooks. While hooks are familiar to everyone who ever coded for Drupal, they are not object oriented (not unit testable, etc) and so they may (or may not) be off-putting to the new kind of contributors we want to attract. There are many roads we could take: for example, we can convert hooks wholesale (scripted) to a Drupal-specific OOP syntax based on magic naming, attempt the same with EventSubscriber. We feel this should wait until Drupal 9. However, we will add a HookEvent which allows Eventsubscriber classes to react to hooks. Probably we will need to make a more efficient version of the container aware event subscriber, but that's a minor detail. Also, we will attempt, pending it actually passes tests and other gates, most importantly the performance gate to convert all entity hooks into events in core while keeping entity hooks around. This is somewhat both a forward and a backwards compatible solution, reflecting where Drupal 8 stands: on the road from a mostly convention based PHP 4 procedural codebase to a mostly configuration based PHP 5 OOP codebase.
I have spent most of my core time on this entity event patch, it's a big one. It's a very very big one. It not just converts to events it also separates logic out from the storage controllers so that the storage controllers actually deal with storage only. For example, separate the comment thread calculation logic from retrieving the max thread values. Or the user password hashing needs to happen no matter how the user entity actually gets stored. I am getting some help in this, but by far not enough -- so if you are interested in this, please contact me to help, there's not a lot of time left.
Denise Jacobs on creativity, your inner critic and more
DrupalCon Portland will be happening in a few weeks and, as usual, Lullabot will be out in force. Our entire team will be there and we'll be spending our days training (4 classes) and presenting (8 sessions). We'll also be hanging out at both the Lullabot and Drupalize.Me booths in the exhibit hall. As usual, we've got a lot going on.
We have mentioned before that both Pressflow 6.x and Drupal 7.x (but not core Drupal 6.x), disable page caching when a session is created for an anonymous user.
An extreme case of this happened recently, because of a perfect storm.
The client sends a newsletter to site users, be they who have accounts on the site, or others who just entered their email to get the newsletter.
You can either get on the Drupal 8 bus now, or get run over by it later.
It's true. Drupal 8 is coming, and it will be big. Not just lines of code (that too), but big in the sense that Drupal 8 changes more of Drupal than any major release in the last 10 years. The adoption of so many 3rd party components (from Symfony and otherwise) is only part of that picture. That offers challenges for many, but also enormous opportunity. Drupal 8 will allow Drupal to expand into new types of application and new markets, which is a great thing for those who make their living off of Drupal. But where do you get started with learning about Drupal 8?
At DrupalCon Portland, that's where!
There are many sessions slated for Portland at both DrupalCon and at Symfony Live that deal with Drupal 8, either directly or indirectly. Below is my recommended hitlist for Portland for those wanting to get the lowdown on Drupal 8.
What, you're not already signed up? There's still time! Go register for either DrupalCon or Symfony Live, and be sure to get a Combo Ticket so that you are able to attend both conferences as well as Web Visions! (The combo ticket is the same price either way.)
Recently I was faced with the task of passing off multiple page arguments to a view pane, which seems simple enough after you have done it once, but the first time around I found myself wading through settings for far too long. The scenario: we were working with Page Manager to create pages and within a page we had a View Pane that needed to be filtered based on the context filters being passed to the page as arguments in the URL.
In this episode, we have Greg Dunlap (heyrocker) join Addi to talk about being a Drupal 8 initiative lead, not from the perspective of the software, but as someone who needs to pay rent. We talk about Greg's efforts to raise funding for his work as the Drupal 8 Configuration Management Initiative (CMI) lead, why he needed to go knocking on doors, and what that means going forward. What is money's role in a sustainable future for Drupal core development?
Sustainable Drupal core development requires money
Keen Lullabot fans may have noticed that we launched a redesign of Lullabot.com a few weeks ago. It's not just a redesign, but also a re-platforming to Drupal 7, a reworking of the site structure and functionality, and to some extent, a rebranding of Lullabot.
The spring conference season is upon us! We've enjoyed meeting more of you in person at SXSW and Converge SE — soon, it will be time for DrupalCon. Before we make the trek out to Portland, though, Jeff Eaton will be making a stop at a local CMS conference: CMSExpo. Now in its 7th year, CMSExpo is one of Jeff's favorite events in the Chicago area.
This week’s Webperf Wednesday is short and sweet, just like your page loads when you install this new module that enhances any Drupal theme. Magic is a set of frontend performance and development workflow tools for themers. Previously many themes had their own advanced settings — many of which did the same things as other themes, but they all did it a little differently — no more with Magic.
Built by Web Chef Ian Carrico and Sam Richard (of Aurora) with contributions from Sebastian Siemssen (of Omega), Magic was built by the desire to work together to make all themes better, instead of siloing improvements within specific themes.
That last one is super important, as it makes Drupal themes a little more DRY. With Magic, you can take your settings from one theme to another — or to another site completely — because they’re fully exportable. Have two different projects, and want similar asset output despite one being Omega and one being Zen? No problem, just export!
Note: the full import process has yet to land, but it’s coming very soon.
If you have an awesome trick that you always rely on during theming, open an issue and propose it to Magic. They’d love to hear from you.
Give it a shot today! Go to drupal.org/project/magic
Drupal offers a few standard ways of displaying all content: the shortened teaser view is often used on listing pages, and the full default view is always used when visitors hit a node's canonical URL. Customizing the output of these view modes is easy, and modules that display content usually let site builders choose which view mode should be used when outputing them. Unfortunately, Drupal core can't help if you need more than the basics -- say, a 'summary' view mode for nodes, or and 'author info' view mode user accounts.
If this is what stalking feels like, I pity every women who went through this and much worse -- and in my case, it was fairly mild -- but still very disturbing. So, someone posts an article to the Drupal Planet, encouraging new(er) contributors to not be afraid to approach better known Drupal developers at DrupalCon. That's good... but as usual, the intent and the words used didn't quite match up and what do I know, I am coding quietly in the Drupal room at Linuxfest Northwest when someone walks in wearing a T-shirt with the words "Where is chx so I can shake his hand?" I literally crawled under the table. Do not do this. Do not ever, ever do this. It's cruel, it's disturbing -- it's stalking. To clarify: I am more than OK with someone approaching me at any conference. Wearing a T-shirt like this is not OK, however.
Ps. Later when said person tried to continue this with similar actions and I made quite clear I do not think this is a good joke and I feel uncomfortable, no apology followed nor did the cruel jokes stop.