-
I am a fan of super tiny stuff written in C, and also a fan of Operating System. FreeRTOS is a super tiny real-time operating system, I was able to run also on a Arduino UNO R3 with only 2Kb of RAM.
So I decided to use it to write a small project: you can find the code on Github, but lets start from the beginning.
Read More -
Abbiamo provato Arduino UNO R4 Wi-Fi, la nuova board uscita circa sei mesi fa (fine giugno 2023), che presenta parecchie innovazioni pur mantenendo la retro-compatibilita' hardware con Arduino UNO, e una retro-compatibilita' software limitata alle API ufficiali di Arduino. Il costo e' intorno ai 25 euro, con picchi di 35 se la ordinate su Amazon.
Read More -
Venerdi' 17 novembre OpenAI ha licenziato Sam Altman senza giusta causa, per poi riassumerlo nel giro di 48-56 ore in un turbinio di messaggi sconnessi e un po' confusi.
Potete approfondire l'intera vicenda qui, ma il succo e' che mi e' sembrata 'una farsa di principi impalabili', e vi spiego perche'.
Read More -
L’Arduino Uno R3 e’ una famosa scheda basata sul chip microcontroller ATMega328P. Abbiamo parlato di Arduino gia’ innumerevoli volte, ma qui vorrei concentrarmi sulle similitudini tra l’ATMega328p e il MOS6502. Il MOS6592 nato a fine anni ‘70 e’ stato il cuore del C/64 e dell’Apple ][, oltre che di altri innumerevoli console di videogiochi (incluso il Nintendo NES).
Gia’ molti hanno osservato che il MOS6502, con la sua architettura ortogonale a 8bit e una notevole velocità di picco di esecuzioni delle istruzioni era piu’ simile ad un microcontrollore che ad un processore per (micro)computer.
Il MOS6502 inoltre indirizzava con particolare efficacia i primi 256 byte di memoria, rendondoli di fatto altri 256 registri “virtuali”, benche’ un pelino piu’ lenti.
L’ATMega328p condivide molte delle caratteristiche del MOS6502, vediamole assieme.
Innanzitutto e’ un micro controllore a 8bit, con 32 registri base indirizzabili anche a word da 16 bit. E’ estremamente performante, e quasi tutte le istruzioni tra registri vengono eseguite in 1 ciclo di clock (es addizioni, sottrazioni). Le istruzioni che coinvolgo l’accesso alla memoria vengono eseguite mediamente in 2 cicli di clock (es Store e Load), esattamente come nel 6502 che pero’ non e’ cosi’ performante sulle operazioni aritmetiche ne’ e’ in grado di fare moltiplicazioni o divisioni.
Read More -
Arduino dispone di parecchi timer interni, che l'API pero' non valorizza adeguatamente. Per tale ragione si finisce sempre per leggere codice criptico basato sull'hacking dei registri ATMega, spesso con spiegazioni sommarie.
Scrivo questo articolo perche' sembra oramai impossibile trovare spiegazioni chiare e decenti su questo argomento, senza che siano zeppe di pubblicita', anche se qualche sito si salva.
Come sapete, su Gioorgi.com l'unica pubblicita' che vedrete sono i rari box dei prodotti Amazon, che pubblicizzo piu' che altro per fornirvi un 'servizio' che per guadagnarci qualche cosa con le relative commissioni, e i link ai mei pochi libri/prodotti.
Andiamo ad iniziare. -
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
https://github.com/daitangio/sid-arduino-lib
Read More -
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 -
Con un annuncio su YouTube, commander X16 è ufficialmente in vendita, con il suo secondo batch in arrivo per il 2024.
Il prezzo finale è intorno ai 350$ che è accettabile considerando il fatto che è una board custom con software custom ma retro compatible con le periferiche dei computer Commodore a 8bit.
Read More -
Sento continuamente il ministro Salvini (e non solo) parlare di come ‘ai suoi tempi’, ‘quando era giovane lui’, ‘quando c’era la naia’….era tutto meglio.
Per fortuna Luca Bizzarri ogni tanto riporta la realta’ storica, nelle puntate 275, 276 e 277. Per sfortuna dei politici odierni, io sono nato nel 1974, ho circa la loro eta’ e ho una memoria di ferro, anche a causa di una serie di eventi che hanno segnato la mia infanzia ed adolescenza, alcuni belli, altri meno.
Read More -
Federico Crosta era il grande vecchio. In redazione lo conoscevano tutti. Era il vicedirettore da cosi’ tanto tempo che nessuno sapeva dirlo con precisione: cinquanta, sessant’anni?
Conduceva Punto Notturno o PN, un podcast trasmesso alla mezzanotte di ogni giorno, che riepilogava i fatti salienti, commentando le notizie piu’ importanti. Punto Notturno era seguito da tutti in redazione e quindi anche io, in qualità di semplice stagista ero stata “invitata” a farlo, anche perché ero tra i meno fanatici della trasmissione. La ragione e’ presto detta: punto notturno era basata sul prendere di mira un argomento e smontarlo a suon di dati e fatti, mettendo in ridicolo l’ospite. L’azione era affilata e astuta, e quindi non tutti si accorgevano della strategia di Crosta, perche’ il rischio valeva la candela: come ne uscivi si parlava di te per un mese, anche se per me era uno spettacolo assurdamente surreale.
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