pushfoo
Joined 6 years ago
Joined 6 years ago
> This isn't X. It's Y.
1. https://riscv.atlassian.net/wiki/spaces/HOME/pages/16154732/... 2. https://developer.arm.com/documentation/dui0801/h/A64-Floati...
They seem to force using python -m pip on Windows since they don't ship pip.exe[4]? This is very interesting.
From their doc[5] since the README.md's super-bare:
> These Python distributions contain a fully-usable, full-featured Python installation: most extension modules from the Python standard library are present and their library dependencies are either distributed with the distribution or are statically linked.
> The Python distributions are built in a manner to minimize run-time dependencies. This includes limiting the CPU instructions that can be used and limiting the set of shared libraries required at run-time. The goal is for the produced distribution to work on any system for the targeted architecture.
[1]: https://github.com/astral-sh/ruff
[2]: Significantly faster than regular pip: https://github.com/astral-sh/uv
[4]: https://gregoryszorc.com/docs/python-build-standalone/main/q...
[5]: https://gregoryszorc.com/docs/python-build-standalone/main/
> Duplicate of #5613, still low priority, better use dataclasses, as suggested above.
1. https://github.com/python/mypy/issues/5944#issuecomment-4412...
I agree that pinning commits is reasonable and that GitHub's UI and Actions system are awful. However, you said:
> Maybe accounts should even require ID verification
This would worsen the following problems:
1. GitHub actions are seen as "trustworthy"
2. GitHub actions lack granular permissions with default no
3. Rising incentives to attempt developer machine compromise, including via $5 wrench[1]
4. Risk of identity information being stolen via breach
> It's time to take things seriously.
Why not add strong capability models to CI? We have SEGFAULT for programs, right? Let's expand on the idea. Stop an action run when:
* an action attempts unexpected network access
* an action attempts IO on unexpected files or folders
The US DoD and related organizations seem to like enforcing this at the compiler level. For example, Ada's got:
* a heavily contract-based approach[2] for function preconditions
* pragma capabilities to forbid using certain features in a module
Other languages have inherited similar ideas in weaker forms, and I mean more than just Rust's borrow checker. Even C# requires explicit declaration to accept null values as arguments [3].
Some languages are taking a stronger approach. For example, Gren's[4] developers are considering the following for IO:
1. you need to have permission to access the disk and other devices
2. permissions default to no
> We can't afford to fuck around anymore,
Sadly, the "industry" seems to disagree with us here. Do you remember when:
1. Microsoft tried to ship 99% of a credit card number and SSN exfiltration tool[5] as a core OS component?
2. BSoD-as-service stopped global air travel?
It seems like a great time to be selling better CI solutions. ¯\_(ツ)_/¯
[2]: https://learn.adacore.com/courses/intro-to-ada/chapters/cont...
[3]: https://learn.microsoft.com/en-us/dotnet/csharp/language-ref...
[5]: https://arstechnica.com/ai/2024/06/windows-recall-demands-an...
In web front-end, the same pattern crops up repeatedly. Two examples:
* Elm[1]: It's brutally functional and limited by purity, but it works
* htmx[2]: It's grug-brained[3] and limited by that, but it works
I'll let others enumerate web frameworks. On desktop, software for uxn and Varvara[4] by Hundred Rabbits fits the same pattern:
* 64k of RAM and limited to 4 colors, but it works
* Created when Xcode was painful to install on a boat over pre-Starlink satellite internet
Who knew rage-quitting could be so productive? ¯\_(ツ)_/¯
[2]: https://htmx.org/
[3]: Said to be by the HTMX creator: https://grugbrain.dev/
[tool.black]
line-length = 100
Aside from matrix-like or column aligned data, the only truly awful thing I've encountered has been broken f-string handling[2].[1]: Example from https://github.com/pythonarcade/arcade/blob/808e1dafcf1da30f...
For aligned column readability and other scenarios, # fmt: off and # fmt: on become crucial. The problem is that like # type: ignore, those start spreading if you're not careful.
Octo[1] targets variants of CHIP-8, an ancient virtual console. The language is so different from daily work that even its annoyances were refreshing. Yes, that includes having to overwrite parts of instructions to get desired behavior.
The maintainer has moved on[2] to working on Decker[3], but I'm still grateful for his dedication. He underestimates his contributions to encouraging a new generation of emulator developers. I haven't had time to do a deep dive into emulation beyond CHIP-8, but I've enjoyed making:
* A little Mastermind-like game (https://pushfoo.itch.io/safecracker)
* A terminal-like text library (https://pushfoo.itch.io/termlib-demo)
Others have done far better. Timendus even wrote his own linker toolkit to build a multi-tasking operating system[4]. If you're interested, there have been some rumblings of an October event of some sort now and then on the EmuDev Discord server to fill the gap left by OctoJam's end.
[1]: https://github.com/JohnEarnest/Octo
[2]: https://beyondloom.com/blog/octojam.html
Am I missing something? On one hand, I think I get it: Intel hasn't been a GPU company historically. On the other, this quotes seems suspicious given Intel's gen 13 and 14 cores have issues:
> Simply put, we must align our cost structure with our new operating model and fundamentally change the way we operate
At the same time, my understanding is AMD seems ahead[2] of Intel in AI / CUDA support. This quote seems to be a nod to that without saying much else:
> Our revenues have not grown as expected — and we’ve yet to fully benefit from powerful trends, like AI. Our costs are too high, our margins are too low.
Before anyone point oout "Intel® Extension for Pytorch*" exists[3]:
1. That seems to be the official name (what?)
2. Their installation homepage seems a little convoluted[4]
[1]: https://www.pcmag.com/news/intel-faces-potential-class-actio...
[2]: https://github.com/vosen/ZLUDA
[3]: https://intel.github.io/intel-extension-for-pytorch/xpu/late...
[4]: https://intel.github.io/intel-extension-for-pytorch/xpu/late...
My understanding is:
* The authors wanted to run on a Raspberry Pi powered by solar + batteries
* They're often somewhere in the Pacific so their internet connection is often bad
* Varvara[1] is the portable-enough solution which works for them
* Others liked it enough to write a bunch of other tools[2]
It's all pretty much self-hosting at this point. It's not for everyone, but why bother with Windows if it fits your needs?
[1]: https://wiki.xxiivv.com/site/varvara.html
[2]: https://github.com/hundredrabbits/awesome-uxn?tab=readme-ov-...
These sound like you're trying to build something with professional polish when you wanted to have fun:
> Part of it feels like I've tried to do too much at once instead of building piece by piece
> writing the tests for these and going back and forth on different decisions has killed all productivity and drive within me.
Why not build something awful and silly? Alternatively: add an awful plugin system and say it's left up to the user.
Top skills : Python, documentation, and automation GitHub : https://github.com/pushfoo/ Contact : ${MY_USERNAME}@ gmail.com