Friday, July 3, 2015

Come with us to Drupalaton!


Come with us to Drupalaton which will be held on 6-9th of August in Keszthely, Hungary at lake Balaton! Only 5 weeks left and after that You can enjoy sunshine on the beach and the refreshing lake. Real Drupalaton experience will be bound to useful programs. 

Take part in great sessions from Drupal rockstars, contribute in sprints, learn and meet Drupalists!
For this reason, it offers perfect balance of work and leisure at the same time. Big party and fun is guaranteed because You can participate in the amazing ship party sponsored by Brainsum - which is the Diamond sponsor of Drupalaton and it is the first Drupal 8 site software developer in Hungary.

Do not miss the chance to buy Early Bird ticket (only 21 left!!!)  which costs 35 Euro instead of 55 until 10th of July!

Check how fun how it was last year (thanks Ruben!):





Thursday, May 7, 2015

Our first Drupal 8 site was launched on 10th of April!

Last year in Amsterdam at the DrupalCon, after the first official Drupal 8 beta release we were sitting enthusiastically and felt the courage to offer Drupal 8 to a client.

Not for a complex system though, just for a corporate website. Views is in core and there will be an upgrade path between beta releases -- at least we thought at the time. So what could go wrong? Well we know that anything :) So we tried to be careful.


The client was selected carefully

  • Our client Gravity Research & Development is known by its recommendation engine. They are an innovative IT service company so choosing an innovative platform for their new website is a good fit.
  • We already maintained the client's legacy Drupal 7 site so their needs were well-known for us. 
  • Does this mean that we charge the client with our learning process? No! From the beginning we counted with a large investment on our side + we were generous when it came to change requests.
  • We created the wireframes and the graphic design too, so we had chance to discuss these with the developers.
  • The scope of the new site was very limited: a one page site with a couple of additional simple subpages (by the end this had changed a lot)
  • 1 language only


We set some principles for the project

  • Using only Drupal core and no contrib modules
  • Trying to minimize custom module development


The start: Drupal 8 beta6

  • When we started the actual development, Drupal 8 was in beta 6 and we realized that no official beta to beta upgrade path will be available. No panic, we will only upgrade to the stable release. (There is a contrib module which has upgrade path from beta9, but we haven't tested it yet)
  • On our weekly internal training sessions we focused on Drupal 8. This way not only the 2 involved developers had to solve the issues, but the whole team was there to help and to learn at the same time.


What worked well

  • TWIG template engine and template debugging.
     
  • Core configuration management. Works like a charm on the admin UI and it has drush support as well.


Custom module development

A views plugin to handle custom navigation tabs (note that there are tabs below the content area too).
We will show this in a separate post later.


Struggle with simple things


Bye-bye drupal_goto(), hello RouteSubscriberBase!

The nice thing with using new technologies is that even the easiest thing can become a real pain. 
One example: we had to redirect all node view pages to the corresponding custom page and even activate the right tab. For this a simple redirect with some additional information after a # for Javascript is enough.
But in Drupal 8 the good old drupal_goto() doesn't exist anymore. We had to figure out the Symfony way and ended up with two files (classes) as we had to override the NodeViewController and the RouteSubscriberBase instead of that single drupal_goto. We will show a working example on this in a separate post.


YML

In Drupal 8 a lot of declarative things (info files, menu hooks etc.) are placed in YML files and this is good. But the current IDEs (we use PHPStorm and Netbeans) the Drupal 8 - YML support is limited and it can take really a long time till you find out that you made a typo somewhere in your YMLs. I hope that this will get better with time.


Our next Drupal 8 project?

Gravityrd.com is up and running, but we still don't recommend Drupal 8 for complex projects. Most of the documentation on the web is obsolete, things are still changing and there are a lot of critical issues left. On the other hand we believe that this is the future so it's worth it to invest time to learn and adapt early. We are already planning our first headless Drupal 8 project, so that we can benefit from its in-built webservice support.

Last week we hosted the Drupal User Group meetup in Budapest, where we shared our experience with the local community. Check out the presentation slides about creating the first production Drupal 8 client site in Hungary.




Monday, August 4, 2014

Come to Drupalaton and check out our SponsorSHIP :)

We are proud to be a GOLD sponsor of Drupalaton 2014.
Come and join us for a drink on BRAINSUM SponsorSHIP on Saturday :)


Selling Drupal modules under a non-GPL licence

I'm not a lawyer (I'm a CTO), but I feel something is not O.K. here:

http://www.sellxed.com/shop/en/drupal-commerce-telecash-ipg-zahlungs-modul.html

They are selling Drupal modules for money -  what is permitted by Drupal's GNU GENERAL PUBLIC LICENSE Version 2 - but also they are restricting alterations and copying. As I know all Drupal modules inherit the GPL licence from Drupal.

I think they basically break this with their software licence agreement what you have to accept while purchasing a module from them. 

Here are the 2 most important parts of their licence agreement:

"5.2 No Alterations

You may not modify, adapt, translate or create derivative works based upon the Software."

"5.4 Transfer

You may not rent, lease, sublicense, assign or transfer your rights in the Software, or authorise all or any portion of the Software to be copied onto the computer of another user or another legal entity, except in expressly authorised cases."

