skysight-inc/HackerNews huggingface dataset:
It didn't strike me as that complicated or hard to follow.

The method you describe is fine but the average user will quickly run into a lack of features that are taken for granted with that approach, and if they then progress to something more "mainstream" it will probably be way more complicated than this.
Sorry for the irrelevant comment, but I’ve never seen anyone use ℅ instead of % before. If it’s a typo, how did that happen?
Which parts are hard?
> different content/marketing teams, they hate it so much

A refreshing change from them making everyone else's life hell then? :)
True, I have heard they are assimilating their Muslim population very effectively too. They even have assimilation holiday camps, fun for all the family.
> 90% – maybe 93% – of project managers, could probably disappear tomorrow to either no effect or a net gain in efficiency.

That's my experience, too, but only in short term. In the long term, they can make a difference (either way).
No KYC, No Account Instant Crypto Exchange
Cryptocurrency exchanges requires KYC and account creation. I've created a basic website for anyone to buy/sell cryptocurrency in seconds.

Hope you like it!
> they are "chemicals" in that they are not naturally occurring

That is my point entirely. That is not the definition of chemical. If you mean non-naturally occurring chemical say that.

The scaremongers definition of chemical and has no place in scientific literature.
One more from me, with 20 years of experience.

Some people are force multipliers. They make everyone around them more efficient. BUT people like this are hard to determine with Standard Performance Indicators.

Personal anecdote:

I had to fight tooth and nail to keep a junior coder in my team because "she wasn't performing well". Yes, she didn't commit often and her code quality was average at best. Tasks took longer than average to complete as well.

But what she DID DO was keep the two auteur seat-of-their-pants 10x coders in her team focused and on task, made sure to ask the correct questions and had them document their work. She also took over their customer-facing stuff so the socially awkward 10x pair didn't need to do that.

None of this showed up on standard performance indicators.

Now she's a team lead at the same company, managing the two 10x-ers.
Canon’s upcoming AI-powered camera is a privacy nightmare
We do it with a secondary copy of our website.

Honestly though, there's a lot of talk about changes here without much talk of the most obvious class of changes that Wordpress is designed to support: adding content to your website or blog.

For all its faults it does make that very easy, and it's designed with the intent that you will do so by working directly on the live site (you can obviously preview and review content before making it live).

Changing layout and templates is trickier, likewise creating a new page layout, and that's where a staging or development site comes in handy.
I've had to run Wordpress against my will a number of times and while it's true that it a hacky mess it's also pretty well documented and as long as you use it as intended the end result is quite usable. It's PHP so pretty well tested deployments, metrics out of the box, individual interpreters for customers work well, it can be chrooted. Basic stuff like this has been built in with PHP for a decade.

> WP expect you to install it such that it can modify its install folder

Only if you want to have your users install plugins and modify the software with the web control panel. That may be the whole reason why you chose Wordpress, of course. Otherwise it runs well in a read only environment, apart from the attachments folder, and it is also documented.

> It will use incoming requests to trigger "cron" jobs

This is optional, for people who ran it on shared web hosts and didn't have access to crontab. It's all documented in the install instructions.

> It falls apart under any kind of load,

Well, yes. That's unfortunately true for all popular CMS software. It's a similar situation as with Gtk and Qt which are all flaming garbage under the hood. As an X11 user I accept that but I don't have to like it.

It's not noticeable for end users because as you realized in is intended to run with caching. That's the one big thing that should be better documented in the installation instructions. I had to evaluate half a dozen caching schemes just to choose one that seems to work well and is popular enough. There really should be one straightforward way to do it.
I don't know, man. Young You sounds like a very different person to Young Me.

If my first employer had told young 20-something Me "I'm afraid we're not going to let you come in and sit in this felt cube every day after all. Instead we're going to ask that you fly to Thailand and work from a laptop on the beach from here on out.", I would not have reacted by explaining how work is a social thing that needs to happen in person.

I spent the first 10 years of my working life focused on get myself into a position where I could do exactly that. As soon as it was even a little bit feasible to do so, I made the jump and haven't looked back.

It's interesting watching the entire software world get handed young Me's dream on a plate, and seeing so many people wanting their cubicles back.
I'm tackling this issue from two sides:

(1) Change the C-API to make it more "binding-generator-friendly", for instance by adding a range/slice-struct to th C-API which bundles a pointer and associated size, or specially named typedefs that only exist to give the binding generator hints for special case handling. By adding a C-type which represents a range/slice, it's easier to connect high level languages to the C API, and as a nice side effect, the C-API also becomes safer and more "correct", because pointers and associated sizes can be passed around as one item.

(2) Make the bindings-generator configurable on a per-language and per-API basis, this can be as simple as a map which overrides type- and function-names, or injects manually written code into the generated bindings.

The goal is to make the generated bindings more idiomatic to the target language.

