Language Selection

English French German Italian Portuguese Spanish

Development

Programming: Rust and Python

Filed under
Development
  • This Week in Rust 242

    Always wanted to contribute to open-source projects but didn't know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!

  • Kindness and open-source projects

    Brett Cannon is a longtime Python core developer and member of the open-source community. He got to check off one of his bucket-list items when he gave a keynote [YouTube video] at PyCon 2018. That keynote was a rather personal look at what he sees as some problem areas in the expectations of the users of open-source software with respect to those who produce it. While there is lots to be happy for in the open-source world, there are some sharp edges (and worse) that need filing down.

    He started with his background as a way to show that he has the experience to give this talk. He is the development lead on the Python extension for Visual Studio Code, which is Microsoft's cross-platform open-source code editor. He noted that the two qualifiers for the editor are probably shocking to some. It was originally a community open-source project; Microsoft hired the developer behind it and it is now "corporate open source", Cannon said. That means there is a company backstopping the project; if the community fell away, the project would continue.

    He has been a Python core developer since April 2003; he got the commit bit shortly after attending the first PyCon (and he has attended every PyCon since as well). In contrast, Python is community open source; if the community disappeared, the project "would probably collapse within a month". He has contributed to over 80 open-source projects along the way; many of those were simply typo fixes of various sorts, but it has given him exposure to a lot of different development processes. "I've been lucky enough to have a broad range of exposure to open source overall."

  • Python and the web

    Dan Callahan is a developer advocate at Mozilla and no stranger to PyCon (we covered a talk of his at PyCon 2013). He was also the champion at Mozilla for the grant that helped revamp the Python Package Index (PyPI). At PyCon 2018, he gave a keynote talk [YouTube video] that focused on platforms of various sorts—and where Python fits into the platforms of the future.

    He began with a slide showing the IBM PCjr, which was the first computer IBM made for the home market. It was released in 1984 and immediately drew a bad reaction from the public and the press (Time magazine called it "one of the biggest flops in the history of computing"). Commercially and even objectively, the PCjr was a bad platform, he said.

    But when he was old enough to become interested in computers, that was the computer that was available to him—his father had bought one during the roughly one year they were available. He learned BASIC as his first language because the PCjr came with BASIC. He didn't think about it at the time, but his first language was chosen for him; he didn't get to consider what features he wanted or how the language's community was. His platform had determined the tool he would use.

    Fast-forward a few years to when he was in high school and had his own computer; even though he had access to Linux, PHP, and Perl, he still found himself programming in BASIC. This was the pre-smartphone era, so when he was bored in class, he had to find some other way to distract himself; he and his friends turned to TI-82 graphing calculators. Those were programmable in BASIC, so even though he had more sophisticated tools available to him, if he wanted to share something with his friends, it would have to be written in BASIC for the TI-82. That platform also dictated the tool that he would use.

Minimum GCC Version Likely to Jump from 3.2 to 4.8

Filed under
Development
GNU

The question of the earliest GCC compiler version to support for building the Linux kernel comes up periodically. The ideal would be for Linux to compile under all GCC versions, because you never know what kind of system someone is running. Maybe their company's security team has to approve all software upgrades for their highly sensitive devices, and GCC is low on that list. Maybe they need to save as much space as possible, and recent versions of GCC are too big. There are all sorts of reasons why someone might be stuck with old software. But, they may need the latest Linux kernel because it's the foundation of their entire product, so they're stuck trying to compile it with an old compiler.

However, Linux can't really support every single GCC version. Sometimes the GCC people and the kernel people have disagreed on the manner in which GCC should produce code. Sometimes this means that the kernel really doesn't compile well on a particular version of GCC. So, there are the occasional project wars emerging from those conflicts. The GCC people will say the compiler is doing the best thing possible, and the kernel people will say the compiler is messing up their code. Sometimes the GCC people change the behavior in a later release, but that still leaves a particular GCC version that makes bad Linux code.

Read more

Announcing Rust 1.27.1

Filed under
Development
Moz/FF

The Rust team is happy to announce a new version of Rust, 1.27.1. Rust is a systems programming language focused on safety, speed, and concurrency.

Read more

Also: 6 IDEs you need to know about

Programming: Perl, C++, LLVM and More

Filed under
Development
  • New Software::LicenseMoreUtils Perl module

    Debian project has rather strict requirements regarding package license. One of these requirements is to provide a copyright file mentioning the license of the files included in a Debian package.

    Debian also recommends to provide this copyright information in a machine readable format that contain the whole text of the license(s) or a summary pointing to a pre-defined location on the file system (see this example).

    cme and Config::Model::Dpkg::Copyright helps in this task using Software::License module.

  • 01:C++ Boost libraries can increase productivity

    Writing code for every function in a software can be time consuming and expensive, so many C++ developers prefer to use libraries which contain modules for different applications to increase productivity. While there are already some libraries integrated with the standard C++ programming language, one of the most popular sources of C++ portable libraries is Boost, https://www.boost.org . These boost

  • LLVM 6.0.1 Released

    Tom Stellard at Red Hat has continued with his duties of serving as the LLVM point release manager and today formally issued the LLVM 6.0.1 update.

  • Does your project suffer from technical drift?

    Certainly, if the developer had known this would happen, he or she would not have chosen this implementation (I hope). For you Angularities, we are converting all our apps to use the reactive forms approach. More code, fewer HTML directives—a much better choice for testing and understanding the flow in the application.

  • Investigating CPython’s Optimisation Trickery for Lichen

