skysight-inc/HackerNews huggingface dataset:
I’ve seen Chrome in so many corporate environments and never understood why. Native browsers work fine and are crafted to work reliably in the environment they’re used in. My guess is some admins simply like Chrome and thus decided everyone should. I like Firefox but I keep it at home, at work I use Microsoft Edge.
> Some people seem to think that "busyness is next to godliness"

"Idle hands are the devil's workshop." ...

There are entire ideologies based on this kind of thinking.

Interestingly, both Protestant work ethic (which some argue gave rise to capitalism) and communism (because in communism the value of a product arises from the work put into it rather than its market value) are centred around this idea.
The duration of the isv cloud contract you mean. I have ple ty of perfectly running applications where the vendor has long gone. Also, i hate paying for a relatively small feature such as a password manager. Keepass on a webdrive offers the same for free and i get to look at the source as well which in my opinion is a requirement for something zo fundamental.
Alt.interoperability.adversarial
It's a fork of org-web. See the relevant section in the README: https://github.com/200ok-ch/organice#acknowledgment
How to Have Difficult Conversations When You Don’t Like Conflict
Shoot? No. They do end up dead on occasion.
Of course there are trade offs, of course we live in imperfect situations where we have to deal with shit that isn't ideal, but sitting around pretending like everything is alright is just lying to ourselves.

You're stuck in PG because your DevOps team is a bunch of incompetent dolts, so yeah, make the best out of the bad situation and go ahead and use something like Que.

Just don't develop Stockholm Syndrome while doing it.

People in this thread are protecting their own egos by expressing how great PG is as a message broker, but it's harmful to the industry to let that kind of attitude perpetuate.
Would you please stop posting flamewar comments and crossing into personal attack? This breaks the site guidelines and is not ok here.

https://news.ycombinator.com/newsguidelines.html
Building your own version of something is surely self indulgent wheel reinventing, but that’s what I’m currently doing with distributed configuration management.

It’s certainly been helpful in terms of understanding the boundaries between parts of the system, as this post also describes. The desire to auto configure everything is strong — one day you’ll have a VLAN hard coded into the config, but the next day you’ll be trying to programmatically distribute VLAN ids based on function instead. The day after that VLANs themselves are a artifact generated from a higher level separation in your human readable config. What was once a list of hosts with an attached VLAN id is now a group of hosts with a declared function that just happens to be programmatically assigned a VLAN id, but only as an implementation detail.

The same happens with IP address management — your root configuration moves closer and closer to being a document describing what you want to do, and less about how to go about doing it (which is implemented in your custom augmentations to the engine instead.)

When you can justify it as an exercise in understanding a system, and you have time for it, building your own tool chain is incredibly rewarding.
Where is this recycling center?
You forget laserdiscs, smaller videocameras, DVDs, and online payment systems ...

It's also probably the only thing really using VR/AR right now to any significant degree.

It used to be that there was a porn convention at the same time as CES in Las Vegas. For a lot of years, the porn conference was the better of the two from a technology standpoint.
The Divide Between the Programmers and the Customer
The "pluggable convergence engines" is what we've built in Gyro[1] for this very reason. We wanted to have more control over how changes are made in production.

An example is doing blue/green deployments where you want to build a new web/application layer, pause to validate it (or run some external validation), then switch to that layer and deleted the old layer. All while having the ability to quickly roll back at any stage. In Gyro, we allow for this with workflows[2].

There are many other areas we allow to be extended. The language itself can be extended with directives[3]. In fact, some of the core features like loops[4] and conditionals are just that, extensions.

It's also possible to implement the articles concept of "non-destructive prod" by implementing a plugin that hooks into the convergence engines (we call it the diff engine) events and prevents deletions[5].

We envision folks using all these extension points to do creative things. For example, it's possible to write a directive such as "@protect: true" that can be applied to any resource and would prevent it from ever being destroyed using the extension points described above.

[1] https://github.com/perfectsense/gyro
[2] https://gyro.dev/guides/workflows
[3] https://gyro.dev/extending/directive/
[4] https://gyro.dev/guides/language/control-structures.html
[5] https://github.com/perfectsense/gyro/blob/master/core/src/ma...
A decade ago, that TDD would be a de facto standard by now. It's not
It would be rational for you to employ the historically felonious candidate. They would be more likely to stick with you, if only because finding a job elsewhere is hard. If lots of people did the same, wages would experience downward pressure, because the pool of possibly successful applicants would be larger.

You might also do it because sometimes it pays to give someone a break.
The state of NDK is a good example.

It appeared that the Android team was kind of forced to support C++ for game developers, and they did an half baked release with Android 2.0.

Using headers and toolchains different than what regular Android (internal Google teams) were using, thus took them all the way up to release 14 to actually provide unified headers.

