skysight-inc/HackerNews huggingface dataset:
My ELI7 understanding is that python installs required modules (libraries) at the system level by default, and doesn't have good support for installing modules into local directories like node/C/java/etc. does, which leads to conflicts. Users have to find a set of modules that support all of the scripts on their system. The current workaround is to isolate each script's requirements, but there are a ton of competing tools to do this (virtualenv, pipenv, poetry, etc.), so it's hard to choose the "best" isolation solution.

One reason people like PEP 582 is that, by being something built into the interpreter, it will reduce a lot of the confusion over which isolation tool to use.

Part of the problem, which local installs won't completely solve, is that the python interpreter is still changing fast enough that modules are having trouble keeping up. E.g. tensorflow is still working on python3.9 support [1], and now we'll see python3.10 in the next couple weeks. Even with local installs we'll have to be careful to use the right interpreter.

Another piece of the problem, which is also kind of a good thing, is the huge size of the python module ecosystem. I've got python scripts with over a hundred requirements. It saves me from writing a lot of code, but resolving the requirements is a challenge. The pip package manager has recently added a dependency resolver, which has helped a little make sure everything can work together.

The only surefire ways I can think of to make this huge module ecosystem interoperate cleanly are (1) have every module support every other version of every other module and interpreter (insane amount of work, won't happen) or (2) have simpler interop interfaces like the unix shell convention of only passing strings between programs, but that would take away a lot of the ease-of-use of passing rich objects around between modules.

[1] https://github.com/tensorflow/tensorflow/issues/44485
I'm not in the USA but I tell you, the political divide is larger today than I have ever seen it. This article looks at 1 thing? Not convincing at all. There is a quote that's really interesting.

>Ideological division has been fused with an “us versus them” sectarianism that feels reminiscent of divisiveness and vitriol more commonly seen in war-torn countries than in healthy democracies.

The USA has been at war for over 20 years in Afghanistan. Longer than the vietnam war. Lets not forget Somalia, Syria, Iraq, and Yemen. The USA sure does seem to be surrounding Saudi Arabia and Iran.

Then you have Blinken who has been secretary of state for a week or 2 making claims that Iran is "weeks away from a nuclear bomb". Amazing he gets the job and suddenly they are weeks away. Biden's government has started seizing numerous oil tankers asserting they are Iranian under false flag.

The Saudileaks clearly indicate the Saudis are targeting Iran as well.

The USA is exhausted from war and it sure does look like Biden will be declaring war in Iran. Ahmadinejad won't survive 2021.

The world will forget that Iran's supreme leader Khamenei has issued a fatwa against the nuclear program. There's absolutely no nuclear bomb in Iran. Obama and John Kerry did a great job doing that. Yet here we are being lied to by the bidens new secretary of state saying they are weeks away from a nuclear bomb.

No, this is the USA posturing for a reason to invade Iran.
Similarly, too much slack can create its own problems. The real answer is that it depends.
Interesting. Any examples of the 2nd?
How to Say No and Not Feel Bad About It
Well, considering the damage they caused this is nothing. They advised on /got and got paid for how to "turbocharge" opioid sales and that tuned out to be an illegal and immoral thing.
the thing is python cli has no concept of locally scoped libraries. you can install libs wherever you want, but all python.exe will refer to the same global location.

this is why you need to activate virtualenv every time you open a new command line, so that it can set ENV variables for the current session and force python to use the locally scoped folders.

While in C# et all. the compiler knows to check files locally. and you don't need to activate (or deactivate) environment at all.
Of course, but in my opinion you have no right to complain about how a company behaves if you're aware of how they behave and continue to give them your money.

In addition, a lot of the terrible stuff Amazon does is not illegal but still reprehensible.
Hey there HN.

I am Vincent, a JavaScript developer. While working at Algolia, we had a team scheduling tool (called Bob) to share the customer and internal support duty amongst 40 engineers.

The tool was widely successful and allowed us to easily know who was on support anytime of the week. It was an open schedule with shifts to book connected to Slack for notifications and reminders.

When I left Algolia I took this internal tool and rewrote it completely as a SaaS product (my first one). And Algolia switched to it recently.

You can read more about TurnShift (and its tech stack) on Indie Hackers: https://www.indiehackers.com/product/turnshift/turnshift-wha.... I also build in public on: https://twitter.com/vvoyer.

If you'd like to try TurnShift, I created an AppSumo lifetime deal this week: https://appsumo.com/marketplace-turnshift/. And there's also the usual 14-day-free-trial-no-cc :)