Events: GUADEC and IBM's 'Call for Code'

Filed under
Development
GNOME
  • GUADEC 2018 Day 1

    At 8.30 i took off Thursday morning to start my journey to Almería. I took the plane to Madrid and had 1 hour to get hold of a taxi and reach a train taking me to Almería. There I was fortunate to meet Julian and Tobias who were hacking on Fractal and making mockups.

  • GUADEC 2018 Kicks Off In Almería, Spain

    GUADEC 2018, the annual GNOME developers' conference, has kicked off this morning in Almería, Spain.

    As usual, GUADEC 2018 features a range of interesting technical talks. This year's event runs from today (6 July) through Sunday followed by three days worth of hacking and birds-of-a-feather sessions.

  • The field guide to aiding in natural disasters and deploying life-saving code

    As an open-source and mobile developer, I’ve had the opportunity to work on some unique projects in places where both man-made and natural disasters have severely affected people and communities. During my time in Haiti working with organizations helping those impacted by the devastating 2010 earthquake, for example, I learned how to take on challenges to assist those in need and simultaneously cope with more adversity than the average development project would require.

  • Join Forces Against Natural Disasters with the Call for Code

    The Call for Code initiative aims to harness the collective power of the global open source developer community against the growing threat of natural disasters. According to IBM, “the goal is to develop technology solutions that significantly improve disaster preparedness, provide relief from devastation caused by fires, floods, hurricanes, tsunamis and earthquakes, and benefit Call for Code’s charitable partners — the United Nations Human Rights Office and the American Red Cross.”

What Is the Best Way to Contribute to The Linux Kernel?

Filed under
Development
Linux

A person who isn’t much of a computer literate wouldn’t know that the kernel is a fundamental part of any OS. It is so far removed from the surface apps that the closest you could get to it from a typical app on your machine is configuring network protocols and/or installing driver software. As a matter of fact, only programmers typically deal with kernels directly.

To paint a perfect picture, the kernel is to a computer what an engine is to a car. You as what the best way to contribute to the Linux kernel is? I don’t know. I’m not an authority on kernels, but I sure do have some suggestions you may find useful.

Read more

PHP 7.3.0 Alpha 3 Released

Filed under
Development
Web
  • PHP 7.3.0 alpha 3 Released

    The PHP team is glad to announce the release of the third PHP 7.3.0 version, PHP 7.3.0 Alpha 3. The rough outline of the PHP 7.3 release cycle is specified in the PHP Wiki.

    For source downloads of PHP 7.3.0 Alpha 3 please visit the download page. Windows sources and binaries can be found on windows.php.net/qa/.

    Please carefully test this version and report any issues found in the bug reporting system.

  • PHP 7.3 Alpha 3 Released

    The third alpha of this year's PHP7 update, PHP 7.3, is now available for evaluation.

    PHP 7.3 has been crafting improved PHP garbage collection, WebP support within the image create from string function, and a variety of other features and improvements. PHP 7.3 is looking very good in early benchmarks.

    PHP 7.3 Alpha 3 introduces a lot of bug fixes from core PHP to various extensions, min_proto_version/max_proto_version options added to OpenSSL for maximum/minimum TLS version protocol values, and various other code improvements.

Python 3 at Facebook and Teaching Python to Kids

Filed under
Development
  • Python 3 at Facebook

    Python 3 adoption has clearly picked up over the last few years, though there is still a long way to go. Big Python-using companies tend to have a whole lot of Python 2.7 code running on their infrastructure and Facebook is no exception. But Jason Fried came to PyCon 2018 to describe what has happened at the company over the last four years or so—it has gone from using almost no Python 3 to it becoming the dominant version of Python in the company. He was instrumental in helping to make that happen and his talk [YouTube video] may provide other organizations with some ideas on how to tackle their migration.

    Fried started working at Facebook in 2011 and he quickly found that he needed to teach himself Python because it was much easier to get code reviewed if it was in Python. At some point later, he found that he was the driving force behind Python 3 adoption at Facebook. He never had a plan to do that, it just came about as he worked with Python more and more.

  • Teaching Python to kids

    The combination of an "unsuspecting library employee" and a bunch of bored children has created a popular program using the Raspberry Pi and other tools to teach coding to kids. Qumisha Goss is a librarian at the Parkman branch of the Detroit Public Library; she started the "Parkman Coders" program and came to PyCon 2018 in Cleveland, Ohio to tell the assembled Pythonistas all about it. She also had some thoughts on ways to make the Python community a more diverse place, along with some concerns for her students that are much bigger than the diversity topic.

