Language Selection

English French German Italian Portuguese Spanish

Development

Programming Leftovers

Filed under
Development
  • Ravgeet Dhillon: Offline Toast notification in Nuxt/Vue app

    We have often seen apps telling us that “You are offline. Check your network status.”. It is not only convenient to do so but adds to a great UX. In this blog, we will look at how can we display a toast notification in a Nuxt/Vue app whenever the user goes offline or online. This will also help us to understand how to use computed and watch properties together.

    [...]

    Hurray! Our toast notifications are working perfectly fine. So using the combined magic of computed and watch properties, we can create outstanding workflows and take our Nuxt/Vue app to next level. If you any doubts or appreciation for our team, let us know in the comments below. We would be happy to assist you.

  • Stephen Michael Kellat: Leveraging LaTeX In This Time

    From time to time I like to bring up fun adventures in LaTeX. In these stranges times in the United States it is important to look at somewhat practical applications beyond the normal reports and formal papers most people think of. With a Minimum Working Example we can mostly look at an idea.

    The Comprehensive TeX Archive Network has a package known as newspaper which is effectively subject to nominative determinism. You can make things with it that look like newspapers out of the 1940s-1960s in terms of layout. The page on CTAN shows nice examples of its use and provides a nice story as to why the package was created.

    The example source file on CTAN has a bug in it, though. We're going to make a new one based on it. I am also going to add but not yet utilize the markdown package to the example.

  • 2021.03 Course Topped – Rakudo Weekly News

    The course of the Raku Programming Language by Andrew Shitov made it to the top 20 of Hacker News and spurred quite a few comments. The first associated Grant Report was also published.

  • GCC 11 Is On The Final Stage Of Development With 60+ High Priority Regressions - Phoronix

    GCC 11 entered its final stage of development today as it works towards releasing around the end of Q1 / early Q2 if their past cadence holds up. Before GCC 11.1 can debut as the first stable version, there are some 60+ "P1" high priority regressions that need to be resolved or otherwise demoted to lesser priority regressions.

    GCC 11 release manager Richard Biener this morning announced GCC 11 is now in stage four development meaning only regression fixes and documentation fixes are allowed. As of this morning the code-base is at 62 P1 regressions, another 334 P2 regressions, 35 P3 regressions, and more than 200 regressions of the lower P4/P5 status.

Raspberry Pi and Programming Leftovers

Filed under
Development
  • Over:Board turns a Raspberry Pi Compute Module 4 into a mini-ITX motherboard (crowdfunding)

    The Over:Board is a mini-ITX motherboard designed to make it easy to use the CM4 in any mini ITX computer case. The developer is running a crowdfunding campaign for the project and says it should be ready to ship by September (although folks who want something sooner can reserve a prototype or pre-production unit).

  • 7 New Raspberry Pi CM4 Boards for 2021! - YouTube
  • C++ Standard Conversions

    There are two entity types in C++, the fundamental types and the compound types. The fundamental types are the scalar types. The compound types are the rest of the entity types. Conversion can take place from one entity type to another appropriate type.

    [...]

    The output is 2, 2, meaning that the program has returned the square root of 5 as 2 and the square root of 8 also as 2. So, the first two statements in the main() function have floored the answers of the square root of 5 and the square root of 8. This article does not discuss flooring or ceiling in C++. Rather, this article discusses the conversion of one C++ type to another appropriate C++ type; indicating any approximation in value made, loss of precision, or constraint added or removed. Basic knowledge of C++ is a prerequisite to understand this article.

  • Project Tour: Hashistack (Terraform, Consul, Nomad on AWS)

    I've always wanted to be able to set up a full consul, nomad, vault, etc. environment (along with hosted applications) with a single "terraform apply." I've spent a few weekends on this now and wanted to give a small tour, although it's still a work in progress.

  • Introspective labeling

    IRC is a good place to find answers. Often I find the questions found there to be even more enlightening.

