skysight-inc/HackerNews huggingface dataset:
I teach tech of all kind, mostly Python programming and advanced data skills. I get deep satisfaction in helping learners on their journey. I also enjoy connecting with them as people. Teaching has made a fulfilling career for the last 20 years. Hopefully, I keep doing it for a couple of more decades.
ai automation consulting is kinda fulfilling for me. I get to play with chatGPT daily, and I'm on retainer so it's like having a SaaS just with custom bots for my clients. It's also not as draining as full stack development used to feel. Solutions take a few days to a few weeks then I move on to new projects.
I felt unfulfilled back in 2009/2010, thought I was burned out, and left tech for a 9-year period (2011-2019) to own and operate a retail sporting goods business (bikes, running shoes, and swim gear). Now THAT was a grind.

After I came back to tech, I guess I have a renewed perspective or something. The big shift for me is that I'm more internally motivated than most people seem to be. The business I work for will have its ups and downs, but I'm able to be self-actualized by doing good work for good work's sake.

And I'm blessed to be in a role that, I think, is a really good fit for my skills and experience. I still have entrepreneurial fantasies from time to time, but I very, very much enjoy the work that I'm doing and am very grateful for that peace of mind.
> This new ability to directly read or write to the full application memory address space will significantly improve programmer productivity for all programming models built on top of CUDA: CUDA C++, Fortran, standard parallelism in Python, ISO C++, ISO Fortran, OpenACC, OpenMP, and many others.

This is the part of CUDA alternatives always miss when their models only support C and some C++ subset.
At this point citizens owe the government nothing for allowing this to happen. Not even taxes! Every social problem from mass shootings to homelessness might as well be attributed to Microplastics or some form of other pollutant.
I failed to locate such a comment. And even if there was one and got removed later, the last known position is that she regret to write an article that can be perceived as toxic, no matter her intent [1].

[1] https://news.ycombinator.com/item?id=31954082
The issue with tech is that most of the interesting stuff you can do at home anyway, but without the looming threats of deadlines and terrible million dollars mistakes.

I did feel like writing an upbeat comment about going to work for organisations where technology is a tools for solving fulfilling problems, and while I do believe that it the current best solution, I do still see the problem.

Last night I watched a video where the Altair 8800 appeared and it occurred to me that there's almost no way for a small team to do anything as impactful today. Part of the reason the retro scene is some alive might be that it's to some extend more enjoyable to work on. While it would probably have been stressful enough to be in the industry in the 70s and 80s, there was just so much more room to do interesting stuff. Today most of us are just contributing a small part to a larger project and that's just less satisfying that being involved in all aspect of a project.
> So far so good, perhaps. But, by creating this new abstraction, the programmer signals to posterity that this new abstraction is “the way things should be” and that this new abstraction ought not to be messed with. As a result, this abstraction gets bastardized over time as maintainers of the code need to change it yet simultaneously feel compelled to preserve it.

How I've been thinking about abstractions that turn bad over time is: It was likely the correct abstraction at the time it was made, given the requirements the writer had on hand. Now that the abstraction is wrong, don't muck with it. Gather the new requirements and write a v2.

I think the vast majority of abstractions will go bad over time. To abstract is to generalize, and generalizations become invalid over time because the world evolves over time. It's sort of like trying to preserve a summary of a book that is continuously having new pages added and existing pages replaced.
I think everyone struggles with this at a certain point in life and this extends beyond the tech sector.

Understanding the impact of your work is not always easy, but it is a necessity to feel like you are performing meaningful work.

What helps me is talking to customers and understand how our product makes their life better and what my role is in building the product.

Whether you are picking fruit, flipping burgers or building tech, you are a little cog in a system that hopefully produces a net positive to humanity.
Orbstack Kubernetes Support
Climate change is just one symptom of the overshoot.

https://en.wikipedia.org/wiki/Planetary_boundaries#Nine_boun...

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

Biodiversity loss is the worst of them all.
I've used something like this (my code, Java, ~1k LOC) for code interviews,
because I was always thinking about what would be the best algorithm for an elevator when going in on - to this day.

1. Explain what is going on
2. Fix a bug in the code
3. Add a small feature
Some merchants will cancel my orders because it trips their fraud filters.

Those same merchants will allow my orders when the only change is that I pay with PayPal rather than my credit card.
Not all transfusions are used in emergency situations.
I like working in internal software for my company. Keeps me close to the customer (other devs). The feedback loop is tight so I quickly learn whether my work helped someone else.

Plus, you get to know so many other ways of being a software developer; it’s refreshing.
I use this pattern a lot. It's also nice to be able to do dict.get(key, lambda: raise ValueError(f'no handler for {key}')) to have a nice fallback or raise in a convenient one liner.
Sometimes companies write FLOSS, too.
How long until a robot is doing your chores?
Yes, it might. I think the point the grandparent comment was making was that plastic rubbish in parks most likely will not end up in the oceans.

