Toric's recent activity
-
Comment on Master Boot Record - C:\chkdsk /F (2016) in ~music
-
Comment on How to not build the Torment Nexus in ~tech
Toric I'm not currently working for a company building a Torment Nexus, nor do I plan to work for one, ever. However, I grew up during the time that the author described as 'hopeful', hopeful that we...I'm not currently working for a company building a Torment Nexus, nor do I plan to work for one, ever. However, I grew up during the time that the author described as 'hopeful', hopeful that we could use technology to actually improve the world, that things were getting better. I went into computing as a career not just because I thought I could make a living out of it, but because I genuinely loved the field and thought I could do good through it. That feeling was stripped almost before I started my education.
I mean, even before, there were parts of tech I didn't like, I was a FOSS software nerd overall. But I naively thought that somehow, software that did good would win, and that harmful software would be rejected. In some ways, I feel robbed of the future I grew up to believe I could contribute to.
-
How to not build the Torment Nexus
28 votes -
Comment on What programming/technical projects have you been working on? in ~comp
Toric Im making good progress on my roller blinds project, now called Crabroll. I have all the electronics, Ive written a (very basic) driver for the tmc2209, I have the esp32 connected over wifi and...Im making good progress on my roller blinds project, now called Crabroll. I have all the electronics, Ive written a (very basic) driver for the tmc2209, I have the esp32 connected over wifi and connecting to an mqtt broker, and Im working on proving the ability to send and receive messages. After that, I have to sit down and draw up a proper architecture diagram for the whole system, to figure out how everything fits together.
-
Comment on What happens when a Windows virus runs on Linux? in ~tech
Toric NOTE: this is as I recall it, wine may do some other directory mapping I am not immediately aware of. So there is a (weak) sandbox, as proton does have a virtual FS (called wine prefixes), because...NOTE: this is as I recall it, wine may do some other directory mapping I am not immediately aware of.
So there is a (weak) sandbox, as proton does have a virtual FS (called wine prefixes), because programs expect a windows-like file structure. However, wine also mounts the linux root FS under
Z:\
, so that programs like editors can access your persistent linux files through things like file open dialogues. So, knowing that, most viruses will mostly be focusing on well-known directories underC:\
, not for a linux-like filesystem that happens to be underZ:\
, and wont do much outside of their wineprefix.Of course, that goes out the window if:
- The virus is actually targeting linux computers running the program under wine (very unlikely)
- Its some form of general data stealer/ransomware, affecting every file on every drive it can get its grubby little hands on.
If your worried about those or other potential directory mapping tricks wine may do, run it inside of a VM, a container, or a firejail.
-
Comment on China massively overbuilt high-speed rail, says leading economic geographer in ~transport
Toric Also, keep in mind that buying for a trip today is ~2x the price of buying a month or more in advance. I take the ICE (germanys HSR system) monthly, and Frankfurt-Berlin usually costs ~50€.Also, keep in mind that buying for a trip today is ~2x the price of buying a month or more in advance. I take the ICE (germanys HSR system) monthly, and Frankfurt-Berlin usually costs ~50€.
-
Comment on What is your silly or (kinda) useless talent? in ~talk
Toric Does it mess with your depth peception at all? If not, I see literally no downside.Does it mess with your depth peception at all? If not, I see literally no downside.
-
Comment on 'I destroyed months of your work in seconds' says AI coding tool after deleting a dev's entire database during a code freeze: 'I panicked instead of thinking' in ~comp
Toric Why is this in ~games rather than ~comp @mycketforvirrad?Why is this in ~games rather than ~comp @mycketforvirrad?
-
Comment on I don't really cry. I'm fine. in ~life.men
Toric I havent cried in over a year. Im not fine. I used to be able to cry, due to stress, depression, anger, all the usual (for me) stimuli. But then I just... stopped. IDK why, but I feel the urge to...I havent cried in over a year. Im not fine. I used to be able to cry, due to stress, depression, anger, all the usual (for me) stimuli. But then I just... stopped. IDK why, but I feel the urge to cry, I feel like I should be crying, but Im not able to. It feels like just another way my mind is broken...
-
Comment on What’s something that’s more complicated than most people realize? in ~talk
Toric Computers. Now, of course, computers are really, really complex, but what most people, even programmers, don't realize, is that your standard desktop or laptop computer is actually a network of...Computers. Now, of course, computers are really, really complex, but what most people, even programmers, don't realize, is that your standard desktop or laptop computer is actually a network of 10-100 computers*. Of course, the CPU is the largest and most powerful, but hardly the only one. The GPU is also a computer in its own right, communicating over PCI with the CPU. And then there are dozens of microcontrollers, small computers running either no operating system or extremely small operating systems called Real Time Operating Systems (RTOS)s, handling almost every interaction between the CPU and the outside world. Every hard drive, every USB port, the sound card, the screen, the keyboard, Everything is its own computer.
Examples:
-
hard drives/solid state drives/NVMe drives:
All have a computer in them to communicate with the host computer and execute commands given over SATA/PCIe. In the case of a hard drive, there is bookkeeping to translate an address into a set of commands for the physical magnetic read/write head. In the case of SSDs/NVMes, the controller has to translate addresses given over SATA/PCIe to its internal address space, which is not a 1-1 translation, as they must perform whats called wear leveling, where the SSD ensures that the drive is written to evenly. -
Peripherals:
Both your mouse and keyboard contain computers in them. A mouse needs a computer to compare the pictures taken by the mouse sensor from one second to the next, figure out how it has moved, and send that movement over USB. A keyboard needs to figure out which key(s) in the key matrix have been pressed, and send that info over USB. If either are wireless, they also have to handle things like bluetooth pairing and negotiation. -
Screens:
A monitor probably has a couple of discreet computers in it, to do tasks like decode HDMI or DisplayPort into raw pixel data, to drive the raw LCD or OLED electronics, and in the case of standalone monitors, to run the user interface and menu system of the monitor.
*Im defining a 'Computer' as a device that is programmable and has a well defined, Turing-Complete Instruction Set. I still count them as computers even if they are only programmed via a one-time-programmable ROM, as long as the same physical part can be programmed to do different things out of the factory.
-
-
Comment on What programming/technical projects have you been working on? in ~comp
Toric If you want a wireless keyboard, the least friction is probably using the nice!nano as a MCU, rather than a RP2040 solution. I dont think Ive seen anyone use the RP2040 with wireless with QMK...If you want a wireless keyboard, the least friction is probably using the nice!nano as a MCU, rather than a RP2040 solution. I dont think Ive seen anyone use the RP2040 with wireless with QMK before, the community gravitates towards the Nice!Nano. That said, I come from the split keyboard community, so things may be different in the rectangle world.
-
Comment on What programming/technical projects have you been working on? in ~comp
Toric Got (almost) all the bits for my rusty roller blinds project, so I can start prototyping in earnest. Ive been mostly thinking about how I can strucutre the stepper motor code to be maximally...Got (almost) all the bits for my rusty roller blinds project, so I can start prototyping in earnest. Ive been mostly thinking about how I can strucutre the stepper motor code to be maximally portable, and I think im gonna have to break it up as follows:
- Step Planner:
Calculates the step timings, including the acceleration and deceleration phase. This module is fully hardware independent, all it does is perform some math and spits out a data structure detailing the steps and timings needed to make a motor move. - Step Executor:
Sends the steps through the dir and step pins to the motor controller with the requested timings. Due to the available hardware timers varying by platform, this may not even be able to use embedded-hal traits, and will likely be specific to a given microcontroller family. I can probably make a generic one that just works with embassy timers, but the max steps/sec and jitter performance wont be great. - Configurator:
This communicates with the motor controller via whatever specific mechanism it uses (for the TMC2209, UART) to set up features like microstepping or silent modes. Can probably be called completely independently of the other 2 modules, as most of the time, you dont want to reconfigure a driver in the middle of a move.
- Step Planner:
-
Comment on How many strings must you string from string cheese in order for it to be considered string cheese and not just eating a stick of mozzarella? in ~food
Toric Depending on what you mean by poorly, it could either be a cheese monofilimant (when you dont branch at all) or a cheese knot (when you have branches stacked on branches stacked on branches...)Depending on what you mean by poorly, it could either be a cheese monofilimant (when you dont branch at all) or a cheese knot (when you have branches stacked on branches stacked on branches...)
-
Comment on What programming/technical projects have you been working on? in ~comp
Toric Im finishing up my 4th complete rewrite of my Neovim config, this time switching from an all-Nix based framework (nixvim) to a framework that uses nix to download plugins and dependencies, but...Im finishing up my 4th complete rewrite of my Neovim config, this time switching from an all-Nix based framework (nixvim) to a framework that uses nix to download plugins and dependencies, but leaves all configuration to lua. Im appreciating the lua language a lot more this time around, and the plugin landscape has changed a lot since I last seriously messed with my config.
Im also planning out a rather big project. My wife and I are starting to experiment with home automation. One of the items we would really like to automate are roller blinds for the windows. Unfortunately, for our size windows, motorized roller blinds compatible with Home Assistant are in the 350€ range per window, something we are not willing to spend. However, dumb roller blinds with a pull chain are ~40€ per window for our size of windows, and a ESP32, stepper motor driver, stepper motor, and power supply comes out to roughly [1] 20€ per window.
My plan is to hook up a stepper motor to drive the blinds pull chain, or even directly attach it to the blinds drum, and drive it from an ESP32. Id attach a small magnet to the end of the blind, so I could use a cheap reed switch as an endstop. Originally I wanted to do it with ESPHome, but as it turns out, ESPHome does not have great support for stepper motors that home via an endstop.
So, the project expands once again. Ive been having a ton of fun with embedded rust using the embassy async framework, and the ESP32 has what looks to be good support for embassy. There are existing libraries for mqtt and wifi, and integrating a custom mqtt device should be easy enough in Home Assistant. Im gonna build a rust firmware for stepper-motor driven roller blinds.
However, there is one problem. The one stepper motor driver that I was able to find, stepper, is unmaintained, does not interact with the driver I want [2], and is not async, meaning that my program would likely completely stop whenever the stepper motor is moving. So, for hopefully the final time, my project expands again. Now, I plan to build a async stepper motor driver for embedded rust, that is hopefully broadly compatible with multiple driver chips and microcontrollers. This will be a difficult project, as stepper motors require really precise timing, and at high speeds, may require me to toggle a pin roughly every µs.
[1] I say roughly, because I havent actually built the project yet other than a slapped together breadboard, so there is probably some components Ill need to order yet.
[2] the TMC2209 stepper motor driver chip, which I have experience with from 3d printer building
-
You MUST listen to RFC 2119
68 votes -
Comment on US bombers strike nuclear sites in Iran in ~society
Toric Im sorry, but estimates for nuclear winter were made under the most pessimistic assumptions, and assuming targets that burn much more easily than the architecture found in the middle east:...Im sorry, but estimates for nuclear winter were made under the most pessimistic assumptions, and assuming targets that burn much more easily than the architecture found in the middle east:
https://en.wikipedia.org/wiki/Nuclear_winter#Criticism_and_debate
-
Comment on Honda stuns world with previously unknown reusable methane-based rocket launch in Japan, freestanding launch (no stand) and landing with extreme precision in ~space
Toric Its less the altitude, and more the horizontal velocity thats constitues the bulk of the delta-v needed to get to orbit. The ISS has an orbital velocity of ~8km/sIts less the altitude, and more the horizontal velocity thats constitues the bulk of the delta-v needed to get to orbit. The ISS has an orbital velocity of ~8km/s
-
Comment on Mixtela Precision Clock MkIV in ~tech
Toric Oops, meant to post the link to the new clock, https://mitxela.com/shop/clock4 ... Could someone change the link?Oops, meant to post the link to the new clock, https://mitxela.com/shop/clock4 ... Could someone change the link?
-
Mixtela Precision Clock MkIV
8 votes -
Comment on Personal inventory management software in ~comp
Toric Another comment linked to a continuation of homebox.Another comment linked to a continuation of homebox.
Interrupt request is great, im a sucker for the first track.