skysight-inc/HackerNews huggingface dataset:
Piracy seems to have arisen mostly because the commercial options were really hard to work with -- and the subsequent forceful adoption of DRM didn't help either.

Consumers want convenience. I have convenience in the cinema so I pay for movies there quite often.

As for digital distribution, I don't feel confident in any platform. You basically pay to be severely inconvenienced. Plus what happens if you want to load up 10-20 movies on your laptop and go camping? Tough luck.

The movie industry should stop trying to sell us the same thing several times. If I paid for a cinema ticket once I should have the right to download that movie and have it stored offline forever.

Almost nobody who pirated movies (of those I spoke with) did so out of being cheap or poor. Almost everybody told me "I can't even figure out how I can download the movie I paid for" and just opted for torrenting.

Sure some people will do anything and everything to pirate. But I argue they are much less compared to those who are unhappy with the current streaming offerings.
I won't likely ever work for a FAANG, but for me the real interest would be being around other people working on things and seeing how they do their work.

Personally I've only been coding professionally for a few years and while I've learned mostly self taught a HUGE amount of coding outside of some aspects you can only learn so much / a lot is missing. People like to cover the obvious and the controversial, but ...

Tests, debugging, coding structure, decision making, how they think through their code as they write it / troubleshoot, refactoring, and even things like "here's how you want to handle errors" are largely absent on the internet. But I don't want to see just ONE way to do it, I want to see lots of ways of handling such things.

And honestly, I'm older, and I get a lot of energy from being around younger and/or more energetic folks and I get the feeling that's pretty common at FAANG.
Show HN: How Safe Are My Roads? – UK Road Safety Data
This is one of the things I love about GCP.

Kubernetes Engine, Compute, Storage, Memory Store, Cloud SQL, PubSub.... almost all of the main services do what they say on the tin.

The only downside is - ironically - it sometimes makes googling for help a bit tricker. Eg. Are you search for generic cloud storage or the Google product with the same name?
TWM keeps working fine on the latest version of Linux, and TWM predates Linux for many years!.
Do Androids dream of equal security?
Imitation recognition and its prosocial effects in 6-month old infants
Yes. You can go crazy with static sites. I use Github Pages for this. On one I've done a single-page Javascript-driven text adventure. On another I've embedded a Unity application that runs a dynamic 3D starmap with WebGL. I've also seen roguelikes. What you can't do is run server-side logic, but you can do an -awful- lot on the client.
License proliferation is a problem. There is no good reason for new projects today to be using the Eclipse Public License or any other vanity license. If one of { MIT, Apache, GPL, LGPL } aren't attractive for some reason, then at least use MPL 2.0 or offer it under dual-license with one of these. Picking some goofy community license like EPL is a great way to make sure a project is seen as an option for people who inhabit that community, but nowhere else.
Glad someone already said this. And if you want something a bit more fancy, use a static site generator like Jekyll or Hugo.
>hundred of people riding generator-bikes (half-kidding)

