Zen and the art of innovation

Commodity sinks, innovations rises. An old rule. That is the reason why the drop has to keep on moving, have shorter release cycles and adopt new technologies faster to make sure we don't become what we replaced; old outdated systems that are slow to adapt and fast to extinct.

There are two sides to this, we have to grab new technologies faster and dump older technologies sooner. And so be sure that adopting new technologies faster doesn't create a legacy we have to release faster. Or at least, this is my opinion.

"Nobody" in the world logs in with openID anymore. Many appliaction to application in backend still might be using it, but nobody uses it to authenticate anymore. The last bastion Janrain just announced that it will close the doors. Drupal will drop OpenID form core as well and might have done this as well a long time ago. So when Drupal 8 will see the light in janury 2014, and we still would have release cycles over a 1000 days, the maintainers will still be dealing with an OpenID implementation and supporting it in Drupal core 7 up to the time D9 ships, somewhere around Q4 2017. Extrapolating our current release cycles most likely later, much later.


This is not to criticise anyone,I think it was a wise step to include OpenID back in the Drupal 6 days and it is a wise step to remove it from D8. But the time between making these releases and hence these decisions should be shorter. And especially the time that it impacts the code to maintain.

You want to know another example of an innovation that was once great and is now holding us back? gzipping pages. In core ever since 4.5 and was a great feature (though I had some problems back then :-)) But it is wrong. Holding us back in duplicate functionality that has to be maintained and is better being served in another OSI layer.

Back when webservers didn't compress pages and elements by default, it made perfect sense to do so from Drupal. A great way to save bandwidth and deliver the pages faster to the user. But now all webservers compress pages (and other elements like a big word document as an attachments served form /files/ !) by default, it is code that has to go. The innovation was great, but it sunk down to lower in the stack and became a commodity in all major webservers. And thta is the risk with all innovations and if one keeps holding to innovations that are already commodity, one ends up over there as well.

This holds true for many elements of frontend performance. Right now is seems like a good thing to combine multiple CSS or JS files in to one file. But once SPDY becomes mainstream this can better be done in HTTP protocol, not in the CMS.

And traditional frontend performance states that we have to use sprites in the template.

While if we add one module and one line of code this is all done at the webserver level with image sprites.

And we should use selective DATA URI's in our template. Most frontend devs will puke; binary data in a template? We are some old ugly old tchnology.
Again, with one command, the webserver layer will migrate these smaller images from flat files to inline DATA URI's.

Take a look at this impressive list of options where modpagespeed -a webserver module- can help you with:

  • Optimize Caching: Canonicalize JavaScript Libraries, Extend Cache, Extend Cache PDFs, Local Storage Cache, Outline CSS, Outline JavaScript
  • Minimize Round Trip Times: Combine CSS, Flatten CSS @imports, Inline CSS, Combine JavaScript, Inline JavaScript, Move CSS Above Scripts, Configuration file directive to shard domains, Sprite Image, Pre-Resolve DNS
  • Minimize Request Overhead: Rewrite Domains, Configuration file directive to map domains
  • Minimize Payload Size: Collapse Whitespace, Combine Heads, Elide Attributes, Minify JavaScript, Optimize Images, Prioritize Critical CSS, Deduplicate Inlined Images, Remove Comments, Remove Quotes, Rewrite CSS, Rewrite Style Attributes, Trim URLs
  • Optimize Browser Rendering: Convert Meta Tags, Defer Javascript, Inline Preview Images, Lazily Load Images, Move CSS to Head, Optimize Images, Convert JPEG to Progressive, Rewrite Style Attributes
  • Other: Add Head, Add Instrumentation, Inline @import to Link, Make Google Analytics Async, Insert Google Analytics Snippet, Pedantic, Run Experiment

Now for some of these actions there might be a Drupal module (lazyloading), for some functions one has to write good CSS/HTML/JS (CSS above scripts), some need good content editors or backend processes (de-duplicate inline images, progressive jpeg's) and some are just not doable yet in the frontend in an easy way (DATA-URI's).

