Language Selection

English French German Italian Portuguese Spanish

Proprietary: Apple's 'Image' Obsession, TurboTax Scam, Nokia's Demise and Microsoft Being Microsoft

Filed under
Software
  • Apple Won't Allow Movie Villains to Use iPhones
  • TurboTax’s Bid to Buy Free Tax Prep Competitor Might Violate Antitrust Law, Experts Say

    TurboTax, the long-standing dominant player in the tax preparation software market, has recently faced a nascent threat to its lucrative business: A company that specializes in pitching its users financial products has entered the fray with a completely free tax prep service.

    This week, TurboTax’s parent company, Intuit, unveiled a solution to this problem: spending $7.1 billion to buy the rapidly growing upstart, Credit Karma, before it could become a major competitor.

  • Nokia to Weigh Strategic Options as Profit Pressure Mounts [Ed: Microsoft killed Nokia]

    The December announcement that Nokia Chairman Risto Siilasmaa would step down stirred speculation about deeper changes at the company. The firm is in a fierce rivalry with Ericsson and China’s Huawei Technologies Co., as the three dominant players seek to benefit from phone carriers’ investments in next-generation mobile networks.

  • 'Developers have lost hope Microsoft will do the right thing'... Redmond urged to make WinUI cross-platform

    Microsoft's roadmap for developing Windows applications is opposed by some programmers who want to see a cross-platform solution, rather than just being Windows-only.

    Spanish developer José Nieto this week raised an issue on GitHub, stating that WinUI, which Microsoft is positioning as “the native UI platform for Windows 10,” should target not only Windows, but also Linux, Mac, iOS, Android and WebAssembly – this last so it would also run in a web browser.

    This would go against the normal pattern, where a native UI platform is able to take advantage of all the features of the operating system, fits in seamlessly with its look and feel, and is optimized for performance. Supporting cross-platform is a burden that requires compromises.

More in Tux Machines

