Google is testing community-sourced notes for search results

Google is experimenting with a feature that would allow people to add their own notes to search results for anyone to see. In theory, this would make results more helpful, providing a bit of human perspective — like feedback on recipe links or tips relating to travel queries — so people can better find the information that’s relevant to them. Notes are available now as an opt-in feature in Google’s Search Labs.

Search Labs is where Google tests new features that may or may not eventually make it to its flagship search engine. For those who are enrolled and have opted in for the Notes experiment, a Notes button will appear in Search and Discover, and tapping that will pull up all the insights other people have shared about a given article. You can also add your own, and dress it up with stickers, photos and, down the line (for US users only), AI-generated images.

A Note on a recipe from Google Search
Google

While community-sourced notes sound a bit like a recipe for disaster in an age of rampant misinformation and trolling, especially with the inclusion of AI imagery, Google says it will use “a combination of algorithmic protections and human moderation to make sure notes are as safe, helpful and relevant as possible, and to protect against harmful or abusive content.” The company is also looking into ways to let site owners add notes to their own pages.

It’s still just a test, and users will have the opportunity to submit feedback based on their experiences with Notes. The experimental feature has started rolling out for Search Labs on Android and iOS in the US and India.

Source: Google is testing community-sourced notes for search results

Code.org Presses Washington To Make Computer Science a High School Graduation Requirement – this should be everywhere globally

In July, Seattle-based and tech-backed nonprofit Code.org announced its 10th policy recommendation for all states “to require all students to take computer science (CS) to earn a high school diploma.” In August, Washington State Senator Lisa Wellman phoned-in her plans to introduce a bill to make computer science a Washington high school graduation requirement to the state’s Board of Education, indicating that the ChatGPT-sparked AI craze and Code.org had helped convince her of the need. Wellman, a former teacher who worked as a Programmer/System Analyst in the 80’s before becoming an Apple VP (Publishing) in the ’90s, also indicated that exposure to CS given to students in fifth grade could be sufficient to satisfy a HS CS requirement. In 2019, Wellman sponsored Microsoft-supported SB 5088 (Bill details), which required all Washington state public high schools to offer a CS class. Wellman also sponsored SB 5299 in 2021, which allows high school students to take a computer science elective in place of a third year math or science course (that may be required for college admission) to count towards graduation requirements.

And in October, Code.org CEO Hadi Partovi appeared before the Washington State Board of Education, driving home points Senator Wellman made in August with a deck containing slides calling for Washington to “require that all students take computer science to earn a high school diploma” and to “require computer science within all teacher certifications.” Like Wellman, Partovi suggested the CS high school requirement might be satisfied by middle school work (he alternatively suggested one year of foreign language could be dropped to accommodate a HS CS course). Partovi noted that Washington contained some of the biggest promoters of K-12 CS in Microsoft Philanthropies’ TEALS (TEALS founder Kevin Wang is a member of the Washington State Board of Education) and Code.org, as well some of the biggest funders of K-12 CS in Amazon and Microsoft — both which are $3,000,000+ Platinum Supporters of Code.org and have top execs on Code.org’s Board of Directors.

Source: Code.org Presses Washington To Make Computer Science a High School Graduation Requirement – Slashdot

Most kids have no clue how a computer works, let alone how to program one. It’s not difficult but an essential skill in today’s society.

radio-browser.info – a huge list of online radio streams + apps that use the list

What can radio-browser do for you?

I want to listen to radio
Please have a look at the list of apps that use this service by clicking on “Apps” in the header bar. You can also just use the search field on this webpage to find streams you want to listen to. Maybe you want a list of the most clicked streams of this service?

I want to add a stream to the database
Just click “New station” and add the stream. This service is completely automatic. More information in the FAQ. Streams CANNOT be changed at the moment by users.

I am the owner of a stream
You can add your stream. Streams can only be changed at the moment by the owner. Please follow the tutorial if you want to change your stream.

I am an app developer
Have a look at the API documentation at api.radio-browser.info

Source: radio-browser.info

antiX 23: Ultralightweight minimal Debian 12 desktop

The latest release of antiX is Linux how it used to be, in the good way. It’s not the friendliest, but it does everything – and, wow, it’s fast.

The “proudly antifascist” antiX project has released its latest edition, based on Debian 12. This release is codenamed Arditi del Popolo – “the People’s Daring Ones” – after a 1920s Italian antifascist group formed to oppose Mussolini’s regime. antiX is not, as the name might imply, opposed to the X window system: its main editions are graphical, with a choice of environments (although there is a super-minimal, text-only edition if that’s what you want).

Instead, antiX seems to be opposed to pretty much all of the modern trends in desktop Linux, the sorts of technologies that old-timers often consider bloated or inefficient. It doesn’t use systemd or elogind. It doesn’t have Wayland, or heavyweight cross-distro packaging tools such as Flatpak or Snap. It doesn’t even have any of the standard desktop environments. By antiX standards, we suspect that a “desktop environment” would count as bloat.

(If you prefer a familiar desktop, then antiX 23 is one of the parent distros of MX Linux 23, which offers both Xfce and KDE variants.)

Instead of an integrated desktop, antiX provides a broad selection of tools that provide all the functionality of a desktop: app launchers, status monitors, wireless networking, file managers, whatever you need. Not only is it present, but you get a selection of alternatives, and in many cases there are both graphical and shell-based tools available. Despite all this, the 64-bit edition with kernel 6.1 still idles at under 200MB of memory in use, which is startlingly good for a 2023 distro. The Reg standard recommendation for a lightweight desktop Linux is the Raspberry Pi Desktop, which is based on Debian 11 and LXDE. antiX is built from newer components, but even so it uses less memory and it’s faster too.

So in a way, it reminds The Reg FOSS Desk of the good aspects of Linux the way it was in the 20th century. The full edition comes with lots of applications, including a few of the standard big names, such as Firefox ESR and LibreOffice. Aside from them, though, most are less well-known alternatives, ones that are smaller, faster, and take less memory.

antiX 23 with IceWM and a couple of ROX Filer windows open. Looks like a desktop, works like a desktop – but faster

antiX 23 with IceWM and a couple of ROX Filer windows open. Looks like a desktop, works like a desktop – but faster

What’s missing are the bad parts. From modern Linux, the multiple huge, lumbering tools, all too often written in relatively sluggish interpreted programming languages, each of which pulls in a gigabyte of dependencies; and worse still, allegedly “local applications” which are actually web applets implemented in Javascript, so each tool drags an entire embedded web browser around with it. And from 1990s Linux, the rough edges: this is a modern distro, with modern hardware support, and the standard installation gives you a complete graphical environment with sound, networking and so on all pre-configured and working.

It stands in contrast to most other contemporary minimal distros such as Alpine Linux, Arch Linux or Void Linux, to pick some random examples. While these are all very capable distros, you must do a substantial amount of manual installation and configuration post-installation if you want a graphical desktop and the usual assortment of text editors, media players, communications tools, and so on. They also have their own idiosyncratic packaging tools etc. so to get started with customizing your new distro, you’ll probably have to spend some time on Google finding the commands and their syntax.

antiX is based on Debian, which, as we said when celebrating its 30th birthday recently, is the most widely used family of Linux distros there is – so it uses the familiar apt commands for managing software.

antiX 23 with JWM and the zzz file manager. It's different, but not very. We're not convinced it really needs both

antiX 23 with JWM and the zzz file manager. It’s different, but not very. We’re not convinced it really needs both

So it’s a cut-down Debian “Bookworm”, with some of the controversial bits – such as systemd and the fancy desktop environments – taken out. You get a choice of two init systems: the default sysvinit or the more modern runit. These aren’t installation options, as they are in Devuan, say: you must choose and download the appropriate installation image. There are both 32-bit and 64-bit x86 editions.

