Language Selection

English French German Italian Portuguese Spanish

Development

UKSM Is Still Around For Data Deduplication Of The Linux Kernel

Filed under
Development
Linux

Several years back we wrote about Ultra Kernel Samepage Merging (UKSM) for data de-duplication within the Linux kernel for transparently scanning all application memory and de-duping it where possible. While the original developer is no longer active, a new developer has been maintaining the work and continues to support it on the latest Linux kernel releases.

Read more

Red Hat on Programming

Filed under
Development
  • Top 3 machine learning libraries for Python

    You don't have to be a data scientist to be fascinated by the world of machine learning, but a few travel guides might help you navigate the vast universe that also includes big data, artificial intelligence, and deep learning, along with a large dose of statistics and analytics. ("Deep learning" and "machine learning" are often used interchangeably, so for a quick terminology primer that might help you understand the difference, read Nvidia's blog post, What's the Difference Between Artificial Intelligence, Machine Learning, and Deep Learning?)

    In this article, I'll look at three of the most popular machine learning libraries for Python.

  • Which is the best programming language for beginners?

    What is the best language for a budding programmer to get their start with? There are probably as many opinions about which language is best for beginners as there are languages to choose from. And the options change all of the time. When we asked this question two years ago, Python came out on top as the clear winner. But is it still the best choice today?

Development News

Filed under
Development
KDE
  • Best practices for guiding new coders

    As the new year progresses, many free and open source projects are turning their attention to various formalized mentoring programs, such as Mozilla's Winter of Security, Outreachy, and (the program with my favorite name) the X.Org Endless Vacation of Code. Patterned after the success of Google's Summer of Code, these programs give many new programmers a chance to gain firsthand experience working within successful FLOSS (Free/Libre Open Source Software) projects and the projects themselves access to fresh talent.

  • Developing an nrf51822 based embedded device with Qt Creator and Debian

    I'm currently developing an nRF51822-based embedded device. Being one the Qt/Qt Creator maintainers in Debian I would of course try to use it for the development. Turns out it works pretty good... with some caveats.

  • How to create a look and feel theme
  • Qt Roadmap for 2017

    With Qt 5.7 and 5.8 released we have a completely new baseline for Qt 5 based applications and devices. In this blog, I want to provide a roadmap update on what we are currently working on in the Qt R&D and what the future directions are.

  • Qt's Roadmap For 2017: Graphics, An Exciting Qt 5.9/5.10

    Tuukka Turunen of The Qt Company has shared some of the project's goals for the 2017 calendar year in delivering Qt 5.9 and Qt 5.10 along with more point releases.

    Qt developers hope to make 2017 exciting by shipping Qt 5.9 in May and their hope is to ship Qt 5.10 this November.

  • Intend to retire perl-Log-Any-Adapter-Dispatch

Development News/Tools

Filed under
Development
  • NVIDIA Makes Huge Code Contribution To Qt, New Qt 3D Studio

    The Qt Company today announced Qt 3D Studio, a new 3D UI authoring system, thanks to NVIDIA providing Qt with hundreds of thousands of lines of source code making up this application.

  • Cavium ThunderX Support Added To LLVM

    Cavium's ThunderX ARM 64-bit processors are now formally supported by the LLVM compiler stack.

  • How copying an int made my code 11 times faster

    Recently, after refactoring some Rust code, I noticed that it had suddenly become four times slower. However, the strange part is that I didn’t even touch the part of the code that became slower. Furthermore, it was still slower after commenting out the changes. Curious, I decided to investigate further.

    The first step was to use git diff to display all changes since the previous commit, which was normal speed. Then I started removing them one by one, no matter how inconsequential, and testing to see if it was still slow after the change.

    [...]

    Adding the print statement causes the code to go from 0.16 seconds to 1.7 seconds, an 11x slowdown (in release mode). Then, I posted it in the rustc IRC channel, where eddyb and bluss suggested a workaround and explained what was going on.

    The fix was to the change the print line to the following, which does indeed fix the slowdown.

Development News

