skysight-inc/HackerNews huggingface dataset:
> no 3D GPU

Do you like Windows? Because Direct2D, the 2D-renderer of Windows for Desktops / 2D applications, is built on top of DirectX.

That means you need a 3D GPU to run Windows 7, let alone Win8, Win10, or Win11.

------

Using 3D GPU commands, in particular a 2D rectangle as the basis of texture-mapping (with textures being uploaded to "GPU-memory"), is the standard methodology today.

Old-school 2D API (GDI) based off of bit-blitting just isn't how computers work anymore. INT 10H services (https://en.wikipedia.org/wiki/INT_10H) are long, long, long dead.

IIRC, GDI is provided on modern Windows in terms of Direct2D emulation layer (ie: GDI is built on top of Direct2D, which is built on top of DirectX 3D commands).

-------

This makes sense, because "pixel fill" / pixel-shaders are far more flexible than the ol' Bitblt. Even if you were to only be doing 2D code, modern GPU effects (ex: alpha-transparency, fades, etc. etc.) are best built out of pixel-effects and pixel-shaders.

I admit to being ignorant to Linux graphics drivers, but I'd expect the same thing. Modern hardware is built out of the 3D API / paradigm. "Running code" on a remote GPU/SIMD-cluster is far more efficient than having those effects calculated on the CPU (ex: alpha-transparency, anti-aliasing, painter's algorithm, z-depth, etc. etc.)
> I recently worked on a project with 2 devs that took 3 months with a modern stack. The prototype in a standard MVC stack I'd made to demo to the client took 2 days.

Can you expand on the modern stack and that standard stack? Is the "standard stack" you propose easier to work with now than it was 15 years ago? I guess the "standard stack" is just out of fashion?

My preferred stack (aws serverless BE, nextjs front end or just aws app sync) keeps me in one language (typescript), with some stuff like GraphQL that you have to know. But the tooling around that helps keep my errors in compile time for the most part.
I don’t remember exactly, but I think this also took away the ability for users to manage their factors (I.e. register a new hardware token)
Not to mention shoehorning MongoDB into everything because "MySQL is slow".

This is at a startup that doesn't even have 100 concurrent users, and their data and queries are nothing special.
I like it. As a kid (and well into my 30s[1]), any time I tried to learn 'music theory' I was put off by the feeling that what I was learning was more about the goofy and confusing standard notation than it was about music. By fixing the notation that barrier could be removed and students could get straight into the interesting stuff sooner. At least I think it would have helped me!

[1] I eventually came to understand a lot of the concepts about scales/keys/etc by ignoring the notation and just horsing around on my MIDI keyboard a lot.
Yoo thanks! That is indeed what I was looking for.

(I am pretty bad at finding things after a long days work of development)
Having dealt with the clunky record structures of 60s operating systems, they did have their advantages, but the spread of cross-platform tools in the 80s and 90s killed them since Unix only knew byte streams. There are, I think some vestiges of it in the distinction between text and binary files on Windows (assuming that this still exists), but otherwise Unix’s everything is a stream of bytes has won. I kind of miss knowing that I had a file consisting of, e.g., 256-byte blocks.
Tailscale will let you use any SAML or OIDC provider you like in the Enterprise plan (presumably because of the cost of supporting the long tail of nonsense IdPs will produce).

(Disclosure: I'm a (small) investor via Latacora's sibling fund, Lagomorphic.)
You can't eat stars. What's the value?
The new data tools I've seen are complex under the hood, but offer elegant user experiences, giving the best of both worlds.

You referenced a 500 line Python script being refactored with Rust and make me think of the Polars project: https://github.com/pola-rs/polars

Polars uses Rust to make DataFrame operations lightning fast. But you don't need to use Rust to use Polars. Just use the Polars Python API and you have an elegant way to scale on a single machine and perform analyses way faster.

I'm working on Dask and our end goal is the same. We want to provide users with syntax they're familiar with to scale their analyses locally & to clusters in the cloud. We also want to provide flexibility so users can provide highly custom analyses. Highly custom analyses are complex by nature, so these aren't "easy codebases" by any means, but Dask Futures / Dask Delayed makes the distributed cluster multiprocessing part a lot easier.

Anyways, I've just seen the data industry moving towards better & better tools. Delta Lake abstracting all the complications of maintaining all the complications of plain vanilla Parquet lakes is another example of the amazing tooling. Now the analyses and models... those seem to be getting more complicated.
We have way too many issues with KeyCloak. Sometimes I wonder why did we integrate this. One of the main issue is when you authorize by Github but cancel the authentication, it redirects to KeyCloak page rather than our login page. Couldn't find any solution yet.
OH, I see, thanks. The password and TOTP secret are separate, but you're suggesting they may likely both be stored in the same place such that a breach could give attacker access to both. Tell me if I don't have it right.

It occurs to me that I know how to reset my password most places I log in to, but I actually have no idea how to reset the TOTP secret.
Tailscale is one of the ways you can restore the end-to-end connectivity principle that IP introduced and that NAT destroyed.
A person's actions sometimes have effects on other people. Such as not wearing a mask, for example. Or writing some piece of obscure but critical infrastructure with a memory vulnerability that causes all someone's precious apes to be stolen.
You probably know the "DivX" codec, but do you remember the "video rental" format that it was originally devised for?
I once read about old school sysadmins keeping a large dummy file that was a few percent of the total disk size (e.g. 2GB file on a 100GB disk). If a server ran out of disk in the middle of the night due to a bad config, logs filling up, etc., one could delete the file and create some troubleshooting time.
> Fun fact: that func has a hidden bug, if one should be pedantic. Can you spot it?

Are you referring to the fact that the timer is still hanging around? Would this be the most-correct version?

func sleepCtx(ctx context.Context, delay time.Duration) {
t := time.NewTimer(delay)
defer func() {
if !t.Stop() {
<-t.C
}
}()
select {
case <-ctx.Done():
case <-t.C:
}
}
> “go but with ownership and borrow checker”

Wouldn’t this be just a lesser version of rust then? If someone makes a new language and wants it to catch on, it needs new ideas. Not just nice simple syntax mixed with something someone else is already doing.
Have you made your way to the ZC developer discord yet? By the way, clearly I'm a fan of your work, thanks for helping make ZC!
The Quest to Save Antartica's Most Important Species
> I would hate to be the creator of Hare and get so much crap for simply daring to exist.

Certainly.

Since the announce of Hare I've seen __too__ much criticism IMHO.

I think the authors have stated clearly the intentions and the features of the language: They just want a slightly better C. Of course you may not like it, but no need to be that harsh...
Bitwarden has a self hosted feature. I've been using that for a while now and I highly recommend it for a paranoid you.
The issue if I remember correctly was that you could require the email to be verified. But while that verification was pending, it would already use the new email as the user’s asserted attribute.
>> Honestly I think converging on the TSMC/Samsung definition of "4nm" is probably a good thing overall for reducing confusion.

Yeah, but if I'm not mistaken this actually IS the TSMC 4nm process, and Intel is still a couple years away from mass production of anything EUV. It is getting hard to keep up with the marketing BS. Anyone got confirmation on this being fabbed at TSMC?
yes and, one of Perl's design goals was literally "report generation" .. which it turns out, might be in HTML format
The control server is not open source. Thankfully headspace https://github.com/juanfont/headscale is filling that gap
That's my point. Things won't the same again.
FYI SimpleLogin joined the Proton family
Deflation is the worst possible state for a currency.

An economy is defined as the flow of goods and services. Currency is the medium through which goods and services flow. Deflation encourages people to not spend their money. Not spending money means goods and services don't flow, means an economy collapses.

That bitcoin / crypto people keep harping that deflation is a good thing proves to me that these people know nothing about economics and should never be trusted as such.
The author is describing lifestyle brands. This is a market segment that's as old as time, they are prevalent on Instagram.

