Language Selection

English French German Italian Portuguese Spanish

Development

Programming: GNU/Linux Development Workstations

Filed under
Development
  • Create your Linux development workstation in seconds

    Linux is the best platform for developers. Here’s how you can get popular languages and development environments up and running in moments. The first step is to install snapd (the service that runs and manages Snaps) on your distro, then you can install your pick from some of our recommendations below.

  • Web development on a phone with Hugo and Termux

    Hugo is an excellent static site generator and website framework.

    You can build a static web site using your phone by running Hugo on LineageOS under Termux.

    Here’s how:

7 Python libraries for more maintainable code

Filed under
Development

It's easy to let readability and coding standards fall by the wayside when a software project moves into "maintenance mode." (It's also easy to never establish those standards in the first place.) But maintaining consistent style and testing standards across a codebase is an important part of decreasing the maintenance burden, ensuring that future developers are able to quickly grok what's happening in a new-to-them project and safeguarding the health of the app over time.

Read more

Programming: GitLab, C++17, GCC

Filed under
Development
  • Introducing freedesktop.org GitLab

    This is quite a long post. The executive summary is that freedesktop.org now hosts an instance of GitLab, which is generally available and now our preferred platform for hosting going forward. We think it offers a vastly better service, and we needed to do it in order to offer the projects we host the modern workflows they have been asking for.

    In parallel, we’re working on making our governance, including policies, processes and decision making, much more transparent.

  • GitLab Is A Vast Improvement To FreeDesktop.org's Infrastructure

    Taking place the past few months has been migrating the FreeDesktop.org infrastructure to GitLab and the developers/administrators involved are quite happy with this big improvement to better their code hosting, issue tracking, etc.

    The FreeDesktop.org GitLab deployment is happening on Google Compute Engine to also replace aging FreeDesktop.org hardware in the process. Among the FreeDesktop.org projects moving over to GitLab has been Mesa, X.Org, and other sub-projects. This also follows a larger trend among other free software projects centering on GitLab for their infrastructure needs with the previous most notable project having been GNOME.

  • C++17 Filesystem Support Lands In LLVM's Libc++ Library

    This week support for the official C++17 "filesystem" feature landed within LLVM's libc++ standard library.

    C++17 adds file-system abstractions based upon the Boost library's filesystem support. This functionality makes it easier for C++ programs to perform file/directory operations across platforms in a standard manner. The file-system technical specification continues to be available here for all of the details.

  • Updated ARM Patches Posted For Mitigating Spectre V1 With GCC Compiler

    ARM's Richard Earnshaw has posted a revised version for their months-in-development patch-set for mitigating against unsafe data speculation by the GCC code compiler. This new Spectre V1 mitigation for ARM 64-bit would be exposed via a new -mtrack-speculation compiler switch.

    This second version of the Spectre V1 mitigation work led by ARM for the GCC compiler is now available. This new version incorporates the feedback garnered months ago when these initial patches were published and uses a new approach for tracking data speculation to see whether the CPU's control flow speculation matches the data flow calculations.

UniverCity, an isometric university management game arrives in Early Access next month, developed on Linux

Filed under
Development
Gaming

Yep. I use ArchLinux to develop the game on and test SteamOS and Windows via a VM.

Read more

Top Open Source Python Projects For Beginners

Filed under
Development
OSS

“What are the best open source Python projects to contribute to?” This is one of the most frequent questions posed by beginners. As a learner, contributing to open source projects is the best way to understand the code, the test infrastructure and build environment and the framework. Working on a project is also a great way to test your application, find and fix bugs and update documentation. Now GitHub has a number of beginner-friendly Python projects, but it takes a bit of time to understand the Git workflow as well. For example, knowing features such as push, pull, merge master and rollback among others, could come in handy.

Read more

A Git Origin Story

Filed under
Development

Linus coded in seclusion for a brief time, then shared his new conception with the world. Within days of beginning the project in June of 2005, Linus' git revision control system had become fully self-hosting. Within weeks, it was ready to host Linux kernel development. Within a couple months, it reached full functionality. At this point, Linus turned the project's maintainership over to its most enthusiastic contributor, Junio C. Hamano, and returned full-time to Linux development once again.

A stunned community of free software developers struggled to understand this bizarre creation. It did not resemble any other attempts at revision control software. In fact, it seemed more like a bunch of low-level filesystem operations, than a revision control system. And instead of storing patches as other systems did, it stored whole versions of each changed file. How could this possibly be good? On the other hand, it could handle forks and merges with lightning speed and could generate patches rapidly on demand.

Gradually, Junio drew together a set of higher-level commands that more closely resembled those of tools like CVS and Subversion. If the original set of git commands were the "plumbing", this new set of commands were the "porcelain". And, so they came to be called.

As much as there had been controversy and resentment over BitKeeper, there was enthusiasm and participation in the further development of git. Ports, extensions and websites popped up all over the place. Within a few years, pretty much everyone used git. Like Linux, it had taken over the world.

Read more

Also: Improve your Python skills this weekend

GCC 8.2 Released

