Category Archives: Events

Events coming up next: August and September

Here’s where I’m going to be next:

  • August 27th: Async.JS, Brighton. James and Alastair have worked tirelessly since last year so I move my lazy noble parts from London to Brighton and go talk about something.
  • 9-10th September: NordicJS, Stockholm. Very excited about being back in Stockholm!
  • 15-16th September: SmashingConf, Freiburg. Me in a SmashingConf!!!!!!!! AAAAAAAH!!!
  • 22nd September: SmartWebConference, Bucharest And back to Bucharest in less than a year, but this time I get to walk on the city and not just use its airport for a connecting flight! Wooohoo!

Yes, there’s no JSConf.EU on the list. I’ve been going to Berlin in September for the last two years and while it’s great, I don’t think I can make it for the third year considering how busy my previous weeks will be. I have events in October too, and I would like to be able to make it to them in one piece. I’ll see you all somewhere else, I’m sure :-)

Also: three free tickets to SmartWebConf for students and underrepresented developers

As Debbie Millman says:

you can talk about making a difference, or you can make a difference, or you can do both

So I’ve also decided to convert my speaker fee from SmartWebConf into tickets for students and underrepresented developers who wouldn’t otherwise be able to attend the event. To apply just email contact at telling why you want to go (and if a student, attach a copy of your student card). More info here, as well as a picture of the one and only Bruce Lawson with last year’s students.

I hope this makes a difference. I also like to remind myself of Anika Lindtner‘s “a simple gesture from your side can change somebody else’s life” (watch her talk). Who knows, maybe these tickets will have a way greater effect than any of us can predict!

And I was also in Manchester last week. Sorry if I didn’t announce it, but I’ve been superhyperbusy lately.

“An introduction to Web Components” at Manchester Geek Nights

I was in Manchester last week for a Manchester Geek Night meetup organised by ThoughtWorks North. I gave an overview about Web Components, and potential issues regarding accessibility / SEO, and using them with some of the popular frameworks:

Slides: onlinesource code.

It’s kind of similar to my jQuery UK talk, but updated, because many things have changed since March.

Yet people in the audience are mostly still not using Web Components or don’t plan to do so for the time being. They are mostly happy with the UI options provided by their framework of choice, or what they do doesn’t really justify the investment that Web Components require.

I am however hopeful that browser vendors have finally agreed on something and things are starting to move towards a minimal, commonly agreed with, implementation of something-web-component.

But I am going to politely decline doing talks about Web Components until the tech is a bit more stable. I am not working actively with UI/Web Components stuff at the moment so preparing these talks requires a huge investment of time (as I don’t like telling lies, or lies by accident).

Possible futures, and nodebotting

You might remember that I was sorting out my music collection. This involves having to use iTunes for adding cover art and editing metadata and blah blah because I’m using a Mac and it seems that everyone has given up on making anything (anything!) better than iTunes.

So iTunes is this big huge mass of software that attempts to do everything at the same time and does nothing particularly well, and we’re all using it because there’s not much more else available. Talk about user choice, wooops.

Yesterday I was realising this horrible situation and started a parade of tweets:

  • I never know whether to cry at the immense UI failure that iTunes is or just laugh at it so ironically being the flagship product at Apple
  • When using iTunes I’m afraid to click on buttons because I do not know what havoc will that unravel. Things move around without explanation
  • There are buttons that turn into something else, something elses that act like buttons, data losses, weirdnesses, ugh
  • The worst is: there doesn’t seem to be anything better in Mac? (!?) 😭PLEASE PROVE ME WRONG, I BEG YOU 😭

Someone suggested Vox, which I haven’t tried yet. But seriously–only one suggestion! is that all that there is? I ended up thinking again about writing my own “player”. Except it would not be a player, or at least, not just a player, but I was thinking more about a sort of jukebox with sync. Of course I have other things to do right now so that’s probably not going to happen unless I win the lottery I don’t play.