The full edition offers four window managers: IceWM, JWM, Fluxbox, and Herbsluftwm. IceWM offers a fairly rich Windows-like setup, with a taskbar, start menu, and some preconfigured system monitors and applets. JWM offers a more basic, no-frills version of the same layout. Fluxbox drops all that stuff for an even more minimalistic overlapping window manager. All include the Conky desktop status display. Finally, Herbsluftwm is an extremely minimal tiling window manager.

But the choices don’t end there. antiX also includes two different file managers, ROX Filer and zzz, both of which provide desktop icons and multi-folder-window style navigation. Optionally, ROX Filer has its own desktop panel too for an approximate simulation of RISC OS desktop, which means you get two different desktop panels.

There are also “minimal” login options, which don’t load a file manager. This means the (extremely basic) slimski login screen offers no less than 13 desktop options.

This is emblematic of the main issue with antiX: if anything, it offers too much choice. There are full, light, and minimal editions; sysvinit and runit editions; and i686 and x86-64 editions. There are over a dozen different combinations of window manager and file managers. The top-level app menu has 14 entries, with both a “Control Centre” and a “Settings” submenu. One of the menu entries is called “Applications” and contains the usual hierarchical list of apps, but some are also on the top level, and there’s a “Personal” menu where you can pin your favourites. This is accessible from the Start button analog in the two window managers which have one, and by right-clicking the desktop in all three which have a desktop. For all the main app categories – text editors, and web browsers, media players, and so on – there are multiple options, sometimes three or four of them.

Considering that this is one of the most lightweight Linux distros, it’s an embarrassment of riches. There are so many options, choices, themes, and settings, most of them with multiple ways to get at them, that even for an experienced user, it’s bewildering. There are even 16 different downloads on offer: Full, Base, Core, and Net, two init systems, and two CPU architectures.

The Fluxbox window manager, with its virtual desktop switcher control at the bottom, and ROX Session's panel at the top. With some tweaking, it could be very like RISC OS

The Fluxbox window manager, with its virtual desktop switcher control at the bottom, and ROX Session’s panel at the top. With some tweaking, it could be very like RISC OS

While with Alpine or Void, you can achieve an extremely lightweight, fully graphical desktop system, you must do this by installing and configuring most of it yourself. With antiX, to get to a setup you are happy with, you will still have to do quite a lot of custom configuration, but it will be removing tools that you don’t want. Of course, there are package management tools to help you do that: there’s Package Installer, and Program Remover, and Synaptic, and a menu-driven shell-based package manager, and of course apt – and apt-get and aptitude.

When you download, install, and boot antiX, it feels amazingly tiny and fast by modern standards. We have the older release 21 on our elderly Atom-based Sony Vaio P, and it makes that geriatric sub-netbook feel sprightly. Then you log in, start to browse the application menu, and find a Swiss army knife, where there’s a tool for everything. The trouble is, each blade unfolds to reveal another Swiss army knife. It’s almost fractal.

Back when Ubuntu first launched in 2004, it scored over Debian because someone had done the curation of programs for you. You got what was arguably the best completely FOSS desktop at the time, GNOME 2, and one best-of-breed app in each category of essential program – one web browser, one email client, one media player, and so on, all nicely set up and integrated into a harmonious whole. And when it started out, it was relatively slim and lightweight and fast. With Debian, you had to choose all this for yourself, which gives you great freedom, but requires considerable expertise, and the result might not feel very coherent and require quite some fine tuning. Now, both are pretty big, and these days Ubuntu offers a choice of 10 different desktop flavors, plus Server and Core and container images and more.

This is where MX Linux scores over this, its much smaller parent distro. The MX team does that curation for you. With antiX, you get the freedom to pick and choose from a profusion of tools, many of which you’ve probably never heard of and so wouldn’t know to install. But you will probably want to break out the hammer and chisel, and sculpt it down into something you find pleasing.

It’s a very interesting distro, if you know a bit of what you’re doing and want to learn and experiment and customize it. It’s also very lightweight in resource usage, and will run well on some ancient hardware that most modern distros won’t even attempt to boot on.

But we can’t help but feel that, as its name hints, it’s a bit anarchic. It feels designed by committee, where everyone got their choices included. Some judicious pruning and selection would really help buff it to a shine.

Source: antiX 23: Ultralightweight minimal Debian 12 • The Register

WhatsApp may finally let you add multiple accounts to one device

If you regularly use people who regularly use more than one WhatsApp account this new beta update is going to be of interest to you. The messaging app is reportedly working on multi-account support for its Android app, an update that would allow you to switch between profiles on the same device, WABetaInfo reports. The feature appears to work just like changing accounts on fellow Meta-owned app Instagram with a pop-up at the bottom of your app showing current accounts and the option to add new ones.

Any new accounts will be stored within your device and, of course, can be logged out of at any point. Multi-account support might be advantageous if you have different work and personal numbers or want to try out recent social media-centric WhatsApp features like Channels. This update lets you send broadcasts like photos and polls to followers, with WhatsApp planning to monetize it for creators in the future. Similarly, WhatsApp has reportedly been working on a username feature that would allow you to find people the same as Instagram or Twitter, without having their phone numbers.

Multi-account support also follows the iOS and Android release of companion mode, an update that allows you to use the same WhatsApp account on up to four phones. Previously, you could only be logged in on a single mobile phone along with your tablet and computer.

Source: WhatsApp may soon let you add multiple accounts to one device | Engadget

How to Have Windows Remember Their Size and Positions With WinSize2

We have been through multiple versions of Windows. Yet, Microsoft still refuses to give its OS one much-requested feature: the ability to remember each window’s desktop placement and dimensions.

Thankfully, the free WinSize2 utility can help with that. So, let’s see how you can use it to keep your desktop organized by “sticking” windows to their spot.

How to Download & Install WinSize2

Since it’s a third-party tool, it’s not included with Windows. Thus, to use it, you will have to download the app from the official WinSize2 site.

After you download and install it, you won’t see anything on your screen. The app will run in the background, hidden from sight, waiting for your input. As we’ll see next, its interface will be accessible from an icon in the window tray.

Before you access WinSize2’s interface, we should warn you that it looks ancient. That’s because, well, it is ancient.

WinSize2 was released over a decade ago, but that’s not a negative. On the contrary, it remains relevant many Windows versions later, the time since its release not affecting its usefulness.

[…]

How to Insta-Lock Window Positions

Point your mouse cursor at WinSize2’s icon, lingering in the Windows tray. You will see a hovering bubble with its version and active hotkey.

You can use this hotkey combination, by default mapped to Ctrl + Alt + Z, to save any window’s position and dimensions on any desktop spot.

[…]

With the window whose placement and dimensions you want to save visible, move it and resize it anywhere on your desktop, precisely as you’d like it to show up in the future.

With the window active and selected, to create an entry for it and save its spot and size, press WinSize2’s hotkey button combination (by default Ctrl + Alt + Z).

Almost immediately, a message will appear hovering next to your mouse cursor, informing you about the action’s success.

That was it! If you try closing and reopening the window, you will see it reappear on the same spot with the exact dimensions. Try moving it around and closing it. When it shows up again, instead of popping up on a random location on your desktop, WinSize2 will detect its appearance, and move and resize it wherever you “pinned” it.

[…]

 

Source: How to Have Windows Remember Their Size and Positions With WinSize2

How AI Bots Code: Comparing Bing, Claude+, Co-Pilot, GPT-4 and Bard

[…]

In this article, we will compare four of the most advanced AI bots: GPT-4, Bing, Claude+, Bard, and GitHub Co-Pilot. We will examine how they work, their strengths and weaknesses, and how they compare to each other.

Testing the AI Bots for Coding

Before we dive into comparing these four AI bots, it’s essential to understand what an AI bot for coding is and how it works. An AI bot for coding is an artificial intelligence program that can automatically generate code for a specific task. These bots use natural language processing and machine learning algorithms to analyze human-written code and generate new code based on that analysis.

To start off we are going to test the AI on a hard Leetcode question, after all, we want to be able to solve complex coding problems. We also wanted to test it on a less well-known question. For our experiment, we will be testing Leetcode 214. Shortest Palindrome.

[…]

GPT-4 is highly versatile in generating code for various programming languages and applications. Some of the caveats are that it takes much longer to get a response. API usage is also a lot more expensive and costs could ramp up quickly. Overall it got the answer right and passed the test.

[…]

[Bing] The submission passed all the tests. It beat 47% of submissions on runtime and 37% on memory. This code looks a lot simpler than what GPT-4 generated. It beat GPT-4 on memory and it used less code! Bing seems to have the most efficient code so far, however, it gave a very short explanation of how it solved it. Nonetheless, best so far.

[…]

[Claude+] The code does not pass the submission test. Only 1/121 of the test passed. Ouch! This one seemed promising but it looks like Claude is not that well suited for programming.

[…]

[Bard] So to start off I had to manually insert the “self” arg in the function since Bard didn’t include it. From the result of the test, Bard’s code did not pass the submission test. Passing only 2/121 test cases. An unfortunate result, but it’s safe to say for now Bard isn’t much of a coding expert.

[…]

[Github CodePilot] This passes all the tests. It scored better than 30% of submissions on runtime and 37% on memory.

It’s fun, you can see the coding examples (with and without comments) that were output by each AI in the link

Source: How AI Bots Code: Comparing Bing, Claude+, Co-Pilot, GPT-4 and Bard | HackerNoon

Why Video Editors are Switching to DaVinci Resolve in Droves

Video editors are flocking to DaVinci Resolve in droves, marking a major paradigm shift in the editing landscape that we haven’t seen since the dreadful launch of Final Cut Pro X drove users to Adobe Premiere Pro.

[…]

More a conglomeration of tools than a single program, Resolve came through some acquisitions Blackmagic made when creating a broadcast and cine ecosystem.

Comprised of an editing tool, a color correction tool, an audio editor, and an effects tool, Resolve is essentially multiple programs that all integrate so seamlessly that they function as a single application.

The color correction tools in Resolve are particularly well regarded, and many films and shows were color graded in Resolve even if they were edited in another program. The same applies to Fairlight, the audio component of Resolve, the go-tool tool for many of Hollywood’s most prominent audio engineers.

In 2011, Blackmagic decided to release Resolve as both a paid and a free version. The free version had fewer features than the full version (as it still does), but instead of being crippled, the free version works well enough for most users, with the paid version feeling like a feature upgrade.

[…]

There are a few key differences between the free and Studio version. Studio supports more video formats (and completes 4Kp60 workflows), uses the GPU more efficiently, has more effects, and fully supports the product’s audio, color, and effects tools.

It’s not the price alone that has caused a mass adoption of the program, though. It’s the company’s approach to updates as well.

Features

Blackmagic has never hesitated to put a feature into Resolve. The program has many options in contextual menus, user interface choices, menu items, keyboard shortcuts, and more.

There is so much here that it can be overwhelming. Finding the tool I want in a contextual menu is often the most challenging part of my editing. But if there’s something that can be done in video editing, a button, icon, or menu will probably perform the task.

Blackmagic also releases dot-versions (like 18.1) that sometimes add enough features that it acts like a full number upgrade would if it were released by Adobe or Apple. Some of the features in Resolve 18.1, for example, unleashed the wave of recent switchers.

Two significant features are buried in a list of around 20 new features in that update. The first is AI-driven Magic Mask tools that make masking people or objects a matter of drawing a line. The other prominent feature is voice isolation, another AI-based feature that removes noises from dialog tracks.

Magic Mask alone is worth the price of admission. This tool makes it easy to color-correct significant portions of a shot without doing endless mask adjustments, and it also allows for instant alpha channel creation, allowing for items like text, graphics or even people to be superimposed on the same scene without needing a green screen.

In noisy environments, this tool performs amazingly. I’ve used it to eliminate leaf blowers and lawnmowers in the background of outdoor shoots, and I’ve seen it used to cancel out hair dryers and drill guns in sample videos on some channels.

[…]

The Speed Editor costs $295 and comes with a Resolve Studio license, making it worth the cost even if you barely use it.

The Blackmagic Speed Edit deck is an excellent piece of hardware, though many functions are out of my league. Buttons are arranged where a seasoned editor would. Cinematographers, especially those working on multi-cam shoots, will benefit from this editing.

Or at least that’s why my seasoned editor friend tells me. The unit feels odd in my hands because I don’t use most of the keys. One central portion of the Speed Editor is dedicated to switching between up to nine cameras, but the device has encouraged me to do more multi-cam shoots since the keyboard makes editing smooth.

The keyboard, which connects via USB-C cable or Bluetooth, is labeled with the essential editing functions, which is very helpful for new Resolve users. Instead of memorizing the location of essential keys on a standard keyboard, new users can look at the Speed Editor and focus on learning editing workflow instead of shortcuts.

On the other hand, many seasoned editors already know all the keyboard shortcuts on a standard keyboard and have made their custom keyboard configurations to support their editing style. Even though I’m a new Resolve editor, many tasks are performed the same as Final Cut, so I moved toward the regular keyboard shortcuts.

The Speed Editor is an excellent example of the complete Blackmagic ecosystem, which is why the free program and Studio are low-cost.

[…]

: Just after finishing this article, Blackmagic announced a new version of Resolve, which adds several compelling features including transcriptions, subtitles, and the ability to edit clips by selecting text.

[…]

Source: Why Video Editors are Switching to DaVinci Resolve in Droves | PetaPixel

Undercutting Microsoft, Amazon Offers Free Access to Its AI Coding Assistant ‘CodeWhisperer’

Amazon is making its AI-powered coding assistant CodeWhisperer free for individual developers, reports the Verge, “undercutting the $10 per month pricing of its Microsoft-made rival.” Amazon launched CodeWhisperer as a preview last year, which developers can use within various integrated development environments (IDEs), like Visual Studio Code, to generate lines of code based on a text-based prompt….

CodeWhisperer automatically filters out any code suggestions that are potentially biased or unfair and flags any code that’s similar to open-source training data. It also comes with security scanning features that can identify vulnerabilities within a developer’s code, while providing suggestions to help close any security gaps it uncovers. CodeWhisperer now supports several languages, including Python, Java, JavaScript, TypeScript, and C#, including Go, Rust, PHP, Ruby, Kotlin, C, C++, Shell scripting, SQL, and Scala.
Here’s how Amazon’s senior developer advocate pitched the usefulness of their “real-time AI coding companion”: Helping to keep developers in their flow is increasingly important as, facing increasing time pressure to get their work done, developers are often forced to break that flow to turn to an internet search, sites such as StackOverflow, or their colleagues for help in completing tasks. While this can help them obtain the starter code they need, it’s disruptive as they’ve had to leave their IDE environment to search or ask questions in a forum or find and ask a colleague — further adding to the disruption. Instead, CodeWhisperer meets developers where they are most productive, providing recommendations in real time as they write code or comments in their IDE. During the preview we ran a productivity challenge, and participants who used CodeWhisperer were 27% more likely to complete tasks successfully and did so an average of 57% faster than those who didn’t use CodeWhisperer….

It provides additional data for suggestions — for example, the repository URL and license — when code similar to training data is generated, helping lower the risk of using the code and enabling developers to reuse it with confidence.

Source: Undercutting Microsoft, Amazon Offers Free Access to Its AI Coding Assistant ‘CodeWhisperer’ – Slashdot

Windows 11 KB5025310 changes how the Print Screen key works

Microsoft has been trying to make changes to almost every feature we use on Windows, from the taskbar to notifications. With Windows 11 KB5025310 available in the Beta channel, Microsoft is changing how the Print Screen key works, i.e. its default behaviour.

If your laptop has a dedicated Print Screen key, you can press it to instantly take a screenshot of the screen and save it to the clipboard. You can paste the screenshot into any app like Paint and do whatever you want to. This has always been the default behaviour of the Print Screen key (PrtSc).

KB5025310 is changing the default behaviour for everyone. After installing this or a newer update, your Print Screen key will open the new Snipping Tool. For those unaware, Windows 11’s new Snipping Tool replaces the legacy Snipping Tool and Snip & Sketch app and combines the best features.

Windows 11 screen recording tool
Image Courtesy: Microsoft | Snipping Tool with screen recorder

This means Windows 11 won’t save your screenshots to the clipboard. Instead, it will open Snipping Tool, so you can change the screenshot and save it later. Thankfully, it is possible to revert to the original behaviour.

To restore the classic Print Screen key, head to Settings > Accessibility > Keyboard, and change the setting to how you want.

[…]

Source: Windows 11 KB5025310 changes how the Print Screen key works

Wolverine Gives Your Python Scripts The Ability To Self-Heal bugs using chatGPT

combined Python and a hefty dose of of AI for a fascinating proof of concept: self-healing Python scripts. He shows things working in a video, embedded below the break, but we’ll also describe what happens right here.

The demo Python script is a simple calculator that works from the command line, and [BioBootloader] introduces a few bugs to it. He misspells a variable used as a return value, and deletes the subtract_numbers(a, b) function entirely. Running this script by itself simply crashes, but using Wolverine on it has a very different outcome.In a short time, error messages are analyzed, changes proposed, those same changes applied, and the script re-run.

Wolverine is a wrapper that runs the buggy script, captures any error messages, then sends those errors to GPT-4 to ask it what it thinks went wrong with the code. In the demo, GPT-4 correctly identifies the two bugs (even though only one of them directly led to the crash) but that’s not all! Wolverine actually applies the proposed changes to the buggy script, and re-runs it. This time around there is still an error… because GPT-4’s previous changes included an out of scope return statement. No problem, because Wolverine once again consults with GPT-4, creates and formats a change, applies it, and re-runs the modified script. This time the script runs successfully and Wolverine’s work is done.

LLMs (Large Language Models) like GPT-4 are “programmed” in natural language, and these instructions are referred to as prompts. A large chunk of what Wolverine does is thanks to a carefully-written prompt, and you can read it here to gain some insight into the process. Don’t forget to watch the video demonstration just below if you want to see it all in action.

While AI coding capabilities definitely have their limitations, some of the questions it raises are becoming more urgent. Heck, consider that GPT-4 is barely even four weeks old at this writing.

https://platform.twitter.com/embed/Tweet.html?creatorScreenName=hackaday&dnt=true&embedId=twitter-widget-0&features=eyJ0ZndfdGltZWxpbmVfbGlzdCI6eyJidWNrZXQiOltdLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2ZvbGxvd2VyX2NvdW50X3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9iYWNrZW5kIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19yZWZzcmNfc2Vzc2lvbiI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfbWl4ZWRfbWVkaWFfMTU4OTciOnsiYnVja2V0IjoidHJlYXRtZW50IiwidmVyc2lvbiI6bnVsbH0sInRmd19leHBlcmltZW50c19jb29raWVfZXhwaXJhdGlvbiI6eyJidWNrZXQiOjEyMDk2MDAsInZlcnNpb24iOm51bGx9LCJ0ZndfZHVwbGljYXRlX3NjcmliZXNfdG9fc2V0dGluZ3MiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3ZpZGVvX2hsc19keW5hbWljX21hbmlmZXN0c18xNTA4MiI6eyJidWNrZXQiOiJ0cnVlX2JpdHJhdGUiLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2xlZ2FjeV90aW1lbGluZV9zdW5zZXQiOnsiYnVja2V0Ijp0cnVlLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3R3ZWV0X2VkaXRfZnJvbnRlbmQiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfX0%3D&frame=false&hideCard=false&hideThread=false&id=1636880208304431104&lang=en&origin=https%3A%2F%2Fhackaday.com%2F2023%2F04%2F09%2Fwolverine-gives-your-python-scripts-the-ability-to-self-heal%2F&sessionId=de39ae5f7a5963d32185e4edfa3b5d86374d2d37&siteScreenName=hackaday&theme=light&widgetsVersion=aaf4084522e3a%3A1674595607486&width=550px

https://platform.twitter.com/embed/Tweet.html?creatorScreenName=hackaday&dnt=true&embedId=twitter-widget-0&features=eyJ0ZndfdGltZWxpbmVfbGlzdCI6eyJidWNrZXQiOltdLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2ZvbGxvd2VyX2NvdW50X3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9iYWNrZW5kIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19yZWZzcmNfc2Vzc2lvbiI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfbWl4ZWRfbWVkaWFfMTU4OTciOnsiYnVja2V0IjoidHJlYXRtZW50IiwidmVyc2lvbiI6bnVsbH0sInRmd19leHBlcmltZW50c19jb29raWVfZXhwaXJhdGlvbiI6eyJidWNrZXQiOjEyMDk2MDAsInZlcnNpb24iOm51bGx9LCJ0ZndfZHVwbGljYXRlX3NjcmliZXNfdG9fc2V0dGluZ3MiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3ZpZGVvX2hsc19keW5hbWljX21hbmlmZXN0c18xNTA4MiI6eyJidWNrZXQiOiJ0cnVlX2JpdHJhdGUiLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2xlZ2FjeV90aW1lbGluZV9zdW5zZXQiOnsiYnVja2V0Ijp0cnVlLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3R3ZWV0X2VkaXRfZnJvbnRlbmQiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfX0%3D&frame=false&hideCard=false&hideThread=false&id=1636880208304431104&lang=en&origin=https%3A%2F%2Fhackaday.com%2F2023%2F04%2F09%2Fwolverine-gives-your-python-scripts-the-ability-to-self-heal%2F&sessionId=de39ae5f7a5963d32185e4edfa3b5d86374d2d37&siteScreenName=hackaday&theme=light&widgetsVersion=aaf4084522e3a%3A1674595607486&width=550px

https://hackaday.com/2023/04/09/wolverine-gives-your-python-scripts-the-ability-to-self-heal/

Tired Of Web Scraping? Make The AI Do It

a novel approach to the problem of scraping web content in a structured way without needing to write the kind of page-specific code web scrapers usually have to deal with. How? Just enlist the help of a natural language AI. Scrapeghost relies on OpenAI’s GPT API to parse a web page’s content, pull out and classify any salient bits, and format it in a useful way.

What makes Scrapeghost different is how data gets organized. For example, when instantiating scrapeghost one defines the data one wishes to extract. For example:

from scrapeghost importSchemaScraper

scrape_legislators = SchemaScraper(

schema={

"name": "string",

"url": "url",

"district": "string",

"party": "string",

"photo_url": "url",

"offices": [{"name": "string", "address": "string", "phone": "string"}],

}

)

The kicker is that this format is entirely up to you! The GPT models are very, very good at processing natural language, and scrapeghost uses GPT to process the scraped data and find (using the example above) whatever looks like a name, district, party, photo, and office address and format it exactly as requested.

It’s an experimental tool and you’ll need an API key from OpenAI to use it, but it has useful features and is certainly a novel approach. There’s a tutorial and even a command-line interface, so check it out.

https://hackaday.com/2023/04/09/tired-of-web-scraping-make-the-ai-do-it/

Integrating OpenAI’s ChatGPT and GPT-4: Socket’s story with code vulnerability scanning (it works very well)

Several months ago, Socket, which makes a freemium security scanner for JavaScript and Python projects, connected OpenAI’s ChatGPT model (and more recently its GPT-4 model) to its internal threat feed.

The results, according to CEO Feross Aboukhadijeh, were surprisingly good. “It worked way better than expected,” he told The Register in an email. “Now I’m sitting on a couple hundred vulnerabilities and malware packages and we’re rushing to report them as quick as we can.”