This mostly works if you have control over the underlying C-API of course, e.g. the language bindings are created by the original C-library project, not as an external project to convert a fixed C-API.

I wrote a blog post about this whole topic:

https://floooh.github.io/2020/08/23/sokol-bindgen.html

...and here's an example of such semi-auto-generated Zig bindings:

https://github.com/floooh/sokol-zig/tree/master/src/sokol

...for instance note the "injected" helper functions here:

https://github.com/floooh/sokol-zig/blob/1c93f60ad178869b84d...
Author also kinda goes in a circle by saying “just because they’re more Asian doesn’t mean they’re Japanese!!” and then pointing out that Korean Japanese blend right in and nobody’s the wiser, but a half-black Japanese is a Big Freakin’ Deal there. It’s a weird and poorly argued article for sure
GP is right, you don't necessarily need any of that for effective studying. Its very possible to set up the remote equivalents for students learning together (e.g. discord) if this is done well.

Its much harder to establish the social connection, that part is true.
In a test you have to prove your knowledge by transmitting symbols through language. If you don't "sugar coat" it, how do you expect that the right symbols will be interpreted by the receiver? It is part of the test to use the appropriate language to ensure the best understanding of what you are saying. Nonviolent communication tries to do exactly that and is essential to this end.

You can argue that since the professor understood what was being said, the language shouldn't matter, but it does. If again you don't use the correct language you risk offending the listener so much he can't get past that. After all you are dealing with humans, not machines, and in either case you are responsible for clear communication.
I've heard the same from multiple people focusing on the low level layers.
Premature Freakouts about Techno-Enhancement
I just can't disagree more.
If you are a productive worker and very social the office is a huge negative.
Because I am social everyone always wants to talk to me in the office.
All remote has really done is given me an office with a locked door that I now control who and when I can be disrupted and distracted.

If you are a slacker at home I am sure you slacked in the office as well.

To me it all depends if we are talking from a middle management perspective or not. The company is better off but the redundancy of middle management is on full display right now.

There will be huge opportunity though for companies that get leaner middle management wise and poach high performing remote talent across the country. This to me seems very obvious.

Not to mention, it is not like you are going to have the luxury as a company of cutting remote cost post COVID. Remote cost is sunk cost for the remainder of my working life.

I assume the biggest factor right now with how the company spins the narrative with remote work has to do with what things look like with the timing and length of the office lease.

At some point in the future though, the cost of the office will become a competitive disadvantage.
Ask HN: What tools do you use to analyse server performance?
At one end there are many website and web-app performance analysis tools, at the other there are lots of low-level Linux performance tools (e.g. eBPF), but what tools do you use to analyse your application's performance (when looking to optimise it)?

This might include profilers, production server monitoring, static analysis tools, etc. They can be language specific or not.

What are you using day-to-day/week-to-week/month-to-month?
> enormous

How enormous? We wouldn’t need words like that if we looked at the right numbers.
Personally I'd like a stand-up where it's ok not to have anything to say, like yeah, WIP, no problems, no blockers (except being here talking about it instead of doing it..!) etc.

Fully agree I would prefer it later. Not just 20min, I typically start ~1h before ours anyway, but it hangs over me all that time. I'd like to spend most of the day working on something and then stand-up in the afternoon, I'd be more likely to have an issue someone could help me with, or otherwise on my mind to discuss.
You could not bath in the river Rhein in Germany in the 1970s and 1980s. That changed through the political green movement and the institutionalization of their ideas. Now you can bath again in those rivers, and drink water from a tap without being afraid - unfortunately, a lot of producing industries have moved on to greener, cheaper pastures, where ecologic and environmental, let alone human protection is not really at a high standard.

The approach to deal with the "Après moi, le déluge" and conspiracy people is a tricky one. Only partly in can be covered with an economic (private jet tax, rejection of clinic entry/travel to people who are not vaccinated) and educational approach - but we are far from being close to an optimum here. Democracies need educated and politically mature people in order to be stable in the long term, and strong institutions that can bring forward a healthy discourse.
> That's very different from the US keeping track of race though.

You'll also never see a German statistic even using the word "race" for humans beings.
Careful what you wish for. In open landscapes and in meetings with business side, there's endless pointless chatter about everything else but doing their job. I'm not a devotee to overwork and squeezing blood out of stone type of worker. However, the directionless chatter, general incompetence, lack of inquisitiveness and awareness become energy-draining over time.

Status report is when a team say the same things every day and every week, nothing changes and there's nothing new to be learned. This is Waste.

Daily scrum is meant to encourage collaboration, inspiration and brief sharing of information. However, when driven by business needs alone, it becomes another pointless status report. On the flip side, if daily scrum takes off, it should be allowed to continue as a new meeting afterwards, but is also a sign that there's not enough coherency in the group with the current practice.
Thanks for the suggestions! I will try them next.

