skysight-inc/HackerNews huggingface dataset:
I see famous journalists and celebrities talking about it, but not really any ordinary people. If "can be purchased by a crazed billionaire and taken over by nazis [1]" is now something we have to worry about, the financial model of Post does not seem to have any particular protection against that, where it took money from Andreessen Horowitz [2] just to get started - the same people who helped [3] Musk take over Twitter.

[1] https://archive.ph/xYeYY - TPM article without paywall

[2] https://techcrunch.com/2022/11/28/post-news-twitter-alternat...

[3] https://www.npr.org/2022/11/21/1138064606/elon-musk-twitter-...
Runtime metaprogramming has been the raison dêtre of Ruby since Rails first took off. And, yes, you can do really cool incredibly powerful stuff with it. Likewise any Lisp with their various macro systems. CLOS in Common Lisp can also do very powerful cross-cutting metaprogramming stuff.

The key problem has been that the resulting programs are fantastically hard to understand. One of the things I think Dijkstra got right in "Goto Considered Harmful" is that humans can reason about programs better when there's a strong correspondence between the textual structure of the code and its execution structure at runtime.

Runtime metaprogramming deliberately upends that.

I think it's probably totally fine to use those kinds of features as debugging aids when hacking on a program and figuring out where stuff is going wrong. That aligns with many of the use cases Hillel lists here. But you probably don't want to commit code like that to the repo and require everyone else maintaining the program to understand it.

For better or worse, we seem to lean strongly towards languages and language features that are used not just during the development process but also make sense in committed, maintained code.

Dynamically typed languages lean in the other direction. They can be very powerful and productive while you're in the middle of working on a program, but the resulting artifact is harder for others to understand and maintain.

Dynamically typed languages to me feel like unbaked plasticine. You can have a lot of fun molding it and you can get it into the shape you want much quicker than you could carving wood or stone. But if a dozen people are collaborating on a sculpture over months or years, it's impossible to build on top of someone else's plasticine part without it shushing down and falling apart.

Or course, the holy grail is baked plasticine: a language that is dynamically typed and moldable while you're figuring stuff out and then can be baked with static types for the parts that are solid and need to be reliable. I've yet to see an optionally or gradually typed language pull that off well. The boundary between them just gets too weird.
The ups and downs of being a Twitter creator by GPT-3
I've been writing FE for 15 years and I'm in love with Tailwind. I never have to worry about naming, which in and of itself saves me a mountain of time. I had no idea just how much effort I spent on it until I stopped. Also, what I love about Tailwind is that it isn't an abstraction - the parent comment makes no sense because you can't use Tailwind without understanding CSS. But for those who do understand, it makes you so much more efficient, especially with a plugin like Tailwind Intellisense.

Your HTML will be uglier and it will be more difficult to look at the elements panel to find the element you're looking for. Both of those things are super minor for me, and have almost no impact on my day-to-day.
It might seem that way but it is hard to say with certainty but there is also probably sampling bias or declinism in that you are more likely to hear about negative events while normal or positive events are filtered out. And like PragmaticPulp said it can take time for things to catch up but they often do and people often eventually get what was coming to them.
I understood deadnaming to generally pertain to gender identity. I don't think it's far-fetched to initially consider Asahi Lina's name as a Pseudonym/Alias/Pen-Name, as many creatives (authors, artists, musicians) have been doing for hundreds of years.

If it is a gender identity decision, I still don't view it as malicious for the OP to ask. The context just isn't there in the blog post to make that clear.
I've had trouble with mucus and allergies as well as some other issues. I've systematically trying to cut out the vast majority of processed food in my diet as well as diversifying my diet.

It's actually quite a challenge and requires a lot of retraining even for someone well versed in nutrition. It's so easy to fall into the endless number of traps: dairy and fig newton bars, granola bars, etc. the food industry has created an endless array of seemingly healthy items but that are actually all come from the same three ingredients: processed wheat, sugar and oil. and we as consumers tend to vastly overestimate the amount of healthy ingredients in something because we aren't aware of the caloric densities of everything that goes into it (sugar is 4 cals per gram, oil is 9 cals per gram, veggies are 0.3 cals per gram -> this ends up being very misleading when you compare relative amounts by eyeball). For example: did you know that pumpkin pie is barely 3% pumpkin? i was surprised as well. i didn't realize this until I actually calculated the numbers, detailed here: https://kale.world/pumpkin-pie-is-only-3-percent-pumpkin/