Socket’s scanner was designed to detect supply chain attacks. Available as a GitHub app or a command line tool, it scans JavaScript and Python projects in an effort to determine whether any of the many packages that may have been imported from the npm or PyPI registries contain malicious code.

Aboukhadijeh said Socket has confirmed 227 vulnerabilities, all using ChatGPT. The vulnerabilities fall into different categories and don’t share common characteristics.

The Register was provided with numerous examples of published packages that exhibited malicious behavior or unsafe practices, including: information exfiltration, SQL injection, hardcoded credentials, potential privilege escalation, and backdoors.

We were asked not to share several examples as they have yet to be removed, but here’s one that has already been dealt with.

  1. mathjs-min “Socket reported this to npm and it has been removed,” said Aboukhadijeh. “This was a pretty nasty one.”
    1. AI analysis: “The script contains a discord token grabber function which is a serious security risk. It steals user tokens and sends them to an external server. This is malicious behavior.”
    2. https://socket.dev/npm/package/mathjs-min/files/11.7.2/lib/cjs/plain/number/arithmetic.js#L28

“There are some interesting effects as well, such as things that a human might be persuaded of but the AI is marking as a risk,” Aboukhadijeh added.

“These decisions are somewhat subjective, but the AI is not dissuaded by comments claiming that a dangerous piece of code is not malicious in nature. The AI even includes a humorous comment indicating that it doesn’t trust the inline comment.”

  1. Example trello-enterprise
    1. AI analysis: “The script collects information like hostname, username, home directory, and current working directory and sends it to a remote server. While the author claims it is for bug bounty purposes, this behavior can still pose a privacy risk. The script also contains a blocking operation that can cause performance issues or unresponsiveness.”
    2. https://socket.dev/npm/package/trello-enterprises/files/1000.1000.1000/a.js

Aboukhadijeh explained that the software packages at these registries are vast and it’s difficult to craft rules that thoroughly plumb the nuances of every file, script, and bit of configuration data. Rules tend to be fragile and often produce too much detail or miss things a savvy human reviewer would catch.

Applying human analysis to the entire corpus of a package registry (~1.3 million for npm and ~450,000 for PyPI) just isn’t feasible, but machine learning models can pick up some of the slack by helping human reviewers focus on the more dubious code modules.

“Socket is analyzing every npm and PyPI package with AI-based source code analysis using ChatGPT,” said Aboukhadijeh.

“When it finds something problematic in a package, we flag it for review and ask ChatGPT to briefly explain its findings. Like all AI-based tooling, this may produce some false positives, and we are not enabling this as a blocking issue until we gather more feedback on the feature.”

Aboukhadijeh provided The Register with a sample report from its ChatGPT helper that identifies risky, though not conclusively malicious behavior. In this instance, the machine learning model offered this assessment, “This script collects sensitive information about the user’s system, including username, hostname, DNS servers, and package information, and sends it to an external server.”

Screenshot of ChatGPT report for Socket security scanner

Screenshot of ChatGPT report for Socket security scanner – Click to enlarge

Socket ChatGPT advisory screenshot

What a ChatGPT-based Socket advisory looks like … Click to enlarge

According to Aboukhadijeh, Socket was designed to help developers make informed decisions about risk in a way that doesn’t interfere with their work. So raising the alarm about every install script – a common attack vector – can create too much noise. Analysis of these scripts using a large language model dials the alarm bell down and helps developers recognize real problems. And these models are becoming more capable.

[…]

Source: Integrating OpenAI’s ChatGPT and GPT-4: Socket’s story • The Register

Apple acquired a startup using AI to compress videos

Apple has quietly acquired a Mountain View-based startup, WaveOne, that was developing AI algorithms for compressing video.

Apple wouldn’t confirm the sale when asked for comment. But WaveOne’s website was shut down around January, and several former employees, including one of WaveOne’s co-founders, now work within Apple’s various machine learning groups.

WaveOne’s former head of sales and business development, Bob Stankosh, announced the sale in a LinkedIn post published a month ago.

“After almost two years at WaveOne, last week we finalized the sale of the company to Apple,” Stankosh wrote. “We started our journey at WaveOne, realizing that machine learning and deep learning video technology could potentially change the world. Apple saw this potential and took the opportunity to add it to their technology portfolio.”

[…]

WaveOne’s main innovation was a “content-aware” video compression and decompression algorithm that could run on the AI accelerators built into many phones and an increasing number of PCs. Leveraging AI-powered scene and object detection, the startup’s technology could essentially “understand” a video frame, allowing it to, for example, prioritize faces at the expense of other elements within a scene to save bandwidth.

WaveOne also claimed that its video compression tech was robust to sudden disruptions in connectivity. That is to say, it could make a “best guess” based on whatever bits it had available, so when bandwidth was suddenly restricted, the video wouldn’t freeze; it’d just show less detail for the duration.

WaveOne claimed its approach, which was hardware-agnostic, could reduce the size of video files by as much as half, with better gains in more complex scenes.

[…]

Even minor improvements in video compression could save on bandwidth costs, or enable services like Apple TV+ to deliver higher resolutions and framerates depending on the type of content being streamed.

YouTube’s already doing this. Last year, Alphabet’s DeepMind adapted a machine learning algorithm originally developed to play board games to the problem of compressing YouTube videos, leading to a 4% reduction in the amount of data the video-sharing service needs to stream to users.

[…]

Source: Apple acquired a startup using AI to compress videos | TechCrunch

GitHub Copilot now integrates way better into Visual Studio (?=.* Code)

[…] Introduced last summer after a year-long technical trial, Copilot offers coding suggestions, though not always good ones, to developers using GitHub with supported text editors and IDEs, like Visual Studio Code.

As of last month, according to GitHub, Copilot had a hand in 46 percent of the code being created on Microsoft’s cloud repo depot and had helped developers program up to 55 percent faster.

On Wednesday, Copilot – an AI “pair programmer”, as GitHub puts it – will be ready to converse with developers ChatGPT-style in either Visual Studio Code or Visual Studio. Prompt-and-response conversations take place in an IDE sidebar chat window, as opposed to the autocompletion responses that get generated from comment-based queries in a source file.

“Copilot chat is not just a chat window,” said Dohmke. “It recognizes what code a developer has typed, what error messages are shown, and it’s deeply embedded into the IDE.”

A developer thus can highlight, say, a regex in a source file and invite Copilot to explain what the obtuse pattern matching expression does. Copilot can also be asked to generate tests, to analyze and debug, to propose a fix, or to attempt a custom task. The model can even add comments that explain source code and can clean files up like a linter.

More interesting still, Copilot can be addressed by voice. Using spoken prompts, the assistive software can produce (or reproduce) code and run it on demand. It’s a worthy accessibility option at least.

[…]

When making a pull request under the watchful eye of AI, developers can expect to find GitHub’s model will fill out tags that serve to provide additional information about what’s going on. It then falls to developers to accept or revise the suggestions.

[…]

What’s more, Copilot’s ambit has been extended to documentation. Starting with documentation for React, Azure Docs, and MDN, developers can pose questions and get AI-generated answers through a chat interface. In time, according to Dohmke, the ability to interact with documentation via a chat interface will be extended to any organization’s repositories and internal documentation.

[…]

GitHub has even helped Copilot colonize the command line, with GitHub Copilot CLI. If you’ve ever forgotten an obscure command line incantation or command flag, Copilot has you covered

[…]

Source: GitHub Copilot has some new tricks up its sleeve • The Register

RGB on your PC – OEM bloatware alternatives tested (with an ASUS)

RGB on your PC is cool, it’s beautiful and can be quite nuts but it’s also quite complex and trying to get it to do what you want it to isn’t always easy. This article is the result of many many reboots and much Googling.

