This commit is contained in:
octospacc 2024-08-23 15:18:32 +02:00
parent 3e3159f5b7
commit cf7c0ff225
20 changed files with 1385 additions and 3 deletions

View File

@ -25,7 +25,7 @@ Then, as much as I try to spend as little time as possible on it, I have my serv
Unfortunately now I often don't find the right time to spend on the Fediverse, as I used to do there before writing and sharing stuff, on the various different nice free platforms.
I often sleep too, ahhh nice when you sleep you stay there like that, ohhh, and sometimes it's necessary, oh.
I often sleep too, ahhh it's nice when you sleep you stay there like that, ohhh, and sometimes it's necessary, oh.
I also write actual programs sometimes. More than anything, little programmers, because if I embark on big undertakings then I risk <small>(no no, it happens often, what "risk", it's a certainty)</small> of leaving stuff abandoned halfway...
@ -41,7 +41,7 @@ Oh, and I also still have to go to school... no, university they tell me now, I
: The simple thing is itself a particular property.
• My favorite color is the background color of the site
: That is, #eeddff. I'm poor and I don't have Pantone colors, this is the most precision I can guarantee. I hope your display is calibrated like mine.
: That is, #eeddff. I'm poor and I don't have Pantone colors, this is the maximum precision I can guarantee. I hope your display is calibrated like mine.
• I like to enslave stones
: I mean, it's not that I enjoy it, it's that I have no other choice, the only way to do the things I like is to enslave computers (which are, at the processor level, thinking rocks).
@ -72,7 +72,7 @@ It is also possible to take my public PGP key, or use the convenient interface o
# End?
For now, I'm sorry, but that's all. If you want to know more, you'll first have to wait until I think of new stuff to write. Don't get your hopes up too much, though, considering that this page hasn't expanded substantially for months and months 😬.
For now, I'm sorry, but that's all. If you want to know more, you'll first have to wait until I think of new stuff to write. Don't hope too much, though, considering that this page hasn't expanded substantially for months and months 😬.
Here on the site, however, I have not yet had clear enough ideas, nor the necessary patience, to create huge collections on all those elements of knowledge that I possess on very particular subjects. For the moment, at the cost of almost never adding anything, I avoid filling the post with **too much** information; However, I throw them all on [OcttKB](https://kb.octt.eu.org).

62
en/Donazioni.md Normal file
View File

@ -0,0 +1,62 @@
// % Title: 💰 Donations
// % HTMLTitle: <span class="twa twa-money-bag"><span>💰</span></span> Donations
// % Index: True
// % Order: 45
// % UpdatedOn = 2022-11-12
# <span class="twa twa-money-bag"><span>💰</span></span> Donations
They told me I should make the site **profit**.
In fact, if you think about it, they are right, but... there is a but.
Since I cannot, for obvious reasons of human decency, put advertising, assorted trackers, or cryptominers on the site, I opt for something less invasive: this page.
If you like the ctt site, and want to help me improve it and update it more frequently, you can make me a **free donation**.
(_Yes, the for-profit stuff **is a joke**, it made me laugh and I wanted to write it, but the site will always remain a little thing I do because I simply like it and I don't have much better or more productive things to do Do._)
## Donate via cryptocurrencies
Cryptocurrencies are the ideal way to carry out financial transactions via the Internet, perhaps even more so for donations than for payments.
Open my Coindrop page to see the cryptocurrencies I accept and their addresses: <a href="https://coindrop.to/octt" target="_blank" rel="noopener nofollow">coindrop.to/octt</ a>!
_Note: Coindrop requires (free) JavaScript code to run. It's a problem that needs to be solved somehow, in my opinion, but for now this is it._
_Note: ETH is listed for completeness, but the Ethereum network sucks and is unusable for fees; However, donations on the Binance network for that address are welcome._
Should I accept other currencies in the future, for example I would be interested in trying [Nano](https://nano.org){[:MdTgtBlank:]}, which claims to have a low environmental impact.
If you really want, you can choose to install, on your machines, mining software for the cryptocurrency you would like to donate to me, setting the program to send payments to my address. By following this path, you don't even need a wallet for the currency in question, and you will simply use your electricity to get the money to donate to me.
Bear in mind that I haven't been interested in mining for a while, so I don't know which programs to recommend, I would tell you to ask more experienced people. But please don't create a mining farm fueled by dead dinosaurs, oil, methane gas, I have no idea, just to donate to me (or, actually, don't do it in general, please)! The best would be to use a [Rasperino Solare](./Posts/2022-06-23-0000-Rasperino-Solare-ed-Altri-Esperimenti-Andati-a-Male.html), if you can.
## Donate via gift cards
Another good way to exchange money over the Internet, in my opinion, is with gift cards.
I am currently accepting gift cards for these stores:
- Amazon.it
To send me the code of a gift voucher that you have and would like to donate to me, consult the list of my public contacts, where you can message me and do nice things 😸: [Who-I-am.html#-My-contacts](./Who -I'm.html#-My-contacts)
## Donate via cash
If we ever see each other in person, you can easily make a cash donation to me!
At the moment, I definitely accept the following tax currencies:
- [EUR] Euro
The list here makes known the currencies that I definitely accept, because I have the opportunity to put them to good use.
If you have cash of any other currency with you, and you really want to donate it to me anyway, I will probably accept it, but know that it is very likely that I will never be able to use it, and your donation will therefore have been in vain.
## Donation history
In this section of the page I will keep a history of donations.
It will be private by default, so I will never attribute the identity of the person who donated to their donation unless I am specifically asked to do so.
I still don't know if I will report all the donations in general, therefore also including the anonymous ones but simply without specifying who they are from; or I will only mention those of people who want to get their credits, avoiding writing the others. Maybe I'll decide when the first anonymous donation arrives? :)
...
<code class='NoCode'>
... no soul has yet donated even a penny to the loli, pain.
</code>

7
en/_index.md Normal file
View File

@ -0,0 +1,7 @@
---
#title: "the ctt site"
#description: "The last theme you'll ever need. Maybe."
#cascade:
# featured_image: '/images/gohugo-default-sample-hero-image.jpg'
---
Welcome to my blog with some of my work in progress. I've been working on this book idea. You can read some of the chapters below.

View File

@ -0,0 +1,66 @@
+++
Title = "🌐️ How and why sitectt on Tor?"
Description = "In a short time since opening the ctt site, I created a Tor mirror of it. Why? Greater security, privacy for those who visit, and fun for me!"
URLs = "Posts/2022-06-03-0000-Come-e-Perche-il-Sitoctt-su-Tor.html"
Categories = [ "Blog", "Internet", "Sysadmin" ]
Dates = 2022-06-03
Lastmod = 2022-06-29
+++
In recent days I have settled the first matters regarding making the site available on the <span style='Color:#59316b;'>Tor</span> network. There are those who will call me exaggerated for even having the thought of doing something like this, but there is little that can be done.
If nothing has gone wrong, the Onion service can still be reached at this address:
<small>~~[onmfrk2acl4xdeawfjg3nfepq7gcufolctmhiwwxpcknazus5bxzxhqd.onion](http://onmfrk2acl4xdeawfjg3nfepq7gcufolctmhiwwxpcknazus5bxzxhqd.onion){: style='Color:#a060c0;' }~~</small>
[sitoctt2fxjvx3lc2iqqef2aeulflprjaasv2xl4zi7sxxbmvjy5b5yd.onion](http://sitoctt2fxjvx3lc2iqqef2aeulflprjaasv2xl4zi7sxxbmvjy5b5yd.onion)[^ New aesthetic domain].
The idea - apparently successful - was to use a free PaaS service, Replit, to do everything.
This way, I don't further burden my improper server. For months now, precisely since the beginning of mid-February 2022, I have been using a Switch console as a server for too many things: in addition to the historic SpaccCraft server, I have my own Matrix instance, some Telegram bots which are perhaps the things that require the least resources, and software assorted minors. Yes, Nintendo Switch on which I started Ubuntu..
I won't go into details, it's better to do it in a separate article, but in short the reason is that SBCs like the Raspini, to date, due to current world events, have scary costs, and the Switch was the only low-cost computer consumption with enough RAM (4GB) that I already had at home. You have to adapt.
This here is also the very first post I write on the postocto blog, who knows how it goes and above all who knows when it will appear, because I should fix my static site generator for a moment to be able to manage pages like this which, instead of common pages, should be treated as subpages of the "Blog" page (autogenerated).
## How?
Let's go back to the discussion of the postoctt: with Replit, taking as a basis a Repl found around that demonstrated how to host another type of service on Tor, I built my Repl which: at each new start, downloads locally everything needed to compile and deploy my static site (from my Git repos), prepare everything, and start an HTTP server and the Tor daemon, which acts as a proxy by exposing the HTTP server to the outside via the Tor network. Then endlessly, all through Git, download any updates to any of the parts and, when necessary, regenerate the site.
I leave here the link to a GitLab snippet with my files, for anyone who wants to do the same service as me for their own website, perhaps built with my very low quality static site generator (at a code level, if it disgusted me on a conceptual or practical level I wouldn't be developing it slowly yet): [gitlab.com/-/snippets/2338457](https://gitlab.com/-/snippets/2338457){[:MdTgtBlank:]}.
With free PaaS services like Replit, however, there's a little problem: there are limits on software execution times. In the case of this platform, everything goes into suspension if the project's web address does not receive pings for I didn't quite understand how many minutes. If it receives any later, it wakes up after the time necessary to redo the startup operations.
It's a shame however that, apart from the fact that it would mean making anyone who wants to visit my site wait at least 30 seconds for the first connection to be established, it is the HTTPS address on the Replit domain that must be contacted, for obvious reasons not the Tor address. And having people connect via the HTTPS address defeats the purpose of having a Tor site (which I'll get to shortly, I swear).
The solution would be to use, on a computer that is always on at home, a script or a cronjob (rather, a systemd timer, given that it is precisely because of systemd that classic cronjobs today are broken and malfunctioning) to continuously ping the address of the my site on Replit. I could do it, but I would like to find a way confined to the same free PaaS services to solve the problem, as something like this would mean that even those who don't have a server at home can do what I did.
Initially I tried with UptimeRobot, but it seems to be a problem, I set everything up in the evening, and the next morning my site was offline.
Searching around I then found several sites (called "pingers") that invite you to enter the address of your Replit project to make it ping continuously so as to keep it active. I used like 3 at random, that I don't even remember, and since then the sitectt doesn't seem to turn off anymore.
Or, perhaps, the merit was that I created a second Replit project, which has the sole purpose of pinging my first one endlessly (while the main one always pings the second one). I don't know, because the second one seems to always shut down, I don't know if it's because it doesn't have any exposed HTTP server, I have to investigate..
## Why?
Let's immediately get the elephant out of the room (which is already small): the desire to set up a site that contains immoral material at serious levels (which I differentiate from illegal material per se), which if hosted on the traditional web would be very easy to tracing back to the owners with all the consequences of the case, is not the only sensible reason for wanting to use Tor (or any other network based on the same technical principles, but Tor is for better or for worse the most famous and used).
This site is also on the clear web without problems, that is, it has no problems being there.
Tor provides strong anonymity compared to the unfiltered Internet. Why it should be of interest to those who do not traffic in illicit content is quickly explained not with an answer, but with a question: do you happen to want to make what you do (including visiting a particular website, like my blog) known to multi-billion dollar corporations? that in return they will not give you anything, indeed they have no scruples about doing everything possible even to your detriment (tracking) to profit in one way or another?
How do you want your ISP to know about the particular Internet services you contact? Or have the person hosting those Internet services identify you (me and my ISP if it's something hosted in my house, otherwise the particular provider for servers provided by companies, like Replit itself or GitLab.com where I host the site on the clear web ), if you won't gain anything from it?
For many people, for some reason, this reasoning doesn't add up, but few care and, although I don't go to some extremes, I understand the points of view of the few people who want to maintain as much anonymity as possible even when they do moral and moral things. online lawyers. Accordingly, I agree with and encourage the use of Tor to access the services and content I provide.
I still don't convince you? So listen to this. Tor allows, for example, journalists who live under total or partial censorship regimes to report the truth, whether directly or not. Or, it allows those living in these regimes to inform themselves freely and uninfluenced by government propaganda, and to communicate with other people in other parts of the world.
The real principle that it is easier to hide who you are and what you do on an individual level in the midst of a huge crowd, rather than when you are with a few other people, also applies to distributed networks: more people use them, even for simple web browsing, the safer individual users are. So, by using Tor to surf the web, even if you don't care about anonymity, you will help those in need.
At least help the users who don't do anything wrong: the criminals who sell drugs and weapons, or sell photos and videos depicting rape or torture, often go to their heads, and end up neglecting the opsec to such an extent that sooner or later they end (and I would say that I enjoy this) more than badly.
A doubt that may arise for non-super-experts, however, is why it is necessary to also provide the site as an Onion service, given that any content on the normal Internet is still accessible behind Tor, which in that case will work more like a traditional proxy . The problems here, however, are more subtle, and have to do with the nature of the classic Internet infrastructure.
I don't think I need to explain the problems arising from passing data in unencrypted form via the Internet: information can not only be stolen (which for a public blog is not a big problem), but even modified and presented as if nothing had changed, with disarmingly easy, from any of the intermediate parts of the connection, for example the ISP of the client or the server.
HTTPS for websites solves this problem.. Bad. We don't talk about it much, but the entire correct functioning of these protection systems depends on a complex global metaphysical infrastructure, which has more flaws than you might think.
Searching on Whoogle, I found this PDF, which more or less gives a quick look at the problems HTTPS suffers from: [Weakest_Link_in_the_Chain.pdf](https://www.accessnow.org/cms/assets/uploads/archive/docs /Weakest_Link_in_the_Chain.pdf){[:MdTgtBlank:]}.
What is essentially important to say is that the entire current system, based on CAs, consists of trust in an upstream authority. Without going into details, so I refer you to the PDF, the system is fragile and can be broken, resulting, in rare special cases, in the same problems as non-encrypted connections; indeed, perhaps even worse, because the presence of HTTPS can lead us to trust always and in any case: modern web browsers have conditioned us to ask questions only when we see the open padlock or a warning triangle, not when we see the closed shiny green padlock.
When you use Tor to connect to sites on Tor, the connection is not only routed between even more nodes on the network, but the data is encrypted with a public and private key system between the client and the Onion service server: the only the weak point in the chain is the server itself, which stores the private key, there are no other authorities to trust.
The system has problems, I will absolutely not deny it, starting from the fact that if the private key is stolen, thieves can impersonate the site and at that point the only thing to do for those who manage it is to change the key, thus also changing the domain, you cannot go to the CA to revoke the certificate. This is how a system based 100% on mathematics and 0% on trust works.
To tell the truth, I would therefore be wrong to use someone else's machine to host the Tor... Greve site. Alright.
## In conclusion
Tor is by no means perfect: it has various types of flaws, generally based on the deanonymisation of users because that is what 3-letter agencies are interested in, but let's talk about it clearly: it is a step forward towards having more protection, and it is certainly a huge step forward towards data security, in a way that ensures that communication between client and server is only as secure as server and client, without worrying about the minutiae introduced by any third party.
The fact that Tor is financially supported at least in part by the US government however, without going into too much detail, perhaps carries some profound dangerous implications. This is why I want, more or less soon, to give a chance to services similar to Tor but different from it. Lokinet inspires me, to tell the truth, I think it will be the first alternative network I try.
## [:HNotesRefsHTML:]
[^New aesthetic domain]: **Update 2022-06-29**: I changed the domain for aesthetic reasons to this new one! Additional (but still scant) info at [today's PicoBlog post](../PicoBlog.html#-2022-06-29-Minare-domini-Tor).

View File

@ -0,0 +1,87 @@
+++
Title = "📄 Documents should not become applications"
Description = "The Web is becoming increasingly bloated, slow, and risky. Every site is becoming an app, even if that's the wrong thing to do..."
URLs = "Posts/2022-06-14-0000-I-Documenti-Non-Vevono-Diventare-Applications.html"
Categories = [ "Blog", "Internet" ]
Dates = 2022-06-14
+++
# <span class="twa twa-page-facing-up twa-📄"><span>📄</span></span> Documents should not become applications
Today's Web is unquestionably very different from that of 20 years ago, and it changes more and more with each passing year.
Looking at the positive sides of progress is always very easy and reassuring, and for this reason we rarely think about the dark sides which, in many, many things, exist. The Web, unfortunately, is one of these.
## What's happening?
The Web of documents is taking a turn for the worse, slowly becoming more and more, to all intents and purposes, the Web of apps.
To understand the problem, however, we must remember what the World Wide Web was in its infancy. It was an Internet platform for exchanging information in the form of hypertext, that's it. And what are hypertexts? Some documents. Of course, very particular documents, where reading can take place in a non-linear way thanks to hypertext links, and the Web in particular has evolved to be a hypertext system with support for decorated text, multimedia elements, and highly advanced layout... but at the basically we always talk about documents.
In the very early days of the Web there were only so-called static sites, meaning they always remain the same (unless updated by those who administer them), and there is nothing that users who visit can do to change them. This category includes things like a simple blog, the site itself for example, a news site, the demonstration site of a company or product, an encyclopedia... in short, simple things of this type.
A little later (days or weeks, the idea was already envisaged in the very first specification of the Web and HTML) the idea of using servers that could process information entered by users with buttons and text fields, interact with database, and essentially provide a user-generated content experience. Therefore, forums in a more classic sense began to emerge, sites for creating sites (!) in a simpler way (CMS), the social networks closest to us, webchats and, let's not forget, search engines. These are the dynamic websites.
In this period, however, it did not matter whether we were talking about static or dynamic sites, only documents returned to the computers of any user who contacted the site. Whether it was the HTML page itself, a CSS file to stylize the page, or multimedia files (at the time only photos) placed between one block of text and another, to the browser, the program that interprets and displays these documents, only documents to be interpreted returned, not programs to be executed.
Here we are still in the exclusive existence of the Web of documents, for the Web of applications we will still have to wait.
With these last sentences, those who think ahead have already understood where I'm going with this, but I'll get there calmly.
In this era, essentially nothing much could happen to your computer or your information simply by loading a given Web page, because the browser only had to deal with files that told you how to lay out the text on the screen (HTML and CSS, markup languages), or how to arrange arbitrary colored pixels on the screen (images).
The only thing you had to trust was the browser itself (and that it was up to date), not individual websites.
## The current state of affairs
Then, came the scripting. We've seen all sorts of things, but in the end only JavaScript has survived to this day, and is the basis of the pioneering (and tragic) Web 3.
Other Web scripts are actual programs that a browser can execute if loaded from a page. Here, however, an obvious problem arises: you have to trust every single website that integrates scripts, a problem that is however decidedly complex to deal with.
To be honest, this is not the only problem: scripts very often slow down pages, especially on older and less powerful devices, and on some very old stuff they don't work at all, thus breaking sites that use them extensively. In practice, this means that sites that unnecessarily choose to integrate JavaScript are, on any hardware, often much slower than those that don't.
However, we will discuss this in detail another day.
First of all, there are sites that upload obfuscated code, to all intents and purposes proprietary software... those, only with a lot of patience and enough experience can you understand what they do.
In any case, however, the simple fact that a program is free does not mean that it is necessarily free from privacy and security problems, and this has been seen, ironically, especially in the JS community, where developers of popular libraries have gone out of their way and integrated malware into their projects.
Few open software developers put code that is harmful to users in their programs, but, those 2 or 3 out of 10000000 who do, sometimes get away with it, because there are no other people who bother to read the code and take action adequately.
This is a problem that concerns all users of the Web, and if those who already have the ability do not go, for obvious reasons of time and patience, to read all the code of the scripts loaded by all the sites they visit, imagine that those they just don't have the ability to do it (the vast majority of users) are hopeless.
Many people have problems - some sensible and some not, for those who know a minimum of how a modern computer works - installing native applications from scratch, perhaps never heard of before... all problems that are ignored when you are simply browsing the Web, without knowing about the hundreds of scripts that run in a varied browsing session.
How can a script, and therefore a site that integrates it, be malicious?
Browsers today execute website scripts in a fairly sandboxed environment, of course, and as of today, for reasons that I won't explain now, even serious flaws emerge every month, if you keep the browser updated the security is in theory fine.
Privacy, however... that really ends up bad.
There was a demo made like a game that showed personally why you need to be afraid... too bad I can't find it anymore, I don't remember where I discovered it from, and therefore nothing :(. At the moment, for those who want to find out more , I can only link [Device Info](https://deviceinfo.me){[:MdTgtBlank:]}, which shows many of the data (but not all) that a website can extract from the devices of those who visit it also take a look at [Cover Your Tracks](https://coveryourtracks.eff.org){[:MdTgtBlank:]}.
The problem here, it must be specified, does not lie in web apps that can be defined as real applications, which use JS to function. Whether it is a calculator, a game, a word processor, a photo editing app, we are always talking about applications, no matter whether they are written in native language as native apps for a specific platform, or whether they are written in JavaScript as applications for Web browsers. All of these things require the client to execute the code, because these are very interactive apps, and that's okay. I myself often use apps that run in a browser window.
There would then be a long discussion regarding the Web as an application development platform, for many reasons (even the flaws), positive and negative, but I will talk about it in the future.
Small digression: one way to quickly identify whether a service on the Web is conceivable as a document or necessarily only as an app, which I find intuitive, is this: just ask yourself (assuming there is no music or images): "the general content of this site would make sense if printed entirely on paper (even if it would no longer be hypertext), or not?"
If the answer is yes, then we are talking about something that can easily remain as a document, and we must be wary of anyone who claims otherwise.
Does the content of a forum make sense if printed in a book, a magazine, or a simple leaflet (objects commonly considered documents, even if physical)? Certainly, as well as that of a blog, a social profile, a chat room, or the results page of a search engine.
However, printing a calculator or word processing application makes no sense (at most, only printing data, entered into that app or obtained from its processing, makes sense).
## The appization disaster
The real problem lies in the fact that non-directly interactive websites, which we previously categorized into static and dynamic, are increasingly becoming apps, but without any valid reason.
More and more frequently I see more and more sites, which should be simple documents, not working properly without JavaScript.
We go from news sites where the article doesn't load, to blogs where the navigation menus no longer work, forums where message sections are not visible, forums that don't load at all, new search engines that absolutely don't work without JS ( and which present themselves as a private alternative to Google, it's a shame that Google works well even without running proprietary scripts and these don't!), and even social network sites that only show a blank screen if the JavaScript is not loaded.
These services that I have listed can all be classified as documents and, apart from very particular cases, such as those sites that encrypt and decipher client-side data deliberately to ensure that the server cannot read them (see [PrivateBin](https://privatebin .info){[:MdTgtBlank:]} for a notepad, [Element](https://element.io){[:MdTgtBlank:]} for a messaging app), can and should work fine without scripting ( at least optionally).
I don't like speaking against free and open software written in their free time by enthusiasts, who perhaps don't even earn money from it, but one thing that struck me negatively is that the plague of appization has also hit the Fediverse and its platforms.
For those who are unaware of this new virtual universe, I will say in short that it is an idea and, in practice, software, based on common protocols, to guarantee universal compatibility and interoperability, so that those on platform A can also communicate with those who are on
Mastodon and Friendica, at least for viewing profiles and their posts, or discussions with all messages, treat those who love the Web of pure documents well and, although their interactive applications do not work without JS (Mastodon totally, Friendica partially) even if they could, we are already at an excellent compromise.
If a person is not part of a certain instance, but wants to see content knowing the link, he can do it without fear, because he only has to load static documents in the trusted Web browser.
Then there are other platforms, Misskey, Pleroma, and Pixelfed come to mind. These here, to allow you to view anything, require you to have JavaScript.
Maybe you can even trust the authors of the software themselves, there are only the usual 10 around, but how can you trust when you find an instance you've never heard of before and managed by who knows who? Simple answer: you can't; although in theory one could check which scripts the instance loads and whether they conform to the original version (or, in the case of a fork, whether the changes made are really the ones documented), no one will do so, for the obvious reasons of which we talked about before.
The problem of the unverifiable authority of the code, clearly, becomes even worse for individual websites, not necessarily based on any known finished software, and which therefore have no real counterpart to make a comparison regarding the state of the code.
On the Fediverse, I say that the question particularly strikes me because I wouldn't expect it.
Honestly, from Big Tech, which relies on spying on users to earn money by selling their data, I expect a progressive abandonment of the Web of documents in favor of that exclusively of apps even just for reading a few paragraphs of text (which is happening, but slowly), considering the very large potential to subjugate users.
From those who develop software for communities that are concerned about some of the new privacy issues on the Web, and who therefore use less popular alternative software, I absolutely don't expect it.
## It will all end in tragedy
The situation, I fear, can only get worse. Although I am more than sure that my words and actions will not change the future at all, given that I believe in what I say and, incidentally, at the same time I also create content and services for the Web, I do what I can to create my things as I would like to see them everywhere.
So, for non-interactive sites, following the [progressive enhancement](https://en.wikipedia.org/wiki/Progressive_enhancement){[:MdTgtBlank:]} technique, I first make sure the basic stuff works without scripting , I use scripts as little as possible and, if I really have to, I do it for optional functions and features, and I try to keep the code (within my limits) compact and readable.
I personally appeal to you who are reading this.
If you build websites, consider taking what I've said into account, I beg you.
If, however, you only browse, perhaps try to start blocking JavaScript in your browser (Chromium integrates this as permission for sites, of which you can set the global setting to Blocked; on Firefox you need to install [NoScript](https:/ /addons.mozilla.org/firefox/addon/noscript){[:MdTgtBlank:]}), so as to keep JS deactivated for sites you don't know, and have the possibility to activate it temporarily or permanently for domains that don't work or that you already know and trust. Not only will you browse more securely and privately, but with less slowdowns and loading!

View File

@ -0,0 +1,79 @@
+++
Title = "☀️ Rasperino Solare (and other experiments gone wrong)"
Description = "When I bought a USB solar panel, I immediately put it to the test. It does a good job, but you have to have realistic expectations!"
URLs = "Posts/2022-06-23-0000-Rasperino-Solare-ed-Altri-Esperimenti-Andati-a-Male.html"
Categories = [ "Blog", "Rasperino", "Ecology", "Technology" ]
Dates = 2022-06-23
+++
A few months ago I bought a small [monocrystalline solar panel](https://www.amazon.it/Lixada-Pannello-Monocristallino-Caricabatterie-Cellulare/dp/B071Z1LGFV){[:MdTgtBlank:]} online, similar in size to those of an A4 sheet, for the sum of around €20 (on Amazon.it the sellers are all thieves, on Aliexpress it would have cost a little less).
[![Screenshot of a photo sent in chat. The photo shows the panel in its cardboard box. The caption reads "❗️ ENEL hates her! ⚠️ Find out how the Spacc Goddess began the slow but profitable path to energy independence! ➡️ @spacccraft".]({{< assetsRoot >}}/Media/Screenshots/ SpaccCraft-975.png)](https://t.me/SpaccCraft/975){[:MdTgtBlank:]}
## Electrical doubts
The panel declared, in the title of the advert, a maximum output power of 7.8W.
It has a USB output port, clearly maximum 5V. Still in the details of the advertisement, but in the technical specifications, there were indicated 1A at 5V output... which would be 5W.
Considering that the panel is declared to be 7.8W, and 5V photovoltaic cells do not exist, but 6V cells do, it is assumed that it should be able to output a theoretical maximum of 1.3A of current.
The output voltage, however, as we said, does not go above 5V, so a conversion is involved (impossible, considering that the panel itself is a slab less than 1mm thick, and the protruding part with the USB port will be just 15x10x5mm.. there is no space), or a trivial voltage truncation, where the excess energy does not translate into a greater output current, but only in little heat..
And therefore we have a maximum theoretical output of 1.3A at 5V.. i.e. 6.5W.
### Life advice..
This preamble, apparently useless, is to remind us that low-cost cinema cameras with zero documentation (this thing doesn't even have a manual or writing on the back!) can only be trusted up to a certain point, beyond which to resolve the problems In case of doubts, it is necessary to rely on the use of other china machines.
In my case, a USB multimeter, to be placed between the panel output and the input of a device capable of absorbing enough current. I don't have this little object, and I realize that I would be wise to buy it (it's cheap anyway), because at the moment I can't have any certainty about the performance of the magical silicon slab.
## Field tests
Thanks to both the need to test the full possibilities of the small panel and the desire to make use of it to reduce my parents' electricity bill by 0.001% (and satisfy a tiny part of my individual electricity needs with totally clean energy), I so I started doing simple practical tests in the field (the balcony of my house).
### The very first test
To tell the truth, I did the very first test away from home, the day immediately after the product was delivered because, for unrelated reasons, I was actually away that day.
On that occasion, the only one out for now, I only tried to recharge the battery of my smartphone (6000mAh).
I did 3 different tests, the first two lasting about 15 minutes in the few hours before midday, when the sky was clear, with the panel held by me in my hand to make it better catch the sun perpendicularly (ideal for a monocrystalline).
I first tried to charge the phone while it was on, stalled and with all the radios off (but not in Android's deep sleep state), but unfortunately there was no way, the phone consumed so much energy that it was unable to recharge, it could only discharge slowly. I don't remember very well, because I didn't think of recording the data, but it seems to me that, on the app I use to see the charging statistics ([AccA](https://github.com/MatteCarra/AccA){[:MdTgtBlank: ]}), were only marked on the 300mA input.
Trying the same formula immediately afterwards, but with the phone turned off, it seems to me that in 15 minutes it only charged 2% of the battery... it would practically take 12.5 hours to charge from 0 to 100% if this is the case.
I did the last test around 2pm, when the sky had unfortunately darkened. I placed the panel on a surface and used the phone normally, listening to music and I think using online messaging apps. As I suspected, it didn't recharge, but at least it was almost without running out of charge, which is still good considering the weather conditions.
![Screenshot of a photo sent in chat. The photo shows the panel resting on the roof of a parked car, with a connected cable leading down. The caption reads "Our car is parked and I put the solar panel on top of it."]({{< assetsRoot >}}/Media/Screenshots/OctoVoLTE-16754.png)
### Let's look further..
Okay, let's say that the very first test, outside with the phone, was a bit of a failure.
However, without losing heart, in the following days I carried out other tests, all from the balcony of my house, some of which I will now give a rough overview of, because they were done once and with little data at hand.
The panel seems to be able to turn on my NodeMCU even with very little light, and I had no doubts about this, a microcontroller absorbs very little current, we are talking about tens of mA on average.
I haven't tested any loads, but not that there can be any that big, the maximum you get with the NodeMCU is 250mA when you turn on the WiFi.
On a day with annoying clouds that come and go, another phone of mine (with a 3100mAh battery) manages to charge, but with difficulty, especially because when the phone enters or exits charging (and it happens in these light conditions), the screen turns back on and wastes energy.
When turned off, it is even worse, because the screen always turns back on at maximum brightness and for longer. I found this last detail funny... basically, charging the phone when it's off in this way is worse than charging it when it's on.
On a more or less OK day, but still a modest day at the end of winter - beginning of spring, I managed, in this case too, not to load but to download a little more slowly, my first generation Nintendo Switch console (the one with the least efficient SoC), with Ubuntu turned on and the software working.
Something that there is little to say about, but which is undoubtedly a victory, is that at least I can charge my power banks.
I've tried 3 of my 4, clearly the smaller capacity ones load sooner, but in any case all of them fill up well without any problems. One that I don't know how much it is, the memory would tell me 4000mAh, it recharges completely in just over a sunny day. A 5000mAh one, in maybe a day and a half.
By charging these small batteries you can then easily charge or power devices that do not have enough current if connected directly to the panel, such as my smartphones or... a Rasperino.
### Solar Rasperino?
We are finally at the end of all this ambaradan, with my tests on a Raspberry Pi 3B.
The idea popped into my head after I unfortunately left the magical product unused for a while, not knowing what useful things to do with it. I mean, I bought it because it's definitely useful to have a little thing like this in emergencies, but if I can put it to good use in the meantime, that's even better.
The first thing I thought about was to configure BOINC on Raspbian, a distributed computing software that can be used to contribute to scientific research projects, while earning a few cents a month (rip) in a kind of cryptocurrency, the [Gridcoin ](https://gridcoin.us){[:MdTgtBlank:]}.
As I already said, the Raspino must be powered by the powerbank, the panel directly does not give it enough current. It seems to turn on, but in reality it seems to go into bootloop.
Well, I won't beat around the bush too much: while (with the same powerbank, I think 4000mAh) for some low load applications, like [Pwnagotchi](https://pwnagotchi.ai/){[:MdTgtBlank:]}, the Pi can stay on for hours even with a backlit LCD screen connected... the CPU at 100%, which performs complex calculations, eats so much of that current that the battery flattens out in just 1 hour.
[![Screenshot of one of my toot. The photo shows the panel hanging on my balcony with hooks, with a cable connecting it to the Rasperino fixed to the panel itself. The text reads "#RasperinoVitaEcologica I fixed the Pi to my solar panel with the fabric elastic bands of the disposable masks (before throwing them away, I detach the elastic bands, wash them, and keep them), and it seems to have just the power it needs to work in the afternoon. Today I flashed the new SD with Raspbian, for now I choose to use the accrocco to run #BOINC, a distributed computing tool with which you can donate computing power to scientific projects. Tomorrow we will test how it goes BOINC".]({{< assetsRoot >}}/Media/Screenshots/mastodon.uno-octo-108211397314015161.png)](https://mastodon.uno/@octo/108211397314015161){[:MdTgtBlank:]}
_Psssss.. if you want to see other photos of the panel (3) and in a slightly more decent quality, I put them on Pixelfed: [pixelfed.uno/p/octo/426839557817260168](https://pixelfed.uno/p/ octo/426839557817260168){[:MdTgtBlank:]}!_
## The reality of the facts
Apart from this thing, which even if it doesn't make me money in practice would be useful as it is beneficial for scientific research, I have no practical uses in mind for the Rasperino Pi 3 Solare. Maybe a Pi Zero would be better: apparently, other people in the throes of madness (but better equipped) thought of using that to mine Bitcoin, with a small panel similar to mine ([YouTube/CbpfNU7oaws](https://invidious.snopyta .org/watch?v=CbpfNU7oaws){[:MdTgtBlank:]}).
For now, I use the small panel sporadically to charge my power banks, which I discharge when I happen to use them around to charge my smartphone.
If there's anything I learned from this story, it's that I should buy the damn USB multimeter.
I should have done it almost 4 months ago, but instead I'm procrastinating so as not to spend money.

View File

@ -0,0 +1,62 @@
+++
Title = "⌨️ The idea of a homemade physical smartphone keyboard"
Description = "With difficulty I bought an ultra-compact keyboard. The idea is to build a keyboard cover for my phone, but I encountered problems!"
URLs = "Posts/2022-07-03-0000-The-Idea-of-a-Physical-Keyboard-for-Smartphone-Made-in-Casa.html"
Categories = [ "Blog", "Technology", "Mobile", "DIY" ]
Dates = 2022-07-03
Lastmod = 2023-03-21
Image = "{{< assetsRoot >}}/Media/Cover-Tastiera-mobilefun.com.avif"
+++
Maybe a year ago, partly out of curiosity and partly because I already imagined that it might have been something convenient, I developed a marginal interest in smartphones equipped with complete physical keyboards.
I don't mean the damn numeric keypads, which you still see on non-smart phones today, I mean keyboards with dozens of individual keys dedicated for letters and symbols.
This type of keyboard was already rare to see on phones prior to the smartphone era: it first appeared not on ultra-cheap models, but in any case it might not always be very comfortable due to its small size.
The more smartphones began to spread, the more physical keyboards began to disappear, even though they have rarely been present on some modern phones, and even of generous dimensions.
I don't remember if this time last year was just before or shortly after I bought a new smartphone, my current one; the fact is that I had to choose it based on precise and restrictive criteria, first and foremost the cost and, unfortunately, there was no low range with a physical keyboard.
## A new idea
As time passed I forgot about the issue a bit, until, a few weeks ago, I came across a video on Invidious ([YouTube/JXdLzinnqms](https://invidious.snopyta.org/JXdLzinnqms){[: MdTgtBlank:]}) showing a homemade modification to a smartphone.
The video shows, and the linked discussion on cover is thought out.
I immediately had the desire to create something like this but, as I searched, I started to think that this type of cover is no longer produced by anyone... it was absolutely impossible to find one, not only at a good price, but at all. Neither online nor in physical stores.
Since there was no hope, I tried to change my strategy slightly and look for a very small Bluetooth keyboard, but without any strange supports such as covers included: just the rough keyboard, I would have made my own arrangements to attach it to the phone.
The search on Amazon was absolutely fruitless, meh. On AliExpress, for around €13 there was the keyboard I was looking for, but for me buying there is a hassle to say the least. Luckily, however, one of the many all-purpose housewares (those that sell billions of films) in my area had the product I needed, for just €2 more than I would have paid for it at Ali.
A bargain, so I bought it.
![The front of the mini-keyboard]({{< assetsRoot >}}/Media/Mini-Bluetooth-Keyboard/Keyboard-Front.avif)
## After purchase
At home I took it to charge for a while and tried it on the fly. What can I say, it worked and I didn't find the feeling when typing bad, even though we're talking about a membrane keyboard.
So everything is fine.
Or so it seemed.
The next morning, I try to turn on the beautiful little object again, to do some more tests. It doesn't turn on. That? As? I put the keyboard back on the charger, and it actually works after two minutes.
How strange, yet I kept it charging for hours the day before. Maybe it didn't charge well from my PC port, so this day too the keyboard remains charging, this time from the block I use for my cell phone and other devices.
### Investigating oddities
The next morning, same issue. Whatever the case, it's evident that the battery is taking a heavy drain, out of nowhere, for some reason. For the record, the keyboard has a physical switch, which I never forgot to turn off after putting the keyboard away... all very strange.
I decide to let it charge a little, then disassemble it, and measure the voltage of the lithium battery soldered to the board with a multimeter, which I notice drops by 0.01V approximately every 10 seconds. Oh.
Assuming the board is properly designed, so that the physical ON/OFF switch cuts the current between the battery and the board where it should, and that the battery management circuitry isn't a dud, a problem like this is to blame. it can only be one: the banal old age of the battery.
![Photo of the small keyboard battery]({{< assetsRoot >}}/Media/Battery-SCW302030-2015-08-27.avif)
In fact, not only was the battery visually quite swollen, but it has a date on the outside: "2015/8/27", almost 8 years ago.
I would swear that the keyboard itself is even older, considering the references to a slightly earlier era present on the box and the instructions: iPhone 4 and pre-7 iOS, Galaxy S4 and a visibly very old Touchwiz, Windows Mobile 6 and Windows 8 desktop, Symbian 3, the PS3... well, it's been a while.
![Scans of some parts of the back of the box and instructions, containing references to old things.]({{< assetsRoot >}}/Media/Mini-Bluetooth-Keyboard/Rimandi-Vecchi.avif)
## Bad ending
What can I say. Should I have expected a problem like this? Maybe yes. Surely, however, I doubt that other people in my place would have expected this.
Finally, the only thing I can say is that this article should not have come out; or rather, not with this end. I should have talked about the already made Prototype 0 of my smartphone stand that adds this tiny keyboard, but, unfortunately, I feel like I haven't had a chance to test it enough.
Hoping to be able to solve the battery problem (but I think so)[^New Battery], in the next article, of what I believe will be a series, I will explain how I fixed everything, and I will illustrate the curious Prototype 0.
[^New Battery]: **Update 2023-03-21**: I was passing by here, fixing some internal things in old files, and I thought: even if in the end I haven't (yet) written any articles about Following this, at least one update note here is worth writing. **Shortly after this post** I soldered an old lithium battery I had around the house, more or less the same size, and... **the keyboard now works** perfectly. Not bad come on, **I solved** the problem **without spending** any more money!

View File

@ -0,0 +1,126 @@
+++
Title = "💻 How I fixed my laptop (with €25)"
Description = "As my laptop got older, and the keyboard broke more and more, I slowly stopped using it; until, now, I fixed it!"
URLs = "Posts/2022-07-09-0000-How-I-Fixed-my-Laptop-with-25-Euro.html"
Categories = [ "Blog", "Technology", "DIY", "Ecology" ]
Lastmod = 2022-07-09
+++
For almost 7 years I have had an Acer laptop, [Aspire V3-572G](https://www.acer.com/ac/en/US/content/support-product/5389){[:MdTgtBlank:]}, undoubtedly now a bit old, without praise and with some infamy.
When it was purchased, it was essentially a mid-range notebook like any other, without any notable features. I mean, I used it quite a bit and it more or less always did what it was supposed to, until about 2 years ago I started demanding to use heavy games and development tools, at which point the new (desktop) PC was great. obligation.
## The current state
All in all, with GNU+Linux as the operating system, the [Intel mitigations](https://linuxreviews.org/HOWTO_make_Linux_run_blazing_fast_(again)_on_Intel_CPUs){[:MdTgtBlank:]} not installed (yes, I actually deleted the microcode, instead block its loading), and an SSD installed in place of the HDD years before, the machine is still more than good for many activities that today I carry out primarily with the desktop PC.
The Intel [i5-5200U](https://www.intel.com/content/www/us/en/products/sku/85212/intel-core-i55200u-processor-3m-cache-up-to-2 -70-ghz/specifications.html){[:MdTgtBlank:]} itself still grinds well, and the 4GB of RAM isn't a huge deal if you have a light system stack and aren't keeping 50 programs open at once.
## A little problem
Where are the infamies, I hear you think?
For at least a year now, my use of the laptop has dropped significantly, because an initially small problem has, all of a sudden, become enormous.
### The smasher
Going in order, - I don't remember precisely, but we're talking about at least 3 or 4 years ago, when this was my only personal PC - the problems started when the W key stopped working, over the course of a few days. Az.
It's true that I'm a Linux user, and that at the time I was also excessively gamer, but I never hammered that or any other button, contrary to what the stereotypes about my categories may tell you.
The lesson to be learned here is: if you are at home, and therefore have the opportunity to use an external keyboard, it is better to use that one to play, otherwise over the course of a few years you will completely burn out the key you use (in many 3D video games). to move forward.
The funny thing is, like I said, the button broke within a few days, not right away. Initially it only became hard to register the pressures, which inevitably led me to press harder and harder, until I evidently **broke through** it.
Acer shit? I'd say, **Acer shit**.
But, it seems, all laptop manufacturers, even the big and famous ones, often mistakenly associated with quality only because of their fame, too often churn out products with terrible design or construction errors. The laptop that unfortunately happened to me, as we understood, was no different.
### The consequences
At this point, the PC had become only slightly inconvenient to use in some situations.
There were no big problems on my desk, I connected a USB keyboard and that's the end of the story.
In other situations, typing the W (you don't need a sledgehammer to write in Italian, but you do for many other things) began to require the use of the on-screen virtual keyboard, with the mouse to press the W, which would then start to go around CTRL+C and CTRL+V whenever I needed.
In any case, from that moment, the use of the notebook keyboard reduced, both because I used an external keyboard when possible, and because a little later I assembled the new PC and started using the laptop less in general (difficult do otherwise, when there is comfortable space on the desk for only one external keyboard, which for obvious reasons must be connected to the fixed PC).
What is very strange is that, since about 1 year ago, despite little use, many other keys quickly started to fail, out of nowhere. I can't say if any other keys then completely died, but certainly at least 60% of the keyboard started to want **beats** to register the pressures.
This is where my laptop use plummeted.
## I realized
Just a few days ago, I don't know why, perhaps because with the desktop PC I don't even have the convenience of moving to another room to use the computer - something I would like to do to escape the terrible heat that develops in my room in the summer - it occurs to me that I would like to use the laptop.
I spend like 30 seconds thinking about why the idea unconsciously has a bad aftertaste for me, and then it occurs to me... I'll quote verbatim what I wrote on my Telegram channel (which I use as a microblog) at that moment.
> Hm, I just consciously thought: "but why do I practically never use my laptop even at home where it's convenient for moving from one room to another?"
> Then I remembered that like half the keyboard doesn't work
> 1. Acer Shit
> 2. Incredible how, because of the broken keyboard, I unconsciously began to develop a sort of passive repulsion for my (only) laptop, slowly stopping using it
> If only it were easy to buy a replacement keyboard...
Rightly, in the comments, a person points out to me that I should have easily found the replacement keyboard I need on Amazon.it and... he wasn't wrong.
I honestly should have bought it right away when the W broke, but, trivially, I don't know why I didn't. My memory tells me that I couldn't find it on Amazon at the time, but honestly I don't know how much to trust. And in all this other time I didn't think about it.
## The replacement keyboard arrives
Without wasting too much more time, I made sure to order it (3 days later, but it could have been much worse), and after 2 days it was already at home (earlier than the reported delivery period). 20+7€.. well spent? It's **a must see**.
I think the price of the keyboard is right, I didn't like the shipping price >:(.
![Detail of the box in which the keyboard arrived. The background is white and features the product distributor logo (new NET)]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Box-Front-Left.avif)
The keyboard was only available in black, and everything else on my PC, including the factory keyboard, is white instead.
The chances of something horribly bad coming out are high, but I'm a Linux user: I've been trying to fix my broken laptop for a long time instead of telling people it's the best computer you can use; Imagine if I care whether it's bad or not, if it works it's fine.
## The replacement
I don't lose heart, and I begin to unscrew the countless screws that hold the laptop body together, and I separate the plastic sections. Then I disconnect the 3 flex cables for the power button, keyboard, and touchpad, and lift the upper part of the body. Nothing new, however, I already had to do this procedure when I installed the SSD.
After this, however, other screws. _Damn!_ All these screws, and it becomes a mess to put everything back in place. No more screws.
![All external laptop screws, removed and collected]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Screws.avif)
But we must continue. Once the screws _(damn!!)_ that hold the keyboard together have been removed, between the external plastic support and the internal metal one, you can remove the old keyboard and put the new one on, and then do everything else in reverse.
Or almost.
![The plastic (external) and metal (internal) frames, which serve to hold the keyboard together, are separated]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Keyboard-Frames-Disassembled. avif)
### Chores "while I'm at it"
Since I was there, I also wanted to take the opportunity to clean the fan and its filter a little, which over the years have accumulated dust, allowing less air to pass and thus allowing the CPU to reach a good ~50°C in idle .
I thought more powder, honestly, oh well.
![The fan disassembled, with some dust removed and collected in a ball]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Ventola.avif)
I also checked the thermal paste on the fly (perhaps too quickly).
To do this, I had to turn the motherboard upside down, after removing even more screws. You could see some of the paste outside the CPU perimeter, and what little I saw didn't seem particularly dry. I don't actually know how often the thermal paste should really be changed unless it's very dry, so I left it alone.
Should I actually have unscrewed _(what a pain!!!)_ the heatsink from the processor and seen what the paste was like there? I don't care, no more screws.
There would be another problem, which I wanted to take advantage of to fix, but about which there was no way to do anything.
Also many years ago, the tip of a faulty audio cable broke, getting stuck in the 3.5mm jack port of the laptop _(damn!!!!!)_, and all my poor attempts in the past to remove it from the outside have always failed .
Unfortunately, even internally, the door is an almost completely closed piece of plastic, so my idea of inserting something into the internal perforated part also failed, because simply there is no hole. Maybe nothing will happen if I create the hole with the right tool, manage to push out the stuck piece and the door works as it should again... but, for now, I'll leave it alone.
You can see that I will continue to use the USB sound card (€6 on Amazon) to use earphones, as I have done for years now.
## Work finished!
With a bit of difficulty, I put everything back together, and admire the new state of the PC - which among other things, in idle after startup, now that I've cleaned the fan, reaches ~40°C, I would say definitely better than before !
![The laptop reassembled and turned on, with both the new keyboard and the old one (placed on top) visible, as well as my desktop]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Laptop- Reassembled-Acceso.avif)
What can I say, you can see that I use GNU+Linux.
Not only does the laptop now have an ugly aesthetic contrast (but at least it works!), but in the photo you can see what the old white keyboard looked like: filthy and yellowed. Oh, at least it matched the theme of my terminal emulator, light solarized - it did and doesn't anymore, unfortunately, I'm a bit sorry.
Regarding the old keyboard, I must make it clear that I lost the plastic of the W key after the key itself had already broken, so don't go saying that my keys break because I start detaching them: the truth lies in the exact opposite.
This is also why I won't try to remove the black markers from the new keyboard to put the old white ones in their place... it's not worth the risk of breaking a few keys.
Small **bonus**: a photo of the bottom of the old keyboard.. the W key is **actually broken**.
![Detail of the bottom/back of the old keyboard, with a hole corresponding to the W key. The surrounding area has a difference in height of a few centimeters in diameter, with a depth barely perceptible to the naked eye. You can also see sink marks in the metal around the hole, about the diameter of a pin]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Old-Keyboard-Breaked.avif)
## The right choice
To conclude: the keyboard, from the little I have tried it, works well, except for a few keys (like SPACE), which seem a little hard and not very elastic (but which can still be pressed).
I only regret not buying it sooner.
A curious detail, but which absolutely doesn't make me think I've made a wrong choice, is the fact that an area of keys on the left is not exactly level with all the others. It doesn't seem to be a problem in practice but, aesthetically, well, it makes me laugh.
![The leftmost keys (W to F) of the new keyboard, appearing just slightly sunken inwards at one corner]({{< assetsRoot >}}/Media/Repair-Aspire-V3-572G/Keys -Sunken.avif)
Don't throw away your laptops if they have some small problem that can be solved easily and cheaply.
If the keyboard breaks, you change that; if Windows becomes unbearably slow, install a Linux distribution (GNU is recommended, but not mandatory!) that meets your needs.
By doing so, you not only save a lot of money; electronic waste, the so-called e-waste, is reduced and therefore a minimum amount of good is done for the environment.
_Note: Some of the photos in this article are available in JPEG, less compressed, on my Pixelfed profile: [pixelfed.uno/p/octo/451398427740616761](https://pixelfed.uno/p/octo/451398427740616761){[: MdTgtBlank:]}_

View File

@ -0,0 +1,88 @@
+++
Title = "🥸️ How our social digital footprint screws us"
Description = "For the most varied reasons, even legitimate ones, you can find yourself wanting to hide your past identities. Sometimes, however, the details ruin everything!"
Categories = [ "Blog" ]
Dates = 2022-07-17
+++
This story, more practical than ever, is incredible in my opinion.
Not only does it demonstrate what lolis can get to with too much free time, like me; shows how everyone among us has a kind of "social fingerprint" that, if not adequately disguised, can identify us.
## Important notes
Before starting, however, I need to clarify a few things.
Since the only thing I want is to share a story that I think is interesting and has some food for thought - and my hobby is not to ruin people's lives - some details are omitted from the story, while others are invisibly altered, in order to to respect the privacy of the subject of the story. His old and new names will literally be replaced by "_Deadname_" and "_Censored_" respectively.
Everything, however, will become clear as you read.
## A special memory
So, this story actually began at least 8 or 9 years ago.
I don't remember exactly when, but let's say that around that time I discovered _Deadname_. He created content on the Web and, other than the fact that I really liked it, there's not much more to say.
Some time later, much to my chagrin, he announced that he would stop making new stuff. From one day to the next he said that the social spaces that were his current domain at the time no longer represented him as a person, or something similar.
Furthermore, a little later he also made his old contents disappear from the internet.
At the time I didn't have the slightest idea of what he could mean by such a speech but, looking back with my current knowledge, both about my person and what I discovered to be his, I understood perfectly what that sentence meant.
Meanwhile, even though _Deadname_ had become just a past memory, the years continue to pass and the Earth continues to turn.
On some occasions, her character comes to mind, not only to me alone, but also to other people who remember what she was.
For example, sometimes a friend of mine and I, speaking in private, since we were first and foremost in this personal situation, joked by saying things like "_Deadname_ deleted everything because she had to settle".
And so, every time, she laughed. If something like this, thought and said at random based on nothing, had ever proven to be true, then we would have officially become Official Universal Based Distributors of redpills.
## A (seemingly) new personality
Anyway, back to the present day; a few weeks ago, precisely.
As practically always, I was at the PC, doing things and seeing them on the Web. At a certain point, I don't even remember exactly how, I came across a profile of _Censored_, which I found to have some interesting things.
I decide to watch a video of him and, immediately, as soon as I open it, there is some detail that takes me by surprise. The voice, in particular, strikes me as inaccurately modulated. It's a concept I can't exactly explain. In short, we are talking about that kind of modulation which in many people does not raise doubts apart from "this voice seems strange to me", but which in me, having a similar personal experience (but I would say more unsuccessful), makes one think "but this person is transgender?"
Evidently, however, at that moment I had more important questions in my hands, because, among all his public profiles, I decided to just quickly look at the biographies, some original textual posts, some reshared ones, some photos including some selfies, and just a few second of other videos.
I found no indication, even veiled, that he might be transgender. I get annoyed immediately, close everything, and go back to mine.
Just a few days later, I come across _Censurato_'s profile again. A different video catches my attention, so I start watching it.
The more I listen to the voice, however, the more familiar everything becomes. In just a minute I understand that, the voice itself, the way of intoning it, and even a little bit of how the video was made... everything, everything had an aftertaste of _Deadname_, despite the two characters being of practically opposite genders.
## The investigations begin
I decide to let her friend know this immediately before she, curiously, says she thought the same thing.
The stakes this time are really too high to pretend nothing is happening, so we start via chat to collect elements, of any kind, that could coincide between _Censored_ and _Deadname_, cross-referencing everything we can obtain about the person, and the little that we have more left.
We start with interests, which all seem to match, even the strangest ones. Even the taste in niche memes seems the same.
Even some personal and social details - such as about his family, his cultural status, or the area in which he lives - are consistent with _Deadname_'s past (even if only my investigation partner remembered these details, I didn't).
Some content still available online, because it was created in collaboration with other creators, was useful in refreshing the memory of further small details, about her childhood for example.
## Big shot!
All these discoveries, however curious, could very well have been a series of coincidences.
However, we did the really big coup, which removed all doubts, because:
- Some particular physical signs, compared between photos of _Censured_ and a few deleted videos (but which we have kept for years!) of _Deadname_, match perfectly;
- One of the online services used by _Deadname_ at the time keeps a publicly accessible history of all username changes made; the account that was created with the name _Deadname_ has changed its name over time, to _Censored_.
## Case solved
And it is exactly like this, with both small and large details that fit together perfectly, that the puzzle is officially complete: the two characters investigated are the same individual.
The redpill said without knowing, therefore, turned out to be so.
I, however, have no idea why _Censured_ necessarily had to embark on this undertaking to cover his old tracks. I understand, now, why he wanted to delete his old contents: because the character that appeared in them no longer corresponds to who he is today in terms of gender - but I don't understand why pretend that the past never existed .
I would say that I am quite happy to have found again after so many years, even if as a slightly different character, the same person who managed to entertain me in the past, and I am happy that he still has the passion to do what he did well.
## The social digital footprint
This story - which I would say has a happy ending, because I have revealed an important mystery for me - has a clearly visible dark side: it can be said that it proves the existence of a social digital footprint, as I like to call it, which every person has.
With this term I mean a truly unique identifier, which allows anyone who wants, if the basic conditions are met, to identify a specific person always and in any case, despite any partial changes in identity.
I see this imprint as composed of everything that is objectively true about a given individual: the things he likes, the things that have shaped his personality, his social connections, his bodily characteristics, and the things he does or has never done, as well as who knows what other elements that I now forget.
We are not even talking about something strictly linked to the online world, clearly, even if in some cases, as we have seen now, some things about us that touch the Internet form strong elements of the imprint.
### How to protect yourself
As long as you are not doing it to escape, so to speak, the consequences of complete immorality, wanting to reset your social footprint, to live in the world as a totally new person, is legitimate; that's why I protected the identity of the person in the story.
But then, how do you do it?
Protecting yourself from tracking is possible, but it is not at all simple. Just as to protect your computers from web tracking you need to use browsers like Tor Browser which - when communicating with other computers - omit some data and mask others, to protect your personal identity from social tracking you need to avoid sharing too much of yourself with the world, even going so far as to lie if necessary.
It is undoubtedly impossible to hide what some of the things we are passionate about are, if we have the desire to share them with the world, and perhaps discover like-minded people.
Other things, though - for example, what relatives you have, the name of your first pet, what places you frequent, or how your passion for something began - if you're trying to erase your past and present yourself as a totally new person, it's better not to tell them out loud.

View File

@ -0,0 +1,103 @@
+++
Title = "📈 sitoctt - From 3 months ago to today, the beginning and the reasons"
Description = "After a few months since the birth of sitoctt e statistico, I look back to see the small - but certainly important - progress made so far."
Categories = [ "Blog", "Internet" ]
Dates = 2022-08-26
+++
This article can probably be considered as the first of a series on the _site philosophy_, if you want to say so.
To start, what is better to talk about, if not everything that led to the **birth of the site** and began to characterize it?
When, 3 months ago now, I had just started to conceive the ctt site, one of the things I felt was that I didn't have a **place** in which to arrange my stuff - the stuff to be preserved and shared publicly, at least - in a way that made it **tidy, available, watchable, usable, and leak-proof**.
## Let's go back to before
To get to where everything is now, however, it took time.
Do we want to go back to the end of **May** for a moment, to see how things were back then? Let's start with a technical table!
| | Before | Now |
|---|---|---|
| Total weight of site sources | 40 KB | 548 KB |
| Total weight of the site compiled | 24 KB | 660 KB |
| Total lines of code in static | 261 | 1314 |
First of all, the entire site in source form took up just **a few dozen KB**. Normal, _the pages could be counted on the fingers of a severed hand_ and they weren't who knows how rich.
Now, however, we are at **half a MB** excluding all multimedia assets (except the favicon).
Even static, my static site generator that I started developing at the same time as the CTTT site was nothing special: **just 250 lines**!
Not that the current **1300** are many - not at all, and it's better that way - but **the growth is visible**.
However, if, with an image (ignoring that my font didn't load, even though I had already included it at the time), we see how the site was in practice in its first days... ahhh, but _how rough some of the details were_ , compared to today?
![The home page of the sitoctt, seen as it was on May 25.]({{< assetsRoot >}}/Media/Screenshots/sitoctt/home-2022-05-25.png)
My _rambling speech_ still appeared more or less as it does today on the home page, but the rest is barely recognizable.
**Everything seems emptier**... since all the little icons and buttons that I now have at the edges and in the global menu are missing. Yes, the latter already existed; its usefulness in those days was almost nil, considering that the pages present were number 2, but let's say that it was a good thing to have created it immediately.
### The placectt
The **writer** in the center of the screen, however, has something wrong with her.
Oh yes, there is a curious little anecdote - perhaps not necessary, _but for me it is because I'm in charge here_ - which needs to be told properly.
Those who followed the creation of the site in its primordial days already know this, but the site lived under the name "**postoctt**" for a good 2 weeks.
In the initial moment of imagining this thing, in fact, the platform did not exist in an exact and defined way. We thought about the "place", but in a vague and still confused way.
In the end, predictably, I settled on a website.
For some reason though, the name "postoctt" didn't stink to me soon enough. It took me a long time to realize that that name was reminiscent, at least in part, of something related to the post office... A situation, I would say, not exactly optimal.
So, I thought about changing the name to "**sitoctt**".
## Octt's site
The only really important thing, however, has never changed: "**occt**".
At the end of the name there is always Octt, that is me. Whether it's a site, a place, a post office, what matters is that it's **mine**; and speaking precisely of this, of the fact that the site is mine, there is a lot to say.
The site is mine because I have **complete freedom** to make it the way I want.
If already in the mid-90s the only real limit for a website was the **creativity** of the person who built it, today the **potential** of the Web platform are truly **infinite**; although, in a certain way, it doesn't seem that way at all if you only frequent the common Web.
The sites of the "_non-personal_" Internet all have the same same and banal appearance.
Many blogs or demo sites use recycled graphic templates. Modern social platforms (Mastodon, Friendica, Pleroma, and so on and so forth) limit customization to a photo, a banner, and a description. Stuff like [Misskey](https://misskey-hub.net/en){[:MdTgtBlank:]} already does more, but it absolutely doesn't get to the levels of **total customization**, with **granular precision **, which only a website - even a forum like those of the past, and not a private space - allows.
### Great expressiveness
And here's another of my desires that _unconsciously_ condensed itself as the purpose of the site: **creating something that** I felt **was missing** not only **for** what affects me, but the whole **of the community of Artisanal web** in general.
There are several other sites founded on this idea, of using the Web with tools, including manual ones, to express one's personality, creativity and imagination, but: almost none are in Italian (one day I will talk about this too), and in any case I am pleased to contribute to the growth of what can be considered a global collection.
With websites you can choose in **the smallest details** animations, colors, backgrounds, fonts, arrangements, alignments, categorizations, embellishments, interactions, but always **remaining in the field of documents**.
Really nice is the fact that with handwritten CSS, even just a few dozen lines, you can already establish a **unique graphic identity**. Then the real bulk of the code only translates into minor (but still appreciable) details.
![Photo of the monitor showing part of the CSS of the sitectt.]({{< assetsRoot >}}/Media/Photo/CSS-sitoctt.avif)
Leaving aside the means: this, the idea of creating a **collateral gallery**, was one of my initial goals. In recent months I've left it aside a bit, in the sense that I've mainly focused on creating content, thinking that _✨ the sparkling details ✨_ I could put them when it happens.. and I should start doing it, honestly! At the moment only the home page has great particularities, if we exclude the overall style of the site which I have worked on with a minimum of regularity.
## The importance of content
Not that it's a bad thing to put **content first**, anyway; in fact, it's a good thing. A site without real content and not regularly updated may perhaps be a piece of art if made to be beautiful or to have intrinsic meaning - but in itself it is not useful.
It's something you find, admire, maybe share... and it all ends there. It is the content that gives real meaning, that guarantees a long life for the site, and keeps the public coming back from time to time.
### The organization
Contents which, for goodness sake, must also be decently **ordered**.
I _try_, it took me a long time to arrive at what I have now, with a global menu that first of all includes fixed pages, such as the home page, because they have no specific category or because they are of particular importance.
Immediately following this, I have a list of sections, which I wanted to call "**Collections**". They are links to pages that contain lists of any other page of the given topic. This path is also circular, considering that, from the individual content pages, you can click on the automatically generated entries to visit the pages of the relevant categories.
For now, there are perhaps a little few pages in the classic sense. I won't repeat them here one by one because _well_ - but even if I did, I wouldn't be able to create a wall of links. Their particular reason for existing is told on them.
The real bulk of the site is in the blog articles.
For me there is a **conceptual division** to be respected between the two types of pages. Traditional ones can be something incomplete, always updating, work-in-progress by nature; the article pages should instead be created once, properly, and then ideally never touched again. I can create the normals as a draft, and update them a little whenever I want; the blog ones, however, remain private while I write them, and then, when they are finished, they become public. The latter require me to work more in the moment, and therefore they come out more rarely, but they are more loaded with **content**.
### Digging up some things
New little things, made especially for the site, I have put and will put many, but the idea is to fill the place with **even old stuff**.
Some non-exclusive content is still already available in my other places on the Internet - in some cases without a license - like perhaps on my Mastodon profile; others, like very old posts from my Telegram channel, are archived and inaccessible except to me.
Those not archived are simply messy and poorly preserved, as well as without guarantees for those who want to copy or reuse them; those, however, which for one reason or another are archived, it is as if they did not exist for the world, and it is easy for me to lose them too.
Some of this data may have value, so this is all **a shame**.
Like a month ago I announced with my [**decretocto**](../PicoBlog.html#-2022-07-21-Decreto-fu-fatto-2) <!-- ({{< assetsRoot >}} /Files/Decreto-20-luglio-2022.pdf){[:MdTgtBlank:]} --> (_we didn't understand a thing, right?_), this is something that requires tedious work (_taking the old , evaluate their quality, copy the text, paste it into the new text files, layout it well, download photos and videos, optimize them well and upload them..._ nothing but the fun of creating, here it's an assembly line!), but ** it must be done**.
With my free time I have already started doing it, and I will continue.
Posts from my [old blog](https://noblogo.org/loli-documentatrice){[:MdTgtBlank:]} should also be archived here, again for organization and preservation - but those are easier.
To conclude: it doesn't matter which ones, but in any case ***the contents are the meaning*** of the site. They are, however, only because they are freely available to anyone.
What does this **really** mean? Anyone who has read [home](../index.html) should perhaps know this. I don't dare add anything else, in any case; you will have to wait for a next article, one in which I will pick up the topic where I leave it now.
---
_You too are the meaning of the sitectt. Thanks for reading! 💖_

View File

@ -0,0 +1,94 @@
+++
Template = "loli-documentatrice.html"
Title = "The unexpected advantages of the Linux stick"
Categories = [ "Blog", "Technology" ]
Date = 2022-05-07
Lastmod = 2022-08-13
Feeds = false
+++
One thing I did months ago that, so far, has proven to be a **winning choice**, was **install** a **Linux**-based operating system, in persistent mode, * *on** a small **USB stick**.
The reasons why I wanted to do it initially are perhaps simple and banal, but it gave me, upon careful analysis, some **unexpected** advantages that were much more than welcome.
### Why was the pen needed?
The initial need for the key arose months ago from the fact that, in the computer room at school, I had to, like everyone else, log in to my GSuite account to access the virtual computer class. This apparently simple thing, in my case, hid two obstacles:
- **My password is** dozens of random characters long. I allow myself this because I use a password manager (for all my accounts), but typing by hand every time is painful;
- **Google doesn't trust the school's IP address**, and would ask me to confirm access, but as they haven't added any security methods to the account, they ask me to add a phone number. Just because he asks it in this way, with a clear excuse, I will never give my number to Gluglu: it makes no sense, if bad guys stole my account username and password, they could simply verify the latter with their own number, and according to Google it will be clear that the account belongs to them... but I won't go further.
I could have used any pen drive, with a portable Windows browser downloaded on it, containing my Google session saved from home, with access logged in with my IP address, and I would have solved the problem.
I could have, _but it wouldn't have been fun_.
And this is where the idea of the key with an entire operating system emerged, bootable on any x86_64 PC, totally independently of the internal disk of the PC in question.
### Choice of hardware
First, **I thought about the memory I would use**.
In terms of ability, I'd like to say that I did it just for the challenge, but the truth is that, on the few very large pen drives that I have, I keep other files, which I have to keep on the pen drive, and moving them onto many small pen drives is annoying and brings to future confusion. So, I took one of my 2 GB pen drives, and I told myself that I would make do with it (_and, **spoiler**, I was right, even if it wasn't easy_).
In terms of speed, I only thought about avoiding stuff with levels lower than those of USB 2.0, because in any case I don't have any fast stick available. My only stick with a USB 3.0 bus (correctly detected by Linux as USB 3.0) is as fast as a 2.0... **Damn Kingston**.
I have some fast microSD cards, but my USB adapters for those cards are all slow.
In short, I take the trusty 2 GB USB 2.0 stick, mint color (_it would be perfect as a Linux Mint installation media!_), also from Kingston, and off I go.
![Photo of the USB stick I dedicated to Linux.]({{< assetsRoot >}}/Media/Chiavetta-Linux-2022-05-07.avif)
### Choice of software
Once you have chosen the stick, the **choice of distribution** Linux remains, perhaps even more important.
Here, not only are the popular distros (Ubuntu, Fedora, Mint, Pop!_OS, Manjaro, ...) too large to fit leaving room for a persistent partition, but they would be unusable due to the slowness of the stick.
Fortunately, I had a path in mind that I could follow, because, in the past months, out of my curiosity, I had learned something about the world of lightweight Linux distros.
It was a time when I had just become interested in **[Alpine Linux](https://alpinelinux.org){[:MdTgtBlank:]}**, for its ideals of **lightness and minimalism**. I even used it on desktop for a few weeks.
It was responsive and snappy, thanks also to the presence of [musl libc](https://en.m.wikipedia.org/wiki/Musl){[:MdTgtBlank:]} instead of the now bloated [GNU libc](https: //en.m.wikipedia.org/wiki/Glibc){[:MdTgtBlank:]}, but the need to sometimes configure small things by hand, even after the initial installation, led me to move away from it. However, I thought it would be suitable for a system installed on small, slow storage, with few applications.
I then installed it, including among the essential software (as well as video and audio server): [Window Maker](https://www.windowmaker.org){[:MdTgtBlank:]} (a lightweight window manager), [Firefox](https://firefox.com){[:MdTgtBlank:]}, and minor GUI applications, including: a terminal emulator, a file manager, and a text editor.
All in all, it worked well and quickly but, despite the few apps installed, the memory was overflowing. This would give me some problems later: for example, there was no space to put Minecraft and play [SpaccCraft](https://wikispacc.miraheze.org/wiki/SpaccCraft){[:MdTgtBlank:]}, which which I wanted because it can be useful.
This - together with the fact that later I thought that perhaps encrypting the pen drive would be necessary to protect my data against theft or loss of it, but my attempts to encrypt the already installed system failed - made me stop for a moment to reflect_.
Since I would have had to reinstall the system anyway, I took the opportunity to **change distribution**.
Although in the past, when I tried a little something, it had given me some trouble as a persistent system, I decided to give **[Puppy Linux](https://puppylinux-woof-ce.github.io){[:MdTgtBlank:] a chance }** seriously.
The base image of the latest version of Puppy (at the time of writing, 9.5) weighs just 400 MB, but includes a fairly complete desktop system in itself, with dozens of preloaded applications for the most varied needs.
How can it be so **compact but full of stuff** at the same time? Thanks to the use of [SquashFS](https://en.m.wikipedia.org/wiki/SquashFS){[:MdTgtBlank:]}, a read-only compressed file system, which supports extremely efficient compression algorithms such as [ LZ4](https://en.m.wikipedia.org/wiki/LZ4_(compression_algorithm)){[:MdTgtBlank:]} and [ZSTD](https://en.m.wikipedia.org/wiki/Zstd) {[:MdTgtBlank:]}. In fact, if it were completely decompressed, the image would weigh around 2.5 GB. Even the choice to include **more minimal applications**, however, contributes a lot, if you consider that practically all Linux live CDs use SquashFS, yet those of more traditional distributions weigh several GB.
### To date
**Puppy is the distribution that I still have** on the flash drive.
Except for a few minor problems (like: how the hell do I connect a Bluetooth keyboard??? and oh well, now I don't need it anymore_), it works very well and is fast in every way.
Having set up the [LUKS](https://en.m.wikipedia.org/wiki/Linux_Unified_Key_Setup){[:MdTgtBlank:]} encryption on the writable partition, now my data (personal files and browser sessions) are protected against possible accidents.
The built-in window manager, [JWM](https://en.m.wikipedia.org/wiki/JWM){[:MdTgtBlank:]}, is also very clean and I quite like it - although I wish it had some features window alignment (it seems to have nothing, or am I wrong?).
And now, finally, I have enough free space; and I also have Minecraft!
![Screenshot of my Puppy Linux desktop, with neofetch open on the terminal emulator.]({{< assetsRoot >}}/Media/Screenshots/Desktop-Chiavetta-Linux-2022-05-07.png)
_Background credits: [pixelartmaker.com/art/becdd8955dc57eb](http://pixelartmaker.com/art/becdd8955dc57eb){[:MdTgtBlank:]}_
### Important benefits
Well, with this magical little pen I have **solved the problem** of accessing Google, but I would **continue to use it** even if I no longer need it for that purpose.
The reasons, all important advantages, are as follows; some apply to live Linux in general (even amnesiac ones), others apply only to persistent systems like mine - all, however, are relevant when using a public PC:
- I have a **system that adapts** to my tastes, that I can carry in my pocket and use **on any PC**, without ever having to reconfigure anything (except, sometimes, the BIOS settings) .
- The system in question, contrary to what I could find on the vast majority of PCs around (Windows), **respects my freedoms**, and does not end up my data in the hands of a monopolistic corporation which, in exchange , it would give me absolutely nothing: on any PC I use, even those that aren't mine, I remain consistent with my values.
- The **secrecy** regarding what I do on the PC at that moment is much **more certain**, as is the security of my data: you are only right to be wary of any operating system installed on public PCs, there could be on any spy tool installed (and, in fact, this is the case on some of the PCs at school: there is a remote desktop control program designed for schools, [LanSchool](https://en.m.wikipedia.org/ wiki/LanSchool){[:MdTgtBlank:]}).
- I have all my **essential data always with me**, whether they are simple documents or open sessions on different apps (like the always convenient [Element](https://element.io){[:MdTgtBlank:]}, for messaging and exchanging notes and small files between my devices).
- Some **particular software**, such as Minecraft Java (which, apparently, may not work on some Windows PCs, because perhaps the GPU drivers do not work correctly, and Windows does not have the OpenGL emulation software from [Mesa] (https://en.m.wikipedia.org/wiki/Mesa_(computer_graphics)){[:MdTgtBlank:]} at the system level, as opposed to Linux), **should always work**!
- I have an excuse to indirectly remind people that, even in 2022, **USB sticks are relevant**, even ultra-low-end ones.
### Some insights
I can conclude by saying: **you too should adopt a persistent Linux stick**, if you sometimes use PCs that aren't yours, you won't regret it! In truth, I tell you, do it even just for fun, if you have some disused USB stick in a drawer :)
Here are the websites of some distributions that I _didn't_ mention in the text, but which I have tried in the past or think are worth checking out:
- [SpaccCraftGo](https://github.com/Spacc-Inc/SpaccCraftGo-Images){[:MdTgtBlank:]} - Puppy Linux rebranded by [Spacc Inc](https://wikispacc.miraheze.org/wiki/ Spacc_Inc){[:MdTgtBlank:]}, with the inclusion of SpaccCraft in the system;
- [Slitaz](https://slitaz.org/en){[:MdTgtBlank:]} - 50 MB live rolling release system;
- [Porteus](http://porteus.org){[:MdTgtBlank:]} - Modularity-based live distro;
- [antiX](https://antixlinux.com){[:MdTgtBlank:]}
- [Slax](https://slax.org){[:MdTgtBlank:]}
### 🏷️ Notes/References
[^ Update 2022-08-13]: **Update 2022-08-13**: I imported this article from my old blog (<https://noblogo.org/loli-documentatrice/gli-inexpected-vantaggi- of the-linux-key>{[:MdTgtBlank:]}), to preserve it better and to test some things. I took advantage of this to, in addition to improving the formatting, partially change the form of some sentences. The content remains practically the same.

View File

@ -0,0 +1,25 @@
+++
Title = "What's happening"
Categories = [ "MicroBlog" ]
Dates = 2022-09-11
+++
These last 7 days, very little has been said or done here on the ctt site.
I created this section to use as a general journal, but I'm just now writing something.
First of all, school started again the day before yesterday for me.
It's still too early for it to steal my time in the afternoon, but in the morning the story is a bit what it is. Just as the mess when you start again is always the same, with the timetables being messed up and in general still having holidays on your mind.
Due to these factors, I have a little less time in total to do little things.
Let's add that, due to a curious need of mine, in the last few days I have had to start programming [yet another new instrument](https://gitlab.com/octospacc/links){[:MdTgtBlank:]}... I'm not starting to blather on about the thing itself, because this section is for everything except my development adventures, but the travails can be told: I started developing on Thursday, and only had a minimal working tool last night.
All this, because I wanted to exaggerate with the idea (as usual), and because every afternoon from Thursday to Sunday, until early evening, I was [at the fair](./PicoBlog.html#-2022-09-11 -La-fiera) and, returning home tired, the desire to plan was low.
To this mix we add another distraction: after 5 years, a new chapter of the Splatoon saga has been released, and therefore there is little to do, you have to play. However, after a brief analysis, I am trying not to play with it too much, to try to sip it as much as possible so as not to consume it immediately.
Today I didn't play it at all, for example, and I think I'll end the evening without it; but maybe it's because today I had experiments to do regarding dumping digital school books, to have them without DRM.
By the way, when I've finished the story and have tried even a minimal amount of multiplayer, I'll publish a review of the game, which I'm already writing along the way.
At the beginning I tried to put the game on a PC emulator, but between glitches (which will soon be resolved), a bit of lag, and the inability to play decently away from the desktop, I had to try on real hardware.
My Switch console, however, had been working as a server for 7 months now. Enough, Spoon is vital: I'm putting the Raspino back out.
I haven't put all my software back yet, but the important ones (SpaccCraft and my bots) are there. I also added a new little thing, qbittorrent, which takes care of seeding some torrents even when my PC is turned off.
I also need to tidy up some things regarding backups, for some of my bots, it takes a while.

View File

@ -0,0 +1,43 @@
+++
Title = "When I get my hands on I rock"
Categories = [ "MicroBlog" ]
Dates = 2022-09-18
+++
The other day I was, let's say, reminded of the fact that I have a [Nintendo DSpacc](https://wikispacc.miraheze.org/wiki/DSpacc){[:MdTgtBlank:]} in my drawer.
![My DSpacc, running Pokémon Ruby from its cartridge.]({{< assetsRoot >}}/Media/Misc/DSpacc_Pokemon_Rubino.jpg)
I'm not ashamed to admit that it's disused, because the only thing I can play with it is Pokémon Ruby.
But not because there is only one screen left! It's because...
**The console's DS slot is broken**
: I don't really understand how, but slot 1 is broken: some pins are simply bent, but 2 are really missing, and the latter unfortunately are some of the important ones, not duplicates like the ground ones. So, no playing any of my physically owned DS games, nor using a flashcart.
<meta>
**Pokémon is the only GBA cartridge I own**
: I don't have any other cartridges from the GBA! I only have this Pokémon one because I found it at a fair years ago and, not having any GBA cartridge but the DS already broken at the time, I decided to buy it. I've played it quite a bit, but I want more. But I don't have any other cartridges or even a GBA flashcart.
The fact is that, also because I had to take a photo for the WikiSpacc article, I took it out the other day. When I see it I regret not using it, but unfortunately there is little that can be done.
My crazy mind, however, today recalled an idea that, if I were capable of doing these things, maybe it would have even been good... but that's me.
I thought: what if I soldered a DS flashcart in place of the slot?** I didn't think of this out of nowhere, I saw it some time ago in a modification of the DS made by a person who does these things well . In some videos from a year ago, like [this](https://invidious.nerdvpn.de/2wxKDzUO23c?t=156){[:MdTgtBlank:]}, you can see that this other form of DS has a soldered flashcart on the motherboard.
I take the screwdriver and bits, and disassemble the console. All OK, I've done this at least 4 times counting just the DS Lite.
But then, I arm myself with a welder... honestly they should take away my gun license, considering the damage I do.
The first thing I find myself having to do is desolder the slot. _Ouch_.
After cutting the non-electrical points that held the slot to the motherboard - which looked like solder points, but didn't melt - I first started by trying to heat up all the pins slowly, pulling the slot out slightly. But it doesn't work. So I try to heat every single pin and remove the solder with that strange tool used to suck it up... but little or nothing comes of it. In the end I go back to the initial method, but done faster and more smoothly.. **what a disaster**!
<div class="MediaRow2" markdown="1">
![Photo of the area where the DS slot was.]({{< assetsRoot >}}/Media/Misc/IMG_20220918_170148.avif)
![Macro photo of the area where the DS slot was.]({{< assetsRoot >}}/Media/Misc/IMG_20220918_170157.avif)
</div>
Almost all the soldering points have come off, and now there is brown. I know the trick of scratching away the green layer of the PCB, to expose clean metal to solder on, but there's just no room here. On this card everything is close together, there is not the slightest room for manoeuvre.
There are some very small holes with the conductive diameter around them (just as wide as a single copper wire), testpoint type, which actually appear to be connected to where the solder pads I destroyed were connected. Just to, I try to solder up there, but there's absolutely no way to do it. Those are small and there is no good space around them, so the pond doesn't settle.
I just wasted time, and once again demonstrated to myself that I'm just not capable of doing soldering work that goes beyond connecting 2 wires to huge pads (which I do badly anyway, with a dirty job).
I'm going to buy a GBA flashcart now, and use it.. to boot DS software. To my surprise, it's possible, and maybe I'll talk about it next time.

View File

@ -0,0 +1,23 @@
+++
Title = "New frontiers"
Categories = [ "MicroBlog" ]
Dates = 2022-09-23
+++
Since I discovered it a few days ago. I'm trying that epic software that is [TiddlyWiki](https://tiddlywiki.com){[:MdTgtBlank:]}.
I initially found it while looking for something to organize notes in a rich format, that I could use for school, and that was obviously free.
It is a wiki software, practically in the same category as MediaWiki (the software on which Wikipedia is based), but it has very particular characteristics.
First of all, it doesn't need a server, it's an app that works locally... but how absurd (in a good way)! The entire app with all your personal data is a single, self-editing HTML file, meaning you can copy and secure an entire site in an instant. It cannot save data on its own, but you have to download the modified HTML file locally each time, or use synchronization systems (I use Git, supported in-app).
If I started using it for the sole limited purpose of school study, but then these days I ended up starting to use it a lot also to create my so-called personal and public knowledge base, on everything I can write to the I fly in a non-linear document format that is very well suited to small, quick interconnected notes... which means it's really interesting.
I'm a bit sorry to say it, but it's possible that part of the time I would normally dedicate to the ctt site will be taken away from it, to be dedicated to the newly created OcttKB - which, in this regard, is here on <https://kb.octt .eu.org>{[:MdTgtBlank:]}.
As much as I like everything I have built in recent months, which in fact will continue to live - both as a place in which to express my design style, and as a place in which to publish elaborate and never fragmented content - I must say that I have found a tool which manages to channel some of my thoughts well, those that the CTTT site cannot manage.
I'm not going to explain too much about the technical side of the advantages or disadvantages of TiddlyWiki, because we're talking about a software that is easy to start using, and absolutely very complicated to master (it will take me time!).
What I will say is that: with its being oriented towards the arrangement of information in small fundamental elements (the _tiddlers_), which can then be connected to each other to build elaborate information - both with links and with transclusion (when the content of a element appears completely copied in the middle of another, which is done simply by writing <span>`{`</span><span>`{`</span><span>`Element Name`</span><span> `}`</span><span>`}`<span>) - lends itself really well to well-rounded thinking organization in general.
As a bonus, TiddlyWiki can be used as a more traditional static site generator: you can write elements into many files, and use the CLI program to compile everything into the monolithic file described above. The official site of the project uses this technique, but for a personal site it is not necessary and in fact, it cancels out the advantage that TiddlyWiki has, of being able to be used as a modern notes app: open, write, everything is saved in the cloud automatically.
However, the CLI program has a function that I find useful: the ability to generate static versions of the site, which do not require JavaScript for navigation. This is great, and I think anyone with a public TiddlyWiki, if they have the tools, should set up a build system to automatically make static pages available on the server.

View File

@ -0,0 +1,38 @@
+++
Title = "DSpacc Updates - Cursed Key"
Categories = [ "MicroBlog" ]
Dates = 2022-10-16
Lastmod = 2022-10-20
+++
A month ago, in the [post of October 18](./2022-09-18- Quando-Metto-Mano-Io-Spacc.html), I briefly said that it was the DSpacc, and what a new mess I had caused.
Well, this time I did even worse; to understand the proportions, it is good to brush up on what I had written for a second.
The card I mentioned has arrived, the software modification to improve it works, and I'm still exploring it all a bit. I will have time to talk about everything in a long article, which I am already writing (but I don't know how much longer it will take me).
What is important to talk about now is a problem that arose... I don't even know exactly when, but I only noticed it now: the L back button was causing some problems.
I saw that pressing key combinations to access the flashcart system menus had no effect. Getting suspicious, I decide to download a homebrew to test the keys, Diagnose (which can be found from [GameBrew.org](https://www.gamebrew.org/wiki/Diagnose){[:MdTgtBlank:]} [[pag. archived](https://web.archive.org/web/20220818023822/https://www.gamebrew.org/wiki/Diagnose){[:MdTgtBlank:]}]), and I actually confirm that the L button does not respond to the inputs.
On Nlhlehde's chat they advise me to soak the button in alcohol to clean it, and then give it some exercise - or, if I wanted to repair it correctly, unsolder the button and put a new one on.
At that moment I get bored of opening the console, but I see that two minutes of exercise magically makes the button work again. The operating state, in reality, lasts just a few minutes, and was questionable at the time: on average, 1 click out of 3 was recorded.
Today I finally decide to disassemble the DSpacc, to see if I can do the service on the key. To my surprise, I see that this is sort of raised from the side; one of the many GND pins has desoldered, while the only one that closes the other side of the circuit, you can barely notice, has broken.
![Macro photo of raised key.]({{< assetsRoot >}}/Media/Misc/DSpacc-Shoulder-Macro-Front.avif)
Now, it cannot be said whether the problems registering the presses were due to the externally smashed button, or to internal problems that have nothing to do with the initial malfunction of the button (and the final destruction occurred due to my pressing the button a hundred of times a minute to make him exercise).. what is certain is that alcohol is not enough to fix 😅.
Initially, I try to solder just above the broken leg, which in itself should solve the problem; unfortunately, the side of the pins is so short, and the button in such an awkward position (since we are talking about a back button), that the solder on my pin touches a little next to it and shorts the ground. This makes the button always pressed, and therefore it's even worse (my flashcart menu doesn't open if any button is pressed at startup!) than what I had before.
I try to fix the soldering a bit, but no, I can't improve anything.
At this point, I think about desoldering the button, because anyway... and it works fine, perhaps due to the size of the SMD device, small but not too much: the board has remained clean.
Time to take a new button from the many I have aside, even if much larger than the dorsal one on the DS, and solder it.
Oh well, enough, I'm bored of going around it any more: I try to solder a wire on the main contact, but the solder doesn't stick. The DSpacc PCB is deadly, oh. I try and try again... and in the end the metal pad to solder on comes away. A classic, dare I say, always ends like this! 😑
![Macro photo of the soldering area of the backbone, with the central pad destroyed.]({{< assetsRoot >}}/Media/Misc/DSpacc-Shoulder-PCB-Pad-Broken.avif)
Was it better to have a back button that works with great difficulty, or is it better not to have one at all? I don't know, and I don't want to know. The fact is that now I will have to find solutions to the numerous problems resulting from this bad story,...,,,..,
_**P.S, update 2022-10-20:** I'll give you a photo of the broken button disassembled, before throwing it away, why not? The microSD in the corner acts as a scale, to make the dimensions clear._
![Macro photo of detached and disassembled button.]({{< assetsRoot >}}/Media/Misc/DSpacc-Shoulder-Button-Disassembled-Macro.avif)

View File

@ -0,0 +1,202 @@
// % Categories: MicroBlog
// % URLs: Posts/MicroBlog-Archive/2019/09/index.html
## September 2019 MicroBlog archives
<div markdown="1" class="BorderBoxContainer NoImgCenter Img36 ImgSidePadding">
<details markdown="1"><summary>
#### [2019-09-18 20:58] Lagwei lazur </summary>
> A.y: ooooo
> ![Photo of A.y's Huawei, which appears to emit a purple laser from the proximity sensor.]({{< assetsRoot >}}/Media/Misc/A.y-Huawei-Laser.avif)
> Oct: what to wear that purple lazur
> Oct: the mysteries of lagwei
[...]
{: .Center }
> A.y: be proximity sensor
> A.y: if you smash glass over that
> ![Sticker of a violinist playing. In this chat context it implies something gone wrong.]({{< assetsRoot >}}/Media/Stickers/Violin.avif)
> A.y: I know from experience
>   no that's not true
</details>
<details markdown="1"><summary>
#### [2019-09-17 15:16] Various tests with the Galaxy Player </summary>
> : Good Lagsung
> ![Photo of the Galaxy Player, showing the Telegram channel in Plus Messenger.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/Galaxy-Player-3.6-OctoVoLTE.avif)
> : 512 MB of RAM and runs better than the Lagwei
> !["RAM" screen in Galaxy Player's "Activity Manager". 215 MB of 488 MB of RAM are indicated occupied.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/Galaxy-Player-3.6-Task-Manager-RAM.avif)
> : Now let's try the N64 and DS emulator, so it explodes
[...]
{: .Center }
> : Eeee the DS games run better on an 8 year old Android than on my PC [the Android in this case is ARMv7, while the PC is x86_64, ed.], perfect
> <video controls><source src="{{< assetsRoot >}}/Media/Galaxy-Player-3.6/GP3.6-Pokemon-Platino.webm" type="video/webm">Pokemon Platinum</video>
> **[Survey]** I have to try some DS for my next game
> | Total | 3 |
> |----------------------------|---|
> | Mario Kart DS | 2 |
> | Pokemon B/W 2 | 0 |
> | Animal Crossing Wild World | 0 |
> | Super Mario 64 DS | 1 |
> : OK I've been told by groups to try Mario 64, so I'm going to try both Mario Kart and Mario 64
[...]
{: .Center }
> : I found something in the lag memory
> ![Screenshot of a folder, containing the files of a NANDroid backup of the Galaxy Player dating back to 2017-12-09.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/CWM-Backup-2017 -12-09.avif)
> : Here's a reason why the new versions of Android suck [they handle the connection as a USB memory worse than Android 2.3, ed.]
> ![Photo of the Galaxy Player showing the "USB storage in use" screen.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/Galaxy-Player-3.6-USB-storage.avif)
> : Actually there are many, we'll talk about them later
> : And now let's test the other games
[...]
{: .Center }
> : Super Mario 64 DS
> <video controls><source src="{{< assetsRoot >}}/Media/Galaxy-Player-3.6/GP3.6-SM6464DS.webm" type="video/webm">Super Mario 64 DS</video>
> : Mario Kart DS
> <video controls><source src="{{< assetsRoot >}}/Media/Galaxy-Player-3.6/GP3.6-MKDS.webm" type="video/webm">Mario Kart DS</video>
> : So, I would like to record other games but the Memewei is broken and, despite having deleted the videos from before, it says that I have no memory
> : Oh yes right, I've only had this Huameme for a year and a half, but there are LOTS of things to talk about regarding it
> : Screenshots of the N64 emulator are now arriving
> : I didn't record but the framerate of the games was always stable and playable.. unfortunately the games are not so playable, but only because there are serious graphic glitches
> : I think it's the fault of the emulator which is old (unfortunately I can't do much on Android 2.3.6)
> ![Screenshot of Mario Kart 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Mario-Kart-64/GP3.6-MK64-0.avif)
> ![Screenshot of Mario Kart 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Mario-Kart-64/GP3.6-MK64-1.avif)
> ![Screenshot of Mario Kart 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Mario-Kart-64/GP3.6-MK64-2.avif)
> ![Screenshot of Mario Kart 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Mario-Kart-64/GP3.6-MK64-3.avif)
> ![Screenshot of Super Mario 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Super-Mario-64/GP3.6-SM64-0.avif)
> ![Screenshot of Super Mario 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Super-Mario-64/GP3.6-SM64-1.avif)
> ![Screenshot of Super Mario 64 emulated on the Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Super-Mario-64/GP3.6-SM64-2.avif)
> ![Screenshot of Wave Race 64 emulated on Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Wave-Race-64/GP3.6-WR64-0.avif)
> ![Screenshot of Wave Race 64 emulated on Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Wave-Race-64/GP3.6-WR64-1.avif)
> ![Screenshot of Wave Race 64 emulated on Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Wave-Race-64/GP3.6-WR64-2.avif)
> ![Screenshot of Wave Race 64 emulated on Galaxy Player.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/Wave-Race-64/GP3.6-WR64-3.avif)
> : I took the screens directly on the Lagsung with an app
> : Now comes the video of some games vah
> : Apart from Zelda which I tried now, the other games have a stable framerate if you see, nice, a Lagsung from 8 years ago is redeeming itself.
> : I warn you that there might be an epileptic trigger when I start quake 2 eh xd
> <video controls><source src="{{< assetsRoot >}}/Media/Galaxy-Player-3.6/N64/GP3.6-N64-Misc.webm" type="video/webm">N64</video >
> : Okay, enough of the Lagsung tests for now
</details>
<details markdown="1"><summary>
#### [2019-09-16 18:35] Memewei memory full </summary>
> !["P9 Lite Mini screen saying the memory is almost full and this would slow down the device."]({{< assetsRoot >}}/Media/P9-Lite-Mini/Memewei-Memoria-Full.avif)
> : The Memewei proves itself valid kek
>: Fuck you, one day I'll rock this thing
>: Except that he's already kind of bent, because he got beaten up so many times because he was a meme
> : But Lagsoong can have just 1 KB free and doesn't break with Chinese popups
A bit of context is in order here: this crap smartphone, when it only has like ~100 MB free on the internal memory, pops up this popup about every 3 minutes, which is annoying to say the least. And believe me, it is easy to fill the memory of a smartphone with Android 7 which, after taking out the space occupied by the system components, only has 7.5 GB of space available to the user.
</details>
<details markdown="1"><summary>
#### [2019-09-16 18:24] Brick and rebirth of the Galaxy Player </summary>
> : So, as you know today I unbricked the Lagsung, and the internal memory was not formatted
> : This means I found worlds from 2013 and beyond that I didn't remember existed
> : At 10 subscribers you will see the worlds
[...]
{: .Center }
> : Ah, the old Lagsung keyboard has a nice thing about it
> : He doesn't have those toxic emojis because he has better things
>   MUCH BETTER
> ![Photo of the Galaxy Player showing the notes app, with the keyboard open on the emoticons tab, which are the old symbol style, not emoji.]({{< assetsRoot >}}/Media/Galaxy-Player- 3.6/Galaxy-Player-3.6-Notepad-Emoticon-Keyboard.avif)
[...]
{: .Center }
> : Ok, now I will tell you the detailed story of the briquetted Lagsung, and now fixed why
>   Now you will find out why
> : So
>   The lag in question is Galaxy Player 3.6
>   Aka a thinner S1 with no phone part
> : What happened
> : A year ago, since my brain is lagging, "yeah, why don't I put a custom rom??!1!1!" comes to mind.
>   And then I put a custom ROM, which was also ugly
>   Three hours later I wanted to remove it, because the WiFi was broken
> : So what do I do
>   I prepare Odin, look for the stock ROM and flash it
>   It's not clear why (that is, I know why, because Odin is an asshole program that will steal your phone if it wants to) towards the end [of the flash process, ed.] it freezes, it doesn't move forward
>   I left the thing hanging there for almost half an hour and it wasn't working, so I'm disconnecting
> : I turn it back on and
> ![Distorted sticker of Kanna and Tohru (two dragon lolis) reading a book called "Am I retarded?".]({{< assetsRoot >}}/Media/Stickers/Lolis-Reading-Am-I-Retarded- Book.avif)
> : Yes, because there was a nice screen that said
> ![Photo of the Galaxy Player which, on the bootloader, shows a warning triangle and the writing "Firmware update encountered an issue. Please select recovery mode in Kies & try again."]({{< assetsRoot >}}/Media /Galaxy-Player-3.6/Galaxy-Player-3.6-Softbrick-Bootloader.avif)
> : And so, nothing, since I have sawdust in my brain, for literally almost a year I thought it was my corrupt ROM, because even if I reflashed it always gave an error at the end, and for literally a year I wasted time looking for other ROM to no avail
>: Oh and, obviously I tried to connect to Kies simply, but it didn't recognize the phone, it kept charging, and if I went into Kies' manual recovery mode it asked me for a code (?)
> : Then just the day before yesterday the good Ashflee told me that all I needed was the right PIT file and it would be fixed
> : I didn't know because I'm laggy
> : So today I find the PIT file of the US version and I don't care about the fact that I have the European Galaxy, I put PIT and flash the US ROM and
> : E
> : It's in bootloop because well, there was sawdust in /data and it wouldn't mount
> : I format /data from recovery and the lag comes on, and now it works and is better than my meme
> : However, the internal archive has not been deleted, and all the old files are there
>   Including my very old Minecraft worlds
> : And nothing will be, this is Lagsoong back to life after a year in a coma
> ![Photo of the Galaxy Player lock screen, with a non-canon Astolfo wallpaper.]({{< assetsRoot >}}/Media/Galaxy-Player-3.6/Galaxy-Player-3.6-Astolfo-Lockscreen.avif )
</details>
<details markdown="1"><summary>
#### [2019-09-16 18:14] The beginning of OctoVoLTE </summary>
> : So, there will be Lagsung stuff on this channel
> : And Memewei, but maybe also Xiaomime
> : Oh and, of course, ways to get 🅱oLTE on your phone
> ![VoLTE]({{< assetsRoot >}}/Media/Misc/phh-VoLTE-JiOwO.avif)
The history of OctoVoLTE officially began from these messages. Memewei has been talked about there in recent years, perhaps too much; Of methods to have VoLTE, there hasn't been even one, like. Sad.
</details>
</div>

View File

@ -0,0 +1,39 @@
// % Categories = Notes
// % CreatedOn = 2022-09-18
// % EditedOn = 2022-09-19
// % Index: None
<!-- I should finish writing this... --->
# Bypass DRM of school books
**(in a way that probably makes the operation possible even for non-scholastic texts.)**
Here I am on my umpteenth little adventure.
This time I'm dealing with some stupid DRM, which I could, like many people, try to circumvent in a super-studied and perfect way... but, even in this case, the simplest solutions are the best.
My solution, however ugly and inelegant, is universal.
I didn't set out to write scraping programs to perhaps download books from sites, or to convert the strange formats of offline readers into more common formats. Who wants to start repaying everything you need, and 4 times, once for a different digital book supplier?
I decided to use screen capture. Not handmade, clearly.
In any case, it is precisely from here that a path is born, aimed at solving small problems that suddenly arise, and at increasing efficiency under various factors.
## Why all this?
The reasons that push me to get into this mess are multiple.
Of course, it's because I need digital books, considering how convenient they are. Since I started high school I have only brought my lagging tablet, no paper brick books (except for a few bad apples, like the physics and Italian literature books, which are not provided digitally...). If I didn't do this, my backpack would explode and my thin loli back would shatter.
But why do I have to extract the books, and not use the publishers' applications?
**Apps don't work**
: The first reason is simply this. Some apps simply work badly, being slow to load the menu, a book, or even a page... when with a PDF or even images seen in the gallery I wouldn't have the slightest problem. Others don't work at all! They lose their session all the time, or even they are completely broken and think I'm offline, and I can't access my books.
<meta>
**I don't like proprietary software and DRM**
: In general, whenever possible I always try to do without proprietary software, preferring free tools to do the things I need to do. Proprietary software itself, however, is not necessarily always 100% bad, because sometimes it still gives you freedom 0<sup>[[↗️](https://it.m.wikipedia.org/wiki/Software_libero# Le_%C2%ABquattro_libert%C3%A0%C2%BB){[:MdTgtBlank:]}]</sup>, i.e. the possibility of always using the software for any purpose. Well, DRMs take away this too, they are the absolute inexcusable evil and, if already everything that I use for my purposes does not have DRMs (because it has never had them, or because they have been removed, by me or other people), it would be It's nice to resolve this issue also for school books, which I only use because the curriculum requires it.
<meta>
**Being able to preserve and share books**
: Paper books, once you buy them, you own them. You can do whatever the hell you want with them, and they don't disappear overnight because some burnt nut head decided the license is expired. Why shouldn't it be like this for digital ones? I'm not into it, so I want to preserve them - as a matter of principle, not because I think I'll reopen them again after school... personally I prefer to search the web for anything I find I want or need to know. As a bonus, I will also upload them online, so that anyone who wants to download them can do so (if they want it for personal study and not for school use, since these publishers reprint the books every year and schools always fall for their scam).
_...Still writing... These notes will be updated from time to time._

View File

@ -0,0 +1,90 @@
// % Title = 2⃣ Synchronized gaming between PlayStation 2 and smartphone
// % CreatedOn = 2023-10-17
// % Downsync = /Posts/Notes/Gaming-Sincronizzato-PS2-Smartphone.html
// % HTMLTitle = <span class="twa twa-2⃣"><span>2</span></span> Synchronized gaming between PlayStation 2 and smartphone
// % Description = In detail, how I designed a system to always have games and saves synchronized between the emulator and the real PS2 console, shared here.
// % Categories = Gaming Notes
// % EditedOn = 2023-10-18
<h1><span class="twa twa-2⃣"><span>2</span></span> Synchronized gaming between PlayStation 2 and smartphone</h1>
<p>Those who have been following my adventures for long enough and with due attention perhaps know this, but the biggest problem in computer science is: how to properly reconcile the discrepancies that are created when we face the problem of playing video games both at home than in portability? Between games that in one case are comfortable to play and in another perhaps don't even run, and the saves that are spread across countless different devices, solving this problem completely will never be possible...<br>
Yet, sometimes, the entropy of the brain is able to generate particularly useful ideas in this regard too, as happened to me the other day for the PS2.</p>
<p>In fact, I have a real PlayStation 2, a home console that when you find a way to use it is certainly appreciable... and that I often found myself not using, for the reasons mentioned above: not directly, because at home I often don't goes, nor with an emulator on the smartphone, because I would feel that at home I wouldn't use the real console since the updated saves would only be on the phone.<br>
And then, just the other day, staring at the console (I'm not sure why), I thought there should be a way to have the saves easily synchronized between it and the phone...</p>
<h2>Snag 1: USB stick or memory card?</h2>
<p>At the time, the simplest idea I thought of was: they exist <a href="https://www.amazon.it/Adattatore-Memoria-Lettore-Sostitutivo-trasparente/dp/B0C8TTQFJY" rel= "noopener nofollow" target="_blank">adapters</a> to use a microSD card as a PlayStation memory card (which use a non-standard interface instead)... it might be worth buying one of those, so I keep them all there the saves, and if desired I can also access them from other devices by moving the card around.<sup id="fnref1"><a class="footnote-ref" href="#fn1">1</a></sup> <br>
With a card of several GB (there aren't any small ones around anymore anyway), furthermore, I could even do without the USB stick and keep all the games only on the memory card!</p>
<p>Fortunately, this is not the only way, at least for certain games: <a href="https://github.com/ps2homebrew/Open-PS2-Loader" rel="noopener nofollow" target="_blank ">Open PS2 Loader</a>, the homebrew that runs commercial games from backup storage (such as USB sticks), supports the use of virtual memory cards (VMCs) that are saved as files on the USB drive. Games are quite slow to save on it (the PS2 only supports USB 1.1, plus there's some strange overhead), but it's an apparently workable solution.</p>
<h2>Hitch 2: Save conversion</h2>
<p>Regardless of the previous choice, however, I discover another obstacle: the saves should be converted to be passed from the console to the emulator (at least <a href="https://aethersx2.com" rel="noopener nofollow" target=" _blank">AetherSX2</a>, for better or worse the only truly decent one to date) and then vice versa.<br>
Fortunately, I immediately find <a href="http://www.csclub.uwaterloo.ca:11068/mymc" rel="noopener nofollow" target="_blank">mymc</a>, a program so old that it requires Python 2 (while at the moment we've been on 3 for years and years), which however works, and thank goodness it offers a command line interface.</p>
<p>It doesn't do true virtual memory card conversions per se, but it allows you to manipulate the contained files in various ways. All very crude, but fortunately exploitable enough to do just what I need, after having assembled an ideal script.<br>
I won't try to explain how it works, at the bottom of the article you can download it and read it, it's boring. I packaged mymc inside the script, so that it doesn't have to be installed separately.</p>
<h3>Snag 3: Converting from your phone</h3>
<p><em>Note 2023-10-18: I found a modern fork (in Python 3) of mymc, <a href="https://sr.ht/%7Ethestr4ng3r/mymcplus/" rel="noopener nofollow " target="_blank">mymc+</a>... I haven't tried it (yet), but it's possible that this could work on Android too, eliminating the fiddly setup that follows, so I'll mention it.</em> </p>
<p>Unfortunately, mymc has some problems running in <a href="https://termux.dev/en" rel="noopener nofollow" target="_blank">Termux</a> (the native Linux environment very convenient for this type of integrations) on my Android: I don't know what's to blame, but in practice the program has problems reading VMC files, throwing an error like <code class="prettyprint">file.vmc : Bad file descriptor</code>. I couldn't find any solutions online, not even for general searches of the problem, so I had to make do. Maybe using a containerized GNU+Linux system in root, with its libraries and a different build of Python 2.7, would be enough to solve the problem, but who knows.<br>
For my part, I was starting to get annoyed, and so I opted to delegate the conversion to my Debian server, having a Termux script carry out the simple task of loading the VMC on the server, running the actual conversion script there, and then download the converted file to the right location locally.</p>
<p>Before I forget: on Android 13 and higher (but already from some past versions) root permissions are needed to read and write files from/to external memories (such as the USB stick) and private application folders (such as the one where AetherSX2 stores the virtual memory cards).<br>
From what I have been able to prove, if you don't have root you will necessarily have to use a suitable file manager (and I don't think there are scriptable ones, so you have to use your hands), or perhaps ADB, to move the files around... thank Google.<br>
In any case, my scripts have written in the special paths used for all the ambaradan.</p>
<p>Using <a href="https://wiki.termux.com/wiki/Termux:Widget" rel="noopener nofollow" target="_blank">Termux:Widget</a>, I finally added two links to my system launcher, for VMC conversion:</p>
<ul>
<li>one that goes from the PS2 format to the emulator one, to be run when I want to play on my phone but the saves on the pen drive were last modified by the PS2;</li>
<li>the other for the reverse conversion, to be performed when I want to go and play on the PS2 once the emulator has updated my saves.</li>
</ul>
<p>To explain it I realize that it seems very complicated, in practice I just have to press a button and wait a few seconds.</p>
<h2>In practice: the value of unique memory</h2>
<p>Once the kinks have been eliminated, the configuration is done, and its strong point lies in the centralization of games and saves on a single device: the USB key. Like this:</p>
<ul>
<li>I avoid the confusion generated by games that I have on one side but not the other, especially when I want to modify my collection;</li>
<li>I don't need a much larger microSD in my smartphone to contain all the games I already have on another portable memory, with advantages for the stability of the other data and the weight of the wallet;</li>
<li>there is no extra confusion for the management of even the saves, these being managed as I said before.</li>
</ul>
<p>On the PS2 I normally connect the pen drive when I need it, however on the smartphone I have to use a USB-C OTG adapter, which is on average inconvenient but there is little that can be done. To avoid losing these things around, I then attached a carabiner to the USB stick, and a key ring in the hole for the lanyards on the phone cover.</p>
<h2>Concluding: chain ideas</h2>
<p>I believe that this is the most ideal system given my initial conditions, and in the following days I will test it thoroughly.<br>
However, I will probably have to get a larger external memory to store more games, because the 32 GB one I use now has always been too small for me.</p>
<p>Maybe, by taking a large enough one, and writing a special homebrew, I think I can adapt this system of mine for Wii games too, using the same memory for those too... spoilers? 👀</p>
<p>Finally, here are the additional resources for this article:</p>
<ul>
<li>My initial question and brief system discussion on Sony Hacking Zone: <a href="https://t.me/SonyHacking/46784" rel="noopener nofollow" target="_blank">https:/ /t.me/SonyHacking/46784</a>;</li>
<li>Guide to using VMC on OPL: <a href="https://youtube.com/watch?v=tBrKcJC_E4U" rel="noopener nofollow" target="_blank">https://youtube.com /watch?v=tBrKcJC_E4U</a></li>
<li>My conversion scripts (on GitLab): <a href="https://gitlab.com/octospacc/Snippets/-/blob/main/Ps2EmuVmcConvert.sh" rel="noopener nofollow" target="_blank ">direct</a>, <a href="https://gitlab.com/octospacc/Snippets/-/blob/main/Ps2EmuVmcConvertCloud.sh" rel="noopener nofollow" target="_blank">via server< /a>;</li>
<li>AetherSX2 Android build I play (latest without adware): <a href="https://www.apkmirror.com/apk/aethersx2/aethersx2/aethersx2-v1-4-3060-release/aethersx2-v1 -4-3060-android-apk-download/" rel="noopener nofollow" target="_blank">https://www.apkmirror.com/apk/aethersx2/aethersx2/aethersx2-v1-4-3060-release/ aethersx2-v1-4-3060-android-apk-download/</a>.</li>
</ul>
<div class="footnotes">
<ol>
<li id="fn1">
<p>On this issue I find conflicting opinions or not very clear advice, so be careful: it is not clear whether these adapters also work as normal memory cards for saving games (and therefore also possibly as an FMCB card), or only as external memory for homebrews like OPL... in any case it would be a potentially valid purchase, considering the technical drawbacks of USB on PS2. <a href="#fnref1"></a></p>
</li>
</ol>
</div>

View File

@ -0,0 +1,60 @@
// % Categories: Notes
// % CreatedOn: 2022-08-05
// % Index: None
# Avoid accidentally calling commands in the terminal
While working in the terminal, perhaps developing programs, I often accidentally invoke a command that I shouldn't.
This happens to me because I work like this: I edit something in my favorite text editor window, then go to the terminal window, and press `[Up Arrow]` (which recalls the last command executed) and `[Enter] ` to run it.
What I've noticed is that sometimes, in my haste, I happen to press `[Up Arrow]` one too many times, which recalls the penultimate command executed, or the one even before it.
Since I practically do these sequences of actions almost automatically, without reading to make sure that the selected command is actually what I want before pressing `[Enter]` (because that's all I expect), it happens several times that I execute a command which I shouldn't: often, it's the command to make a commit [Git](https://en.wikipedia.org/wiki/Git){[:MdTgtBlank:]} of my changes to the workbook, and immediately load them in the cloud.
Now, this is not good, because it means that in the Git history I will have certain "wrong" places: with descriptions with duplicate text, and the code in an unsuitable, non-working state, because I was in the middle of testing some changes.
Having such a messy Git history definitely affects its quality, because it's more difficult to find a specific past point in the code in the future, which nullifies one of the useful features of Git - and in general it's something I don't like, it annoys me , see dirty history.
## The script
To solve the problem, I invented this little script (tested with _sh_ and _bash_), the idea is to launch the "dangerous" commands through it in situations in which I have to make those moves with the terminal (but, if desired, I it can be set as an alias to implicitly always call it for a given command).
<pre class="CodeScroll"><code>
Profile="~/.bashrc"
a=${RANDOM: -1}
b=${RANDOM: -1}
echo "[!] Confirm your command"
echo "[?] $a + $b = ?"
read Input
if [ "$Input" -eq "$((a+b))" ] 2>/dev/null
then
$SHELL -c "source "$Profile"; $@"
else
echo "[!] Wrong input"
fi
</code></pre>
## How to use it
I saved the code inside a `function comconf() { }` function in my bash profile file.
Now, when I need to run a marso command, I just do `comconf '<command>'`; the program will ask me to write the result of a randomly generated simple arithmetic operation, and only if what I write is right (so, only if I'm paying attention) my command will be executed.
<pre class="CodeScroll"><code>
$ # Example
$ comconf 'echo "Try"; echo "Testing"'
[!] Confirm your command
[?] 1 + 3 = ?
4
Trial
Test
$
</code></pre>
---
The script has some strange aspects, for example the fact that it doesn't work if run directly from the current shell (which is why it runs the desired command in another shell process, with the `-c` argument). For this reason, I also have to explicitly load my profile file into the new shell, because it is not done automatically and I have other aliases and functions that I need there.
As if that wasn't enough, if I don't use single quotes to enclose the command I want to call, if this contains other quotes it's as if these are ignored, and therefore the final command can break.
Oh well, problem solved anyway. No more accidents due to one too many `[Up Arrow]`.

View File

@ -0,0 +1,88 @@
// % Categories: Notes
// % CreatedOn: 2022-08-09
# Check interesting statistics and health of partitions on Linux
Storage memories, whatever their category, degrade with wear.
Nothing can be done to avoid having to change them, sooner or later, after so many years. However, it is possible to keep an eye on their health status, in order to identify any problems.
When it comes to HDD or SSD disks, the [SMART](https://en.m.wikipedia.org/wiki/S.M.A.R.T.){[:MdTgtBlank:]} protocol comes in handy but, if, like me, you use computers in an unconventional way, then checking classic discs is not enough.
## Linux goes further
Something quite secret, which not many people know (so it seemed to me, at least), is that on Linux it is possible to access the statistics of partitions with some filesystems.
This, obviously, regardless of whether you are using a pen drive, an SD card, a hard disk, a floppy disk, or even an even less usual memory.
[Ext4](https://en.m.wikipedia.org/wiki/Ext4){[:MdTgtBlank:]} provides several curious data - and its previous versions, Ext3 and Ext2, should do the same, but I haven't checked.
[F2FS](https://en.m.wikipedia.org/wiki/F2FS){[:MdTgtBlank:]} I also saw, directly from my Android smartphone, exposes some interesting information... which I won't address in detail, because they are all very dark and I don't know what they mean; and if I don't know what they mean, I'm not curious about them. It happens.
As for other file systems, I haven't seen them at all. As homework, therefore, I give you to see if stuff like FAT32, exFAT, NTFS, or why not, BTRFS, exposes nice information, on Linux. And how?
## Get the data
On Linux, just browse the paths `/sys/fs/<filesystem>/<device>` to find some interesting files.
You can print the contents of each one on the screen, alongside its name, with a simple command (executed in the relevant path): `for i in *; do echo "$i: $(cat $i)"; done`. Unless you have SELinux active - generally, by default it is only active on Android devices, not on desktop systems - you don't even need root permissions.
I've put the most interesting ones in the table below, regarding the microSD of my server (a poor Nintendo Switch that runs Ubuntu non-stop), we'll return to it shortly.
| Name | Value |
| --- | --- |
| errors_count | 0 |
| first_error_time | 0 |
| last_error_time | 0 |
| lifetime_write_kbytes | 1959125105 |
| session_write_kbytes | 1423172308 |
Speaking specifically about Ext file systems: to even know a few more details, and accompanied by an understandable name, there would also be the command `tune2fs -l /dev/<device>`. However, this requires root permissions and, while it also reports some of the data that can be obtained by looking at the files from before, such as the number of lifetime_writes, these may be out of date, and relating only to the last mount of the partition. So, better pay attention to these.
This time too, I'll bring back the interesting things.
| Name | Value |
| --- | --- |
| Filesystem created | Mon Jul 26 04:33:17 2021 |
| Last mount time | Fri Apr 15 11:55:30 2022 |
| Mount count | 16 |
## Things to watch for
Let's see, one by one, the usefulness of these values.
It must be taken into account, however, in case you have not understood, that the values speak of the state **of the partition, not of the storage media**. We can read them only because Ext4 saves them and, consequently, if the partition is formatted, then these values are also reset. Furthermore, we consider that they could easily be altered by anyone with simple programs like tune2fs, so they are not to be taken as perfectly good if untrusted people have access to the memory.
**Filesystem created**:
: The date the partition was created. Simple, but it can be useful for making health estimates, together with the next data.
**Mount count**:
: The number of times the partition has been mounted. This can be interesting, if we are talking about memory that is not used permanently on a machine that is always on. If SMART did not exist, which gives this and even more data, this value would be very useful on HDDs.
**Last mount time**:
: The date the partition was last mounted. We can use it in combination with other data, and that's it, I think.
**session_write_kbytes**:
: The amount, in KB, of data written during the current session, i.e. since the last mount. Together with the value described just above, we can use this to know how much we have written in an active period of time (the current one).
**lifetime_write_kbytes**:
: The amount, in KB, of data written since the partition was created. This information is particularly useful about microSDs, at least if you use them intensively like me. It's also on F2FS.
**errors_count**:
: The number of errors, I believe both in reading and writing, that occurred over time. Frequent errors can be a symptom of unreliable or simply degraded memory.
**first_error_time** and **last_error_time**:
: Dates of the first and last time an error was logged, respectively. It can be useful to understand if any errors occur continuously, and therefore it is necessary to investigate further; or, if a mistake happened once and then never again after a long time, and therefore you are fine like that.
## When is it necessary to check your health like this?
Well, OK, this information is interesting, but: when is it actually needed?
If the storage memory in use - which, if we have decided to resort to these measures instead of using SMART, is probably a microSD or a flash drive - starts to show signs of failure, perhaps slowing down over time, or corrupting data... It would be advisable at least check that everything is OK.
If the data isn't scary, but seems in order... then it's time to first do a complete formatting (including recreating the partition table from scratch), something made simple by programs like [GParted](https:// gparted.org){[:MdTgtBlank:]}, and then you see how the story continues.
In any case, just to be careful, it would be a good idea to always carry out routine checks, so as to be able to predict problems before something serious happens.
## Keep an eye on microSD?
Speaking of microSD cards: they are almost disposable, they have an extremely limited life, given that their memory chips are the waste from the manufacturing of other, higher-end memories, such as SSDs.
What is known about their actual durability, at least of those that came out well from the factory and not of sub-brands?
You read all sorts of things online: there are those who say that every single memory cell can withstand 10,000 rewrites, and those who say that you can at most write 1,000 times the capacity of the memory before it completely fails (going into read-only mode)... no conclusion is reached.
I have had cards like the one examined today, with a capacity of 32 GB, which, apart from the almost 2 TB written since the last formatting, in my opinion has seen at least 3 TB in total in its entire life, and yet it still seems fine; and then, I've had cards that started giving problems for much less. Maybe it's because I used the latter with crappy file systems, like FAT32 or exFAT, and for this reason they were constantly corrupting.
In conclusion: if we abuse betting slips, it is good to be able to control them, to the extent possible, in the way we have learned today.