opensource.com

Subscribe to opensource.com feed
Updated: 1 hour 51 min ago

Convenient matrices and other improvements Python 3.5 brought us

Mon, 05/17/2021 - 15:00

This is the sixth in a series of articles about features that first appeared in a version of Python 3.x. Python 3.5 was first released in 2015, and even though it has been out for a long time, many of the features it introduced are underused and pretty cool. Here are three of them.

The @ operator

The @ operator is unique in Python in that there are no objects in the standard library that implement it! It was added for use in mathematical packages that have matrices.


read more

Looking back at what Python 3.4 did for enum

Sun, 05/16/2021 - 15:00

This is the fifth in a series of articles about features that first appeared in a version of Python 3.x. Python 3.4 was first released in 2014, and even though it has been out for a long time, many of the features it introduced are underused and pretty cool. Here are three of them.


read more

What Python 3.3 did to improve exception handling in your code

Sat, 05/15/2021 - 15:00

This is the fourth in a series of articles about features that first appeared in a version of Python 3.x. Python 3.3 was first released in 2012, and even though it has been out for a long time, many of the features it introduced are underused and pretty cool. Here are three of them.


read more

3 Python 3.2 features that are still relevant today

Fri, 05/14/2021 - 15:01

This the third article in a series about features that first appeared in a version of Python 3.x. Some of those Python versions have been out for a while. For example, Python 3.2 was first released in 2011, yet some of the cool and useful features introduced in it are still underused. Here are three of them.

argparse subcommands

The argparse module first appeared in Python 3.2. There are many third-party modules for command-line parsing. But the built-in argparse module is more powerful than many give it credit for.


read more

Drop Autotools for CMake

Fri, 05/14/2021 - 15:00

In my introduction to Autotools, I demonstrated how to manage building and packaging code with GNU Autotools. It's a robust and common platform that integrates easily into many packaging systems, including RPM, APT, pkgsrc, and more. Its syntax and structure can be confusing, but luckily there are alternatives, including the open source CMake framework.


read more

3 features released in Python 3.1 you should use in 2021

Thu, 05/13/2021 - 15:02

This is the second in a series of articles about features that first appeared in a version of Python 3.x. Python 3.1 was first released in 2009, and even though it has been out for a long time, many of the features it introduced are underused and pretty cool. Here are three of them.


read more

5 reasons to host your container registry with Pulp

Thu, 05/13/2021 - 15:01

Linux containers have greatly simplified software distribution. The ability to package an application with everything it needs to run has helped increase stability and reproducibility of environments.


read more

Building open organizations to make a better life more sustainable for everyone

Thu, 05/13/2021 - 15:00

In the first article in this series reviewing The Age of Sustainable Development by Jeffrey Sachs, I discussed the impact of economic development on the environment, and I explained how open organization principles can help us begin building sustainable, global economic development plans for the future.


read more

4 Linux terminal multiplexers to try

Wed, 05/12/2021 - 15:01

Linux users generally need a lot of virtual visual space. One terminal window is never enough, so terminals have tabs. One desktop is too constraining, so there are virtual desktops. And sure, application windows can stack, but how much better is it when they tile? Heck, even the back-end text console has F1 to F7 available for flipping back and forth between tasks.


read more

3 features that debuted in Python 3.0 you should use now

Wed, 05/12/2021 - 15:00

This is the first in a series of articles about features that first appeared in a version of Python 3.x. Python 3.0 was first released in 2008, and even though it has been out for a while, many of the features it introduced are underused and pretty cool. Here are three you should know about.


read more

Use the Alpine email client in your Linux terminal

Tue, 05/11/2021 - 15:01

Email is an important communications medium and will remain so for the foreseeable future. I have used many different email clients over the last 30 years, and Thunderbird is what I have used the most in recent years. It is an excellent and functional desktop application that provides all the features that most people need—including me.


read more

What is fog computing?

Tue, 05/11/2021 - 15:00

In the early days, computers were big and expensive. There were few users in the world, and they had to reserve time on a computer (and show up in person) to have their punchcards processed. Systems called mainframes made many innovations and enabled time-shared tasks on terminals (like desktop computers, but without their own CPU).


read more

Make Jenkins logs pretty

Mon, 05/10/2021 - 15:01

Jenkins is a free and open source automation server for building, testing, and deploying code. It's the backbone of continuous integration and continuous delivery (CI/CD) and can save developers hours each day and protect them from having failed code go live. When code does fail, or when a developer needs to see the output of tests, Jenkins provides log files for review.


read more

Getting started with edge development on Linux using open source

Mon, 05/10/2021 - 15:00

There are many reasons why Linux is such a popular platform for processing Internet of Things (IoT) edge applications. A major one is transparency. Linux security capabilities are built on open source projects, giving users a transparent view of security risks and threats and enables them to apply fixes quickly with security module patches or kernel-level updates. Another Linux advantage is that developers can choose from various programming languages to develop, test, and run device communications over various networking protocols—other than HTTP(s)—when developing IoT edge applications.


read more

My first tech job: 8 stories from the community

Sun, 05/09/2021 - 15:00

Riffing on the topic of what unusual jobs people had before tech, a few of our responses from the community were more focused on jobs that led to a job in tech.

These eight authors shared their experiences. Share yours in the comments.


read more

My weird jobs before tech

Sat, 05/08/2021 - 15:00

I had a few weird jobs before I hit tech.

I was a junior assistant in an aircraft repair shop, which meant tasks like cleaning dirty metal parts in solvent (wow, things were different back in the '70s). My most fun task there was ironing Dacron aircraft fabric onto the wooden ailerons and horizontal stabilizer on a beautiful old Beechcraft Staggerwing that was in the shop for a rebuild.


read more

6 examples of open source best practices in knowledge-sharing projects

Fri, 05/07/2021 - 15:01

As someone who has watched my fair share of projects and initiatives come and go, I value the follow-on effects of good knowledge sharing. Even knowledge from bygone projects is available to learn from the past; such is the benefit and the curse of an internet that never forgets—all the practices good, no-longer-good, and never-were-good are out there to be found.


read more

Ansible emphasizes inclusive language in new release

Fri, 05/07/2021 - 15:00

During this development cycle, the Ansible project has made significant progress in its goals to make the community and code more welcoming and inclusive. With the release of Ansible Core 2.11, harmful terminology in the Ansible codebase is deprecated and it comes with new replacement terms. These changes will follow our standard deprecation cycle to give users time to adapt.


read more

Learn essential Kubernetes commands with a new cheat sheet

Thu, 05/06/2021 - 15:00

The cloud runs largely on Kubernetes, Kubernetes largely runs on Linux, and Linux runs best when it has a skilled sysadmin at the controls. Whether you consider yourself a cloud architect or just a humble sysadmin, the modern internet needs users who understand how applications and services can be created within containers, scaled on demand, and monitored and managed judiciously.

One of the first steps into the brave world of containers is learning Kubernetes and its quintessential command: kubectl.


read more

Resolve DHCPD and HTTPD startup failures with Ansible

Thu, 05/06/2021 - 15:00

Last year, I had a problem: HTTPD (the Apache web server) would not start on a reboot or cold boot. To fix it, I added an override file, /etc/systemd/system/httpd.service.d/override.conf. It contained the following statements to delay HTTPD's startup until the network is properly started and online. (If you've read my previous articles, you'll know that I use NetworkManager and systemd, not the old SystemV network service and start scripts).


read more

Pages