I set up a PC with 2×3 Lian Li Unifan SL 120 (top and side), 2 Lian Li Strimmer cables (an ATX and a PCIe), a NZXT Kraken Z73 CPU cooler (with LED screen, but cooled by the Lian Li Unifan SL 120 on the side, not the NZXT fans that came with it), 2 RGB DDR5 DRAMs, an ASUS ROG Geforce 2070 RTX Super, a Asus ROG Strix G690-F Gaming wifi and a Corsair K95 RGB Keyboard.

Happy rainbow colours! It seems to default to this every time I change stuff

It’s no mean feat doing all the wiring on the fan controllers nowadays, and the instructions don’t make it much easier. Here is the wiring setup for this (excluding the keyboard)

The problem is that all of this hardware comes with it’s own bloated, janky software in order to get it to do stuff.

ASUS: Armory Crate / ASUS AURA

This thing takes up loads of memory and breaks often.

I decided to get rid of it once it had problems updating my drivers. You can still download Aura seperately (although there is a warning it will no longer be updated). To uninstall Armory Crate you can’t just uninstall everything from Add or Remove Programs, you need the uninstall tool, so it will also get rid of the scheduled tasks and a directory the windows uninstallers leave behind.

Once you install Aura seperately, it still takes an inane amount of processes, but you don’t actually need to run Aura to change the RGBs on the VGA and DRAM. Oddly enough not the motherboard itself though.

Just running AURA, not Armory Crate

You also can use other programs. Theoretically. That’s what the rest of this article is about. But in the end, I used Aura.

If you read on, it may be the case that I can’t get a lot of the other stuff to work because I don’t have Armory Crate installed. Nothing will work if I don’t have Aura installed, so I may as well use that.

Note: if you want to follow your driver updates, there’s a thread on the Republic of Gamers website that follows a whole load of them.

Problem I never solved: getting the Motherboard itself to show under Aura.

Corsiar: iCUE

Yup, this takes up memory, works pretty well, keeps updating for no apparent reason and I have to slide the switch left and right to get it to detect as a USB device quite often so the lighting works again. In terms of interface it’s quite easy to use.

Woohoo! all these processes for keyboard lighting!

It detects the motherboard and can monitor the motherboard, but can’t control the lighting on it. Once upon a time it did. Maybe this is because I’m not running the whole Armory Crate thing any more.

No idea.

Note: if you do put everything on in the dashboard, memory usage goes up to 500 MB

In fact, just having the iCUE screen open uses up ~200MB of memory.

It’s the most user friendly way of doing keyboard lighting effects though, so I keep it.

OpenRGB

This is the open source alternative that works on Windows and Linux. Yay! Gitlab page is here

When I first started running it, it told me I needed to run it as an administrator to get a driver working. I ran it and it hung my computer at device detection. Later on it started rebooting it. After installing the underlying Asus Aura services running it ran for me. [Note: the following is for the standard 0.8 build: Once. It reboots my PC after device detection now. Lots of people on Reddit have it working, maybe it needs the Aura Crate software. I have opened an issue, hopefully it will get fixed? According to a Reddit user, this could be because “If you have armoury crate installed, OpenRGB cannot detect your motherboard, if your ram is ddr5 [note: which mine is], you’ll gonna have to wait or download the latest pipeline version”]

OK, so the Pipeline build does work and even detects my motherboard! Unfortunately it doesn’t write the setting to the motherboard, so after a reboot it goes back to rainbow. After my second attempt the setting seems to have stuck and survived the reboot. However it still hangs the computer on a reboot (everything turns off except the PC itself) and It can take quite some time to open the interface. It also sometimes does and sometimes doesn’t detect the DRAM modules. Issue opened here

Even with the interace open, the memory footprint is tiny!

Note that it saves the settings to C:\Users\razor\AppData\Roaming\OpenRGB an you can find the logs there too.

SignalRGB

This looks quite good at first glance – it detected my devices and was able to apply effects to all of them at once. Awesome! Unfortunately it has a huge memory footprint (around 600MB!) and doesn’t write the settings to the devices, so if after a reboot you don’t run SignalRGB the hardware won’t show any lighting at all, they will all be turned off.

It comes in a free tier with mostly anything you need and a paid subscription tier, which costs $4,- per month = $48,- per year! Considering what this does and the price of most of these kind of one trick pony utils (one time fee ~ $20) this is incredibly high. On Reddit the developers are aggressive in saying they need to keep developing in order to support new hardware and if you think they are charging a lot of money for this you are nuts. Also, in order to download the free effects you need an account with them.

So nope, not using this.

JackNet RGBSync

Another Open Source RGB software, I got it to detect my keyboard and not much else. Development has stopped in 2020. The UI leaves a lot to be desired.

Gigabyte RGB Fusion

Googling alternatives to Aura, you will run into this one. It’s not compatible with my rig and doesn’t detect anything. Not really too surprising, considering my stuff is all their competitor, Asus.

L-Connect 2 and 3

For the Lian Li fans and the Strimmer cables I use L-Connect 2. It has a setting saying it should take over the motherboard setting, but this has stopped working. Maybe I need Armory Crate. It’s a bit clunky (to change settings you need to select which fans in the array you want to send an effect to and it always shows 4 arrays of 4 fans, which I don’t actually have), but it writes settings to the devices so you don’t need it running in the background.

L-Connect 3 runs extremely slowly. It’s not hung, it’s just incredibly slow. Don’t know why, but could be Armory Crate related.

NZXT CAM

This you need in the background or the LED screen on the Kraken will show the default: CPU temperature only. It takes a very long time to start up. It also requires quite a bit of memory to run, which is pretty bizarre if all you want to do is show a few animated GIFs on your CPU cooler in carousel mode

Interface up on the screen
Running in the background

So, it’s shit but you really really need it if you want the display on the CPU cooler to work.

Fan Control

So not really RGB, but related, is Fan Control for Windows

Also G-helper works for fan control and gpu switching

Conclusion

None of the alternatives really works very well for me. None of them can control the Lian-Li strimmer devices and most of them only control a few of them or have prohibitive licenses attached for what they are. What is more, in order to use the alternatives, you still need to install the ASUS motherboard driver, which is exactly what I had been hoping to avoid. OpenRGB shows the most promise but is still not quite there yet – but it does work for a lot of people, so hopefully this will work for you too. Good luck and prepare to reboot… A lot!

‘Codon’ Compiles Python to Native Machine Code That’s Even Faster Than C

Codon is a new “high-performance Python compiler that compiles Python code to native machine code without any runtime overhead,” according to its README file on GitHub. Typical speedups over Python are on the order of 10-100x or more, on a single thread. Codon’s performance is typically on par with (and sometimes better than) that of C/C++. Unlike Python, Codon supports native multithreading, which can lead to speedups many times higher still.
Its development team includes researchers from MIT’s Computer Science and Artificial Intelligence lab, according to this announcement from MIT shared by long-time Slashdot reader Futurepower(R): The compiler lets developers create new domain-specific languages (DSLs) within Python — which is typically orders of magnitude slower than languages like C or C++ — while still getting the performance benefits of those other languages. “We realized that people don’t necessarily want to learn a new language, or a new tool, especially those who are nontechnical. So we thought, let’s take Python syntax, semantics, and libraries and incorporate them into a new system built from the ground up,” says Ariya Shajii SM ’18, PhD ’21, lead author on a new paper about the team’s new system, Codon. “The user simply writes Python like they’re used to, without having to worry about data types or performance, which we handle automatically — and the result is that their code runs 10 to 100 times faster than regular Python. Codon is already being used commercially in fields like quantitative finance, bioinformatics, and deep learning.”

The team put Codon through some rigorous testing, and it punched above its weight. Specifically, they took roughly 10 commonly used genomics applications written in Python and compiled them using Codon, and achieved five to 10 times speedups over the original hand-optimized implementations…. The Codon platform also has a parallel backend that lets users write Python code that can be explicitly compiled for GPUs or multiple cores, tasks which have traditionally required low-level programming expertise…. Part of the innovation with Codon is that the tool does type checking before running the program. That lets the compiler convert the code to native machine code, which avoids all of the overhead that Python has in dealing with data types at runtime.

