WordCamp Europe 2017 – Learn. Connect. Contribute.

Yes, I know. This is yet another WordCamp review blog post. But I promise, in the next two month, there will be “regular” posts 🙂 So I am currently sitting in the plane back to Berlin – time to write down the review, while emotions are still fresh. In short: it was amazing!

Enjoying Paris

I arrived in Paris on Monday. Usually I don’t stay too many extra days around WordCamp, but as I really love Paris, I had to spend a full week here. Unfortunately my colleague who wanted to join me to explore the city couldn’t make it. But I found other members from the German and international community I could show some of my favorite spots in Paris and some of the typical touristic places, anyone have to see.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

I’m not only a fan of the city but also of the French Cuisine. You can’t be in France without having wine, baguette and cheese. I received some good critics on my choices of cheese 🙂

Tuesday and Wednesday: Community Summit

Before the WordCamp Europe, about 150 members of the international WordPress community met for the Community Summit. I was not nominated/invited and as the topics discussed were not twittered or blogged about, I can’t give you details on the outcome. But I heared from many attendees, that some important topics were discussed and some decisions made.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

Thursday: Contributor Day

Most WordCamps I visited lately had the Contributor Day before the WordCamp. For WordCamp Europe it was the first time, but I think it went pretty well. I joined the Meta team and worked on some last minute optimizations for our new default WordCamp theme CampSite 2017. Having the leads of the meta team around helped a lot to get patches discussed and merged very fast. We even found some new things we could improve and I wrote a small blog post to ask the community for feedback. Overall it was one of the most productive Contributor Days for me.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

Speakers Dinner

Being part of the organizing team of WordCamp Europe 2017 I was invited to the dinner for speakers, sponsors, organizers and volunteers. We met on a boat on the river Seine and had some nice talks over good food. Luckily the weather in Paris was really good the whole week. Just a bit warm 🙂

Friday: The first conference day

In the opening remarks, Paolo Belcastro (global lead of the WordCamp) told the audience, that the WordCamp Europe originally was only planed as a one time event back in 2013 in Leiden. But it turned out to be one of the most successful WordCamps and is here to stay. Jenny Beaumont (team lead of the local team) welcomed around 1900 attendees to the fifth edition of this amazing event. OK, not all of them get up that early to attend the opening remark at 9:15 in the morning 🙂

Big Litte Shame: a Tale of Empowered User Experience Through Localization

Even though I was in the organizing team, I could attend sessions, as the design team had done all the work before the actual event 🙂

My first session was from Caspar HĂźbinger. He talked about a very important topic: “gender-sensitive language“. I had the pleasure to see this talk at WordCamp Torino but for his talk at WordCamp Europe he researched even more and improved his very good talk with some new details. I would highly recommend to see his talk on WordPress.tv when it’s online.

https://twitter.com/damndirty/status/875815114875817984

The three kinds of design

After Caspar’s talk I stayed in track 1 to follow the presentation from John Maeda. He is an inspiring speaker and talked about design and it’s importance. Even though I am not a designer, I learned a lot from this talk on how design can be a key factor for any successful product.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

Security is a Process

The next talk was a bit more technical. Mark Jaquith gave a small introduction on how to secure a website and which things you have to keep in mind. He didn’t digged too deeply into the implementation details but showed some important concepts to make WordPress core, plugins and themes more secure.

Lightning Talks – Contributing to WordPress

After lunch, there was a first round of lightning talks. The first talk by Jenny Wong was about how she and her organization team made the last two WordCamp London events the most accessible. Pascal Birchler then spoke about how he started a project to translate WordPress into Romansh, one of the four official languages of Switzerland – and he even doesn’t speak the language himself 🙂 Rahul Bansal followed with a talk on how they help new translation contributors being active over time. The last talk was from Alice Still about the WordUp Brighton (the local WordPress meetup in Brighton) and how they developed a good local community and reaching out to new attendees.

WordPress Security for All: You Won’t Believe How Simple It Can Be

I missed a bit of the next talk from Miriam Schwab about WordPress security, but she gave a good introduction on the most important parts. As you might know, I have my own view on some of the typical advices about security, but Miriam seems to have some similar views on them.

Is Your Code Ready for PHP7?