Personally, my general rule of thumb is, if the food didn't come directly from nature: (like a tree or bush or ground), then it's most likely a food like substance that has been processed (and thus goodness removed from it). so, i make most of my diet come from the primary 6 food groups: fruits, vegetables, beans, whole grains, tubers, nuts/seeds. If you do this, you'll get all the magnesium and fiber you need because most of the real food groups are quite high in magnesium, fiber, protein and almost every micronutrient (on average).
California loves doing this as well, especially with gun laws.
100% this. Disabling frame pointers is not worth it in my opinion. Hindering debugging and profiling is a massive regression. It's one of these historical (due to x86 having fewer registers) and short-term thinking changes that have unfortunately stayed with us. I'm optimistic that this can change but it will take a while.

BTW, I'm a big fan of your work, thanks for Flask and Jinja!
The main engine for discoverability for small Indy sites is google, and google lost the fight against seo spam sometime in the last 5 years. Independent sites are hard to find now, so you have to promote them via the closed networks (at least, the ones that allow you to link outside themselves — many do not, or they restrict it)
The earliest GUIs are scary to look at compared to how they are today, but the later GUIs show that the development slowed down at the end of the last century.
It would be great to combine this with type annotations somehow (JSONC?) and have the UI nag you when a value doesn't match its expected type

(nice demo, thanks for sharing)
I had the privilege of talking to a big investor in hydrogen fuel a few months ago so my answer will focus on hydrogen as a substitute for fossil fuels rather than the use of hydrogen elsewhere.

1/ Hydrogen cars and trucks exist but they break down a lot and they are not mass produced. There is no infrastructure to repair them either.

The investor is funding repair points and fuel points but the route has to be carefully planned to make sure the vehicle arrives to those points

2/ Hydrogen fuel distribution is almost non-existent at the moment (which was the main focus of this investor) and they were looking at building distribution points along the major road networks

It's a problem that electric cars don't face as electricity is already everywhere.

In the short term, only islands or otherwise very isolated road networks may convert to hydrogen fuel. And that's optimistic.
Here's the X500 Evo with a mechanical keyboard: http://www.mfilos.com/2014/08/x500-evo-arrived.html?m=1
(this talk is great!)

I think this would be cool. Have you considered asking Alexei directly?
> They [dynamic types] have potential to be more than "no static types", but that hasn't happened.

It happened thirty years ago:

https://en.wikipedia.org/wiki/The_Art_of_the_Metaobject_Prot...

But the thing that really drives me nuts about this never-ending debate is that static and dynamic are not a dichotomy. You don't have to choose one or the other. You can have both.

The real choices are:

1. Do you want the language to require the coder to provide type information (e.g. Java), or permit the coder to provide type information (e.g. Common Lisp) or forbid the coder from providing type information (e.g. early versions of Python, Javascript).

2. How much work do you want the compiler to do with regards to finding potential problems at compile-time, and what do you want it to do when it finds one? Options include: do nothing (e.g. Javascript), warn if it finds a problem (e.g. C), or forbid you to run the program if it finds one (Java, Haskell).

