News for hackers. Stuff that matters.

fizlebit

Re:The internet discovers TLA+. Now what? on Sunday September 27, 2026 @04:56AM (#49864719)
Time to discover communicating sequential processes instead :P
Re:Go Concurrency Distilled on Sunday September 27, 2026 @04:54AM (#49864704)
One thing I always found more work than I would expect is when you have a graph of operations, think a Makefile, but a bit dynamic. For this model completable futures and executors seem to work well (provided the graphs is smallish), but golang is (or perhaps before generics) just was difficult.
Re:Everyone Should Build Their Own Network Stack on Sunday August 30, 2026 @06:24PM (#49503435)
lols, what about the sendfile and other vulnerabilities that lasted decades. Linux just does not have a secure mentality, it has a hacker mentality, maybe acceptable for a lot of uses, but it is what it is.
I think I kept skipping each 5 minutes until I got to something interesting and then was at the end of the video. What is his point?
Re:Creepy Crawlies on Sunday August 30, 2026 @06:01PM (#49503304)
I wonder if we're back to peer to peer networks with proof of useful work (e.g. serving read requests) vs proof of wasted work.
yeah it is so mad:

TITLE=$(echo '${{ github.event.issue.title }}' | sed 's/"/\\"/g' | sed "s/'/\\\'/g")

Even in ruby it would have been something like

TITLE=shell_escape(github.event.issue.title)

where shell_escape could at least have unit tests. I don't know anything about github actions, but anything that takes user input needs to be processed with a language that uses static typing I believe to help ensure that the user input doesn't get into expressions given to other programs, shell, sql, or whatever.

Unix was just not made for this sort of thing. It was made for in-house people to write patent applications.

Most customer value is in trust. If the LLM has pretty good judgement and easy to configure sandbox then fewer bad experiences by customers equals better trust. So it is clearly a dimension LLM providers are completing on. I don't want to have to read all the bash output my LLM generates, I want it to mostly to the right thing and be sandboxed so when it does the wrong thing the blast radius is limited.
How is it going to work for corporate customers. What if one us employee writes claude output into a ticket, can that be read by a non us citizen employee? What about paraphrased?
Re:Google Plans to Invest Up to $40B in Anthropic on Saturday April 25, 2026 @12:20PM (#47902582)
The big bet here is that anthropic stays ahead of the curve and is the goto tool for businesses. The risk is disruption to that leader position, or that it can't sell all those tokens because the value/cost ratio is too lower for consumers of them. I suspect that disruption is the bigger risk because the tokens in my experience are valuable, so as they innovate we're betting the value of the tokens goes up and the cost comes down.
Re:I am building a cloud on Thursday April 23, 2026 @10:06PM (#47884654)
I'd like write program / run program / debug program to be as easy as it is in roblox. It isn't that easy though, the set of things you need to do it well is extensive. I wouldn't be averse to a new platform, one in which all io is over highly performant queues, but the moras of existing software tied to unix is large, just look at compilers and all the child processes they launch. It was always shims and it will always be shims.
Re:OpenAI Livestream: ChatGPT Images 2.0 on Wednesday April 22, 2026 @01:35AM (#47859489)
Scrolling through those images it just feels like intellectual theft on a massive scale. The only place I think you're going to get genuinely new ideas is from humans. Whether those humans use AI or not I don't care, but the repetitive slop of AI copying the creative output of humans I don't find that interesting. Call me a curmudgeon. I guess humans also create a lot of derivative slop even without AI assistance. If this leads somehow to nicer looking user interfaces and architecture maybe that is good thing. There are a lot of ugly websites, buildings and products.
I think if your university doesn't do in person exams with pen and paper then the degrees it hands out are not much evidence of anything.

If you're not interested in learning the course content, then what are you doing there? Pretty expensive waste of time.

I very fondly recall many of the course I did at university. The exams were a helpful motivating factor even for the interesting courses.

Even with anyhow there is a lot of boilerplate it seems to me dealing with crates that don’t use it. I haven’t tried snafu but its name does not inspire confidence.

Clanker (ai assistant) also love to unwrap and if you don’t catch them you have an abort waiting for you.

Re:Threat Actors Expand Abuse of Microsoft Visual Studio Code on Thursday January 22, 2026 @12:50AM (#46715750)
I do feel like better application sandboxing is needed but so much open source software is built on the Unix abstraction meaning you have to run in a container, but macOS doesn’t have containers as far as I can see, and containers themselves are a bit of a poor abstraction, although maybe the best we can do with Unix at the core. I think something closer to Roblox studio would be cool where when you open an environment stuff just spins up in the background, but there is a good debugger, logging, developer ide, good rendering, eg 3d graphics, separate projects are separate, and when you spin down a game (read app or project) everything spins down.
Looks a bit like Rust. My peeve with Rust is that it makes error handling too much donkey work. In a large class of programs you just care that something failed and you want a good description of that thing:

  context("Loading configuration from {file}")
Then you get a useful error message by unfolding all the errors at some point in the program that is makes sense to talk to a human, e.g. logs, rpc error etc.

Failed: Loading configuration from .config because: couldn't open file .config because: file .config does not exist.

It shouldn't be harder than a context command in functions. But somehow Rust conspires to require all this error type conversion and question marks. It it is all just a big uncomfortable donkey game, especially when you have nested closures forced to return errors of a specific type.

I think that vibe coding now with anthropic tools and the latest model means that the cost of writing integration tests is significantly reduced. When the company ships a large product that has components from many teams, there is still a role for QA engineers who run nightly tests and chase teams to help diagnose the issue when there is an issue found. If you don't have such a central team publishing golden versions, then everybody is chasing the same bug. Ideally the integration tests are part of the change acceptance flow, but low frequency bugs (occur maybe 1 in 100 test runs) can still sneak through.
Re:Horses: AI progress is steady. Human equivalence is sudden on Monday December 08, 2025 @08:55PM (#46200396)
yeah but machines don't produce horseshit, or do they? (said in the style of Vsauce)
Re:More Than DNS: Learnings from the 14 hour AWS outage on Wednesday October 29, 2025 @08:31PM (#45754981)
It looks from the public writeup that the thing programming the DNS servers didn't acquire a lease on the server to prevent concurrent access to the same record set. I'd love to see the internal details on that COE.

I think when there is an extended outage it exposes the shortcuts. If you have 100 systems, and one or two can't start fast from zero, and they're required to get back to running smoothly, well you're going to have a longer outage. How would you deal with that, you'd uniformly across your teams subject them to start from zero testing. I suspect though that many teams are staring down a scaling bottleneck, or at least were for much of Amazon's life and so scaling issues (how do we handle 10x usage growth in the next year and half, which are the soft spots that will break) trump cold start testing. Then you get a cold start event with that last one being 5 years ago and 1 or 2 out of your 100 teams falls over and it takes multiple hours all hands on deck to get it to start.

Re:Peasant Railgun on Thursday July 03, 2025 @05:14PM (#44459251)
I actually prefer a game where the rules mostly come from the DM. I think it is better if there is no players handbook. The characters develop along their story arc, e.g. at some point you character acquires new powers, e.g. your character has been spending a lot of time developing new combat moves, they kind of level up and now the DM explains a new mechanic. Your character has become adept at disarming opponents and now gets such and such a bonus to attempt a disarm.

This is a lot to place on the DM, but I like the anarchy of a system like dungeon crawler classic. You expect some of your characters to die, e.g. in one adventure my character in a last ditch effort to save himself drank a potion of unknown origin, that potion turned him into a mithral statue. It was a fitting end to his short but eventful life.

Another character played by a different player managed through a long process involving books and negociations with his patron to construct a demonic sentient flying dog through whom he could cast spells and see.

This kind of exploration I think encourages players to see their characters much more as characters than machines to be min maxed and it is way more fun.

Give the DM total control to decide the dice roles that determine the outcome of the shenanigans. You try to hire an army of peasants you're going to be dealing with appointing sergeants, logistics, mutany, desertion all before you try to line them up to throw a ladder at some dude, which in the end is probably like a 1d20 >= ac for a chance of 1d4 damage, with of course crit tables, where on a critical success the dude might be tangled up in the ladder and fall over or something.

Re:Reinvent the Wheel on Sunday May 25, 2025 @03:18AM (#44086153)
People say don't reinvent the wheel usually in a business context because writing from scratch is usually a lot more work than using existing technologies. Sure reusing technologies is also a lot more work than you would expect because most things suck (to different degrees), but so will your newly minted wheel. Only after a lot of hard lessons will it suck less, if at all.

That said there are also contexts in which the existing system that was built sucks so bad that rewriting it usually a boon, even if the new wheel sucks, it sucks less from the start.

You at a minimum should engage with the existing wheels and their users to find the ways in which they do and don't work.

In your own time I think it is great to tinker, pull apart, assemble your own things. Every Jedi makes her own light saber right?

Me no like inconsistent use of spaces.

            x += labelW+20;
            hDescEdit = createModernEdit(hwnd, x, y, editW, btnH, ID_DESC_EDIT);
            x += editW + gap;
What no clang-format or equiv in 1990?
Re:DOJ will push Google to sell off Chrome on Tuesday November 19, 2024 @10:40AM (#42184684)
Am I alone in thinking that all the stuff I get for free (in exchange for some amount of targeted advertising) from Google is pretty cool and that these attempts to break up big tech are going to be very bad for consumers and the economy and is just punishing successful companies that produce products that customers want to use. You all can use mosaic/edge if you want to.
Re:How 'Factorio' Seduced Silicon Valley on Sunday October 27, 2024 @01:15PM (#41964041)
Games are much easier than real work and provide more consistent dopamine hits with their graphics, sound effects and feeling of progression. Factorio while fun is a long way from real work.
Re:What Do You Visualize While Programming? on Friday October 18, 2024 @07:05PM (#41884298)
There seem to be a bunch of folks for whom shaking the legs is an important part of the process. Can be a bit distracting to others in a team workspace. It makes me wonder whether they should have bicycle desks.
Re:What Do You Visualize While Programming? on Friday October 18, 2024 @07:00PM (#41884256)
Yeah I'm the same. I can visualize my house. When debugging and there are large number of numbers in systems to keep track of then arranging the systems on a piece of paper just to quickly find the numbers associated with each system helps, but beyond that when thinking about code it is all maths with no spacial or visual component, just logical statements and reasoning. E.g. When I think of a shuffle-shard I don't visualize the sets, I just think, subsets of size k.
Re:Attacking Unix Systems via Cups, Part I on Thursday September 26, 2024 @04:22PM (#41662884)
It is bad if you print from a Linux laptop that uses WiFi isn’t it?
Re:Zb: An Early-Stage Build System on Friday September 20, 2024 @04:42AM (#41600026)
I can't help but wonder whether the major problem is actually API changing from version to version of software and keeping everything compatible.

If the build language is LUA, doesn't it support top level variables. It probably just takes a few folks manipulating top level variables before the build steps and build logic is no longer hermetic, but instead plagued by side effects.

I think you need to build inside very effective sandboxes to stop build side effects and then you need your sandboxes to be very fast.

Anyway, nice to see attempts at more innovation in the build space.

I imagine a kind of merging between build systems, deployment systems, and running systems. Somehow a manageable sea of distributed processes running on a distributed operating system. I suspect Alan Kay thought that smalltalk might evolve in that direction, but there are many things to solve including billing, security, and somehow making the sea of objects comprehensible. It has the hope of everything being data driven, aka structured, schemad, versions, json like data rather than the horrendous mess that is unix configuration files and system information.

There was an interested talk on Developer Voice perhaps related to a merger of Ocaml and Erlang that moved a little in that direction.

Re:Rust in Linux Revisited on Saturday August 31, 2024 @01:08PM (#41410240)
From the Linux conference video I watched I think they have the wrong approach. They’re trying to improve a bad api by adding types do describe it’s awkward behavior. The C programmers who love the Linux style want to be able to change semantics or api without modifying rust code. The solution is straight forward, build an adapter later in C that has well describable and clean semantics. Since it is C and in the kernel and has clear semantics the C programmers can maintain it without having to look at Rust. Perhaps the general lack of encapsulation and layers in the kernel will defeat them as they will need a lot of adapter layers. But for file systems it might be achievable.
Re:Do Quests, Not Goals on Thursday August 08, 2024 @05:23PM (#41196460)
It is a fail/succeed mindset rather than a play mindset I imagine. I definitely feel a difference between a chore and a game. That said not all chores are easily turned into games. But seeking games over chores probably leads to a happier time.

Older »