Language Selection

English French German Italian Portuguese Spanish

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.

More in Tux Machines

Linux Kernel: EROFS, Heterogeneous Memory Management, Getting Involved, 4.20-rc3, and DRM ('Secure Output Protocol')

  • There Is Finally A User-Space Utility To Make EROFS Linux File-Systems
    Back when Huawei introduced the EROFS Linux file-system earlier this year, there wasn't any open-source user-space utility for actually making EROFS file-systems. Even when EROFS was merged into the mainline tree, the user-space utility was still non-existent but now that issue has been rectified.
  • The State Of Heterogeneous Memory Management At The End Of 2018
    Heterogeneous Memory Management is the effort going on for more than four years that was finally merged to the mainline Linux kernel last year but is still working on adding additional features and improvements. HMM is what allows for allowing the mirroring of process address spaces, system memory to be transparently used by any device process, and other functionality for GPU computing as well as other device/driver purposes. Jerome Glisse at Red Hat who has spearheaded Heterogeneous Memory Management from the start presented at last week's Linux Plumbers Conference on this unified memory solution.
  • An attempt to create a local Kernel community
    Now I am close to complete one year of Linux Kernel, and one question still bugs me: why does it have to be so hard for someone in a similar condition to become part of this world? I realized that I had great support from many people (especially from my sweet and calm wife) and I also pushed myself very hard. Now, I feel that it is time to start giving back something to society; as a result, I began to promote some small events about free software in the university and the city I live. However, my main project related to this started around two months ago with six undergraduate students at the University of Sao Paulo, IME [3]. My plan is simple: train all of these six students to contribute to the Linux Kernel with the intention to help them to create a local group of Kernel developers. I am excited about this project! I noticed that within a few weeks of mentoring the students they already learned lots of things, and in a few days, they will send out their contributions to the Kernel. I want to write a new post about that in December 2018, reporting the results of this new tiny project and the summary of this one year of Linux Kernel. See you soon :)
  • Feral Interactive Announces Total War: WARHAMMER II to Be Released for Linux Tomorrow, Uber Joined The Linux Foundation, Security Bug Discovered in Instagram, Fedora Taking Submissions for Supplemental Wallpapers and Kernel 4.20-rc3 Is Out
    Linux kernel 4.20-rc3 is out. Linus says the only unusual thing was his travel and that the changes "are pretty tiny".
  • Wayland Secure Output Protocol Proposed For Upstream - HDCP-Like Behavior
    Collabora developer Scott Anderson sent out a "request for comments" patch series that would add a Secure Output Protocol to the Wayland space. The Secure Output Protocol is for allowing a Wayland client to tell the compositor to only display if it's going to a "secure" output, such as for HDCP-like (High-bandwidth Digital Content Protection) configurations, but there is no mandate at the protocol level about what is the definition of secure -- if anything. This does not impose any DRM per se by Wayland but is mostly intended for set-top-boxes and other closed systems where a Wayland client can reasonably trust the compositor. The Wayland Secure Output Protocol is based upon the work done by Google on their Chromium Wayland code.

more of today's howtos

Best Linux Desktop Environments: Strong and Stable

A desktop environment is a collection of disparate components that integrate together. They bundle these components to provide a common graphical user interface with elements such as icons, toolbars, wallpapers, and desktop widgets. Additionally, most desktop environments include a set of integrated applications and utilities. Desktop environments (now abbreviated as DE) provide their own window manager, system software that controls the placement and appearance of windows within a windowing system. They also provide a file manager which organizes, lists, and locates files and directories. Other aspects include a background provider, a panel to provide a menu and display information, as well as a setting/configuration manager to customize the environment. Ultimately, a DE is a piece of software. While they are more complicated than most other types of software, they are installed in the same way. Read more

KDE neon upgrade - From 16.04 to 18.04

I am quite happy with the KDE neon upgrade, going from the 16.04 to the 18.04 base. I think it's good on several levels, including improved hardware support and even slightly better performance. Plus there were no crashes or regressions of any kind, always a bonus. This means that neon users now have a fresh span of time to enjoy their non-distro distro, even though it's not really committing to any hard dates, so the LTS is also only sort of LTS in that sense. It's quite metaphysical. On a slightly more serious note, this upgrade was a good, positive experience. I semi-accidentally tried to ruin it, but the system recovered remarkably, the post-upgrade results are all sweet, and you have a beautiful, fast Plasma desktop, replete with applications and dope looks and whatnot. I'm happy, and we shall bottle that emotion for when the need arises, and in the Linux world it does happen often, I shall have an elixir of rejuvenation to sip upon. KDE neon, a surprisingly refined non-distro distro. Read more