[email protected]:~$

  • Typescript on steroids: Implementing Promisify

    Task Asynchronous programming is very common in the Javascript world because of the event-driven nature of tasks. One of the most common pattern used is that of the callbacks (Continuation-passing style paradigm). People (including myself) prefer using the async/await pattern instead. JS now has in-built support for async/await and the...

  • Game Of Thrones Visualizations With Neo4j

    Task Given a dataset (game-of-thrones/characters.json at master · jeffreylancaster/game-of-thrones · GitHub), present it in a meaningful way. Source code React-Typescript-Visjs-Sagas-antd tocttou / got-visual Demo No live demo available at the moment. Neo4j refuses to run properly on a 512MB RAM server and I cannot afford to give it more at...

  • Docker Sucks

    I just want to put it out there that docker is a VERY buggy product, even after so many years. The number of filesystem related bugs (deadlocks, improper disk space cleanup, improper inode usage) is enormous. Just go to the github docker issues page and look at it. “no space...

  • Smart Image Resizing Using Seam Carving

    Seam carving is a fascinating technique to scale up/down an image (or a video frame). Demo Caution: It is slow. I will optimize it to work in real-time when I get time to work on it again. [dead!] http://seam.ashishchaudhary.in:8080/ The code is available at: tocttou/smartresizing The algorithm implementation is available...

  • Better Error Handling In Kotlin With Either Type

    Note: This is not an authoritative article on how to handle errors in Kotlin/Java, but it is accurate. This is something that I wanted to try out for a long time. I would suggest you to look at Try from Arrow lib after reading this blog post. I use the...