Daril

Joined 3 years ago

Karma
348
Submissions
90
Member since
Jul 15
I provide IT services as freelancer since 1999. My website : https://speedtech.it
View on Hacker News

Recent submissions

Comment · 10 months ago
I used Turbo + Stimulus with a CodeIgniter PHP backend. Later, I used an HTMX bot with CodeIgniter and GoLang. Now, I have migrated my second brain web app (Brainminder) from HTMX to Unpoly.

I really liked HTMX, and I thank the authors for this marvelous library!

I switched from Turbo to HTMX because the latter is much more flexible, and I try to avoid Node.js as much as possible, only using it to compile some JavaScript code for Stimulus.

I finally moved from HTMX to Unpoly for the following reasons:

1. Layer support: Unpoly makes it easy to create layers and modal overlays, saving a lot of time and JavaScript code. You can achieve the same functionality with HTMX, but you have to write more code.

2. JavaScript code is better organized thanks to up.compile hooks.

3. HTMX and Unpoly treat fragments slightly differently. With HTMX, you have to use an out-of-band feature to update multiple fragments together. With Unpoly, you can easily add them to the response (and declare them in the front end, of course).

In my opinion, Unpoly has a better-organized approach to everything. On the other hand, apart from the official documentation, it is difficult to find examples for some edge-case features.

Comment · 1 year ago
Comment · 1 year ago
I have a miniPC (Minisforum) with Debian as server.

I use : - Syncthing (https://syncthing.net/) to keep the files synchronized between desktops and laptops computers

- Webdav (https://github.com/hacdias/webdav) to access the files on the server via other applications

- Cryptomator (https://cryptomator.org/) to crypt/decrypt sensible directories (that are synchronized through Syncthing) Cryptomator allow me to access also the directories via webdav

- MaterialFiles on Andrid to access the files on the server

I access my mini server from outside with a Wireguard VPN created on my Fritz!Box router.

Between home and office I created a site-to-site Wireguard VPN between the two Fritz!Box routers.

Comment · 1 year ago
From a security point of view, I am not comfortable giving a user unlimited access to the server. I don't know what solution pgEdge is implementing, but granting full access to the server when it should only operate on PostgreSQL is a security concern for me.
Comment · 1 year ago
I wanted to try it months ago ... but I stopped when I read in the install documentation :

To configure passwordless sudo, open the /etc/sudoers file, and add a line of the form: %username ALL = (ALL) NOPASSWD: ALL

And the same user should have a password less SSH access with private key ...

Comment · 1 year ago
Comment · 1 year ago
Right, but having a unique codebase and one development tool for Linux, Windows and Macos (probably), would help a lot to reduce the effort to maintain the application.
Comment · 1 year ago
Very good news that the Freepascal version compiles and works correctly also on Windows. As you said, Delphi was a huge barrier to prevent other developers to contribute, but if we can use Lazarus, Heidi can receive a lot of help not only for Linux version but also for Windows one. Probably, thanks to Freepascal / Lazarus, it can be ported easily also to Mac OS now.
Comment · 1 year ago
Comment · 1 year ago
Based on this comparison :

https://c3-lang.org/faq/compare-languages/

One would argue that the best C/C++ alternative/evolution language to use would be D. D also has its own cross-platform GUI library and an IDE.

I wonder for which reasons D doesn't have a large base adoption.

Comment · 1 year ago
HeidiSQL is free software for people who work with databases, and aims to be intuitive to use. "Heidi" lets you connect to a variety of databases, like MariaDB, MySQL, Microsoft SQL, PostgreSQL, SQLite, Interbase and Firebird.

Since some days it is finally available in a native Linux version. The code has been ported from Delphi to FreePascal / Lazarus.

Comment · 1 year ago
Hi, I know I didn't have time to describe it properly. Currently, I am focusing more on adding features and making it more usable. In simple terms:

1. It is possible to create different types of items: books, ideas, projects, tasks, etc.

2. Every item can have its own custom fields, such as author for a book or priority for a task.

3. All items are stored in a single SQLite table, so you can search through all items and edit them if necessary.

4. Fourth, it is possible to establish relations between items: parent, child, or simple link.

5. There is a space called "Quickbox" where you can quickly register a link or a note to read later and transform it into an item.

6. Items can be part of one or more notebooks, such as Personal, Work, or Family.

I have many ideas to make it more useful, but some basic features are still missing, such as:

1. Attach images or documents to each item and access all the attachments as a separate library.

2. Multi-user support

3. Multilingual support

4. Kanban support for tasks.

The most interesting part for me is adding systems/structures that can help me analyze problems and find proper solutions.

This idea is still vague, but I'd like to implement workflows that can help me become a better thinker, improve my creativity, and enhance my ability to make rational decisions. I'd like to integrate also logic programming in the process, probabily using Prolog.

I don't want to lose the manual aspect of thinking, so I'm considering creating prefilled documents to help study problems and find solutions.

I have used Golang and SQlite on backend and PWA and HTMX on frontend.

Comment · 1 year ago
I think an PKMS is strictly related to how each of us thinks. It's similar to project management/organizer tools. I also created my own (https://brainminder.it/) based on how I think: I prefer to organize items by type with different fields that I can add and search. Instead of simply collecting ideas and thoughts, I'm trying to build a system that can help me evaluate leveraging what I've entered.
Comment · 1 year ago
Yes, I understand your point of view, but in my experience these ORM libraries when you create a class or a structure and then the library build the SQL code behind the scenes can suffer from some relevant issues :

1. you have no control over the generated SQL and because it has to be generic and db agnostic, might not be the best option depending on the database you are currently using

2. when something doesn't work as expected, and it happens, they are difficult to debug (too many layers) and find the issue

3. they are extremely inefficient, because they have to dynamically build every time the code is run the corresponding SQL code : I'm sure most would implement some caching mechanism to prevent this , but in any case it's a waste of resources.

This is just anecdotal, but I remember trying SQLAlchemy many years ago for a small Python program I was writing for a RaspberryPi 3 : it was extremely slow. So, I removed the library and used instead the native database binding for MariaDB instead, and the speed improved a lot.

For PHP, the situation is the worst because there is no application server (they exist, but not very widely used), but the code is regenerated every time. This is the main problem in any large PHP project, such as Nextcloud. If they would adopt FrankenPHP or RoadRunner, they could improve the performance of the applications a lot.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton