skysight-inc/HackerNews huggingface dataset:
I write the kind of documentation that would help me to get to know a codebase quickly.

- Architecture: what modules are there, what are their responsibilities? What is in scope and out of scope (non-goals are super important). Keep this short and sweet.

- Tutorials: Show how to do some common tasks with the code. A good way to communicate intended life cycles and best practices.

- Reference: Details. I feel API contracts are the most important. I prefer trying to eliminate this type as much as possible, by trying to make invalid usage unrepresentable. If your team uses IDEs, consider putting this in a format that shows up in autocomplete/inline docs. How much you need this depends a lot on if you're working with dynamic or static types.
> Do you know any company that seriously wrote their own development IDE or project management solution comparable to Jira for internal use? That sounds like absolute madness to me.

I worked for one and you're right, it was madness. They still did it though.
No it isn't. (Sub)cultures are not the same thing as countercultures.
Right wing vs. left wing is the same as choosing between Coke and Pepsi.
There is no way to get to a modern counterculture when the focus is on Identity and Individual Consumer Choice.
Hey, that interesting.

> The whole sex vs gender debate is a literal mess. On one hand gender is a social construct if so transgenderism would never be an issue, if gender is so fluid and a “choice” then why convention therapy can’t work (I don’t think it can, and I also don’t think that gender / sexual orientation is particularly fluid or a choice).

I agree with the "it is a mess" part.

> Personally I started to look at sex or well sexuality as the social construct these days, it’s clearly a tool to form societal structures as seen in places like prisons for example.

> Gender on the other hand for me is the heuristics that arise from biological constraints due to the (biological) sexual dimorphism of humans.

For me it is the other way around. With animals, we're talking about the sex they have, not their gender. So to me it seems that "sex" is the term that describes the biological morphisms that arise from the expression of various reproductive strategies, whereas I've only ever heard "gender" to be used in human social or linguistic context (e.g. to different names for female or male individuals of a species)
It's nice to have a textarea widget around for browser native spell checking for example. A dark color scheme is a bonus :)

I just have this as a bookmarklet though:

data:text/html, <html contenteditable><script>document.querySelector('html').focus()</script></html>
Mason Egger's talk on the topic is transformative: https://www.youtube.com/watch?v=4SwdVMKhbn4
There were a lot more smaller car models in the 80s-90s which makes a difference. It also helps that older cars are less likely to be 4WD/AWG. Finally, a MT will be more efficient than a torque-converter automatic with the same number of speeds.

As a ranty aside: You are not safer in an older car because they usually have lousy side-impact ratings. Also, the cyber-security issues of newer cars are overstated. While new cars have many computers, outside of what's in the head unit these aren't general purpose computers, but rather are running code bare-meta, don't communicate on anything other than a can bus or i2c and follow a decentralized architecture. Car manufacturers are extremely conservative in their designs. There have been documented issues like the Jeep Cherokee head unit being able to send arbitrary messages over CAN via the head unit cellular link but but all current car models have telematics.
According to the website, it has "experimental" support for GNOME and Plasma (KDE) on Wayland, with Sway added as of the latest version (0.9). As far as I'm aware those three account for most Wayland desktops in the wild, but maybe I'm missing something.
This is the case every time there's a post about Rust.
No you don't. I've written multiple programs that load things instantly off the file system via memory maps. See the fst crate[1], for example, which is designed to work with memory maps. imdb-rename[2] is a program I wrote that builds a simple IR index on your file system that can then instantly search it by virtue of memory maps.

Rust "works badly with memory mapped files" doesn't mean, "Rust can't use memory mapped files." It means, "it is difficult to reconcile Rust's safety story with memory maps." ripgrep for example uses memory maps because they are faster sometimes, and its safety contract[3] is a bit strained. But it works.

[1] - https://github.com/BurntSushi/fst/

[2] - https://github.com/BurntSushi/imdb-rename