He complains about a direct-to-consumer underwear brand costing 10x as much as fruit of the loom. This isn't any different from Ralph Lauren, or Calvin Klein, or any of the legacy players in the segment.

Lifestyle brands have large creative and marketing teams, with production secondary and technical production largely outsourced, sometimes to the manufacturing partners.

This is a well worn business model for product categories in which all the margins have been competed away. Pricing power comes from the emotion of brand alignment.
We're not programming like Turing award winners. We're not treating software as the science to make a product but as the mechanics to put it together and patch it.

We should be less original and try to copy mathematics - their theorems are valid for thousands of years. Our codebases last maybe a decade.
As the founder of what some say is a competitor (ZeroTier) I'd like to congratulate the Tailscale team. We don't really see Tailscale as the competition. We see the competition as:

(1) The old school castle and moat IT model that dominates at 99% of companies. If we can disrupt this then TS, ZT, and four other upstarts could all become billion dollar companies. Right now 1-2% of this market has been disrupted at most.

(2) The put everything in the cloud and everyone gets a thin client model. If that wins then all of us lose because there is no market for endpoint connectivity. We also lose all privacy, all data ownership, and all ability to experiment or innovate without paying for it by the instance-hour with TOS-enforcement bots looking over our shoulder.
To me, Escape felt a lot like a fan fiction story. A pretty good one, sure, but it still hatched onto the themes that you mention (which used to be more or less background gags in previous installments without much relevance to the actual story) the way fans usually do when writing their own stories. So you got bombarded with callbacks to previous games, characters you already knew, jokes you already heard, and stories that didn't really feel like natural progression of the lore but more like "what if?" scenarios. Ozzie, Herman, your old crew, LeChuck's role in the whole conspiracy, Giant Monkey Head, Planet Threepwood... compare that to Curse, which genuinely moved the series forward into a new and fresh adventure. It also called back to previous games - it even started with Wally right in the first scene who didn't really need to be there - but it always felt like an addition to the game's story, or a glue that makes a Monkey Island game a Monkey Island game, rather than something it relies on to be funny or interesting (after all, we meet Murray right after meeting Wally in Curse, and I don't think any character introduced in Escape is even close to how strong Murray is as a character).

Escape would be a great spin-off - it's still a genuinely fun and engaging adventure game if you can look past its shortcomings. However, as an entry in the main series, it feels a bit wrong, and definitely the weakest. It's not "a pirate tale with good share of silliness" anymore, but rather "a silly tale with good share of pirates". I bet that most of the stuff in the new game that will end up contradicting older games' canon will be stuff that goes at odds with Escape in particular, mostly thanks to its plot twists for the sake of plot twists and taking previous games' gags way too seriously :P
> working on the skills it would take to become a consultant

Curious to know what you were doing to make this happen. Did you have a guide?
I’ll pile on JS as well. I can’t believe that we’ve taken a dubious scripting language and started to use it on the backend, then wrapped multiple layers like Typescript around it to hide how much it sucks.

Also, how many absurd packages do I need? Disk speed shouldn’t be the limiting factor when building an app. Other, more mature, ecosystems don’t have the same security issues either because no one would ever install an entire library to check if something is even or odd or to pad a string.
Just because Ruby and Python are great doesn't mean that they ought to be used for every project. I love being able to write code that compiles to a single statically-linked executable in Rust that pushed me to write more correct code from the start. I also appreciate what Erlang/Elixir offer in terms of fault tolerance, extensive pattern matching and functional programming. There are so many ways to solve problems and that's a good thing. Every one of these languages has tradeoffs, though. People don't move to fancy stacks just for the sake of moving. They're trying to solve old problems by creating new ones!
I'm not sure what problems you're running into with decoupling capacitors. I find this to be the easiest part of my designs.

If the datasheet has specific requirements, do that. Otherwise, 100n capacitors on each power pin. 50V 100n capacitors can be found all the way down 0402s, and there's no sense in using anything else. Dielectric doesn't matter much for decoupling.

Increased cost due to an additional BOM item is way higher than the fraction of a cent of a cheaper capacitor.
Conspicuous consumption isn't exactly new. These products aim to be affordable luxury brands while usually greenwashing or "socialwashing" (redwashing?) the product to appeal to consumers who either try to be more conscious (but don't or can't invest the time to see through the marketing) or who want to appear more conscious while steering clear of the perceived ickiness of the causes they support (e.g. direct contact with homeless people).

I'm actually not sure whether some of the mentioned price tags aren't actually justified given the overhead of the x-washing (e.g. supplying homeless shelters with variable amounts of socks rather than simply setting up a recurring donation). The real grift are white label electronics bulk purchases from Alibaba and sold at a 10x to 100x price tag. There is an entire industry in creating brands out of whole cloth to do just that.
I've been using it since last summer to SSH to my pi too. Huge relief in terms of securing it. Easy to install and it just works. I'm not particularly savvy either.

My only complaint is that if you use it on your phone (iphone 11) and forget to turn it off it drains the battery like crazy.
in the source code: var k=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED lol.
also ;e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED" (edit)
(https://bitwarden.com/framework-17fddc626c2ea4ff0e8c.js)
There's a kind of WIP control server implementation, it's not production ready in my opinion but it's definitely usable.

https://github.com/juanfont/headscale
No, it's called "résumé-driven design".
There is another interesting company in this space- Netmaker[0]. It's been getting a lot of traction in the homelab space- namely because it takes advantage of kernel wireguard, which is more performant than the userspace wireguard that tailscale uses.

[0] - https://www.netmaker.org/
I’m excited to share Master the Code Review: forge a better process, give better reviews, write better code.

It’s a video course with 4+ hours of content [1]. I’ve linked a 21-minute sample below [2].

6 years ago, I began my software engineering career at Amazon Web Services. I struggled with Pull Requests. My authored PRs received many comments, sometimes 50+. They went through many revisions, sometimes 7+. I often shipped late. My reviews of other PRs were surface level and counterproductive.

Long story short: I improved. Through trial, error and experience I learned how to be effective in all 3 dimensions of code reviews: process, reviewer, and author.

I came to realize that there isn’t much information out there, giving developers actionable guidance to succeed in a code review environment. Doing so takes specific soft skills, social skills, and technical skills. Very few people talk about them.

Late 2020, I started writing about code reviews on my Medium, Twitter [3] and LinkedIn. I grew from 0 to almost 17K followers across platforms. The internet held me accountable for ambiguities and inaccuracies of my public writing. I learned a lot, and leveraged both positive and negative feedback to refine my ideas.

My writing experience gave me the confidence to build the course. I created it for my younger self, and I hope developers everywhere find it useful.

I launched it two months ago. So far there have been more than 750 students. I’ve received positive feedback from senior managers and principal engineers across big tech.

Happy to answer questions!

[1] Course: https://curtiseinsmann.gumroad.com/l/code-review-course

[2] Sample video — Writing effective code review comments: https://app.gumroad.com/s/90c67f7093db4dd0d544187b0a29bccf/v...

[3] Example Twitter thread: https://twitter.com/curtiseinsmann/status/131714941733036442...
> I get it, maybe Tommy John is better than Fruit of the Loom.

I like seeing ads and spending money on things that might be nicer than the things I have now. I can't imagine I'm the only person like this.
Regardless of how you're deploying things, having unrelated projects in the same git repository might be simpler (maybe?) but certainly seems worse at the same time.
"Fixing the internet" == you can communicate with computers that you want to communicate with, and not with others.
> I really like the direction [1Password] is heading

I thought customers were complainingly loudly against their new direction of making 1Password an Electron app. Is that not the case?

Note: I'm not a 1Password customer.
Complexity is bad when you are designing and maintaining a system. The ecosystem of humanity's software development isn't something you are designing or maintaining, here complexity is good because it provides abundance and diversity of tools and solutions. Don't need it? Don't use it. But stop advocating either as the right or good way for everyone.
The title is weird, the post is actually asking "why do premium brands exist?". It doesn't matter much if their product is actually better - the high price itself is the part of experience. It sounds weird but you "pay more to be able to paying more". And of course to show other people that you can afford doing that.
The clients are. The control server, which is the bit that Tailscale host, is not.

There is an open source alternative called headscale [0]. The main downside is that you'll need to run it.

The closed source centralised control server has other potential issues though, and it ends up being up to the user to decide what's the right balance of security vs convenience.

[0] https://github.com/juanfont/headscale
> and everything irreparable garbage

I know right. Back when we used to have vacuum tubes for computing, you just needed some basic glass blowing and electronic skills and you could repair any computer. Ever since we moved to integrated circuits and transistors, repairability has gone way down.
Developers/engineers/programmers do this because we crave complexity. Then throw in a dash of elite-ism/gatekeeping, a sprinkle of CS trivia driven hiring (aka leetcode interviews) and you will find these behaviors. Organizations may fear losing top people because other organizations, maybe brand-new startups, use shiny new tech to solve same-old-problems so it looks appealing. Its a shiny-new-tech arms race with a JS framework proliferation (I couldn't help myself to not take a jab at JS, sorry).

Here's a walk down memory lane for you about rewriting apps, circa year 2000: https://www.joelonsoftware.com/2000/04/06/things-you-should-... If you replace names and versions of things with "Go", "Rust", etc. it is pretty much what you describe.
Yep. I see the Disney ride was used as inspiration for the game.

Makes sense that they are suspiciously similar!

>reference
"Captain Jack Sparrow at one point used a coffin as a rowboat, just like Guybrush did. The movie and the game both featured a Caribbean voodoo lady who lived in a swamp. "
https://www.ocweekly.com/10-things-you-did-not-know-about-mo...

Definitely recall the coffin reference. Pleasing to see.
They said that integration with Firefox Relay and SimpleLogin was also coming [1], which will probably match 1Password's Fastmail integration.

[1] https://www.reddit.com/r/Bitwarden/comments/ucd9d2/new_exten...
The Foundation of Synthesis Videos – The Bob Moog Foundation
The blog post is poor. It has TailScale's "house style" of folksy reminiscence and Avery's stream-of-consciousness writing stylewrapped around an announcement. It only says two things, one at the top, and one at the bottom: "We raised a $100m for our war chest; we don't have any plans for how to use it besides extending runway for our current operations". The middle is left trying to justify why that is a good thing, despite not having a reason beyond "we know a lot of rich people who know we are wicked smart and talented, so they want a piece of equity in us".

The home page is a pretty clear exposition of what TailScale is: https://tailscale.com/
I have heard of but never really looked in to Tailscale until today. I'm not impressed.

"Fixing the Internet" is not done by layering more private network garbage on top of it.

Their claim[0] that after you install Tailscale on all your devices: "This final configuration is called 'zero trust networking',” is pretty interesting. It seems this would be more like having a trusted internal network (sure it is overlaid on an untrusted network). A true zero-trust network would mean all of your clients and servers are secure in a manner that they can operate on the public Internet...like O365, Salesforce, etc. To say that you run a zero-trust network because you implement a fancy VPN is C-suite dreaming at its finest.

"get around a misbehaving corporate firewall" like newhouseb sings praises for is exactly the sort of thing that should be happening less, and the opposite of "fixing the Internet". Follow the policies of the network you are being allowed to use, or lobby for them the be fixed. Don't like ISPs messing with DNS traffic? Get rules/laws implemented that prohibit that, instead of garbage like hiding your DNS in DNS over HTTPS. (DNS over TLS seems more acceptable to me.)

[0] https://tailscale.com/blog/how-tailscale-works/
Every time I've looked at setting up distributed VPN I've wanted layer 2, I haven't used WireGuard yet but apparently it's layer 3. I would love to be able to connect remotely and have my newly connected machine act like just another machine on the LAN. That in turn makes all kinds of other network-related operations simpler and homogeneous, in that the remote property of the connected machine(s) is abstracted away.