skysight-inc/HackerNews huggingface dataset:
96% efficiency sounds great on paper for synchronous converters, but as SBC current draw just keeps increasing and BLDC motors can run at higher voltages it starts to create a major heating problem when you have to supply both from the same source.

Something like 12V down to 5V at 5A creates a managable amount of heat, but going higher, 20V, 30V on the battery side and things start to melt all around from heat losses from that large a drop. In some cases I've had to resort to using cascaded rails, stepping first down to 24, then 24 to 12 and then 12 to 5 just to keep the heating spread between different buck converters even if it multiplies losses. Would love to hear what the expert solution is to this that isn't just a massive heatsink.
Oh that looks like a nice product ! And the author’s change in reasoning is interesting to read.

At the end of the day, it’s just the internet. It’s full of cool people but also full of toxic people and you have the right to just ignore them.

Working on an open source contribution without discussing about it beforehand and being angry at it not being merged always have been a rude and toxic behavior. And like "irl", you have the right, if not the duty for your own mental health, to ignore toxic people.

And I don’t mean that it’s rude to create a pull request without prior discussion, it’s ok and sometimes faster for everyone, but when you do this, you have to remember that maintainer(s) doesn’t owe you a merge and that if it’s just closed with an explanation, it’s life, even if you don’t agree with the explanation. Also if your PR was 10 days of work, that’s your own problem.
We get it, you vape.

The "performance" of the language is going to have approximately zero effect once a request has to schlep over to the database in a 7ms round-trip.

There's a wide field of applications where language performance has approximately zero effect on application performance. I have 15ms of latency, what do I care if your web app is written in Rust?
https://www.nasa.gov/general/swarming-proxima-centauri/
A IB Diploma Physics textbook I had used a negative one exponent instead of a division symbol in units. This is not normal right?
From the FAQs of https://burnernote.com

"
How does this product make money?
It doesn't. Making money isn't the point of this product.
"

Usually the case that people set out with lofty ambitions of being above the money, but this changes when something gets popular.
Flux LoRA Style Image to Image Composite Comfy-UI Workflow
Spectral Reflectance Newsletter #89
unix tried that in the 70s, ms-dos batch files tried it in the 80s. turns out offering a builtin programming language is good actually
You’re calling them “new”, not me.

Besides, if you want to go down that line of thinking then nothing in technology is truly original. We all stand of the shoulders of giants.
I would use that argument if I were an oppressive government that was troubled by journalists using Tor to expose me. It's only 1% right? Think of the children.

Quoth Fidel Castro: ¿Armas para qué? (What do you need guns for?)

Guess what he did after he took the people's guns
Sounds like relay contacts stuck closed.
> Is there a reason to believe this is happening?

I don't know what counts as a "reason to believe", but they have the data, users have accepted a TOS that gives Facebook right to use all data, and all things equal, the more you know about a picture, the better training you can do with it.

So for me its more a question of "is there a reason to believe that they are not supplementing photos with other user data"?
compare Lasalle: « Tout hussard qui n’est pas mort à trente ans est un jean-foutre. »