Is this legal?
What if someone buys a module from sellxed and uploads it to drupal.org as a contrib module? ;-)

Monday, March 31, 2014

Our very own Drupal Dev Days in Szeged

In every year there are a lot of interesting Drupal-related meetups all around the world - Cons on two continents, Camps in one of each countries' cities and a lot more. The diversity of topics is the strength of these events- business, frontend and backend are also covered.

But! There is only one Drupal Developer Days per year, and usually it's all about code sprints, techie sessions and a lot of learning. This time it was organized in Szeged, Hungary, between the 23 - 30 March - 6 years after the famous Drupalcon in 2008! More than 340 Drupalers bought tickets in advance to the event, which is an awesome number!

Having such an interesting Drupal event in Hungary warmed our heart, because we as Brainsum found this the greatest opportunity to support the Drupal development as silver sponsors! It turned out absolutely great! From the company Péter, our CTO and Tomi, our software developer joined the sprints and had a lot of fun.

Our CTO, Péter receiving a beer from Julien Dubreuil, Customer Success Manager of Commerce Guys,
after a Commerce platform demo .

Besides sponsoring DDD, the event offered us a great chance to participate in the code sprints and meet the Drupal rockstars by travelling only 170 kms - what else could a Drupal deveoper dream about?
And finally because I (Zsófi, writing this blogpost now) had the chance to offer my time and dedication as a volunteer, being part of the core organizer team as responsible for the sponsors, which was pretty exciting, and I never experienced a Drupal event from this point of view.

The core organizer team: István Palócz, Márta Maczel, Gábor Hojtsy, Zsófi from Brainsum, Andrea Radó, Viktor Janurik and Péter Cseh (and the photographer's daughter, Bogi :)

As Drupal 8 is coming soon, there are a lot of things to do and work on, so when it was decided that the next Dev Days were gonna happen in Szeged, Hungary, we thought we could build the whole event around fixing issues for Drupal 8 and making it better on the go. When we started to marketing the event, soon we gained a lot of interest - not only because it was all about Drupal 8, but because people had a lot of fun in Szeged in 2008 at DrupalCon, and now they had the chance to come back to this beautiful, cosy city.

The event venue was IH Event Center, just two steps away from the hotel, where most of the Drupalers stayed, and this was the perfect combination. Originally in the schedule there were 3 full days of code sprints, from 9am to midnight, but when the venue had to close, a lot of the coders went to the hotel lobby and continued working on the issues. On Thursday the actual conference started with an opening keynote by Jam, Jeffrey A. McGuire about why Drupal 8 is so important to the whole community.

From an organizer perspective I can say that this was the best event someone could imagine - it went really smooth and the only thing we needed to take care of were those things that we originally expected. All the Drupalers had fun at the code sprints and the sessions during the day, and during the nights they had the chance to eat great food (Fishsoup 'Szeged' style was really popoular!), have some drinks with the others and go out to party!

Gábor Hojtsy, who was also part of the core organizer team showed some numbers in his closing session (before singing the Drupal Dev Days song with hurdy-gurdy and other instruments) and shared some of the results of the whole week.

Consumption in the venue:
  • 240 liters of beer
  • 1000 servings of coffee
  • 120 kg of bananas
  • 300 kg sweet snacks
  • 480 liters of water
  • 5500 sandwiches
But this is only the food. The real purpose of DDD was working on Drupal 8, so here are the numbers:
  • 115 core commits, 706 files, 11k+,7k- lines
  • 7 change records (ALL)
  • 19 beta blocker/targets fixed
  • 7 "hard problems" discussions
To summarize I think this was a really productive and awesome week. Thanks to all organizers, volunteers, sponsors and attendees for contributing! See you at the next Drupal event!

And to properly say goodbye, here's the DrupalFolk song!
Gábor Hojtsy singing, Kristof Van Tomme on hurdy-gurdy, Alexandru Badiu on the Marvin Drum, László Csécsy on flute and Péter Kohán on guitar!


So long and thanks for all the fish!



Thursday, February 6, 2014

AnimGif and ImageCache plays well with Image Magick



The good old animated Gif is a cool format again. It works on everything, no Flash or HTML5 video needed. You can handle it as simple as a static image... or not? By default the majority of Drupal installs are using GD to create thumbnails (image styles). But the stock PHP GD extension  (coming with mod_php) lacks the functionality of properly handling animGifs and your mainpage or lister pages will remain static and boring.

The solution: switch from GD to Image Magick 

The ImageMagick (tested with version 7.x-1.0) module supports the command line Image Magick tool. On Ubuntu you can install it with a simple apt-get install imagemagick command. Once your php can run the convert command you can switch to it on /admin/config/media/image-toolkit . Don't check the Enable the GraphicsMagick support - we experienced problems with thumbnail generation when it was enabled and it's not needed anyway. With enabled Image Magick the Image javascript crop module gives crop functionality for animGifs too.
A further advantage of Image Magick is that the quality of your simple jpg thumbnails will be much better with the same compression than they are with the stock php gd.

AnimGif has reborn, Drupal should not miss the new golden age of funny movie clips! :)