Bionic wasn't fully ISO C compliant and has been being improved throughout all the NDK and Android releases.

Back when they decided to drop Eclipse there wasn't a roadmap for C++ support going forward, and they were kind of rescued after JetBrains decided to create CLion, which they took up to integrate into Android Studio, almost two years later.

There were two reboots for new build system tools, until they decided to keep ndk-build around and settle with CMake as alternative.

Even though the NDK APIs are written in C++ (or C++ wrappers over JNI calls), they are exposed as extern "C" to userspace, thus being more prone to unsafe coding pratices.

Only now they are starting to think about supporting NDK package management, so far each Android NDK developer using AARs had to come up with in-house solutions to package NDK libraries across projects.

Small rant, plenty of other stuff to complain about. However I would also like to add that the (apparently) small NDK team has improved the experience a lot, when comparing with what the Android 2.0 NDK state started from.
You can use void in JavaScript and TypeScript
The alternative would be to write a side effect inside your `render()` function, which is illegal

That's one alternative. Another is not to try implementing behaviour that has nothing to do with rendering using a rendering library in the first place.

A horrible amount of accidental complexity has been created in the React ecosystem when people have tried to use it like a full framework. If all you have is a hammer, maybe it's time to consider using other tools as well.
> I've seen this idea cargo-culted way too often

maybe, but it should still be more widespread
I also prefer the TIE-fighter setup, and didn't have a name for it until now. However, I find that 120 characters is too wide as soon as you want to do anything other than code on that screen.
I'm living in Germany, the bank account of my neighbor in Commerzbank was closed because he wrote "hooker money" in description when sending money to one of his friends. At least that's what we believe because they refused to explain why. He could easily open another account in Volksbank and according to him, when the new account manager asked and learned why his previous account was closed, they had a pretty good laugh.

I used to get "funny" too when sending money through PayPal to friends, never again.
*Ex wife
int max = new Max(10, 5).intValue();
r_wateralpha 0.1
John Carmack's take on this seems a lot more sensible to me: http://number-none.com/blow/blog/programming/2014/09/26/carm...
Which is basically another form of talent.
>The myths are promoted as means to raise hope in the "little man" and to attract new blood (workers) to the specific industries, thinking they can also become as big as the stars of that industry, starting with very little.

Why invoke conspiracy when mere venality will suffice? Optimism sells. Hollywood has warmed its benches with a never-ending stream of would-be stars and filmmakers despite the fact that the image of the struggling Hollywood hopeful is as cliche as that of the morally intermittent lawyer.

Perhaps one of the strangest things about our psychology-and-PR-dominated world is that psychology is so subtle and powerful that it affects us even when it is not affecting us, making us see ghosts in the shadows of folklore. What would be so nice is a list of criteria for determining when a meme may have been designed for cultural impact. Surely cui bono is not enough -- it implicates nearly everything!
OpenWRT will natively support NextDNS in upcoming 19.07.0 release
What's wrong with that ?
Agile is about gradual increases of business value. So, as long as maintenance lowers further costs it is a proper aim. Unless there's something else which can bring more value earlier.

For some businesses maintenance time never happens. For some it is an important stage before moving to the next iteration of new features. For some it is a daily process with dedicated teams. Every case is different. Agile is about practical agility :)
You seemed to suggest in GP that one problem with fiat is that it may become deflationary (ie prices for goods in fiat will go down). I pointed out that Bitcoin is by construction deflationary, prices (in bitcoin) for goods go down as long as bitcoin occupies at least a fixed fraction of total exchange tokens.

Simple example, if bitcoin is the only exchange token in circulation then bitcoin will become more valuable as a function of time simply because the amount of "stuff" increases. This is as opposed to fiat, which increases in supply to compensate the increase of material wealth in the world.

The reason deflation is bad is because it discourages investment. If I can buy more stuff later with the same amount of tokens then I have an incentive to not spend my exchange tokens, thus reducing the total circulation of tokens/investment/etc. It also makes loans more painful (unless interest rates are negative), but if interest rates are sufficiently negative then this encourages people to not deposit money into loan originators (traditionally banks, but in crypto world could be something else).
Most people still follow such patterns, not everyone is glued on their phone 24x7.

I am yet to own an Android device that lasts more than 3 days.
I stopped using Paypal a while back ... don't won't any bizarre US cultural norms and govt politics affecting my choices.
Do they take more time than repeating the same 10 or 20 lines of code with slight changes every couple of paragraphs, and having the reader try to figure out what changed since the last 4 times they read almost the same code?
> I call it the TIE-fighter setup,

I have the exact opposite setup, with the vertical screen in front of me. How would you call that setup?
It's always a lie? You're basically arguing that code with bad test coverage never works.