[he didn't live with as much hypocrisy as Pete Townshend (currently 79), for Lasalle only made it to 34]
>better

Bullshit. I've seen blind idiots kids pasting Solaris commands into Linux servers, without having any clue of what were they doing.

Kids are going to be really screwed when the AI output converges into more Markov-chains like bullshit as it's being self-feeding with it's own output, creating something like a big but pompous Megahal/Hailo clone.

If any, we the older Millenials are trained to do hard tasks with just the manuals sitting on a table.
The rest will be clueless.
> Tapes are fun. You can fit a petabyte of data in a bankers box!

Yes, though those ultra-thin M.2 NVMe drives could probably top that now.

> Do we have a drive that can read this tape?

Don't let this be a problem in the first place: buy 4 tape drives and keep 2 of them in your cold/offsite/airgapped storage site (2 in case 1 fails, so you can use the remaining drive to transfer everything to a newer format).

> Do we have server we can connect it to?

Significant hardware should not (and is not) necessary: the LTO-7/8/9 drives I see for sale right now seem to be using either USB 3.0, Thunderbolt, or SAS connections; USB and Thunderbolt can be handled by any computer you can find at a PC recycler today; while any old desktop can handle SAS with a $80 HBA card.

> Do we have storage we can extract it to? (go ask your internal IT team for 10TB of drivespace...)

10TB isn't a good example (case-in-point: I have a 3-year-old stack of unused 12TB WD drives less than 3 feet away from me).

That said, if you're enterprise-y enough for a $4000 LTO-9 drive, then you probably also have a SAN that's chock full of drives, so being able to provision a 10TB+ LUN should be implicit.

> What program did we create this tape with? Backup Exec, Veritas, ArcServe, SureStore

Ideally, none of those; instead, good ol' Perl and `dd`.

> You have the encryption keys, right?

I don't encrypt my backups to avoid this problem. My old data archives have little exploitable value for any potential attacker; and I imagine I'd store backup tapes this important in a fireproof safe in my parents' house or something. I'd only encrypt the entire tape if the tape were to leave my custody.

I appreciate that this is not for everyone, and it's probably illegal for some people/orgs to not encrypt backups too anyway (HIPAA, etc).

> How much of this data already exists on the previous months backup?

Incremental/Differential backups are still a thing.

> Who's going to pay for the storage to move it to Glacier/etc?

No-one should. Cold data backups should/must always be in the custody of a designated responsible officer of the company.

BUUUT, I guess there's nothing wrong with storing an encrypted copy in Cloud storage (as in S3/Glacier/AzureBlobs - not OneDrive...). I actually do this right now thanks to the smooth and painless integration in my Synology NAS. It costs me about $15/mo to store all these TBs in S3.

> How long is it going to take to upload?

Consider that it's 2024 - a company with LTO-9 and SAN is probably going to have a metro-ethernet IP connection at 10Gbps or even faster. At home I have a 10Gbps symmetric connection from Ziply (it's $300/mo and they give you an SFP module, which I put into my Ubiquiti UDM): so the limiting factor here is not my upload speed, but my drive read speed (LTO-9 drives seem to read at about 2-3Gbps raw/uncompressed?)
We figured out that text is how to interact best. It can be piped between processes, checked into source control, tested, indexed & searched, compressed, archived, logged and diffed.

It has accessibility benefits for those using screen-readers.

It allows for interoperability: if a browser only has to display HTML, that HTML could have been produced by a service built in any programming language. That service in turn could send SQL text to database systems built by different companies.

It allows for automation. The moment a process is controlled by a user clicking a button is the moment you can no longer automate or throw that action into a loop. Docker vs. InstallShield Wizard.

As far as graphical testing goes, I tried selenium/webdriver (admittedly a long time ago now) and it was a dumpster fire.

I think it's a mistake to conflate older with worse. The terminal continuing to last is a sign that it's useful, not that people are stubbornly sticking to it.
Here it is either KB or KiB, depending on the meaning. IRC, KB is the only exception from the rule.
What happened to the police, did they resign their watchmen role?
Tried the app, it's impressive already
> deserve to be capitalized.

Why is that?
I've been on the "Internet" since the mid-80's, when I was lucky to gain my very first shell account on an Internet-connected system at the electronics assembly line where I apprenticed as a junior programmer, building test software and eventually the DOS driver for a locally designed and produced modem. I wrote a lot of software on that shell account, relying on access to USENET and my email address for a lot of the research and hand-holding that booted me from junior to somewhat competent developer.

During the 90's, I set up and maintained my own Linux machine at home, pushing my 28.8k modem connection into service to put my little 486 on the Internet as a dedicated host, running Majordomo and mailman list-servs devoted to topics I was interested in - mostly music-making technology and the like.

Those listservs (and also, of course, USENET) gave me access to a vast and awesome array of folks around the world, some of whom were my early guru's, some of whom became my nemeses, but most of whom were a part of a worldwide community of folks I knew I could rely on for an entertaining and educational hour or two, each day, of reading. (Some of those listservs still exist, but have gone into comatose, dormant state with the last decades' rise of social media..)

