Language Selection

English French German Italian Portuguese Spanish

Login

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

More in Tux Machines

Mozilla: Firefox for Android Nightly, prefers-contrast and more

  • New Extensions in Firefox for Android Nightly (Previously Firefox Preview)

    Firefox for Android Nightly (formerly known as Firefox Preview) is a sneak peek of the new Firefox for Android experience. The browser is being rebuilt based on GeckoView, an embeddable component for Android, and we are continuing to gradually roll out extension support. Including the add-ons from our last announcement, there are currently nine Recommended Extensions available to users.

  • Adding prefers-contrast to Firefox

    In this article, we’ll walk through the design and implementation of the prefers-contrast media query in Firefox. We’ll start by defining high contrast mode, then we’ll cover the importance of prefers-contrast. Finally, we’ll walk through the media query implementation in Firefox. By the end, you’ll have a greater understanding of how media queries work in Firefox, and why the prefers-contrast query is important and exciting. When we talk about the contrast of a page we’re assessing how the web author’s color choices impact readability. For visitors with low vision web pages with low or insufficient contrast can be hard to use. The lack of distinction between text and its background can cause them to “bleed” together.

  • Browser Wish List - Tabs Time Machine

    It would be interesting to see the exact distribution, because there is a cohort with a very high number of tabs. I have usually in between 300 and 500 tabs opened. And sometimes I'm cleaning up everything. But after an internal discussion at Mozilla, I realized some people had even more toward a couple of thousand tabs opened at once. While we are not the sheer majority, we are definitely a group of people probably working with browsers intensively and with specific needs that the browsers currently do not address. Also we have to be careful with these stats which are auto-selecting group of people. If there's nothing to manage a high number of tabs, it is then likely that there will not be a lot of people ready to painstakly manage a high number of tabs.

Python Programming

  • Flask project setup: TDD, Docker, Postgres and more - Part 3

    In this series of posts I explore the development of a Flask project with a setup that is built with efficiency and tidiness in mind, using TDD, Docker and Postgres.

  • Stop working so hard on paths. Get started with pathlib!

    In version 3.4, python shipped with a new module in the standard library, pathlib . At the time of its release, I remember hearing some fanfare around it, but I didn’t quite understand the point of it. I had only recently stopped adding strings together to create paths to the files and folders I needed to work with, in favor of using the os and os.path modules. It took me a little while to experiment with it and plumb the documentation for useful bits. Since then, I’ve learned a lot about the pathlib module, and as I have said before, it is my favorite module in the standard library. While that’s the case, most people I talk to about it are working to hard to access files and folders with python. Many have either not heard about it, or they still don’t understand it.

  • Paolo Amoroso: Repl.it Redesigned the Mobile Experience

    On smartphones, now the focused REPL pane takes up most of the screen. The redesign takes advantage of native mobile design patterns and lets you switch to a different pane from the bottom navigation bar. There are panes for the code editor, the console, and the output.

  • PSF GSoC students blogs: Weekly Check-in #6
  • PSF GSoC students blogs: Weekly Blog Post | Gsoc'2020 | #6

Tauon Music Box – Modern Streamlined Music Player for Linux Desktop

Touan Music Box is a modern, comfortable and streamlined music player for the playback of your music collection. The software is written in Python, and uses GStreamer or optionally BASS Audio Library for playback. Read more

Programming Leftovers

  • DevOps Tools: Why We Don't Need More CI/CD Suites
  • How to install the Go language on Linux

    Go is one programming language that's on the rise. In fact, according to Popularity of Programming Languages, Go is at No. 14 and steadily climbing up the ranks. Go is used specifically for distributed systems and highly-scalable network servers and has replaced C++ and Java in Google's software stack. Chances are, you'll be using Go sometime soon. For those who develop on Linux, you can't just install it from the standard repositories. So how do you install this popular programming language on the open source operating system? Fear not, I'm going to show you.

  • What if? Revision control systems did not have merge

    A fun design exercise is to take an established system or process and introduce some major change into it, such as adding a completely new constraint. Then take this new state of things, run with it and see what happens. In this case let's see how one might design a revision control system where merging is prohibited.

  • What you need to know about hash functions

    There is a tool in the security practitioner's repertoire that's helpful for everyone to understand, regardless of what they do with computers: cryptographic hash functions. That may sound mysterious, technical, and maybe even boring, but I have a concise explanation of what hashes are and why they matter to you. A cryptographic hash function, such as SHA-256 or MD5, takes as input a set of binary data (typically as bytes) and gives output that is hopefully unique for each set of possible inputs. The length of the output—"the hash"—for any particular hash function is typically the same for any pattern of inputs (for SHA-256, it is 32 bytes or 256 bits—the clue's in the name). The important thing is this: It should be computationally implausible (cryptographers hate the word impossible) to work backward from the output hash to the input. This is why they are sometimes referred to as one-way hash functions. But what are hash functions used for? And why is the property of being unique so important?

  • GStreamer 1.17.2 unstable development release

    The GStreamer team is pleased to announce the second development release in the unstable 1.17 release series. The unstable 1.17 release series adds new features on top of the current stable 1.16 series and is part of the API and ABI-stable 1.x release series of the GStreamer multimedia framework. The unstable 1.17 release series is for testing and development purposes in the lead-up to the stable 1.18 series which is scheduled for release in a few weeks time. Any newly-added API can still change until that point, although it is rare for that to happen. Full release notes will be provided in the near future, highlighting all the new features, bugfixes, performance optimizations and other important changes. The autotools build has been dropped entirely for this release, so it's finally all Meson from here on.

  • Qt Design Studio - Sketch Bridge Tutorial Part 1

    Welcome to this Qt Design Studio Sketch Bridge Tutorial, to follow along with this you will need the commercial Qt Design Studio 1.5 Package and Sketch Bridge, macOS and Sketch installed (I'm using 66.1). With this tutorial I want to show you how to build up a sketch project that creates a clean export and import into Qt Design Studio (which i will refer to as qds for the rest of the tutorial), uses symbols and instances for proper componentization and goes back and forth from Sketch to qds in iterative loops building up a more complex scene from simple building blocks. I'll also cover some of the most common issues i come across from other users and the tips and tricks I've developed while working with the Bridge Plugin. I think it's important before we start to clarify that although Sketch allows designers to achieve their design concepts in a flexible and open ended manner, in order to have a pixel perfect design built around developer friendly components in qds, it is very important to structure and prepare your project in a certain manner, and although that is not overly complex to learn it does take some time and knowledge to do it well. My hope is this tutorial will provide you with the necessary experience to bring your designs much closer to this point. With this caveat out the way let's dive right in and start designing. [...] Now we have the default background state for the button let’s create the other two states we want to use for this tutorial, a hover and pressed state. We can do this by duplicating our original rectangle, renaming the layers and then putting them side by side for now so we can see the design changes in parallel, to make this a bit easier we can drag the symbol width out so we can fit our buttons side by side, we will be resizing this after we are done with the design.

  • Excellent Free Tutorials to Learn Solidity

    Solidity is an object-oriented, high-level language for implementing smart contracts. Solidity lets you program on Ethereum, a blockchain-based virtual machine that allows the creation and execution of smart contracts, without requiring centralized or trusted parties. Solidity is statically typed, supports inheritance, libraries and complex user-defined types among other features. With Solidity you can create contracts for uses such as voting, crowdfunding, blind auctions, and multi-signature wallets. Solidity was influenced by C++, Python and JavaScript. Like objects in OOP, each contract contains state variables, functions, and common data types. Contract-specific features include modifier (guard) clauses, event notifiers for listeners, and custom global variables.