/images/avatar.png

Tarik Eshaq

January & February 2024 Books

January & February 2024 Books Below is a list of the books I’ve read in January and February 2024 with a few comments on each of the books. I’m proud of the diversity of technical and non-technical books so far - my favorite in this list has been Design of Everyday Things By Donald A. Norman , with a special mention of a book I read close to end of last year, Thinking in Systems by Donella H.

Droidcon London 2023

Droidcon London 2023 I had the pleasure of speaking at Droidcon London this year so I wanted to write a blog post to reflect on the exprience. A massive thank you to the organizers at Droidcon for hosting a fantastic conference! The Talk My talk was titled “Shipping Production Ready Rust in Android”. That talk went over why Mozilla invested in Rust in the Firefox Android app, and covered a bit of the “how” we made it work.

Rust Proc Macros

Fun with Proc Macros This will be a super short post about some of my thoughts messing around and using proc macros in Rust What is a Macro To understand proc macros, it’s important to understand what a macro is. Macros are in a way plugins for the compiler. They take tokens and return Rust syntax to replace the tokens. Often times macros are used to avoid boilerplate code and repeating the same code over and over again.

Designing Data Intensive Applications Slides

Designing Data Intensive Applications slides As a part of a small book club with a couple of friends, I wrote a few slides covering some topics in the popular Designing Data Intensive Applications book. You can find the slides in my slides page! That’s it - I might write a summary at some point though 😛 (Warning, the slides are VERY casual (they were written for a group of friends), packed with typos and have some explicit language)

Cutting CI costs by over half

Introduction Every good project has a Continuous Integration (CI) and Continuous Deployment (CD) process. CI and CD give you the confidence you need to ensure your code is working as expected. In the Mozilla application-services project, we run a variety of CI/CD jobs. We use Github Actions, CircleCI and a Mozilla-made tool called Taskcluster. For this post, I’ll only focus on CircleCI. CircleCI is what we use for most of our CI jobs that run on pull requests.

Explain Like I'm Human 2: Operating Systems

Episode 2: Operating Systems! Why you should care You’ve probably heard of operating systems, fancy words like Windows, MacOS, iOS, Android and Linux. This blog post should hopefully help you understand why you should care about your Operating System. More importantly, it should convince you to always update your operating system when an update is released. I use the words Operating System so many times, I’ll abbreviate it by OS.