Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development
  • Python Script Invalidates Hundreds Of Papers

    This news item is interesting not just because it is a lesson to us all, but because of the way it is being reported as "Bug In Python Script ..." with the suggestion that Python is the cause of the problem. The truth is, in fact, much more interesting.

    The script is about 1000 lines of Python and hence it isn't a small program. It has been in use since 2014 and was created by Patrick Willoughby, Matthew Jansma, and Thomas Hoye to take raw data and calculate NMR shifts. In the journal Nature Protocols the subject is referred to as the "Willoughby-Hoye" scripts.

  • Future-Proof Code

    Y2K was the nerdy disaster that wasn’t. The fear was that the moment 1/1/00 rolled around, some computers would think it was Jan. 1, 1900. What could go wrong? Maybe highly computerized hydroelectric dams would open their floodgates! Or maybe all date math trying to subtract from 00 would end up negative, and suddenly your mortgage would have been paid off dozens of decades ago!

    The world freaked out. Software engineers stayed up late. In the end, Y2K had some terrible real-life consequences, but it also didn’t turn out to be a complete catastrophe that required stockpiling ammunition and MREs. After airplanes didn’t fall out of the sky, everyone breathed a sigh of relief. The problem, as the public learned so well in the run-up to the New Year, was that for decades, software engineers had left out the century to save on space when storing dates. It was as though they had assumed their software would always run in a year that began with 19. For many who were still just getting used to dial-up internet, Y2K was their first exposure to the potential fragility of software.

  • Current qutebrowser roadmap and next crowdfunding

    Now I'm employed around 16h/week at the same place, mainly helping out with the operating systems course (in other words: I spend my time staring at LaTeX/C/Assembler/Python and teaching students).

    Like already mentioned in the earlier mail, this means I now have a lot more time than before for working on open-source projects. I'm in the process of founding my own one-man company and already have some work lined up - but as soon as everything is set up, I plan to spend much more time on qutebrowser. Certainly a lot more than what I've been able to during my studies in the past years.

    However, that means I don't have a lot of recurring income (enough to pay for rent, food and other bills - but not much more than that). This is why I plan to start another qutebrowser fundraising very soon. There will be shirts and stickers available again, as well as some other swag. This time, I'll focus on recurring donations, but I also plan to offer a way to contribute via one-time donations instead.

  • Introduction to PyTorch for Classification

    PyTorch and TensorFlow libraries are two of the most commonly used Python libraries for deep learning. PyTorch is developed by Facebook, while TensorFlow is a Google project. In this article, you will see how the PyTorch library can be used to solve classification problems.

    Classification problems belong to the category of machine learning problems where given a set of features, the task is to predict a discrete value. Predicting whether a tumour is cancerous or not, or whether a student is likely to pass or fail in the exam, are some of the common examples of classification problems.

    In this article, given certain characteristics of a bank customer, we will predict whether or not the customer is likely to leave the bank after 6 months. The phenomena where a customer leaves an organization is also called customer churn. Therefore, our task is to predict customer churn based on various customer characteristics.

  • Arduino With Python: How to Get Started

    Microcontrollers have been around for a long time, and they’re used in everything from complex machinery to common household appliances. However, working with them has traditionally been reserved for those with formal technical training, such as technicians and electrical engineers. The emergence of Arduino has made electronic application design much more accessible to all developers. In this tutorial, you’ll discover how to use Arduino with Python to develop your own electronic projects.

  • Eclipse Vert.x 3.8.1 update for Red Hat Runtimes

    The latest update to Red Hat Runtimes has arrived and now supports Eclipse Vert.x 3.8.1.

    Red Hat Runtimes provides application developers with a variety of application runtimes and enables them to run on the Red Hat OpenShift Container Platform.

  • Robotic process automation (RPA): How it works

    “Do more with less” might be a timeworn excuse for a business mantra, but robotic process automation (RPA) is a tool that could actually help teams do just that in the right circumstances.

    That’s the big selling point of RPA. The phrase itself might sound complicated or scary, but the possible benefits of RPA are pretty simple: Use software to automatically handle repetitive (and often boring) computer-based tasks that previously hogged a person’s time.

    Moreover, the processes that make good fits for RPA usually take up human hours with work that requires minimal (or no) skill or creativity. It’s ultimately about efficiency.

More in Tux Machines