Send me questions here and I'll answer.

Best,
Vincent
Then I don't get the proposed benefit of DoH here. curl + parsing a standard DNS response is not really easier than just using a DNS client.
> That's only because you're basically assured there will be conflicts inside any single project.

That's not an issue with the package management though, that's an issue with the quality of the packages themselves. The JS ecosystem does have issues there. But the tooling itself is good.
There weren't many Pascal programmers, but for C programmers, sure.
ASML: We Underestimated the Demand for DUV
What Glenn Greenwald Fears from Substack
DERL: Computational Framework for Creating Embodied Agents
Epitaxy
Honeybees, sunlight, water, oxygen, etc.

Edit: Also - https://en.wikipedia.org/wiki/Radiotrophic_fungus
RSS is great for me, and it gets supercharged by using huggin.

With huggin I generate filtered RSS feeds from Twitter,Craigslist, and other various sites.

I then have the feeds publish once/day so that I’m not constantly checking. I view then use miniflux as a reader.

It def requires some setup but it’s the healthiest my relationship with the internet had ever been.
how can something published on the Google github repo not be a product of Google..?
Your definition is wrong. It is not what people think making choices are. People feel they are free to make choices. That doesn't mean they actually had a choice if you permit that you are not on control of your brain processes even if you consider that "you". Your subjective experience of those processes is what people associate with choice, not an observation of some part "you" making the decisions that you are unaware of. You indeed are just a chest in the machine according to your owns words just now in these scenarios. It's intellectually dishonest to just redefine making choices however you want. It's a non- starter.

Further more, you claim any your reasoning doesn't fail, and yet you also admit your viewpoint is vulnerable? It is an admission outright that your arguments don't withstand rational scrutiny. However, you have yet to articulate a an argument that does make my position vulnerable to scrutiny.
Have you tried communicating with your own AI (Valii) about your startup idea (Valii), and have it create a preorder page and advertise it given the information you intered? How did that work?

Shouldn't your idea validation platform be able to validate the idea behind it?
HN has a strong libertarian crowd, who would not agree with anything that impacts freedom of speech, even hate speech.
There are a number of conflicting statements in this comment.

eg...

> What you are doesn't matter, what you do does.

...

> Nothing really matters

Logic has value.
Not only that, settlement delay can cause fraud or the appearance of fraud. In the robinhood case (if they are telling the truth), then the exchange had to front its own cash for unsettled transfers.

Furthermore, if there was instant settlement the idea of “shorts” changes: you could still borrow a stock but it is super clear who is holding it at a given moment, and how many are held by whom.
> Nothing there seemed to be much worse than I've seen on Twitter (actually, Twitter stuff was far worse).

https://i.redd.it/om90nwadqca61.png is a Parler post with a racial slur and 25k upvotes. Twitter has its issues but an equivalent comment isn't going to survive two days.

The court documents from their case against Amazon are available at https://www.courtlistener.com/docket/29095511/parler-llc-v-a.... Amazon's declarations contain other examples of content that wouldn't survive on Twitter.

> Regardless, this is besides the point: all a competitor has to do is post some garbage and point to it, and boom, you're dead. That's not ok.

According to https://www.courtlistener.com/docket/29095511/13/parler-llc-... it took several months of moderation problems before AWS dropped Parler as a client. If Parler had done more active moderation and tried harder to keep Amazon happy they'd still be hosted on AWS.
I mentioned it above but you may find Huginn an interesting tool.
Migrating Content from Ghost to Jekyll
Superficially, it seems crazy.