I was in a good mood this morning so I decided to pretend I was funny and laugh at this whole mess with another tweet parade:

  • the year is 2030.
    you can do grocery shopping, pay council tax, vote for your fav eurovision artist and resolve git conflicts with iTunes
  • in 2045 iTunes finally gains sentience and writes the code for you. all commit messages mention titles of U2 songs
  • 2525 it is revealed that iTunes has acquired Skynet (to the tune of Visage’s In the Year 2525 but poignantly sung by Bono)
  • 3001: Frank Poole begs to be killed again by HAL 9000 when he sees iSkynet in action

And instead of sitting back and maliciously grin at the idea of this actually happening and how 2030 is in fact quite close in time and I could be saying “I told you so” in only 15 years, I grabbed my bike to go to Tableflip, the home of Nodebots in London, for a lighterweight NodeBots day.

Good things: it was a gorgeous day (specially compared to yesterday’s where it poured with rain for about 90% of the time), and I got lost in Dulwich which is a beautiful, albeit very adhoc and non-grid at all area, so it’s even a pleasure to get lost and wander around those streets.

Bad things: there was nothing bad about getting lost because there was absolutely no rush at any point during the day.

Oli was a fantastic host and he made us bacon sarnies and coffee. Their space is a-ma-zing. It’s full of tools old and new, and equipment and things and dust from sawing and weird mechanical and chemical smells, and flying things in various sizes and shapes, and there’s some other business where someone is building bikes. BIKES!!! It’s all super cool and I came back very excited about making stuff, even if I just managed to sort of use Johnny Five to control a servo:

Meanwhile, Tom was hacking on his Maschina and making it emit various sounds with JavaScript, Alex was transferring PCB positives onto another surface using an electric iron and two other guys were doing fantastic hacky stuff as well. I also got to hear about Fritzing and it looks really good.

I’m glad I got to use part of the equipment in the Spark core kit I got at JSConf.US 2014 which I still hadn’t had time to use. I’m sad I didn’t get to use the Spark core itself because the nodeschool nodebots workshop is designed for Arduinos and I wanted to see something happen physically and not just emulated, but I am certain I’ll be able to research this before iTunes can also talk to Spark devices via iPay or whatever.

Playing with hardware is fun. I am an almost total newbie in this field. I keep forgetting which pin is the N pin for LEDs (it’s the short one, I just looked it up today). I keep forgetting how to read resistors and how to connect things together. It’s all fine: it’s on the internets, somewhere, or alternatively it comes back to me once I get started. I have absolutely no expectations for what I’ll do and so I can’t let myself down if I forget everything from the last time I played with hardware. It’s OK. It’s a game. It’s fine to forget the rules, you can always re-read them.

And if you haven’t had enough future scenarios, here’s also this very funny article: A horror story that starts with Twitter.

Open letter to someone that should know better

I didn’t pick all the setup (the phones, the mixing table, the laptop etc) right after I finished my talk at JSConf.BP. To make the conference happen more smoothly, I just disconnected my laptop from the projector and left everything else there so the next speaker could do his duties without me being in their way. I rushed outside and essentially BREATHED a big sigh of relief.

(my setup)

There was a guy serving cold brew coffee on the lobby, and Karolina was waxing lyrical about how great it was, but I didn’t want to drink any before the talk because otherwise I get super HYPER and speak too fast. And at last… I could drink that coffee!

Allow me to reiterate that I was outside the main room, enjoying the coffee and talking to Karolina and to anyone who asked me things about my talk or just discussed parts of it, and so I wasn’t listening to the next speaker.

A little bit before he finished, Karolina went in, because her MC duties called for it. I decided to get inside again, and stood on the right side of the room, leaning against the wall and waiting for the speaker to finish. He tried to play some video but he was getting no sound out of it. Each time he pressed the volume button, he got the “forbidden” sign. I guessed why: HDMI devices report an output sound device which doesn’t actually accept volume changes, and he wanted to use the audio jack output which is the internal sound card, so he should either have changed devices or the conference should have connected the HDMI output to the sound system, but I expected he would find out. Or the technician would show up out from nowhere, as they always do, and fix it.

Either way, I was leaning on the wall, enjoying this semianonymity, and didn’t want to start yelling out of nowhere: CHANGE YOUR OUTPUT DEVICEEEEE!!!, because that’s quite rude.

Eventually he played the video, but without audio. Well!

