Electric Berlin to Spring-ish London

I came back from Berlin today.

Sorry I didn’t tell any of you, Berlin-based friends. This trip was for work and I ended up so tired every day, I barely had enough energy left to order dinner.

I love visiting Berlin–I like its edgy/artsy/DIY/independent vibe a lot. But I think this week was way too cold for my poor Mediterranean self. Thankfully, I did look at the forecast before leaving, so I was prepared.

But dry spaces like an office plus warm clothes tend to cause a lot of static electricity on me, and I ended up getting shocks with everything I touched, metal or not: tables, doors, my laptop, my phone, people (I’m so sorry I gave sparks to so many people this week when shaking hands), chairs, sofas, and would you believe it… AN APPLE! Have you ever had an apple shock you? Well, I had, and it was a most puzzling experience! I could even hear the spark! 😱

It reached a point in which I was afraid of touching things–I became a hesitant creature which delayed touching whatever it was I had to interact with, while I tried to decide what would be the best way to maximise surface contact so the shock was less focused and painful. For example, I tried to grab the door handle with the palm instead of the tips of the fingers. Or quickly tried to place both palms on my laptop after coming back to it, for the same reason. Or I devised futile solutions to reduce my electric potential such as walking barefoot, or touching the floor with my hand before touching the door. Eventually, nothing worked and I got the shocks anyway ⚡️. Ahhh!

I also somehow managed to just visit Vietnamese and Japanese restaurants while I was there. It wasn’t intentional-it’s just it’s such a great place for Vietnamese food; I always find fantastic stuff while there, really fresh and fairly priced.

That said, I was happy to go back to London, if only to not to get more shocks!

Berlin had turned the “brutal cold that makes your nostrils want to retreat into your skull” into “acceptable winter chill with sunny intervals” yesterday, but it had migrated into “somewhat miserable damp day” today. This was topped by the ever-so-claustrophobic experience at Tegel–I’ve never seen an airport so cluttered!

What a nice surprise it was when we landed and the sun was shining. I didn’t even care that much that they dropped us in Terminal 5C and I had to take the train to T5. There were still a couple hours of daylight when I arrived home!

DAYLIGHT…!

I have not seen much of it this week, and I felt as if it was suddenly March and the air is full of promises of Spring and flower scents, and songbirds.

In truth, what it was possibly full of is toxic gas fumes and other pollutants because people can’t be arsed to take public transport or walk, and so keep using taxis and ubers, and ordering take aways and buying online stuff that needs to be delivered to your doorstep… but let’s skip over that part and the noises, and just focus on the fact that I could aimlessly walk around my neighbourhood during daylight, looking at the roofs and the facades tinted in yellow, appreciating the distinct architectural styles… and all this without carrying a bag or backpack or my luggage, and also without being covered in layers of winter clothes. What a wonderful feeling!

I missed this.

Extreme decoupling or all-as-a-module

I opened my laptop in the morning and found one of my open tabs in Nightly was for Vue.js. I don’t even remember how I ended up there. Was I reading about frameworks? Did anyone send me the link? Who knows!

But I was curious. I am not a megafan of frameworks, but I like looking at them. One, because their idioms are often adopted by other developers, so it’s good to be aware of where are things going. And two, because frameworks do lots of “magic” in the background, and I always want to know how they implement their “magic”—maybe I’ll want to adopt some of it!

So instead of closing the tab, I perused the page. It has a virtual DOM as React does, but they seem to take great pride on their overall minimalism (small file size, little intrusiveness). The examples are amongst the most readable I’ve found for frameworks when it comes to the JavaScript API; the HTML directives are as alien-feeling as most frameworks.

Later I was discussing this strange incident with friends (“I found an open tab in my browser—do you think this is a signal from the universe that I should get into Vue.js?”) and Irina also highlighted the fact that Vue.js “components” might be simpler to build than the equivalent in React, and also be less coupled.

This derived into talking about The Dream:

You know what the dream is? Have everything be an npm package that I can plug in to any framework I like. And everything is packages packages packages

📦.js

Oprah giving free packages away to everyone
You get a package! And you get a package! And you get a package! And you get a package! And you get a package… everyone gets a package!

(Irina demanded an Oprah themed meme)

And of course this reminded me to earlier conversations with chameleonic Jen about modularising everything and maximising reuse. She would propose, for example, abstracting a card game into separate modules; one for handling the rendering, other for handling card games in an abstract way, another one for handling a specific type of game. This way you could build multiple games by just providing an implementation for the specific game. (Games are notoriously often not built this way).

Likewise, Aria talked about radical modularity at Web Rebels and the notion that if your modules are small enough, they are done. Finished. You rarely need to ever touch them again (unless there’s a bug). Watch the talk: it’s very inspiring.

I really like this “pure” idea, and can work very nicely as long as you keep your data and logic separate from your view.

Unfortunately, the issue is that UI code often intermingles both data and view, so you end up declaring your data as instances of whatever base component the UI is using, which is not very maintainable on the long run. If you want to change the UI you will need to take the ‘data’ bits out of the UI code, or write some sort of adapter between “UI code” and “data”, to have to only change “adapter” when you decide you don’t like your current view layer. This could be a performance hit, so you might want to sacrifice flexibility for performance.

But hey… everything in computing is always a trade-off!

 

A very quiet Saturday

I was overly ambitious with my running a few days ago, and I hurt my ankle, and it didn’t help that I couldn’t stay home Friday and work from there, as I had to go somewhere and walk a lot in between places. By the time I was back home, my ankle hurt way more than in the morning, so yesterday I decided to just stay in and enjoy a quiet, restorative Saturday.

It turned out to be way quieter than I expected, as the internet connection went down for a few hours.

Mind you, it’s not like I was totally disconnected from the world, as I live in an area with 4G coverage and all that, but I am way more conscious of the data consumption when using my phone, so that meant I self-restricted myself to the essentials all the time the connection was down.

I found it very interesting (although not entirely surprising) that I got a lot of things done…

Continue reading “A very quiet Saturday”

Art prompts

When friends and relatives learn that you like drawing, you inevitably get art presents. This adds up to the irresistible attraction that stationery and arts and crafts shops exert on me and results in a lot of unused art supplies.

I decided I’d make a drawing using a different kind of supply every day in order to put an end to this situation. Of course being a software developer I wrote a randomiser to choose two or more supplies from the list. And of course once you randomise a thing you can randomise more so I added “extras” and subject ideas.

So here’s my art prompts generator which will possibly only work for me as you don’t have the same supplies as I do. But… the source is here—fork away if you want to finish with your unused art supplies! Or just press the ‘Get another prompt’ button! Eventually you’ll get something you can use.

I’m tracking the progress of my project in my new insta account: @artbysole

The best thing about this project is getting to use supplies I generally don’t gravitate to, and which I’m unfamiliar with. Which might result in “accidents”, as I do not know how to use them, be it on their own or combined with other potentially weird pairings. So far I have had just one fun accident–when I tried to apply fixative to a pastel and ball pen drawing and the fixative started dissolving the ball pen ink. Fun times!

Looking back at 2016

I didn’t write this before 2016 finished because, well, I was just so busy with celebrations and visits! But I figured it would be a good idea to look back and consider the achievements from last year before I get carried away by the new year.

Personal wise:

  • I’m very happy—I have a wonderful partner who’s kind, understanding, compassionate, clever, funny, and intelligent. We ‘get’ and care for each other. It’s great!
  • I’ve also taken up a martial art. I had started judo and aikido in the past but never continued because I kept getting hurt. This time it seems to stick as the gym is super welcoming and encouraging to women and people of all sorts. I’m still such a noob, but compared to myself a year ago I’m way stronger and flexible now, and my back aches are all gone. Also: there’s nothing like a punching bag to let steam off. I bet if more developers did it, we would have less debates on tabs vs spaces or any other irrelevant trivia 😏
  • I’ve biked and ran less—partly because I was close enough that I could walk to the office, and partly because I was tired the day after the gym! Also after the office move it takes a bit to find the new optimum routes, so I’ve taken the tube a few times…
  • I have also started to do meditation. I was curious about this for a long time, although I thought it would not work and often while doing it I think “this isn’t working” but I can tell you there is a difference between the days I do and do not do it (I am using a service called Headspace).
  • I learnt the basics of Italian! I now know enough to shyly order food and very slowly read normal books. Very exciting!
  • Finished a sketchbook I had started in October 2015. A good improvement from the previous sketchbook that took 3 years to finish! And I am back to drawing daily again.
  • I haven’t drank a Coke since June and… I really don’t miss it. As experiments I also stopped drinking coffee and alcohol for a month, but I do really like coffee, and the occasional good quality alcoholic drink. I’ve also learnt a bit more about alcoholic drinks, though not enough to be a total snob (yet), but I know more of what I like and why.

Work wise:

  • I worked on a lot of different topics: MediaRecorder, Let’s Encrypt, DevTools, Web Audio, the past and future of the Web, Servo… wrote lots of articles, and gave a lot of talks in many different countries. I also went to the Southern Hemisphere twice in different continents, which I didn’t expect to do at the beginning of the year. This was very gratifying but also very exhausting. I was glad that I…
  • moved to a different team, in a new role, and with a more “sedentary” profile. I’ve only been 3 months on this and I was still finishing tasks from the previous team, so I can’t talk much about it yet, but I’m very happy so far.
  • Also recorded a few podcasts and tutorials. These are fun—please contact me if you want to feature me!
  • And put in words what many women-colleagues and friends were thinking each time you asked us to talk at your conference, and Quartz asked for permission to republish, which I never anticipated.

Things I did for the first time:

  • Visited: Greece, Uruguay, Norway, Denmark (twice!), Thailand, Singapore
  • Drank Greek coffee (not my thing) and ginger tea (definitely my new favourite thing)
  • Tried orange wine (quite a strange thing), also sherry and port—I decided I like the sweetest varieties
  • Tried carne cruda in Italy (not my thing) and Uruguayan beef (truly my thing)
  • Used a lounge shower. It felt like absolute heaven after a long flight in which I was also cramping like there was no tomorrow. Oh, the joys of womanhood!
  • Tasted and learnt about proper balsamic vinegar in Modena.
  • Went to the opera in La Scala in Milan… dressed in heels! (!)
  • Tai chi, yoga and pilates… at 7 AM (!!!)
  • Experienced the English Christmas dinner with turkey and everything. Very yummy although I did miss the Spanish sweets. Mince pies are so not my thing.

Other highlights:

  • Walking on a low tide beach in Thailand and looking at all the lurking small animals and the distinctive vegetation
    • I saw a sea urchin!
    • Also: all things coconut while there. Coconut water, coconut soup, coconut dessert…!
  • The Pet Shop Boys concert in the Royal Opera House. Such a beautifully designed concert! So many hits! It was a party from beginning to end.
  • A visit to the Down Street disused tube station. Eerie!
  • The two trips to Italy, for pleasure, not work!
    • and there: the disused FIAT test/race track on top of the Lingotto building in Torino.
  • Visiting a fountain pen shop in Singapore where the very knowledgeable owners confided me with All The Tricks to using fountain pens while flying, All The Secrets about flexible nibs and also insisted on thoroughly cleaning my Lamy Safari which had almost exploded on my way to Singapore. Such nice people.
  • Wandering around Melbourne’s Fitzroy area when it was hot, finding an edgy indie boutique and having a nice talk with the designer-owner of the shop.

All in all it has been a very good year for me: I’m doing more of what I like and identifying things I do not like (in order to stop doing them) and discovering new things I like (but didn’t know about). So I’m… READY FOR 2017!!