The next talk was again rather technical. Julka Grodel spoke about the changes in PHP7 and how you can make you code ready for PHP7 while making it also run on PHP5. I learned some new edge cases I didn’t knew before and some issues I experienced myself in the past weeks.

https://twitter.com/gglnx/status/875716006454407169

New to Theme Design? Here’s What You Should Know

The last talk of the day for me was from Dmitry Mayorov about Theme Design. He shared his experiences he made while developing themes. He argumented for themes that are small and specific to a special need, rather than implementing yet another “multi purpose theme” that will not really fit for anything 🙂

Saturday: The second conference day

As the official party was not between the two conference days, I could get some rest.

People Over Code

I started my day with the talk from Andrew Nacin and his funny stories from projects in the WordPress ecosystem as well as in government. He reminded us, that we should keep our software as easy as possible, so not only other developers can work with it, but also we would know what we wrote back then 🙂

We Are All Making This Up: Improv Lessons for Developers

The next session was really something quite different. Dwayne McDaniel is not only a developer but he is also doing Improv. In his talk he made some interessting connections and even had some attendees joining him on stage for a small experiment/game.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

The Pernicious Myth of the Code Poet

Followed by this Boone Gorges talked about the WordPress slogan “Code is Poetry” and why he thinks it doesn’t really fits. In the Q&A after his talk, someone asked him, if he knows a better slogan. He came up with quite a funny one 🙂

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

After these talks I had to take a break for some meetings and an interview for the German podcast PressWerk (which is not yet online and will be in German).

Interview and Q&A with Matt Mullenweg

As on the previous WordCamp Europes, the co-founder of WordPress Matt Mullenweg had an interview followed by a Q&A session where attendees could ask him anything.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

That was also my last session of the WordCamp as I prepared for the closing remarks.

After party

After the great success of the WCEU ball last year on Vienna, we had another “party with style”. This years theme were the 1930s. The organizing team picked the beautiful Pavillon d’Armenonville as the location of the party. Located in the Bois de Boulogne, it was the perfect place for a nice evening with old and new friends to celebrate a wonderful event.

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

Conclusion

This was my first WordCamp Europe being part of the organizing team. I had an amazing time organizing and attending this WordCamp. The WordCamp Europe continues to be one of my favorite WordCamps. So I will definately be on the next one as well. Speaking about next year: the new city was announced in the closing remarks. We will meet again from June 14 to June 16 in … Belgrade, Serbia. Milan Ivanović and his local co-organizers found a perfect venue in the capital of Serbia. As I have never been to this country, I can’t wait to visit it in 12 month. Maybe I join some meeting of the local team to get some insights for an upcoming WordCamp Europe. But more on that on another occasion 🙂

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

WordCamp Copenhagen – Discovering a new community

You know I am spontaneous, when it comes to WordCamps, right? So three weeks ago was WordCamp Berlin. On the Contributor Day on Friday, Jenny Wong asked the design team, if they could help WordCamp Copenhagen with their website. She was the mentor of the organizing team – the single one left! The organization didn’t went too well and they didn’t had a real website. So the awesome design team helped with that and when the Contribtutor Day ended, WordCamp Copenhage had a nice website.

Meeting new communities

I was not involed in this process, but I offered my help as a “experienced organizer” if the organizer of WordCamp Copenhagen or Jenny needed more help. So in the following week, only around 9 days before the WordCamp, I searched for flights to Copenhagen and found a really good deal. So, here I was, booking another WordCamp trip 🙂

Click here to display content from Twitter.
Learn more in Twitter’s privacy policy.

Read more →

WordCamp Berlin 2017 – How was it?

Some of you might say “what, yet another WordCamp review?”, but no, this one will be different. And the reason is quite simple. For WordCamp Berlin 2017, I was the lead organizer so I had almost no time to see any sessions. So you have to read all the other reviews out there, if you want to know, how the talks have been.

WPAdminDay

But before I write some words about the WordCamp, let’s start two days earlier. Stefan Kremer organized for dev ops how maintain WordPress websites for their clients. As I am the administrator for the WordPress websites in the agency I am working for, this day gave me lots of new insights on how to optimize workflows and get a better overview on tasks to be done.

Marc Nilius showed his daily workflow when updating WordPress installations using InifiteWP, a software I really want to look into in the next weeks. He also wrote a custom script, which parses the email about changed files and how he uses this system to detect potentially hacked site.

