opensource.com

Subscribe to opensource.com feed
Updated: 2 hours 21 min ago

Port operating systems to new chip architectures

Thu, 05/27/2021 - 15:00

I was once asked why computers are called "computers" when they do so much more than compute numbers. A modern PC browses the internet, plays audio and video, generates beautiful graphics for video games and movies, simulates and predicts complex weather patterns and epidemiological risks, brings architectural and engineering blueprints to life, and much more.

The reason computers can do all of this because all these problems can be expressed as numerical equations, and the computer's CPU—its central processing unit—is actually little more than a simple calculator.


read more

How I monitor my greenhouse with CircuitPython and open source tools

Wed, 05/26/2021 - 15:01

CircuitPython provides a revolutionary way to interact with microcontroller boards. This article explains how to use CircuitPython to measure a greenhouse's temperature, humidity, and ambient light and publish the results to an MQTT broker using a CircuitPython MQTT client. You can subscribe any number of programs to the MQTT queues to process the information further.


read more

6 exciting new ShellHub features to look for in 2021

Wed, 05/26/2021 - 15:00

ShellHub is a cloud server that allows universal access to your networked devices from any external network. Using it prevents being blocked by firewalls or overly complex networks because ShellHub uses the HTTP protocol to encapsulate the SSH protocol. This transport layer allows seamless use on most networks, as it is commonly available and accepted by most companies' firewall rules and policies.


read more

Pen testing with Linux security tools

Tue, 05/25/2021 - 15:01

The multitude of well-publicized breaches of large consumer corporations underscores the critical importance of system security management. Fortunately, there are many different applications that help secure computer systems. One is Kali, a Linux distribution developed for security and penetration testing. This article demonstrates how to use Kali Linux to investigate your system to find weaknesses.

Kali installs a lot of tools, all of which are open source, and having them installed by default makes things easier.


read more

Launch Flatpaks from your Linux terminal

Tue, 05/25/2021 - 15:00

The Flatpak application distribution model is helping developers target Linux in a new and easy way, and it's helping Linux users install more applications without worrying about what version of Linux they're running. It's an exciting technology, and on my Fedora Silverblue system, it's the default package installation method. All of my desktop applications on Silverblue and several of my favorites I use on Slackware are running as Flatpaks.


read more

4 steps to set up global modals in React

Mon, 05/24/2021 - 15:00

A modal dialog is a window that appears on top of a web page and requires a user's interaction before it disappears. React has a couple of ways to help you generate and manage modals with minimal coding.

If you create them within a local scope, you must import modals into each component and then create a state to manage each modal's opening and closing status.


read more

Keep tabs on your Linux computer specs with this desktop application

Mon, 05/24/2021 - 15:00

Whether I'm using a laptop my employer assigned to me or a workstation I built from vendor parts, I seem to have an endless capacity to forget my computer's specifications. One of the great things about Linux is its /proc filesystem, a dynamically populated virtual expression of the system's hardware. It's convenient when you want to see the specifics of your CPU (cat /proc/cpuinfo), uptime (cat /proc/uptime), a list of mounted filesystems (ls -R /proc/fs/), and so on.


read more

3 reasons to learn Java in 2021

Sun, 05/23/2021 - 15:00

Java was released in 1995, making it 26 years old as I'm writing this. It was proprietary at first, but in 2007, Java was released as open source under the GPL. To understand what makes Java important, you have to understand the problem it claims to solve. Then you can understand why and how it benefits developers and users.


read more

17 true stories about switching to Linux

Sat, 05/22/2021 - 15:00

It's been 30 years since Linus Torvalds created Linux, way back in 1991, as a free alternative to Unix. In that time, it's grown from a niche project to a powerful, widely used operating system that sustains much of what's essential in modern computing—the cloud, the Internet of Things, supercomputers, the devices that kept students learning during a global pandemic, and much, much more.


read more

How Python 3.9 fixed decorators and improved dictionaries

