Javier Casas

A random walk through computer science


Full Stack Web Engineering

  • Datatype Bridge

    A system for extending the types from a microservices-based backend to a PureScript frontend, including routes, JSON encoding, sample data, and Eq/Ord instances. It automatically detects when the frontend is no longer up to date and raises warnings to prevent broken builds. It has been in use since Jan 2017, and has been extended with support for auto-detecting instance types recently. See some details at:

    Connecting a Haskell Backend to a PureScript Frontend

  • Common Redux Mistakes Series

    Redux is a powerful tool, but we not always use it the right way. This is a series of articles on the common mental shortcuts we take with Redux and how these shortcuts affect code quality. This list is currently being used as a basis for understanding and teaching advanced Redux usage in some companies.

Software Architecture

  • Sensible Steps into Microservices

    The Microservices Architecture has been sold as the panacea for scaling startups, constructing clean code, simplifying communication, and making everything easier. If it's so great, why is that so many startups based on Microservices have closed? Why is it that Netflix and Amazon only transitioned to Microservices after making lots of money with a Monolithic Architecture? This article explains the dark side of going to Microservices without applying some critical thinking.

  • Serverless: La evolucion de la arquitectura a la nube (Spanish)

    On this talk, I explore how the Serverless framework can be used to construct applications, as well as the advantages and disadvantages of constructing systems this way.

    Watch on Youtube: Serverless: La evolucion de la arquitectura a la nube

Cryptocurrencies & Cardano

  • GiG Economy Token Prototype

    As part of a prototype to construct a cryptocurrency based on the Cardano blockchain, I implemented a system for simulating interactions in a smart-contract based applications. The code has been released in Github:

    The GiG Economy Token Prototype
  • GiG Economy Whitepaper

    A whitepaper explaining how the prototype works, as well as how can it be used and evolved in the future.

    The GiG Economy Token White Paper
  • A pub-sub implementation in the Plutus Smart Contract language

    The Plutus programming language allows to write smart contracts in the Cardano platform. For the most part, these smart contracts are about sending information and processing such information in the blockchain. But, no one attempted to retrieve information from the blockchain before. With this exploration, I found a way to send messages into channels, and retrieve such messages. All of it encoded in the Cardano blockchain.

Computational Finance

  • Interconnection with brokerages

    A system for interconnecting with several online brokerages that allows easily sending orders to the market and enables the system to be able to execute in under 20 seconds what usually takes several hours. It includes sending orders to Interactive Brokers and Matrix Brokers, as well as creating "unwind" portfolios for closing positions after the corresponding stock options expire.

    This was part of a project for a client, therefore no source code is available.

  • Smart Synthetic Algorithm

    A system that automatically converts some stock options to synthetic stock options, and keeps track of the conversion on the system in order to minimise the implied volatility of the resulting portfolio.

    This was part of a project for a client, therefore no source code is available.

Open Source

  • mpicdude

    mpicdude: General purpose programmer for Pic24/Pic32 microcontrollers

  • mpicdude: General purpose programmer for Pic24/Pic32 microcontrollers