Programming Leftovers

  • How C++ Modify Arrays in Function

    Arrays have been widely known among programmers and developers. We have been using arrays in almost every structural language to object-oriented language. As we know, arrays store more than one value in their indexes, and we also modify the arrays. So, in today’s article, we will be deliberating how to modify the arrays in functions of C++. Start by logging in from the Linux system and launching the terminal with the “Ctrl+Alt+T” shortcut.

  • Digging into Julia's package system [LWN.net]

    We recently looked at some of the changes and new features arriving with the upcoming version 1.7 release of the Julia programming language. The package system provided by the language makes it easier to explore new language versions, while still preserving multiple versions of various parts of the ecosystem. This flexible system takes care of dependency management, both for writing exploratory code in the REPL and for developing projects or libraries. [...] For a while I've thought that the Plots package needed a particular feature. This morning I cloned the project to my computer, added the feature, made a pull request on GitHub, made a change suggested by one of the maintainers, and got it approved. The entire elapsed time for this process was about five hours. In this section I'll describe two more package system commands that make it easier to hack on public packages. In the REPL, I entered package mode, then executed develop Plots. This command, which can be shortened to dev, clones the named package's Git repository to the user's machine in the directory .julia/dev/. Since Plots is a big package with many source files, this took about two minutes. This command also alters the environment so that using Plots imports from the version under development, rather than the official version. The command free Plots returns to using the official version. One can switch back and forth between these two incarnations of the package freely, as subsequent dev commands won't download anything, but simply switch back to the development version. I entered the development directory and created a branch for my feature with the git checkout ‑b command. The package manager doesn't require this; it's happy to let you mangle the master branch. But I had plans to ask that my feature be merged into master, and needed to create a branch for it. Packages under develop are loaded from the file tree, not from the Git repository. Then I wanted to edit the function to add my feature. But where is it? Plots has 37 files in its src tree. Because of multiple dispatch, each function can have dozens of methods associated with it, all with the same name. This makes finding a particular method in the source difficult to accomplish with simple grep commands.

  • A QEMU case study in grappling with software complexity [LWN.net]

    There are many barriers to producing software that is reliable and maintainable over the long term. One of those is software complexity. At the recently concluded 2021 KVM Forum, Paolo Bonzini explored this topic, using QEMU, the open source emulator and virtualizer, as a case study. Drawing on his experience as a maintainer of several QEMU subsystems, he made some concrete suggestions on how to defend against undesirable complexity. Bonzini used QEMU as a running example throughout the talk, hoping to make it easier for future contributors to modify QEMU. However, the lessons he shared are equally applicable to many other projects. Why is software complexity even a problem? For one, unsurprisingly, it leads to bugs of all kinds, including security flaws. Code review becomes harder for complex software; it also makes contributing to and maintaining the project more painful. Obviously, none of these are desirable. The question that Bonzini aimed to answer is "to what extent can we eliminate complexity?"; to do that he started by distinguishing between "essential" and "accidental" complexity. The notion of these two types of complexity originates from the classic 1987 Fred Brooks paper, "No Silver Bullet". Brooks himself is looking back to Aristotle's notion of essence and accident. Essential complexity, as Bonzini put it, is "a property of the problem that a software program is trying to solve". Accidental complexity, instead, is "a property of the program that is solving the problem at hand" (i.e. the difficulties are not inherent to the problem being solved). To explain the concepts further, he identified the problems that QEMU is solving, which constitute the essential complexity of QEMU.

  • Notes from the Git Contributors' Summit 2021, virtual, Oct 19/20
    
    we held our second all-virtual Summit over the past two days. It was the
    traditional unconference style meeting, with topics being proposed and
    voted on right before the introduction round. It was really good to see
    the human faces behind those email addresses.
    
    32 contributors participated, and we spanned the timezones from PST to
    IST. To make that possible, the event took place on two days, from
    1500-1900 UTC, which meant that the attendees from the US West coast had
    to get up really early, while it was past midnight in India at the end.
    
    I would like to thank all participants for accommodating the time, and in
    particular for creating such a friendly, collaborative atmosphere.
    
    A particular shout-out to Jonathan Nieder, Emily Shaffer and Derrick
    Stolee for taking notes. I am going to send out these notes in per-topic
    subthreads, replying to this mail.
    
    
  • Notes from the 2021 Git Contributors' Summit

    For those who are curious about where the development of Git is headed: Johannes Schindelin has posted an extensive set of notes from the just-concluded Git Contributors' Summit.

  • How to find a substring in Python

    Python is a versatile language having many built in methods and libraries. Strings and substrings are an important part of every programming language; python provides different methods to deal with strings and substrings, we check if a python string has a substring for a variety of reasons, but conditional statements are the most typical application. To find substrings in a string, python language provides many predefined methods.

  • How to find the average of a list in Python

    Average (Arithmetic mean) is a mathematical function which is calculated by adding the numeric values in the list and dividing them by the count of numbers of the list. Python provides several built-in mathematical functions; consequently it provides different ways to calculate the average of a list.

  • Ian Jackson: Going to work for the Tor Project

    I have accepted a job with the Tor Project. I joined XenSource to work on Xen in late 2007, as XenSource was being acquired by Citrix. So I have been at Citrix for about 14 years. I have really enjoyed working on Xen. There have been a variety of great people. I'm very proud of some of the things we built and achieved. I'm particularly proud of being part of a community that has provided the space for some of my excellent colleagues to really grow.

  • This Week In Rust: This Week in Rust 413
  • Oracle Releases GraalVM 21.3 With Java 17 Support, Other Enhancements

    Oracle has published its latest quarterly update to GraalVM, the open-source Java JVM/JDK implemented in Java that also supports other execution modes and programming languages from Python to R to Ruby. Given last month's release of Java 17 / OpenJDK 17, GraalVM 21.3 has added Java 17 support. Plus there are many other improvements to its various language front-ends and other components. Some of the GraalVM 21.3 highlights include: - Java 17 support with GraalVM builds based on Oracle Java 17 and OpenJDK 17. OpenJDK 11 also continues to be supported while OpenJDK 8 is no longer supported by GraalVM.

  • Security updates for Thursday

    Security updates have been issued by Debian (python-babel, squashfs-tools, and uwsgi), Fedora (gfbgraph and rust-coreos-installer), Mageia (aom, libslirp, redis, and vim), openSUSE (fetchmail, go1.16, go1.17, mbedtls, ncurses, python, squid, and ssh-audit), Red Hat (java-1.8.0-openjdk and java-11-openjdk), Scientific Linux (java-1.8.0-openjdk and java-11-openjdk), SUSE (fetchmail, git, go1.16, go1.17, ncurses, postgresql10, python, python36, and squid), and Ubuntu (linux, linux-aws, linux-aws-hwe, linux-azure, linux-azure-4.15, linux-dell300x, linux-gcp, linux-gcp-4.15, linux-hwe, linux-kvm, linux-raspi2, linux-snapdragon, linux, linux-bluefield, linux-gcp-5.4, linux-hwe-5.4, linux-kvm, linux-oem-5.10, and linux-oem-5.13).