Programming Leftovers

Filed under
Development
  • GCC's Profile Guided Optimization Performance With The Ryzen 9 5950X - Phoronix

    Given the talk in prior days around patches for PGO'ing the Linux kernel and some readers not being familiar with Profile Guided Optimizations by code compilers, here are some fresh benchmarks on a Ryzen 9 5950X looking at the benefits of applying PGO optimizations to various benchmarks.

    We have benchmarked GCC and Clang PGO performance many times over the years with this just being some fresh data using a Ryzen 9 5950X and the latest software stack on Ubuntu 20.10. The testing was done by first running various open-source benchmarks without PGO, repeating the tests to generate profiles for the compiler to consume with PGO, and then benchmarking those PGO-enabled builds. These numbers are about best case scenarios given that with the testing for the PGO-enabled build, the benchmarks are repeated and thus matching well to the original profile. In more real-world, general purpose scenarios it can be more difficult generating an accurate profile for your actual workflow / software usage.

  • libsigsegv @ Savannah: libsigsegv 2.13 is released

    libsigsegv version 2.13 is released.

  • I told you so, 2021 edition

    You will recall that in 2004, which is now seventeen years ago, I wrote a document explaining why I made the design trade-offs that I did in XScreenSaver, and in that document I predicted this exact bug as my example of, "this is what will happen if you don't do it this way."

    And they went and made that happen.

    Repeatedly.

  • Jamie Zawinski Calls Cinnamon Screensaver Lock-Bypass Bug 'Unconscionable'

    Legendary programmer Jamie Zawinski has worked on everything from the earliest releases of the Netscape Navigator browser to XEmacs, Mozilla, and, of course, the XScreenSaver project.

  • Why and How to Use Java.util.stream.Collectors

    Streams are a wonderful feature in Java allowing you to write clean, efficient and powerful code.

    If you haven’t consumed the output of the stream, you will probably want to collect it. That’s when the methods from Java.util.stream.Collectors come to help.

Programming Leftovers

Filed under
Development
  • Better Fujitsu A64FX Support Arrives For GCC, LLVM Clang Compilers - Phoronix

    The high performance Fujitsu A64FX ARM processor now has the possibility of performing even better if relying upon the upstream open-source compilers from GCC and LLVM.

    The Fujitsu A64FX, which powers the "Fugaku" supercomputer among other accomplishments, has seen open-source compiler work going back a year while now the latest upstream GNU Compiler Collection (GCC) and LLVM Clang are seeing more complete support.

  • 4 DevOps books to read this year | Opensource.com

    We have just entered 2021, and DevOps will become much more relevant. It is smack dab in the spotlight given that the world is experiencing a pandemic and businesses are fighting to stay digitally relevant and competitive.

  • Vger security analysis

    I would like to share about Vger internals in regards to how the security was thought to protect vger users and host systems.

  • After years of dithering companies are embracing automation

    Bosses have boasted of automating their operations for years without an awful lot to show for it. Covid-19 has spurred them to put their money where their mouths are. Hernan Saenz of Bain, a consultancy, reckons that between now and 2030 American firms will invest $10trn in automation. Nigel Vaz, chief executive of Publicis Sapient, a big digital consultancy, says that the downturn offers bosses the perfect cover. “The unrelenting pressure for short-term financial results from investors has temporarily been suspended,” he says. “Firms are not just going back pre-pandemic, but completely reimagining how they work,” says Susan Lund, co-author of a forthcoming report from the McKinsey Global Institute, a think-tank. A recent survey by the institute’s sister consultancy found that two-thirds of global firms are doubling down on automation.

  • Dirk Eddelbuettel: Rcpp 1.0.6: Some Updates

    The Rcpp team is proud to announce release 1.0.6 of Rcpp which arrived at CRAN earlier today, and has been uploaded to Debian too. Windows and macOS builds should appear at CRAN in the next few days. This marks the first release on the new six-months cycle announced with release 1.0.5 in July. As reminder, interim ‘dev’ or ‘rc’ releases will often be available in the Rcpp drat repo; this cycle there were four.

    Rcpp has become the most popular way of enhancing R with C or C++ code. As of today, 2174 packages on CRAN depend on Rcpp for making analytical code go faster and further (which is an 8.5% increase just since the last release), along with 207 in BioConductor.

  • Use Bash Strict Mode (Unless You Love Debugging)

    Let's start with the punchline. Your bash scripts will be more robust, reliable and maintainable if you start them like this:

    	#!/bin/bash
    	set -euo pipefail
    	IFS=$'\n\t'
     

    I call this the unofficial bash strict mode. This causes bash to behave in a way that makes many classes of subtle bugs impossible. You'll spend much less time debugging, and also avoid having unexpected complications in production.

    There is a short-term downside: these settings make certain common bash idioms harder to work with. Most have simple workarounds, detailed below: jump to Issues & Solutions. But first, let's look at what these obscure lines actually do.

  • Java Built-In Functional Interfaces Cheatsheet and Examples

    In order to use lambda expressions in Java 8, you need a functional interface. For most of your needs, you can use the already built ones in Java which are as follows...