So as a frontend dev (ops), do yourself a favour and do use the page speed module out for Apache and nginx AND keep writing good templates. And as a community Drupal community member, make sure that we keep innovating on the top , and let code free at the end where it is better being served outside of our hands.

(btw Mike Ryan, more retro future at this pinterest board :-)

The analog loophole, using a lego mindstorm and Mac to bypass the DRM on a Kindle

I love the idea of using the analog loophole to bypass copyprotection / DRM. For example filming in the movie in the cinema (usually very bad quality) or...

From allthingsd:

Using Lego’s Mindstorms — a basic robotics kit popular with hobbyists — plus a Kindle and a Mac, he has assembled a way to photograph what’s on the screen, and then submit it to a cloud-based text-recognition service.

To bad I dont have a kindle. Nor really the need to copy a work like this. But still, once the WorlWide cyber police controls us all; we can stull use the analog loophole to get back at them :-)

DIY kindle scanner from peter purgathofer on Vimeo.

Bert Boerland is a volunteer for the DrupalCon

I'm a volunteer at DrupalCon Prague

And I have been doing so since lead organising DrupalCon Amsterdam, co-lead DrupalCon Barcelona and helping out as volunteer in Copenhagen, London, Munich, Syndey, Portland and now Prague as co-global chair for the business sessions. And I am not done yet :-)

Alfred Eisenstaedt, Instagram hate

Alfred Eisenstaedt. One of the best known photographers of the world from the last century. Best know for hist freedom "V J Daykiss photo on timesquare.

And known for his great photos of the beautiful Monroe:
alfred eisenstaedt photos of  monroe

He was lucky enough to meet Einstein as well and made the most well known photo of the genius.
Alfred Eisenstaedt phots of Einstein

He made photos of ms Loren in lingerie, Churchill making the "V"ictory sign and many many great photos. President Kennedy, Dali are just a few of the well know persons. But his work on anonymous people and everyday objects is even better. Be sure to scroll on this page containing most of his work.

Many photos from Alfred Eisenstaedt

By far his best work however is his two photos of Goebbels, the German (pre) WorldWar 2 propaganda minister. Goebbels was known to play the media, be smiling in the papers and always laugh when in public. He knew how to play the camera in an age where most politicians didnt pay attention to the media, most americans didnt even knew their president during that period was in a wheelchair.

Alfred Eisenstaedt was born in Poland within a Jewish family and unfortunately witnessed the rise of the Nazi Party led by Adolf Hitler. He tried to gain ground profesionalment in Berlin, but inevitably had to emigrate to the United States because of his Jewish background.

Alfred Eisenstaedt was perhaps the only man who could portray the face of evil, hypocrisy and hatred that can hold a human. There are two photos, without much time lapse between the one and the other.

It happened in Geneva. He had the opportunity to portray Joseph Goebbels, Hitler's Minister of Propaganda. In the first picture there was no major problem because the atmosphere was relaxed and Goebbels was showing off his smile.

Goebbels

For the next picture, the face of Joseph Goebbels changes radically, it decomposes. We had been warned that one of the accredited photographers (Alfred Eisenstaedt), was Jewish, places him, and gives him a demonic look.

Goebbels

In the 1985 book, Eisenstaedt on Eisenstaedt: A Self-Portrait, the then-87-year-old photographer discussed how the Goebbels picture came about:

In 1933, I traveled to Lausanne and Geneva for the fifteenth session of the League of Nations. There, sitting in the hotel garden, was Dr. Joseph Goebbels, Hitler’s minister of propaganda. He smiles, but not at me. He was looking at someone to my left…. Suddenly he spotted me and I snapped him. His expression changed. Here are the eyes of hate. Was I an enemy? Behind him is his private secretary, Walter Naumann, with the goatee, and Hitler’s interpreter, Dr. Paul Schmidt…. I have been asked how I felt photographing these men. Naturally, not so good, but when I have a camera in my hand I know no fear.

Read more at life.time.com. An instagram filter revelaing the true hate.

Once again: the phoney before

Goebbels

and the evil after:
Goebbels

Never before has anyone shot a fake smile and a horor face within seconds that held so much of things to come. Instagram hate.

Minecraft or Drupal?