skysight-inc/HackerNews huggingface dataset:
I have passed on at least a few codebases. Sometimes, people get bright ideas and just dump what's working to do greenfield stuff. This is why an ex-coworker recently wanted me to come back to braindump on something I finished in 2009. After I left, some bright spark wanted to start from scratch and now there are continual complaints when the previous thing just worked, aside from a per-semester update, which the software would nag you about, as new departments appeared and such.

On the other hand, I had an apartment-renting suite I had written get passed on to students. While it was written in Perl (a famously "write once, read never" language according to critics), because I did just one thing per line and had comments at multiple levels (a block header for each function, comments within functions, a changelog at the top), they called back and said it was the easiest thing in the world for them to convert it, despite not knowing Perl at all.

Although I had been programming for years and years by the time I took a FORTRAN course in high school, I had a particularly exacting teacher with a Ph.D. in Computer Science and he drilled us on how we would have to deal with the code of others, or our old code, or code when we did not want to come into work with a cold. Cleverness is held in reserve for data structures and algorithms, when you have no other options. He was very firm on that.
> The second challenge is the misconception that communication should be natural and effortless. While the reality is, it takes effort to communicate and drains energy for everyone.

Yeah, no. It's 100% effortless for me to communicate with people I'm familiar with, and a massive effort to talk to people I don't know or are mere acquaintances. For my wife it is not only effortless but a massive energy boost to interact with a person whether they know them or not.

I think the author says some right things but vastly over generalizes.
IMO the main reason is high DPI screens. On macs it's essentially the default, and it'll probably become the default in the future for everything. Since bitmap fonts make much more sense with low pixel density I think it's not going to be a priority for any newly developed apps.
I use Lunar currently. Will check this out.

I’m suspicious of extra brightness mode. I had a fairly new monitor that failed after using Lunar to max out brightness.
I'm not sure they're really "actuated". They're definitely programmed by a smart magnet, and then powered by a dumb magnet.
Instead of FORTRAN, someone should try writing a Minecraft server in something like ALGOL or FORTH.
I suspect that the m68k that it targets is weird embedded systems that need some custom hand-holding to target, rather than "normal" consumer hardware like you're thinking of. Not that you couldn't make it do that, just that I suspect the code is mostly maintained by and for folks who use it to run very specific hardware.
I think of "freestanding" as being related to the "-ffreestanding" flag of modern compilers, which merely means something similar to "don't assume that functions have their usual C standard definitions, as I don't have a normal libc".
On the other hand, firearms were invented in the 10th century, and I don't think we got reliable cartridges until mid 1800's.

All that time the bow and arrow were long-range, accurate, quiet and worked in the rain. :)

