Farid Zakaria's Blog

Packaging a Maven application with Nix

Surprisingly for Java’s popularity, the Nix Java ecosystem is pretty immature & fragmented. There are several community driven solutions for integrating Maven (Java’s package manager) with Nix all which have their own pitfalls.

This post will go through a single idiom on how to package a Maven project in Nix that at the very least does not rely on 3rd party support: Double invoking Maven

what is bundlerEnv doing?

The Nix wiki is pretty great for a lot of technical content however it sometimes fails to gently walk users through how something works.

I’ve been doing some Ruby work as part of my day-to-day job and wanted to better understand Nix’s approach to Ruby.

setting up a Nix S3 binary cache

If you just want a very easy-to-use binary cache, consider using cachix.

Nix is an amazing tool, however the learning curve can be very high. The online wiki has a lot of great documentation however I find it is often very geared towards NixOS specifically.

I wanted to better understand how to setup my own binary cache.

my love letter to redo

This is a public love letter to redo & the joy it brings building software.

I remember when I first finished The Little Schemer and wrote my first semi useful “JSON Diff” program. I was exalted. I was elated. I was ecstatic.

There is something magical when you learn Lisp that is really tough to convey over a blog post or short article. One must try it, to grok it.

I have not professionally used Lisp much since however it’s been immensely impactful in the way I think about & construct software.

Redo is this for build systems.

Containers from first principles

You’ve likely heard everyone at the office or online proclaim that “K8s has eaten everyone’s lunch!” or that “everything should be in a docker container!”.

While there are advantages to the above methodologies; it’s very easy to have cargo-culted their adoption; especially for Kubernetes (K8s). I find the biggest problem however that there is a fundamental lacking of what is a *container.

There s a 1000 other posts online explaining containers and I’m adding my own to the pool. Perhaps this 1001th explanation will do so in such a way that it groks.

bpf_helpers and you...

This is a republishing of a e-mail I sent out to xdp-newbies mailing list which you can find here originally published on Wed, 30 Oct 2019

This is my attempt of a continuation of David Miller’s prior e-mail bpf.h and you….

I was curious about how ebpf filters are wired and work. The heavy use of C macros makes the source code difficult for me to comprehend.

Maybe there’s an online pre-processed version of the Linux kernel?

I’m hoping others may find this exploratory-dive insightful – hopefully, it’s accurate enough.

Parallel Task Execution

A common task is to have a set of tasks; each with their declared dependencies. This setup exists in a variety of build tools such as make or rake

New blog. New format.

Hello World.

I’ve moved my blog from “Small Thoughts” blog.fzakaria.com, which was hosted on Wordpress & S3, one using Jekyll via Github Pages.

Why Github Pages and not S3 still? I wanted to see what all the fuss was about & it sounded simpler to set up the TLS certificates.

You may notice that the theme of this blog is very similar to that of Drew Devault’s; in fact, it is based on his published theme.

I admired on his blog his campaign to get others blogging that I revived my forgotten blog. I enjoyed the minimalism of his blog and embraced it. The site uses very minimal fancy Jekyll plugins, and you can find the source here.

I’m still a novice to Jekyll & blogging in general; feel empowered to reach out to teach me or discuss.