Email or username:

Password:

Forgot your password?
357 posts total
nixCraft 🐧

😍 Pinch me, I must be dreaming. This is a new smartwatch with a braille interface for blind users. What's even better is how beautiful the hardware is, even though users can't see it. Care and attention to detail to the max.

buy.dotincorp.com

#accessibility #a11y #hardware #design

This is a close-up image of a Braille watch designed for visually impaired users. The circular watch face features raised Braille dots that allow the wearer to read the time by touch. The dots are arranged in a clear pattern, divided by a central line, likely indicating hours on one side and minutes on the other. The watch has a minimalist metal body, textured side buttons, and a leather strap visible in the background. Its design is sleek and functional, emphasizing accessibility.
Show previous comments
Lockpick Extreme

@glennsorrentino I love unusual watches and electronic Braille displays, but I am also concerned about the practicality of this watch.
This is very similar to the watch my blind dad used, $30 at most places today.
(edit for spelling)

Picture of a silver wristwatch. The glass is hinges open to allow a blind user to feel the hour and minute hands to determine the time.
nixCraft 🐧

"Last Xmas
I rsynced you my heart
And the very next day
rm -rf ~/heart
This year, to save me from tears
sudo chmod -r 000 ~/heart"

Kevin

@nixCraft omg I feel so smart I understood those commands lol

nixCraft 🐧

git commit -m "I'm trying my best 😏"

nixCraft 🐧

How do you annoy a software developer in one sentence? 🤔

Show previous comments
Tyrion 🐧🏴‍☠️

@nixCraft

"I just had a great idea that I want you to help me with, it's [insert huge website/socmed] but cooler; if we (you) make it by the end of the month, we'll (I'll) be rich!"

bobby the count

@nixCraft (product owner, confidently) that should be really easy

nixCraft 🐧

Boost if you want less generative AI in your tech in 2025.

Show previous comments
kaspa

@mttaggart my main concern is while its awesome imo, it's how much data mining that might be going on behind the scenes that I'm unaware of.

chicating

@mttaggart "I'd rather have a gun in my mouth."
--David Simon

Linda Woodrow

@mttaggart I get some friends saying that the same stuff was said about computers, internet, even the printing press. But AI feels quite different to me. I resent the unpaid plunder of people's work for training data for machines that belong to billionaires. That has strong echos of colonial appropriation of art and knowledge, except we're all now in the colony being appropriated by a small class of essentially stateless billionaires. 1/2

Show previous comments
Andrew C. Dingman

@nixCraft maybe it's his umask, and his primary group is a UPG?

Freevolt

@nixCraft Imagine you have a toilet in your house but only guests can use it. That's 007. A crapper only for guests. It doesn't matter how urgent you are.

nixCraft 🐧

Boy, I just want to build something, walk away for a decade, come back, and have it still work! Is that too much to ask? Maybe I'm dreaming about such framework ... 😴

Show previous comments
Florian Judith

@nixCraft if it happens, you will cry a lot when you will have to come back to make modifications. Hopely, you will have changed and it may be difficult to maintain with more modern methods…

Shaadra

@nixCraft At my day job there is program written in pre-ANSI C that is still used for crucial user management.

Daniel Pache⚓

@nixCraft clay tablets or gravestones come to my mind, but the functions are limited.

nixCraft 🐧

I propose we replace semantic versioning with pride versioning

Diagram with large number: 2.7.123
First “2” is commented: Proud version. Bump when you are proud of the release
Second “7” is commented: Default version. Just normal/okay releases
Third “123” is commented: Shame version. Bump when fixing things too embarrassing to admit
Show previous comments
Bentok :godot:

@nikitonsky

The most scrupulous devs will be on 0.0.100, and the most prideful being on version 100.0.0 - perhaps both with comparable quality to their products. 😆

gunstick

@nikitonsky I think this has already happened for most open source projects.

nixCraft 🐧

What's the difference between Photoshop and GIMP?

About $280 a year! 😂

Show previous comments
Rickyx

@nixCraft while I use gimp I have to admit that many features are not there. Ex. the whole CMYK professional printing pipeline (colour profiles, offset, channels management, etc ) is missing.
But I agree that for the 95% of the people gimp would suffice (ex. for me that I work on an RGB pipeline)!

nixCraft 🐧

I finally turned off GitHub Copilot yesterday. I’ve been using it for about a year on the ‘free for open-source maintainers’ tier. I was skeptical but didn’t want to dismiss it without a fair trial.