Personally these choices have always seemed like no-brainers to me: allow but don't require type information, and warn when the compiler finds a problem but allow the program to run anyway. What possible advantage is there to be gained from any other choice?
This is dirt simple native C++ code compiled with -m32, with structs and pointers (which happens to be generated, but that doesn't matter here)

I would expect that dereferencing a 32-bit pointer on x86-64 has zero overhead compared to dereferencing a 64-bit pointer (though I didn't test it). The only way I can see it being slower in the context of a real program is if the base address is an operand that has to be loaded from memory. But it shouldn't be because it's a 32-bit address space and it should be handled by the VMM, i.e. the base address is constant for the entire process.
In fairness, Mac users were already doing that in 1991 with System 7's Apple Menu Items folder.

You could put anything you wanted in that folder, and it would show up in the Apple Menu. It was a good idea to put aliases to your most commonly-used apps in it. I remember doing that all the way up through Mac OS 9.
Show HN: Finally achieved video timeline scrubbing with React Native
Essentially NO EV actually on sale support V2G, very few support very limited V2L in monodirectional fashion (or you charge, at a CONSTANT power or you discharge with limited power)...

And that's a VERY good example of the fact EVs designers have no clue on what they are doing: modern domestic storage is 400V like most EVs batteries, there is no damn reason to avoid a direct MPPT (DC) link between PV inverters and cars nor no damn reason to mandate charging at constant amperage. It's simply the lack of PUBLIC research who also produce PUBLIC standards...
Not OP, but as I understand it, it is about adding tests to check what the behavior will be if the input parameters have values outside of the expected type. E.g. what will be the behavior of "add(a, b)" if a or b are a string, null, array, object, undefined, etc. instead of numbers.
That page looks very helpful!

I giggled at them trying to explain Mastodon, though:

> There is no such thing as a social network called Mastodon! Instead there are thousands of independent social networks called Mastodon Instances.

...three paragraphs later...

> When we say “Mastodon” we mean the whole network of Mastodon Instances

I know what they were going for, but it seems to undercut itself. :)
I didn’t dispute that. I just refuted parents point here.
James Joyce is the "Emperor's New Clothes" of literature. People revere his writings and sing its praises but no one wants to admit they don't understand a damn thing.
I found the section on "Poor self-directed education" to be interesting. I've had similar feelings as a full stack developer, where in many ways I'm just learning APIs and other narrowly useful trivia. The only things I've had meaningful improvement in are stuff like soft skills, giving a good code review, or managing a complex project. Wondering what kind of skills someone like me should focus on to avoid the "embarrassing" skills/resume gap.
Yes. I suspect this taming of complexity and severe uniqueness of each codebase with it’s clever “patches” applied through meta programming is why we have the meme of the lone Lisp programmer writing their dependencies from scratch.

Having restrictions like types and no meta
programming is less “fun” but the new person on the team will get up to speed more quickly.

The one job where in C# actually they used a tonne of meta programming I could barely get anything done. Because of course
the documentation is non existent and the codebase so big would take you years to comprehend, or trying to get some help from never-free team members.

tldr KISS!
You put your authoritarian measure in, you take your regulation clause out, you put special intrests and you shake your constituents about.

You do the government pokey and you spin the media around. That's what it's all about.

You put your pay raise in, you take your public good will out, you put your pork in and you shake the public about.

You do the government pokey and you spin the lies around.
That's what it's all about.
Why have pihole at all if you have NextDNS?
I don't mean this as a slight towards the author, but I don't see how this takes away from what Tailwind is good at. I never imagined it would be a one-size-fits-all utopian solution to CSS (an already great tool, in my opinion), but it is great at a set of things it sets out to be great at, which sometimes aligns well with my needs.

I don't think tailwind should be used everywhere. Sort of like a CRUD framework, it could really get in the way of doing bespoke or atypical things the underlying language can do but the framework or library explicitly wasn't intended for. Breaking convention can become a hurdle.

The reality is that the vast majority of API work (for example) does benefit from a CRUD framework of some sort, be it lightweight or otherwise. CSS is great, but do we need its full potential at every corner of the UI? Probably not. What we need, usually, is a consistent set of conventions we can shovel out an get good, repeatable, familiar results which benefit both devs and users in the long term.

Tailwind supports custom classes for exactly this reason. You need an escape hatch because it isn't the holy grail of all CSS projects. It's a helpful tool with well-known limitations.

If I need to batch out projects in my shop, I will build jigs and find the right blades and cutters for my machines. Then I'll rip through the various settings to get the pieces I need very quickly. This is like Tailwind in the workshop. If I need absolute control, I need various hand tools and a lot more time. Can I create something awesome? Absolutely. Is it inherently better? Not really. It depends entirely on what is needed in the end. Generally speaking, most of us just want a dumb box to put some stuff in. Tailwind will do that expertly, just as my table saw and router with jigs will.

Asking your tools to do something they weren't intended to do will cause headaches, yes, but it becomes more an issue of user error than tooling problems at that point.
It depends on your courseload that semester. When I was taking organic chemistry I would spend a good 8 hours in the library a day monday-thursday on top of class, which would open the weekend up for partying. Wake up at 10 for class at 11, then straight to the library with the occasional break for meals or other classes until 11pm or so, whenever I got too tired to continue. By my senior year when I was just taking interesting electives, I was totally coasting, probably throwing in 2 hours a week in the library in total.
O'Connor v. Donaldson (per wikipedia)

> ruling that a state cannot constitutionally confine a non-dangerous individual who is capable of surviving safely in freedom by themselves or with the help of willing and responsible family members or friends.

The non-paywalled portion of the article

> Mayor Eric Adams directed the police and emergency medical workers to hospitalize people they deemed too mentally ill to care for themselves, even if they posed no threat to others.

These seem to be the same standard, they are confining people who incapable of caring for themselves, which O'Connor v. Donaldson apparently allowed.
Some Useful Patterns for Go's OS/exec
I'm not sure why you're trying to change the subject to money printing. But thanks for proving my point. You're right that dogecoins have value (for better or worse) and that value definitely doesn't come from any government.
European countries begin taking down public company registers after ruling
I feel like Common Lisp should be considered in this article. I think it can implement the specific points mentioned, and (quote x) introduces Gödelian difficulties for type systems that even the Haskells of the world don't handle well.

It's in some sense the "most dynamic" language, because you start one instance and repeatedly mutate it. And people mainly use introspection as the main tool for finding definitions/help/etc. instead of static documentation, so you don't have a half-hearted REPL.

I'm more of a static types person myself, but CL would be what I compare them to.
> Ideally we would transition to an unwind-specific format for user-space (something like ours, for example) and perhaps have a suitable unwinder in the kernel, rather than having to implement it in a BPF program. This is something we are considering for the future, but it's not free from problems (increased executable size, redundant unwind information, etc). But this is exactly why we wanted to have a conversation with the communities interested in this work!

I'm just an interested user rather than someone who has an ownership stake in any major distribution, language, library, or application, but fwiw:

I'd love for every binary/library to embed enough information to cheaply unwind during profiling [edit: and symbolize shortly afterward], in one simple format, so that this sort of profiling tool Just Works, as well as backtraces generated by the program itself (e.g. Rust's panics). I'd prefer it support inlining well (so ideally not just turning on frame pointers everywhere but that'd still be a huge improvement over the status quo). As you know, this is all a complete mess now, and I hate that. I think a reasonable amount of space overhead for this is fine. I want to be able to profile pre-packaged applications and my own Rust applications that use some C libraries without hassle. And have profiles written in a format that I can ship to another machine without trouble reading the symbols there or concern about excessive sensitive information. All stuff you've touched on. I would consider it a genuine miracle if the parties involved could all get behind this.