Testing Slax 10.2 beta1

Changes include disabling apparmor, which was preventing some programs from starting properly (eg. man), and fixing chromium by installing chromium-sandbox package. Also added was dummy 'sudo' command (so you can copy&paste sudo commands from internet and it will work as long as you are signed in as root). I will be happy if you let me know problems you encounter, either by email, or using slax-users google group, or by commenting to this blog post. Read more

GCC: OpenMP / OpenACC and Static Analysis Framework

  • The GCC 10 Compiler Lands OpenMP / OpenACC Offloading To AMD Radeon GPUs

    A few days ago I wrote about the OpenMP / OpenACC offloading patches for Radeon "GCN" GPUs being posted and seeking inclusion in the GCC 10 compiler that will be released in a few months. Those patches were successfully merged meaning this next annual update to the GNU Compiler Collection will feature initial OpenMP/OpenACC code offloading support to supported AMD GPU targets. After GCC 9 only had the initial AMD Radeon GCN target in place, GCC 10 in early 2020 will feature the initial offloading support using the modern OpenMP and OpenACC APIs, thanks to the merges this week. The libgomp port and associated bits for the AMD GCN back-end have landed thanks to the work done by Code Sourcery under contract with AMD.

  • RFC: Add a static analysis framework to GCC
    This patch kit introduces a static analysis pass for GCC that can diagnose
    various kinds of problems in C code at compile-time (e.g. double-free,
    use-after-free, etc).
    
    The analyzer runs as an IPA pass on the gimple SSA representation.
    It associates state machines with data, with transitions at certain
    statements and edges.  It finds "interesting" interprocedural paths
    through the user's code, in which bogus state transitions happen.
    
    For example, given:
    
       free (ptr);
       free (ptr);
    
    at the first call, "ptr" transitions to the "freed" state, and
    at the second call the analyzer complains, since "ptr" is already in
    the "freed" state (unless "ptr" is NULL, in which case it stays in
    the NULL state for both calls).
    
    Specific state machines include:
    - a checker for malloc/free, for detecting double-free, resource leaks,
      use-after-free, etc (sm-malloc.cc), and
    - a checker for stdio's FILE stream API (sm-file.cc)
    
    There are also two state-machine-based checkers that are just
    proof-of-concept at this stage:
    - a checker for tracking exposure of sensitive data (e.g.
      writing passwords to log files aka CWE-532), and
    - a checker for tracking "taint", where data potentially under an
      attacker's control is used without sanitization for things like
      array indices (CWE-129).
    
    There's a separation between the state machines and the analysis
    engine, so it ought to be relatively easy to add new warnings.
    
    For any given diagnostic emitted by a state machine, the analysis engine
    generates the simplest feasible interprocedural path of control flow for
    triggering the diagnostic.
    
  • GCC Might Finally Have A Static Analysis Framework Thanks To Red Hat

    Clang's static analyzer has become quite popular with developers for C/C++ static analysis of code while now the GNU Compiler Collection (GCC) might finally see a mainline option thanks to Red Hat. Red Hat's David Malcolm has proposed a set of 49 patches that appear to be fairly robust and the most we have seen out of GCC static analysis capabilities to date.

Reports From KDE Development and Lakademy 2019

  • This week in KDE: touchy and scrolly and GTK-ey and iconey

    There are some neat things to report and I think you will enjoy them! In particular, I think folks are really going to like the improvements to GNOME/GTK app integration and two sets of touch- and scrolling-related improvements to Okular and the Kickoff Application Launcher, detailed below:

  • KDE Plasma 5.18 Bringing Better GTK/GNOME App Integration

    Aside from tightening the GNOME/GTK integration with KDE, this week there has also been some Okular improvements, better touch support for the Kickoff Application Launcher, deleting files within the Dolphin file manager now uses a separate worker thread for the I/O, Spectacle can now integrate with OBS Studio as a new screen recording option, and other enhancements.

  • Lakademy 2019

    I’m now writing this post in the last hours of the Lakademy 2019 (and my first one). It was really good to be “formally” introduced to the community and it’s people, and to be in this environment of people wanting to collaborate to something as incredible as KDE. Althought I wanted to contribute more to other projects, I did some changes and fixes in the rocs, wrote my Season of KDE project and got some tasks that can help with the future of rocs.

today's howtos