That said, testosterone rates actually have been falling for a while now [1][2], and 'that's a thing'. Scientifically.

Also, we spend way too much time indoors as a species and there may possibly be a gendered aspect to it.

If we can talk all day about special needs, issues and accommodation for women, there's not reason we can't do so for men.

Never an athlete myself, and loathing the American focus on Collegiate sports - I've actually come to admire it. Maybe not to the 'they call get full ride' kind of admiration, but rather, a respect for the fact that physical vitality is part of our essential being.

1 hour of PT/sports per day should be standard literally all the way through life: Elementary, HS, College, integrated into the Workplace.

Just getting people moving would fundamentally change so many things. Probably ever aspect of life would improve, and if we want to make it a 'men's issue' I'll bet that rates of ADD, attention span etc. improve, as an unscientific hunch.

Edit: It's not a 'hunch' - physical activity will improve ADD [3], attention span [4].

[1] https://www.icenews.is/2010/05/17/testosterone-levels-decrea...

[2] https://www.reuters.com/article/health-testosterone-levels-d...

[3] https://journals.sagepub.com/doi/abs/10.1177/019394591664995...

[4] https://www.unh.edu/healthyunh/blog/2013/07/recent-study-tie...
My takeaway from the article is that you almost always want a proper sum (discriminated union) type, but if you find yourself in a world without (hello, Java), here's a way to encode them precisely. As the OP notes, though, this still relies on having generics in your language, so you can't even perform this encoding if you don't have generics.

For a counterpoint, take a look at the relationship between object algebras and final tagless style [0]. It goes well beyond the basic visitor pattern, but gives you a lot of expressivity in exchange.

[0] https://oleksandrmanzyuk.wordpress.com/2014/06/18/from-objec...
Me too. It’s not bad at all usually there’s more flexibility and room for advancement if the business is growing.

Same as anywhere else. Just remember the fundamentals...

- Stay out of office politics

- Negotiate your compensation

- Document everything

- Focus on value delivery
Superb Feedback. Thanks very much for this.

There are how-to's / guides in a few places. For gradle, you have our general documentation like https://help.cloudsmith.io/docs/gradle-repository and then within your repositories you have contextual "set me up" docs, which come ready to cut and paste into your configs. A little hard to explain without showing you, which I'm happy to do at any stage if you want a call to chat.

Our free trials are fully featured, and our free plan includes public repositories of course also.

Again, thanks for the feedback. Super Helpful.
The Cloud Database Market Is Booming: Recent Developments
Yes, just write otherwise { ... } to handle a default case.
Not for the original purpose. For legal reasons only and legal reasons are quite narrow. A simple message does not qualify.
Very nice! I've been using Marp https://marp.app/ at work for the same purpose as well. One cool thing is that it comes with a VSCode extension, making it very convenient to use.
Ransomware Goes Nuclear
Show HN: Game of Pegs
Get Email Addresses from Your Followers (3 Easy Steps)
Sounds awesome!

how do I join?
I feel like I’m plugging huginn all over this thread but they have a phantomjs agent that makes it fairly straightforward to scrape a Craigslist search
three times daily is better than three days like the US
The dark side of India's digital underbelly and e-waste problem
"The price" is just a convenient way to talk about the theoretical "value" of a company. Brokers use it to determine whether or not margin maintenance requires are being met, but in reality there is no single price at any given time. There are always two prices, the highest bid and the lowest ask, and those two prices are only meaningful for the size of the bid/ask in the order book.

How would an algorithm determine the price? The whole point of the equity markets is price discovery. The price should rise when people rush to buy, and it should fall when people rush to sell. In many cases that is the "right thing," in the sense that the rush to buy/sell is in response to a real change in a company's circumstances (e.g. an outstanding earnings report, a natural disaster that harms the business, etc.).

