diff --git a/public/categories/index.xml b/public/categories/index.xml
index 5472deb..4edfbef 100644
--- a/public/categories/index.xml
+++ b/public/categories/index.xml
@@ -1,40 +1,58 @@
0xhenrique
- http://localhost:1313/categories/
+ https://0xhenrique.neocities.org/categories/
Recent content in Categories on 0xhenriqueHugo -- gohugo.ioen-us
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -52,10 +70,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -69,10 +87,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -114,10 +132,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -131,10 +149,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -175,10 +193,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/guix-wallpapers/index.html b/public/guix-wallpapers/index.html
index 72ca799..cf616fc 100644
--- a/public/guix-wallpapers/index.html
+++ b/public/guix-wallpapers/index.html
@@ -1,8 +1,8 @@
-
+
Guix Wallpapers | 0xhenrique
-
+
@@ -25,10 +25,10 @@ I think it goes without saying that Suika is the perfect candidate to be the Gui
diff --git a/public/index.xml b/public/index.xml
index eb6b674..b58a30d 100644
--- a/public/index.xml
+++ b/public/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/
+ https://0xhenrique.neocities.org/
Recent content on 0xhenriqueHugo -- gohugo.ioen-usMon, 23 Sep 2024 04:35:07 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/internet-lurk-compilation/index.html b/public/internet-lurk-compilation/index.html
index 0e5e140..c0b738e 100644
--- a/public/internet-lurk-compilation/index.html
+++ b/public/internet-lurk-compilation/index.html
@@ -1,8 +1,8 @@
-
+
Internet Lurk Compilation #1 | 0xhenrique
-
+
@@ -47,10 +47,10 @@ If you find a broken link or a website that shares things that are clearly illeg
diff --git a/public/lum/index.html b/public/lum/index.html
index 3d633a7..4fe6b95 100644
--- a/public/lum/index.html
+++ b/public/lum/index.html
@@ -1,8 +1,8 @@
-
+
Lum - Linux Ubiquitous Marker | 0xhenrique
-
+
@@ -18,10 +18,10 @@ I also wanted to have contact with Rust in practice. I have some things to say a
diff --git a/public/monogatari/index.html b/public/monogatari/index.html
index c596f8a..4a162be 100644
--- a/public/monogatari/index.html
+++ b/public/monogatari/index.html
@@ -1,8 +1,8 @@
-
+
Monogatari - Text Editor in Python | 0xhenrique
-
+
@@ -43,10 +43,10 @@ You are now ready to start to code! Just do as always:">
diff --git a/public/nazare-beach/index.html b/public/nazare-beach/index.html
index 17127fe..eccbea0 100644
--- a/public/nazare-beach/index.html
+++ b/public/nazare-beach/index.html
@@ -1,8 +1,8 @@
-
+
Nazare Beach | 0xhenrique
-
+
@@ -17,10 +17,10 @@ According to Wikipedia, Nazaré is one of the most traditional Portuguese fishin
diff --git a/public/tags/archive/index.xml b/public/tags/archive/index.xml
index 289b8a4..6077e5f 100644
--- a/public/tags/archive/index.xml
+++ b/public/tags/archive/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/archive/
+ https://0xhenrique.neocities.org/tags/archive/
Recent content in Archive on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:17 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/blogs/index.html b/public/tags/blogs/index.html
index e521f14..02d334d 100644
--- a/public/tags/blogs/index.html
+++ b/public/tags/blogs/index.html
@@ -1,8 +1,8 @@
-
+
Blogs | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/blogs/index.xml b/public/tags/blogs/index.xml
index 0fb5dfd..2a72a4c 100644
--- a/public/tags/blogs/index.xml
+++ b/public/tags/blogs/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/blogs/
+ https://0xhenrique.neocities.org/tags/blogs/
Recent content in Blogs on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:17 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/guix/index.html b/public/tags/guix/index.html
index 9770950..ab7ea69 100644
--- a/public/tags/guix/index.html
+++ b/public/tags/guix/index.html
@@ -1,8 +1,8 @@
-
+
Guix | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/guix/index.xml b/public/tags/guix/index.xml
index 521a274..a667305 100644
--- a/public/tags/guix/index.xml
+++ b/public/tags/guix/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/guix/
+ https://0xhenrique.neocities.org/tags/guix/
Recent content in Guix on 0xhenriqueHugo -- gohugo.ioen-usMon, 23 Sep 2024 04:35:07 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/index.html b/public/tags/index.html
index b3bb394..c12f6af 100644
--- a/public/tags/index.html
+++ b/public/tags/index.html
@@ -1,8 +1,8 @@
-
+
Tags | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/index.xml b/public/tags/index.xml
index 26fd4d7..edbe529 100644
--- a/public/tags/index.xml
+++ b/public/tags/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/
+ https://0xhenrique.neocities.org/tags/
Recent content in Tags on 0xhenriqueHugo -- gohugo.ioen-usMon, 23 Sep 2024 04:35:07 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/linux/index.html b/public/tags/linux/index.html
index 2de9639..b1daa7f 100644
--- a/public/tags/linux/index.html
+++ b/public/tags/linux/index.html
@@ -1,8 +1,8 @@
-
+
Linux | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/linux/index.xml b/public/tags/linux/index.xml
index 13c1896..28f22cc 100644
--- a/public/tags/linux/index.xml
+++ b/public/tags/linux/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/linux/
+ https://0xhenrique.neocities.org/tags/linux/
Recent content in Linux on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:33 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/lurk/index.html b/public/tags/lurk/index.html
index 4c2baa4..c7bbe1b 100644
--- a/public/tags/lurk/index.html
+++ b/public/tags/lurk/index.html
@@ -1,8 +1,8 @@
-
+
Lurk | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/lurk/index.xml b/public/tags/lurk/index.xml
index 507f7a6..b27d87b 100644
--- a/public/tags/lurk/index.xml
+++ b/public/tags/lurk/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/lurk/
+ https://0xhenrique.neocities.org/tags/lurk/
Recent content in Lurk on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:17 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/nix/index.html b/public/tags/nix/index.html
index 0df23b5..b256e70 100644
--- a/public/tags/nix/index.html
+++ b/public/tags/nix/index.html
@@ -1,8 +1,8 @@
-
+
Nix | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/nix/index.xml b/public/tags/nix/index.xml
index aaa4e7b..c4549c9 100644
--- a/public/tags/nix/index.xml
+++ b/public/tags/nix/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/nix/
+ https://0xhenrique.neocities.org/tags/nix/
Recent content in Nix on 0xhenriqueHugo -- gohugo.ioen-usMon, 23 Sep 2024 04:35:07 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/operating-system/index.html b/public/tags/operating-system/index.html
index 73828ac..896d300 100644
--- a/public/tags/operating-system/index.html
+++ b/public/tags/operating-system/index.html
@@ -1,8 +1,8 @@
-
+
Operating-System | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/operating-system/index.xml b/public/tags/operating-system/index.xml
index eee9cd2..4aa75ef 100644
--- a/public/tags/operating-system/index.xml
+++ b/public/tags/operating-system/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/operating-system/
+ https://0xhenrique.neocities.org/tags/operating-system/
Recent content in Operating-System on 0xhenriqueHugo -- gohugo.ioen-usMon, 23 Sep 2024 04:35:07 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/personal/index.html b/public/tags/personal/index.html
index 24569b8..235576d 100644
--- a/public/tags/personal/index.html
+++ b/public/tags/personal/index.html
@@ -1,8 +1,8 @@
-
+
Personal | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/personal/index.xml b/public/tags/personal/index.xml
index f7b8341..ae06892 100644
--- a/public/tags/personal/index.xml
+++ b/public/tags/personal/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/personal/
+ https://0xhenrique.neocities.org/tags/personal/
Recent content in Personal on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:45 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/photo/index.html b/public/tags/photo/index.html
index 278e436..300a964 100644
--- a/public/tags/photo/index.html
+++ b/public/tags/photo/index.html
@@ -1,8 +1,8 @@
-
+
Photo | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/photo/index.xml b/public/tags/photo/index.xml
index 51295be..d7d6079 100644
--- a/public/tags/photo/index.xml
+++ b/public/tags/photo/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/photo/
+ https://0xhenrique.neocities.org/tags/photo/
Recent content in Photo on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:45 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/portugal/index.html b/public/tags/portugal/index.html
index feed8a0..8b6524b 100644
--- a/public/tags/portugal/index.html
+++ b/public/tags/portugal/index.html
@@ -1,8 +1,8 @@
-
+
Portugal | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/portugal/index.xml b/public/tags/portugal/index.xml
index 873bf8b..ee780a7 100644
--- a/public/tags/portugal/index.xml
+++ b/public/tags/portugal/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/portugal/
+ https://0xhenrique.neocities.org/tags/portugal/
Recent content in Portugal on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:45 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/programming/index.html b/public/tags/programming/index.html
index 8a0b9fa..974f12f 100644
--- a/public/tags/programming/index.html
+++ b/public/tags/programming/index.html
@@ -1,8 +1,8 @@
-
+
Programming | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/programming/index.xml b/public/tags/programming/index.xml
index 5dfbb47..25c5c56 100644
--- a/public/tags/programming/index.xml
+++ b/public/tags/programming/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/programming/
+ https://0xhenrique.neocities.org/tags/programming/
Recent content in Programming on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:33 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/projects/index.html b/public/tags/projects/index.html
index 6ac47d1..257cac3 100644
--- a/public/tags/projects/index.html
+++ b/public/tags/projects/index.html
@@ -1,8 +1,8 @@
-
+
Projects | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/projects/index.xml b/public/tags/projects/index.xml
index c2207f0..4d529cb 100644
--- a/public/tags/projects/index.xml
+++ b/public/tags/projects/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/projects/
+ https://0xhenrique.neocities.org/tags/projects/
Recent content in Projects on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:33 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/python/index.html b/public/tags/python/index.html
index e87ed43..654c4ab 100644
--- a/public/tags/python/index.html
+++ b/public/tags/python/index.html
@@ -1,8 +1,8 @@
-
+
Python | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/python/index.xml b/public/tags/python/index.xml
index 1df9aea..d42b6d2 100644
--- a/public/tags/python/index.xml
+++ b/public/tags/python/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/python/
+ https://0xhenrique.neocities.org/tags/python/
Recent content in Python on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:33 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/ricing/index.html b/public/tags/ricing/index.html
index a739c50..db39784 100644
--- a/public/tags/ricing/index.html
+++ b/public/tags/ricing/index.html
@@ -1,8 +1,8 @@
-
+
Ricing | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/ricing/index.xml b/public/tags/ricing/index.xml
index fc5a7ac..72c80bf 100644
--- a/public/tags/ricing/index.xml
+++ b/public/tags/ricing/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/ricing/
+ https://0xhenrique.neocities.org/tags/ricing/
Recent content in Ricing on 0xhenriqueHugo -- gohugo.ioen-usFri, 20 Sep 2024 20:37:15 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/rust/index.html b/public/tags/rust/index.html
index 493d070..6755c49 100644
--- a/public/tags/rust/index.html
+++ b/public/tags/rust/index.html
@@ -1,8 +1,8 @@
-
+
Rust | 0xhenrique
-
+
@@ -13,10 +13,10 @@
diff --git a/public/tags/rust/index.xml b/public/tags/rust/index.xml
index e84fd2c..9dac3d8 100644
--- a/public/tags/rust/index.xml
+++ b/public/tags/rust/index.xml
@@ -1,41 +1,59 @@
0xhenrique
- http://localhost:1313/tags/rust/
+ https://0xhenrique.neocities.org/tags/rust/
Recent content in Rust on 0xhenriqueHugo -- gohugo.ioen-usSat, 17 Aug 2024 07:44:26 +0100
-
+ Why I Chose Guix Over Nix
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/
Mon, 23 Sep 2024 04:35:07 +0100
- http://localhost:1313/why-i-chose-guix-over-nix/
+ https://0xhenrique.neocities.org/why-i-chose-guix-over-nix/<p>I’ve been using NixOS for quite some time, but somehow I ended up with Guix. In this article I will try to write about the reasons why I don’t use Nix anymore.</p>
<h2 id="the-emacs--elisp--sicp--scheme-pipeline">The Emacs > Elisp > SICP > Scheme pipeline</h2>
-<p>I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
+<p><img src="https://i.imgur.com/ouSS2fe.png" alt="SICP_2hu_version">
+I honestly don’t remember the first time I heard about Emacs, but I remember the first time I tried to use it I got gatekept by the Elisp magecraft.
After that, I spent some days trying to learn some basic concepts of this ancient text editor. Thanks to <a href="https://learnxinyminutes.com/docs/elisp/">https://learnxinyminutes.com/docs/elisp/</a> I was able to write some simple functions to make my Emacs experience smoother. To be honest, I didn’t really liked to write Lisp back then, it sucked a lot for me. Even reading simple functions was a hassle since I wasn’t used to see through all the parenthesis.
At that time, I already knew about the ‘Structure and Interpretaion of Computer Programs’ book, but didn’t read until then. It was only after seeing the MIT class linked below that I got hooked into computer magecraft:</p>
-<p><a href="https://www.youtube.com/watch?v=-J_xL4IGhJA" title="MIT Lecture on LISP"><img src="https://img.youtube.com/vi/-J_xL4IGhJA/0.jpg" alt="Lecture 1A: Overview and Introduction to Lisp"></a></p>
+<p>Lecture 1A: Overview and Introduction to Lisp: <a href="https://www.youtube.com/watch?v=-J_xL4IGhJA">https://www.youtube.com/watch?v=-J_xL4IGhJA</a></p>
<p>That was when I finally decided to read the SICP and, consequently, learn Scheme.</p>
-<h2 id="guix-uses-scheme">Guix uses Scheme</h2>
-<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation.
-For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:
-<a href="https://i.imgur.com/9epJ4qs.png">!Nix vs Guix</a></p>
+<h2 id="the-nix-language-and-documentation-sucks">The Nix language and documentation sucks</h2>
+<p>And that alone is huge win for Guix. Configuring Nix packages was a pain in the ass. Not because you need to set everything up from scratch (that’s not even a problem), but because the language is confusing as hell and the documentation doesn’t help. It’s not a secret, everywhere you go on the internet you will find people complaining about how the Nix language is hard to grasp, but no because it is complex, just because it lacks proper documentation. You can’t be sure to find what you’re looking for. All the information is fragmented on the internet, there is not a place where you can just find what you’re looking for.
+At the end of the day you spend more time guessing “where the information is” rather “how to do X”.
+For instance, here’s a comparison between the figlet package ported to Nix and the one ported to Guix:</p>
+<p><img src="https://i.imgur.com/9epJ4qs.png" alt="Nix vs Guix"></p>
+<p>And no, I’m not even talking about how the Nix code is bigger than the Scheme code, that’s not really a problem. The thing is, which one is easier to read? Which one is easier to maintain? Which one is more elegant? Which one is more expressive about what it does?
+The Nix language was a mistake and I think it is the Achilles’ heel of the Nix project. I can assure you that most of the people using NixOS right now don’t even know how the language works, most of the time tthey just copy and paste code that was already written by some Nix wizard and call it a day. But the moment you need to do something new you’re left in the lurch. But I have to admit, most of the Nix wizards are nice people and they will probably help you. The thing is, do you really want to depend so much on the community to get things done?</p>
+<p>Guix solves that. It’s not like you need to learn a complex language to start with Guix, Scheme is relatively simple and most of the time the docs are everything you need to get up and running. Packaging a program for Guix isn’t hard, I plan to make another blog post to delve into that soon.</p>
+<h2 id="the-lisp-way-of-life">The LISP way of life</h2>
+<p><img src="https://imgs.xkcd.com/comics/lisp_cycles.png" alt="Elegant weapons for a more… civilized age"></p>
+<p>There are some reasons why some Emacs wizards stick to LISP: metaprogramming, macros, higher-order functions, recursion etc. Not only that, LISP is a crucial part of computer science history. It helps you understand why things are the way they are. It helps you understand mathematical concepts. It helps you understand functional programming. It helps you understand core concepts of programming, hence Scheme is used as the language for the SICP book.</p>
+<p>And yes, Nix also supports abstractions, but Guix’s use of Scheme provides more powerful and general ways to define those abstractions.
+Since all the Guix configuration and packaging logic is expressed in Guile Scheme, you can deeply customise and program your system at at level.
+For instance, you can define custom operating system services, package definitions, or system configuration options entirely in Guile Scheme.
+You can’t really say the same for NixOS. The language itself is more limited to package definitions, which makes it harder to set system-level configurations. If you want to customise deeply at system-level you will probably need external scripting or some other configuration management tools.</p>
+<p>Scheme has a long history in theoretical computer science and has been used for decades in academic research and programming language design. Using Scheme to configure your system basically gives your superpowers, it’s pretty much like standing on the shoulders of giants.
+To be honest I don’t see a point in learning such a complex language as Nix just to define packages. Scheme gives you so much potential for broader use cases other than package definitions. System configuration, scripting, automation, general programming, you name it. Even if you don’t plan to write packages for Guix you still can use Scheme for lots of other tasks, specially if your using the Guix operating system.</p>
+<h2 id="guix-is-free-as-in-freedom">Guix is Free (as in Freedom)</h2>
+<p>Guix places more emphasis on software freedom and adheres to the FSF standards for ethical distros.</p>
+<p>Yes, I do use some proprietary software, but that’s something I want to change. I would say that the only reason I still use the Linux kernel is because of the lack of free bluetooth drivers for my laptop. That’s something I also want to change. I made a mistake buying a bluetooth headphone, specially because I already knew that there were no free bluetooth drivers for me. I hope to abandon Linux and its proprietary binaries as soon as possible. Software freedom might be hard to achieve, but freedom in general isn’t easy to achieve.</p>
+<p><img src="https://preview.redd.it/7ozal346p6kz.png?auto=webp&s=f1058e3a298c411182de3a9bd788f65cec5d1bc1" alt="RMS_aboslutely_proprietary"></p>
Guix Wallpapers
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/
Fri, 20 Sep 2024 20:37:15 +0100
- http://localhost:1313/guix-wallpapers/
+ https://0xhenrique.neocities.org/guix-wallpapers/<p>I’ve been using Guix for quite some time now. It’s been a great experience so far!
Here are some wallpapers I’ve been collecting for my Guix desktop.</p>
<p>I think it goes without saying that Suika is the perfect candidate to be the Guix mascot .</p>
@@ -53,10 +71,10 @@ Here are some wallpapers I’ve been collecting for my Guix desktop.<
Nazare Beach
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/
Sat, 17 Aug 2024 07:44:45 +0100
- http://localhost:1313/nazare-beach/
+ https://0xhenrique.neocities.org/nazare-beach/<p>I visited Nazaré Beach last year (2023). Such a lovely place.
Shame on me for not taking my camera with me that day. I’m not a fan of smartphone cameras to be honest. Still, I couldn’t let the opportunity pass. Here are some photos I took that day.</p>
<p><img src="https://i.imgur.com/ATjnpyl.jpeg" alt="1st photo"></p>
@@ -70,10 +88,10 @@ Shame on me for not taking my camera with me that day. I’m not a fan o
Monogatari - Text Editor in Python
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/
Sat, 17 Aug 2024 07:44:33 +0100
- http://localhost:1313/monogatari/
+ https://0xhenrique.neocities.org/monogatari/<h1 id="monogatari---text-editorhttpsgithubcomhenrique-marques-vsoftmonogatari"><a href="https://github.com/henrique-marques-vsoft/monogatari">MONOGATARI - Text Editor</a></h1>
<p><img src="https://raw.githubusercontent.com/henrique-marques-vsoft/monogatari/master/pics/shinobu.gif" alt="monogatari-movie scene shinobu kokorowatari"></p>
<p>Monogatari is a text editor built with Python using the Tkinter GUI library.</p>
@@ -115,10 +133,10 @@ $ git push
Lum - Linux Ubiquitous Marker
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/
Sat, 17 Aug 2024 07:44:26 +0100
- http://localhost:1313/lum/
+ https://0xhenrique.neocities.org/lum/<p>Link: <a href="https://github.com/henrique-marques-vsoft/lum">https://github.com/henrique-marques-vsoft/lum</a></p>
<p>Lum is a project I started as a way to escape the feeling of being tied to the web-browser when it comes to bookmarks.
The objective is relatively simple, to have access to my bookmarks outside of the browser. This way I could call my bookmarks from anywhere on the computer, whether from Vim, Emacs, the browser itself, the window manager or wherever.
@@ -132,10 +150,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
Internet Lurk Compilation #1
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/
Sat, 17 Aug 2024 07:44:17 +0100
- http://localhost:1313/internet-lurk-compilation/
+ https://0xhenrique.neocities.org/internet-lurk-compilation/<h2 id="general-findings">General Findings</h2>
<ul>
<li>Pure gold from the 90s: <a href="https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation">https://lunduke.substack.com/p/the-computers-used-to-do-3d-animation</a></li>
@@ -176,10 +194,10 @@ I don’t think parsing 12 thousand objects in JSON is efficient, but it
About
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/
Sat, 17 Aug 2024 07:42:34 +0100
- http://localhost:1313/about/
+ https://0xhenrique.neocities.org/about/<h1 id="whois">whois</h1>
<p>Hello there! You can call me Henrique.
The main purpose of this website is to share some interesting things I find on the world wide web and the projects of mine.
diff --git a/public/tags/travel/index.html b/public/tags/travel/index.html
index 43c95a8..d5ddb0a 100644
--- a/public/tags/travel/index.html
+++ b/public/tags/travel/index.html
@@ -1,8 +1,8 @@
-