Language Selection

English French German Italian Portuguese Spanish


Enter your Tux Machines username.
Enter the password that accompanies your username.

More in Tux Machines

Python Programming

  • EuroPython “Ask me Anything”

    we want to try a new experiment and run an “Ask me Anything” (AMA) this Thursday to answer questions you may have, share our knowledge or help you in planning your online event.

  • Async Views in Django 3.1

    Writing asynchronous code gives you the ability to speed up your application with little effort. With Django 3.1 finally supporting async views, middleware, and tests, now's a great time to get them under your belt.

  • Read-Only Attribute

    If you want to make a single attribute read-only on a class, the easiest way to do it is to make a property representing your attribute.

  • Working With Linked Lists in Python

    Linked lists are like a lesser-known cousin of lists. They’re not as popular or as cool, and you might not even remember them from your algorithms class. But in the right context, they can really shine. If you’re looking to brush up on your coding skills for a job interview, or if you want to learn more about Python data structures besides the usual dictionaries and lists, then you’ve come to the right place!

  • The Python Software Foundation re-opens its Grants Program!

    The Python Software Foundation is excited to announce the re-opening of its Grants Program! The pandemic negatively affected the PSF’s finances with the cancellation of PyCon 2020’s in-person conference and lower donations. Thanks to PyCon 2020 Online sponsors, donors, and our financial reserve, we are able to continue to support the Python community!

  • Fun with SDF records - chemfp's text toolkit

    Earlier this year, Noel O'Boyle wrote the essay Python patterns for processing large SDF files and Richard Apodaca wrote Reading Large SDfiles in Rust. In this essay I'll show some examples of using chemfp's text toolkit API to extract non-chemical/near-chemical data from SDF records. The next essay will be a short one on read_sdf_ids_and_values(), followed by one which is more chemisty focused.

today's leftovers

  • ADRIConf Remains The Primary GUI Control Panel For Managing Mesa OpenGL/Vulkan Drivers

    While the Linux kernel graphics drivers and user-space OpenGL/Vulkan drivers expose a lot of options via sysfs on the kernel side and various environment variables and other tunables in user-space, when it comes to graphical control panels to manage these open-source graphics drivers on Linux there are several fragmented different options. For Mesa drivers, ADRIConf remains the leading option. [...] Jean Hertel presented at last week's XDC2020 conference on this utility and its current capabilities with additions in recent years like Vulkan driver support, PRIME GPU handling, MESA_query_driver support, and more.

  • TURNIP Vulkan Driver Up And Running On Qualcomm's KGSL

    The TURNIP driver that is associated with the Freedreno driver effort for providing an open-source Vulkan driver for Qualcomm Adreno graphics hardware can now run atop Qualcomm's KGSL kernel driver. To date this TURNIP Vulkan driver has been working well with the upstream MSM Direct Rendering Manager driver in the Linux kernel, but for those using Qualcomm's official kernel driver (KGSL) that is out-of-tree, it's now a possibility using TURNIP atop that. The Kernel Graphics Support Layer (KGSL) is part of the Android kernel sources and specific to Qualcomm.

  • Felgo in the QML Book

    Over the past year I’ve been bumping into the Felgo crew at various Qt events. They take Qt to the next level. It all started as a game development framework for Qt, but has turned into a powerful app development framework taking a lot of the rough corners of Qt, and extending the tooling with a powerful live reloader at the same time. [...] We also cover a bunch of other things such as how to get started, the QML Live reloader, as well as some more advanced topics such as native dialogs, simplified networking and the JsonListModel.