Hackability Matters

Filed under
Development

The Unix Way™ provides extreme hackability. The idea is that software should be written as tools to accomplish discrete tasks, and that it should be modular, extensible, and play well with others. It’s like software as a LEGO set — you can put the blocks together however you want, within limits, and make stuff that’s significantly cooler than any of the individual blocks alone.

Clearly this doesn’t work for all applications — things like graphics editors and web browsers don’t really lend themselves to being elegant tools that integrate well with others, right? It’s only natural that they’re bloaty walled gardens. What happens in the browser must stay in the browser, right?

But how sad is it that the one piece of software you use all day, your window into cyberspace, doesn’t play well with the rest of your system? I’d honestly never really been bothered by that fact until stumbling on TabFS. It’s an extension to Chrome that represents the tabs on your browser as if they were files on your local system — The Unix Way™. And what this means is that any other program that can read from or write to a file can open tabs, collect them, change webpages on the fly, and so on. It opens up the browser to you.

[...]

So please, if you’re working on a big software package, or even just writing a plug-in for one, do think about how you can make more of its abilities available to the casual scripter. Otherwise, it’s just plastic blocks that don’t fit with the rest of the set.

Read more

Programming Leftovers

Filed under
Development
  • Improve your software product delivery process performance using metrics (II)

    During the previous article I explained the process to follow, using the simplest possible model to describe a software product delivery process, to measure and improve its performance, following a data driven improvement kata as a way to promote a continuous improvement culture .

    Despite providing extremely valuable information, once we have gone through the described process for a few iterations, the limitations of such a simple model will become evident. We will need to add complexity into our model, getting closer to the real software product delivery process.

  • SEGGER’s complete J-Link software now available for Linux on ARM [Ed: Reposted from elsewhere (or press release)]

    SEGGER’s entire portfolio of J-Link software is now available for Linux on ARM, for both 32-bit and 64-bit platforms.

    This includes both the command-line programs and GUI tools such as J-Flash, J-Flash SPI, J-Scope, the J-Link Configurator and the GUI version of the GDB Server.

    “J-Link can now be used on Raspberry Pi and other ARM-based machines, without any limitations,” says Alex Grüner, CTO at SEGGER. “Small single-board ARM computers now offer the same functionality as x86 powered machines. The inexpensive Raspberry Pi and similar boards are now viable options, especially in test farms and production environments.”

  • JavaScript survey: React everywhere, Jest, Webpack on the up... if only it had static typing, sigh developers • The Register

    The 2020 State of JavaScript report, a survey of over 23,000 developers globally, has revealed growing use of WebPack and Jest, continuing high use of React, Express and TypeScript, and that top of the wishlist is no longer better browser compatibility, but rather static typing.

    JavaScript is the most used programming language according to most rankings. Originally called LiveScript and designed in 10 days in 1995 by Netscape's Brendan Eich to work alongside Java Applets, the little language has become the universal language.

    Trends in the JavaScript ecosystem are therefore significant, but the fact that Webpack tops the list of most used technologies says a lot about modern JavaScript development. Webpack is a module bundler which runs on Node.js and has plugins for tasks such as minifying JavaScript using Terser. Webpack does tree shaking, meaning that it strips out unused code.

  • YANUB: yet another (nearly) useless blog: Taking advantage of Ruby in QSoas

    First of all, let me all wish you a happy new year, with all my wishes of health and succes. I sincerely hope this year will be simpler for most people as last year !

  • 10 reasons to develop Quarkus applications on Red Hat OpenShift - Red Hat Developer

    Combining Quarkus with Red Hat OpenShift provides an ideal environment for creating scalable, fast, and lightweight applications. Quarkus significantly increases developer productivity with tooling, pre-built integrations, application services, and more. This article presents 10 reasons why you should develop your Quarkus applications on OpenShift.