Full DWARF information, e.g. Rust's debug = 2 [1] (to be clear: my understanding is this is more or less to allow debuggers to print variable contents reasonably well?) is another matter. Seems like that adds a huge amount of bloat and is more rarely used. I like split debuginfo. As long as there's an easy way to get it on demand via a debuginfod service and/or installing an additional package, it's fine.

[1] https://doc.rust-lang.org/cargo/reference/profiles.html
Serverless WebRTC matchmaking for painless P2P
Booz Allen has got winning federal contracts down. Their proposal teams are second to none.

Now, they absolutely suck at delivering, and everyone who has to deal with their consultants on the job hates them and thinks they’re useless, but they definitely know how to play the game.
as a candidate Beto is a joker but that is a class move
Show HN: I created an app to find meeting spots
I created this site for a 10 day hack challenge in OSS. It basically just finds meeting spots between you and up to 9 other people, lets you select the time of day, radius to look in, and the type of meeting spots you're looking for (cafes, restaurants, etc.), and has a pretty nice UX imo. LMK what you think!
'As media scholar Victor Pickard suggests, “Hopefully Twitter’s collapse will lead to a more expansive conversation about the relationships between capitalist imperatives and the communication [and] information needs of democratic societies.”

As users begin migrating to the noncommercial fediverse, they need to reconsider their expectations for social media — and bring them in line with what we expect from other arenas of social life. We need to learn how to become more like engaged democratic citizens in the life of our networks.'

All right, running with this: corporate sponsored "public spaces" aren't really public (as they are capitalist entities). Let's add "Conway's Law" [1.] to this, and extrapolate that perhaps democracies currently are repeating the design of the communication structures that comprise it (of which there are myriad, but assume the largest/loudest have more sway). Let's pick one nation, the US, and question: is the US democracy constrained by the current corporate-sponsored public-spaces/communication structures (which have been old media, i.e. print, but seems now new media, i.e. all online). A 'fediversification' of the public mind seems really important here, the question is how far can/does it go (techno-first generations seems fine, but let's say baby-boomers perhaps not so much?).

I'm curious what others think about this, and what resources can be shared to provide more insight into this question.

[1.] Conway's Law: “Organizations, who design systems, are constrained to produce designs which are copies of the communication structures of these organizations.”
NextDNS is pretty good. My only gripe is that it's a chore to unsubscribe from emails because unsubscribe links often have trackers that NextDNS blocks, so I have to go into the NextDNS console and add a temporary exception.
I think he's talking about the mathematical 'universe,' not the universe we live in. Apparently it's not so obvious what's absurd in the mathematical universe.

Alternatively, maybe you and I can define 'absurd' very solidly, then go and overturn large portions of current mathematics. But I'm guessing that's more difficult than it sounds.
Tailwind absolutely requires knowing CSS. You cannot effectively use `outline-2` without understanding what an outline is.
Dang's reply: https://news.ycombinator.com/item?id=33790811

>they've found the problem and are currently backfilling the missing data
I'm actually very happy about the rise of VTubers/live avatars. I imagine that there are a lot of people that would love to interactively share their knowledge/skills on youtube/twitch but avoid doing so because they're not conventionally attractive or just too shy.
> How do you enforce consistency in CSS-in-JS? Paddings, margins, sizes, colors?
JavaScript variables, css variables? Both can be used. It's pretty trivial tbh.
Too bad. I cancelled my dropbox sub and moved to TrueNAS Scale + Nextcloud + B2 rclone last year. Dropbox could have me back anytime they want me.