Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development
  • 15 favorite programming tutorials and insights

    Happy new year! 2020 was one heck of an unusual year with the COVID-19 pandemic pushing us to stay at home and dramatically transforming our lifestyles. However, a time like this is also the best time to start picking up a new programming language or to level up your existing programming skillset. We begin with some light reading: What is your first programming language? and Why developers like to code at night. Next, we have articles about some specific programming languages like C, D, and Awk.

  • Raspberry Pi 400 for working and learning at home
  • Software is drowning the world

    One of the many upsides I’ve had from working at lots of organisations is that you get to see what’s common. Are things like this everywhere? Frequently, the answer is yes!

    An example of this is tech debt.

    I see organisations which are running to stand still, and I’m not sure they realised they’re doing that.

    What do I mean by this?

    Every time you decide to solve a problem with code, you are committing part of your future capacity to maintaining and operating that code. Software is never done.

    Here’s a few examples of demonstrating what I mean: [...]

  • Extracting the list of O'Reilly Animals

    Now I want to grab the entire list of O’Reilly cover animals, and Mojolicious is going to help me do that.

    O’Reilly Media, who publishes most of my books, is distinctively known by the animals it chooses for their covers. Edie Freedman explains how she came up with the well-known design in A short history of the O’Reilly animals. I think I first saw this design on the cover of sed & awk; those Slender Lorises (Lori?) are a bit creepy, but not creepy enough to keep me away from the command line.

  • Dirk Eddelbuettel: BH 1.75.0-0: New upstream release, added Beast

    Boost is a very large and comprehensive set of (peer-reviewed) libraries for the C++ programming language, containing well over 100 individual libraries. The BH package provides a sizeable subset of header-only libraries for use by R.

    Version 1.75.0 of Boost was released in December, right on schedule with their April, August and December releases. I now try to follow these releases at a lower (annual) cadence and prepared BH 1.75.0-0 in mid-December. Extensive reverse-depends checks revealed a need for changes in a handful of packages whose maintainers I contacted then. With one exception, everybody responded in kind and brought updated packages to CRAN which permitted us to upload the package there two days ago. And thanks to this planned and coordinated upload, the package is now available on CRAN a mere two days later. My thanks to the maintainers of these packages for helping it along; this prompt responses really are appreciated. The version on CRAN is the same as the one the drat announced in this tweet asking for testing help. If you installed that version, you are still current as no changes were required since December and CRAN now contains same file.

  • Improve your software product delivery process performance using metrics (Sleepy

    As many other graduates in physics, I have passion for Faymann. His explanations of complex concepts made them seem reachable for students like me up to a point where you develop a taste for simplicity. Producing software at scale is complex, but if you have some basic and often simple concepts clear and you keep passionate about simplicity, you not just be able to better understand the management challenges ahead of you but also to communicate them more effectively, as well as the potential solutions.

    [...]

    We have justified the relevance to start simple when evaluating the performance of our delivery process. We have created the simplest possible model to start our analysis from. We described such model as well as a mathematical construct to characterize it. Some considerations were provided about how to perform the measurements and plot the results as part of a quantitative analysis.

    We learned how to move from a quantitative to a qualitative analysis and why. Once the qualitative analysis done, we defined a data driven improve­ment kata to improve the performance of our delivery process iteratively. Such kata is summarized in a simple board.

    In essence, this is a process any organization can follow in order to improve de performance of the delivery process effectively. If you are not able to say out loud what has been your Throughput and Stability the past quarter, last month, yesterday, today… your delivery process is not under control. In such case, it is hard to imagine that you will be able to improve it in a meaningful way.

  • Clang LTO Support Looks Like It Could Land For Linux 5.12 - Phoronix

    The support for Clang LTO of the Linux kernel for link-time optimizations when using that GCC alternative compiler looks like it will land with Linux 5.12.

    For a number of months the Clang LTO wiring to the Linux kernel has been undergoing rounds of review and of interest from multiple parties. Vendors like Google already make use of Clang link-time optimizations as part of their kernel builds on mobile devices. There's been much interest and it looks like for Linux 5.12 that work will likely land -- it's been queued into a "-next" branch ahead of the Linux 5.12 merge window in February.

  • 2021.01/02 So. Much. New. Stuff. – Rakudo Weekly News

    The past two weeks, while yours truly was taking a little break, have turned out so many new projects that one can only say this is an excellent beginning of 2021 for the Raku Programming Language. Which will hopefully turn out to be better for everybody than 2020 turned out to be.

    [...]

    JJ Atria and James Raspass have unveiled another online Raku ecosystem browser called Raku.land. Still a little rough around the edges, and not complete yet, but good to see something like this being developed in the Raku Programming Language itself (see source on Gitlab and /r/rakulang comments).

  • [Older] Big Data Manipulation for Fun and Profit Part 1 - LinuxConfig.org

    These days everyone seems to be speaking about Big Data - but what does it really mean? The term is used quite ambiguously in a variety of situations. For the purposes of this article, and the series, we will refer to big data whenever we mean ‘a large amount of textual data, in any format (for example plain ASCII text, XML, HTML, or any other human-readable or semi-human-readable format). Some techniques shown may work well for binary data also, when used with care and knowledge.

More in Tux Machines

Movim: An Open-Source Decentralized Social Platform Based on XMPP Network

Just like some other XMPP desktop clients, Movim is a web-based XMPP front-end to let you utilize it as a federated social media. Since it relies on XMPP network, you can interact with other users utilizing XMPP clients such as Conversations (for Android) and Dino (for Desktop). In case you didn’t know, XMPP is an open-standard for messaging. So, Movim can act as your decentralized messaging app or a full-fledged social media platform giving you an all-in-one experience without relying on a centralized network. It offers many features that can appeal to a wide variety of users. Let me briefly highlight most of the important ones. Read more

Revive Classic Nintendo DS Games on Linux With Emulation

Want to play Nintendo DS games on your Linux system but can't figure out how? Back in the day, Nintendo DS was a very popular handheld console with a huge collection of games. But over time, advanced consoles were launched in the market that rendered DS obsolete. Luckily, several emulators are available that allow you to play classic Nintendo DS games on your system. DeSmuMe is a great example of a stable Nintendo DS emulator for a Linux machine. Read more

Patched Linux 5.11 Continues Looking Great For AMD Ryzen/EPYC Performance

While the initial AMD Linux 5.11 performance regression written about at the end of last year was of much concern given the performance hits to AMD Zen 2 / Zen 3 processors with the out-of-the-box "Schedutil" governor, with a pending patch the regression is not only addressed but in various workloads we continue seeing better performance than even compared to Linux 5.10. Here is the latest from several more days of extensive performance testing. Read more

DIN-rail gateway offers dual LAN and dual RS485

The Unipi Gate G110 and G100 are PLC-ready DIN-rail gateways that run Linux on a quad -A53 SoC with 16GB eMMC, GbE and 10/100 LAN ports, and up to 2x RS485 ports with modular extensions. Czech based Unipi, which started out in 2014 with a Raspberry Pi based UniPi automation controller board and followed up with products including an Allwinner H5-based Axon automation controller, has now launched the $243 Unipi Gate G100 and $272 Unipi Gate G110 DIN-rail gateways. Read more