Language Selection

English French German Italian Portuguese Spanish

Microsoft and VMware Buying 'Leadership' in Linux

Filed under
Linux
Microsoft

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

Leftovers: IBM, MicroK8s and Devices

  • Broadridge Signs With IBM For Greater Cloud Capabilities

    Red Hat, which IBM acquired in 2018 is the most pervasive container solution on the planet today, said Schlesinger. “It allows us to containerize our apps and then allows us to run them on any cloud unchanged, whether our private cloud, Azure, AWS or IBM.”

  • IBM Power-based cloud instances available… from Google

    IBM and Google may be competitors in the cloud platform business, but that doesn't prevent them from working together. Google is partnering with IBM to offer "Power Systems as a service" on its Google Cloud platform. IBM’s Power processor line is the last man standing in the RISC/Unix war, surviving Sun Microsystems’ SPARC and HP’s PA-RISC. Along with mainframes it’s the last server hardware business IBM has, having divested its x86 server line in 2014. IBM already sells cloud instances of Power to its IBM Cloud customers, so this is just an expansion of existing offerings to a competitor with a considerable data center footprint. Google said that customers can run Power-based workloads on GCP on all of its operating systems save mainframes — AIX, IBM i, and Linux on IBM Power.

  • An intro to MicroK8s

    MicroK8s is the smallest, fastest multi-node Kubernetes. Single-package fully conformant lightweight Kubernetes that works on 42 flavours of Linux as well as Mac and Windows using Multipass. Perfect for: Developer workstations, IoT, Edge, CI/CD. Anyone who’s tried to work with Kubernetes knows the pain of having to deal with getting setup and running with the deployment. There are minimalist solutions in the market that reduce time-to-deployment and complexity but the light weight solutions come at the expense of critical extensibility and missing add-ons.

  • QNAP Launches Two Bay TS-251D NAS: Gemini Lake, HDMI, PCIe Expandability

    QNAP has announced its new budget-friendly two-bay NAS aimed at home users and supporting hardware-accelerated media playback. The TS-251D can store up to 32 TB of data using today’s hard drives and can be further expanded with a PCIe card to add SSD caching or other options. The QNAP TS-251D NAS is based on Intel’s dual-core Celeron J4005 processor with UHD 600 Graphics core and hardware decoding for multiple modern video codecs. The SoC is accompanied by 2 GB or 4 GB of DDR4 memory that can be expanded by the end user. The NAS has two bays that can support 2.5-inch or 3.5-inch HDDs or SSDs with a SATA 6 Gbps interface, though RAID modes are not supported. The unit has one GbE port, one HDMI 2.0 output, two USB 3.0 ports, three USB 2.0 connectors, and an IR sensor for an optional remote.

  • Coffee Lake module boasts extended temp operation

    Axiomtek’s Linux-friendly “CEM520” is a COM Express Basic Type 6 module with an Intel 8th Gen “Coffee Lake” Core or Xeon CPU, 4x SATA, PCIe x16, 8x PCIe x1, and support for -20 to 70°C and triple independent displays. Axiomtek has released the Intel 8th Gen based CEM520, which follows its earlier 6th Gen Skylake Core and Xeon E3 based CEM500 COM Express Basic Type 6 module. Other Coffee Lake driven Basic Type 6 modules include Avalue’s recent ESM-CFH.

Android Leftovers