[3] - https://docs.rs/grep-searcher/0.1.7/grep_searcher/struct.Mma...
Shouldn’t this be Rust vs C++? C++ has a lot more parallels to Rust. Both are big, complex, and safe languages that can tuned for high performance. Infact, I would like to see more comparisons of Rust and C++ in the future.
That’s interesting. I wonder if they are real purchases or just crypto purchases based on high growth, not necessarily high investment.

I suppose since there’s no identity authority, if Twitter were to remove my account then I could just create somewhere else and repost my keys.

Does this mean that artists are keeping wallets or private keys somewhere? Or are these identity keys only held by intermediaries? I guess we’ll get some stories how people get scammed out of their keys.

I can see an attack to get the keys after an artist’s death and start cranking out and selling new NFTs until I get caught.
From the wikipedia:

“Research on the long term effects on brain development is limited.”

https://en.wikipedia.org/wiki/Puberty_blocker
This really depends on the issue. If, for example, you have a mobility issue, and walking directly hurt the mobility issue, then the solution is physio or massage to resolve the mobility issue.

But for your more garden variety “I am tired and my joints hurt” then exercise tends to be a virtuous circle. You push yourself to do a little, and it is rough, but it improves the body’s capacity. Then you feel a bit better later and can do more.

Being unhealthy is an equilibrium, and you can push yourself into a better equilibrium with exercise, food and sleep.

For 90% of people reading this what I wrote will be true. But you may be in the 10% where you have an underlying issue to fix first, so check with a physio and a doctor.
I didn't really think about variance while writing the examples; I assumed it would just work the way it does in Scala and Kotlin (explicit variance annotations). I do wonder if that's necessary, though--in theory, the compiler could infer variance from how you use the type parameters, which is in a similar spirit to the rest of the language.

What do you think are the major problems with variance in OO?
The same developer released a new synth plugin “Vital” last fall, which also has great visuals and modulation.

https://vital.audio/
I’ve been working on security related stuff from Germany, too.

You don’t have any contact info in your bio. Would love to connect, just send me an email at jannis at gebauer.dev.
I remember playing some CGA games with some Hercules graphics card. There was two TSR programs which made it possible to run CGA color games with the yellow-on-black Hercules display.

Can't remember the name of the other one but one of them was definitively SIMCGA [https://www.pcorner.com/list/GRAPHUTI/SIMCGA41.ZIP/INFO/]

Without that awesome program my childhood would've been a lot less intresting.
> If you snapshot your entire heap into an mmapped file for fast I/O,

I've never heard of this trick. And my first reaction is "That would be a nightmare of memory unsafety if I did it in C++"

What's it used for? IPC?
This is a ridiculous assertion. That might be true if mainstream culture was polite. But it isn't.
Scott Galloway on recasting American individualism and institutions
Yes Stalin was the perfect person to enforce non-existent civil rights.

But I think not wanting the 22nd amendment to come to pass and restrict the majority's essential right to self ungoverning, was your position? It would be great to have spent my whole life living in fear of the Reagan youth. Don't forget to eat your ketchup!
Note that the window frame has a glow but the glyphs do not.
I bet this could be built on ReiserFS.
Van Gogh's work may be beautiful (I'm more of a Vermeer guy myself) but it's not 100,000x more beautiful than the work of a skilled artist who hasn't been pumped up by a tragic story and centuries of art snob hype.

The value of high art is purely socially constructed and is an aristocratic class signal.
Counterfactual is really important for comparison. Many people may fail to grasp this concept for a fair comparison.

The counterfactual of getting infected while go to work at the tesla, is not, staying home and not getting infected. Staying home, you can still get infected (but not getting paid).

There are so many reports just compare what observed to a perfection. I don't think journalists wrote those articles are stupid enough to compare reality to a perfection, because they can immediately show some level of sophistications when defending someone they like. I believe this is just a tactic for intentionally biased reporting. Journalists can always control how many data they want to present in their reports.
Dark Matter always struck me as the "aether" of the 20th Century.
Skip the characters you don't care about in your book with ML
I think you mean that Arc is an atomic reference counter (it uses atomic cpu instructions to prevent race conditions when incrementing and decrementing the ref count)
Just from the top of my head:

For internal docs, focus more on “why”. Explain why the software exists & what problem it solves. Why the design decisions were made. Why the trade offs were good (at the time, since systems change and evolve).

If you have meeting notes, attach it as an appendix with list of stakeholders involved.

List known dependent services and clients.

Start with the big picture and describe the interaction between components/services. Then have each section drill down into the components.

If this is a wiki page or a living document, add links to various dashboards, metrics, CI/CD, repos, Jira, etc. list of stakeholders.

If this is internal to the company but other teams can access it, have a section on how others team can do some preliminary debugging. How to contact your team (ticket? Slack? Email?).

In general, I don’t think I’ve seen bad documentation per se. any documentation helps. It’s just that they get outdated and become misleadinng. Instead of focusing on wiring a perfect doc the first time, I think it’s more important to keep it up to date.
Even though I can see the utility with this API, every single new web API seems to be a privacy and security disaster that conveniently enables the ad industry to obtain more data points to track you.

AudioContext is a new "modern" JS API that is used almost exclusively by ad networks for tracking. It reveals latency information about your audio peripherals with no prompting, no permission and it operates silently on websites that literally never play audio.

WASM is used for tracking over 90% of the time.

All of the garbage Chrome has added to navigator and document objects, sometimes without documentation are used almost exclusively for egregious tracking.
Deadlocks are unique to Rust, eh?
I Handle My Carbon Footprint
A 3g module was $2.50 COGS in 2013 when I was looking into an IoT startup.
OBS Studio + some mechanism to connect it to your compositor.

For wlroots-based compositors like sway here's the most lightweight solution: https://hg.sr.ht/~scoopta/wlrobs

For mutter (GNOME): https://github.com/flatpak/xdg-desktop-portal + pipewire
FWIW, documentation isn’t very good anywhere. I’ve been at many companies, and it’s always been varying levels of mediocre to bad, even with a dedicated team of documentation writers.

My recommendations are:

- DO Try to rally the whole team to contribute. Attempting to write useful documentation yourself for more than one or two other people’s code is a Sisyphean task.

- DO Make documentation (and testing and debugging) part of the job and the culture of programming. The best documentation is written by the same person that wrote the software. In my experience, it’s surprising how often I bump into programmers who believe that testing and docs are not part of their job.

- DONT try to document everything. There’s too much. There are too many people writing code faster than you can document (especially if they’re not documenting along the way). It’s also unnecessary, most code is only seen by the people that wrote it, most code doesn’t need separate written documentation aside from code comments. Focus on the documentation that is most needed by the widest audience.

- DO Focus on a small number of specific workflows, like onboarding, and gather continuous feedback on your documentation from the people who use it.

- DO Establish a plan to version your docs and more importantly to delete old and obsolete documentation. Having a massive sea of outdated docs has been half the problem in my experience, old docs can be confusing and misleading, and having to wade through them to find the right stuff wastes time and energy.
This was the first thing that came to my mind
How does anyone at work know that another person is trans unless they're wearing that fact as a badge of some sort? If you look like one thing or another, people will accept you as that. The smart thing for trans people to do would be to keep it to themselves.

Heck, ugly and fat people have the same sorts of problems. Nobody wants to date them, they regularly get passed over for promotions if a beautiful person is competing and many get depressed to the point of contemplating suicide. [0]

[0] https://pubmed.ncbi.nlm.nih.gov/23576272/
Agreed, that part struck me as odd. I think it's making the job more intellectual than it is.

I would add to your list: spend as much time as possible with customers and figure out the actual pain.
Cups of Tea: Free Online Emotional Support and Therapy
You Have to Ask for It
And if your accusation were in the workplace, you win automatically. Good job seizing the means, I guess.
Be sure to fudge with the range settings!

This one was fun: z^5+7z^4-3z^3-15z^2-z+9
I’ve used proton drive’s sharing function recently and it’s worked well
My reply was to the comment I quoted, not the introduction of GMO chestnuts. We have had great success at introducing gmo crops very successfully.