Read more →

Home page with a grid layout using flexbox

A friend asked me on how to show the home page with the latest blog posts as a grid instead of a list. I though a bit about how I would solve it and as I haven’t used CSS Flexbox a lot in the past, I wanted to try this out. So, on the train back to Berlin, I tinkered a bit and came up with a small solution.

Turing TwentyFifteen’s home page into a grid

I needed a theme to experiment with and again I’ve chosen TwentyFifteen, as if has enough pace to have a grid home page. So, how does the home page look like in the theme by default?

Read more →

Disable self pings on a multisite

On a project, the client wanted to disable any pingsbacks from it’s own site. I found a snippet for that and there is also a plugin with this snippet. But this will only work for the current page. What if you want to disable pingbacks from one site of a multisite to another?

The extended snippet

Everytime a post or page is posted or updated, WordPress will try to send a pingback to any URL in the content. To modify the list of links to ping, we can use the action pre_ping with a very simple callback function:

Read more →

WordCamp Torino – My second Italian WordCamp

I just got back from my second WordCamp this year and also the second in Italy: WordCamp Torino. At WordCamp London three weeks ago, I was pretty sure, that I would not attend this one. But only a week later, plans changed and I couldn’t resist 🙂

Friday: Contributor Day

With only buying my ticket two weeks before the event, the Contributor Day tickets were already gone. Thanks to the organizing team, they could find some more room for us, so I was able to attend. With the upcoming WordCamp Europe and my participation in the organizing team, I had some work to do on the new default WordCamp theme. I hope that I can present you the results soon. There was also a little workshop about VVV which was pretty useful, as I just set up the new environment for my work on the new theme.

Read more →

My third WordCamp London and the first time as a volunteer

Last weekend, around 600 people met to largest the anually WordCamp in a European city: WordCamp London 2017. This was the third year in a row I visited this event and it still is my most favorite WordCamp. I booked my ticket many weeks ago. But after the organizing needed some last minute volunteers around a month before the big event, I didn’t thought twice and applied as a volunteer.

My second WordCamp volunteering

I have visitied many WordCamps, spoken on a couple of them and co-organized 3 Camp so far in Berlin and am currently the lead organizer of the next WordCamp Berlin in May. But this was only the second time, I applied as a volunteer. Being a volunteer, you not only meet new people and get in touch with many more, than as a regular attendee. You also learn a lot as an organizer. There are many things every WordCamp has in common. But especially WordCamp London sets a good example on many details. The team around Jenny Wong did a great job. Just as in the years before.

Read more →

Implementing a datepicker fallback for HTML5 date input fields

In one of my advent calender post, I show you, how you can set a range for the date input type (not yet translated). In a comment, someone reminded me, that this new input type is not yet supported by Firefox. It might be available in future version (currently it can be enabled by setting a flag in Firefox 56+), but until then, we should implement a fallback.

Checking for browser support

I still like the native date input fields a lot better than the JavaScript based datepickers, especially on mobile devices. To check if a browser supports those new input fields, you can use a very simple check:

Read more →

Direct downloads with the “download” attribute

You probably all know that situation. You have some files on your website and you want to enable your users to easily download these files. This task is pretty easy and you might wonder, why I am writing a blog post about this. Well, not every user knows how to do it easily and you might want to make it as easy as possible for those inexperienced users, to download the files.

The default behavior for links to files

So how do you usually link to files a user should be able to download? You probably just use a simple link like in this example:

<a href="http://example.com/image.jpg">Download image</a>

Read more →

Mark affiliate links in your content using CSS

As a German blogger, there are some things you should be aware of. One of them is the “Gesetz gegen den unlauteren Wettbewerb” (law against unfair business practices). If you run a business and you think, that someone is taking advantage by not following some rules, you might be able to sue them. Even if you only have a “personal blog”, chances are very high, that it’s not totally “private”. Some bloggers don’t want to have advertisements on their blog, but they participate in some affiliate programs and “just” place some links. But this is considered advertisement as well and must therefore be marked as such.

Disclaimer

As I am not a lawyer, the text of this blog post may not be completely legally founded. Therefore, this blog post will only give you a technical solution, which might not be enough legally. If you have any doubts, please consult a lawyer, you can verify your specific situation.

Read more →