Language Selection

English French German Italian Portuguese Spanish

today's leftovers

Filed under
Misc

                   

  • The rise of online readability scrapers

                     

                       

    There are a new breed of services coming out that purport to make the modern web less frustrating to use in specific circumstances. But they’ve incurred the wrath of creators in doing so, and don’t address the structural issues for why we’re at this point.

                       

    A recipe site scraper was the most recent and publicised example. Its developers claimed the tool removed superfluous paragraphs of text surrounding actual cooking instructions, based on the perception that recipe sites are mostly filler. In the social media space, “unroll” services present long Twitter threads on a single page, making them as easy to read as a blog.

                       

    Both of these types of services address a real need people online have, for better or worse. I love reading about the history of a family recipe, but there are far more people who think the padding is only there to serve more ads. Likewise, as long as people insist on using Twitter’s threads feature instead of linking to a blog post, unroll services render them more accessible.

  • Jelmer Vernooij: The upstream ontologist

    The Debian Janitor is an automated system that commits fixes for (minor) issues in Debian packages that can be fixed by software. It gradually started proposing merges in early December. The first set of changes sent out ran lintian-brush on sid packages maintained in Git. This post is part of a series about the progress of the Janitor.

    The upstream ontologist is a project that extracts metadata about upstream projects in a consistent format. It does this with a combination of heuristics and reading ecosystem-specific metadata files, such as Python’s setup.py, rust’s Cargo.toml as well as e.g. scanning README files.

  • Demystifying programs that create programs, part 1: A disassembler

    People appear to enjoy the blog posts about me porting different compilers to OpenBSD. What I would like to do for the next couple of posts beginning with this one is to take a step back and de-complexify these programs. Both the D compiler and the GNU Modula-2 compiler are highly complex pieces of software. But at their core they are the exact same thing: a program that can create programs. We need not explore something so complex in order to learn how to create a program of our own that creates programs. In this series of blog posts, we will create two programs that will help us demystify programs that create programs: first, in this blog post, we will create a disassembler, or a program that reads a program and produces a higher-level representation (assembly); second, in a couple of subsequent blog posts, we will create an assembler, a program that understands that higher-level assembly language and produces a program from it.

  • Demystifying programs that create programs, part 2: Starting an assembler

    It's time to tackle the inverse of a disassembler. It will take a lot more effort than our disassembler, but I believe we are up for it. For today, let's sit down and plan our assembler and begin coding up some boilerplate at least and see how far we get.

  • Demystifying programs that create programs, part 3: Globals, passes, and error handling

    Let's continue writing our assembler. Today, I want to set up any global variables we might need and also set up error handling.

  • Demystifying programs that create programs, part 4: Parsing

    On this episode of building our Z80 assembler, we are going to learn how to parse a line of assembly into tokens. We'll need to do this so that we can figure out what that line of assembly is trying to tell us. Then we will be able to generate the correct object code for that line.

    You may have heard about concepts such as abstract syntax trees, or top-down and bottom-up parsers, or LL and LALR parsers. We are going to discuss none of that. We are instead going to take a much more direct approach: we will assume every line of assembly is its own independent universe. We can therefore parse a line and generate object code in one step. Once we have done that, we will discard the line we are currently working with, read the next line, and repeat the process.

  • LibreOffice Writer Guide 7.1 is just out!

    The LibreOffice documentation team is happy to announce the immediate availability of the Writer Guide 7.1

    The book is a complete guide for advanced user the want to explore the best resources of LibreOffice Writer, the word processor of the LibreOffice suite. Covering advanced topics such as styles, illustrations, indexes and table of contents, master documents, form design, document automation and more, this guide will bring your word processing skills to a professional level.

    The Writer Guide 7.1 is a joint effort of Jean Weber and Kees Kriek, who reviewed and updated The LibreOffice 6.4 Writer Guide with the new features of LibreOffice 7.1, released last February.

    “I enjoy writing user documentation for LibreOffice because it gives me an excuse to learn about new and improved features that I might otherwise not know about. The team members are good to work with, friendly and helpful. I especially want to thank Kees Kriek for reviewing all the chapters of this book.”

  • Mozilla Firefox ends support for Amazon Fire TV, Echo Show

    According to the company, the users will no longer be able to install the app on FireTV, receive security updates, or be able to reinstall the app if they uninstall it starting on April 30.

  • Inkscape [Releases] Beta Download for Version 1.1

    Inkscape will be launching it's much-awaited 1.1 update in the coming months, but in the meantime, you can download the beta on the official website.

  • Next Open NeuroFedora meeting: 12 April 1300 UTC

    Please join us at the next regular Open NeuroFedora team meeting on Monday 12 April at 1300UTC in #fedora-neuro on IRC (Freenode). The meeting is a public meeting, and open for everyone to attend. You can join us over:

More in Tux Machines

digiKam 7.7.0 is released

After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. Read more

Dilution and Misuse of the "Linux" Brand

Samsung, Red Hat to Work on Linux Drivers for Future Tech

The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. Read more

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.