PinnedManaging mTLS with SPIFFE/SpireIn the ever-evolving landscape of cybersecurity, maintaining the confidentiality and integrity of data in motion has become more important…Mar 24, 2024Mar 24, 2024
PinnedPublished inGeek CultureFrom env_logger to Tokio Tracing and OpenTelemetryI’m sure we all had our experiences in having to deal with difficult bugs that were even harder to troubleshoot due to lack of logging or…Apr 25, 20241Apr 25, 20241
PinnedSingle Rust Binary with SvelteKitSome time ago I created a small warp based webapp that had Svelte integrated with Vite (see Single Rust Binary with Vite+Svelte). There…Apr 24, 20241Apr 24, 20241
PinnedPublished inGeek CultureWarp WebSockets and Tokio ActorsI use warp a lot in my projects and frequently need to expose some service through websockets. The warp project has a good example on how…Jul 19, 2021Jul 19, 2021
PinnedTiny Tokio ActorsThere are a couple of actor libraries available for Rust, the most well known one being Actix. I found the library not that easy to use…May 9, 2021May 9, 2021
Published inGeek CultureSingle Rust Binary with Vite+SvelteI often have to create small server applications which need to be easily deployable. This means I prefer to keep the end result as simple…May 13, 20231May 13, 20231
Published inGeek CultureA Simple CA Setup with Kubernetes Cert ManagerSometimes it makes sense to run your own CA so you can issue certificates for all the services that run on your cluster. The simplest way…Feb 11, 20235Feb 11, 20235
Published inGeek CultureDeploying Docker Registry on KubernetesIn a previous post we set up a Bare Metal Kubernetes cluster, and we followed it up with another post showing how to deploy a Redis cluster…Dec 2, 20211Dec 2, 20211
Published inGeek CultureRedis Cluster on KubernetesAfter setting up my Kubernetes cluster in my previous blog post, I decided to deploy a Redis cluster on it. It is surprisingly simple to…Nov 24, 20213Nov 24, 20213
Published inGeek CultureBare Metal Kubernetes with MetalLB, HAProxy, Longhorn, and PrometheusA few years back I created a blog post about creating a Kubernetes cluster with Rook/Ceph. My main goal at that time was to see if we could…Oct 18, 20211Oct 18, 20211
Published inCoinmonksSolana From SourceSolana is an interesting blockchain project that promises to be an L1 with low gas fees and fast block times. To check it out I decided to…Jun 28, 20211Jun 28, 20211
Published inCoinmonksSmart Contracts on EthereumTo understand the technology around the Ethereum eco-system a little better, I decided to create a small dummy application that would…Jun 3, 2021Jun 3, 2021
Adopt Pets on Arbitrum TestnetArbitrum is a promising new L2 layer on top of Ethereum which should give us better scaling and lower costs for dApps.May 19, 2021May 19, 2021
Share OSX VPN with your PiI have a raspberry Pi that I wanted to connect to my office network for running a test. Rather than setting up a complete VPN connection…Jan 5, 2021Jan 5, 2021
Python DStream to Scala DStreamWhen creating tools and utilities on top of Spark, you undoubtedly have to create Python bindings so your Scala code can be called from…Oct 14, 2020Oct 14, 2020
ROS2 Dev with Gazebo 11I wanted to use the latest development version of ROS2 (currently code name foxy) with Gazebo11. To make this work, I did the following:May 3, 20201May 3, 20201
Running Tests Sequentially in RustYou got your Cargo workspace all set up, with an api module and a database module. You created a nice bunch of tests to exercise the api…Dec 26, 2019Dec 26, 2019
Rust and Dynamically Loading StructsIf you have developed on the JVM before, you will probably be familiar with the ability to create new instances from class names:Dec 23, 2019Dec 23, 2019
Actix Websockets with ProtobufActix is a great library with many helpful modules for building RESTful applications with, for example, websockets. Actix has many good…Oct 27, 20191Oct 27, 20191
PostGIS GPS Point AggregationWhen dealing with GPS signals from different devices, the signals are often received at different times. For example, device A and device…Oct 19, 2019Oct 19, 2019