Without question, I feel that the quality of the community is directly related to the involvement of that community in the methods used by the community to sustain itself - as the "AOL'ization" of the Internet occurred, the quality when way, way down. Yes, I was there that fateful September when the Internet was invaded by the hoards of unwashed masses. I still feel that phenomenon was a turning point in social community - it went from being a community, to a media.

I also still think there is a place for these kinds of locally-built and run communities. I often wonder how viable it would be for me to set up and run another little box, locally, and invite some friends to join me on it, discussing whatever we want, through a shell-only account, or at the very least, using only email/listservs for distribution ... I think there's still a lot of room for that style of community building, personally, since: technology doesn't get old - only its users do.
An engineer who struggles to write clearly is one I would hope not to hire. Programming is first and foremost a problem discovery job, then a writing job, then math and logic.

No matter how efficient or eloquent, if you solve the wrong problem, you’re doing no one any good.

Solve the right problem efficiently, but in a way no others can understand, and you’ll flounder in a team. You will also never be able to collaborate or make larger work move faster.

Correct problem, clear writing, then logic.
It blocks pretty much all of them for me. I almost never see a cookie banner, to the point I forget that they exist, just like YouTube ads.

I sometimes forget how bad the unfiltered internet is.
I did say "often won't know the difference" and didn't make an absolutist statement. And your comment basic confirms what I said, those who care care deeply and it's an issue they'll walk away from. But as I said, it's a very small niche.
The biggest problem with the latency of these new tools isn’t the tools themselves but rather the huge amount back-and-forth chatter that happens with SSH.

If Bash works then these should work too. And if Bash doesn’t work then you’ll need something that supports local echo like Mosh instead of SSH.
I'm a theoretical physicist and I swear electrical stuff is so hard to understand! I have a lot of respect for electrical engineers ^^' (and electricians)
Yeah that's the normal way in physics in my experience, certainly from undergrad level up.
perfectly normal in physics books, maybe not usual in high school, but uni-level books all do this.
Amazing summary of the mental model of the interdiff review style, and the problems with GitHub's approach to code review. Thank you!

One thing you don't touch upon (yet) is that the diff soup may lead people to prefer the squash merge strategy, to get rid of the "noise" of the fixup commits, which throws away the "good" initial 3 atomic commits as well.

With interdiff review style you're left with the initial 3 commits, and the choice of whether to land them individually or squash them is based entirely on the commits themselves and how atomic they really are.
Exactly. Consent is opt-in, not opt-out. That's the law.

If a website does not respect that, it probably won't respect your choices either, so you might as well block the cookie banner and all tracking scripts.
It would be like thermal burns but deeper. The heating is more diffuse and deeper than traditional cooking methods so I'd imagine if you did get a burn, it would go deeper into the tissue than you might expect.
Changed? I never have seen the captial L for liter anywhere from daily use to scientific papers. It is always used in small caps.
If you don't have significant ownership of the company you're a worker, no?
I've seen so many times the same situation - brilliant junior comes, after reading it all about design patterns and taking inspiration in ie internals of Spring framework, builds a small (or big) cathedral, optimizing for designs that normally will never come in future.

Layers and layers of abstractions, matching various situations that happen during initial implementation, everybody seems happy, business doesn't care about internals. Then brilliant junior inevitably leaves for greener pastures since it becomes boring, or is reassigned elsewhere. Every single other, even more experienced dev, struggles with maintaining, changing and fixing that part. But it became so embedded in overall architecture thus nobody has guts to rip it out, and business rarely wants to finance internal refactorings.

So this burden than stays around, mothballing problems, making projects take longer, unexpected issues keep happening since everybody else has hard time keeping good mental model of that part with all its implications. Also nobody wants to admit that design is just overengineered crap, people have ego issues and feeling inferior which is pretty toxic and immature behavior, but I've seen it also in older folks as well.