Programming Leftovers

Filed under
Development
  • Coming in glibc 2.33: Reloadable nsswitch.conf

    In my previous article about nsswitch.conf I talked about how simple, perhaps too simple, this config file is to use. What I didn’t cover then was how simplistic its internal implementation is. Specifically, an application only loads this file once—the first time it’s needed.

    So, what do you do when nsswitch.conf needs to change? How do you update all of the running applications? You don’t! The only way to force a reload is to stop the application and restart it. That is not always an option, especially for critical applications that might take a long time to restart.

    Recent work behind the scenes in the GNU C library will change all of this. As of glibc version 2.33, this config file now reloads and reparses each time it changes, and only the configuration is reloaded. If the configuration calls for an external shared library to be loaded, that object is only ever loaded once. It may be called in a different sequence, or not called at all, but it is never unloaded. This behavior avoids a whole class of problems related to unloading shared objects that might still be in use.

  • SEGGER's Complete J-Link Software Now Available for Linux on ARM

    SEGGER’s entire portfolio of J-Link software is now available for Linux on ARM, for both 32-bit and 64-bit platforms. This includes both the command-line programs and GUI tools such as J-Flash, J-Flash SPI, J-Scope, the J-Link Configurator, and the GUI version of the GDB Server.

    “J-Link can now be used on Raspberry Pi and other ARM-based machines, without any limitations,” says Alex Grüner, CTO at SEGGER. “Small single-board ARM computers now offer the same functionality as x86 powered machines. The inexpensive Raspberry Pi and similar boards are now viable options, especially in test farms and production environments.”

  • Bootstrappable builds

    The idea of Reproducible Builds—being able to recreate bit-for-bit identical binaries using the same source code—has gained momentum over the last few years. Reproducible builds provide some safeguards against bad actors in the software supply chain. But building software depends on the tools used to construct the binary, including compilers and build-automation tools, many of which depend on pre-existing binaries. Minimizing the reliance on opaque binaries for building our software ecosystem is the goal of the Bootstrappable Builds project.

    For example, GCC is written in C and C++, which means that it requires compilers for those two languages in order to be built from source. In practice, that generally means a distribution would use its existing binary executables of those tools to build a new GCC version, which would then be released to users. One of the concerns with that approach is described in Unix inventor Ken Thompson's Turing Award lecture "Reflections on Trusting Trust" [PDF]. In a nutshell, Thompson said that trusting the output of a binary compiler is an act of faith that someone has not tampered with the creation of that binary—even if the source code is available.

    The Bootstrappable Builds project was started as an offshoot of the Reproducible Builds project during the latter's 2016 summit in Berlin. A bootstrappable build takes the idea of reproducibility one step further, in some sense. The build of a target binary can be reproduced alongside the build of the tools required to do so. It is, conceptually, almost like building a house from a large collection of atoms of different elements.

  • Parasoft Accelerates CI/CD Pipeline Through Partnership With IAR Systems

    IAR Build Tools for Linux uses the leading build tools from IAR Embedded Workbench and empowers software developers who build safety-critical applications to work directly on the Linux host environment, eliminating toolchain version management.

  • Josef Strzibny: Working with decimals in Elixir

    Integers are not enough, and floats are flawed? Decimals to the rescue! A short guide of what’s important when working with decimals in Elixir.

    This post is about the Decimal 2.0 module from decimal Hex package.

    As with every module in Elixir, running h Module and Module.module_info in IEx is a good place to start.

  • Swift Deploys: Dealing with Anti-Patterns and Unresolved Issues

    In a long end-of-the-year blog post, Charity Majors, co-founder and CTO of honeycomb.io, discussed lead time to deploy, or “the interval encompassing the time from when the code gets written and when it’s been deployed to production.”

  • Perl weekly challenge 95

    You are given a number $N. Write a script to figure out if the given number is Palindrome. Print 1 if true otherwise 0.

  • Perl Weekly Challenge 95: Palindrome Numbers and Demo Stack
  • Learn awk by coding a "guess the number" game | Opensource.com

    Once you understand these concepts, you can start figuring the rest out. For example, most languages have a "way of doing things" supported by their design, and those ways can be quite different from one program to another. These ways include modularity (grouping related functionality together), declarative vs. imperative, object-orientation, low- vs. high-level syntactic features, and so on. An example familiar to many programmers is "ceremony," that is, the amount of work required to set the scene before tackling the problem. The Java programming language is said to have a significant ceremony requirement, stemming from its design, which requires all code to be defined within a class.

  • The terminal, the console and the shell - what are they?

    The other day, as I was going through some of my old notes, I stumbled upon something I had written about the console, the terminal and the shell on Unix-like operating systems. I have decided to rewrite these notes in order to share them here on my website. So without further ado we will now stroll down memory lane and take a quick look at the origins of the Unix terminal and shell. And I will also give my advice to new users on Linux or BSD regarding the choice of terminal emulator and shell.

