Simulating Cellular Biology In The Browser

[Technistuff] read a paper about simulating a “minimal” cell — apparently a cell with only 493 genes. This led to a goal: reproduce the simulation in TypeScript so it can run in a web browser. Why? We don’t know, but it is an interesting look at both in-depth biology and how to handle complex simulations. The code is available on GitHub.

For a point of reference, E. Coli has over 4,500 genes. The cell in question — JCVI-syn3A — actually has seven more genes than truly necessary. The data for this bacteria is available from a research lab, again, using GitHub.

Continue reading “Simulating Cellular Biology In The Browser”

Creators Can Fight Back Against AI With Nightshade

If an artist were to make use of a piece of intellectual property owned by a large tech company, they risk facing legal action. Yet many creators are unhappy that those same tech companies are using their IP on a grand scale in the form of training material for generative AI. Can they fight back?

Perhaps now they can, with Nightshade, from a team at the University of Chicago. It’s a piece of software for Windows and MacOS that poisons an image with imperceptible shading, to make an AI classify it in an entirely different way than it appears.

The idea is that creators use it on their artwork, and leave it for unsuspecting AIs to assimilate. Their example is that a picture of a cow might be poisoned such that the AI sees it as a handbag, and if enough creators use the software the AI is forever poisoned to return a picture of a handbag when asked for one of a cow. If enough of these poisoned images are put online then the risks of an AI using an online image become too high, and the hope is that then AI companies would be forced to take the IP of their source material seriously.

For this to work it depends on enough creators taking up and using the software, but we are guessing that an inevitable result will be an arms race between AIs and image poisoners. One thing is certain though, as the AI hype has fueled such a growth in generative AI systems, creators, whether they be major publishers, your favourite human-generated tech news website, or someone drawing a cartoon strip in their bedroom, deserve not to have their work stolen in this way.

Computer Logic Spins With No Electricity

We’ve often said you can make a logic gate out of darn near anything. [The Action Lab] agrees and just released a video showing how he made some logic gates from chains and gears. Along the way, he makes the case that the moving chain is an analog for electric current. The demonstration uses a commercial toy known as Spintronics, but if you are mechanically handy, you could probably devise your own setup using 3D printing or gears.

A spring wound motor is a “battery.” Gears act like resistors and junctions to distribute “current” in multiple directions. Seeing series and parallel resistance as moving chains is pretty entertaining and might help someone new learn those concepts.

Continue reading “Computer Logic Spins With No Electricity”

Reverse-Engineering The Web-@nywhere Watch For 2001-Era Smartwatch Action

Although smartwatches seem to be just a recent fad, people have been strapping wristwatches to their wrists with all kinds of functionality. Whether a miniscule calculator, a remote control, an organizer or as in the case of the Web-@nywhere Watch a web browser. In the last case only sort of, naturally, as it was released in 2001 and this little early 2000s marvel cost only $85 (or $150 in 2024 USD), so what could it really be capable of? This is the million dollar question that [Cameron Kaiser] sought to find out as he found a new-in-box unit for sale.

The Web-@nywhere watch in action. (Credit: Cameron Kaiser)
The Web-@nywhere watch in action. (Credit: Cameron Kaiser)

Beforehand he knew already that the unit required interaction with a PC-based application to sync the 93 kB of on-watch data, with the required software and remote servers now being very much outdated and/or gone. This required some reverse-engineering to once more bring this watch widget back to life. Along the way it became also quite clear that this watch was designed as a cheap rip-off of the much better 1998 Seiko Ruputer – which later got sold also as the onHand PC – using the same joystick-driven interface.

After some poking around with the Windows-based software that came with the watch [Cameron] quickly realized that while it could establish a serial link with the watch in its cradle, it fully relied on a now defunct FTP server formerly run by the manufacturer, Kinger, along with any games and content on it. Since FTP servers were never archived like HTTP sites, this content is likely gone forever.

Fortunately, the protocol between the PC and the watch is a standard serial link (with parity), so [Cameron] was able to sniff the serial traffic and figure out the protocol, the results of which he has made available on GitHub in the form of a Perl script for transforming text and a C-based application to do the uploading. Now once again Web-@nywhere users can proudly roam the streets with 2024-era website content on their wrists.