Programming and Security Patches

  • A little hidden gem: QStringIterator

    The code above is broken.

    It falls into the same trap of endless other similar code: it doesn’t take into account that QString does not contain characters/code points, but rather UTF-16 code units.

    All operations on a QString (getting the length, splitting, iterating, etc.) always work in terms of UTF-16 code units, not code points. The reality is: QString is Unicode-aware only in some of its algorithms; certainly not in its storage.

    For instance, if a string contains simply the character “A” — that is, MATHEMATICAL BOLD CAPITAL A (U+1D400) — then its QString storage would actually contain 2 “characters” reported by size() (again, really, not characters in the sense of code points but two UTF-16 code units): 0xD835 and 0xDC00.

    The naïve iteration done above would then check whether those two code units are uppercase, and guess what, they’re not; and therefore conclude that the string is not uppercase, while instead it is. (Those two code units are “special” and used to encode a character outside the BMP; they’re called a surrogate pair. When taken alone, they’re invalid.)

  • How to get started with test-driven development

    I am often approached by software developers who are on board with the switch to test-driven development (TDD). They understand that describing expectations first and then writing code to meet those expectations is the best way to write software. And they agree that writing tests first does not introduce any overhead since they must write tests anyway. Still, they find themselves stuck, not being clear on what to test, when to test it, and how to test it. This article will answer those questions.

    [...]

    One way to the test custom-made car battery would be to hire a testing crew, ship the car with the battery to Portland, and then get the testing crew to drive the car from Portland to Seattle. If the car arrives in Seattle, you can confirm that, yes, the car battery functions as expected.

    Another way to test the custom-made car battery would be to install it in the car and see if the engine turns over. If the engine starts, you can confirm that, yes, the car battery functions as expected.

    Still another way would be to use a voltmeter and connect the positive (+) and the negative (-) terminals to see if the voltmeter registers voltage output in the range of 12.6 to 14.7 volts. If it does, you can confirm that, yes, the car battery functions as expected.

  • Perl Weekly Challenge 44: Only 100, Please, and Make it $200

    These are some answers to the Week 44 of the Perl Weekly Challenge organized by Mohammad S. Anwar.

    [...]

    For solving this task, we first use a recursive combine subroutine that generates all possible strings by inserting between the digits of the “123456789” string the + plus addition, the - subtraction operator, or the '' empty string (i.e. no operator). We then use the evaluate subroutine with each string to perform the various arithmetic operations and compute whether the total is 100.

    [...]

    You have only $1 left at the start of the week. You have been given an opportunity to make it $200. The rule is simple with every move you can either double what you have or add another $1. Write a script to help you get $200 with the smallest number of moves.

    Obviously, doubling your asset is a faster way to go high values than just adding 1. But, if you only double your asset, you get powers of 2, leading you to 128, and then you have to go all the way from 128 to 200, which is most probably not the fastest way to get to 200. In fact, if you first go to three (for example by adding 1 twice), then multiplying by 2 six times, you get to 192, which is much closer to 200. That’s 16 moves, which seems not bad at all. But there may be a yet faster way, let’s see.

  • Wine Debugger Improvements Are On The Way, Start Of LLVM LLDB Support

    With Wine 5.0 having released and the Git tree back open for feature work, we're quite looking forward to see what new material will land following this feature freeze that was in effect the past two months.

    One of the new patch series out by CodeWeavers' Rémi Bernon is improving Winedbg, the Wine debugger. Winedbg is used for debugging Windows applications and among its many debug capabilities is a proxy mode for interacting with the GNU Debugger (GDB). It's that GDB integration that is being improved upon while also starting to support LLVM's Debugger (LLDB).

  • Security updates for Monday

    Security updates have been issued by Debian (jsoup and slirp), Fedora (community-mysql, elog, fontforge, libuv, libvpx, mingw-podofo, nodejs, opensc, podofo, thunderbird-enigmail, transfig, and xfig), openSUSE (arc, libssh, and libvpx), Red Hat (git, java-1.8.0-openjdk, java-11-openjdk, python-reportlab, and sqlite), Slackware (thunderbird), and SUSE (java-1_8_0-openjdk, python, and samba). 

Programming and Security Patches

  • A little hidden gem: QStringIterator

    The code above is broken. It falls into the same trap of endless other similar code: it doesn’t take into account that QString does not contain characters/code points, but rather UTF-16 code units. All operations on a QString (getting the length, splitting, iterating, etc.) always work in terms of UTF-16 code units, not code points. The reality is: QString is Unicode-aware only in some of its algorithms; certainly not in its storage. For instance, if a string contains simply the character “