macias.info Open in urlscan Pro
104.248.30.136  Public Scan

Submitted URL: http://www.macias.info/
Effective URL: https://macias.info/
Submission: On June 16 via api from US — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

Mario Macías

Home About Book


MY HANDCRAFTED BLOG

Written from scratch in Go because I'm too lazy to read the Hugo docs.

--------------------------------------------------------------------------------


DISPATCHING 3000 HTTPS REQUESTS/SECOND ON A $6 VM

Posted on December 23 , 2022 (No comments)



Sometimes I can see small peaks of visits to this blog, especially when a post
reaches sites like e.g. Reddit or HackerNews. But the extra amount of load never
spends a significant amount of server resources. Thinking about that, a question
came to my mind: how many requests/second would my blog be able to dispatch with
decent response times?



--------------------------------------------------------------------------------


PERFORMANCE COMPARISON OF GO FUNCTIONAL STREAM LIBRARIES

Posted on December 2 , 2022 (No comments)



With the arrival of Generics to Go 1.18, a new programming model has arrived to
Go: functional stream processing. This post evaluates some current libraries
providing such functionality, and compares the achieved performance in
single-thread streams.



--------------------------------------------------------------------------------


THE ENGINE BEHIND THIS BLOG REACHED VERSION 1.0

Posted on November 4 , 2022 (No comments)



In 2017, I started to code the engine that runs this blog as a learning exercise
for the Go programming language, following the famous Writing Web Applications
official tutorial. That means that the quality of some parts of the code of this
blog was poor, making it difficult to understand (even for myself) and difficult
to extend with new, useful features that I had in mind to agilize even more my
writing/publishing workflows.



--------------------------------------------------------------------------------


HTTPS SUPPORT!

Posted on January 21 , 2022 (No comments)



After more than 4 years, I implemented HTTPS support for my blog. All the old
HTTP links will be redirected to their HTTPS equivalent.



--------------------------------------------------------------------------------


AN INTRODUCTION TO GO KUBERNETES' INFORMERS

Posted on September 8 , 2021 (2 comments)



This article shows you the tool that the Kubernetes Go client library provides
to keep an updated in-memory snapshot of your cluster resources.



--------------------------------------------------------------------------------


GO AND WEBASSEMBLY (I): INTERACTING WITH YOUR BROWSER JS API

Posted on March 15 , 2020 (No comments)



Golang provides the syscall/js experimental package to facilitate the creation
of browser-based applications without requiring any javascript transpiler; just
targeting your official Go compiler to WebAssembly and loading the artifact in
the browser. This blog post is a simple tutorial to allow you setting up your Go
WebAssembly project, as well as some basic functions to allow your Go code
interacting with JavaScript objects and functions.



--------------------------------------------------------------------------------


KACONF: KICK-ASS CONFIGURATION SYSTEM FOR YOUR JAVA APPLICATIONS (TUTORIAL)

Posted on February 3 , 2020 (No comments)



This blog post is a step-by-step guide that shows you the basic usage of KAConf,
an Annotation-based configuration system inspired in the wonderful Spring Boot,
but simpler, lighter, not so magic, and independent of any large framework, with
no transitive dependencies.



--------------------------------------------------------------------------------


ENABLING JAVA REFLECTION ON GRAALVM AHEAD-OF-TIME COMPILER

Posted on January 5 , 2020 (No comments)



In my previous blog post I evaluated the feasibility of Java for lightweight
system programming thanks to the GraalVM native image generation tool. Despite
the initial results look promising, I felt disappointed when they pointed me out
that GraalVM does not support reflection by default (which IMHO is a wonderful
and powerful tool to enhance the expressiveness of our software and to reduce
boilerplate). However, you can actually configure the ahead-of-time compiler to
incorporate a user-provided reflection metadata.



--------------------------------------------------------------------------------


JAVA JIT VS JAVA AOT VS GO FOR SMALL, SHORT-LIVED PROCESSES

Posted on December 20 , 2019 (8 comments)



There is still a common belief about Java being slow (especially during the
startup) and memory-consuming, making it not being the first option for
ephemeral service instances, like containers. This blog post pretends to put
some light on those assertions, quantifying the impact of a last-generation JVM
in a simple, single-threaded, application. We compare the impact of the JVM
measuring the execution time and memory spent of a Java QuickSort
implementation, comparing it with the execution of a native image generated with
the modern GraalVM Ahead-Of-Time (AOT) compiler and the same QuickSort
implementation in Go.



--------------------------------------------------------------------------------


CODE SYNTAX HIGHLIGHTING AVAILABLE!

Posted on December 19 , 2019 (No comments)



After almost two years without updating this blog, I have changed the Markdown
processor from Blackfriday to Goldmark, which includes an extension to highlight
the code syntax according to the Alec Thomas' Chroma engine and styles.



--------------------------------------------------------------------------------

Page 1 out of 2
Next

--------------------------------------------------------------------------------

Copyright © Mario Macias 2017-2019
 * 
 * 
 * 
 * 
 * 
 * 

Please enable JavaScript to view the comments powered by Disqus.