skysight-inc/HackerNews huggingface dataset:
I installed Fedora on my Macbook Pro 2015 a few weeks ago to try it out, mainly because of one killer app - the i3 window manager.

It's been a blast, albeit not without some frustrations.

The good

- WiFi worked out of the box

- i3 is awesome

- battery life seems fine

The bad/annoying

- took me a while to get a reliable way of setting sufficient Xrandr settings to allow me to extend my desktop onto a 2nd monitor.

- took me a while to find out the right commands to use to switch keyboard layouts when I plug in an external keyboard.

- I've seen suspend not work properly a few times when closing the laptop lid

- have to get used to new keyboard shortcuts for copy&paste and other things, this is more of a problem with switching from OSX -> Linux rather than a fault of Linux

- firefox performance is really really bad. like horribly slow switching tabs, and all the items on a website seem to load in really slowly, especially on resource hungry websites (e.g. YouTube). I've tried installing nightly, enabling webrender etc, but it's just been dogshit slow. In comparison, Chrome feels lightning fast so sadly, I've had to switch.

- hardware video decoding in web browsers doesn't seem to be supported? i've been reading around, apparently there's a patched version of chromium out there that supposedly supports it - but it doesn't like that's ever going to go mainstream. I was shocked loading a video and seeing my CPU fan maxing out!

I'd imagine the xrandr/keyboard issues are mostly because of the manual nature of i3wm, over say Gnome where it might be more fluid

The depressing

At work I have a 2019 MBP which won't support linux out of the box (well - I'd imagine it boots, but it seems like there are horrible audio/wifi/input issues and problems with the T2 chip) and I really want to use i3wm at work. I'm tempted to get a VM going as a substitute...
Eh, that's a really sad thing to optimise for, don't you think? Revealing of a broken incentive system. I'd prefer if HFT practices were banned.
Ethics are completely dead JauntyHatAngle and the atmosphere is no longer one of irreverent fun and learning but chilling effects, groupthink and rudderless management I could write a whole paragraph about it but 57 years ago this was viewed as a new frontier whereas now it's literally a war zone
It might be due to tax reasons if the remote workers are not contractors. This has been an issue for my UK headquartered employer
Being Remote
what were pre-unix file systems like? it sounds like storing bytes in a file in a directory which is a kind of file was innovative, but it's effectively all there is today!