Filed under
Development
  • DWARF Version 5 Standard Released

    The DWARF Debugging Information Format Standards Committee is pleased to announce the availability of Version 5 of the DWARF Debugging Format Standard. The DWARF Debugging Format is used to communicate debugging information between a compiler and debugger to make it easier for programmers to develop, test, and debug programs.

    DWARF is used by a wide range of compilers and debuggers, both proprietary and open source, to support debugging of Ada, C, C++, Cobol, FORTRAN, Java, and other programming languages. DWARF V5 adds support for new languages like Rust, Swift, Ocaml, Go, and Haskell, as well as support for new features in older languages. DWARF can be used with a wide range of processor architectures, such as x86, ARM, PowerPC, from 8-bit to 64-bit.

  • Things that won't change in Python

    A lengthy and strongly opinionated post about Python features to the python-ideas mailing list garnered various responses there, from some agreement to strong disagreement to calling it "trolling", but it may also lead the Python community to better define what Python is. Trolling seems a somewhat unfair characterization, but Simon Lovell's "Python Reviewed" post did call out some of the fundamental attributes of the language and made some value judgments that were seen as either coming from ignorance of the language or simply as opinions that were stated as facts in a brusque way. The thread eventually led to the creation of a document meant to help head off this kind of thread in the future.

  • modulemd 1.1.0

    This is a little belated announcement but let it be known that I released a new version of the module metadata library, modulemd-1.1.0, earlier this week!

  • RPushbullet 0.3.1
  • A rift in the NTP world

    The failure of the Network Time Protocol (NTP) project could be catastrophic. However, what few have noticed is that the attempts to prevent that catastrophe may have created entirely new challenges.

Development News:/Trools

Filed under
Development
  • Builder’s Build Pipeline

    One of the core features of Builder is, well, building. So we need to provide the best experience we can. That means we need wide support for build systems and languages. How we get from source code to a product can vary in a multitude of ways.

  • littler 0.3.2

    The third release of littler as a CRAN package is now available, following in the now more than ten-year history as a package started by Jeff in the summer of 2006, and joined by me a few weeks later.

  • What's coming in Weblate 2.12

    Weblate should be released by end of February, so it's now pretty much clear what will be there. So let's look at some of the upcoming features.

    There were many improvements in search related features. They got performance improvements (this is especially noticeable on site wide search). Additionally you can search for strings within translation project. On related topic, search and replace is now available for component or project wide operations, what can help you in case of massive renaming in your translations.

Go 1.8 Release Notes

Filed under
Development
Google
  • Go 1.8 Release Notes

    The latest Go release, version 1.8, arrives six months after Go 1.7. Most of its changes are in the implementation of the toolchain, runtime, and libraries. There are two minor changes to the language specification. As always, the release maintains the Go 1 promise of compatibility. We expect almost all Go programs to continue to compile and run as before.

  • Go 1.8 Released With Various Performance Improvements

    Google today announced the release of the Go 1.8 programming language implementation that is coming with six months worth of features and changes.

    Go 1.8 has a few new 64-bit x86 instructions supported, Go 1.8 now uses its new compiler back-end on all architectures (with Go 1.7 their new compiler back-end was just used on 64-bit x86) and that should yield a 20~30% performance improvement for 32-bit ARM systems. But even x86 64-bit systems should see 0~10% performance improvements with Go 1.8.

Development News

Filed under
Development
  • Using Scripting Languages in IoT: Challenges and Approaches

    Scripting languages (aka Very High-Level Languages or VHLLs), such as Python, PHP, and JavaScript are commonly used in desktop, server, and web development. And, their powerful built-in functionality lets you develop small useful applications with little time and effort, says Paul Sokolovsky, IoT engineer at Linaro. However, using VHLLs for deeply embedded development is a relatively recent twist in IoT.

  • Things Every Hacker Once Knew

    One fine day in January 2017 I was reminded of something I had half-noticed a few times over the previous decade. That is, younger hackers don’t know the bit structure of ASCII and the meaning of the odder control characters in it.

    This is knowledge every fledgling hacker used to absorb through their pores. It’s nobody’s fault this changed; the obsolescence of hardware terminals and the near-obsolescence of the RS-232 protocol is what did it. Tools generate culture; sometimes, when a tool becomes obsolete, a bit of cultural commonality quietly evaporates. It can be difficult to notice that this has happened.

    This document is a collection of facts about ASCII and related technologies, notably hardware serial terminals and RS-232 and modems. This is lore that was at one time near-universal and is no longer. It’s not likely to be directly useful today - until you trip over some piece of still-functioning technology where it’s relevant (like a GPS puck), or it makes sense of some old-fart war story. Even so, it’s good to know anyway, for cultural-literacy reasons.

  • Futhark: A Pure, Functional Language For GPU Computing

    Futhark was presented earlier this month at FOSDEM as a "purely functional array language" with its compiler able to "efficiently generate high-performance GPU code."

    Futhark is a high-level, parallel-focused programming language that aims to compete with the performance of hand-written code targeting particular GPUs. Futhark hopes to be more portable across GPUs while tapping into the full GPU potential if you were writing finely-tuned code targeting a particular graphics processor. Futhark's compiler currently translates this code into OpenCL for GPU execution, but I'm told by one of the attendees at FOSDEM for this event, Futhark is also working on an approach to turn their code into pure-OpenGL for execution on GPUs without OpenCL, CUDA, or Vulkan.

