Language Selection

English French German Italian Portuguese Spanish

OpenSource.com

Syndicate content
Updated: 2 hours 52 min ago

Get started with Freeplane, an open source mind mapping application

Friday 25th of January 2019 08:03:00 AM

There seems to be a mad rush at the beginning of every year to find ways to be more productive. New Year's resolutions, the itch to start the year off right, and of course, an "out with the old, in with the new" attitude all contribute to this. And the usual round of recommendations is heavily biased towards closed source and proprietary software. It doesn't have to be that way.

Here's the 13th of my picks for 19 new (or new-to-you) open source tools to help you be more productive in 2019.


read more

PyGame Zero: Games without boilerplate

Friday 25th of January 2019 08:01:00 AM

Python is a good beginner programming language. And games are a good beginner project: they are visual, self-motivating, and fun to show off to friends and family. However, the most common library to write games in Python, PyGame, can be frustrating for beginners because forgetting seemingly small details can easily lead to nothing rendering.


read more

The definitive guide to MongoDB security

Friday 25th of January 2019 08:01:00 AM

Picture this: you are all ready to pack up and head home after a tiring day at work, but just as you are about to shut down, this pops up:


read more

Happy birthday, Opensource.com: 9 years

Friday 25th of January 2019 08:00:00 AM

Over the past nine years, Opensource.com has become a place where readers come to get helpful information about open source and Linux tools. We also share good ideas for how to be on and run teams, as well as, advance your career and expertise.


read more

Get started with LogicalDOC, an open source document management system

Thursday 24th of January 2019 08:04:00 AM

There seems to be a mad rush at the beginning of every year to find ways to be more productive. New Year's resolutions, the itch to start the year off right, and of course, an "out with the old, in with the new" attitude all contribute to this. And the usual round of recommendations is heavily biased towards closed source and proprietary software. It doesn't have to be that way.

Here's the 12th of my picks for 19 new (or new-to-you) open source tools to help you be more productive in 2019.


read more

Orpie: A command-line reverse Polish notation calculator

Thursday 24th of January 2019 08:02:00 AM

Orpie is a text-mode reverse Polish notation (RPN) calculator for the Linux console. It works very much like the early, well-loved Hewlett-Packard calculators.

Installing Orpie

RPM and DEB packages are available for most distributions, so installation is just a matter of using either:


read more

What does DevOps mean to you?

Thursday 24th of January 2019 08:01:00 AM

It's said if you ask 10 people about DevOps, you will get 12 answers. This is a result of the diversity in opinions and expectations around DevOps—not to mention the disparity in its practices.

To decipher the paradoxes around DevOps, we went to the people who know it the best—its top practitioners around the industry. These are people who have been around the horn, who know the ins and outs of technology, and who have practiced DevOps for years. Their viewpoints should encourage, stimulate, and provoke your thoughts around DevOps.


read more

19 resolutions of an open leader

Thursday 24th of January 2019 08:00:00 AM

My personal, one-word theme for 2019 is "growth." As an open leader looking to improve her leadership skills in the coming year, I'm sharing my "19 for 2019" list—19 leadership goals I want to achieve before 2020. Periodically throughout the year, I'll share my progress toward these items.


read more

Getting started with Isotope, an open source webmail client

Wednesday 23rd of January 2019 08:03:00 AM

There seems to be a mad rush at the beginning of every year to find ways to be more productive. New Year's resolutions, the itch to start the year off right, and of course, an "out with the old, in with the new" attitude all contribute to this. And the usual round of recommendations is heavily biased towards closed source and proprietary software. It doesn't have to be that way.

Here's the 11th of my picks for 19 new (or new-to-you) open source tools to help you be more productive in 2019.


read more

GStreamer WebRTC: A flexible solution to web-based media

Wednesday 23rd of January 2019 08:02:00 AM

Currently, WebRTC.org is the most popular and feature-rich WebRTC implementation. It is used in Chrome and Firefox and works well for browsers, but the Native API and implementation have several shortcomings that make it a less-than-ideal choice for uses outside of browsers, including native apps, server applications, and internet of things (IoT) devices.


