Open Source

S'abonner à flux Open Source
Mis à jour : il y a 8 min

Mutation testing by example: Evolving from fragile TDD

jeu, 09/26/2019 - 09:00

The third article in this series demonstrated how to use failure and unit testing to develop better code.

While it seemed that the journey was over with a successful sample Internet of Things (IoT) application to control a cat door, experienced programmers know that solutions need mutation.


read more

Mirror your Android screen on your computer with Guiscrcpy

mer, 09/25/2019 - 09:02

In the future, all the information you need will be just one gesture away, and it will all appear in midair as a hologram that you can interact with even while you're driving your flying car. That's the future, though, and until that arrives, we're all stuck with information spread across a laptop, a phone, a tablet, and a smart refrigerator. Unfortunately, that means when we need information from a device, we generally have to look at that device.


read more

Build web apps to automate sysadmin tasks

mer, 09/25/2019 - 09:01

System administrators (sysadmins) waste thousands of hours each year on repetitive tasks. Fortunately, web apps, built using open source tools, can automate a significant portion of that pain away.

For example, it takes only about a day to build a web app using Python and JavaScript to reclaim some of that time. Here is the core structure that any web application must have:


read more

Mutation testing by example: Execute the test

mer, 09/25/2019 - 09:00

The second article in this series demonstrated how to implement the logic for determining whether it's daylight or nighttime in a home automation system (HAS) application that controls locking and unlocking a cat door. This third article explains how to write code to use that logic in an application that locks a door at night and unlocks it during daylight hours.


read more

Java still relevant, Linux desktop, and more industry trends

mar, 09/24/2019 - 18:40

As part of my role as a senior product marketing manager at an enterprise software company with an open source development model, I publish a regular update about open source community, market, and industry trends for product marketers, managers, and other influencers. Here are five of my and their favorite articles from that update.


read more

Mutation testing by example: Failure as experimentation

mar, 09/24/2019 - 09:09

In the first article in this series, I demonstrated how to use planned failure to ensure expected outcomes in your code. In this second article, I'll continue developing my example project—an automated cat door that opens during daylight hours and locks during the night.

As a reminder, you can follow along using the .NET xUnit.net testing framework by following the instructions here.


read more

An advanced look at Python interfaces using zope.interface

mar, 09/24/2019 - 09:06

The zope.interface library is a way to overcome ambiguity in Python interface design. Let's take a look at it.

Implicit interfaces are not zen

The Zen of Python is loose enough and contradicts itself enough that you can prove anything from it. Let's meditate upon one of its most famous principles: "Explicit is better than implicit."


read more

How DevOps professionals can become security champions

mar, 09/24/2019 - 09:03

Security is a misunderstood element in DevOps. Some see it as outside of DevOps' purview, while others find it important (and overlooked) enough to recommend moving to DevSecOps. No matter your perspective on where it belongs, it's clear that security affects everyone.


read more

Introduction to the Linux chgrp and newgrp commands

lun, 09/23/2019 - 09:02

In a recent article, I introduced the chown command, which is used for modifying ownership of files on systems. Recall that ownership is the combination of the user and group assigned to an object. The chgrp and newgrp commands provide additional help for managing files that need to maintain group ownership.


read more

Getting started with data science using Python

lun, 09/23/2019 - 09:01

Data science is an exciting new field in computing that's built around analyzing, visualizing, correlating, and interpreting the boundless amounts of information our computers are collecting about the world. Of course, calling it a "new" field is a little disingenuous because the discipline is a derivative of statistics, data analysis, and plain old obsessive scientific observation.


read more

Mutation testing by example: How to leverage failure

lun, 09/23/2019 - 09:00

In my article Mutation testing is the evolution of TDD, I exposed the power of iteration to guarantee a solution when a measurable test is available. In that article, an iterative approach helped to determine how to implement code that calculates the square root of a given number.


read more

When was the last time you used Windows?

dim, 09/22/2019 - 09:00

Are friends and family constantly asking you to troubleshoot issues with their Windows or Mac device? Being the resident support technician in your home is an important job. Like any responsible technology steward, you are going to try your best to help out. However, it might be quite a challenge if it has been a while since you last used such an operating system.

How long has it been since you last used Windows? Before using Linux, were you primarily a Mac user? Or, are you using Windows or Mac now either at home or work?


read more

How spicy should a jalapeno be?

sam, 09/21/2019 - 09:00

Everyone has opinions and preferences, especially when it comes to food. To establish a criterion when answering "How spicy should a jalapeño be?." the Scoville Heat Scale was developed as a standard to measure spiciness. This scale allows people to communicate and share information about how spicy we like our peppers.


read more

Hone advanced Bash skills by building Minesweeper

ven, 09/20/2019 - 09:02

I am no expert on teaching programming, but when I want to get better at something, I try to find a way to have fun with it. For example, when I wanted to get better at shell scripting, I decided to practice by programming a version of the Minesweeper game in Bash.


read more

How to compare strings in Java

ven, 09/20/2019 - 09:01

String comparison is a fundamental operation in programming and is often quizzed during interviews. These strings are a sequence of characters that are immutable which means unchanging over time or unable to be changed.

Java has a number of methods for comparing strings; this article will teach you the primary operation of how to compare strings in Java.

There are six options:


read more

Code it, ship it, own it with full-service ownership

ven, 09/20/2019 - 09:00

Software teams seeking to provide better products and services must focus on faster release cycles. But running reliable systems at ever-increasing speeds presents a big challenge. Software teams can have both quality and speed by adjusting their policies around ongoing service ownership. While on-call plays a large part in this model, advancement in knowledge, more resilient code, increased collaboration, and better practices mean engineers don't have to wake up to a nightmare.


read more

Code it, ship it, own it with full-service ownership

ven, 09/20/2019 - 09:00

Software teams seeking to provide better products and services must focus on faster release cycles. But running reliable systems at ever-increasing speeds presents a big challenge. Software teams can have both quality and speed by adjusting their policies around ongoing service ownership. While on-call plays a large part in this model, advancement in knowledge, more resilient code, increased collaboration, and better practices mean engineers don't have to wake up to a nightmare.


read more

Why it's time to embrace top-down cybersecurity practices

jeu, 09/19/2019 - 09:02

Cybersecurity is no longer just the domain of the IT staff putting in firewalls and backing up servers. It takes a commitment from the top and a budget to match. The stakes are high when it comes to keeping your customers' information safe.


read more

An introduction to audio processing and machine learning using Python

jeu, 09/19/2019 - 09:01

At a high level, any machine learning problem can be divided into three types of tasks: data tasks (data collection, data cleaning, and feature formation), training (building machine learning models using data features), and evaluation (assessing the model). Features, defined as "individual measurable propert[ies] or characteristic[s] of a phenomenon being observed," are very useful because they help a machine understand the data and classify it into categories or predict a value.


read more

Linux on the mainframe: Then and now

jeu, 09/19/2019 - 09:00

Last week, I introduced you to the origins of the mainframe's origins from a community perspective. Let's continue our journey, picking up at the end of 1999, which is when IBM got onboard with Linux on the mainframe (IBM Z).

According to the Linux on z Systems Wikipedia page:


read more

Pages