It has cost me more time than it has saved. It lets me type faster, which has been useful when writing tests where I’m testing a variety of permutations of an API to check error handling for all of the conditions.

I can recall three places where it has introduced bugs that took me more time to to debug than the total time saving:

The first was something that initially impressed me. I pasted the prose description of how to communicate with an Ethernet MAC into a comment and then wrote some method prototypes. It autocompleted the bodies. All very plausible looking. Only it managed to flip a bit in the MDIO read and write register commands. MDIO is basically a multiplexing system. You have two device registers exposed, one sets the command (read or write a specific internal register) and the other is the value. It got the read and write the wrong way around, so when I thought I was writing a value, I was actually reading. When I thought I was reading, I was actually seeing the value in the last register I thought I had written. It took two of us over a day to debug this. The fix was simple, but the bug was in the middle of correct-looking code. If I’d manually transcribed the command from the data sheet, I would not have got this wrong because I’d have triple checked it.

Another case it had inverted the condition in an if statement inside an error-handling path. The error handling was a rare case and was asymmetric. Hitting the if case when you wanted the else case was okay but the converse was not. Lots of debugging. I learned from this to read the generated code more carefully, but that increased cognitive load and eliminated most of the benefit. Typing code is not the bottleneck and if I have to think about what I want and then read carefully to check it really is what I want, I am slower.

Most recently, I was writing a simple binary search and insertion-deletion operations for a sorted array. I assumed that this was something that had hundreds of examples in the training data and so would be fine. It had all sorts of corner-case bugs. I eventually gave up fixing them and rewrote the code from scratch.

Last week I did some work on a remote machine where I hadn’t set up Copilot and I felt much more productive. Autocomplete was either correct or not present, so I was spending more time thinking about what to write. I don’t entirely trust this kind of subjective judgement, but it was a data point. Around the same time I wrote some code without clangd set up and that really hurt. It turns out I really rely on AST-aware completion to explore APIs. I had to look up more things in the documentation. Copilot was never good for this because it would just bullshit APIs, so something showing up in autocomplete didn’t mean it was real. This would be improved by using a feedback system to require autocomplete outputs to type check, but then they would take much longer to create (probably at least a 10x increase in LLM compute time) and wouldn’t complete fragments, so I don’t see a good path to being able to do this without tight coupling to the LSP server and possibly not even then.

Yesterday I was writing bits of the CHERIoT Programmers’ Guide and it kept autocompleting text in a different writing style, some of which was obviously plagiarised (when I’m describing precisely how to implement a specific, and not very common, lock type with a futex and the autocomplete is a paragraph of text with a lot of detail, I’m confident you don’t have more than one or two examples of that in the training set). It was distracting and annoying. I wrote much faster after turning it off.

So, after giving it a fair try, I have concluded that it is both a net decrease in productivity and probably an increase in legal liability.

Discussions I am not interested in having:

- You are holding it wrong. Using Copilot with this magic config setting / prompt tweak makes it better. At its absolute best, it was a small productivity increase, if it needs more effort to use, that will be offset.
- This other LLM is much better. I don’t care. The costs of the bullshitting far outweighed the benefits when it worked, to be better it would have to not bullshit, and that’s not something LLMs can do.
- It’s great for boilerplate! No. APIs that require every user to write the same code are broken. Fix them, don’t fill the world with more code using them that will need fixing when the APIs change.
- Don’t use LLMs for autocomplete, use them for dialogues about the code. Tried that. It’s worse than a rubber duck, which at least knows to stay silent when it doesn’t know what it’s talking about.

The one place Copilot was vaguely useful was hinting at missing abstractions (if it can autocomplete big chunks then my APIs required too much boilerplate and needed better abstractions). The place I thought it might be useful was spotting inconsistent API names and parameter orders but it was actually very bad at this (presumably because of the way it tokenises identifiers?). With a load of examples with consistent names, it would suggest things that didn't match the convention. After using three APIs that all passed the same parameters in the same order, it would suggest flipping the order for the fourth.

#GitHubCopilot #CHERIoT

I finally turned off GitHub Copilot yesterday. I’ve been using it for about a year on the ‘free for open-source maintainers’ tier. I was skeptical but didn’t want to dismiss it without a fair trial.

It has cost me more time than it has saved. It lets me type faster, which has been useful when writing tests where I’m testing a variety of permutations of an API to check error handling for all of the conditions.