Garden Light Turned Mesh Network Node

We love a good deal, especially when it comes to scavenging parts for projects. Cheap outdoor solar lights are more than just garden accessories; they’re a handy source of waterproof enclosures, solar panels and batteries. This is demonstrated by [Tavis], who turned one such light into a Meshtastic LoRa communication node.

Solar Light With Meshtastic node inside
Where there’s an antenna, there’s a radio

A nice feature on this specific $15 Harbor Breeze Solar LED is the roomy solar panel enclosure with integrated 18650 battery holder, allowing for easy battery swaps. [Tavis] was able to easily fit the RAKwireless modular dev board, and wire it into the light’s charging circuit. The cheap  circuit is likely not the most efficient, but will probably get the job done. It’s always possible to just swap it out with a better charging board. [Tavis] also added an external antenna by using a panel-mount SMA pigtail connector.

The Meshtastic project is all about enabling text-only communications through LoRa-based mesh networks, built using off-the-shelf devices and development boards that won’t break the bank. The project has seen some incredible growth, with people all over the world setting up their own networks.

It’s not the first time we’ve seen garden lights get used in project. We’ve seen MQTT added to a PIR solar light with some clever power saving circuitry, and as a power source for Attiny85-based projects.

Learn Sailing Mechanics Without Leaving Dry Land

The ancient art of sailing can be very intimidating for the uninitiated given the shifty nature of wind. To help understand the interaction of wind direction and board orientation, [KifS] designed a hands-on sailing demonstrator that lets students grasp the basics before setting foot on a real sailboat.

The demonstrator uses a potentiometer as a tiller to control a model sailboat’s angle, while another stepper motor adjusts the position of a fan to simulate changing wind directions. With an Arduino Uno controlling everything, this setup affords students the opportunity to learn about sail positioning and adjusting to shifting winds in an interactive way, without the pressures and variables of being on the water.

[KifS]’s creation isn’t just about static demonstrations. It features four modes that progressively challenge learners—from simply getting a feel for the tiller, to adjusting sails with dynamic wind changes, even adding a game element that introduces random wind movements demanding quick adjustments. [KifS] mentions there are potentials aspects that can be refined, like more realistic sail response and usability, but it already achieved the main project goals.

There are a myriad of potential ways to add new tech to the ancient art of sailing. We’ve seen a DIY autopilot system, full sensor arrays, and an open source chart plotter. It’s even been proven you can have a wind powered land vehicle that travels faster than the wind.

How A Steam Bug Once Deleted All Of Someone’s User Data

In a retrospective, [Kevin Fang] takes us back to 2015, when on the Steam for Linux issue tracker [keyvin] opened an issue to report that starting the Steam client after moving the Steam folder had just wiped all of his user data, including his backup drive mounted under /media. According to [keyvin], he moved the standard ~/.local/share/steam to a drive mounted under /media and symlinked ~/.local/share/steam to this new location on the external drive. He then tried starting Steam, which failed, before Steam crashed and tried reinstalling itself. That’s when [keyvin] realized that Steam had apparently recursively deleted everything owned by his user from the root folder.

The infamous Valve code that made Linux users sad.
The infamous Valve code that made Linux users sad.

In the issue thread, user [doofy] got hit by the same bug when trying to directly start the ~/.local/share/steam/steam.sh script with debugging enabled. He then was the first to point out the rm -rf in that steam.sh script, but since this particular line is in a function only called when Steam tries to remove and reinstall itself to ‘fix’ a botched start, how did this happen? Ultimately it seems to be because of the STEAMROOT variable being set to an empty string, and another unset variable triggering the reset_steam() function, leading to the demise of all the user data.

Since then Valve has presumably fixed the issue, as no further users have filed tickets, but it’s concerning that a similar issue seems to still exist on Windows. Whether or not the original Linux issue has been fixed, it shows clearly how one should always check return values and perhaps, just maybe, never do an automated rm -rf or equivalent.

Continue reading “How A Steam Bug Once Deleted All Of Someone’s User Data”