We have more often caused harm than good when eradicating entire sections of ecosystems. From what I’ve read at least.
This is a bad take. ripgrep, to my knowledge, cannot be written in a higher level language without becoming a lot slower.[1] And yet, if I removed its use of parallelism by default, there will be a significantly degraded user experience by virtue of it being a lot slower.

This isn't an "obsession." It's engineering.

[1] - I make this claim loosely. Absence of evidence isn't evidence of absence and all that. But if I saw ripgrep implemented in, say, Python and it matched speed in the majority of cases, I would learn something.
There's no real standard, but something that may develop into a de-facto standard. The 3 possible ways I am aware of are:

- org.gnome.Shell.Screenshot, a dbus API primarily/only used by GNOME

- wlr-screencopy, a Wayland protocol extension primarily implemented by wlroots, which Sway, Wayfire and many other compositors use

- xdg-desktop-portal, which is promoted by the freedesktop group and an abstraction of both APIs using special portals for each desktop, Flatpak compatible and delivering screen content via Pipewire (supported by Firefox and Chromium)

Flameshot now supports the former 2, I have the most long term hope for the latter one.
Contrary to popular belief, OO is not primarily about inheritance. That’s one of its distinct features. But experienced software engineers tend to prefer composition over inheritance. OO is about encapsulation and about putting conventionally functions close to the data it operates on.
Recently gave up on Wayland (for the moment) due to the inability to screen share most applications on Google Meet. I realise this isn't really Wayland's fault, but that doesn't really solve my problem.
Over 3M People Took This Course on Happiness. Here’s What Some Learned
It would be more difficult these days to get much marketcap on the minority chain, now that Ethereum hosts tokens representing a variety of off-chain resources like fiat money and bitcoins. Those things will have to pick one chain whose claims will be honored. Same for some NFT projects. Anything involving data feeds won't necessarily support the minority chain either, though in principle they could.
Thanks!
Will read that one myself first :)
Pascal had that. Awesome stuff.
This is the key for me, and a major reason I've always avoided the cheap, older hardware off of eBay for home use. My server rack consists of new (released) at time of purchase hardware with power efficiency as a major focus.

One measurement which really surprised me was that my 2019 XPS 13 idles with about 1.5W, screen on according to powertop. That's less power than a Raspberry Pi takes to idle!
Counterculture should also be against the mainstream culture. Neither Right nor Left wing as defined by Republicans and Democrats, or the NYT and Fox News, are against mainstream culture.Nor are the increasingly smaller subcultures on the margins of either side.
You do realize it is a misleading term right? What is the difference for people just buy a NAS in term of "as much storage as you provide"?
As a long time designer my advice is to focus on your company core business. The value of professional corporate identity design is immense and expensive. To shape a brand the designer must do deep research and come with a concept of uniqueness that will serve your company longterm. This cannot be accomplished only with graphical representation that is "cool", "trendy" or "something that we like". It must have meaning beyond the "current trends".
So when you have enough ROI, you can find someone with proven record and invest in your brand. Corporate design is most difficult thing when done correctly.
Somebody who is frustrated shouldn't bother to get into politics or try to change things in big cities because..a lot of people live in them?? huh??
That's exactly my point. Bitcoin is useless in the US because we have a relatively stable, universally useful currency. You seem to think the stimulus will cause dramatic inflation, but I doubt it.

For people who want to use USD as a replacement for their unreliable local currency, Bitcoin may be one of the easier ways to hold and trade it.
Or charge for time, like Ziferblat do: https://ziferblat.co.uk/
Fortune Favors the Bold
Why you should apply to the worlds most competitive awards and graduate programs.
grim (awesome together with slurp and wl-clipboard) only works on wlroots. Flameshot aims to be cross-desktop compatible and is a GUI tool.
One can never have too many Tetris options. Shame on you.
Indeed. Many of the optimizations ripgrep (and the underlying regex engine) does only show benefits if the data you're searching is already in memory.[1] The same is true of GNU grep. This is because searching data that's in your OS's file cache is an exceptionally common case.