Source: ‘Codon’ Compiles Python to Native Machine Code That’s Even Faster Than C – Slashdot

Core-js maintainer complains open source is broken

Denis Pushkarev, maintainer of the core-js library used by millions of websites, says he’s ready to give up open source development because so few people pay for the software upon which they depend.

“Free open source software is fundamentally broken,” he wrote in a note on the core-js repository. “I could stop working on this silently, but I want to give open source one last chance.”

The issue of who pays for open source software, often created or managed by unpaid volunteers, continues to be a source of friction and discontent in the coding community.

Feross Aboukhadijeh, an open source developer and CEO of security biz Socket, had a lot to say on the subject in an email to The Register:

Maintainers are the unsung heroes of the software world, pouring their hearts into creating vast amounts of value that often goes unappreciated. These unsung heroes perform critical work that enables all of modern technology to function – this is not an exaggeration. These tireless individuals dedicate themselves to writing new features, fixing bugs, answering user inquiries, improving documentation, and developing innovative new software, yet they receive almost no recognition for their efforts.

It is imperative for the commercial industry and open source community to come together and find a way to acknowledge and reward maintainers for their invaluable contributions. As long as significant personal sacrifice is a prerequisite for open source participation, we’ll continue to exclude a lot of smart and talented folks. This isn’t good for anyone.

Maintainers of packages that are not installed directly, such as core-js, which often comes along for the ride when installing other packages, have it especially hard. Reliable, error-free transitive dependencies are invisible. Therefore, the maintainers are invisible, too. Perversely, the better these maintainers do their job, the more invisible they are. No one ever visits a GitHub repository for a transitive dependency that works perfectly – there’s no reason to do so. But a developer investigating an error stack trace might visit the repository if for no other reason than to file an issue. This is the exact problem that the core-js maintainer faced.

For the large companies that get more from the free labor in open source code than they pay out in donations – if indeed they pay out – the status quo looks like a pretty good deal.

For individual developers, however, code creation and maintenance without compensation has a cost – measurable not just in financial terms, but also in social and political capital.

For Pushkarev, known as zloirock on GitHub, the situation is that core-js is a JavaScript library that’s been downloaded billions of times and used on more than half of the top 10,000 websites – but the income he receives from donations has fallen dramatically. When he started maintaining core-js full time he could count on about $2,500 per month, and that’s down to about $400 per month at present.

[…]

 

Source: Core-js maintainer complains open source is broken

The post then goes on to politicise the guy who is complaining and mention some other stuff from the past – but that does not invalidate the point that many FOSS developers are creating software that businesses profit hugely off and they themselves don’t see a thing for – except random hate.

Claims Datadog asked developer to kill open source data tool, which he did. And now he’s ressurected it.

After a delay of over a year, an open source code contribution to enable the export of data from Datadog’s Application Performance Monitoring (APM) platform finally got merged on Tuesday into a collection of OpenTelemetry components.

The reason for the delay, according to John Dorman, the software developer who wrote the Datadog APM Receiver code, is that, about a year ago, Datadog asked him not to submit the software.

On February 8 last year Dorman, who goes by the name “boostchicken” on GitHub, announced that he was closing his pull request – the git term for programming code contributed to a project.

“After some consideration I’ve decided to close this PR [pull request],” he wrote. “[T]here are better ways to OTEL [OpenTelemetry] support w/ Datadog.”

Members of the open source community who are focused on application monitoring – collecting and analyzing logs, traces of app activity, and other metrics that can be useful to keep applications running – had questions, claiming that DataDog prefers to lock customers into their product.

Shortly after the post, Charity Majors, CEO of Honeycomb.io, a rival application monitoring firm, wrote a Twitter thread elaborating on the benefits of OpenTelemetry and calling out Datadog for only supporting OTEL as a one-way street.

“Datadog has been telling users they can use OTEL to get data in, but not get data out,” Majors wrote. “The Datadog OTEL collector PR was silently killed. The person who wrote it appears to have been pressured into closing it, and nothing has been proposed to replace it.”

Behavior of this sort would be inconsistent with the goals of the Cloud Native Computing Foundation’s (CNCF) OpenTelemetry project, which seeks “to provide a set of standardized vendor-agnostic SDKs, APIs, and tools for ingesting, transforming, and sending data to an Observability back-end (i.e. open source or commercial vendor).”

That is to say, the OpenTelemetry project aims to promote data portability, instead of hindering it, as is common among proprietary software vendors.

The smoking hound

On January 26 Dorman confirmed suspicions that he had been approached by Datadog and asked not to proceed with his efforts.

“I owe the community an apology on this one,” Dorman wrote in his pull request thread. “I lacked the courage of my convictions and when push came to shove and I had to make the hard choice, I took the easy way out.”

“Datadog ‘asked’ me to kill this pull request. There were other members from my organization present that let me know this answer will be a ‘ok’. I am sure I could have said no, at the moment I just couldn’t fathom opening Pandora’s Box. There you have it, no NDA, no stack of cash. I left the code hoping someone could carry on. I was willing to give [Datadog] this code, no strings attached as long as it moved OTel forward. They declined.”

He added, “However, I told them if you don’t support OpenTelemetry in a meaningful way, I will start sending pull requests again. So here we are. I feel I have given them enough time to do the right thing.”

Indeed, Dorman subsequently re-opened his pull request, which on Tuesday was merged into the repository for Open Telemetry Collector components. His Datadog ARM Receiver can ingest traces in the Datadog Trace Agent Format.

Coincidentally, Datadog on Tuesday published a blog post titled, “Datadog’s commitment to OpenTelemetry and the open source community.” It makes no mention of the alleged request to “kill [the] pull request.” Instead, it enumerates various ways in which the company has supported OpenTelemetry recently.

The Register asked Datadog for comment. We’ve not heard back.

Dorman, who presently works for Meta, did not respond to a request for comment. However, last week, via Twitter, he credited Grafana, an open source Datadog competitor, for having “formally sponsored” the work and for pointing out that Datadog “refuses to support OTEL in meaningful ways.”

The OpenTelemetry Governance Committee for the CNCF provided The Register with the following statement:

“We’re still trying to make sense of what happened here; we’ll comment on it once we have a full understanding. Regardless, we are happy to review and accept any contributions which push the project forward, and this [pull request] was merged yesterday,” it said.

Source: Claims Datadog asked developer to kill open source data tool • The Register

ChatGPT Is Now Finding, Fixing Bugs in Code

AI bot ChatGPT has been put to the test on a number of tasks in recent weeks, and its latest challenge comes courtesy of computer science researchers from Johannes Gutenberg University and University College London, who find(Opens in a new window) that ChatGPT can weed out errors with sample code and fix it better than existing programs designed to do the same.

Researchers gave 40 pieces of buggy code to four different code-fixing systems: ChatGPT, Codex, CoCoNut, and Standard APR. Essentially, they asked ChatGPT: “What’s wrong with this code?” and then copy and pasted it into the chat function.

On the first pass, ChatGPT performed about as well as the other systems. ChatGPT solved 19 problems, Codex solved 21, CoCoNut solved 19, and standard APR methods figured out seven. The researchers found its answers to be most similar to Codex, which was “not surprising, as ChatGPT and Codex are from the same family of language models.”

However, the ability to, well, chat with ChatGPT after receiving the initial answer made the difference, ultimately leading to ChatGPT solving 31 questions, and easily outperforming the others, which provided more static answers.

[…]

They found that ChatGPT was able to solve some problems quickly, while others took more back and forth. “ChatGPT seems to have a relatively high variance when fixing bugs,” the study says. “For an end-user, however, this means that it can be helpful to execute requests multiple times.”

