Skip to main content

techiev2's current lifestream

Phoenix

[tl; dr] I spent some time in the recent past weeks to pull crisp back up, to the extent possible and incrementally adding back more from its older avatar. All that’s below is a brain dump of whatever has encountered over the phase. Something a long time due has been crisp's resurrection; or what it looks to be today. The wonderful thing about a boring job, a boring persona, and any such is the element of surprise that it throws to those that never saw things coming.

Kademlia - A ba dum tss

This evening has been a good one. A welcome break if I may, from a few weeks without enough to feed the brain. Of course, a minor detour existed with refreshing logarithms and some trigonometry. Cutting back, stumbled upon some excellent content on Distributed Hash Tables almost by accident. The Kademlia DHT is just about old enough for its first job post a bachelors. The genius of the trick lies in the binary of XOR for distances and a sort of binary tree space for retaining information about neighbouring nodes.

Low Code Well Bestowed

Found the image thanks to Abhishek Nayak on LinkedIn. This one did remind me of something that I’ve been pondering about for some time now. Some ramblings, on that note. – Developers’ apprehension for no/low-code tools: A denial of agency? As developers, we tend to get wed to our code, solutions, and the nitty gritty. We take pride in our craftsmanship and our ability to solve complex problems with elegant solutions.

Increment

Made some incremental changes over the last couple of days. We have a new PM who I work with on our order APIs and there’s been some discussion we’ve had about making the system not just robust, but accountable and actionable. While we’ve had a bunch of chaps who focus enough on the former part, the latter I’m glad there’s at least one soul that does think of. This time around though, unlike the previous two iterations in the last year, didn’t give up and spent some time post the time off at Boss’ place on Friday.

Track

After ages together, an update here. Not that there has not been enough to write about, but there has not been enough discipline to. Painful as it is, here goes. The last few months have been rather on and off with trying to reining in the way work gets done, not to mention the way planning happens. In a perhaps inane manner, started rewriting some parts of the stack after a major concern during Deepavali.

Improvise

And another fortnight passes, almost. A bunch of firefighting and a lot more that elevate the carpet later, some time to spend on things that keep the brain functional. Restarted work on separating our current order system into functional, event-driven components. Even as certain teams express discomfort regarding the delays with refunds, the tunnel vision or the lack of any to begin with at the other side seems only to push further towards a scalable solution.

Separation

One of the good things that I picked up during my short but eventfully learning stint at Simpl was how long a well thought about domain data model can go. The one that I couldn’t for my life, was tests. Jokes aside, this has been one healthy learning that has taken a while now to put into some practice. Yes, we did have something that nominally resembled this at crisp, but the constraints did prevent us from going all in.

Changes

After a humongous release cycle, sat down earlier today to spend some time on an improvement. The long term pending idea is to move the order processing system into a well managed event-driven one. As a first step, structured a new scaffold of APIs and MC patterns to handle everything from order acceptance from clients, to vendor end procurements via events and separating concerns out. Earlier, a few days back, got back to my blueprint based solution for vendor integrtations that’s been a bottleneck for the pace at which we bring new vendors onboard.

Progress

The last week and a bit more have been insane in terms of being away from writing - be it code, or a note. So, amidst a long “get to know the product” session from the founder, sat down improving the GraphQL sanitiser. Added a couple of changes from the earlier work that went kaput thanks to a ‘well thought out’ rm -rf on my desktop. First, an opt-in extension on the Express JS router to provide a simpler way to expose data schemas for any controller-model pair.

Waves

The last few days have been a slump - both in terms of productivity and writing. A few steps, must be acknowledged, are working thereof though. A five day hiatus now coming to an end with a bulk of the pending ones on the plate being sorted. But that does also open up the next phase of planning and such. While it cannot be in certainty told the systemic issues might see a solution soon, they are at the least out there in the open.