How I protect my forgejo instance from AI Web Crawlers
TL;DR: Put that in your nginx config: location / { # needed to still allow git clone from http/https URLs if ($http_user_agent ~* "git/|git-lfs/") { set $bypass_cookie 1; } # If we see the expected cookie; we could also bypass the blocker page if ($cookie_Yogsototh_opens_the_door = "1") { set $bypass_cookie 1; } # Redirect to 418 if neither condition is met if ($bypass_cookie != 1) { add_header…
AI Assistant return of experience
TL;DR of TL;DR: With the correct setup LLM-based AI Assistant have their place in the Software Developer tool-belt. TL;DR: Evaluations The Good: (++) answering specific technical questions (with references), (++) write small unreliable scripts nor prod-level quality (if helped) (+) simple/repetitive coding tasks, boilerplate, (+) review (+) documentation writing The Bad: (-) test writing (-)…
AI Assistants setup in Emacs & Clojure-MCP
This article is about how to setup Emacs (doom-emacs in particlar) to work with most AI Assitants for Clojure projects using Clojure-MCP to provide the AI assistant the ability to run commands in the Clojure REPL. Introduction By the end of this article, you'll be able to give instructions to the AI Assistant and it will use the REPL of your specific project to execute them. For example, I asked…
ob-metapost
When I searched how to generate pictures in org-mode on the Internet, Metapost is surprisingly missing. If you never tried Metapost, I think you should really take a look at this gem. This article will simply provide an example how I could create an emacs package (not yet distributed) to use Metapost in my org-mode documents. The script One of the main issue with Metapost is that, like L A T E X…
How I became rich with AI and how you can join me!
WARNING Humor is the least shared thing. —Forgotten politician Things appear to have changed in the recent years. The same content is put in front of the eyes of so many people that a few of them are no more able to distinguish if a content is a satire or dead serious. With that in mind, sorry to make it that obvious, but here is the disclaimer: THIS POST IS A SATIRE As all satire, there is a…
BRUT: a bare-bones CSS Framework
TL;DR: brut.esy.fun Warning : I built this CSS Framework for my personal use. I am not a UI developer, and I am certainly not following best practices. That being said, I used this for a few different internal projects and I was happy enough about the result to blog about it. Brut CSS Framework Hompage Over the years, I've developed numerous private web applications – most often internal tools…
A quick CORS proxy in a few lines of Clojure
When I open a new tab in my browser I see my hand-made starter homepage. This is a single HTML file on my computer. Not a hosted website. This homepage is really useful and along the years I added some functionalities: organized links for my most frequently used websites direct text input to some specialized search engines work related links to a lot of different places, I see the APIs, the…
Replace docker-compose with nix-shell
At work we use docker-compose to run integration tests on a big project that need to connect to multiple different databases as well as a few other services. This article is about how to replace docker-compose by nix for a local development environment. Quick tutorial nix-shell-fu level 1 lesson Let's start with a basic shell.nix example: { pkgs ? import ( fetchTarball https ://…
My first ChatGPT exchange
The first few questions for ChatGPT I finally opened an account to beta-test ChatGPT. I must say, I am quite impressed. I asked it a few questions that I could have asked during an interview. To my surprise, the answer given was, while wrong, believable enough to kind of sneak the answer as right up to some imprecision. Like if you squint enough, it could pass, but if you pay attention it is…
Org agenda on your startup page
Your org-agenda at your homepage During most of the day my emacs is open. But I sometime forget to look at my org-agenda. This is why I wanted to find another way to be exposed to it. And one thing I am mostly exposed to is my personal start page. This is just the default page I see when I open my browser. Here is the end result: The result inside my start page My start page is named mothership .…
My personal environment sync
I have a quite specific system that I improved along the years to manage my local environment. Think about, binaries I expect to have in my shell, as well as configuration files for various utilities, and a few personal scripts. The notion of what is exactly my local environment is not perfectly defined. I expect every of my computers to behave slightly differently. Some are for work-only, some…
iA writer clone within doom-emacs
So I played with tweaking my emacs configuration again. I think I made something worth to be shared. I wanted to have the same effect than in iA writer within emacs. And I just reached this. So the effect I am looking to achieve can be seen in this video. zen-writer-demo video (7.2MB) It highlight the current sentence (in black) while the rest of the text is gray. The main issue with the…
Cool looking org-mode
TL;DR: My tweaked configuration to make org-mode even more pleasant to use. The code At the end of this article there is a long digression about why I ended up here. But instead of bothering you with the why here is a what it looks like, and how to achieve it. First you need to install some dependencies. Install nerdfonts 1 Tell org-mode to use variable-pitch-mode (variable width font) Use (setq…
Utopia (2013)
Utopia I wanted to write a few articles about great shows lot of people around me do not know about. Utopia (2013) is one of these TV Shows that deserve more attention. The filmography is quite original. I have never seen another film/TV show with a similar atmosphere. The usage of bright colors is magistral. Flashy yellow, green, red. The soundtrack is also pretty surprising original and…
Fast Static Site with make
This article will dig a bit deeper about my Makefile based static website generator. In a previous article I just gave the rationale and an overview to do it yourself. Mainly it is very fast and portable. A few goals reached by my current build system are: Be fast and make the minimal amount of work as possible. I don't want to rebuild all the html pages if I only change one file. Source file…
Static Blog Builder
As someone on the Internet said not so far ago. Building its own static building system is a rite of passage for many developers. It has a lot of nice features. It gives a goal with a feeling of accomplishment. It is simple enough so most developers could build their own system. It could also become complex when you go down the rabbit hole. Along the years I used different tools and used and wrote…
Gemini
This weekend I read an article about gopher and gemini. I already seen articles about gemini pass. Somehow, it was more appealing to me than gopher space for totally subjective reasons I think. Anyway this time I really dug into it, and I loved the experience. At first sight gemini is like a parallel web for nerds. It has fundamental changes that I would have really liked to see from the modern…
How I use org-mode
Overview daily routine document writing note taking journal Task Management Workflow 1; planned tasks : org-agenda + clock Workflow 2: Tracking; org-capture Workflow 3: Add new tasks; org-capture / org-refile Configuration Conclusions Footnotes In this article I would like to share a tool that was a real life changer to me: org mode . In my opinion emacs is worth learning just for org-mode. This…
Auto change emacs theme
One thing I kind of like is the ability to change emacs theme depending of the hour. There are two possibilities. One would be to sync with the sun using the current location. There is an emacs package for that. It's called theme-changer which at the time of writing those lines is asking for a new maintainer. This theme changer is very elegant because like macOS use the location to determine if it…
How to choose your tools
This week I didn't take a look at HN to grab some news. And this week-end, in the morning I read those: Zoom acquires keybase Making Emacs popular again Github Codespace Welcome to Halsingland Similar articles have existed for years on different products. What is their common point? Software tooling and their potential change and disappearance . Across the years, too many times I saw tools…