i know old macs had various attributes - e.g. you could store the owner of an file so when you opened it, it would run in the program that generated it, not necessarily the default for files of this type. but is that the alternaitive he had in mind?
Woah!!! So that's why my Dell XPS13 couldn't use my Android phone's internet via bluetooth?! I thought I was doing something wrong (I got the internet to work using the wifi hotspot instead). I am on Ubuntu 20.01 so this problem seems to still be there.
I am still working on it; it will be a separate article.
I don't recommend throwing tear-gas canister either.
I wonder whether Bezos is feeling envious (in the good sense of the word). Wouldn't it be cool a new Space Race between SpaceX, Blue Origin, and Boeing?
Goddammerung, I cannot find my Lisp interprete/compiler source code for Z80. Especially from time before I constructed the external memory bank. There was nothing comparable anywhere until Turbo-Pascal came to be. It was originally Forth-like stack machine, but then I implemented another stack, the "execution stack".
"(" and and ")" symbols were push/pops on that stack and thus "(+ 1 2)" was directly executable in my Forth.
OTH in this machine the "compiling" was just replacing symbolic linked lists with a sequence of direct subroutine calls. https://timonoko.github.io/Nokolisp.htm
Setting this image as wallpaper could soft-brick your phone
It’s the feeling that Google will be able to use it to implement more Apple-like iron fist control over hardware vendors and tie-ins that makes it seem more permanent.
because GIMP sucks, maybe, and also because most people are required to interoperate with the rest of the profession. i am very disappointed that photoshop et al cannot be run under WINE :(
Pascal works [1], later cards indeed do not work well, but this is due to NVIDIA's hostility and not something the community can easily fix. Not a Linux problem, but an NVIDIA problem.

1 - https://www.phoronix.com/scan.php?page=article&item=nouveau-...
I think that’s sort of true. I just crossed 50. I‘ve been writing code in one flavor or another since I was a kid.

I’ll probably still be writing code when I’m 74, because I like to make the machines jump and shout. But as a working pro? Probably not.

Personally, I find it impressive that the OP has managed to stay relevant and active. Hard to do in any field and not just because of ageism.
High frequency traders do NOT want to be limited by the speed of light in a fiber - due to its refractive index (1.5 for ZBLAN according to Wikipedia) this is only 66% of the speed of a radio signal. Over 10km this amounts to an 11 microseconds difference - already significant for HFT.

This is why they have been leveling hills to carve a (mostly, with minimal amount of repeater towers) line of sight path between NYC and Chicago, gaining 3ms (1), or set up a line of sight laser link between NYSE and NASDAQ to eke out a handful of microseconds (2), or set up multiple links across the English channel to reduce latency between London, Amsterdam and Frankfurt (3).

1. https://www.nytimes.com/2014/04/14/opinion/krugman-three-exp...

2. https://www.extremetech.com/extreme/176551-new-laser-network...

3. https://sniperinmahwah.wordpress.com/2016/01/26/hft-in-the-b...
Commonly, no, but generally we did understand pandemics. Just watch Contagion (2011). If a Hollywood movie would get it that right, then a lot of people had to be pretty sure of the details. It’s no accident that the only changes from reality can be explained by “trying to make a better movie” and “trying to be allowed to air in China”.
this is about scaling issues :facepalm:
I looked at this the other day, and put in a feature request.

I have a personal copy of SQLYog ultimate, which for the most part I love. Of course I want something (open source) has a similar UX with quickly accessing rows, and being able to switch between query results and table row view. And being able to do import and exports with options. This would be to help people at work. The OSS and free packages out there are not very friendly IMHO.
He also uses “p” as an alias for “more” (or possibly “cat”).
Exactly, neither Rust's Vec nor Rust's String (which is actually a Vec in disguise) store data within the struct itself, it's always stored in an external allocation. This is intentional, to avoid extra branches on whether the data is inline or not. If you have a lot of small vectors, and using less memory is more important for your use case than avoiding the extra branches, there are alternatives like https://crates.io/crates/smallvec that you can use.
The "why do I not see more $40,000 nano drones in the protest videos" question would be fundamentally dumb one. It is charitable to assume that parent asked about affordable visible drones.
I have created a full course on Istio: https://gumroad.com/l/learnistio. You can get the free preview of it and it’s a good start for beginners.
Here's a little bit of the history:

http://lists.busybox.net/pipermail/busybox/2010-December/074...

When the operating system grew too big to fit on the first RK05 disk pack (their root filesystem) they let it leak into the second one, which is where all the user home directories lived (which is why the mount was called /usr). They replicated all the OS directories under there (/bin, /sbin, /lib, /tmp...) and wrote files to those new directories because their original disk was out of space. When they got a third disk, they mounted it on /home and relocated all the user directories to there so the OS could consume all the space on both disks and grow to THREE WHOLE MEGABYTES (ooooh!).
The man pages are the documentation for users?

I would say stay away from gnome if your fans are running all the time, it’s a terrible DE and you don’t need it. Just install eg fvwm or xfce (or lxde or whatever you like.)

>I only set up once and don't want to go through the trouble understanding how it works, e.g. wifi)

That’s going to cause issues no matter which OS you run. Just read the wpa_supplicant man page (or the appropriate documentation if your distro uses something else and you don’t want to change it.) You can skim for just the things you need and grab an example config, it’s not a hard tool to use and it only takes a couple minutes. After you do this you won’t be surprised when it breaks in a way you don’t understand.
Starship is going to be stainless steel, not sure how that will interact with magnetic fields.
When using it like this, the interpreter opens a new namespace where the variables are bound. The x is declared in the outer scope, so it can't find it. However, you can ask python to keep searching vor the name `x` in the closest outer scope, that is what the `nonlocal` statement is for:

def f():
x = 5
class Blub:
def incx(self):
nonlocal x
x += 1

def getx(self):
return x

return Blub()

j = f()
j.incx()
print(j.getx())

This will print 6, as expected.
Prometheus Node Exporter gets TLS support
Arguably, TAoCP has been his day job since the 60's, and it's full of code.
The UI design consisting exclusively of elegant but low contrast shades of blue certainly gives a similar vibe. But that might still be misleading, perhaps they deliberately keep the routine visualizations in a low key "style over substance" passenger entertainment mode so that they have plenty of visual headroom for when something actually important combs up?
“Understand yourself first, then make your life better”- What Covid-19 taught us
For commercial flight paths, talk to the FSDO.
GitHub Security Lab CTF 4: CodeQL and Chill – The Java Edition
A good video of it from 2016 https://youtu.be/x_4Y2-B-THo
> it seems to me to mean that Google's business reviews are unreliable information

Of course they are - any information at this scale is best-effort and should be treated as just a general indication and possibly erroneous.
Pandemic Opens Door to Ideas New and Old for a Better Economy
An even simpler recipe from me. Get an epoxy cased LED and twist its leads around a schottky, polarity reversed.

It will light up near wifi/bt sources.
> It is possible to run NVIDIA cards on Mac Pro (or with eGPU hardware).

only very select cards. I used to have a GTX 690 and could absolutely never get a hackintosh to get hardware acceleration through it.
The problem with this example is that boing has skin in the game. The UK govt does not

Boeing is risking its own money and if they fail they will go bankrupt.

The UK government has an unlimited backstop in the form of tax increases.

Maximum transparency for maximum corruption
Maybe Microsoft hires Tay[1] as one of their new AI journalists.

[1] https://en.wikipedia.org/wiki/Tay_(bot)
I do a little hobby work in Go. I looked at micro several times. For some reason I felt it is bit too heavy or unnecessary complexity. It does not feel fit in go ecosystem. But may be a lot of people are liking it. I could be wrong because I have not done much real work in Go.
Does anyone use it for production apps?
I think it is not fair that everyone earns the same regardless where they live. Cost of living must (and probably already is) included. If everyone would earn the same amount, consequence would be more people moving to areas with lower living cost . Why not even move into a 3th world country and live like a king with your first world salary?
Of course, one could argue, that Zuckerberg & co only want to make more money by decreasing salaries for their workforce. Instead of giving this money to shareholders, why not donate it? Especially now, when millions of people lost their jobs..
I dunno. Been running since 93 and it has come a long way.
TimescaleDB
What a great post. It’s inspiring to know it’s possible to stay in this industry so long. Having read many stories of programmers having to retire early or switch into management or different careers, it’s wonderful to hear from someone who has kept going. Have you had any physical health challenges along the way such as RSI/arthritis? Im asking because I’m only in my mid 30s and already having difficulty with arthritis in my fingers.
I would assume it will look similar to what GitLab is doing: https://about.gitlab.com/handbook/total-rewards/compensation...
Open standards guide us in a world of change
> Just find proper harware to run GNU/Linux.

I suspect this is indeed the root of the problem; people tend to just pick any hardware first and then try to run Linux on it, whereas in reality they should pick hardware to run Linux on.

They seem to get this when it comes to Mac, but not Linux for some reason.
I'm curious, what anecdote are you referring to?
Yeah i wasnt very clear. Drop zones keep those planes moving all day long. It could be done but the substantially increased amount of time spent ’refueling’ means you’d either need more planes or just accept fewer customers.
> That doesn't seem to make intuitive sense. A GC has the same problem.

> A garbage collector has to traverse the data structure in a similar way to determine whether it (and it's embedded keys and values) are part of the live set or not, and to invoke finalizers.

All garbage collectors start from live objects and only scan those. Then, whatever objects they have not scanned get collected. In copying collectors (like most generational ones), this means that garbage is never touched.

In the mark-and-sweep algorithms, the mark phase still never touches the unreachable objects. However, the sweep phase does need to return those objects to the free list, so it will have to walk them. It will still not do it the same way as malloc/free, as it can walk the heap in order and free unmarked objects as it encounters them, no need to follow pointers, so it may still have better cache performance.

Finalizers introduce extra difficulty, but still the behavior is fundamentally different. What usually happens is that objects which have finalizers are usually remembered in a special list which acts as a GC root itself. When they are only reachable from that list, they get marked so that the finalize will run (usually on a special Finalizer thread). When the Finalizer is finished, and assuming the object was not resurrected, they get removed from the Finalizer list, and now they are not reachable from anywhere at all, so the next GC will finally clean them up. Usually, there is also some API for user code to mark a Finalizable object as 'finalized', which essentially removed it from the Finalizer list early and allows it to be collected as normal, without going through the above process.

And yes, having a large number of finalizable objects in your memory is usually considered a very bad idea. Generally, they are only recommended as a fail-safe measure: you are supposed to do explicit cleaning, but as a fail-safe, to avoid your program crashing in production if a connection or file leak was missed, you also have the Finalizer to throw buckets of water out of your boat (but you should really notice that it is happening and plug that leak, rather then relying on the bucketeer).
The Mother of All Oversight Boards
In other operating systems, files had fixed-length records or were key-value stores.
>Why not even move into a 3th world country and live like a king with your first world salary?

And that's a bad thing why exactly?
What do you expect him to do?? This mindset is incredibly toxic. "If you are not personally fixing all the problems in the world you are weak". And what are you doing?? Complaining about it on HN?

There is a very reasonable argument that says this guy is using all the tools at his disposal. He has money, and he has influence. He is exercising both to make the world a better place. How can you possibly complain about that?
> 1) You won't find any scientific study or any evidence supporting it. It was just made up.

No, there's a written statement by somebody (a contemporary) who "thought" Einstein said it. He may have said it in person. He may have communicated it in an unpreserved publication. We will probably never know. But we can't disprove it. We just have a (weak) testimony from someone with better access to Einstein than we have today.

Honestly, these attempts to "fact-check" and label something as "true" or "false" based on our limited perspective today or even based on studies labeled "scientific" (while studies claiming the exact opposite frequently exist...) are obnoxious and often plain misleading. Reality is uncertain.

> The evidence against it is that the vast majority of our food doesn't require bees. Grains and staples like corn, wheat, rice, and soybean aren't pollinated by insects.

You're trying to disprove your quote, not the one originally attributed to Einstein by Ernest A. Fortin, which isn't about mankind. And how was the situation 100 years ago, without all the carefully bred industrial grain types?

Besides, who wants to try for some empiric evidence?
Strong/weak and dynamic/static. JS is dynamic, but variables will always have a type, which is memory safe - which makes types strong.
Am i right in thinking that the study shows that those who took action were happier, but not that they were actually better off? Does it attempt to account for a bias towards rationalising your actions?

In reality, the alternative to taking action is usually not simply taking no action, it is collecting more information and then deciding whether to take action. Does the study get at this at all?
You can compile such a list for any operating system in 2020.

Recently I evaluated three randomly selected HDMI capture devices, Ubuntu supported each of them out of the box, while Windows and MacOs struggled. With the printer in our office its the other way around. The printer at home is old, so its just Linux supported. And so on..
Wait wrapping a lib you didn’t write and that hasn’t been updated in 5 years is now called “I made a text extractor”?
Per the infamous Age of Empires multiplayer write-up (I think?), never use independently random code. Everything should be key-based pseudorandom.

Much easier to sync keys and play forward vs syncing at every Rand call.
Leverage them how? What are specific actions you think a bank can reasonably take to effect large scale social change?
How to Secure Your Future Career
I guess the next step is to dump analytics completely and save your dopamine for the things that matter. It’s one thing if you’re a large organisation making iterative changes to a service based on usage data from analytics, but what changes are you going to make to your blogging based on your analytics?
I don't think mismatch was grepping over the dictionary at all. That's too slow. The reason you sort the input text first is because it's reading the input text and the dictionary at the same time, making only a single pass through the dictionary...
Would love to hear some theories about this from anyone with expertise in such things.
"If you give the police unaccountable power to fight the criminals, the people who'd otherwise become criminals will join the police."
I meant time consuming in developer time, sorry.
When doing dev, there a be other problems with pyc files. On of them is deleting the original py file, but still being able to import the module because Python will import any pyc file it if exist.

So if performances allow you to do so, disabling them when you dev is not a bad idea, as long as you keep them enabled when you run CI.

IMO, when you dev, you should set PYTHONHASHSEED (random is predictible), PYTHONDEVMODE (verbose warnings + tooling + sys.flags.dev_mode=True) and PYTHONDONTWRITEBYTECODE (remove the need for cleaning them).

In CI and prod, you should make sure those are NOT set, and use PYTHONOPTIMIZE=2 (remove assert, __debug__ lines and docstring) if you trust your dependancies to be well written (which I would check by running tests in a pre-push hook).
I just found an interesting article about the topic, where GitLab explains why they do not pay everyone the same salary [1]

[1] https://about.gitlab.com/blog/2019/02/28/why-we-pay-local-ra...
> If everyone would earn the same amount, consequence would be more people moving to areas with lower living cost .

What's supposed to be the downside, exactly?
There’s also a generics implementation on a branch of the go repo.

I’m most curious how they perform on compilation speed assuming a big project makes decent use of generics. I doubt golang would merge anything that causes significant slowdown. And I don’t blame them, the only reason I don’t dread TypeScript dev given its slow compile times is you can typecheck async and strip the typing information for the hot reload.
To add another story... a previous company I worked at had an HQ of about 700 people in Chicago with satellite offices of 20ish people in a number of locations, one of which I worked at. After a couple years it was extremely obvious that the satellite offices were not only left out of important discussions and considerations from HQ, but were also treated very poorly in comparison when it came to bonuses and promotions. This despite many of the satellites being more percentage-profitable with higher growth than HQ. It led to a toxic environment and a personal lesson to be wary of working away from an HQ.
Try and run an app relying on Qt4 on the most recent Ubuntu. It's a total PITA. You'd need to compile Qt4 yourself.

(Not joking.)
Yep, still, this happens once, twice, thrice a week, if we multiply these for (say) x1000 (to take into account those that do not land on HN), that is 3,000 cases (most of them extremely simple to solve, actually no-brainers) per week.

Assuming that these kind of issues can be solved in next-to-no-time by any employee (i.e. there is no need to have top notch programmers and engineers to solve them) and that any employee can solve 20 (probably many more) of these little problems per day, all that would be needed is 30 people + maybe a coordinator.
30x60,000 US$/year + 1x150,000 + 50,000 other expenses = 2,000,000 US$/year, a lot of money but you need to put it into perspective.

So it revolves around - as always - greed Google/Alphabet had a net income of $6.8 billion in 1st quarter 2020:

https://venturebeat.com/2020/04/28/alphabet-earnings-q1-2020...

So, with as little as 2/6800=0.03% of their net income they could solve these little issues and have not this public bad naming, so this "we won't fix it" attitude cannot but be a voluntary choice.
I am wondering if a similar framework exists for Node.js or Deno?

I am really interested in Go but I have a lot of learning to do before I am confident to write solutions with it.
epic fake: Elon Musk Performs a USSR Space Song 'Zemlya V Illuminatore'
That's because the National Guard isn't law enforcement.
> No, a program that does pointer chasing and has to deallocate many small allocations is badly designed. If you are going to do that, using a GC language would be much better.

It is debatable whether using it is good or bad design, but at least the C++ std lib does offer a data structure which requires exactly this kind of deallocation: std::list and std::forward_list. And, given the cache characteristics of array VS linked list implementations, I would guess that most uses of std::list occur for huge lists that get written to often, as that seems to be the only case where the big-O advantage of list inster/delete would actually materialize into any performance benefit over a std::vector.