Programming Leftovers
-
HoneytreeLabs ☛ Coding in C++ like it's Golang (Part 2)
Golang has some nice features such as multiple return values, the defer keyword, and channels. This article shows how to implement Golang’s defer statement in Modern C++.
-
AdventOfCode ☛ Advent of Code
Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as interview prep, company training, university coursework, practice problems, a speed contest, or to challenge each other.
You don't need a computer science background to participate - just a little programming knowledge and some problem solving skills will get you pretty far. Nor do you need a fancy computer; every problem has a solution that completes in at most 15 seconds on ten-year-old hardware.
-
Matteo ☛ Tokenizing Arithmetic expressions - calculator p.1
This is the first post of a four part series around implementing and understanding the steps for interpreting arithmetic expressions. The series is meant for explaining key concepts such as lexical analysis, parsing / building the ast, walking the ast / flatting it to byte code, bytecode virtual machines and TDD centered around compilers and interpreters.
-
Adriaan de Groot ☛ C++ Guidelines
C++ is definitely a language that has Lots of Ways to do It – kind of like Perl’s TIMTOWTSAC. A consequence is that when writing code, you need to think about which way to do things. When context-switching between projects, employers, or what-have-you, you may have to context-switch preferences for which way is preferred. Guidelines can help, and I love them.
-
Python
-
Python Speed ☛ Two kinds of threads pools, and why you need both
When you’re doing large scale data processing with Python, threads are a good way to achieve parallelism. This is especially true if you’re doing numeric processing, where the global interpreter lock (GIL) is typically not an issue. And if you’re using threading, thread pools are a good way to make sure you don’t use too many resources.
But how many threads should your thread pool have? And do you need just one thread pool, or more than one?
-
-
Education
-
Perl ☛ FOSDEM 2024 Call for Participation
The Perl and Raku Foundation is thrilled to announce that the FOSDEM organising team has accepted our proposal to set up a DevRoom on Saturday, February 3rd 2024. It has been quite a few years since the last Perl DevRoom at FOSDEM. Historically, they have always been well attended and packed.
-
Raspberry Pi ☛ Evolving our online courses to help more people be computing educators
Here's what we're doing to make sure our free online courses enable all adults who support young people to teach them about computing.
-
-
GNU and FSF
-
GNU ☛ RFC 9498: The GNU Name System
GNS addresses long-standing security [1] and privacy [2] issues in the ubiquitous Domain Name System (DNS) [3]. Previous attempts to secure DNS (DNSSEC [4]) fail to address critical security issues [5] such as end-to-end security, query privacy, censorship, and centralization of root zone governance. After 40 years of patching, it is time for a new beginning.
The GNU Name System is our contribution towards a decentralized and censorship-resistant domain name resolution system that provides a privacy-enhancing alternative to the Domain Name System (DNS).
-
RFC ☛ RFC 9498: The GNU Name System
This document provides the GNU Name System (GNS) technical specification. GNS is a decentralized and censorship-resistant domain name resolution protocol that provides a privacy-enhancing alternative to the Domain Name System (DNS) protocols.
This document defines the normative wire format of resource records, resolution processes, cryptographic routines, and security and privacy considerations for use by implementers.
This specification was developed outside the IETF and does not have IETF consensus. It is published here to inform readers about the function of GNS, guide future GNS implementations, and ensure interoperability among implementations (for example, pre-existing GNUnet implementations).
-
FSF ☛ FSF Events: Free Software Directory meeting on IRC: Friday, November 24, starting at 12:00 EST (17:00 UTC)
Join the FSF and friends on Friday, November 24, from 12:00
-