Converting a codebase from Flow to TypeScript
A colleague and I were tasked with transforming a legacy Flow codebase to TypeScript. I thought I'd share what I learnt during this project and what I'd do differently next time. To give a bit of…
A colleague and I were tasked with transforming a legacy Flow codebase to TypeScript. I thought I'd share what I learnt during this project and what I'd do differently next time. To give a bit of…
As in many other languages, it is possible to have default method arguments in C#. Today I came across a use case for default method arguments in the unit tests. When I tried to implement the default…
I've worked asynchronously for over two years. During my first experience, it all worked pretty smoothly and I assumed that it would always be like that. But then I joined other teams and found out…
Clickjacking means that a user's click is highjacked for a different purpose. The user thinks they’re clicking on one thing, but in reality, their click is used to trigger something completely…
I hadn't written for the Tes blog for a while, so I thought I'd write a little article about functional programming concept that we sometimes use in our JavaScript code. Read the post on the Tes…
I've recently done a lot of pair programming remotely and tried a few different tools. I thought it would be interesting to share my experience with those tools, so I decided to write a blog post for…
We have a generous benefit at work which is that we get to enjoy two hack days per month. The term “hack days” is slightly confusing… It does not mean that we all disappear into the darknet…
I have to say that I am surprised just how possible it is to make personal connections while working remotely. There are people who I've only seen a couple of times in "real life" (or even never!) but…
The other day I decided to finally use CSS Grid in one of my personal projects. There's so much hype about it - at least in my social media bubble - that I already felt like I was lagging behind…
I gave a talk last night at the Extreme Programming London meetup (XProLo). The talk was about why everyone should start blogging. Or continue blogging if you’re already on it. Lots of people said to…
I’m part of the organiser team of the Ladies of Code meet up, a monthly tech meetup for people who identify as women or non-binary gender. Sometimes I take on the job of a bouncer for our meetup…
There are a lot of things I want to get better at. One of those things is writing. Oh, wait... I'll try again: There are a lot of skills I want to improve on. One of those is writing. Baby steps…
With our London office growing and more and more people working on client site, it becomes harder for everyone to communicate and stay up-to-date with what's going on in the office. My colleague…
I am in the process of setting up a development environment on a virtual machine for an Elixir project and thought I’d write about it: mainly for myself for future reference. And also because I have…
Loads of people say that it will drive you crazy to set up a React project. And yes, I have thought to myself several times today: this is madness! Why is this so hard? All I wanted was to get to a…
When I first started learning Go I was very confused by its usage of pointers. It wasn't the specific way in which Go used pointers which confused me. The problem was that I had never written a…
Over the course of 2016 I'd heard quite a few talks on progressive web apps and/or service workers and I became quite interested in this new technology. So I decided to research it in detail and try…
The organisers of Codebar approached me for a portrait on their blog. Here's the blog post about my career change, journey to become a programmer and tips for beginner programmers. Read the blog post…
In April I wrote my first blog post for the 8th Light blog! It's about some cool features of Flexbox. When I worked in my previous job I always dreamed of using Flexbox but as we supported IE9, we had…
Two years ago I worked in marketing. If you had told me back then to take a day off, buy a train ticket to Bath and go to a marketing conference, I would have… Well, I don’t even know how to finish…
Such a small word. But with such big implications. We use it all the time. “Sure, I’ll just pop down the shops and get some milk.” “I’ll just call you tomorrow instead”. “Oh, it’s just a little…
"Rabea is leaving? How long has she been here?" "Six months." "Only six months? Who would do such a thing?" That’s how the conversation between two of my colleagues went when it was announced that I…
Yesterday was Global Day of Coderetreat and I attended the event for the first time. When I first heard about a coderetreat, all I could think about was a yoga retreat. Turns out, it’s not quite a…
Recently, whenever I meet a woman who is showing the slightest interest in learning how to code, I practically jump at her out of excitement. I’ll start overwhelming her with tons of advice, meetup…
An aspect of my current job that I find quite difficult at the moment is estimating how long it will take me to create a feature. We work following Agile principles and will usually have a sprint…
In my quest to become a better developer, I try to practise test driven development (TDD) by doing different code katas or challenges. We don’t use TDD at work, so due to a mix of my desire to one day…
If you had told me a year ago that I would be working as a developer now, I wouldn’t have believed you. A developer? Me? Surely that’s waaaaayy to difficult. But what I barely even dared to dream of…
I finished the General Assembly web development bootcamp at the end of February and haven’t really blogged since. However, it turns out that people were actually reading my blog about my bootcamp…