I think the most common sources are:

* Plastic netting
* Plastics from countries without any/lacking waste infrastructure
I've found that lots of dictionary dispatch in Python ends up feeling a lot nicer as class attributes. You get nicer typing properties, autocomplete, don't need to type quotation marks in many places, and you don't end up in the weird "use lambdas or define functions and then refer to those in the dictionary".

Of course if you're trying to do a registry-pattern style thing the constraints are different (though there I also think that you end up wanting to base your stuff on classes whose metaclass registers itself based on a string-y class attr or something...)

Though in the end it's super dependent on what kind of code you're trying to write. No rule is absolute, especially in this category of aesthetics.
> for example, the same several lines of code duplicated across distant parts of the codebase dozens of times, and with inconsistent names which make the duplication hard to notice or track down

While I think there’s merit in deduplicating these situations, one pitfall is introducing coupling and tangled dependencies when DRYing.

There are ways around this of course, but I’ve come across a number of instances where deduplication has led to unnecessary coupling between modules.
I observed an increase in illness frequency when I took them. I haven't been diagnosed with immunodeficiency. Drawing solely from my individual experience (n=1), I wouldn't recommend it to others.
The vast majority of tech jobs are somewhat pointless and boring. As with everything, there is a law of diminishing returns. The same is true of many academic research fields. The years 1900-1970 were the golden years of mathematics for example and now there's very little to do there.

Most tech jobs today are highly commercial and not about making life better. Even if you manage to find something that is somewhat relevant to the real world, like green energy research, chances are it might be something highly technical, abstract, and difficult to relate back to the final product.

For everything else, you'll likely just work on the arms race to the bottom -- whether it be an arms race to fight for attention in the narcisstic space of social media, improving database read times at Google, making some new AI to replace millions of humans, wasting people's time with more advertising, or making poor people buy more stuff they don't need.

In my opinion, if you want to have something truly fulfilling, you'll have to first ask yourself how you can actually make the world better, and then strike out on your own to do it. 95% of modern tech jobs are just a weight on society's back, dragging us down.
Computers have facilitated a second industrial revolution, and we're living in the "children crawling into giant machines, everyone is choking on coal smoke in London" phase. In today's economy it's precariously employed gig workers being exploited. Everyone's mental health is being poisoned by social media. There's a small upper crust of capitalist "factory owners" who are making bank by resisting any attempts by legislators and labour to reign them in.

If we compare today to the Industrial Revolution, this seems like a cycle - eventually the organized labour backlash occurs, some of the excess value from automation gets passed to the workers in the form of shorter hours and higher pay. The environmental harms are recognized and the externalities are regulated by the government.

Since I've been in the industry I've often thought of myself as a Luddite - someone who opposes the constant race to the bottom that technology is driving. The original Luddites were skilled artisans who protested cheap, low quality cloth woven by machines. They knew that unskilled, automated work not only produced worse goods, but it was bad for the souls of the workers. To quote Ursula LeGuin in The Dispossessed:

> A child free from the guilt of ownership and the burden of economic competition will grow up with the will to do what needs doing and the capacity for joy in doing it. It is useless work that darkens the heart. The delight of the nursing mother, of the scholar, of the successful hunter, of the good cook, of the skilful maker, of anyone doing needed work and doing it well, - this durable joy is perhaps the deepest source of human affection and of sociality as a whole.
Just to put things in perspective, here are last week’s NPM download numbers for those three frameworks[1]:

React: 21,879,845

Svelte: 722,312

Qwik: 11,702

[1] https://npmtrends.com/@builder.io/qwik-vs-react-vs-svelte
Project loom should make it better in dev experience and easier to reason + better library evosystem.
Who is we? The model creator or the user? Getting out what we put in is kind of par for the course in education, yes?
I realize "speed is a feature", but it's rare when that is THE feature. :)
I feel like Scrum was one of the biggest, long-running slow motion mistakes I've ever seen. It was well intentioned, but retrospectively pretty garbage. The best faint praise you can give it I think was that it was better than planning who was working on what for each step of a project for a year out, but agile on its own was sufficient to convince everyone to fix that problem.

Scrum kind of ended up a local maxima that a lot of good people seem to get stuck in for a very long time.
I fail to see how this is any worse than a whole bunch of sophisticated Python, C++ or Java applications I've tried to browse. It isn't as simple as a single code unit with a main entrypoint directly in a `src` folder, but I don't expect such things from reasonably complex software projects.