[1] - I'm assuming commodity SSD in the range of a few hundred MB/s read speed. This will likely become less true as the prevalence of faster SSDs increases (low single digit GB/s).
I was researching the issue and noticed wlr-screencapture. I was hoping to see it at https://github.com/wayland-project/wayland-protocols too, but no luck. Thanks for the lead on xfg-desktop-portal.

It is fascinating watching the near decade-long journey as Wayland tackles screenshots.
Launch HN: R2 Capital (YC W21) – Working Capital as a Service in Latin America
Hey HN - we’re Roger and Roger, the founders of R2 Capital (https://www.r2capital.co/). We provide flexible working capital to small and medium businesses (SMBs) across Latin America by integrating with payment processors, point of sales systems, and marketplace apps. This enables us to get paid back with a percentage of their online sales.

We come from entrepreneurial families in El Salvador and Honduras, and understand the impact small businesses have in terms of job creation and economic security. We’ve also witnessed our families struggle accessing capital for their businesses in both good and tough times. In fact, SMBs generate ~60% of jobs but only 25% of GPD in Latin America. They often can’t grow because it’s really difficult to access capital - not enough assets, tedious paperwork, onerous personal guarantees - and the onset of the pandemic only made it worse as banks retrenched from financing this segment. We started R2 last year when many SMBs in the region were forced to sell digitally in order to survive.

Banks tend to underwrite small businesses according to their total assets or the creditworthiness of the owner. Banks don’t, however, analyze SMBs based on their daily sales and underlying customer base. By partnering up with processors and marketplace apps, we access underwriting-rich data and figure out what companies to fund.

In the US, platforms such as Stripe, Square, and Shopify have all started capital programs recently. Our goal is to equip comparable platforms in Latin America with their own capital program, so that they don’t have to build out this service internally from scratch.

I previously worked at Reef, which operates dark kitchens in the US, where all orders went through marketplace apps such as DoorDash, UberEats, and Postmates. I spent a lot of time ingesting, cleaning, and standardizing their data to determine how each virtual restaurant was doing. This type of data can also be quite useful to assess the future performance of a small business.

Using the platforms’ data, we carry out the risk assessment on their behalf. We also provide the capital, which ensures an optimal experience to both platforms and merchants. We’ve done the legal setup in Mexico, Colombia, and Ecuador, and make sure we’re following local compliance which removes any risk to our partners. We also handle the marketing, servicing and capital management in order to scale each program.

We don’t charge the platforms we partner with. Instead, we invite them to participate in our financing upside so that they can activate a new revenue stream. More importantly, they get to provide a valuable financial service without having to take on the financing and regulatory risk.

We’re just getting started but excited to be working with platforms such as Rappi and Sr. Pago already. We’d love to hear your thoughts on what we’re building and on how we can improve so that we can finance a lot more SMBs in Latin America.
Anyone else here who found Shutter to be quite handy?

I tried flameshot once and don't really get how one would find it more useful than Shutter.
Shift-Command-[3,4,5]?

Unless this does something that I'm not seeing, macOS has this tool builtin
Ahh I see. Curious why that has bled over to the consumer market I wonder.
In a good documentation, IMHO, you must answer the following questions:

- where can I find this functionality?
- how is it done?
- why is it done this way?

You can do a lot with descriptive schemas, take a look at C4 models[1], they are simpler than UML and focus on a single part of your project at a time. This should answer the "where".

Tutorials are a good way to present a use case and how to solve it using your project. This should answer the "how".

Then, the most difficult part for me are ADR[2] (Architectural Decision Record), to document all decisions within the project. This should answer the "why".

EDIT NB: Our ADR is our PRs since committing directly to master/main is forbidden and all code should be reviewed

API Documentation is then done with comments/docstrings within the code itself, and usually the IDE knows how to read it and help you directly while you write code.

[1] - https://c4model.com/

[2] - https://adr.github.io/