Mozilla: Rust, Socorro, and 'Healthier' Internet (Openwashing)

Filed under
Development
Moz/FF
Web
  • Another Rust-y OS: Theseus joins Redox in pursuit of safer, more resilient systems

    Rust, a modern system programming language focused on performance, safety and concurrency, seems an ideal choice for creating a new operating system, and several such projects already exist. Now there is a new one, Theseus, described by creator Kevin Boos as "an Experiment in Operating System Structure and State Management."

    The key thinking behind Theseus is to avoid what Boos and three other contributors from Rice and Yale universities call "state spill".

  • This Week In Rust: This Week in Rust 373
  • Socorro Engineering: Half in Review 2020 h2 and 2020 retrospective

    2020h1 was rough. 2020h2 was also rough: more layoffs, 2 re-orgs, Covid-19.

    I (and Socorro and Tecken) got re-orged into the Data Org. Data Org manages the Telemetry ingestion pipeline as well as all the things related to it. There's a lot of overlap between Socorro and Telemetry and being in the Data Org might help reduce that overlap and ease maintenance.

    [...]

    2020 sucked. At the end, I was feeling completely demoralized and deflated.

  • Reimagine Open: Building a Healthier Internet

    Does the “openness” that made the [Internet] so successful also inevitably lead to harms online? Is an open [Internet] inherently a haven for illegal speech, for eroding privacy and security, or for inequitable access? Is “open” still a useful concept as we chart a future path for the [Internet]?

    A new paper from Mozilla seeks to answer these questions. Reimagine Open: Building Better Internet Experiences explores the evolution of the open [Internet] and the challenges it faces today. The report catalogs findings from a year-long project of outreach led by Mozilla’s Chairwoman and CEO, Mitchell Baker. Its conclusion: We need not break faith with the values embedded in the open [Internet]. But we do need to return to the original conceptions of openness, now eroded online. And we do need to reimagine the open [Internet], to address today’s need for accountability and online health.