Limiting the execution of a large order would not stop insider trading, because you do not need to go to equity markets to buy/sell stock -- you can enter into a private agreement with someone to transfer shares in exchange for money. Limiting large order executions would also make index funds impossible -- index funds have to trade the stocks that make up the underlying index when customers buy or sell, and a large fund may have many individual customers buying or selling on any given day.

Not all problems can be solved with technology.
I've been using this: https://github.com/webpro/reveal-md

which is only markdown on top of reveal.js, quite cool
Hi Gabriel, is there a European site from which we can order? The delivery costs from the US are quite punchy, and it makes no sense to send the paper copy when a printer could do as good a job locally. Too many paper-miles? Looking forward to getting hold of it, great work! Mike
Show HN: A daily newsletter which send startup and funding news
Gradient Boosting Classifier
What's a gradient boosting classifier? How does it perform classification? Can we build a good model with its help and make valuable predictions?
Now that I did read it:
The storage part is exactly what I wanted, but the search part is missing.
Miniflux does something similar
Covid-19 overwhelmed a leading group fighting disinformation online
You're speaking at the level of the code, while I'm speaking at the level of the domain. Neither of us are wrong, but we're talking past each other.

The Shape class itself is formally the sum of Circle and Rectangle -- you can think of this as a "prefer composition over inheritance" principle, but it's still a way of relating Circle to Shape. In particular, the Circle and Rectangle factories are canonical injections of these two classes into the Shape class. The naming of the factories is a little suspect, but if the only use of Circle and Rectangle is meant to be in the context of Shape, it mostly flies.

> Nah

This came across as excessively dismissive.
Containers on Azure: Tips and Tricks you must know
Collection of Human Interface and Software Design Guides
My stuff pretty never sticks either. Randomn processes, or those we perceive to be, work in mysterious ways.
At that point, you should just be installing a binary wheel.

(Nb I’m a maintainer of a python project that’s difficult to build, and the number of issues we get that start: can’t install because foo.h can’t be found is very high, even though there’s other explanations closer to the end of the failed build)
...but then you're just using the wrong editor.
A simple process to boost productivity while developing software
The evidence that invasive, highly-targeted advertisement practices are more effective is limited, at best.
So if you are encouraging people to put there private photos which they want to share, and it seems like your website is claiming some privacy, shouldn't you address that somewhere on the site? Yeah, but first, make it clear that is what will happen. Because honestly, there is no way a non technical person will infer this model from the site.
What the War on Drugs Can Teach Us About Fighting Covid-19
This sort of behavior is so widespread, I now just assume that it is a given with any delivery service. This is why I only ever tip with cash, despite it usually being forbidden to do so.
I think I kind of understand what you mean, but your similes don't really make sense. Far too old to be a Twitterer? Donald Trump would beg to differ. Quake (1996) and Half-Life (1998) are also not far enough apart to be generation-defining. In the end, if you fail to be accepted by a community, you can always find reasons for it, but you can never be sure if you're correct about them...

BTW, I find this (mostly) American tendency to divvy up people into strict categories by their age very strange: boomers, gen. X/Y/Z, millennials etc., each with their own stereotypes. Which leads to even more alienation when people look at these (and other) stereotypes and think that they don't fit in because they don't recognize themselves in them. Of course they don't, because every person is unique!
Is that the same thing as algebraic data types?
Weave looks great! Integrating dev and publishing.
That's just the precompiled whl files
> Anyone can be a waitress or waiter. The labor is inherently low value because it's an easy job.

Having done a stint in barkeeping myself, it's not an easy job at all and there are many people who aren't cut for it. You have to be resilient enough to deal with all kinds of customers (the "Karen" meme is based in way too much reality) and their issues no matter how you are feeling yourself, it's a job that's quite taxing on your body and honestly it's exhausting.

> Raising the minimum wage will just subsidize jobs that have less actual value and it will be a net loss to society.

