News for hackers. Stuff that matters.

jbergknoff

> 10. The FOSS axiom "More Eyes On The Code" works, but only if the "eyes" are educated.

One thing that could help with this is if somebody points an LLM at all these foundational repositories, prompted with "does this code change introduce any security issues?".

Re:The Time Julius Caesar Was Captured by Pirates on Tuesday December 05, 2023 @10:23AM (#38532021)
Yeah, I found it very interesting how McCullough (Masters of Rome) idolizes Caesar and holds Cicero in contempt, and Harris is exactly the opposite.
Re:Microwaves Piss Me Off on Thursday March 23, 2023 @11:51PM (#35284896)
AM/PM is bad, but I have a GE microwave which requires you to also set _the date_ when you're setting the clock. How could somebody think that was a good idea? :)
Re:GitHub Packages Is Down on Wednesday March 01, 2023 @09:02AM (#34982472)
Packages had an incident two days ago, also: https://www.githubstatus.com/incidents/sn4m3hkqr4vz. I noticed it when a Terraform provider download was failing, citing a 404 from objects.githubusercontent.com.
Re:Minimum Viable Git for Trunk-Based Development on Wednesday November 30, 2022 @12:41PM (#33804396)
> The easiest practice to implement for peak Git efficiency is to stick to a subset of commands

This has been my experience as well.

Great article, thanks! I've been using essentially this same subset of commands for many years, and it's worked extremely well for me: does everything I need/my team needs, and avoids complication. I'm glad to have this as a reference I can point people to when they ask for git advice.

Re:Ssss: Shamir's Secret Sharing Scheme on Thursday October 27, 2022 @10:53AM (#33358454)
Yes, there are threshold cryptography schemes with "distributed key generation" [1] in which the parties end up holding shares but the full secret is never known to any party. Then, to your point about "the only time they key was known was when the parties reached quorum after the fact": in these schemes, some threshold of the parties can cooperate to compute a function of the secret (e.g. a signature, or a ciphertext) without any of them ever knowing the secret.

FROST is one example of such a threshold scheme, for computing Schnorr signatures: https://eprint.iacr.org/2020/852.pdf

[1] https://en.wikipedia.org/wiki/Distributed_key_generation

Re:Take Advantage of Git Rebase on Thursday October 06, 2022 @10:43AM (#33108829)
If I've already reviewed a PR and the author makes further changes, I definitely prefer to review an add-on commit. If the history is rewritten/rebased, then IME the entire PR needs to be re-reviewed from scratch. If we're talking about a <10 line change, then, by all means, rebase to your heart's content. With anything more complicated than that, rebasing a branch that's already been looked at can be disruptive and I'd strongly recommend against it (though squash-and-merge after review is fantastic).
Re:Subuser: Docker as Desktop Programs on Friday December 25, 2020 @11:32AM (#25537345)
I'm a big fan of using containers to distribute and run tools. It's an underappreciated use case. I wrote about its benefits (and drawbacks) a few months ago: https://jonathan.bergknoff.com/journal/run-more-stuff-in-doc....

Subuser looks interesting, nice work! I love to see progress in this space.

Re:Big Sur 11.1 External Display Issues on Thursday December 24, 2020 @07:01PM (#25532845)
I recently got an external monitor for my work Macbook. I plugged it in and soon found out that closing the laptop doesn't put it to sleep anymore. I can kind of see why somebody would want this behavior in some situations. I can't at all see why this would be the default, or why there would be no way to toggle the behavior.

> I continue to be disappointed with Apple's desktop experience.

Same here.

Re:Self-publishing and the 2nd edition of Ansible for DevOps on Thursday August 13, 2020 @12:36PM (#24145235)
Great work on the book, and thank you for writing about the self-publishing process [1]. I'm in the process of writing a book, and your writing has addressed several things that have been on my mind.

[1] Especially https://www.jeffgeerling.com/blog/2016/self-publish-dont-wri...

Thanks for that feedback! I'll update the readme.
Hi, I'm the author. Thanks for taking a look. This is basically a tool to help manage a "Dockerfile" repo (along the lines of https://github.com/jessfraz/dockerfiles), where you build any tools you want into images that you control. This can be really useful for personal use or within a company.

Why build tools into Docker images? Love it or hate it, there are many senses in which Docker is currently the best medium that we have for distributing and running dev tools. Here's an article making that argument: https://jonathan.bergknoff.com/journal/run-more-stuff-in-doc....

Re:GitHub was down again on Wednesday July 15, 2020 @11:50AM (#23846986)
Yeah, I'm seeing the same. The branch reflects the new commit, but the PR open for that branch does not show it.
Re:GitHub Super Linter: one linter to rule them all on Thursday June 18, 2020 @01:44PM (#23565579)
On the contrary: Docker is currently the best way, bar none, of distributing tools like this one to developers. Kudos to the Super Linter developers for doing this right.

I wrote an article a while ago arguing this point: https://jonathan.bergknoff.com/journal/run-more-stuff-in-doc...

Re:Woodworking for Engineers on Wednesday June 10, 2020 @10:51PM (#23484771)
Indeed. I went through it all about three years ago and learned a ton (starting from essentially "I have a table saw but I don't know what the miter slots are for").

For people interested in this stuff who haven't seen Next Level Carpentry, I highly recommend it: https://www.youtube.com/channel/UCXRNHTVpEdhz9BIvomETGiQ.

Re:Growing Independence on Tuesday June 09, 2020 @02:38PM (#23469372)
Many great examples here, and my wife and I do many of the same things, but it's not always this easy. If your child is receptive to these things, like the children in the article, that's great. Our younger one is receptive and our older one is getting there as he ages. If we judged ourselves as parents based on just the younger, we'd think we were amazing parents making all the right choices. If we judged ourselves just on the older, we'd think we were completely ineffective at, e.g., fostering independence.

I just hope nobody's reading this and feeling bad about their parenting. The personality of the child is critical.

Re:Hypermodern Python on Thursday May 28, 2020 @10:41AM (#23337860)
In other words, it becomes the concern of the person shipping the code, rather than the concern of the person trying to run the code. That's exactly how it should be.
Re:Where coronavirus hospitalizations are falling on Sunday May 17, 2020 @01:58PM (#23213770)
> https://covid19.healthdata.org/united-states-of-america/texa...

Am I missing something? It doesn't look like this has any data on hospitalizations. The graphs are all based on "projected" data.

I have a really hard time parsing `unless`. Whenever I encounter it in Ruby or CoffeeScript code, it takes me 10-30 seconds to stop and understand what's happening with the code.

Generally, postfix conditionals are a bad idea because they are garden-path sentences [1] by design.

Glad you find them valuable, but IMO they epitomize what many other comments in this thread have said about CoffeeScript's poor readability.

[1] https://en.wikipedia.org/wiki/Garden-path_sentence

Re:Doing Python Configuration Right (2019) on Monday April 27, 2020 @01:24PM (#22997866)
If I create a file in my project named requests.py, then a sibling file's `import requests` starts importing that file, instead of the library. Maybe name conflicts are "basically fixed" in the sense that there are ways to avoid them, but there is still surprising and magical (in the worse possible sense) behavior to trip over.

> Regarding hyphens and such in package names pretty much every language has restrictions on identifier names.

This particular restriction is an artifact of the bad design of treating paths on disk as special language tokens instead of string literals.

Re:Controlling My A/C with a Gameboy on Monday April 27, 2020 @01:15PM (#22997776)
This is amazing! I'd be interested in more details about capturing the IR signal, both by the invasive method and the "operate an LED in reverse" method.

At one point I thought about trying to do something similar with my old garage door opener, but ended up not pursuing it.

Re:Doing Python Configuration Right (2019) on Monday April 27, 2020 @11:46AM (#22996946)
I think anything that treats paths on disks/library names as string literals would be workable. So, for instance, the stuff from the importlib standard library would probably be good enough if it was a top level/global construct that worked with quoted strings.

> from './app/utils.py' import numbers

Re:Doing Python Configuration Right (2019) on Monday April 27, 2020 @10:18AM (#22996027)
> One of my favorite Python features is the way that the files and directories your application is made of map one-to-one with how you import and use them in code.

Funny to see this stated explicitly in this way. In my opinion, this is one of Python's biggest flaws (I'm a big fan of everything but the module system). Paths to files on disk should be treated as string literals, not magic unquoted strings that look like they're language keywords.

You can easily end up in situations where a directory in your project's tree has a name conflict with some library, and this causes issues, which is mind-bogglingly bad design (incidentally: also not a one-to-one map). If you don't live and breathe Python, and accidentally put a hyphen in a filename, God help you.

Older »