Vala Development

Filed under
Development
GNOME
  • Vala is not a Programming Language

    Vala provides you a way to write C/GObject/GInterface code using a different syntax. Vala doesn’t require to develop a “core library” in order to provide its features. Its “compiler” is not a compiler, is a C code generator.

    Vala can’t be compared with Rust, Go, Python, Java or C#, all of them provide their own “core library” in order to provide most of their features, allows you to create modules (like a library) to extend the language for their users consume. Their core generally is written in C, for very basic features, but almost in the language itself.

  • Vala 1.0?

    Yes is time to consider a Vala 1.0 release. Vala 0.34 code generator and bindings support LTS versions of GTK+ 3.22 and GLib 2.50. Next stable version of GTK+ will be 4.0 and GLib 2.x, but they have to traverse through 3.9x versions and any GLib 2.x on the way. Reaching that point we can consider Vala 2.0 release.

GNOME/GTK News

Filed under
Development
GNOME
  • GTK+ Implements Window Focus Tracking and Window Properties for Ubuntu's Mir

    The GTK+ development team just released a few moments ago a new stable and development release of the widely-used GTK+ open-source toolkit for GNOME and GNOME-based desktop environments and related apps.

    GTK+ 3.22.8 is now the most stable and advanced build of the toolkit, and will soon be available for most GNU/Linux distributions that use it. While it's only a small maintenance update, it adds a few interesting improvements for Ubuntu's Mir display server, such as window focus tracking, window properties, and modal hint support.

  • On Vala

    Of course, and with reason, I’ve been called out on this by various people. Luckily, it was on Twitter, so we haven’t seen articles on Slashdot and Phoronix and LWN with headlines like “GNOME developer says Vala is dead and will be removed from all servers for all eternity and you all suck”. At least, I’ve only seen a bunch of comments on Reddit about this, but nobody cares about that particular cesspool of humanity.

  • A GNOME Developer's Arguments On Vala Being A "Dead" Language

    Longtime GNOME developer Emmanuele Bassi has pleaded his case that Vala is a "dead" language and that new applications/developers should look at alternatives or first work on improving this GNOME-centered language.

    There's previously been efforts to use more Rust code in GNOME than C/Vala and developers expressing their disappointment/frustrations in Vala. Emmanuele Bassi recently tweeted, "PSA: if you want to write a new @gnome application, don't use Vala; if you're already using it, consider porting to a non-dead language."

Syndicate content

More in Tux Machines

today's howtos

UKSM Is Still Around For Data Deduplication Of The Linux Kernel

Several years back we wrote about Ultra Kernel Samepage Merging (UKSM) for data de-duplication within the Linux kernel for transparently scanning all application memory and de-duping it where possible. While the original developer is no longer active, a new developer has been maintaining the work and continues to support it on the latest Linux kernel releases. Read more

Why Dell’s gamble on Linux laptops has paid off

The whole juggernaut that is now Linux on Dell started as the brainchild of two core individuals, Barton George (Senior Principal Engineer) and Jared Dominguez (OS Architect and Linux Engineer). It was their vision that began it all back in 2012. It was long hours, uncertain futures and sheer belief that people really did want Linux laptops that sustained them. Here is the untold story of how Dell gained the top spot in preinstalled Linux on laptops. Where do you start when no one has ever really even touched such a concept? The duo did have some experience of the area before. George explained that the XPS and M3800 Linux developer’s laptops weren’t Dell’s first foray into Linux laptops. Those with long memories may remember Dell testing the waters for a brief while by having a Linux offering alongside Windows laptops. By their own admission it didn’t work out. “We misread the market,” commented George. Read more Also: New Entroware Aether Laptop for Linux Powered with Ubuntu

A Short MATE Desktop 1.17 Review in February 2017

MATE 1.17 is a testing release, it has no official announcement like 1.16 stable release (odd = unstable, even = stable). But what made me interested is because Ubuntu MATE 17.04 includes it by default so I write this short review. The most fundamental news is about MATE Desktop is now completely ported to GTK+3 leaving behind GTK+2. You may be interested seeing few changes and I have tried Ubuntu MATE 17.04 Alpha 2 to review MATE 1.17 below. Enjoy MATE 1.17! Read more Also: What's up with the hate towards Freedesktop?