Jenny’s Daily Drivers: FreeBSD 13.2

Last month I started a series in which I try out different operating systems with the aim of using them for my everyday work, and my pick was Slackware 15, the latest version of the first Linux distro I tried back in the mid 1990s. I’ll be back with more Linux-based operating systems in due course, but the whole point of this series is to roam as far and wide as possible and try every reasonable OS I can. Thus today I’m making the obvious first sideways step and trying a BSD-based operating system. These are uncharted waters for me and there was a substantial choice to be made as to which one, so after reading around the subject I settled on FreeBSD as it seemed the most accessible.

First, A Bit Of Context

A PC with the FreeBSD boot screen
Success! My first sight of a working FreeBSD installation.

Most readers will be aware that the BSD operating systems trace their heritage in a direct line back to the original AT&T UNIX, while GNU/Linux is a pretty good UNIX clone originating with Linus Torvalds in the early 1990s and Richard Stallman’s GNU project from the 1980s onwards. This means that for Linux users there’s a difference in language to get used to.

Where Linux is a kernel around which distributions are built with different implementations of the userland components, the various BSD operating systems are different operating systems in their own right. Thus we talk about for example Slackware and Debian as different Linux distributions, but by contrast NetBSD and FreeBSD are different operating systems even if they have a shared history. There are BSD distributions such as GhostBSD which use FreeBSD as its core, but it’s a far less common word in this context. So I snagged the FreeBSD 13.2 USB stick file from the torrent, and wrote it to a USB Flash drive. Out with the Hackaday test PC, and on with the show. Continue reading “Jenny’s Daily Drivers: FreeBSD 13.2”

Pixel Pump, The Open Source Vacuum Pickup Tool Is Now Shipping

The Pixel Pump is an open source manual pick & place assist tool by [Robin Reiter], and after a long road to completion, it’s ready to ship. We first saw the Pixel Pump project as an entry to the 2021 Hackaday Prize and liked the clean design and the concept of a completely open architecture for a tool that is so valuable to desktop assembly. It’s not easy getting hardware off the ground, but it’s now over the finish line and nearly everything — from assembly to packaging — has been done in-house.

Pixel Pump with SMD-Magazines, also using foot pedal to control an interactive bill of materials (BoM) plugin.

Because having parts organized and available is every bit as important as the tool itself, a useful-looking companion item for the Pixel Pump is the SMD-Magazine. This is a container for parts that come on SMD tape rolls. These hold components at an optimal angle for use with the pickup tool, and can be fixed together on a rail to create project-specific part groups.

A tool being open source means giving folks a way to modify or add features for better workflows, and an example of this is [Robin]’s suggestion of using a foot pedal for hands-free control of the interactive BoM plugin. With it, one can simply use a foot pedal to step through a highlighted list of every part for a design, an invaluable visual aid when doing hand assembly.

The Pixel Pump looks great, but if you’d prefer to go the DIY route for vacuum pickup tools you would certainly be in good company. We’ve seen economical systems built for under $100, and systems built around leveraging bead-handling tools intended for hobbyists. On the extreme end there’s the minimalist approach of building a tool directly around a small electric vacuum pump.

Using Trigonometric Functions In CSS

Often neglected as ‘merely a styling language’, CSS contains a wealth of functions built right into the browser’s rendering engine that can perform everything from animations to typography and even mathematical operations, with more added each year.

Screenshot of the output of the basic rotating dots example using CSS.

In a tutorial [Bramus] takes us through using the trigonometric functions in CSS. These are supported in all major browsers since Chrome 111, Firefox 108 and Safari 15.4. In addition to these trigonometric functions, further mathematical functions are also available, many of whom have been available for years now, such as calc(), min() and max().

Unlike the JavaScript version of the CSS trigonometric functions, the CSS functions accept both angles and radians for the argument. Perhaps the nicest thing about having this functionality in CSS is that it removes the need to add JavaScript for many simple things on a webpage, such as animations, translations and the calculating of offsets and positions. Perhaps most impressive is the provided example by [Ana Tudor] who created an animated Möbius strip using cos() and sin() and a handful of other CSS functions.

None of this is likely surprising to anyone who is somewhat familiar with the depths of CSS, especially after it has been more-or-less proven to be a Turing-complete programming language. Using this power for visual elements does however make a lot of sense considering that CSS was always intended to help with styling and formatting the raw HTML.

Do you use these advanced CSS features already, or is it something you might consider using in the future, possibly over JavaScript versions? Feel free to share your thoughts and experiences in the comments.

(Heading: Code to move items on a circular path around a central point in CSS.)