Programming Leftovers

Filed under
Development
  • Ravgeet Dhillon: Dynamic Home Route in a Flutter App

    In any production app, the user is directed to a route based on some authentication logic whenever the app is opened. In our Flutter App, we have at least two routes, Login and Dashboard. The problem is how can we decide which route should a user be redirected to?

    In this app, we will check the value of a locally stored boolean variable to dynamically decide the home route. We can use any method for writing our authentication logic, like checking the validity of the API token, but for the sake of simplicity, we will explore a simple logic.

  • How to add and customize Bootstrap in Nuxt.js

    Configuring things in any framework is always tricky especially when we are just starting. We will learn today that how can we add and customize Bootstrap in our Nuxt project. Once we go through this guide, we will get an overall idea of how to make things work in Nuxt. By learning how to setup Bootstrap, we can install Popper.js and JQuery as well which are peer dependencies for Bootstrap.

  • GCC 11 Is Moving Closer But Still Challenged By Many Regressions - Phoronix

    GCC 11 is slated to enter "Stage 4" development at the end of this weekend after which only regression and documentation fixes will be permitted. The first GCC 11 stable release should be out in 2~3 months, but at the moment there is an increasing number of P1 regressions that are of the highest priority.

    SUSE's Richard Biener announced today that GCC 11 will transition from stage three to stage four at the end of the week, at which point only regression fixes and documentation updates can be merged to trunk.

    There has been though another 30 P1 regressions, which are bugs of the highest priority, bringing the total count to 67. There is also 331 P2 regressions, 34 P3 regressions, 190 P4 regressions, and 24 P5 regressions. While some 60 P3 regressions were closed, there is a net gain of around 50 new bugs since the prior GCC 11 status report.

  • Cross-compiling made easy with Golang | Opensource.com

    I work with multiple servers with various architectures (e.g., Intel, AMD, Arm, etc.) when I'm testing software on Linux.

    [...]

    Until then, I had never accounted for this scenario (although I knew about it). I primarily work on scripting languages (usually Python) coupled with shell scripting. The Bash shell and the Python interpreter are available on most Linux servers of any architecture. Hence, everything had worked well before.

    However, now I was dealing with a compiled language, Go, which produces an executable binary. The compiled binary consists of opcodes or assembly instructions that are tied to a specific architecture. That's why I got the format error. Since the Arm64 CPU (where I ran the binary) could not interpret the binary's x86-64 instructions, it errored out. Previously, the shell and Python interpreter took care of the underlying opcodes or architecture-specific instructions for me.

  • C++ Types

    A C++ entity is a value, object, reference, function, enumerator, type, class member, bit-field, structured binding, namespace, template, template specialization, or parameter pack. An entity can be of one or more types. There are two categories of C++ types: fundamental and compound types. A scalar is arithmetic or a pointer object type. Fundamental types are scalars, while the rest of the entity types are compound types.

    The memory of a computer is a series of cells. Each cell has the size of one byte, it is normally the space occupied by a Western European character. The size of an object is given in bytes. This article gives a summary of C++ types. You should already have basic knowledge of C++, in order to understand this article.

  • Firebird Embedded in a sandboxed MacOS App

    For those who might not be aware, Firebird on MacOS is now relocatable, in that you don't necessarily have to install it as a Framework, this also means that you can create an embedded version out of the current installer.

  • 5 things we learned about Java in 2020 | Opensource.com

    In 2020, Java marked its 25th anniversary and, despite its age, remains strong and active. Its seven to 10 million developers make it one of the top three languages in use today, according to the TIOBE Index.

    To help celebrate Java reaching a quarter-century, Daniel Oh recounted Java's history before he explained How to install Java on a Mac (because its future depends on more people using it). To continue the party, we've compiled the top five things we learned about Java in 2020. Whether you're just starting with the language or experienced and trying to improve your Java development skills, these are things you should know.