Games: Escape Simulator, Steam Digital Tabletop Fest RPG Edition, and More

  • Get out together, go it alone or make your own rooms in Escape Simulator out now | GamingOnLinux

    Up for a challenge and love to problem solve? Team up with a friend in co-op or do it alone in Escape Simulator out now. Developed by Pine Studio, the same team that created Faraway: Puzzle Escape and SEUM: Speedrunners from Hell. Escape Simulator is a first-person escape room experience - designed with input from real-life escape room operators. Playing solo or via online co-op, players must puzzle their way through a quirky collection of interactive escape rooms, putting their wits (and teamwork) to the test.

  • Steam Digital Tabletop Fest RPG Edition is live with many discounts | GamingOnLinux

    Another big Steam event is underway with the Steam Digital Tabletop Fest RPG Edition. A chance for you to pick up some cheap games and more.

  • Space Crew: Legendary Edition is out now free for existing owners | GamingOnLinux

    Space Crew, the sequel to the very popular Bomber Crew from Runner Duck and publisher Curve Digital, gets renamed to Space Crew: Legendary Edition with a free expansion upgrade out now. Bringing with it a fair amount of fresh content, it sounds like a good time to go out and explore space. New dangers lurk in the dark corners though.

  • Paradox announced the Hearts of Iron IV: No Step Back expansion releases November 23 | GamingOnLinux

    Paradox sure are busy with recent announcements including the Stellaris: Aquatics Species Pack, Europa Universalis IV: Origins and now Hearts of Iron IV: No Step Back which releases November 23. "With new alternate history paths and game systems, this eagerly awaited add-on presents new challenges for fans of Paradox Interactive's best-selling grand strategy wargame. The centrepiece of No Step Back is a series of new National Focus Trees, giving players many new ways to imagine the course of World War II in Eastern Europe. Major nations have been entirely reworked to offer unique challenges and original histories."

Audio/Videos: Ubuntu Kylin, Hideo Kojima, and More