I had discussions around this exact topic with various very senior devs over my 20 years in business. Its always the same story - they see the code, are in awe of how such complex and on first sight elegant code can be done so quickly and respect the author uncritically. But every single time, down the line, it becomes a nightmare and source of massive pain.

Thats why I call them brilliant juniors, nothing more, seniority also comes in form of 'should we do it like that' instead of 'can we do it like that'. Focusing on 'having fun', 'being a code ninja' or whatever little ego game they need to play with themselves to not get bored. Guess what - business who pays your salary loves boring, predictable, measurable, estimable, and couldn't care less about some internal issues of its employees. One of the reasons C suites look down on IT is exactly these geeks who should know better, or be coached/managed better.

Or yeah, just don't optimize for problems you are not experiencing, in 99% of the cases, for 99% of the apps.
> writes comments that explain why the code isn't written in another way."

Exactly! I have written code that required comments five times as long as the code itself to defend the code against well meaning refactoring by people who did not understand the code, the domain, or the care needed to handle large dynamic ranges.

I have also written substantial functions with no comments at all because it was possible and practical to name the function and all the variables so that the meaning was clear.
What does it matter where you invest in that case?
> real or imagined needs for survival

You're right, and I think the gap between real and imagined needs has
become a chasm. People today live in a fantasy world, imagined needs,
imagined harms and enemies, imagined opportunities...

It's not necessities but the self-created fantasies that dominate our
thoughts. The ordinary, well fed, comfortable life is just not good
enough any more. Simply having an ordinary, successful business that
helps the world is not enough.

So people pay the price; living in abject existential fear of
completely unreal things - of losing their imaginary gains, like
getting banned from Facebook or Twitter, or losing at some online game
like the "stock market". They lie awake worrying about a number in a
computer that represents their wealth - not their actual wealth as
capability, as a mind and body.

That is what makes us into selfish and insecure people who create
negative externalities on the world we live in instead of making it
better. Because it's impossible to get lasting satisfaction from these
things. Too many "business people" I meet these days are utterly
trapped in that unreality.
Twitter.com -> xcancel.com
Youtube.com -> invidio.us
Reddit -> teddit.net or gopher://gopherddit.com

And so on.
A good example of "pay more, get less" being actually nice.

Porsche does this with special stripped-out models that cost more (less unnecessary stuff, less weight).

Similar thing here, "simplify and add lightness".
Hey. Creator and maintainer of Open SaaS here.

There may be some config steps, but everything is well documented https://docs.opensaas.sh/, and we have simple commands like `wasp db start` to get a local postgres instance running and connected to your app.

Here's a video walkthrough on how to get started: https://x.com/hot_town/status/1833449116145267183

If you have any questions, feel free to jump into our discord and we'll be happy to help: https://discord.gg/aCamt5wCpS
kph drives me up the walls.
Show HN: I made a Slack app to easily bulk upload and optimize emojis
Ask HN: Being Concrete in Tests
I remember reading in a book that in tests, you generally want to be concrete, not abstract. For example, you'd like to do:

assert(response.status == 401)
assert(error == "param 'foo' is invalid")

instead of:

assert(response.status == Http.StatusUnauthorized)
assert(error == HttpError.InvalidParameter("foo"))

Can anyone point me to resources (books, posts, tweets, whatever) that better illustrate this and justify it?
> we will only see their results when smart missiles start raining on our heads.

I'll remember to say that whenever anyone wants to apply any law or regulation to anything I'm doing
We shouldn't be held hostage, but the evolution of interactive CLIs is GUIs and the evolution of batch CLIs is scripting languages, and we don't need to render the CLI concept meaningless by integrating both. I've seen a terminal emulator that supported pixel graphics - what's the point! Just make a GUI using your favorite framebuffer library!

A TUI is not a CLI, either.
I built a native all-in-one AI client called BoltAI[0]

It’s one of the first AI clients I think. I’ve been working on it for 16 months and shipped more than 100 releases.

It started with the idea of invoking an LLM within the Apple Notes app. I hate going back-and-forth between the Notes app and ChatGPT web app.