I've wondered if it makes sense for gyms to be paying for electricity.
The blocking of Fram. https://news.ycombinator.com/item?id=20317921
100% Agree. But let's be honest. For most developers, the 1st priority of a personal blog is not page views, but job offers. So it makes sense to make your personal site using the tech that matches your skills.
The fake news. Or, to be precise, Internet-enabled populists (it doesn't automatically make the government of China or WeChat good, of course).

I think this is an interesting case that makes a point - on one hand, it's now a general consensus that a large volume of fact-free, manipulative posts online are harmful and many argue that responsible platforms should not host (or at least not to promote) them, but the very same countermeasures that governments and platforms took against them can be abused to suppress legitimate speech and social movements.
Show HN: I built a payments platform that has processed more than $1.3M at 17yo
> Also, they kind of avoid talking about the very important issue that who you are talking to is not secret.

Which chat apps fix this? I’m sure the people operating signal know who you talk to.
This reminds me of Data Robot laying off people "beacause of covid" right after finishing a 300 million dollar round. This AI companies have lied about their valuation for awhile and it's catching up to them.

Ironically enough, after data robot did a layoff they also completed a large acquisition and hired more executives.
You make some good points, but I still think it was a largely impossible job. As much as you believe Boris has succeeded where she failed, he hasn't actually got any better a deal from the EU than she did, and we're still arguing about when Brexit should actually happen (we've only had a repreve due to the COVID situation!).

Realistically, the EU holds all the cards here.

But I'm not going to argue much on this, as I strongly dislike here actions as home secretary, and believe she would have gone further on mass surveillance after Brexit - I'm not here greatest fan.
But isn't also the case that humans understand the consequences and the depth of multi-variable decisions?

For example, Amazon Seller Central, Google, Youtube, can "outsource" their customer service to AI, because they are pretty much the only players, so customers have to suck it and deal with the frustration of a terrible experience by not getting help and not talking with a human.

With any other business if they get automated replies that don't solve a customer issue and they are unable to talk with a human, 99% of them say "fuck it" and go somewhere else.

This is one small realm of the relationship of AI and businesses. Then you have employees, suppliers, supply chains, finances, internal processes, so many multi-variable, fragile and nuanced systems that I doubt if they're not developed in-house, they'll probably do more damages than solve problems.
The behaviour described is entirely selfish. There's plenty of evidence that the opposite, selfless behaviour, is highly beneficial and can actually be enjoyable.

If you never compromise for the sake of others you'll find yourself lonely and disliked.

There's no correct or incorrect here, no black and white. It's a big spectrum of grey. There is a balance, and it's hard to find.
One should probably point out that the library/readme is not the only suspicious thing. The author often has huge problems with terminology and/or communication in general. He routinely confuses output with formatting, which might explain some of the "benchmark results".

[1] https://www.reddit.com/r/cpp/comments/dc5t1n/reply_to_herb_s...

[2] https://www.reddit.com/r/cpp_questions/comments/efuemt/c_wit...

[3] https://www.reddit.com/r/cpp_questions/comments/f7zgat/why_d...
Wealth and Privilege Are Distorting Underground Music
Software Licensing: What's a Copyleft?
Here's a great explanation of the history and techniques in the "Logon's Run" [1] demo for Amstrad CPC:

http://norecess.cpcscene.net/the-elders-scrollers.html

[1] https://floooh.github.io/tiny8bit/cpc-ui.html?file=cpc/logon...
Revisiting RowHammer: An Experimental Analysis of Modern Devices and Mitigations [pdf]
iOS Security is f****d
It will be interesting if this type of previously acceptable behavior will be driven away by fear, even if the fear turns out to be unwarranted and potentially counter productive.

I.e. assume the trends continue, and COVID spread is confirmed to happen 99% of the time by respiratory droplets (touch being an ineffective transfer mechanism). Also, data on ultra-clean environments point to harmful effects on the human immune system.

Story from colleague: New intern doesn’t shake hands on introduction, but subsequently continues to work shoulder to shoulder in doors for hours learning equipment.

I’m indifferent to the handshaking, but it will be humorous to me if it has absolutely nothing to do with covid and it goes away. (kind of like rental car companies, some airlines, air bnb etc. that may all be destroyed by fear).
I don't get it. You or I can't be prosecuted under it because we're not in public office, but people in public office can be prosecuted under it, thus there's a class of people held to higher standards.

There's a bunch of stuff that you and I can do, but that we couldn't do if we were in public office.
Speaking of ZSH: it is the thing I miss the most in Windows (especially with ohmyzsh, and its plugins zsh-autosuggestions and zsh-syntax-highlighting).

I know that there is oh-my-posh, but it lacks such plugins. Do you know any workaround?
After voting to unionize, Glitch lets go a third of employees
Agreed. ISPs only handing out /64 is very aggravating, because one can not subdivide them without breaking SLAAC. One can hand out smaller subnets with DHCPv6, but that is broken in a lot of clients that assume /64 subnets blindly somewhere.
Batch Binary Analysis with Ida Pro 7.4 Automation
OpenResty: A Swiss Army Proxy for Serverless
> Does anyone know what problem are they trying to solve?

Know the phrase "follow the money"? In this case, follow the power.

To be caught up arguing about codes of conduct in general is a distraction.

>I find it confusing that the foundation statements says it's just a formalization of existing practices but on wikimedia meta page it say it's an urgency.

Remember that time the Wikimedia office banned a user for unclear reasons, without engaging community governance that would typically handle the banning, and the row it caused because that wasn't the normal way of doing business? If you doubt how huge the separation of responsibility between the people who work FOR wikpmedia and work ON wikpedia is, see: https://slate.com/technology/2019/07/wikipedia-fram-banning-...

This release from wikimedia says that they're going to be taking top down control, but unless you're already versed in the structure of the system you just hear names of groups without understanding the boundaries they represent.

> Does anyone know what problem are they trying to solve?

Either, the wikimedia board is again trying to "fix" wikipedia engagement with all the insight, art and tact of people that wouldn't be caught dead participating as editors within wikipedia's self governance system.

Or, a wedge issue has emerged that will allow the foundation to take more direct control while minimizing the appearance of ramping down wikiepedia's self governance.
Running on Windows machine vs Unix based tends to highlight issues regarding case sensitivity
I think you're conflating two things: formulas and numbering systems. Ancient Greeks still operated in decimal albeit they'd use the Greek alphabet (since dedicated glyphs for numbers didn't exist) but those letters followed a base-10 system. They would have done the same finger counting we did as kids. The difference between then and now is their calculations were geometric instead than algebraic, rather than them not thinking in decimal.

In that regard your argument is a little like saying kids test question such as "Jennifer has 3 apples and gives one to Bob and Terry, how many does she have left" isn't decimal because the calculation is written in English rather than as a "number sentence" (as schools call them). But clearly the kids are still thinking about those numbers as decimal even if the question is not phrased as a mathematical equation.

Whereas some other cultures used base-12 or base-60 (https://en.wikipedia.org/wiki/Sexagesimal) which, incidentally, are also believed to originate from finger counting much like base-10 was.

I believe the Romans also thought about things in decimal despite their numerals being logarithmic. However their numerals do follow the decimal orders of magnitude.
Something to note here is that everything is known and done statically in the source code. This could be addressed through metaprogramming if only the Go language had some ^^

We have similar needs at Sqreen but for security monitoring and protection reasons: we need to dynamically instrument functions at run time, while not asking any code modification to our users. To do so, we instead leverage the Go compiler to perform compile-time instrumentation that inserts hooks anywhere interesting. You can read more about this approach at https://blog.sqreen.com/dynamic-instrumentation-go/
Ask HN: How to find clients to start working remotely while you have a job?
I absolutely loved working remotely during the lock-down. I had way more freedom, had more sleep, sometimes had 12 hrs working days when I was in the zone and then having a Friday (or even Thursday too sometimes) off because I was so efficient during the week. And I was so efficient that I also finished some of my projects, and was learning lots of different things. I was just better.

Therefore, I want to switch to working remotely eventually (my job requires to be in the office).

I have free time in the evenings and weekends, and lots of energy, so I am prepared to work hard. I love what I do, and I am pretty okay at doing what I do. I work with Django, Laravel, and ReactJs. I can basically create the whole site.

Where do I start? I am fine with working for little money at the beginning just to grow the clientele.

Thanks a lot.
I really liked using Nuxt + AWS Amplify for personal sites.
Ferris does awesome and in-depth breakdowns of demos/tools he built:

https://www.youtube.com/channel/UC4mpLlHn0FOekNg05yCnkzQ/pla...
Earning my daily bread with writing React with TypeScript and using next.js, this is exactly what I would use for my personal blog.

Sorry for the many negative comments. I'm not sure if many people here do websites for a living, but I can't imagine doing stuff any other way anymore. It's just so convinient from a developer standpoint. Is it overkill for some websites? Maybe, but in the end you are dead on with your sentiment that it needs to be fun for YOU to use. So I hope you are not disencouraged by the many negative comments.
> Specifically, the Board has tasked the Foundation with:

> Developing and introducing, in close consultation with volunteer contributor communities, a universal code of conduct that will be a binding minimum set of standards across all Wikimedia projects;

> Taking actions to ban, sanction, or otherwise limit the access of Wikimedia movement participants who do not comply with these policies and the Terms of Use;

> Working with community functionaries to create and refine a retroactive review process for cases brought by involved parties, excluding those cases which pose legal or other severe risks; and

> Significantly increasing support for and collaboration with community functionaries primarily enforcing such compliance in a way that prioritizes the personal safety of these functionaries.

The first thing they state is creating a universal code established by some hand-picked team.

The second thing discussed is how this code will be enforced.

The third thing discussed is rewriting everything published to be sure it conforms to the new code.

The fourth thing discussed is building a wall around the functionaries. It seems notable they have chosen a word which describes an obtuse rule enforcer.

These activities do not describe the way to create anything "inclusive" of anything that is not in service to some very specific set of viewpoints.
Yes. With static site generators you can still serve custom pages to your heart's content... It's not like you can -only- create posts and that's it.

With Hugo/Zola I set my generator to include MathJax javascript if I enabled it in the front matter of the post. Etc.
The X280 is the last 12 / 12.5" proper Thinkpad.

Last year's equivalent moved to 13" screens, hence X390 (Intel) and X395 (AMD).

The second digit usually corresponds to the first digit of the Intel Processor model no, though I think there's been some exceptions over the last few years (certainly with the T series anyway).
Yes, you are right. I was thinking more about it not being a document-store like Mongo or couchdb. But I agree it's NoSQL.. will update
A Grad Student Solved the Epic Conway Knot Problem–In a Week
Ironically applicable to those demanding this due to their claims of being oppressed.
>IE6 was a trainwreck and wasn't improved for years purely because Microsoft didn't have to

Remind me how that turned out for them.

They _thought_ they didn't have to. Bundling is a powerful strategy, but it isn't a magic wand that dispels competition. You still need to offer a compelling product.
My personal answer: I'm touch typing. I can do so without looking at the screen. While I'm typing, I can think of what I want to say next. At least to some degree.

Vim helps me to stay focused, to stick to my thoughts instead of having to work with the IDE/editor.

I don't have to select a word, by detecting its boundaries (or point to it and double click), delete it and type an new word.

ciwnew word^

what looks like random chars is almost a reflex, when you get the Vim "grammar".

(of course, you can do it with any editor: ctrl-left, ctrl-shift-right, delete, "new word".)

So, yes, you're 100% right: programming is no about typing. And Vim helps me to care even less about typing the code.
If you're using Apache, which he said he was, you can just use server-side includes: https://httpd.apache.org/docs/current/mod/mod_include.html#e...
Nginx? Why not busybox httpd with OpenSSL sconnect? So much bloat. :p
I use global aliases a lot, especially for pipes I use often. my main ones:

- alias -g G="| grep " (`cat test.txt G some_words`)
- alias -g CC="| pbcopy " (`cat test.txt CC`)
- alias -g "?"="| fzf " (`ls -l ?`)
- alias -g X="| xargs " (`ls -l X rm`), probably my favorite (makes xargs kinda look like a pipe)
- alias -g Y="| yank "

They compose well, too.

- Pick some file to delete from `git status`: `git status Y X rm`
I worked for a company that did this, and our scale was quite large. It took a lot of work to get AWS to give us more and more databases on RDS. We had some unique challenges with scaling databases to appropriately meet the needs of each account. Specifically, it was difficult to automatically right-size a DB instance to the amount of data and performance a given customer would need. On the other hand, we did have the flexibility to manually bump an account's database to a much larger node size if we needed to help someone who was running into performance issues.

I think the biggest problems had to do with migrations and backups. We maintained multiple distinct versions of the application, and each had a unique DB schema, so there was frequent drift in the actual schemas across accounts. This was painful both from a maintenance POV, and for doing things like change data capture or ETLs into the data warehouse for data science/analysis.

Another big problem was dealing with backup/restore situations.

I suspect this decision was made early in the company's history because it was easier than figuring out how to scale an application originally designed to be an on-prem solution to become something that could be sold as a SaaS product.

Anyway, I think choosing a solution that nets your business fewer, larger database nodes will probably avoid a lot of maintenance hurdles. If you can think ahead and design your application to support things like feature flags to allow customers to gradually opt in to new versions without breaking backwards compatibility in your codebase, I think this is probably the better choice, but consider the safety and security requirements in your product, because there may be reasons you still want to isolate each tenant's data in its own logical database.
Note re live streaming: a minute of delay between streamer and audience makes interactivity (even just Q&As at the end of a presentation) essentially impossible, and Peertube's particular design makes it unlikely that'll improve by much. It does make it somewhat cheaper to host though.

I'm working on a self-hostable live video streaming platform, building on solid, well-known technology like MPEG-DASH's low latency mode and a relatively dumb (and easily replaceable) content delivery network.

Preliminary tests suggest that my system can get to about 3 seconds, which makes interactivity between streamer and audience a lot more feasible. The downside is that this costs money - about 12 cents per GB through e.g. Fastly, on top of hosting and origin bandwidth costs.
fish abbreviations kinda do this, for example if you define your alias above as an abbrev and you type hello<space>, it replaces hello by ~/Documents in your command line. You still have to press backspace to remove the space you just inserted, but it's better than nothing.

Also, apparently you can add this to zsh with a plugin: https://github.com/momo-lab/zsh-abbrev-alias
Unhealthy developer habits and what to do about them (2019)
I think I might be able to help with this one! Here's a little trick I learned from a friend. It's also tab completable.

I keep all my code in ~/code

$ c # cd to ~code

$ c pr<tab> # tab complete to c projectname

$ c projectname # cd to ~/code/projectname

This is pretty simple in zsh

# c to cd to ~/code

c() { cd ${CODE_DIRECTORY}/$1; }

# tab complete c against code

_c() { _files -W ${CODE_DIRECTORY} -/; }

compdef _c c

(Note: CODE_DIRECTORY is just an env var for ~/code)

I use this all the time and I use h to do the same for my home directory

https://github.com/gpspake/dotfiles/blob/master/zsh/gpspake/...
It just goes to show you that phone makers are unlikely to be the best OS makers.

Take this trend forward, a phone only has one app that a user clicks on to ‘open’ a new and better ‘operating system’ that better suits their needs.

Each of these app-‘OSs’ will be unavailable to other developers, so it becomes an arms race.

The convenient thing for China is that the CCP picks which companies will be winners and will therefore have the capital backing to compete and make the best app-OSs to get a majority of users to buy in to. They can also build in the required back doors to keep their population from getting any funny ideas.
Forgot to mention: we were not a Rails shop, but I think the kind of code or framework being used isn't the most important challenge here.
A more pertinent example may be an early warning system, common in finance, fraud, and ops, which flags when a statistic is an outlier of some type. These flags then get followed up on by designated folks.

Not as sexy as a general recommendation engine, but useful nonetheless.
Tailwind CSS [1] and Tailwind UI [2].

Tailwind CSS makes it super easy to style any component and completely side-steps the issue of well-structured (and inflexible) CSS systems.

Tailwind UI fills in the "bootstrap components" gap with a bunch of premade templates, which are very easy to alter for your own, highly-custom use cases.

The UI kit is super expensive though. I'd need to pay $450AUD for the complete set of application UI + marketing UI templates ($370 if bought together). For an individual, it's borderline obscene, but the pricing makes sense for teams.

This setup is super useful. I really enjoy it, though it was a struggle to justify as a student.

[1] https://tailwindcss.com/

[2] https://tailwindui.com/
f-droid is a horrible experience though IMO.

I go searching and I can't figure out what some of the apps even "DO", others are "Here is this app, you need to install these other things too to make it work, also it only works with X, so maybe it will work for you I duno....".

Now I get why it is the way it is, I don't expect much more from folks putting out software for me like that, but it's a terrible user experience.
Ha good luck explaining in one sentance the difference between Flume, Spark, Storm, NiFi, Camel, Apex, Flink, Beam.....