skysight-inc/HackerNews huggingface dataset:
> Thus you lose the benefit of being in the city (close to work, close to friends, close to cultural offerings, close to shops, close to ...)

This is the “Brooklyn is boring” problem. It’s temporary. The old city centre (Manhattan) is unlikely to decline rapidly in relative importance but cultural and economic life will happily extend itself from central areas to less central ones given the population and the money to make it worthwhile. Good transport links help enormously too.
Hello!,

I'm the original owner of this tweet & new to HN. I never expected this to go crazy at this scale. A big thank you to @rukshn for sharing it here.

My apologies for the narrow requirement definition (had to limit it to 280 chars :)

What I intended was to build the UI from scratch & the logic all within JS.

Learnt a lot from all these contributions & keep 'em coming.

Since everybody is into plain JS, here's my version:

279 chars, No HTML injection/document.write(), can add, strike-through & clear the whole list

a=document;x=a.body;b=(d,t)=>{return d.appendChild(a.createElement(t))};c=(e,v)=>{e.innerHTML=v;return e};i=b(x,"input");c(b(x,"a"),"+").onclick=_=>{c(b(o,"li"),i.value).onclick=(e)=>{e.target.style.textDecoration="line-through"}};o=b(x,"ol");c(b(x,"a"),"X").onclick=_=>{c(o,'')}

https://jsbin.com/weyijorila/edit?html,output
It is a pity the type hinting is done in a separate file though, as it leads to a lot of duplication. In this case, I pretty much prefer Python’s approach.
CPython Optimizations – String Interning
The D1 was a legendary and revolutionary camera: a WHOPPING 2MP digital sensor that allowed photographers for the news services to submit photos "only two hours after an event" (via dialup). I recall reading that the first two major events being shot all-digital by the AP were the 1996 Super Bowl and the RNC/DNC national conventions. Until it was pointed out that nobody could tell it wasn't film nobody knew. From there the age of film for journalism was over.
Apple is starting to build new factories here in Vietnam recently, yeah.

Samsung already does make their phones here.
The phone itself is available on Fairphone directly: https://www.fairphone.com/en/

It's a really interesting to read some of their blog posts and see their journey. It does prove that trying to do things in a better way in electronics is possible and that companies that have much more money than them have absolutly no excuse not to follow the same path.
> Edit: Goddamn it HN, why are you all responding to the pros/cons of 3D printing? My complain is about media coverage

Because the appropriateness of rosy media coverage is dependent on the actual potential of 3D printing.
Cool, I'm working on Scheme in computer music and will keep this on my radar to look at how you handle GC. We have the same basic context, where running per frame (where frame is some number of samples) could work well.
Great to see they document how to do reproducible builds. I don't know docker well -- are docker images automatically reproducible and open-source as well? If not, do they have documentation on how to reproduce their docker image somewhere as well?
'Following the science' rhetoric led to delay to UK Covid-19 rules
I worked with both Python and Ruby daily for several years, both quite a few years ago and now just write the occasional scripts in those languages (small scripts, maintenance of older projects, patches for various projects when needed, etc.)

I much prefer Python for this. As an occasional Python/Ruby programmer I find it's just so much easier to work with. Ruby has a lot of features, which is part of its appeal, but that also means a lot of remember and ... a lot to forget. If you're not steeped in it, then that makes things quite a bit harder.

I programmed some Ruby a few weeks ago; it had been quite a while since I last did any Ruby, and ended up having to look up the syntax for blocks. This is really basic stuff, but I had written str.gsub!('pat', {|m| ... }), and the correct syntax is of course str.sub!('pat') { |m| ... }. Kinda silly I guess and a bit of a "oh, du'h" moment; I spent two years with Ruby as my day job, but that was also five years ago, and I think these kind of mistakes aren't that unusual if you're not programming Ruby too often.

And then there are caveats like using "return" where you should have used "next", and quite a few other things.

Don't get me wrong, I like Ruby, and there's also a bunch of things I don't like about Python. But I can definitely understand why people settled on Python. I think Matz once said "Ruby is 80% Perl and 20% Python"; I feel that with a slightly lower Perl-to-Python-ratio Ruby would have been better.

---