For example, when the researchers asked the question pictured below, they expected ChatGPT to recommend replacing n^=n-1 with n&=n-1, but the first thing ChatGPT said was, “I’m unable to tell if the program has a bug without more information on the expected behavior.” On ChatGPT’s third response, after more prompting from researchers, it found the problem.

Code for ChatGPT Study

(Credit: Dominik Sobania, Martin Briesch, Carol Hanna, Justyna Petke)

However, when PCMag entered the same question into ChatGPT, it answered differently. Rather than needing to tell it what the expected behavior is, it guessed what it was.

[…]

 

Source: Watch Out, Software Engineers: ChatGPT Is Now Finding, Fixing Bugs in Code

Microsoft rummages through your PC to look at Office installs

Microsoft wants to know how many out-of-support copies of Office are installed on Windows PCs, and it intends to find out by pushing a patch through Microsoft Update that it swears is safe, not that you asked.

Quietly mentioned in a support post this week, update KB5021751 is targeting versions of Office “including” 2007 and 2010, both of which have been out of service for several years. Office 2013 is also being asked after as it’s due to lose support this coming April.

“This update will run one time silently without installing anything on the user’s device,” Microsoft said, followed by instructions on how to download and install the update, which Microsoft said has been scanned to ensure it’s not infected by malware.

[…]

Microsoft’s description of its out-of-support Office census update leaves much to the imagination, including whether the paragraph describing installation of the update, directly contradicting the paragraph above, is simply misplaced boilerplate language that doesn’t apply to KB5021751.

Also missing is any explanation of how the update will gather info on Office installations, whether it is collecting any other system information or what exactly will be transmitted and stored by Microsoft.

Because the nature of the update is unclear, it’s also unknown what may be left behind after it runs. Microsoft said that it is a single-run, silent process, but left off mention of traces of the update that may be left behind.

[…]

Source: Microsoft pushing update to count unsupported Office install • The Register

Stay out of MY PC!

Z-Wave Alliance Announces Z-Wave Source Code Project is Complete, Now Open and Widely Available to Members

The Z-Wave Alliance, the Standards Development Organization (SDO) dedicated to advancing the smart home and Z-Wave® technology, today announced the completion of the Z-Wave Source Code project, which has been published and made available on GitHub to Alliance members.

The Z-Wave Source Code Project opens development of Z-Wave and enables members to contribute code to shape the future of the protocol under the supervision of the new OS Work Group (OSWG).

[…]

For more information on joining the Z-Wave Alliance, please visit http://z-wavealliance.org.

Source: Z-Wave Alliance Announces Z-Wave Source Code Project is Complete, Now Open and Widely Available to Members – z-wavealliance

So Open Source but not FOSS

Crucial Computer Program for Particle Physics at Risk of Obsolescence

Recently, I watched a fellow particle physicist talk about a calculation he had pushed to a new height of precision. His tool? A 1980s-era computer program called FORM

[…]

Developed by the Dutch particle physicist Jos Vermaseren, FORM is a key part of the infrastructure of particle physics, necessary for the hardest calculations. However, as with surprisingly many essential pieces of digital infrastructure, FORM’s maintenance rests largely on one person: Vermaseren himself. And at 73, Vermaseren has begun to step back from FORM development. Due to the incentive structure of academia, which prizes published papers, not software tools, no successor has emerged

[…]

Since 2000, a particle physics paper that cites FORM has been published every few days, on average. “Most of the [high-precision] results that our group obtained in the past 20 years were heavily based on FORM code,” said Thomas Gehrmann, a professor at the University of Zurich.

Some of FORM’s popularity came from specialized algorithms that were built up over the years, such as a trick for quickly multiplying certain pieces of a Feynman diagram, and a procedure for rearranging equations to have as few multiplications and additions as possible. But FORM’s oldest and most powerful advantage is how it handles memory.

[…]

FORM bypasses swapping and uses its own technique. When you work with an equation in FORM, the program assigns each term a fixed amount of space on the hard disk. This technique lets the software more easily keep track of where the pieces of an equation are. It also makes it easy to bring those pieces back to main memory when they are needed without accessing the rest.

Memory has grown since FORM’s early days, from 128 kilobytes of RAM in the Atari 130XE in 1985 to 128 gigabytes of RAM in my souped-up desktop — a millionfold improvement. But the tricks Vermaseren developed remain crucial. As particle physicists pore through petabytes of data from the Large Hadron Collider to search for evidence of new particles, their need for precision, and thus the length of their equations, grows longer.

[…]

As crucial as software like FORM is for physics, the effort to develop it is often undervalued. Vermaseren was lucky in that he had a permanent position at the National Institute for Subatomic Physics in the Netherlands, and a boss who appreciated the project. But such luck is hard to come by. Stefano Laporta, an Italian physicist who developed a crucial simplification algorithm for the field, has spent most of his career without funding for students or equipment. Universities tend to track scientists’ publication records, which means those who work on critical infrastructure are often passed over for hiring or tenure.

“I have seen over the years, consistently, that people who spend a lot of time on computers don’t get a tenure job in physics,” said Vermaseren.

[…]

Without ongoing development, FORM will get less and less usable — only able to interact with older computer code, and not aligned with how today’s students learn to program. Experienced users will stick with it, but younger researchers will adopt alternative computer algebra programs like Mathematica that are more user-friendly but orders of magnitude slower. In practice, many of these physicists will decide that certain problems are off-limits — too difficult to handle. So particle physics will stall, with only a few people able to work on the hardest calculations.

In April, Vermaseren is holding a summit of FORM users to plan for the future. They will discuss how to keep FORM alive: how to maintain and extend it, and how to show a new generation of students just how much it can do. With luck, hard work and funding, they may preserve one of the most powerful tools in physics.

Source: Crucial Computer Program for Particle Physics at Risk of Obsolescence | Quanta Magazine

ID.me Lied About Its Facial Recognition Tech

[…] New evidence shows that ID.me “inaccurately overstated its capacity to conduct identity verification services to the Internal Revenue Service (IRS) and made baseless claims about the amount of federal funds lost to pandemic fraud in an apparent attempt to increase demand for its identity verification services,” according to a new report from the two U.S. House of Representatives committees overseeing the government’s COVID-19 response.

The report also said that ID.me—which received $45 million in COVID relief funds from at least 25 state agencies—misrepresented the excessively long wait times it forced on people trying to claim emergency benefits like unemployment insurance and Child Tax Credit payments. Wait times for video chats were as long as 4 to 9 hours in some states.

[…]

The IRS and other government agencies said they would stop using ID.me earlier this year after widespread backlash from benefits recipients and politicians. Members of Congress later called on the Federal Trade Commission (FTC) to investigate the company’s practices. In that letter, congress members noted inconsistencies the company had made in describing its facial recognition system, which used a massive facial recognition database to identify benefits recipients.

“Not only does this violate individuals’ privacy, but the inevitable false matches associated with one-to-many recognition can result in applicants being wrongly denied desperately-needed services for weeks or even months as they try to get their case reviewed,” the letter stated.

Source: ID.me Lied About Its Facial Recognition Tech, Congress Says

Windows 11’s Task Manager is finally getting a search box to help you find misbehaving apps

[…]

Microsoft has started testing a new search and filtering system for the Task Manager on Windows 11. It will allow Windows users to easily search for a misbehaving app and end its process or quickly create a dump file, enable efficiency mode, and more.

“This is the top feature request from our users to filter / search for processes,” explains the Windows Insider team in a blog post. “You can filter either using the binary name, PID or publisher name. The filter algorithm matches the context keyword with all possible matches and displays them on the current page.”

You’ll be able to use the alt + F keyboard shortcut to jump to the filter box in the Task Manager, and results will be filtered into single or groups of processes that you can monitor or take action on.

[…]

Source: Windows 11’s Task Manager is getting a search box to help you find misbehaving apps – The Verge

This is considered a big feature release and it makes you wonder what kind of programmers MS has employed that this has taken so long