That reminds me of "A brief history of corporate whining" (https://i.imgur.com/NBSaqzi.png). When Germany introduced the minimum wage for the first time years ago, we had the same argument, and as expected it turned out to be nothing but whining.

Right now, the taxpayers are subsidizing jobs anyway: 70% (!!!) of SNAP/food stamps or Medicaid recipients work full time, with McDonald's and Walmart being in top spots (https://www.cnbc.com/2020/11/19/walmart-and-mcdonalds-among-...). These companies could also pay their workers a living wage and provide them with medical insurance and still be profitable!
I hope you work somewhere that code review exists. If you put a week's worth of work into a single pull request, you're probably making it too hard on your reviewer. So I break up my patches into smaller chunks (too small can easily be annoying as well, but I digress). These chunks and the conversations surrounding them can spread out over the rest of the week even though the focused time required to shepherd them along is <<8 hrs a day.
AWS also did not give Parler any time to cure their problems after making it clear that they wanted to terminate the contract for problematic content.
"Algebraic data types" refers to having both product and sum types, where products are the records/structs that just about every language has, and sums are indeed the "discriminated unions" under discussion.

Most languages don't have built-in syntax for sum types, so most developers are familiar with sum types only by the shadows cast by a variety of encodings. One of them is the subject of the OP, the Visitor pattern. Another is the "tagged union" seen in C, effectively:

struct Rectangle { int x, y, w, h; }
struct Circle { int x, y, r; }

struct Shape {
enum {
RectangleTag,
CircleTag,
} tag;

union {
struct Rectangle rectangle;
struct Circle circle;
};
};

Which doesn't look too bad until you realize I haven't explained how to use the thing, and then it's similarly involved and even more delicate than the Visitor pattern.
Almost nothing should do what JavaScript does, not even JavaScript. Of all the interpreted languages I’ve used, JS has the single worst ecosystem for running production code. If your experience is primarily with JS, do yourself a favor and try to grok other languages and ecosystems.
Freedom of speech is freedom of speech.
If you want it - you get it with both barrels.
Do as parent said in 1st sentence. Ignore 2nd sentence. (optionally)
For most eukaryotic organisms DNA it might not be "random access memory" but it contains a record of genes that somehow managed to get through the selective pressures they were subjected to over countless generations. I'd say that this information is an imprint of history, and is memory.

My hunch is that you're thinking of memory as being equivalent to RAM in a computer. So I'll remind you that read only memory is still memory.

Some microorganisms, like viruses, do directly modify DNA. That's where CRISPR came from.

I'd encourage you to check out the full range of definitions of the word "memory".
I have been using this on my RPi4B and it’s been pretty inconsistent. I haven’t had a chance to troubleshoot it yet though.
Is this why they're losing billions?
I wonder what the formula is for victories vs atrocities in terms of historical respect and modern acceptance. It seems we have entered into a period of no matter how much good you did, there is a hard red line of unacceptability set in a modern context as to which all historical figures are judged.

If Churchill wasn’t made PM there is a good argument to be made that the Jewish population would have been all but wiped out, and Europe today would be a fascist slave state to Germany. But then would the communist purges in Russia and China not have happened. No Vietnam. Peace for Europe but under brutal authoritarian rule.

Any criticism of Churchill’s historical significance really needs to consider the alternative outcome without him. I don’t think there is anyone who would want to take him out of history having acknowledged this. I think most criticism of him comes from ignorance to history.

But yes, the facts are important and it’s good that everything about history is discussed again and again.
Good read! I ran into points 3) "learning out of context" and 6) "missing the big picture" regularly myself when studying with Anki. I created a spaced repetition app [1] which lets you link and nest flashcards (like notes in roam research) to address this. The name of your method suggest it's tied closely to Anki, but from what I read it would work even better with connected notes?

[1] https://traverse.link/
The Future of Breathing
Inevitable becomes necessity.
I know nothing of this type of engineering. How do you even start a project like this? Map the bottom of the ocean, figure out all the danger zones? What is the cost of doing something like this?
Emilua: A LuaJIT Alternative to Node.js and Deno
That's great! Thank you.

And here's composer Alfred Schnittke's: https://upload.wikimedia.org/wikipedia/commons/thumb/8/85/Sc...