There may also have been implementation considerations by the way. I believe that historically at least, Ruby has been a lot slower than Python, although I think the differences today aren't very large. And a lot of these tools are written as native extensions, which Python seems to support a bit better.
Like with Euler, we generally credit the first one to do it after Plan9.
Wistron isn't "some supplier that almost exclusively supplies to Apple". They also manufacture electronics for Microsoft, Dell, Lenovo, Motorola. Originally, they were Acer's production arm. Lots of things about how workers in the supply chain are treated is very wrong, but if you accuse others of trolling, you'd better get your facts straight.
Nope, could be made with <strike> as well, but swapping element tags takes more characters than toggling a class. In the case of UmbrellaJS I made a .wrap() method, but since there is no .unwrap() again it takes more than toggling classes.
What are the major selling points of Allegro and LispWorks over Emacs with Slime/Sly with regard to the IDE point of view? (Asking so we can skip the graph database and GUI libraries; I'm particularly interested in the developer environment.)
Lecture Videos are available at the course webpage: https://iucompilercourse.github.io/IU-P423-P523-E313-E513-Fa...
The original Netflix recommendation challenge was floated back when Netflix was a "movie by mail" service where if you got a good or bad movie the situation would take days to play out. In that case the difference between 90% and 95% accurate is something the customer can feel, is good for the business, etc.

Back then Netflix was buying retail DVDs so they also had an unlimited catalog: they could start stocking a movie just by buying a few disks.

They negotiated with Hollywood for the rights to run a streaming service which was structured something like "Netflix pays Disney $0.80 a month per subscriber."

At this point the "Netflix optimization problem" is: "buy content that will keep our customers coming back for the minimum amount of money." Netflix withheld data about which movies customers watched from the studios because they didn't want studios to know what they thought the movies were worth.

Then Netflix started to make its own movies because, once the number of subscribers is large, it is cheaper to buy then to rent.

The new optimization problem is still "minimize costs" but now Netflix is involved with the production of movies from the very beginning and will produce movies based on what plays well (or they imagine plays well) with the Netflix audience.

Is it good?

I don't think so. I saw cable channels become fat but disconnected from the consumer because they had a business model where they got paid whether or not you watched. In the "GAME PASS" future you can play any Assassin's Creed game you want for $10 a month -- I'd rather decide which games I buy myself instead of have it be done by some insiders in a smoke-free room.
Lose weight, loose the hounds.
Seems to me that part of the whole ethos of Unix being "The Hole Hawg of Operating Systems" (See Neal Stephenson's "In the Beginning was the Command Line") was an almost actively cavalier disregard towards such issues, as if putting the ejector seat lever right next to the gearstick is an acceptably red-blooded thing to do. The best we can say is that attitudes have evolved somewhat since.
> No one can seriously believe that there exists an organisation that is completely free from tensions between members, sometimes people simply make mistakes, what counts is how the organisation react and the proportion

True, but if cases like this happens, then there should be an investigation.

> I could make names, but I don't want a shadow ban from HN, suffice to say that some of these people work at Google .

You are using a newly created (6 days old) account anyways.
Ah wow the :checked + * {text-decoration:line-through} is pretty smart! No need for JS in that case. Your reply inspired me for a new version:

https://twitter.com/FPresencia/status/1341037189409296384

https://jsfiddle.net/franciscop/6p9xwv7e/

<script>b=u("body").append(u("<input>").on("keyup",e=>{t=e.currentTarget;if(13==e.keyCode){b.append(`<p><label><input type="checkbox"> <span>`+t.value);t.value=''}})).append(u('<button>Clear').on('click',e=>u('p').remove()))</script><style>:checked+*{text-decoration:line-through}
The need for filming everything sounds like an immature cry for attention, like teenage social media nonsense. Every time I have received a ticket from a police officer they have already written all their personal administrative data. Every single time. Maybe other states don't require that, but I every out of state ticket I have received was exactly the same process.
The id that the court assigned to the case would help a lot.

She also complains that she's been mistreated for being a foreign woman, but based on my experience (I've lived in Berlin as non German) and her English (mine is not better) there is a strong propability that something got lost in translation and they simply misunderstood each other.
well, man is not designed to stay in a room, they are designed to f*ck and hunt.
It used to be, and when Edi Weitz first wrote it over a decade ago it was a very elegant example of the power of having a language that makes efficient code gen at runtime both possible and easy -- a single developer was able to outperform libraries with dozen of man years of investment over a beer-bet. But I'd be extremely suprised if that were still the case or if it were even within the same order of magnitude as the fastest regexp engines.

Also, despite the fact that scenarios that can leverage "jit-for-free" are both a best case scenario for lisps and not that rare in different fields (from firewall rules to stencil computations) to the best of my knowledge, even in this niche lisp plays absolutely no role in practice. To be clear, I don't think this due to any inherent shortcoming of lisp itself, indeed I suspect it's mostly due to brain-drain.
Pfizer-Biontech Covid-19 Vaccine cleared for use in EU
Learning languages which are reasonably redundant is much faster, because there's a lot less to learn - mostly syntax, and keywords.

So, yeah, although there's less gain, there's less cost, and you might come across patterns you can transfer.
As interesting as the 3D TV battleground?
No, not a complicated tech stack at all

Hardware:
- PurpleAir PA-II (wifi)
- FleetMon AIS (Ethernet)
APIs:
- Avaiation Edge API (Flights)
- MapQuest API (Traffic)
- forecast.io API (Weather)
- etaspot.net (Trains)
App:
- node/express/vuejs app, pretty much all happens in this https://github.com/kingsloi/community-airmonitor/blob/master...
I was under the impression Fairphones don't work in America?
as someone who has spoken English from ~2 years old, I have never heard that definition. Slavery has always been a person who was forever forced to do what their master told them to. Are interns/apprentices slaves? After all, they work for a day for even less than a day's worth of food.
The winners: The 2020 Russell Prize for best writing
Cold Weather Increases Fomite Spread of SARS-CoV-2
> Seen from a distance, Threema had every opportunity to become a major player in messaging but failed to do so.

This is valley thinking. It's fine to be profitable, serve your user base really well, and to not have massive growth and all the problems that come with it. It's just a different mindset.
I actually discovered Freddie when I lived here in 2011. Big fan! I fly TinyWhoop to Freddie's songs, https://www.youtube.com/watch?v=0xCpyVrdt3c
Wouldn't that mean going through the inventory system every time I want to throw more than a knife or two? That seems irrationally clunky. Like making someone use a menu for cut and paste.
Thus is the power of relationships, which often goes undervalued in quantitative analysis. For a one-off job, you could pick the most skilled person in whatever trade to do it for you, with unlimited budget $X, and still be unhappy with the results. Because there is no relationship.

Whereas, if you pick someone who your friend uses regularly, by comparison, your job is no longer work $X to the tradesman but the sum total of $X plus ALL the future business from your friend, who will leave if the tradesman does you wrong.
You want to be rich? You have to take money where it is...the pockets of poor people.
> running a user space program inside the kernel

Isn't it actually running a user program in kernel space?
Buying and Running Site with Infringing Content Is Not Copyright Infringement?
The point is: Sales team needs to _share_ with the team that is actually giving the salesperson a viable product. After all, we can “see what they [the developers] brought in”.
The Insidious Attacks on Scientific Truth - Richard Dawkins
> conquistadors

This is the type of ignorance I'm talking about.

The first people to colonize California were mestizo and mulato - generations after the conquistadores in Mexico.
My extended family moved to the Bay Area in the early to mid 80s (some a little earlier). No one ever thought it cheap, and what they said then about cost of living is not that different from what everyone says now.
SolarWinds Hack Victims: From Tech Companies to a Hospital and University
Show HN: NoteCalc
Even if we accept that, what I find the most unjust is that (at least in my country) a shareholder will pay less tax than a worker for the same money - the money from dividends doesn't count as a regular income.
Ideally Facebook should just allow users to buy a subscription. I think a lot of people, at least in the western world, wouldn't mind paying say $1-2 dollars a month maybe even more, if Facebook were honest about how they use your data, and how much money they make of of your data.
I mean, we're all happily paying $8.99 for Netflix and friends, is it really so outrageous that consumers would pay for a social network?
That's awesome! I'll join the Slack channel
> Also CDPR has a market cap of over $8bn so I'm not sure where you're getting your information from.

I get my information from total company assets instead of highly fluctuating market cap.

> CDPR saying they worked to reduce crunch means literally nothing.

Trying to make a commitment to less crunch is at least making an attempt at improving the situation, the same can't be said about bragging about how it's a "lifestyle" and then everybody being in awe about all the crunched in details, like pooping horses.

> Just because a company produces a product you like does not mean you have to turn a blind eye to horrible practices.

It's not about me liking the product or not, it's about the fact how crunch is conveniently overlooked when the final product is critically acclaimed and well received, which is apparently how this works when looking at plenty of other examples.

The only lesson corporate leadership takes from that is that crunch is okay as long as the final product justifies it, and because that's the default assumption for any product, as nobody aims to create a mediocre one, it will effectively change nothing about the underlying culture that's the actual root of the problem.

That's why I take issue with singling out CDPR as it's happening right now; It's a scapegoat distracting from an industry-wide problem. I'm willing to bet money that if CP2077 would have turned out like a GTAV or RDR2, then the public discourse around crunch would have gotten drowned out among all the positivity, just as it happened with those two, and plenty of other, games.
>During the recent 4-week lockdown it was already clear that something odd was going on in Kent; whilst case counts were dropping in the rest of the country, they continued to rise significantly there. Something was clearly different.

They said the same thing about overnight vote counts in Fulton County, GA... turns out it was nothing.
From an implementation perspective this has much more in common with Go than either Python or Node.

In Go, you simply write a blocking IO call, and the scheduler in the Go runtime pauses your current lightweight thread ("parks the go routine" in their terminology) until the IO operation has some results to read. While waiting, the runtime is free to run any other go routine(s) on any number of OS threads.

What is coming to Ruby is a similar system, but where a library can provide this scheduler functionality. So when a lightweight thread (a "Fiber" in Rubys terms) calls a blocking operation, the runtime is notified, and can manage the IO operation while running other fibers.

As another commenter mentioned, there was a similar thing named gevent implemented for Python some years ago, but it didn't become "the way" to do things. I feel there are three main reasons it didn't catch on:

1. A lot of Python programs had blocking IO being performed inside native extensions (e.g. bindings to C/C++ database drivers). If you depended on such a library, the benefits of gevent were severely limited because it's runtime couldn't intercept the IO operations.

2. It was never part of the stdlib, so there was not a huge amount of incentive for the aforementioned driver authors to support it explicitly.

3. There were not that many examples of successful implementation of this model at the time. Go was around but pre 1.0 and not nearly as popular as it is now. Lua was also around, but again, not extremely well known.

I expect that Ruby will also suffer a bit from #1, but hopefully, by providing this concept as part of the language and standard library, problem #2 will be mitigated. #3 is IMO a thing of the past, while I'm not a huge Go fan, it does serve as a compelling argument for an implementation of runtime-managed lightweight threads.

Edit: I should mention I'm in no way involved in this, just interested in what will come of it over the next few years.
Hot new thing?

Zsh: Initial release 1990, 30 years ago
Thanks for explaining more, appreciate it and hopefully others will find this as useful as I did.

> Performance suffers whenever any native API gets called from a JS loop, as exporting Java's objects into JS, and accessing them is very resource intensive. The only way around it was to move loops to Java side of the code.

One of the gotchas around nativescript (and react native) was that trying to do intensive calcuations was never supposed to happen on the main thread. Nativescript was first to add support for background workers[0] which alleviate this.

I do believe of course that you found CPU intensive tasks/looping to be slower on the JS side of things though.

> Flutter is not much better, though feels to be a bit more professionally done. It's too a memory hog, it's too a CPU hog, and it's still gets way more issues over a native app to warrant its use just for economic reasons.

This I'm somewhat surprised to hear, I thought it would have been way better on the memory side of things since Flutter is essentially a rebuild-the-world approach.

> RN also shares the same Java-JS interop issues as NS.

This is inline with what I expected -- the thing about RN when I tried it was that it just didn't have the ability to access native objects from JS as if they were JS objects. Maybe that's changed since I last tried it.

[0]: https://docs.nativescript.org/core-concepts/multithreading-m...
Do device drivers typically need to be Turing complete? I would have expect drivers for simple USB devices for example to be pretty simple state machines.
I look at Ruby and I think of Dart.

Not from language semantics perspective..but specialisation in a very narrow usecase and around DX.
But really unbeatable in that usecase.

all racehorses are one-trick really.
Replacing isn't necessary, but we need alternatives. And that means independent indexing. You can alawys use more than one.

There are only 9 companies (crawling & indexing) independently: Google, Bing, Yandex, Baidu, Sogou, Mojeek, Gigablast, Naver.kr, seznam.cz

as listed here, with other search partners (of Google and Microsoft)

https://twitter.com/SearchEngineMap/lists

Disclosure: I maintain that resource and work at Mojeek
Galène is not peer-to-peer: it's a traditional centralised server, where all media traffic goes through Galène. TURN is only used if the user's network blocks the UDP traffic between the client and Galène (TURN can use TCP, and can run on an unblocked port such as 443 or 1194).

Before Galène, I experimented with a pure peer-to-peer system, with end-to-end encryption. I found it to be too unreliable for group communication: with just 5 people in a group, you need to establish 10 peer-to-peer WebRTC flows, and the likelihood that all of them work well is essentially zero.
My light usage of it so far, Jitsi meet has proved to be an excellent experience.
Related question: When was the last time you got excited about technology?

I remember the first time I installed GNU/Linux in my first desktop PC. I was so worry about it because I did not want to broke anything. I even bought more RAM because my machine only had 128 Mb. It was not enough for Ubuntu. After installing it, everything was new for me. Directories are now called places, anything is a file, multiple desktops, compiz, etc. I was very impressed at that time.

Now, we have reached a point where it is difficult to be impressed not because technology is not impressive itself but because we are so used to it.
It sounds great, sadly I think Facebook can generate much more by showing you advertising.
No, it sounds like a good way to verify the officer knows what he's doing and isn't putting anyone in danger. After all, who can trust a random stranger with a gun who needs to pass very lax qualifications?

I'm really happy all your encounters have been flawless. So have mine. However recording is free, neither side has anything to lose, and has all the benefits in case of a lawsuit or formal complaint.
The "i" in "iPhone" is for ill-treatment.
How much exactly does facebook make from its users per month?