Geek Logbook

Tech sea log book

Run Redash Locally

This is only for educative purpose. You don’t have to do this in production 1 – Clone the project from the oficial github: Redash on GitHub – Y made a fork previously. Take Care 2 – Modifiy the compose 3 – Create the env in the opt/redash 4 – Run Docker 5 – Create database

Understanding Distributed System – Maintainability

Introduction It’s widely recognized that the bulk of software costs arise after its initial development in maintenance tasks like bug fixes, feature additions, and day-to-day operation. Therefore, it’s crucial to build systems that are easy to modify, extend, and operate, ensuring they remain maintainable over time. Robust testing, including unit, integration, and end-to-end tests, is

Understanding Distributed System – Resiliency

Introduction Chapter 24 – Common Failure Causes Chapter 25 – Redundancy Redundancy, the replication of functionality or state, is a critical defense against failures. When replicated over multiple nodes, functionality or state can be maintained even if a node fails. This redundancy not only enhances availability but also enables horizontal scaling, as discussed in Part

50projectsIn50days – Day 24: Content Placeholder

A Card placeholder is a common element in a lot of web pages. Nowadays we can use it with differents frameworks. It is possible that x is the most famous of them. In the official documentation you can see it: Bootstrap Placeholders documentation For educative purpose I’ve avoided the usage of this framework and, following

Understanding Distributed System – Scalability

Introduction Scaling an application involves maintaining performance as load increases. The long-term solution for increasing capacity is to architect for horizontal scalability. In this section, we’ll explore scaling a simple CRUD web application called Cruder, consisting of a single-page JavaScript application communicating with an application server via a RESTful HTTP API. The server uses local

Understanding Distributed System – Coordination

Introduction Our ultimate goal is to build a distributed application consisting of a group of processes that gives its users the illusion they are interacting with one coherent node. While achieving a perfect illusion may not always be possible or desirable, some degree of coordination is always needed to build a distributed application. Chapter 6

50projectsIn50days – Day 23: Kinectic Loader

The HTML page doesn’t have any html nor Javascirpt which explains the functionalyti. Therefore all the changes is made by the CSS. The movement is made by the Transform function as you can see here: The transform property is: The transform CSS property lets you rotate, scale, skew, or translate an element. It modifies the coordinate space of

50projectsIn50days – Day 22: Drawing App

There is a toolbox in the middle of the screen, as a Paint emulator. Below the box you can see buttons related to the possibilities of change the color and the size of the draw up. The elements selected related with the size, color are similiar in each case. There is an event listener which

50projectsIn50days – Day 21: Drag And Drop

An HTML with 6 boxes. In the first one you have an image which you can drag and drop using the mouse. The HTLM and CSS are simple. The only topic you may notice is that there are a number of functions which are used to show the user when they take the image. On

Understanding Distributed System – Communication

Part I – Communication Introduction Interprocess communication (IPC) is fundamental to distributed systems, enabling processes to exchange data over networks. This communication relies on agreed-upon rules, which are specified by network protocols. Protocol Stack Network protocols are organized in a stack, with each layer building on the abstraction provided by the layer below. Lower layers