When he finished I went up the stage to pick all my abundance of hardware. He was discussing with one of the organisers that he hadn’t got the audio to work or something, something, something. I joked that I knew what was the issue, as it happens all the time in our office when we have meetups, but I didn’t want to correct them in public because it was such a jerk move. And then I just went and picked my stuff and packed it all into my suitcase-backpack. Szabolcs guided me to where I could leave my belongings safely and out of the way, and that was it. I WAS DONEEEE and I could also now listen to the rest of the talks without worrying about my belongings being scattered around the stage! Yay!

Fast forward to Friday night, when I attended the after party where I essentially distributed stickers and had a good time talking to people I hadn’t had time to talk to before.

It was all great! until at some point someone said they wanted to discuss something privately with me… I was intrigued. What could this be?

So they told me that the speaker after me had dismissed our work and said that whatever we were working on, they were already doing at his company, and when they heard him say so, “they felt so bad because it really sounded so out of place!”.

And this was all news to me! Because, as I mentioned before, I wasn’t in the cinema when this happened! And so I told him, and I couldn’t really comment anything else without hearing it myself first.

As it happens, the conference was live streamed via ustream. Which was then archived. And so yesterday I decided to watch it out of pure curiosity (was that guy really being that out of place? or was it just the perception from the audience?).

But they were right. The next speaker had decided that even if my talk was “awesome”, if people cared about security they should look at his project which “already works”, “doesn’t need any of that master device” things and is “also open source”. Then he dictated the github url of said project.

This is probably the biggest well actually-ed I have ever been, and I wasn’t even there! So it’s like NEXT LEVEL WELL ACTUALLY. Congratulations… not!

You see, when you’re up in the stage you’re granted special powers. Everyone is going to listen to you for ~20 minutes, and that is an immense privilege that you need to use wisely. What you say during that time might have profound impact on the audience. You need to be very careful and work hard on being a good example, because they’re here to listen to and learn from you, and so if you behave poorly, they might think it’s OK to behave poorly as well.

And so when you chose to well-actually me, when I wasn’t present, and dismissing the work me and Mozilla are doing, well, that wasn’t classy. You’re telling people that it’s OK to not to be classy.

This is unacceptable. I expect way more from you.

You know what would have been lovely? You find me after your talk is done, and we have a coffee and you tell me about your amazing project. I would have looked at it, probably learnt incredible things from it, and I might even be writing about it right now, instead of this letter.

You could also have asked me why I am building this project the way I am building it, instead of dismissing the master-client structure. I could have told you that when you play music, you normally have a single, unique global clock. Have you ever seen an orchestra with multiple conductors? I bet you haven’t. This is the same.

Trust me, I can understand your terrible urge to be RIGHT above everything and everybody else and correct them on the spot. I used to be an insufferable know-it-all too, but that was when I was a teenager and didn’t know any better. Time has taught me that instacorrecting people in public tends to come back like a deadly boomerang—they end up finding the most embarrassing errors either in my reasoning or understanding, turns out the corrector is the one who’s wrong here, and I want to hide and blush to death under the table.

My advice? Don’t instacorrect. Make a note to investigate that thing that is making you twist in your chair, and think more about it before you even open your mouth or get to the twitters. Did you really understand it? Is the other person THAT WRONG? And even if they are, what are you here for—your talk or correcting other people?

There is a fine line between humility and self-deprecation. I know my project is not perfect (for god’s sake, didn’t you see the todo list already?), and our implementation is not perfect, but that doesn’t make it any less impressive on its own. And people find that it inspires and makes them happy.

We can do great things with JavaScript today, and we are working to make even greater things. We are not afraid to admit our shortcomings. But the way you pointed them out was really cringeworthy.

You should know better.

“The disconnected ensemble”, at JSConf.Budapest

Here I am in Budapest (for the first time ever 😮)! I’m back in the hotel after having a quick dinner on my own. I didn’t join the party because I had a massive headache and also I was getting so sleepy, no coffee could fight that (also probably the two things were related). But once I started wandering towards my hotel I found myself feeling so much better, and stumbled upon a cosy nice place and ended up stopping there for some food.

When I came back from the speakers’ dinner yesterday, I practiced setting up all my stuff and going through the demos again, which are in fact ran on real, physical devices, i.e. phones.

Continue reading