Production code is copping constant manual end-to-end tests. Those tests are more valuable than most unit testing, and some automated black box testing. I'll take stable production system over the unit tested new code any day of the week.
I kinda want to see this applied to the diver video. It could surface artifacts, or look surreal.
Salt, for some reason, is not discussed in the article. It's declarative.
Firefox does: https://support.mozilla.org/en-US/kb/firefox-esr-release-cyc...
The CEO plane equivalent for tech-nomads...
Right, now I see why you ask, I wrote citizen right. Maybe I should have written human right.

In German there is the term of the "foreign co-citizen", not sure what an English equivalent would be. So when I wrote citizen I had in mind those with German citizenship and foreign co-citizens. It just includes everyone living in the country. (Illegal immigrants are smaller topic in Germany than the US, so there is little need to think about that distinction.)
Obviously DoreenMichele isn't asserting that. She was on HN for years herself whilst being homeless. If that doesn't give her legitimacy to talk on this subject, from a homeless perspective and an HN perspective, what would?

Since you care about homeless people and people with disabilities being able to participate in forums, why not listen to someone who did just that? Edit: Apart from everything else, it's an incredibly interesting combination. Other HN users have posted about homelessness from personal experience too. Cross-examination is out of place here. Though I doubt you intended to come across that way.)
I'm not doing anything like that, but please, pretend that I am, seems like your go-to move here anyway.
Or just fix that system; here (EU) it is not all that easy to chargeback (and impossible in many cases) because payments are secured; if you yell fraud, they will start an investigation (mostly automated); if the IP you paid from was around your house, you filled in correct info, you did 3dsecure (which is used on all my cards now; I had a few that did not have it and they got frauded, but a simple check showed it could not have been me and they reversed them all; they now have 3dsecure too for that reason) which means you knew specific secret information, maybe have a token device and/or the phone of the card owner, they will decline the chargeback request. If you are in your country most of the time and suddenly there is a 1000E charge from a merchant in Dubai, they will block it and call you.

The ease with which you can do chargebacks in the US is harmful in a lot of cases imho. I have been a merchant (of digital goods; gaming, not gambling or adult) and got annoyed enough of US chargebacks (including from Paypal) that we started doing annoying KYC and added very long waiting periods before product delivery for US customers. We had certain payment methods (bank, and there were some payment methods that do not allow chargeback) that had immediate delivery. That fixed it, mostly. It hurts sales, but I rather make less revenue and more profit than pay for product only to lose it to scammers.
That’s precisely the problem - if both sides were moving together, in time it would be a slide deck, in space it would be a scrolling document. Here, we have the left and right side, changing in time and space, respectively, and burdening the user with cognitive dissonance.
It's the same situation in Japan. I've lived here for 5 years and literally never, not once, sent or received a message to anyone else here in Japan using the iOS Messages app. LINE messenger penetration is 100%. You don't ask for someone's phone number, you ask for their LINE username. And if you want to call them you use LINE's voice calling feature (which uses data so doesn't cost you minutes). I don't have anyone's personal phone number aside from my wife. Even my elderly mother-in-law makes calls using LINE.

My iOS Messages app is just pages and pages of phone number verification and 2FA texts, and then one group chat with remote coworkers abroad.
Sign up at ipinsight.io to get free geolocation service
Perhaps easier to manage Chrome than managing a different browser for each operating system?
Your argument would only work if cryptos performed at least as well as fiat. The fact is all major cryptos have been far more volatile than fiat. In your car example, it might be that fiat is driving a car without adding gas or oil; but by that comparison crypto is driving a car that is actively on fire.
A list for all kinds of Startup Managers
> PayPal also refuses to do business with online gambling

Not in Australia.
> anything for legally working around financial deplatforming still needs strong interfacing with the rest of the system as well as compliance with legal regimes

I have never understood the obsession with complying with stupid laws. The solution needed here isn't "legally" working around financial deplatforming; illegally doing so will work just fine - and also probably have the benefit, as widespread disobedience often has, of putting extreme pressure on these laws themselves.
Cryptocurrency exchanges seem to be solving those problems. They transact between participants in thousands per second. Bybit has no fees on deposits/withdrawals (withdrawals can be batched to avoid network fees); but network fees are not a disaster - currently network fees are: a) in 1 block 0.27 USD/tx; b) in 6 blocks 0.10 USD/tx.
The author posted a reading list:

https://medium.com/@JorgenVeisdal/reading-list-5d3018266f7d
I'm sooooo tired of this carve things up into functions cargo cult.

Go grab a Vulkan tutorial, and try to understand the logical flow. Good luck.

All the Vulkan tutorials atomize things into functions because it "encapsulates" actions into "easier to understand" pieces.

And then creates a mutable uber-object that holds a whole bunch of Vulkan handles that needs to get passed to every function so you don't know who is updating what and when.