read more

How to create an automated calendar with Google Apps Script with open source on top

Wednesday 23rd of January 2019 08:01:00 AM

Speaking at conferences can be hard. This tutorial aims to help you better manage the "administrivia" of submitting to calls for proposals (CFPs) and speaking at conferences.


read more

Dockter: A container image builder for researchers

Wednesday 23rd of January 2019 08:00:00 AM

Dependency hell is ubiquitous in the world of software for research, and this affects research transparency and reproducibility. Containerization is one solution to this problem, but it creates new challenges for researchers. Docker is gaining popularity in the research community—but using it efficiently requires solid Dockerfile writing skills.


read more

Get started with Go For It, a flexible to-do list application

Tuesday 22nd of January 2019 08:04:00 AM

There seems to be a mad rush at the beginning of every year to find ways to be more productive. New Year's resolutions, the itch to start the year off right, and of course, an "out with the old, in with the new" attitude all contribute to this. And the usual round of recommendations is heavily biased towards closed source and proprietary software. It doesn't have to be that way.

Here's the tenth of my picks for 19 new (or new-to-you) open source tools to help you be more productive in 2019.


read more

Organize your information on the Mac desktop with nvALT

Tuesday 22nd of January 2019 08:03:00 AM

To be honest, I'm of two minds when it comes to using open source on closed platforms. I prefer to work on the open side of the fence, but I also understand you can't always do that. Especially at the dreaded day job or when you're working onsite as a contractor. You have to use the hardware your employer supplies.

Over the last few years, I've used a MacBook Pro at the office. When I'm in these types of situations, I try to load as much open source software on my office computer as I can without drawing the ire of the IT department.


read more

Challenges in open source voice interfaces

Tuesday 22nd of January 2019 08:02:00 AM

If you're anything like many open source enthusiasts, you may have grown up watching science fiction shows like Knight Rider, or Star Trek, or (my personal favorite) Time Trax. What do they have in common? In each, voice is the key medium through which the protagonists interact with a computer. Knight Rider had Kitt, Star Trek had the ubiquitous computer, and even the indefatigable Darrian Lambert in Time Trax had dependable Selma, the holographic assistant.


read more

Open edX and OpenStack for complex learning environments

Tuesday 22nd of January 2019 08:01:00 AM

Almost every new technology developed in recent years has been complex, distributed, and built for scale: Kubernetes, Ceph, and OpenStack are a few examples. These systems are quite different from the ones we saw just a few years ago. Practically any non-trivial software solution today comes with loose coupling, asynchronicity, and elasticity—properties usually absent from systems of the past.


read more

Letting people work where they want shows how much you value them

Tuesday 22nd of January 2019 08:00:00 AM

Open organizations are inclusive. They aren't inclusive solely because it's the right way to be but because it produces better outcomes. Inclusivitiy enables a more diverse set of viewpoints.

But in order for those views to be heard, they have to be given.That's why an open organization must embrace remote workers.


read more

How-tos for Raspberry Pi, CNC milling, WTF, Cypht, HomeBank, Wekan, and more

Monday 21st of January 2019 04:20:00 PM

Articles on turning a Raspberry Pi 3B_ into a PriTuni VPN and CNC milling with open source software were our biggest hits last week, and a "getting started with" tutorial series by Kevin Sonney dominated our top 10 list.


read more

Get started with TaskBoard, a lightweight kanban board

Monday 21st of January 2019 08:03:00 AM

There seems to be a mad rush at the beginning of every year to find ways to be more productive. New Year's resolutions, the itch to start the year off right, and of course, an "out with the old, in with the new" attitude all contribute to this. And the usual round of recommendations is heavily biased towards closed source and proprietary software. It doesn't have to be that way.

Here's the ninth of my picks for 19 new (or new-to-you) open source tools to help you be more productive in 2019.


read more

Booting Linux faster

Monday 21st of January 2019 08:02:00 AM