Programming: Anytime, PHP and Broken Code

Filed under
Development
  • anytime 0.3.1

    A new minor release of the anytime package is now on CRAN. This is the twelveth release, and the first in a little over a year as the package has stabilized.

    anytime is a very focused package aiming to do just one thing really well: to convert anything in integer, numeric, character, factor, ordered, … format to either POSIXct or Date objects – and to do so without requiring a format string. See the anytime page, or the GitHub README.md for a few examples.

  • [Older] Is php dead? Chill, PHP Is Not Going Anywhere
  • How I stopped merging broken code

    I love pull requests to merge code. I review them, I send them, I merge them. The fact that you can plug them into a continuous integration system is great and makes sure that you don't merge code that will break your software. I usually have Travis-CI setup and running my unit tests and code style check.

Hacker Boards

Filed under
Development
Linux
Hardware
  • Renegade Elite Mini PC Board Counters Raspberry Pi 3 With 4K Streaming And Hexa-Core CPU

    A new device called the Renegade Elite (ROC-RK3399-PC) has surfaced as a competitor to the Raspberry Pi 3 that is packing in much higher specifications and can stream 4K video. The Renegade Elite is made by Libre Computer and will soon surface for pre-order on Indiegogo.

  • Raspberry Pi's 'app store' lands with new Raspbian OS update

    The latest version of Raspbian, the Raspberry Pi's official OS, introduces a new set-up wizard to help beginners easily get over the first few hurdles after buying one of the $35 developer boards.

    The new version of Raspbian also introduces an equivalent of the App Store that recommends software that users can choose to install, alongside apps already bundled with Raspbian.

Syndicate content

More in Tux Machines

Debian Development and News

  • Freexian’s report about Debian Long Term Support, June 2018
    Like each month, here comes a report about the work of paid contributors to Debian LTS.
  • PKCS#11 v2.20
    By way of experiment, I've just enabled the PKCS#11 v2.20 implementation in the eID packages for Linux, but for now only in the packages in the "continuous" repository. In the past, enabling this has caused issues; there have been a few cases where Firefox would deadlock when PKCS#11 v2.20 was enabled, rather than the (very old and outdated) v2.11 version that we support by default. We believe we have identified and fixed all outstanding issues that caused such deadlocks, but it's difficult to be sure.
  • Plans for DebCamp and DebConf 18
    I recently became an active contributor to the Debian project, which has been consolidated throughout my GSoC project. In addition to the great learning with my mentors, Lucas Kanashiro and Raphäel Hertzog, the feedback from other community members has been very valuable to the progress we are making in the Distro Tracker. Tomorrow, thanks to Debian project sponsorship, I will take off for Hsinchu, Taiwan to attend DebCamp and DebConf18. It is my first DebConf and I’m looking forward to meeting new people from the Debian community, learn a lot and make useful contributions during the time I am there.
  • Building Debian packages in CI (ick)
    I develop a number of (fairly small) programs, as a hobby. Some of them I also maintain as packages in Debian. All of them I publish as Debian packages in my own APT repository. I want to make the process for making a release of any of my programs as easy and automated as possible, and that includes building Debian packages and uploading them to my personal APT repository, and to Debian itself.
  • My DebCamp/DebConf 18 plans
    Tomorrow I am going to another DebCamp and DebConf; this time at Hsinchu, Taiwan.
  • Things you can do with Debian: multimedia editing
    The Debian operating system serves many purposes and you can do amazing things with it. Apart of powering the servers behind big internet sites like Wikipedia and others, you can use Debian in your PC or laptop. I’ve been doing that for many years. One of the great things you can do is some multimedia editing. It turns out I love nature, outdoor sports and adventures, and I usually take videos and photos with my friends while doing such activities. And when I arrive home I love editing them for my other blog, or putting them together in a video.

32-Bit Vs. 64-Bit Operating System

This has really been confusing to some people choosing between 32-bit and 64-bit systems. Head over to any operating system’s website, you will be given a choice to download either versions of the same operating system. So what is the difference? Why do we have two different versions of the same OS? Let us solve this mystery here, once and for all. Read more

Convert video using Handbrake

Recently, when my son asked me to digitally convert some old DVDs of his high school basketball games, I immediately knew I would use Handbrake. It is an open source package that has all the tools necessary to easily convert video into formats that can be played on MacOS, Windows, Linux, iOS, Android, and other platforms. Handbrake is open source and distributable under the GPLv2 license. It's easy to install on MacOS, Windows, and Linux, including both Fedora and Ubuntu. In Linux, once it's installed, it can be launched from the command line with $ handbrake or selected from the graphical user interface. (In my case, that is GNOME 3.) Read more

today's howtos