So I built the “AI inline” feature where I can trigger a keyboard shortcut and it would send the prompt to OpenAI and get the answer back.

But this is quite advanced, not many users can use it.

So later I added the full Chat UI.

I don’t want to charge a subscription and manage AI tokens so I sell perpetual licenses with 1 year of update. Users bring their own API keys.

As an all-in-one client, it unlocks some interesting features that I didn’t expect in the beginning: the ability to switch between multiple AI services and models.

This allows me to use Web Browsing with Claude, for example.

I later added support for Function Calling and this has unlocked many capabilities: edit video with ffmpeg plugin (give instructions to the LLM and it would execute the ffmpeg command locally), search the web using advanced search engine such as Kagi, WolframAlpha, Analyze documents and source code similarly to Claude Project…

And finally I added the AI Command feature where you can prompt directly with the highlighted text. Imagine you’re reading an article and wanted to list key takeaways, you can press a keyboard shortcut, choose the command and it would show you a quick answer. You can build any command you want: from summarization to translation or grammar fix…

I also built another free app called ShotSolve[1]. It allows you to take a screenshot with a keyboard shortcut and quickly analyze it with an LLM.

During building BoltAI, a customer asked for the ability to analyze PDF documents so I decided to build another app for that use case called PDF Pals[2]

These apps allow me to quit my job and pursue solopreneurship full time.

[0]: https://boltai.com

[1]: https://shotsolve.com

[2]: https://pdfpals.com
I really like the author’s listing of advantages open source provides that you just don’t get with closed source, it aligns very closely with my point of view. This is great reference material for my little archive of “read this to understand my point of view”.

I’m also skeptical to what GitHub’s social coding concept has done to maintainership in general. There are projects that don’t need frequent updates, and projects that benefit from being the vision of a single person. Critiquing maintainers for refusing to let others in puts unnecessary pressure on people who just want to share something they’ve made with others.
It's a bit cumbersome, and I think only recently you can make longer dependency chains. It's certainly not automated away with just git commands, but maybe there there is a Gitlab API way. The only way I know is to "edit" the PR (or MR in Gitlab speak) and paste the URL into some "depends on" field, then save.

There are certainly other problems as well, like you might have an MR 1 from feature1 to master, and MR 2 from feature2 to master which in turn depends on MR 1. Most likely your feature2 branch is off your feature1 branch, so it contains feature1's changes when compared to master, and that's what is shown in the Gitlab review UI. This makes reviewing MR 2's changes in parallel to MR 1 frankly impossible.

Having said that, I still think that this would be the right way to organize this kind of work, however Gitlab's execution is not great, unfortunately. Any of this is probably impossible in Github too. I wonder if Gerrit gets this right, I have no experience with it.

edit:

One interesting point of MR dependencies in Gitlab is that I think you can depend on MRs from other projects. This is sometimes useful if you have dependent changes across projects.
Always the same story... A few years ago a big left French newspaper (Libération) always pushing for "diversity" published a photo of their staff, which was like 98-
100% white.
Hi everyone,

I’m excited to share my new Slack app, Emojify.

What it does:

- Bulk Upload Emojis: Easily upload multiple emojis to your Slack org in one go.
- Optimize Emojis: Automatically optimize emojis for better performance and consistency.

Check it out: https://emojify.janez.tech/
Yeah, this is the only one that seems flat out wrong. When I'm on a bridge, I absolutely want to see "The bridge can hold up 3000 kg", NOT "The bridge can hold up 29 kN". Partly because "holding up" (as opposed to, say, withstanding) force sounds nonsensical, but primarily because knowing the maximum load in kg is much more useful.
I use Vivaldi browser and this does it very cleanly for me. I can see the tabs that are open on my phone, my laptop, or my desktop from the other devices.

I can choose to open one tab from there or all of them.

Works very well for me.
Well, it's also known that the Irish did so; their word for this sort of vessel was (is?) _currach_ or _curragh_.
You are exactly correct, and I'll die on that hill alongside you.
I only see this from english speaking people who are used to mph