Oh The Huge Manatee

Drupal, Sysadminning, and Tech.

Bundled TV Pricing Will Come Back From the Dead

Everyone is excited these days about the death of ESPN, particularly as evidence of the death of “bundle priced” Cable TV. Consumers are supposed to be excited that soon they will only have to pay for the content they want. Don’t get too excited yet.

Let’s remember the basic purpose of bundled cable TV: for content producers, cable company bundles provide an easy, single outlet for their content. It’s “somebody else” who will get the content to their viewers, sell advertising, and collect payment. For consumers, bundles provide a packaged set of channels that’s easier to manage (and price) than a bunch of individual contracts.

Apart from whatever level of collusion exists in the TV world, the prices for bundles have reached some sort of equilibrium: basic cable TV with Internet costs a…

How the World Sees Drupal - the Dutch PHP Conference 2015

One of the most exciting parts about the switch to Drupal 8 is the rapprochement of the Drupal community with the rest of PHP. This weekend I spoke at the Dutch PHP Conference in Amsterdam, where I got to be part of the vanguard of Drupalists reconnecting with the larger PHP world. The experience had a big impact on my perspective of the future of Drupal as a platform and as a community.

For many years Drupal was quite separate from the rest of the PHP universe. I would hear comments like: “I don’t know PHP. I’m a Drupal developer.” On the other side, our platform’s focus on accessibility for new and learning developers meant that many mainstream PHP coders considered Drupal a repository for poor code…

Troubleshooting Android Error -505 From Google Play

I recently got a new Android phone, and very quickly had trouble installing some of my favorite apps. Google’s Play Store downloads the app successfully, then presents me with “Unknown Error -505”.

"Error 505"

This error message means precisely nothing. It means “something went wrong during installation, and we’re not telling you what.” This drives me crazy. This blog post is about how to get more information out of that error message, and how to fix the problem.

Your device is not going to give you more information on its own. Instead, you need to install ADB, the “Android Debug Bridge” which lets you type commands directly to your Android device over a USB connection. It’s not hard to install, so go and set that up now.

Next, you will have to make sure your Android device permits you to use ADB. On the phone, go to Settings > About Phone, and scroll down to where you see “Build Number” listed. Tap on “Build Number” until you see a popup telling you that you are now a “developer”. Then go back to Settings, and tap on the new “Developer Opt…

How to Build a New Source for Drupal Migrate 8

This week I wanted to accomplish a task in Drupal 8 that would be simple in Drupal 7: Import several CSV files, each one related to the others by taxonomy terms. Most importantly, I wanted to do it with Migrate module.

Migrate in Drupal 7 is a fantastic piece of code. It is not designed to be used from the GUI, rather, it provides a framework of “source”, “destination”, and “migration” classes so that even the most convolut…

How and Why to Update the Modem/baseband Firmware on a Samsung Android Phone

If you have a Samsung Android phone, and you use Samsung’s own version of Android, this article is not for you. When Samsung sends you updates to Android, they also will include any relevant updates to the modem/baseband firmware. So stop reading and go have a cup of tea or something, your job is done.

But for everyone who uses a custom ROM like Cyanogenmod, ParanoidAndroid, or AOKP, sit up and pay attention: you’re missing some key updates for your phone, and …

Drupalgeddon: Best Practices Aren’t Good Enough Anymore

Last week’s Public Service Announcement from the Drupal security team caused a lot of attention. And rightfully so – it told us that the vast majority of Drupal 7 sites around the world are considered compromised. A mere 7 hours after critical security patch SA-CORE-2014-005 was released, robots were spotted in the wild, bulk-hacking Drupal 7 sites with this vulnerability. This is something that’s never happened to the Drupal community before, and it is extremely serious. In some way it’s our own version of Heartbleed and other highly-publicized critical vulnerabilities in open source software.

This issue should not reflect badly on the Drupal community, or the Drupal product at all. Vulnerabilities happen to every software project – particularly the large and compl…

Mobile Apps Are a Temporary Phase, All Hail the Accessible Web

Dries made an interesting post about the new HTML5 standard the other day. OK, the post itself is more of an announcement, but the meat (as far as I’m concerned) is near the end, where he says that “The trend in development seems to be towards native mobile applications rather than mobile websites.” He links to the excellent Mobile is Eating the World presentation by Benedict Evans as evidence.

Really? Because while I agree with Evans that mobile in general is the future, I don’t see it as evidence that mobile apps, specifically, are the future. In fact I believe the contrary: mobile apps are just a phase. Mobile web is going to eat the world, and it’s because of the capacity for a single source to provide machine-readable, machine-reformattable content.

What do I mean by machine-readable and machine-reformattable? Technologists will understand what I mean when I say “responsive”, and they may even understand that responsive and accessible go hand in hand. I am avoiding those terms because they are more specific …

Bug: Multilingual Auto Label Will Break Your Entity Static Cache

This is an important one to note: If you use the popular Automatic Entity Label module on a multilingual site, it will break your paths because of an interaction with Drupal’s built in object cache. I looked at this briefly a few months ago and ran out of time, but my (badass) colleague bburg figured it out this week.

For now, the only solution is a slow one – we clear static entity caches when we generate multilingual titles. That’s not an awesome fix, but it’s hard to think of a better one without any of the D8 cache tagging functionality. Massive kudos to bburg for figuring this out!

And for those of you keeping score, this is a good example of how to file a bug report for a really complex issue in a really popular module… and follow up until you resolve it.

D8 Core Sprint in DC

A quick note to all the Drupalists in the DC general area – Forum One is trying to put together a D8 core sprint in their DC office space. They’re coordinating with the DC Meetup group to try and spread the word to as many community members as possible!

If you haven’t been to a code sprint before, it’s basically a coding party. Developers get together and help each other contribute better and faster by reviewing code on the spot, mentoring each other, and generally working in small ad-hoc groups. It’s a lot of fun, and gives a big boost to development of the next generation of Drupal.

Forum One will provide the locale in downtown DC complete with…