HN user

b33j0r

978 karma
Posts0
Comments413
View on HN
No posts found.

The best approach has been to host a tokio server, and then make a traditional os-native user interface like a full-stack chump.

That’s crazy. It’s still better than the UX’s that game engine designers think work. Sure bro, show me your File Open/Save Dialog and tree view. Show me your text editor (nicely done, zed)

Available components must win. I’ve often been a critic of open weights and open architectures that give very few normal people access. What’s the point of releasing the plans for a nuclear reactor if no one can have the fuel?

WASI 0.3 1 month ago

It was not fair. It was how I felt trying to build on it. I love the content that was produced, but it was all very experimental and garden shedded from a decision-making angle.

To answer directly, I would credit the PSF and python community with having the best structure that has outlasted my weirdest expectations.

WASI 0.3 1 month ago

Love/hate with this one. How was I supposed to follow this? I tried, and few things were publicly visible for nearly two years. I last checked in march and it looked like no progress had been made.

That makes me very suspicious of wasiv3. Funny enough, I already implemented a bunch of the promises (pun not intended) and think that freestanding wasm with custom integrations is the more likely future.

The promise of wasi components has not been fulfilled. The market wants to hotload and link artifacts dynamically. The wasi project requires insider wizardry to use it that way: the offering has been statically linking components before you ship. Defeating 99% of the use cases.

I do not like that this has been worked on in the shadows.

Waymo Premier 1 month ago

If you are talking about a city where this makes sense like Phoenix, the public transportation is very poor. It can take 90 minutes to cover the distance you could drive in 20.

They have a light rail, but it only goes between downtown and a few suburbs. Your other option is several bus transfers.

If you’re thinking of cities like New York or London, public transport is more practical in many cases.

JetBrains’ AI offering peaked last year when Junie was briefly better than Codex. Now it’s a wash.

Honestly all of this drives me back towards nvim or notepad sometimes.

I have had a jetbrains subscription since pycharm came out, and the killer feature was always the visual debugger. Seems nearly quaint now.

What specific things do you like about zed?

Most handle this by having release channels. You would `brew set-channel stable/edge`.

It annoyed me this week because I only had a few minutes to try elixir 1.20 after the announcement, and brew lagged behind. You can install erl and elixir by other means (I prefer to run my own toolchains) but it wasn’t worth doing in that moment.

Brew has or used to have a source option for some recipes and that basicallllly solves it too, if you squint.

Zig by Example 1 month ago

Do not use this, I recommend ziglings if anything besides what Loris would say: you have to read code.

The builtins don’t even compile in these examples. This is 2 years out of date at least.

I had the opposite experience. I saw college kids who didn’t know where the F5 key was on the first day write smart matlab and python programs by the midterms.

I don’t think I’m exceptional at all. I was always behind and that probably reflected pretty poorly on me. But all it took to teach was preparing interesting examples and then spending time with subgroups and individuals.

I bet a lot of people think I’m catastrophically wrong, probably just got lucky.

Ah. A common (and understandable) misconception. LSD-OS doesn’t enhance anything in the UX, it just removes the filters that prevent you from seeing reality, man.

Some confuse this with LDS-OS, which makes the user weirdly and unquestionably `nice` by only accepting inputs from protected mode.

I am a low-level zig guy right now too. I have been around for a long time, and it’s funny to see arenas come back into vogue as a solution to nearly everything.

Arenas are great for avoiding allocations per tick/request/frame/layer. No symmetric free() to bracket lifetimes! They have a purpose, and we always knew that.

But by definition, your program is over-allocating as a tradeoff. Makes a ton of sense in certain use cases. However, we didn’t invent garbage collection and borrow-checking and realloc() just to publish papers ;)

Half of my time programming zig is spent considering allocation strategies. That’s a feature. “Where are the bytes?”

You point to a better timeline. Sometimes—when desperately alone—I imagine.

If only the guy who was destined to close a disk operating system deal with IBM hadn’t been goofing around with his plane that fateful day.