Of all the computers I've ever owned or used, the one that booted the quickest was from the 1980s; by the time your hand moved from the power switch to the keyboard, the BASIC interpreter was ready for your commands. Modern computers take anywhere from 15 seconds for a laptop to minutes for a small home server to boot. Why is there such a difference in boot times?


read more

More in Tux Machines

Games: Surviving Mars and OpenMW

Kernel and Security: BPF, Mesa, Embedded World, Kernel Address Sanitizer and More

  • Concurrency management in BPF
    In the beginning, programs run on the in-kernel BPF virtual machine had no persistent internal state and no data that was shared with any other part of the system. The arrival of eBPF and, in particular, its maps functionality, has changed that situation, though, since a map can be shared between two or more BPF programs as well as with processes running in user space. That sharing naturally leads to concurrency problems, so the BPF developers have found themselves needing to add primitives to manage concurrency (the "exchange and add" or XADD instruction, for example). The next step is the addition of a spinlock mechanism to protect data structures, which has also led to some wider discussions on what the BPF memory model should look like. A BPF map can be thought of as a sort of array or hash-table data structure. The actual data stored in a map can be of an arbitrary type, including structures. If a complex structure is read from a map while it is being modified, the result may be internally inconsistent, with surprising (and probably unwelcome) results. In an attempt to prevent such problems, Alexei Starovoitov introduced BPF spinlocks in mid-January; after a number of quick review cycles, version 7 of the patch set was applied on February 1. If all goes well, this feature will be included in the 5.1 kernel.
  • Intel Ready To Add Their Experimental "Iris" Gallium3D Driver To Mesa
    For just over the past year Intel open-source driver developers have been developing a new Gallium3D-based OpenGL driver for Linux systems as the eventual replacement to their long-standing "i965 classic" Mesa driver. The Intel developers are now confident enough in the state of this new driver dubbed Iris that they are looking to merge the driver into mainline Mesa proper.  The Iris Gallium3D driver has now matured enough that Kenneth Graunke, the Intel OTC developer who originally started Iris in late 2017, is looking to merge the driver into the mainline code-base of Mesa. The driver isn't yet complete but it's already in good enough shape that he's looking for it to be merged albeit marked experimental.
  • Hallo Nürnberg!
    Collabora is headed to Nuremberg, Germany next week to take part in the 2019 edition of Embedded World, "the leading international fair for embedded systems". Following a successful first attendance in 2018, we are very much looking forward to our second visit! If you are planning on attending, please come say hello in Hall 4, booth 4-280! This year, we will be showcasing a state-of-the-art infrastructure for end-to-end, embedded software production. From the birth of a software platform, to reproducible continuous builds, to automated testing on hardware, get a firsthand look at our platform building expertise and see how we use continuous integration to increase productivity and quality control in embedded Linux.
  • KASAN Spots Another Kernel Vulnerability From Early Linux 2.6 Through 4.20
    The Kernel Address Sanitizer (KASAN) that detects dynamic memory errors within the Linux kernel code has just picked up another win with uncovering a use-after-free vulnerability that's been around since the early Linux 2.6 kernels. KASAN (along with the other sanitizers) have already proven quite valuable in spotting various coding mistakes hopefully before they are exploited in the real-world. The Kernel Address Sanitizer picked up another feather in its hat with being responsible for the CVE-2019-8912 discovery.
  • io_uring, SCM_RIGHTS, and reference-count cycles
    The io_uring mechanism that was described here in January has been through a number of revisions since then; those changes have generally been fixing implementation issues rather than changing the user-space API. In particular, this patch set seems to have received more than the usual amount of security-related review, which can only be a good thing. Security concerns became a bit of an obstacle for io_uring, though, when virtual filesystem (VFS) maintainer Al Viro threatened to veto the merging of the whole thing. It turns out that there were some reference-counting issues that required his unique experience to straighten out. The VFS layer is a complicated beast; it must manage the complexities of the filesystem namespace in a way that provides the highest possible performance while maintaining security and correctness. Achieving that requires making use of almost all of the locking and concurrency-management mechanisms that the kernel offers, plus a couple more implemented internally. It is fair to say that the number of kernel developers who thoroughly understand how it works is extremely small; indeed, sometimes it seems like Viro is the only one with the full picture. In keeping with time-honored kernel tradition, little of this complexity is documented, so when Viro gets a moment to write down how some of it works, it's worth paying attention. In a long "brain dump", Viro described how file reference counts are managed, how reference-count cycles can come about, and what the kernel does to break them. For those with the time to beat their brains against it for a while, Viro's explanation (along with a few corrections) is well worth reading. For the rest of us, a lighter version follows.