> Looking at your where clause, did you index language and textsearchable_index_col together ? If not, you are giving the planner the opportunity to skip your full text index.

Here is the index:

update gutenberg.paragraphs
set textsearchable_index_col = to_tsvector(b.cfgname::regconfig, coalesce(paragraph, ' '))
from
gutenberg.all_data a
inner join pg_ts_config b on lower(a.language) = b.cfgname
where gutenberg.paragraphs.num = a.num;
create index textsearch_paragraph_idx on gutenberg.paragraphs using gin (textsearchable_index_col);

> if you order by ts_rank_cd then the query will sort all rows, including those that don't match. A better pattern is to take the ranking score as a column and then sort it in a subquery. [1] from stack overlfow has an example. (As an aside, from pg2, CTEs are no longer an optimization fence, so you can write the query out more cleanly with a CTE and still get the desired performance).

Ranking was already done as a column in a CTE and ranked further down:

with paragraphs as (
select
num
, paragraph
, ts_rank_cd(textsearchable_index_col, phraseto_tsquery(%s::regconfig, %s), 32) as rank
, ts_headline(%s, paragraph, phraseto_tsquery(%s::regconfig, %s), 'MaxFragments=1000, StartSel=**, StopSel=**') as highlighted_result
from gutenberg.paragraphs
where language = %s::regconfig and textsearchable_index_col @@ phraseto_tsquery(%s::regconfig, %s)
)

I did rewrite the query as per your [1] but EXPLAIN ANALYZE found no difference.

Pagination is a tricky one. I was in a rush and hit an issue where building large Dash tables was very expensive and prone to crashing. I initially set up pagination as per the Dash examples, but that didn't play nice with markdown which I needed for the URLs and highlighting (giving these up for plain text tables made in HN-fast, but it confused my trial users). So the quick and dirty solution "to ship now" was to set up custom pagination in the SQL and show the results.

I think that if there is enough interest in this project, the front end will have to move off Dash.
The stereotype is you live in the suburbs and know all your neighbors. Maybe even have block parties 2 or 3 times a year. Where as the stereotype for cities is you live in an apartment building closer to way more people than in the suburbs but know none of them.

No idea how much it holds but it fits my experience.
I like and enjoy a good and friendly commercial transaction.

I just don't consider it a real friendship, and I think this is potentially dangerous thinking. Your counterpart is being paid to form that connection with you, and you are in a specific position of power over them in that situation.

It's nice, in the moment, to be given service - by someone working in a service industry (this is certainly not unique to the suburbs) - but I find it odd that you seem to describe this as a satisfying personal relationship. You will likely never see that person again, whenever they stop doing that job. Your connection and their connection is to the transaction, which includes a personal element at your behest.

If you had said: and I often see them outside of work, then I would consider that slightly differently.
> * The root cause of the above is often insecurity; and it can be coached / cultured away.

It's definitely not true. Very often the root cause of zealotry is simply passion, enthusiasm especially for something new you start to like more and more every day, and at some point you start to have a false conviction - that it could solve all possible problems. Usually, zealots become more reasonable with time.
The commenter wasn’t talking about all people having to work at the office all of the time, merely that fully remote was not good and not favoured by young engineers. And he was spot on. I’m a young engineer in my 20s and if I don’t get in-person training soon (I started over a year ago and haven’t gotten any since we’ve been remote the entire time), I’m going to quit and go elsewhere. This is in spite of working in the best team of engineers in my city, working on an awesome problem. But I can’t sacrifice my career for their desire to work from home.
See much of FAANG over the last five or so years for a number of good examples.
These are really bad netbooks which we have apparently spent £420 per laptop on based upon £96 million for 230,000 laptops.

https://geo-computers.com/geobook-1e/

They are £199 from Currys. They don't even try.
Some Russian officials are being forced to sell their crypto by April 2021
"Russia adopted its cryptocurrency law in January, but this legislation does not provide a direct answer to some questions, including how local officials should deal with their crypto holdings. There are at least two other legal initiatives requiring Russian public officials to declare or even get rid of their cryptocurrency holdings entirely in 2021.

On Dec. 10, 2020, Russian President Vladimir Putin signed a decree obliging some public officials to disclose their crypto holdings by June 30. The decree was adopted as part of the country’s law “On Digital Financial Assets,” or DFA, which was made effective on Jan. 1.

According to the decree, Russian officials or individuals seeking to hold public office must disclose their digital assets, as well as those of their spouse and children. The legislation refers to a general scope of the official establishment, seeking to ensure that the government is as compliant with the local financial declaration rules as ordinary citizens already are.

But there is also another regulation that prohibits certain Russian officials from owning any cryptocurrency, in line with the country’s anti-corruption measures. On Dec. 28, 2020, the Russian Ministry of Labour and Social Protection published an informational letter reminding some officials that they are obligated to liquidate their digital financial assets and any digital currencies by April 1, regardless of the country of issuance."
Much better than a private garden is access to public parks and playgrounds. This is where they socialize and make friends, where they learn to interact with others in a group context.

To you it may be "noise and chaos", to many others it's life and excitement.

No matter if you live in a dense inner city or a small village, open public spaces where they can meet other children are vital to children's growth and development.
First time I have every heard of "detroit-style" TDD (and from looking it up "London-style"). Why were they given these names?
The UK government should buy back ARM, it’s a strategic national asset, as is IMG.
C99 has made all that a lot easier, you can setup, initialize a struct and call the function taking a pointer to that struct all in one call:

https://github.com/floooh/sokol-samples/blob/89f5825ab5d3690...

The Win32 window system functions and D3D11 are actually very convenient to work with in C99, better than C++ actually.
Here is one reason: basing policies on actual facts rather than dogma.
Four levels of maturity that bridge the AppSec / engineering divide
Except this is how laypeople perceive chemicals when they react to them as a (possible) threat. They conflate "chemical" with a compound beyond natural complexity. Humans excel at creating compounds that naturally do not naturally occur in abundance for thermodynamic reasons. Chlorofluorocarbons come to mind immediately.

So how is it scaremongering? It is both accurate (PFOAs, etc are indeed chemicals) and of the proper connotation in the common parlance (using "chemical" to mean something manmade rather than naturally occurring).

Your argument holds no water.

By the way, an article in Scientific American isn't scientific literature. It's a magazine intended at lay audiences. You might be confusing it with something like Nature journal.
I'm absolutely amazed at the level of detail and effort that's been put into this update. Really impressive from a Kickstarter. I happily backed it a while ago, and I'm looking forward to getting one.
Chile's new constitution could rewrite the fate of lithium mining – Quartz
Just a quick note regarding Beaver Builder: when the Full Site Editor arrive on WordPress this year, we will be able to use native functionality to build the entire website, without relying on a third-party page builder to do this.
Ah yes, the famous Hollywood documentary “The Last Samurai”. :-)
>If my first employer had told young 20-something Me "I'm afraid we're not going to let you come in and sit in this felt cube every day after all. Instead we're going to ask that you fly to Thailand and work from a laptop on the beach from here on out.", I would not have reacted by explaining how work is a social thing that needs to happen in person.

I'd kill for a felt cube.
Sure, just like the Chinese constitution technically ensures personal and religious freedom.

For example, I could start my own cult and write all the angry blog posts I wanted.

Now, once I gain more than 100 followers, the dynamics start to change slightly.
That's not a real paradox, which is why Quine called it a "veridical paradox." You're just taking your personal feeling about a difference as the primary criterion for evaluating the subjective significance of the difference, but these feelings differ from person to person.
An experiment in teaching a language without relying on translation
Introduction: User's Guide to Empire (1991)
I think some modular approach could have solved the incompatiblity issue, such as "from future import ...". Shorthands could have been invented to define everything in a single line.

Perl5 has similar flags ("use strict"), and Racket brings it even further to define the whole fucking language of the rest of the file ("#lang racket/gui"). Having the language being choosable by the user is against the "zen of python", I guess. In other words: Such an attemp does not feel "pythonic".
It is difficult to think of a worse example than Islam or a religon generally for "uniting people".

Any attempt to unite people is inherently exclusionary. That is not problematic in itself but, inevitably, some people equate unity with superiority. It is a fine line.

What has improved (this is contentious) is: decline of religion, increased in shared interest, more diverse identities (i.e. people identify in more than one way), and more knowledge about people who are different with the internet/media/etc. Nationalism is, however, still understated as a cause of strife (I am in the UK so that perhaps colours my perspective).
You've put it really well here. I lived in the south bay for a period in my 20s, but man, in no way was living in San Jose and working in a cubicle the social lifestyle that I dreamed of.
Interesting take, that order on: YAGNI, SOLID, DRY.
> little is talked about here

the problem is that the hive mind has no clue, and downvotes like maniacs facts it doesn't like. here's a previously discussion of what means the read all extension permission https://news.ycombinator.com/item?id=21336246 with all the factual, sourced post downvoted and a chain of people with finger in their hears singing lalalala

_of course_ I rarely bring up the topic anymore; once enough people get burned they'll learn on their own anyway, I guess.
Churchgoers get moral guidance and philosophical discussion, communal introspection, and everyone knows they should go on their best behavior, bringing love to the congregation. Those things are fairly unique to places of worship, but there needn't be actual worship of God for them to exist, and that's something atheists tend to miss out on since not many other social groups/clubs have those qualities.
Magnetic waves explain mystery of Sun's outer layer