today's howtos

  • Check and better order your photos on Kodi with these changes | ITIGIC - TechStony

    When we hear the name of Kodi, the first thing that comes to mind is a complete multimedia center for playing videos and music . However, this program goes much further and allows us to manage and reproduce other content such as television channels or photos. Precisely in these same lines we want to focus on this last element that we comment on, that is, in the management and visualization of images. This is something that we can directly carry out from this program without the need for additional ones. With this, what we want to tell you is that, as with video or audio content, photographic files can also be managed from here. As with the rest of the file types, when we start working with Kodi the first thing we have to do is create our photo library or libraries. From there, the application itself will already know the disk locations where we have these contents stored for later management. This is something that is surely familiar to us if we have already used it with videos or audios. In fact, below, we are going to show you a series of changes that we recommend you do to improve the viewing experience of these own photos.

  • Install Nexus Repository Manager on Debian 11 - kifarunix.com

    This tutorial describes how to install Nexus repository manager on Debian 11. Nexus is the World’s #1 repository manager for build artifacts.

  • Sync WM wallpaper with LightDM on Linux Mint :: Rafael Cavalcanti

    Linux Mint uses LightDM GTK greeter for the login screen. It tries to show each user’s wallpaper, and it works well if you stick to the default Cinnamon desktop environment. However, I use a standalone window manager (dwm) and my wallpaper is set by Nitrogen. This breaks the feature, unless we take some steps.

  • How to get useful answers to your questions

    5 years ago I wrote a post called how to ask good questions. I still really like that post, but it’s missing a few of the tactics I use to get useful answers like “interrupt people when they’re going off on an irrelevant tangent”.

  • How To Install Yarn on AlmaLinux 8 - idroot

    In this tutorial, we will show you how to install Yarn on AlmaLinux 8. For those of you who didn’t know, YARN an acronym for Yet Another Resource Navigator is a fast, stable, and reliable Javascript package manager which is compatible with npm ( Node Package Manager). Yarn helps with the management of npm packages which includes installation, updating, configuration, and removal of packages. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of Yarn Package Manager on an AlmaLinux 8. You can follow the same instructions for CentOS and Rocky Linux.

  • How to Install Anbox to Run Android Apps in Ubuntu 20.04, Ubuntu 21.10 | UbuntuHandbook

    Want to run Android apps in Linux? Here’s how to do it using the Anbox container in Ubuntu 20.04 and Ubuntu 21.10. Anbox, Anbox in a box, is a free and open-source software that runs the full Android system in a container, abstracts hardware access and integrates core system services into a GNU/Linux system. There’s another solution “Waydroid” to do the similar things in Linux. It’s said to have better performance, though it requires Wayland session. For those stick to Xorg, here’s how to install and use Anbox.

  • How to Install Deno JavaScript Runtime on Ubuntu 20.04

    Deno is a lightweight JavaScript runtime that is both straightforward and safe. It provides a stable and comfortable development environment, allowing you to write TypeScript without transpilation. In addition, as an engine with V8 as the base, it has high compatibility with existing JavaScript code written with full support for ECMAScript standards. We'll show you how to install Deno on Ubuntu 20.04 and run a hello world script to test your installation in this article.

  • How to Install GCC Compiler Collection on CentOS 8 and Rocky Linux 8 – VITUX

    The GNU Compiler Collection (GCC) is a compiler software package with a collection of compilers for several languages. It is free and open-source software, which means that everyone has the opportunity to contribute or modify the application according to their own needs. GCC supports various programming languages, including C, C++, Objective-C, Fortran, Java and Ada. It also provides libraries such as libstdc++ for C++ and libgcj for Java. GCC uses a technology called “Recursive Descent Parsing”, which is very effective at finding errors in the code. GCC also provides a rich set of warnings that can be used to spot possible problems or bugs that may not have been detectable by the compiler itself. GCC performs some optimizations on both the intermediate code and the final machine code, but it does not perform as many optimizations as a commercial compiler would.

  • Bash Conditional Statements - OSTechNix

    In this guide, we will learn the usage of conditional statements in Bash scripting with examples. Decision-making is an important step in programming. There may be a situation where certain conditions have to be met and based upon that you have to write some logic. This is what a conditional statement does. The conditional statements allows you to write logic and take decisions. The concept that you read here will be the same for all the programming languages out there but with syntactic and implementation difference.

  • 7 handy tricks for using the Linux wget command

    Wget is a free utility to download files from the web. It gets data from the Internet and saves it to a file or displays it in your terminal. This is literally also what web browsers do, such as Firefox or Chromium, except by default, they render the information in a graphical window and usually require a user to be actively controlling them. The wget utility is designed to be non-interactive, meaning you can script or schedule wget to download files whether you're at your computer or not.