But, hey, writing that as a 1500 line single function where you only expose the variables as you need them is far too complex for us mere mortals to read. <rolls eyes>
Probably the mistake was not dropping support much sooner.

Python 3 came out in 2008 so say no backported features after 2009 no bug fixes after 2012. All announced in 2008 of course.

Given 4 years to migrate most would have made the jump sooner.
I have the opposite philosophy. The ideal function is only called once. If it is called more than once, I have a "call diamond" instead of a "tree" and this is a code smell.
Anyone who loves the scooters enough will buy one on Amazon for $350 because it pays for itself quickly. I did. Great for getting around a 1-5 mile radius.

At best the rental micromobility economy is transient until all the people who find electric scooters genuinely useful buy their own. It often ends up costing as much as an Uber to get anywhere anyway
Good job the violinist works in the music industry not the software industry, or he might find after all his sessions of focused deliberate practice that now no-one wants to hear the violin anymore, and he must in future focus his efforts on the upcoming disciplines of both xylophone and clarinet.
The question is, why didn’t the author write his article in smaller 50-word block tree, conveniently connected by a-hrefs and/or separated to multiple pages, all links well named.

It is a straight wall of text instead, that is hard to follow and using implicit references all across.
They were low end hotels before they bought them. Considering they own the whole property it’s not like this is a big deal like it would be for Airbnb (which is already used extensively for that).
I prefer another rule for short functions. You should be able to explain what the function is doing in one sentence. If you need two sentences, you should break it into more functions.

On the other hand, if your descriptive sentence is basically just duplicating the statements in the function, then your function is most likely too small or too granular. Depending on situation, you might be able to fix it.
I have signed up for trials just because I wanted to grab a certain clip. And while I was in there I would download as much as I can and then cancel. And there is also that once you are done watching the last thing you want to do is watch more. And did I just pay for that? Wasn't worth it.

Family Guy sums it up nicely.

https://youtu.be/IzhIiJJdD9g
> All advertising is bad-looking.

The Eiffel Tower was built as basically an advertisement for Eiffel's company.

The Rainier R is also became an icon:

https://en.wikipedia.org/wiki/Rainier_Brewing_Company#/media...
We rate-limit accounts that break the site guidelines and/or get involved in flamewars frequently. We're also happy to remove rate limits—and often do—when people email hn@ycombinator.com and promise to use the site as intended in the future.

https://news.ycombinator.com/newsguidelines.html
Popular viewpoint posts get flagged, as they should, when they break the site guidelines. We couldn't care less if a view is popular or not. What we care about is that discussion follow the rules at https://news.ycombinator.com/newsguidelines.html
Do you need a replaceable SSD?
> A lot of why people bought cryptos is in hopes of massive deflation

No. Bitcoin is not a get-rich-quick scheme, it's a not-get-poor-slowly scheme. It's mainly protection against inflation, not hope for massive deflation.
As an example for Linus' "kernel changes should not break user programs" policy, he was famous for using harsh words to pass the message to those who tired to steer otherwise (these words I don't have to repeat, so I'll just quote his main message):

https://lkml.org/lkml/2012/12/23/75

"How long have you been a
maintainer? And you still haven't learnt the first rule of kernel
maintenance?

If a change results in user programs breaking, it's a bug in the
kernel. We never EVER blame the user programs."
One middleground option if you have a long function but also want to break it into chucks for easy readability: In C# and some other languages you can put braces around a block of code without actually having any condition on it.

Or just throw some big comment headers in.
The seller now has the buyer-signed transaction as it will (hopefully) be recorded on the blockchain. Common wallets will also already deduct the paid amount.
Too bad! I switched a bunch of nonprofits to .org from their .com. I guess, we should switch back.
Yeah, it would be nice if Dramatiq supported it. django-postgres-queue sounds promising, though.
> But how am I supposed to convince a retailer to accept my off network payment?

Because you're both connected to a common lightning node, at least indirectly. There are several public lightning nodes that accept connections and they are joined together. Connect to one and you have access to their network.

> Similarly, if I want some random person to send me money, how do I convince them to run a lightning node and to let me connect to it?

Same as above. The lightning network is, of course, only going to work with other nodes who are also connected, but there is an incentive to join, since when you do, you can transact with all of its peers.
We cut you much more slack than we give to most accounts who break the site guidelines, so I'm not really feeling your complaints.

Would you please pick one account to post with? Using multiple accounts to work around moderation restrictions is obviously abusive.
I don't smoke (never have, tried it, not for me), but I still think calling them “adult pacifiers” is an over the top, intentionally inflammatory statement that's not true. If anything, it makes your very real point that people should stop smoking seem ridiculous.
People are using Chrome at home and demanding it at work is ome reason, many developers exclusively testing on Chrome the other.