Fri, 05/21/2021 - 15:01

This is the tenth in a series of articles about features that first appeared in a version of Python 3.x. Some of these versions have been out for a while. Python 3.9 was first released in 2020 with cool new features that are still underused. Here are three of them.

Adding dictionaries

Say you have a dictionary with "defaults," and you want to update it with parameters. Before Python 3.9, the best option was to copy the defaults dictionary and then use the .update() method.


read more

Play the Busy Beaver Game through a simulator

Fri, 05/21/2021 - 15:00

It's hard to find a game that combines the difficulty of, say, Dark Souls with the elegance of Conway's Game of Life. In a 1962 paper, Hungarian mathematician Tibor Radó came up with just such a game, which he called the Busy Beaver Game (BBG).


read more

Remap your Caps Lock key on Linux

Thu, 05/20/2021 - 15:01

There have been many life-changing Linux moments for me, but most fade into my backstory as they become the status quo. There's one little keyboard trick Linux taught me that I'm reminded of every time I use it (maybe 1,000 times a day), and that's converting the Caps Lock key to Ctrl.


read more

Make your API better with this positional trick from Python 3.8

Thu, 05/20/2021 - 15:00

This is the ninth in a series of articles about features that first appeared in a version of Python 3.x. Python 3.8 was first released in 2019, and two years later, many of its cool new features remain underused. Here are three of them.


read more

A beginner's guide for contributing to Apache Cassandra

Wed, 05/19/2021 - 15:01

Apache Cassandra is an open source NoSQL database trusted by thousands of companies around the globe for its scalability and high availability that does not compromise performance. Contributing to such a widely used distributed system may seem daunting, so this article aims to provide you an easy entry point.

There are good reasons to contribute to Cassandra, such as:


read more

What is serverless with Java?

Wed, 05/19/2021 - 15:00

For decades, enterprises have developed business-critical applications on various platforms, including physical servers, virtual machines, and cloud environments. The one thing these applications have in common across industries is they need to be continuously available (24x7x365) to guarantee stability, reliability, and performance, regardless of demand. Therefore, every enterprise must be responsible for the high costs of maintaining an infrastructure (e.g., CPU, memory, disk, networking, etc.) even if actual resource utilization is less than 50%.


read more

Slice infinite generators with this Python 3.7 feature

Wed, 05/19/2021 - 15:00

This is the eighth in a series of articles about features that first appeared in a version of Python 3.x. Python 3.7 was first released in 2018, and even though it has been out for a few years, many of the features it introduced are underused and pretty cool. Here are three of them.

Postponed evaluation of annotations

In Python 3.7, as long as the right __future__ flags are activated, annotations are not evaluated during runtime:


read more

Manage your Raspberry Pi with Cockpit

Tue, 05/18/2021 - 15:02

Last year, I wrote about using Cockpit to manage my Linux servers. It is a web-based tool that gives you a clean, powerful interface for managing multiple servers and their associated services and applications. It also eases regular day-to-day administrative tasks.


read more

Are you using this magic method for filesystems from Python 3.6?

Tue, 05/18/2021 - 15:01

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


read more

4 essential characteristics of successful APIs

Tue, 05/18/2021 - 15:00

If you are building an application that uses some variation of a client/server model, you need an application programming interface (API). An API is a clearly defined boundary between one process and another. A common boundary in web applications is a REST/JSON API.

While developers may be mainly focused on making the API work (or function), there are some "non-functional" requirements that need their attention. Four must-have non-functional requirements for all APIs are:


read more

Use open source tools to set up a private VPN

Mon, 05/17/2021 - 15:01

Getting from one place to another over a computer network can be a tricky thing. Aside from knowing the right address and opening the right ports, there's the question of security. For Linux, SSH is a popular default, and while there's a lot you can do with SSH it's still "just" a secure shell (that's what SSH stands for, in fact.) A broader protocol for encrypted traffic is VPN, which creates a unique, virtual private network between two points.


read more

Pages