Blacklisting insecure filesystems in openSUSE

The Linux kernel supports a wide variety of filesystem types, many of which have not seen significant use — or maintenance — in many years. Developers in the openSUSE project have concluded that many of these filesystem types are, at this point, more useful to attackers than to openSUSE users and are proposing to blacklist many of them by default. Such changes can be controversial, but it's probably still fair to say that few people expected the massive discussion that resulted, covering everything from the number of OS/2 users to how openSUSE fits into the distribution marketplace. On January 30, Martin Wilck started the discussion with a proposal to add a blacklist preventing the automatic loading of a set of kernel modules implementing (mostly) old filesystems. These include filesystems like JFS, Minix, cramfs, AFFS, and F2FS. For most of these, the logic is that the filesystems are essentially unused and the modules implementing them have seen little maintenance in recent decades. But those modules can still be automatically loaded if a user inserts a removable drive containing one of those filesystem types. There are a number of fuzz-testing efforts underway in the kernel community, but it seems relatively unlikely that any of them are targeting, say, FreeVxFS filesystem images. So it is not unreasonable to suspect that there just might be exploitable bugs in those modules. Preventing modules for ancient, unmaintained filesystems from automatically loading may thus protect some users against flash-drive attacks. If there were to be a fight over a proposal like this, one would ordinarily expect it to be concerned with the specific list of unwelcome modules. But there was relatively little of that. One possible exception is F2FS, the presence of which raised some eyebrows since it is under active development, having received 44 changes in the 5.0 development cycle, for example. Interestingly, it turns out that openSUSE stopped shipping F2FS in September. While the filesystem is being actively developed, it seems that, with rare exceptions, nobody is actively backporting fixes, and the filesystem also lacks a mechanism to prevent an old F2FS implementation from being confused by a filesystem created by a newer version. Rather than deal with these issues, openSUSE decided to just drop the filesystem altogether. As it happens, the blacklist proposal looks likely to allow F2FS to return to the distribution since it can be blacklisted by default. Read more

gitgeist: a git-based social network proof of concept

Are you tired of not owning the data or the platform you use for social postings? I know I am. It's hard to say when I "first" used a social network. I've been on email for about 30 years and one of the early ad-hoc forms of social networks were chain emails. Over the years I was asked to join all sorts of "social" things such as IRC, ICQ, Skype, MSN Messenger, etc. and eventually things like Orkut, MySpace, Facebook, etc. I'll readily admit that I'm not the type of person that happily jumps onto every new social bandwagon that appears on the Internet. I often prefer preserving the quietness of my own thoughts. That, though, hasn't stopped me from finding some meaningfulness participating in Twitter, Facebook, LinkedIn and more recently Google+. Twitter was in fact the first social network that I truly embraced. And it would've remained my primary social network had they not killed their own community by culling the swell of independently-developed Twitter clients that existed. That and their increased control of their API effectively made me look for something else. Right around that time Google+ was being introduced and many in the open source community started participating in that, in some ways to find a fresh place where techies can aggregate away from the noise and sometimes over-the-top nature of Facebook. Eventually I took to that too and started using G+ as my primary social network. That is, until Google recently decided to pull the plug on G+. While Google+ might not have represented a success for Google, it had become a good place for sharing information among the technically-inclined. As such, I found it quite useful for learning and hearing about new things in my field. Soon-to-be-former users of G+ have gone in all sorts of directions. Some have adopted a "c'mon guys, get over it, Facebook is the spot" attitude, others have adopted things like Mastodon, others have fallen back to their existing IDs on Twitter, and yet others, like me, are still looking. Read more