En
All English articles are marked under this category
-
A small update to Stereo Sid:
- Fix lack of LICENSE (merge from original Cyberernesto upstream)
- Fix library.properties and arduino lint pass, to be able to be included inside arduino library manager
- New professional CHANGELOG file
-
In the last projects, I get used to use K8s CronJob(s) to schedule tasks.
The most effective way of doing it, is to create a super-tiny cronjob, which the sole purpose is to call a REST webbook(s) of a specific microservice, to fire some action in a predictable way.
Read More -
I am playing to Divinity: Original Sin II (D:OS2) which is the game done before Baldur’s Gate 3 (BG3) by Larian Studios
BG3 is a success despite its launch was anticipated in August to avoid head-to-head competition Starfield. If we compare the success of BG3 with CyberPunk2077 launch failure, I think we can learn something about software developing PLANNING.
Divinity games are a tactical game with a lot of freedom, you can take things, combine them, and solve quests with different approaches (brute forces, talks with different paths, etc). For instance you can try to open a door with a key, with a burglar kit, or bashing it until it is destroyed (more long but feasible).
Read More -
There is very handy feature of SpringBoot which is called Dev tools. Dev tools enable hot reloading of spring-boot- based application every time your IDE recompile the code.
Because Spring Boot is often used with Microservices in mind, the reload is quick, and quite seamless.
Read More -
Context: Spring microservice application to be deployed on K8s via helm + boring Friday
In this scenario, you end up writing the SAME configuration string in a lot of places:
- On at least 2 application.properties (main and test)
- On the final, helm-generated application properties (or in the relevant environment variable if you use them in place (1))
- On the default K8s values.yaml used by helm. Possibly on other yaml file too, all documented a bit to be kindly with the K8s SRE.
- On the relevant Java code, as a @Value annotation to finally use that damn config.
Read More -
I love the super professional Changelogs you see in a lot of open source project.
Git-chglog is a Golang program you can run inside docker, to generate very professional change logs.
It works by collecting git comments with special keywords (like “Fix”, “Feature” and so on) and in the last version is also feature a JIRA integration can further simplify your work
Read More -
There is a funny article called “I’m OK; The Bull Is Dead” I want to use as incipit for this post.
The Last week I went in a meeting about flipping a BUY/SELL direction involving three services A -> B -> C. The initial B spec was right, but it was supposed to be wrong, someone (A) asked a change, and then it raised a complain on C. The entire meeting was a circula discussion on how we could fix it (just a revert of the fix?), why it was done in that way, etc.
Read More -
God summons Bill Clinton, Boris Yeltsin, and Bill Gates to his office and tells them: “I have called you to announce the end of the world: it has been set by me for midnight on December 31, '95. Go and communicate the good news to the world.”
Yeltsin gathers the Duma and says: “Dear comrades, I have two bad news to give you: the first is that God exists, the second that the end of the world has been set for December 31, 95.”
Read More -
K8s and limits
On K8s, for every pod you can define how much memory and CPU the pod needs. To make things "simpler", K8s define two set of values: requests and limits, both for CPU and memory. After some trouble on GCP, I was forced to dig a bit in the subject.
Read More -
Your software is slow? It could be your fault. Lets dive into one of the most important aspect seldom explained by Senior IT Architects -
August throughts
Programming is like writing.Code must be easy to read, and understand. For this reason I do not like very much technologies like:
- Aspect oriented programming
- SQL Triggers
- Web filters
- Last minute event listeners (like the one check before an entity save and 'patch' some data on the fly or launch additional events).
Side effects are the evil of programing in my humble opinion because can create unexpected bugs.
Read More -
I will admit it right now: I like to small talk, even at work.
Italian meetings are time-stealer nightmares.
So I have developed three simple rules, for my remote work:
- Pretend and provide a meeting Agenda or at least a meaningful subject
- Space out meeting with at least 15 minutes between them, to be able to prepare them
- Try to be very time boxed, and alert when 15 minutes remaining (for Italian guys, 30 minutes :) If you present, be very clear and ask confirmation, because guys sometimes does not listen to you or play with web browser. Speak slowly if needed.
-
I the last years I decided to put a stop on my RasperryPI2 and have a mini pc always on.
It is a very slow centrino with 2 CPU threads and 8Gb of RAM, a huble micro SATA SSD and works great with Debian Linux. I use it as a benchmark to understand if a project is worth studying: if the CPU Load stay low, the code is very well written.
Read More -
A friend of mine asked some insight on how to harden a Gitea server on Internet. Gitea is a web application for manging git repositories.
Gitea is quite compact and is less feature-rich than GitLab, but it is light and can manage issues, wiki and users.
Read More