GTK/GNOME: Changes in GNOME Shell and GNOME 40, GErrors in GLib

Filed under
Development
GNOME
  • Files 40.alpha: Creation timestamp & Wallpaper portal

    In my last post I’ve promised that the next one would have screenshots of new developments in the Files app, and it’s finally here!

    It took me longer than I expected back then. After the 3.38 release, I had to had to focus my time elsewhere: assisting and training local primary health care teams in managing and following up of the raising number of COVID-19 cases assigned to them. With this mission accomplished, in December I’ve picked up again on my GNOME contributions and have something to show you now.

  • GNOME Shell Merges Port Of Extensions App + Portal To GTK4 - Phoronix

    With GTK4 out and stabilizing well, more GNOME components are working to migrate to this updated toolkit as part of the GNOME 40 development cycle.

    The latest GTK4 porting work to be merged is GNOME Shell's extensions application and portal components being moved from GTK3 to GTK4.

  • GNOME 40 Will Finally Show File Creation Times Within Its File Manager - Phoronix

    Finally in 2021 with the GNOME 40 release is the ability of GNOME's Nautilus file manager to show and sort by file creation times...

    Going back more than a decade have been requests for being able to show timestamps for when files are created within the GNOME file manager or to be able to sort by file creation times in a folder rather than the last modified date. Initially that was blocked by the Linux kernel / file-systems exposing the information while in recent years that's been addressed and more time until it was implemented for GNOME.

  • Philip Withnall: Add extended information to GErrors in GLib 2.67.2

    Thanks to Krzesimir Nowak, a 17-year-old feature request in GLib has been implemented: it’s now possible to define GError domains which have extended information attached to their GErrors.

    You could now, for example, define a GError domain for text parser errors which includes context information about a parsing failure, such as the current line and character position. Or attach the filename of a file which was being read, to the GError informing of a read failure. Define an extended error domain using G_DEFINE_EXTENDED_ERROR(). The extended information is stored in a ‘private’ struct provided by you, similarly to how it’s implemented for GObjects with G_DEFINE_TYPE_WITH_PRIVATE().

Syndicate content

More in Tux Machines

Android Leftovers

Today in Techrights