[But yeah, you're right - in our lifetimes technologies have changed immensely.]
I think that it is a good idea, although I do have some opinions:

- A source code version control repository (using any source code repository service, or hosting your own) should be made available, e.g. in case you want to view only some of the files.

- I think that all of the scripts for fixing/improving web sites should be implemented as extensions (and allow the user to disable and change the settings (e.g. where to apply them to) of any of them), and that you can use C as well as FixScript, that you can load native code files.

- Some programs are used on multiple web sites; it should be able to identify the program in order to apply the scripts to any web site that uses that program.

- It should allow to disable CSS (if it does not already do), and the ability to disable specific features of CSS (e.g. transitions, fonts, etc). The ability for a user to apply custom CSS might also do, and if so then it might support some features that are not allowed in web pages.

- It must allow to disable automatic updates (if they are implemented at all).

- It is OK if you deliberately do not want to implement JavaScripts. If JavaScripts are ever implemented though, it must include the ability to disable JavaScripts and the ability to override any functions of JavaScripts and should include the ability to use JavaScripts to make extensions.

- Video playback support is probably not that important, since you can use external programs to play videos.

- If CEF is implemented, it should probably be made possible to compile the program without that feature in case you do not want it (in order to avoid adding dependencies that you will not use).

- I would also be interested in being able to add extensions for implementing URI schemes and file formats, and also would be interested in proper support for non-Unicode text.

- The ability to use unencrypted proxies even for encrypted connections would be helpful, in case you want to use your own proxy without needing to decrypt/encrypt the data twice.

- I have no debit/credit card, and I have no European money.
> In the US people vote for politicians who promise low regulation, business friendly and "economy" priorities.

People vote for those politicians because that's what they want. But is the problem with what they want, or what they get?

Regulatory capture that puts up barriers to anyone trying to compete with the incumbents is neither "low regulation" nor what people want, but it's the status quo in the US.
It seems you can make it hang if you input something that triggers the LLM's guardrails. For example, I entered 'where they sell drugs,' and the API endpoint hung every time I submitted it. However, on a few occasions, it returned a response immediately (with an error in the API response). I suspect there are too many retries if the structured JSON output is not formatted correctly when the guardrails are activated
> I’d be interested in a distro model that split out “OS” and “app” level management and does not concern itself with “user”/“app” level dependencies

Switch to Android/Linux. :-/
Very good question.

My working assumption throughout was that the people in a computer architecture class already had 1 or 2 semesters of other programming courses where they worked in a high-level language, and are looking to learn how computers work "closer to the hardware". And educational architectures create a completely false impression in this domain.

If I had to teach assembly programming to people who never programmed before, I'd _definitely_ not want to start with x86 assembly. I'd start by teaching them JavaScript so that they can program the computers that they themselves, and other people, actually use. At that point they'd be ready to learn computer architechture through an x86 deep dive, but would no longer need to learn it, since, as you said, they'd probably already be employable. But the same goes for learning LC-3, and much more so.

To be honest, my opinion is only that educational architectures are a poor way to learn what modern computers actually do, and while I think I have good reasons for holding that particular opinion, I don't have the breadth of experience to generalize this specific observation into an overarching theory about teaching programming and/or compsci. I hope your course will be a useful resource for many people, but I doubt listening to me will make it better: my experience does not generalize to the domain you're targeting.
Its a way of demonstrating that two paths through a diagram are in some sense equal. The dots in the corners are objects and the arrows are morphisms.

To keep this simple just imagine the objects are types and the arrows are functions between those types.

You start out in the upper left corner and walk through the two paths checking the types as you go along. If the diagram typechecks correctly then it is said to commute and the two paths are in some sense equivalent. The specific sense depends on a bunch of details elided here.
A commutative diagram is just a collection of nodes and directed edges between nodes (aka, a directed graph), but it's a directed graph along with the claim that any two paths in this graph which start at the same node and end at the same node are to be considered equivalent, in some sense.

In general, a directed (multi)graph along with an account of which of its paths are and are not to be considered equivalent to each other (where this equivalence relation satisfies some basic nice properties) is known as a "category". This concept comes up ubiquitously in math/abstract logic/etc. Commutative diagrams are useful for quickly visually reasoning about equivalences of paths in such contexts.
I saw someone on Reddit say that a lot more than the T480 could be ported. Exciting stuff.
I agree. I will not use them, not as a user, nor as a developer.
This site is incredible. I applaud the craft and research that went into such a seemingly mundane part of life.
Gemini 2.0 vs. OpenAI o1 vs. Claude 3.5 Sonnet: The game of AI thrones
Yes, it is. Try setting font-thicken = true https://ghostty.org/docs/config/reference#font-thicken
This is really cool! Though for some reason the lat/long coordinates of places are completely off, despite the addresses being correct.

I searched "show me 5 parks in SF", and all 5 were in the wrong spot. For example:

Lafayette Park
Lafayette & Gough St, San Francisco, CA 94109
Latitude: 37.7955
Longitutde: -122.4668
According to the Wikipedia article, Google pulled out of Project Maven due to employee protests. Microsoft and Amazon also worked on Project Maven and Wikipedia doesn't mention them pulling out. So I think Google is more anti-Maven than Microsoft and Amazon.

Disclosure: I work at Google.
https://caliber.az/en/post/preliminary-investigation-azal-ai...

"Kill and hide. Azerbaijani officials tell local media that Russia hit flight J2-8243 with an anti-aircraft missile and then jammed electronics and _denied permission to land in three airports, steering the damaged plane into the Caspian Sea so that it would crash there and Russia’s role would never be discovered_."
Build a working game of Tetris in Conway's Game of Life (2014)
You can't mix and match, you're still tied to bevy_ecs if you use any level of abstraction above it.

I also didn't say it was a bad things. I just pointed out that everyone's goto example of bevy's commercial success (not even quality, just success) doesn't in fact use large chunks of bevy.

I am sure bevy's ECS is the best in the rust ecosystem. ECS doesn't meet the requirements of my games so i rejected it but if it works for other people who made an informed decision (i.e. they knew about generational arenas) that's perfectly OK with me.

In fact, I evaluated bevy along with fyrox (back then rg3d) and macroquad for my games before bevy got popular. I chose the other two engines based on their features and quality of implementation. I also happily advised cart about some community management things i learned from other OSS projects and had a reasonably discussion with him about ECS vs gen arenas when i got somewhat angrily pinged from his discord after he mistakenly assumed i was writing a competing non-ecs engine.

I had no issue with bevy until it started making false promises ("editor this year, pinky swear", "we will distribute donations fairly, not just into cart's pocket, just give us another 6 months for the third time") and until (some of) its most zealous fanboys started harassing people for not using bevy.

---

My fundamental point still stands, read what I was replying to - some languages lead to an order of magnitude more code with fewer features and worse results than simple approaches. I said it's not just languages but can happen with projects within a language.

The fact that after several years, dozens of contributors and probably several hundred thousand dollars (!) got poured into bevy it's still chasing fyrox made by one guy is all that needs to be said.
I uninstalled the app when I saw that Cmd+, opens an empty text file called config.

I'm not going to learn more configuration languages or type 30 characters (or paste them from the browser) to toggle a binary setting.
Unfortunately, the comparison pages don't actually show every test, or even the same run, as the main pages. You'll find a lot of differences between what I linked, and what is linked here.
They're just a nice way of writing equations between functions (or other things that compose like functions).

This is a picture of a function f that takes inputs from A and produces outputs in B

f
A → B

and this diagram

f
A → B
↘ ↓ g
h C

just means g ∘ f = h, ie. doing f then g is the same as doing h. Since you write the domain and codomain of each function, it makes it easier to see when the functions can compose (ie. when it type checks).

Because paths through a diagram themselves compose like functions do, this notation turns out to be very natural. For example, associativity is inherent in the notation: A→B→C→D is the only way to express the composition of three functions, you can't even write the difference between (f∘g)∘h and f∘(g∘h).
more recent example https://en.wikipedia.org/wiki/2023_Wagner_Group_plane_crash
You can get the OS / app management separation with Snap/Flatpak/AppImage.
Maybe.... Probably. Especially if I had left a detailed comment explaining why.

But I still would have required an interim solution for everyone building from source until these patched/fixed versions of SDL started shipping in distros. And then how would the warning message tell the difference between the original SDL 2.0.3 and a patched version of SDL 2.0.3?

And we are talking about dozens of distros, multiple chances for something to go wrong.

My point is that I quickly came to the conclusion that ripping out SDL and reimplementing the functionality was the simplest, most conclusive solution.
Yes! Sneer and smarm is 100% a challenge to balance here on HN, seems like I barely got by!

Frankly i'd hoped someone would look at the other comments there, e.g. "Donald":

https://nicholasdecker.substack.com/p/the-superfluity-of-the...

I don't agree with it all, but what he has going is a preference for first-order thinking: helping out the poor smart kids NOW, over lowering taxes so that entreprise will not be disincentivized (pardon the econspeak!)

[You might also be entertained by the historiography from "Anirudh"]

The thing NOT to learn from Sweden is how to award prizes. Certainly, the Fields Institute in Ontario (where Hinton built his career, btw) have their priorities at a more reasonable tilt vs Stockholm when it comes to building the future vs trying not to miss out on a piece of it.
DeepSeek's new AI model appears to be one of the best 'open' challengers yet
I think it's all about context and intention. We should embrace growth, not labels, and recognize the beauty in both collaboration and quiet connection
I’ll second the Bobiverse series, one of my favorites. Its descriptions of new technologies is at just the right level and depth, I think, and it’s subtly hilarious.
Were they parents too? In my experience, the act of parenting and reading a crap ton of children books made me start thinking of stories and “book ideas”. You also end up having to find ways to explain all kinds of things to a toddler audience. It could be complex or simple, but it’s what a lot of kids books are. Why to brush your teeth, why to share your toys, or some other educational lesson. I had a different book idea every week when my kid was in the toddler age range. I’m sure if I was a creative person, I’m sure I would have executed on some of those ideas.

My best friend from grade school is artistic and he actually did write, illustrate and self publish a book via Amazon basically because of this same reason, parenting put this product in his hands as an adult with the skills to execute.
I'm the author of this shader, here's some tips:

- Throw as much native:emulated Hz ratio as you can.

- 120Hz = up to 50% blur reduction

- 240Hz = up to 75% blur reduction

- 480Hz = up to 87.5% blur reduction

- Calibrate your black levels and white levels (e.g. via TestUFO PLUGE test and White Level tests), since you need all of the levels for the simulated phosphor fades.

- Use SDR mode, not HDR, the math in the shader is designed to the Adobe sRGB curve. I wish I had more direct access to the complex HDR curves and ABL to auto-compensate for Talbot Plateau Theorem.

- Use odd number native:emulated Hz ratio on LCD to make it immune to image retention + slightly better behaviors with LCD 6-bit FRC

- Adjust Gain-vs-Blur and gamma, if there's problems. Using low Gain-vs-Blur will reduce color ghosting. Use 0.5 for 120Hz, and if you're getting too many artifacts, try testing numbers as low as 0.25 for 240Hz to see if color ghosting problems disappear. (A fix will be coming)

- Artifacts reduce dramatically at 480Hz versus 240Hz vs 120Hz, more Hz really helps CRT simulation. More Hz the merrier, for BYOA (Bring Your Own Algorithm approaches)

There will be an improved version of my shader on Github, involving:

- Global refresh mode (like a phosphorescent BFI)

- Color balancing modes

- Black level lifter (to fix any thin dark bands caused by violations to Talbot-Plateau Theorem due to certain displays' crappy handling of below-2% greyscales, etc)

Keep an eye out for it in January 2025, just star the Github repo or wait for Retroarch (etc) to implement the improved version of my shader (after I'm finished deadline work for a client at CES 2025)
They don't want to crush a particular competitor, they want to crush all competitors :)
28 miles per day? That is 45 km. How is that possible? What would your feet look like? When I read about people who did immensely long walks, it is always your feet that give out.
> To avoid custom linker scripts (which I hate with a passion)

lol why? i mean the syntax sucks but this seems like howling into the wind...
Ah, damn it, I searched for "meta" and completely missed that. Apologies to Ghostty!
I have experience of embedding and modifying both QuickJS and Lua. QuickJS is not bad, but Lua is a lot easier and has fewer bugs. JavaScript is a very complicated language under the surface; I think very few people, if any, know and remember all its quirks.
Hello, person with autism here. If I am tasked with social interaction for too many hours I may no longer be able to focus on people. I may zone out and in order to get into focus someone may have to bother me in an uncomfortable way. This could, depending on the person who is on the autism spectrum, escalate to physical violence in an extreme scenario.

I don’t think this describes “a panic attack”. I think “completely overwhelmed” is a real thing to be accommodated and is separate from a social anxiety triggered panic attack
I agree with everything you're saying, but these are different issues - not symptoms of excess intellect. Just post-hoc rationalization of poor choices.
General question, how safe is it to use non-stock os terminals? In the end often they need to receiver super user at some point.
I disagree. Both books suck for procrastinators/people with ADHD. Most of them won't finish reading these books. People should watch a 10/20-minute introduction to developing a habit on YouTube instead.

These books are written to sell, not to be read by the target audience. They're far too long, and their structure is bad. For dozens of pages, there is no actionable advice. The reader loses interest by that time, and the book lands on Tsundoku tower. I suspect short self-help books don't sell well, so each book must have 200+ pages, even if it sets up the reader for failure.
Maybe this is a cultural difference, but it is perfectly acceptable in the US to wear swim or gym clothes on the way to your destination, so this is a non-factor. You’d wear a shirt with your swim clothes, so you’d need a bag, but you most likely need one anyways if you are carrying a phone, wearing shoes, etc.
Wrong forum. You’re looking for r/wallstreetbets or another like that.
So it crashed into the sea leaving no evidence or live witnesses.
Since I have the exact same thought (that you are coming at this from a software engineering direction, not a computer architecture/engineering one), this is unlikely to be further productive :(

You say you want students to be able to write emulators/simulators etc. (you list a bunch of software.engineering tasks). I say writing an LC-3 emulator won't give you any transferable skills for writing, say, a Gameboy Emulator (still a 30yo system), because these educational arhitectures are bad and abstract away precisely the things that you have to get right to do that, leaving you with something trivial to implement: a C array for "memory" and a few bitwise operations.

Since we're largely looking at the same things and coming to orthogonal conclusions, I suggest we agree to disagree on this one.
Jo AI
Show HN: AI-Powered Resume Builder for Effortless Job Applications
ResumeFlex is an AI-powered resume Builder for Effortless Job Applications. With one click, generate a professional resume, cover letter, and application email tailored to your profile and job description. Leverage AI to stand out and boost your chances of landing interviews and your dream job.
RubyConf 2024: Cloud Native Buildpack Hackday (and other Ruby deploy tools, too)
Note that Quiver isn't really a tool just for drawing "commutative diagrams". It's a tool for drawing any labeled system of nodes and edges/arrows between nodes, whether or not this is to be interpreted as a commutative diagram. (It also allows drawing arrows which start or end at other arrows, rather than at nodes).

It has various features to control and adjust these diagrams to be visually pleasing, by changing sizing/spacing/curviness/arrow style/etc of the elements within these diagrams. This is all much more convenient in its WYSIWYG interface than manually planning and coding these figures in LaTeX, as had previously been the standard way to create them for mathematical papers.
Linguistics as a test to measure AI intelligence
(Are you havoc from the JB community?)

I agree! I just don’t know if this would pass the wife test. All of our music and photos and videos tc etc being hosted by me where I could potentially lose everything.

All the work needed to properly store enough backups and test upgrades and maintain things I just figure the tens of dollars I spend monthly to host this stuff for me in iCloud and other places is worth it.
I've heard one way a parent can help a shy child is to have them look after much younger children. Even very shy children seem to be able to manage talking to less-experienced, less-intimidating, pipsqueaks.

Wonder if there's a way to take that tack.
Author here.

You need to keep the GPU free to work on the game; doing CRT simulation at 60fps at 480Hz requires brand 8 new frames per videogame frame, and it's doing a bunch of math operations per subpixel per refresh cycle. If you run it at full resolution 2560x1440x480x3, that's a lot of processing.

Especially since it also uses a variable-MPRT algorithm that cascades brightest pixels to subsequent refresh cycles;

That's why it's coming to RetroArch and best to process the low-resolution framebuffers first, before scaling and sending through CRT filters/simulated curvatures/etc.

Most retro games are just 320x240.
And then people are surprised that users stick with passwords.

IMHO that and a TOTP seems to be a sweet spot.
> ...collaborative software companies Atlassian and GitLab Inc. backed the legislation.

lol :)