Language Selection

English French German Italian Portuguese Spanish

Programming: Rust, LLVM, COBOL and More

Filed under
Development
  • This Week in Rust 321

    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!

  • LLVM Developers Discuss Improved Decision Making Process

    LLVM project founder Chris Lattner has proposed a new decision making process for the LLVM compiler stack around new sub-project proposals, new social policies, changes to core infrastructure, and other key changes.

    Lattner is proposing a process similar to the Swift language's Evolution Process (to which Lattner has been involved with Swift), Rust's RFC process, Python PEP, and other similar processes for different programming languages. The motivation is to provide clearer steps for developers wishing to propose effectively fundamental changes to the project with no code owners. And, yes, there still is the LLVM Foundation for more project related matters where as the process changes here are technical focused.

  • LLVM 10 Adds Option To Help Offset Intel JCC Microcode Performance Impact

    Disclosed back in November was the Intel Jump Conditional Code Erratum that necessitated updated CPU microcode to mitigate and with that came with a nearly across the board performance impact. But Intel developers had been working on assembler patches for helping to reduce that performance hit. The GNU Assembler patches were merged back in December while now ahead of LLVM 10.0 that alternative toolchain has an option for helping to recover some of the lost performance.

    On the GNU side the exposed option is "-mbranches-within-32B-boundaries" for altering the handling of jump instructions to aide in reducing the performance hit from the Intel CPU microcode update for Skylake through Cascadelake. (More details in the original JCC article, which includes early benchmarks of the JCC impact and of the mitigated support that has been available within Intel's Clear Linux since the disclosure date.)

  • RcppRedis 0.1.10: Switch to tinytest

    Another minor release of RcppRedis just arrived on CRAN, following a fairly long break since the last release in October 2018.

    RcppRedis is one of several packages connecting R to the fabulous Redis in-memory datastructure store (and much more). RcppRedis does not pretend to be feature complete, but it may do some things faster than the other interfaces, and also offers an optional coupling with MessagePack binary (de)serialization via RcppMsgPack. The package has carried production loads for several years now.

    This release switches to the fabulous tinytest package, allowing for very flexible testing during development and deployment—three cheers for easily testing installed packages too.

  • Excellent Free Tutorials to Learn COBOL

    COBOL is an acronym which stands for Common Business-Oriented Language. The US Department of Defense, in a conference, formed CODASYL (Conference on Data Systems Language) to develop a language for meeting business data processing needs which is now known as COBOL.

    COBOL is a standard language that can be compiled and executed on various machines. It’s ideally suited for business-oriented applications as it can handle huge volumes of data. It provides numerous debugging and testing tools. COBOL is a structured language; it has different divisions, so it’s easy to debug. The language is not designed for writing systems programs.

    COBOL is one of the oldest computer languages.

  • Perl Weekly Challenge - 043
  • Automating Helm deployments with Bash

    Some of our applications are hosted in a Kubernetes cluster, and we use GitLab Continuous Integration (CI) to automate deployments and Helm 2 to deploy our applications. Helm charts enable the storage of templates of Kubernetes object YAML files with variables that can be programmatically set from command-line arguments passed when the chart is used during deployments. This allows us to store critical secrets in GitLab-protected environment variables or in Hashicorp Vault and use them within the CI deployment job.

    [...]

    The script performs all tasks required to deploy a Helm chart for an application to Kubernetes and waits for the deployment to be ready using kubectl and Helm. Helm runs with a local Tiller installation instead of running Tiller in the Kubernetes cluster. The Kubernetes HELM_USER and HELM_PASSWORD are used to log into the Kubernetes CLUSTER_SERVER and PROJECT_NAMESPACE. Tiller is started, Helm is initialized in client-only mode, and its repo is updated. The template is linted with Helm to ensure that syntax errors have not been accidentally committed. The template is then deployed in declarative mode, using helm upgrade --install. Helm waits for the deployment to be ready using the --wait flag.

  • Niko Matsakis: Async Interview #4: Florian Gilcher

    Hello! For the latest async interview, I spoke with Florian Gilcher (skade). Florian is involved in the async-std project, but he’s also one of the founders of Ferrous Systems, a Rust consulting firm that also does a lot of trainings. In that capacity, he’s been teaching people to use async Rust now since Rust’s 1.0 release.

    [...]

    We discussed the futures crate for a while. In particular, the question of whether we should be “stabilizing” traits by moving them into the standard library, or whether we can use the futures crate as a “semi-stable” home. There are obviously advantages either way.

    On the one hand, there is no clearer signal for stability than adding something to libstd. On the other, the future crate facade gives a “finer grained” ability to talk about semver.

    One thing Florian noted is that the futures crate itself, although it has evolved a lot, has always maintained an internal consistency, which is good.

    One other point Florian emphasized is that people really want to be building applications, so in some way the most important thing is to be moving towards stability, so they can avoid worrying about the sand shifting under their feet.

  • Protect your veggies from hail with a Raspberry Pi Zero W

    Tired of losing vegetable crops to frequent summertime hail storms, Nick Rogness decided to build something to protect them. And the result is brilliant!

More in Tux Machines

Fedora and Red Hat: Test Day This Thursday, Report on State of Enterprise Open Source 2020 and More

  • Fedora 32 Gnome 3.36 Test Day 2020-02-20

    Thursday, 2020-02-20 is the Fedora 32 Gnome Test Day! As part of changes Gnome 3.36 in Fedora 32, we need your help to test if everything runs smoothly!

  • The State of Enterprise Open Source 2020: Enterprise open source use rises, proprietary software declines

    Last year we set out to determine how IT leaders think about open source, why they choose it and what they intend to do with it in the future. The result was The 2019 State of Enterprise Open Source: A Red Hat Report, and the findings were clear and confirmed what we see happening in the industry. Enterprise open source has become a default choice of IT departments around the world and organizations are using open source in categories that have historically been more associated with proprietary technology. Headed into the second year of the survey, we had a new directive in mind. We wanted to dive deeper into how IT leaders’ intentions and usage have changed. We surveyed 950 IT leaders in four regions. Respondents had to have some familiarity with enterprise open source and have at least 1% Linux installed at their organization. Respondents were not necessarily Red Hat customers and were unaware that Red Hat was the sponsor of this survey. This allowed us to get a more honest and broad view of the true state of enterprise open source.

  • Manage application programming interfaces to drive new revenue for service providers

    Telecommunications service providers have valuable assets that can be exposed, secured, and monetized via API-centric agile integration. They can derive additional value from new assets, developed internally or through partners and third parties and integrated in a similar way with OSS and BSS systems. Service providers can open new revenue paths if they enhance the value they deliver to customers and to their partner- and developer-ecosystems. APIs can help them accomplish this goal. Services that providers can potentially offer with APIs include direct carrier billing, mobile health services, augmented reality, geofencing, IoT applications, and more. Mobile connectivity, for example, is key to powering IoT applications and devices, giving service providers an inside track to provide APIs to access network information for IoT services. In mobile health, APIs can serve as the link between the customer and healthcare partners through the user’s smartphone. Embracing this API-centric approach, service providers can realize increased agility by treating OSS/BSS building blocks as components that can be reused again and again. They may also innovate faster by giving partners controlled access to data and services, expand their ecosystem by improving partner and third-party collaboration, and generate more revenue through new direct and indirect channels.

today's howtos

  • Autostart Tmux Session On Remote System When Logging In Via SSH

    It is always a good practice to run a long running process inside a Tmux session when working with remote systems via SSH. Because, it prevents you from losing the control of the running process when the network connection suddenly drops. Just in case the network connection gets dropped for any reason, the processes inside the Tmux session will keep running on the remote systems, so you can re-attach to the Tmux session using “tmux attach” command once the network connection is back online. What if you forgot to start the Tmux session in the first place? No matter how careful you’re, sometimes you may forget to start Tmux session. Here is a simple way to avoid this problem. You can autostart Tmux session on the remote systems when logging via SSH. This is especially helpful if you lost the network connection when upgrading a remote Linux server via SSH from your local system.

  • Setup Static IP on Ubuntu 18.04 LTS Desktop and Server Operating System

    In this article, I am going to show you how to configure a static IP on Ubuntu 18.04 LTS server and desktop operating systems. So, let’s get started.

  • Amiga floppy recovery project scope

    The main goal of my Amiga project is to read the data from my old floppy disks. After a bit of hiatus (and after some gentle encouragement from friends at FOSDEM) I'm nearly done, 150/200 disks attempted so far. Ultimately I intend to get rid of the disks to free up space in my house, and probably the Amiga, too. In the meantime, what could I do with it?

  • Part 1: How to Enable Hardware Accelerators on OpenShift

    Managing hardware accelerator cards like GPUs or high-performance NICs in Kubernetes is hard. The special payload (driver, device-plugin, monitoring stack deployment and advanced feature discovery), updates and upgrades, are tedious and error-prone tasks, and often third-party vendor knowledge is needed to accomplish these steps. The Special Resource Operator (SRO) is a template for exposing and managing accelerator cards in a Kubernetes cluster. It handles the hardware seamlessly from bootstrapping to update and upgrades fully managed. The first part will describe the SRO in general where the second part will describe the building blocks in SRO and how to enable a different hardware accelerator step by step.

  • Everthing you need to know about tmux – Windows

    What are tmux Windows? tmux window is the entity that holds panes and resides within the tmux session. Think of a window in tmux as a tab in your notebook. Tabs (windows) help organize your work and group your individual pages (panes) based on some topic of your choice. By default, when tmux starts, a session is initialized. Within this session, tmux initializes a single window (by default) which occupies the entire area of the terminal. This window will contain one single pane (by default).

Screencasts/Audiocasts/Shows: MX Linux 19.1 Run Through, Late Night Linux, Linux Headlines and More

  • MX Linux 19.1 Run Through

    In this video, we are looking at MX Linux 19.1.

  • Late Night Linux – Episode 83

    Joe has been playing with a PinePhone for a week and gives an honest appraisal. Plus Will’s simple solution to his Mac woes, switching to Linux and a community crowdfunder in the news, and a packed KDE Korner.

  • 2020-02-17 | Linux Headlines

    Two separate VPN companies have recently open-sourced client software, and updates to some beloved projects.

  • Change Desktop Environments on Linux

    Let's go over what it takes to switch your desktop on Linux change it from KDE, GNOME, XFCE, MATE, Cinnamon, LXQt, etc.

Second Shortwave Beta

Today I can finally announce the second Shortwave Beta release! I planned to release it earlier, but unfortunately the last few weeks were a bit busy for me. Read more