Free Software Leftovers

  • WordPress Mobile Engineers Propose Dual Licensing Gutenberg under GPL v2.0 and MPL v2.0

    During a Q&A session at WordCamp Europe 2020 online, Matt Mullenweg mentioned that Gutenberg contributors were considering dual licensing for embedding Gutenberg in mobile apps, along with the requirement that they would need to get an agreement from all contributors. WordPress mobile engineer Maxime Biais has just published a proposal for discussion, recommending dual licensing the editor under GPL v2.0 and MPL v2.0. [...] Mobile app developers are limited by the GPL, because it requires the entire app to be distributed under the same license. The team is proposing dual licensing under MPL v2.0, a weaker copyleft license that is often considered to be more “business-friendly.” It allows users to combine the software with proprietary code. MPL v2.0 requires the source code for any changes to be available under the MPL, ensuring improvements are shared back to the community. The rest of the app can be distributed under any terms with the MPL v2.0 code included as part of a “larger work.”

  • NoSQL databases: what is MongoDB and its use cases?

    Databases like MongoDB, a NoSQL document database, are commonly used in environments where flexibility is required with big, unstructured data with ever-changing schemas. This post explains what a NoSQL database is, and provides an overview of MongoDB, its use cases and a solution for running an open source MongoDB database at scale.

  • What Cassandra users think of their NoSQL DBMS

    With the NoSQL market expected to be worth $22 Billion by 2026, big business is paying Apache Cassandra a lot of attention. While MongoDB dominates NoSQL, 52.71% to Cassandra's 9.73%, Cassandra, with its ability to deliver continuous availability, high performance, and scalability to large volumes of unstructured data, will always be a player. Now, if only there were more expert Cassandra administrators! A global survey of 1,404 Cassandra practitioners found a plurality thought the lack of skilled staff and the challenge of migration was blocking Cassandra's adoption. To be exact, 36% of users currently using Cassandra for mission-critical apps said that a lack of Cassandra-skilled team members was deterring its broader adoption. When asked what it would take for practitioners to use Cassandra for more applications and features in production, they said it needs to be "easier to migrate" and "easier to integrate." That's because "we don't have time to train a ton of developers, so that time to deploy, time to onboard, that's really key. All the other stuff, scalability, that all sounds fine," said a London-based senior Cassandra user. That may be in part because of those surveyed, 89% were using open-source Cassandra. If they were using DataStax, the most popular Cassandra distro, it might be a different story.

  • Olauncher gives your home screen an open-source, minimalist makeover

    Android's open, customizable nature is one of the things that attract a lot of enthusiasts to the platform. From manufacturer-specific tweaks to third-party default app replacements, there's usually a way to make your phone look and act how you choose. Olauncher is a new home screen replacement app that endeavors to bring an open-source, lightweight, and minimal setup to your phone. And minimal it is — there's time and date info up top, a list of apps below ... and that's it. The clock and app list can be set to left, center, or right orientations. A maximum of six app names can be displayed, but if you're the most minimal of minimalists, you can set it to show no apps at all. But wouldn't that render it useless? Not quite! By default, swiping to the left launches the camera and swiping to the right opens up the dialer, but you can customize these as you choose. A swipe up opens the full app list organized alphabetically.

Programming Leftovers

  • Josef Strzibny: Elixir macros return AST

    Macros are a powerfull part of the Elixir language and projects such as Absinth would not even be possible without them. To start writing your macros in Elixir one has to understand one simple thing. Macro functions have to return a partial abstract syntax tree.

  • Marcin 'hrw' Juszkiewicz: From a diary of AArch64 porter — drive-by coding

    Working on AArch64 often means changing code in some projects. I did that so many times that I am unable to say where I have some commits. Such thing got a name: drive-by coding. [...] Then comes moment of looking at build errors and trying to work out some solution. Have I seen that bug before? Does it look familiar? If this is something new then quick Google search for error message. And checking bug reports/issues on project’s website/repo. There can be ready to use patches, information how to fix it or even some ideas why does it happen. If this is system call failure in some tests then I check my syscalls table are those ones handled on aarch64 and try to change code if they are not (legacy ones like open, symlink, rename).

  • Sebastian Dröge: Porting EBU R128 audio loudness analysis from C to Rust

    Over the last few weeks I ported the libebur128 C library to Rust, both with a proper Rust API as well as a 100% compatible C API.

  • Why is unauthenticated encryption insecure?

    However, there has to be a line – when does it start becoming “rolling your own”? Particularly in embedded systems, there are times when custom protocols need to be used, and developers stray into the dangerous area of cryptography.

    One of the most common mistakes we have seen is the use of unauthenticated encryption.

  • k2k20 hackathon report: Bob Beck on LibreSSL progress

    So the distilled answer, most of this was finished, reviewed, and landed at the hackathon, where I took a lot of tb@ and jsing@'s time to review it. I then spent much of my time chasing any bugs it turned up - which included some nasty ways fetchmail deals with the callback, and some issues in bluhm@'s regress tests and perl's ssleay module (which exposed a bug in how I was handling the legacy callback)

    So while not necessarily "done" (I am watching for fallout carefully) and I still have some pieces to land to expose the new api to the new validator, it is currently used internally by default in X509_validate_cert(). The result of this should be a validator that will correctly validate modern x509 chains and correctly deal with name constraints.

  • 2020.38 Council Results

    Votemaster Will Coleda has published the results of the first Raku Steering Council election. Thanks to everybody who has voted! The elected council members are (in alphabetical order of their last name):