today's leftovers

  • Meetup Will Discuss Survey Results, Project Improvements

    The openSUSE Project welcomes our followers to participate in two planned meetups to discuss results from the End of the Year Community Survey on Jan. 23 and Jan. 30. Both sessions will start at 13:00 UTC on openSUSE’s Jitsi instance and go for 1:30 hours. Members of the “let’s improve the openSUSE learning experience” initiative will share results and analysis from the survey.

  • LF‌ ‌Edge‌ ‌Adds‌ ‌New‌ ‌Members‌

    LF Edge has announced the addition of four new general members (FII, HCL, OpenNebula, and Robin.io) and one new Associate member (Shanghai Open Source Information Technology Association). Additionally, Home Edge has released its third platform update with new Data Storage and Mult-NAT Edge Device Communications (MNDEC) features.

  • Text Encoding Menu in 2021

    In mid-January 2021, the Text Encoding menu in Firefox looks like this: Automatic Unicode Western Arabic (Windows) Arabic (ISO) Baltic (Windows) Baltic (ISO) Central European (Windows) Central European (ISO) Chinese, Simplified Chinese, Traditional Cyrillic (Windows) Cyrillic (KOI8-U) Cyrillic (KOI8-R) Cyrillic (ISO) Cyrillic (DOS) Greek (Windows) Greek (ISO) Hebrew, Visual Hebrew Japanese Korean Thai Turkish Vietnamese [...] For users who have telemetry enabled, we collect data about whether the item “Automatic” was used at least once in given Firefox subsession, whether an item other than “Automatic” was used at least once in a given Firefox subsession, and a characterization of how the encoding that is being overridden was determined (from HTTP, from meta, from chardetng running without the user triggering it, from chardetng as triggered by the user by having chosen “Automatic” previously, etc.). If things go well, the telemetry can be analyzed when Firefox 87 is released (i.e. when 86 has spent its time on the release channel). The current expectation for this is 2021-03-23.

  • Wikipedia is twenty. It’s time to start covering it better. - Columbia Journalism Review
  • Jimmy Wales: “Wikipedia is from a different era”

    As the online encyclopedia turns 20-years-old, its founder reflects on the internet’s halcyon days.

  • Fact check: As Wikipedia turns 20, how credible is it?

    Wikipedia, which has been referred to as a world treasure, turns 20 on Friday. According to research conducted over the years — including a scientific study published by the journal Nature in 2005 and a report commissioned by the site's Wikimedia Foundation in 2012 — Wikipedia's entries are comparable in quality to those in prestigious encyclopedias such as Britannica. However, it is difficult to measure the consistency of information that can be altered at any time.

  • Odin is finally pleased so the open-world survival game Valheim releases on February 2 | GamingOnLinux

    Odin has finally had enough sacrifices and shall be releasing Valheim from Iron Gate AB will enter Early Access with Linux and Windows support on February 2. What is it? A brutal multiplayer exploration and survival game set in a procedurally-generated purgatory inspired by viking culture. Battle, build, and conquer your way to a saga worthy of Odin’s patronage! With low-poly artwork and a very flexible building system it looks absolutely brilliant. The early builds they had available were seriously promising back in 2018 so I'm personally excited to see how far they've progress with it in that time.

Programming Leftovers

  • Ravgeet Dhillon: Offline Toast notification in Nuxt/Vue app

    We have often seen apps telling us that “You are offline. Check your network status.”. It is not only convenient to do so but adds to a great UX. In this blog, we will look at how can we display a toast notification in a Nuxt/Vue app whenever the user goes offline or online. This will also help us to understand how to use computed and watch properties together. [...] Hurray! Our toast notifications are working perfectly fine. So using the combined magic of computed and watch properties, we can create outstanding workflows and take our Nuxt/Vue app to next level. If you any doubts or appreciation for our team, let us know in the comments below. We would be happy to assist you.

  • Stephen Michael Kellat: Leveraging LaTeX In This Time

    From time to time I like to bring up fun adventures in LaTeX. In these stranges times in the United States it is important to look at somewhat practical applications beyond the normal reports and formal papers most people think of. With a Minimum Working Example we can mostly look at an idea. The Comprehensive TeX Archive Network has a package known as newspaper which is effectively subject to nominative determinism. You can make things with it that look like newspapers out of the 1940s-1960s in terms of layout. The page on CTAN shows nice examples of its use and provides a nice story as to why the package was created. The example source file on CTAN has a bug in it, though. We're going to make a new one based on it. I am also going to add but not yet utilize the markdown package to the example.

  • 2021.03 Course Topped – Rakudo Weekly News

    The course of the Raku Programming Language by Andrew Shitov made it to the top 20 of Hacker News and spurred quite a few comments. The first associated Grant Report was also published.

  • GCC 11 Is On The Final Stage Of Development With 60+ High Priority Regressions - Phoronix

    GCC 11 entered its final stage of development today as it works towards releasing around the end of Q1 / early Q2 if their past cadence holds up. Before GCC 11.1 can debut as the first stable version, there are some 60+ "P1" high priority regressions that need to be resolved or otherwise demoted to lesser priority regressions. GCC 11 release manager Richard Biener this morning announced GCC 11 is now in stage four development meaning only regression fixes and documentation fixes are allowed. As of this morning the code-base is at 62 P1 regressions, another 334 P2 regressions, 35 P3 regressions, and more than 200 regressions of the lower P4/P5 status.