We would all be using lisp machines, running smalltalk on microkernels that put the HURD to shame. Just imagine: instead of backslashes and drive letters, we’d have parens. Endless, syntactically-valid parens.

Or CP/M, probably that. But can it run doom?

My dad and my brother use ipad pros for their healthcare business and rarely use laptops. For them, the year of real work happened several years ago. My brother even has a mouse for it somehow.

The first time I had an amp distorted and loud enough to cause feedback (if I wanted to) at band practice was the most magical day of my life.

I had heard it a lot in punk and pop-punk to create swells. I improvised my still-favorite solo that day.

I think you are implicitly invoking Turing completeness as opposed to “fixed-step recipes on a punchcard” as your requirement for something to be considered computing.

If a loom had a jump instruction, would you change your mind? (They did not.)

And yet we still have IDE defaults of 80 characters because of FORTRAN punchcards. That’s the heritage being invoked.

EDIT: I think all of these early devices also helped us to understand how to build multiplexers, which are the basic building block of any CPU. Given this instruction, I do a different thing.

Just don’t take one if another one is operating nearby. If they see another waymo, having passed the insecure emotional Turing test, they get self-conscious and wander the neighborhood backstreets until the other one has dropped off its passengers.

(Just experienced this multiple times in Phoenix. It’s impressive at navigating and braking, but not rational planning or flocking.)

Ok, so I don’t have an NFL team. I played in high school and like the sport, but find it difficult to be loyal to a color and a logo. I also never watch ads at home on any platform.

So. Am I the only one who kind of likes watching the commercials more than the game when my family or friends make me watch football? They are entertaining when you only see them every now and then.

Now, banner ads are not in the same category. But above is a real use-case for enjoyment of ads.

I think of it more like moving from sole developer to a small team lead. Which I have experienced in my career a few times.

I still write my code in all the places I care about, but I don’t get stuck on “looking up how to enable websockets when creating the listener before I even pass anything to hyper.”

I do not care to spend hours or days to know that API detail from personal pain, because it is hyper-specific, in both senses of hyper-specific.

(For posterity, it’s `with_upgrades`… thanks chatgpt circa 12 months ago!)

I usually do most of the engineering and it works great for writing the code. I’ll say:

There should be a TaskManager that stores Task objects in a sorted set, with the deadline as the sort key. There should be methods to add a task and pop the current top task. The TaskManager owns the memory when the Task is in the sorted set, and the caller to pop should own it after it is popped. To enforce this, the caller to pop must pass in an allocator and will receive a copy of the Task. The Task will be freed from the sorted set after the pop.

The payload of the Task should be an object carrying a pointer to a context and a pointer to a function that takes this context as an argument.

Update the tests and make sure they pass before completing. The test scenarios should relate to the use-case domain of this project, which is home automation (see the readme and nearby tests).

Lua 5.5 7 months ago

Well. You’d have to demonstrate that a[1] is the first offset in an array, and it’s not a great curb appeal to anyone who has programmed computers before.

You implemented type-checking. For a project this ambitious, I am surprised here.

“Generics” should mean that the compiler or interpreter will generate new code paths for a function or structure based on usage in the calling code.

If I call tragmorgify(int), tragmorgify(float), or tragmorgify(CustomNumberType), the expectation is that tragmorgify(T: IsANumber) tragmorgifies things that are number-like in the same way.

For a compiled language this usually means monomorphization, or generating a function for each occurring tuple of args types. For an interpreted language it usually means duck-typing.

This is not a bad language feature per se, but also not what engineers want from generics. I would never write code like your example. The pattern of explicit type-checking itself is a well-known codesmell.

There is not a good usecase for adding 2.0 to a float input but 1 to an integer input. That makes your function, which should advertise a contract about what it does, a liar ;)

There will be customers even though it is a useless feature tier.

Monetizing knowledge-work is nearly impossible if you want everyone to be rational about it. You gotta go for irrational customers like university and giant-org contracts, and that will happen here because of institutional inertia.