Show previous comments
Svante

@david_chisnall Thank you for the report.

I must admit that it fits my expectations. (That may be due to my bias, or it may be due to my prior experience or insight.)

Len

@david_chisnall thank you for your insights! they are valuable.

Jeroen Massar

@david_chisnall the trick is that _you_ are the copilot (peer reviewer): you need to verify what the large language model copied from an unknown untrusted unverified source, or worse where it attempts to fill in blanks due to a slight variation what you wanted to what it "saw" somewhere else without understanding context. Misinformation in such systems is already bad, but blind trust makes that worse.... LLM is definitely not "intelligent", they are still working on that...

nixCraft 🐧

Google finally did it. Is it time to switch to Firefox? I believe users should be in control of what they can install and use on their desktop or laptop. There's uBlock Origin Lite, which replaces the original uBlock Origin for Chrome and similar browsers. Give it a try.

Google chrome turned of 'uBlock Origin' extension. It is time to switch to Firefox.   There's uBlock Origin Lite, which replaces the original uBlock Origin for Chrome
Show previous comments
🌀bedient Lady

@nixCraft
If you're a Vivaldi user (chromium fork) then give Zen Browser (Firefox fork) as they're both superior asthetically. Zen has the benefit of Firefox extentions.

But yeah, Firefox is probably the safest bet for usability.

Gitano

@nixCraft i use Firefox-ESR (Extended Support Release) + uBlock Origin.

I like ESR cause its rock stable, and on ublock added the experience on the web its unmatched

nixCraft 🐧

How can I be a happy chap in IT? Let me tell you about it:

* The RAID is a backup fallacy: RAID is for redundancy, NOT backups! (Seriously, people!)

* Neglecting backups: Data loss is tragic. Back up your precious files.

* Blind faith in backups: Test them! Know how long it takes to restore. Otherwise get ready for Schrödinger's backup 😉

Show previous comments
pebcak

@nixCraft noone wants backup, everyone wants restore.

Mathias

@nixCraft In my experience, the RAID-fallacy has been replaced by the cloud-fallacy in most organisations these days.

HankB

@nixCraft I got to test my backups just this week. I was working on some scripts to try to provoke a ZFS bug and was developing on the target host (a Raspberry Pi.) I had put my development directory in the pool and without much forethought, destroyed the pool. 😬 Luckily for me, part of the testing involved sending the pool to another host so I just recovered the project from the backup host. 😀

nixCraft 🐧

Hold up! Is that a SunOS?! This bad boy's been working alone for 25 years running some critical app?! Those ancient 36GB SCSI drives are practically museum artifacts! And with only 4GB of RAM? My Android phone has more memory! 😂 This thing makes a Raspberry Pi look like a supercomputer. They sure don't build 'em like they used to...I must admit, Sun Microsystems had some serious engineering and reliability back in the day. I guess it will still work for another decade or so ☺️

Show previous comments
krolden

@nixCraft yeah but the chassis were a lot cooler

Cedric ISSALY

@nixCraft i have a sun blade 1000 with 2x1.2GHz ultra SPARC 3. I have no idea about performance comparison with a rpi. Do you have some clue?

keith

@nixCraft wait... 36GB drives aren't that old! i mean, anything measured in GB isn't that old, damnit!

nixCraft 🐧

I think all developers, IT pros and anyone in compsci are entitled to free coffee. ☕️

Show previous comments
Chris

@nixCraft bean water goes in, code comes out, you can't explain that!

Amélie Lilith Krejčí :vt:

@nixCraft working support for company that franchises Starbucks is literally this. yes, I am enjoying it!

nixCraft 🐧

Being an experienced dev or IT person does not give you permission to be rude to *your colleagues*

Show previous comments
Juanchi @ somewhere

@nixCraft THIS! I don't understand why you chose to be rude instead of being nice to people. Bro, you only have extensive knowledge about computers and stuff...

Tony Salerno

@nixCraft
It does allow you to invoke the you can ask each question once rule. Third time, same question requires rudeness as part of the response.

b00tl00ps

@nixCraft Ah, but how else will they exercise their perceived superiority? Clearly their life is full of joy and fulfilment, they feel the need to assault others with their presence.

Had a supervisor with this character "trait". In 3 years I learned *nothing* from him directly, other than to google many pages deep before invoking. Excellent professional relationships with all other colleagues (who nodded knowingly, when stories began trading).

Go Up