As for the source code itself, I agree, Rust does rely more on library functions than language constructs on some things (e.g. unwrapping optional values), but I'd argue this is just more different form C rather than strictly worse when it comes to readability. I wouldn't complain about how difficult it is to read Greek as a person who only knows English.
Does that mean that now anyone with rtx20 series or above can run local ML models as big as their RAM allows? (Or larger if they're happy to wait for swapping to SSD) Or am I misunderstanding the scale of the impact here?

(Not exactly "now", but when the software is recompiled / ported to this)
Does it have similar capabilities in fault tolerance?
I too really love C#. That said, C# biggest weaknesses IMO are all around a lack of proper const-like markup. Given that TypeScript (another language by the same designer) exhibits similar weaknesses, I've always interpreted it as an intentional weakness introduced by the language designer.

Working in a fully const-correct codebase in C++ is a joy. Working in a partially const-correct codebase in C++ is a nightmare because everything has to work around the semantic expectations of everything else.

Anders Hejlsberg, and those who took over the C# language design after he moved on to TypeScript, were certainly aware of how to make the language fully constable. The fact that they didn't leads me to believe they viewed it as a trade off between how much benefit do you get from using it vs how much cost do you take on from having that markup need to be everywhere in your entire language ecosystem. It's not enough for one application architect to say they want to take it on. Every engineer working on every library and every potentially reused function would have to take it on, because constness done right either tendrils everywhere or is a lie, and there are big costs to extending those constipation tendrils, just as there are big costs to not having them.
> This is a pretty realistic balanced real-world benchmark of web frameworks (and languages): https://www.techempower.com/benchmarks/

Did you even ever see implementation behind techempower benchmarks? There's NOTHING realistic in them. Those applications literally hardcode static content length header values to be faster. They are pretty good show of how low you can get to squeeze out performance but not one sane person will write code like that.
Obesity is caused in part by environmental toxins, probably to different extents in different people:

https://www.theguardian.com/environment/2022/may/19/environm...

https://www.webmd.com/obesity/what-to-know-obesogens

These so called "obesogens" just increase the propensity towards obesity and depending on exposure and your sensitivity to then, you can overcome them or not via exercise and dieting and other means.
I think this part partially answers your question on how it got there

> Australian parasitology expert Mehrab Hossain said she suspected the woman became an "accidental host" after using the foraged plants - contaminated by python faeces and parasite eggs - for cooking.

They also wrote about some damage in the brain, but I don’t know if the damage was relevant.

> The "string-like structure" was pulled from the patient's damaged frontal lobe during surgery in Canberra last year.

I don’t know if it was a brain eating parasite but the mentioned which type of parasite it was so you could probably look into it.
Observability in WebAssembly
Extract logs, traces, and metrics from Wasm!
This is very cool. I wonder how much each of those airships cost?
The saying 'duplication is cheaper than the wrong abstraction' is a gem of a saying, but like many pieces of wisdom, takes experience to fully understand.

I first saw the saying when DRY was being applied without any nuance. If a piece of code appeared in two places, it was obvious, and important, to factor it out, because that was 'good coding practice'.

The saying being discussed was pushback against that kneejerk, thoughtless application of DRY. The 'cheaper than the wrong abstraction' is pointing out that DRY isn't a 'no tradeoff' policy. By factoring out any duplication, many uses pass through the same code. If the uses don't quite match, there is a tendency for the code to get modified to fit them anyway. This, over time, makes the shared code simultaneously unfit for use, and widely used. A recipe for poor code quality and system health. Ironically, this is the outcome that DRY was called in to address.
For me it's the inventors locked away somewhere. There's a lot of glory in being a big tech CEO, making the billions, etc. I'm not really very interested in that: I'm more interested in the stories of building important or useful things. I like the Wozzes, you know?

Now that's not to say that I don't think being visionary is important. It's just that I don't relate to the "visionary" or "company building" types as much as I do to inventors and programmers.

I do, however, really admire my current CEO and CTO, both... my CEO and I have talked at length as to his goals for a company, and he's said on multiple occasions that what he really wants to do is take care of people. That's different. That's real. You see Musk talk about the companies like they're his children, but I didn't get the impression that it was the people who made up the companies. I get that impression from my CEO. It feels good.

My CTO is a classic inventor. He can chase down anything, he has the tools for any problem, and if he didn't he'd either find them or create them. It's insane the way his brain works. Mine doesn't work that way, it just doesn't. And that's OK -- it's just very cool to watch someone like that go.

No, I don't care for the psychopathy of hyper tech billionaires. Imo, it's better to have a smaller company along with a healthy dose of humanity. That's what I'm getting from the leadership at my company now... just damn good people. People who are trying their best for their company, for their employees.
Very sure. I took my sweet time inspecting it and then just about puked before tossing that trash. Never ate there again. The burger was disgusting aside from the plastic as well which was the only reason I even inspected it in the first place.
Grasshoppers are cool. And a platform has been created to add more features if they make sense. It already can do a bunch of stuff, I advice you to give it a try.
The problem with OS diversity what that even UNIX wasn't a monoculture.
I buy into the same belief as you here, but I guess you could easily argue that you could create a suitable fitting abstraction earlier on with the understanding that you can "detach" them once the point that they're fundamentally different comes
Please, do not drink distilled water. You’re not going to die because you also get ions from food but it certainly doesn’t help.
> If your company illegally treads on my IP, I don't care if your employees used LLM's or not; I will sue.

In the US the saying is "This case will come down to who has the last dime and it won't be you".

> By the way, I don't have to win a lawsuit to get some justice; I'll make discovery hurt.

Even for discovery a common tactic deployed for discovery is to "bury" the other party in discovery materials to the point where they will incur substantial costs just to parse the absurd mountains of materials they send you. Another "bleed you out" strategy.
> if a thing is not immediately obvious without studying then we should remain ignorant of it.

I'm not sure if you're willfully ignorant or just saw an opportunity to pass a pejorative and took it.

I didn't say we should "ignore it". I said we shouldn't allow scientists to exclusively decide what should or should not be legal.
Stop trying to make desktop software with web technologies, they are all slower and suckier than their counterparts.

I'm not saying it's impossible to make a good native app with web technologies, only that you can _ALWAYS_ make a better one using native tech.
To any person you're in a position to be kind to.
It's almost as if it was the adoption of the microwave oven that signaled the roller coaster was beginning to race downhill.

God, I wish I could go back to non-plastic packaging. Natural peanut butter I can still find in glass, as I can for my jelly. But mayonnaise, ketchup and countless other items are in plastic-only containers.
ARM claims trademark infringement of researcher's domain
Could you please share this simple explanation for those of us who aren’t as smart as you?
Apologies, yes I mean general
My point is, Al Gore ran on climate change first and foremost and he did NOT win by a landslide.

If the US population actually cared, and and was willing to pay the price for taking action, then the nextbest presidential candidate could just run with it; voters would simply disregard how that candidate would interpret the second amendment, or his faith, or his view on gender/race representation, or healthcare or police-- he could simply win on a climate preservation platform.

But you very obviously can't, not 20 years ago and not now, because people care about other things more.
Recyclable packaging tends to make for pretty good fuel.
> A doctor for every person, a teacher for every child, available any time and for free.

You clearly don't have a deep understanding of what doctors and teachers do.
Duplication is cheaper because of how most programmers write code at their job:

- write stuff as fast as possible, without having time to think about overall architecture, especially if it involves having to cooperate with other devs. It's easier to just implement something that's as quick and as simple as possible so that it can be passed off to someone else with minimum effort.

- no need to communicate the abstraction semantics - no need for documentation outlining the abstraction, reasoning, possible expansion, etc.

- it's much easier to make localized changes. A well written abstraction will cover some logic that might be spread across multiple areas. Changing something major to the abstraction requires understanding how the abstraction affects all it's applications in the same ticket. Whereas duplicated code can result in a ticket being resolved by just making a change to a specific code block, like a function.

- Things that work well aren't appreciated. If it's easy to update an abstraction to a new feature, it'll be the expected outcome. When a change like the previous point is needed, it's much more memorable because of the frustrating experience is likely to be longer and more strenuous. We also tend to remember negative experiences over positive ones.

- Abstractions require reading more code with additional levels of indirection and devs don't like reading other people's code.

- Writing things well requires effort, so bad abstractions are more likely.

- More mature projects tend to have more abstractions because of their additional complexity, so I would guess that there's a strong correlation between difficult projects and frequency of abstractions.

- Some people went absolutely nuts with writing blogs posts, and evangelizing certain techniques which were completely unnecessary in an effort to push out content. There's lots of things to write about on implementing abstractions. But little in the other direction other than don't write unnecessary abstractions.
Isn't CARIAD the software wing of VW? Why do they need seat belt?
Requests to Give to Charity at the Checkout Counter Irk Customers
> Microplastics are everywhere. Everywhere on the planet we look, we find microplastics. Just ... everywhere.

I appreciate the links, but that's not what I asked. I know microplastics are everywhere. Do you have studies showing that plastic begins to distintegrate immediately? What's the working lifetime for a plastic container before it begins to distintegrate and leach microplastics into what's stored in it?
Way way way slower though. I just added something to our app that took 600ms for the naive ‘search and loop’ version (and kept getting slower the more items you needed, completely unscaleable) vs the 30ms for the ‘real SQL query’ version. Guess which version got actually committed.
Firefox 117 released with CSS nesting support