Filed under
Development
GNU
  • GCC 8.2 Released

    The GNU Compiler Collection version 8.2 has been released.

    GCC 8.2 is a bug-fix release from the GCC 8 branch containing important fixes for regressions and serious bugs in GCC 8.1 with more than 99 bugs fixed since the previous release.

  • GCC 8.2 Released, GCC 8.3 Coming Around Year's End

    Jakub Jelinek of Red Hat today announced the relase of GCC 8.2 stable as the first point relase to the stable GCC 8 compiler that debuted earlier this year.

    GCC 8.2 just contains bug/regression fixes over GCC 8.1. Coming in though as perhaps the most notable fix for GCC 8.2 is fixed tuning when using -march=native on Intel Skylake CPUs and newer with this glaring shortcoming having been part of the GCC8 release for several months. If you tune for "-march=native" on GCC 8 with newer Intel CPUs, this fix may be noticeable for performance-sensitive workloads.

The PEP 572 endgame

Filed under
Development

Over the last few months, it became clear that the battle over PEP 572 would be consequential; its scale and vehemence was largely unprecedented in the history of Python. The announcement by Guido van Rossum that he was stepping down from his role as benevolent dictator for life (BDFL), due in part to that battle, underscored the importance of it. While the Python project charts its course in the wake of his resignation, it makes sense to catch up on where things stand with this contentious PEP that has now been accepted for Python 3.8.

We first looked at the discussion around PEP 572 back in March, when the second version of the PEP was posted to the python-ideas mailing list. The idea is to allow variable assignment inline, so that certain constructs can be written more easily. That way, an if or while, for example, could have a variable assignment in the statement and the value of the variable could be used elsewhere in the block (and, perhaps, beyond). The scope of those assignments is one of the areas that has evolved most since the PEP was first introduced.

Read more

Programming Leftovers

Filed under
Development

Pitivi Development Updates

Filed under
Development
Software
Movies
  • Writing a freesound plugin for Pitivi

    I always say that my first geeky passion is computer programming. But that is a passion I developed about 8 years ago. Another geeky passion I have recently developed has been security analysis. Because of this reason I started a Youtube channel the previous year called “Inversor Moderno” (“Modern investor” in English). Besides the fact that I prefer to follow the fundamental analysis and to be more specific the “value investing” philosophy, I started the channel with the purpose of leaning and teaching more about investments and specifically about quantitative trading. However, it has been a long time since the last time I uploaded a video.

    [...]

    I am still not sure if I should use a GtkListBox or if a GtkTreeView would look better. Also I don’t know what message should be shown when no result is found after searching and also what message to show when the Freesound library window is open for the first time.

  • [GSoC 2018] Welcome Window Integration in Pitivi – Conclusion

    In my last post (link), I talked about integrating “Search” and “Remove” feature in Pitivi’s welcome window. Search feature allowed for easy browsing of recent projects and remove feature allowed removing project(s) from recent projects list.

    In this post, I want to introduce “Project Thumbnails”. I have successfully integrated project thumbnails in recent projects list. This is the last task under issue 1302.

    The main idea behind thumbnails is to give the user a hint what a certain project is about. This can be seen as information in addition to project name and uri which helps to identify the desired project faster and more easily.

Syndicate content

More in Tux Machines

Red Hat News/Leftovers

Cloudgizer: An introduction to a new open source web development tool

Cloudgizer is a free open source tool for building web applications. It combines the ease of scripting languages with the performance of C, helping manage the development effort and run-time resources for cloud applications. Cloudgizer works on Red Hat/CentOS Linux with the Apache web server and MariaDB database. It is licensed under Apache License version 2. Read more

James Bottomley on Linux, Containers, and the Leading Edge

It’s no secret that Linux is basically the operating system of containers, and containers are the future of the cloud, says James Bottomley, Distinguished Engineer at IBM Research and Linux kernel developer. Bottomley, who can often be seen at open source events in his signature bow tie, is focused these days on security systems like the Trusted Platform Module and the fundamentals of container technology. Read more

TransmogrifAI From Salesforce

  • Salesforce plans to open-source the technology behind its Einstein machine-learning services
    Salesforce is open-sourcing the method it has developed for using machine-learning techniques at scale — without mixing valuable customer data — in hopes other companies struggling with data science problems can benefit from its work. The company plans to announce Thursday that TransmogrifAI, which is a key part of the Einstein machine-learning services that it believes are the future of its flagship Sales Cloud and related services, will be available for anyone to use in their software-as-a-service applications. Consisting of less than 10 lines of code written on top of the widely used Apache Spark open-source project, it is the result of years of work on training machine-learning models to predict customer behavior without dumping all of that data into a common training ground, said Shubha Nabar, senior director of data science for Salesforce Einstein.
  • Salesforce open-sources TransmogrifAI, the machine learning library that powers Einstein
    Machine learning models — artificial intelligence (AI) that identifies relationships among hundreds, thousands, or even millions of data points — are rarely easy to architect. Data scientists spend weeks and months not only preprocessing the data on which the models are to be trained, but extracting useful features (i.e., the data types) from that data, narrowing down algorithms, and ultimately building (or attempting to build) a system that performs well not just within the confines of a lab, but in the real world.