skysight-inc/HackerNews huggingface dataset:
Impressive, I'm looking forward to seeing more of this project. Did you draw inspiration from Talon? There are a lot of similarities when it comes to the voice commands.
I use Swift.

Swift enums are really nice[0].

[0] https://littlegreenviper.com/miscellany/swiftwater/enums-wit...
You know what's great? You are already free to do that without imposing dystopian circumstances on other people.
How(is(it(different(from(C-style(function(calls)))))))?
DOjS is a JavaScript programming environment for systems running MS-DOS
I'd love something with more workflow centred around pruning and reorganizing notes. Often I'm just dumping lots of info into notes which end up not being so useful in the long-run since the signal-noise ratio is too low.
> mass exodus

I've been considering it since their apt and motd spam, and their holding back of updates (paid or otherwise). I won't make any definitive changes until the next LTS gets released though.
I find geoserver to be a bit of a headache to run, and have been moving more towards client side rendering using map ox style tools.
Never use a URL shortening service – even if you own it
Sure, in a lot of languages this is possible, but usually much slower, even slower than named functions. Can the c++ compiler in-line the lambda and remove the function call completely?

Still the syntax is a bit confusing. In ML languages (f# and also rust are somehow descendants of ML) you can just use if .. else if .. else expressions. They work like ternaries! But easier readable. Nested ternaries are useful, but get really hard to read very fast. (x = condition1 ? A : condition2 ? B : C;)
I hope he can offload twitter to someone that cares about it.
I never agreed with this. Who defines what is considered "weird"? Should all projects declare up-front that it only is designed to work on:
- x86_64 and aarch64
- linux, darwin and windows
- glibc (no musl)
- binutils x.xx
- ...

... where do you stop before you're defining an exact linux distribution?

If it weren't for people building and using packages for architectures that are "unsupported", I should point out that there would be no good userspace support for ARM or aarch64. These too were once "weird architectures" that only have good support now because of people building for (and using) these architectures without permission, then shaking all the bugs out. This is currently still happening for risc-v.

I have to contrast this attitude to CPython, who, while I'm sure they never originally said that their code was designed to run on s390 (risc-v, pick your architecture..), would not go ahead with a change that froze out these users.

I also don't think the "we're just a poor bunch of small-time package maintainers whose package accidentally became popular" angle quite works, because they call themselves the "Python Cryptographic Authority" and use the prominent package name `cryptography`, which certainly appears to imply some sort of official status. I wouldn't blame people for inferring that its support policies were somewhat aligned with the python foundation's.
Model airplane servos aren't "way slower" than brushless motors (with their propellers). Here's a higher-end servo that moves 60° in 68ms:

https://www.horizonhobby.com/product/a7090-brushless-low-pro...

I doubt a motor-prop pair could significantly change its speed in 68ms.
Webring History
Unattended-upgrades is one of the reasons I used to install Ubuntu as a default server OS. Combining that and an automated reboot is practically all you need to keep your server secure enough in most cases.

Ubuntu runs boost 1.74 just like Debian. Upgrading to a new version is likely to break stuff and neither Ubuntu not Debian are rolling release distros, so it wouldn't make sense for them to update already. The upcoming 23.04 not containing the newer Boost version makes less sense, unless there are compatibility problems that can't be fixed before release.

Either way, Debian is Ubuntu without all the Ubuntu. If Ubuntu works for you now, Debian will probably work for you with minimal changes to your workflow. In many cases it packages more recent versions of software because it's "LTS" cycles are faster than Ubuntu's.

If you want rolling release updates completely under your control, consider Arch or one of its derivatives (Endeavour/Manjaro/etc.) instead. All three of them come with the warning that a standard system update can make your OS unbootable if you don't read the change logs, but that's just a consequence of always using the latest and greatest.
Rent is solely a function of supply and demand. They're focusing on the demand side, by looking to limit Airbnbs and golden visa immigration, when they should be looking at the supply side, and how permitting delays and zoning restrictions prevent housing construction.
A lot of the problem is that GCC hasn't supported Rust, and LLVM doesn't support many platforms. Since this article was written (2021), there's been work to implement Rust fully in GCC, as well as ways to call from LLVM the GCC backend (which supports far more architectures). So there's a reasonable expectation that some of this problem will be fixed in the long-term.

IBM mainframes write most paychecks, and companies do pay some OSS developers to support some of the architectures the author doesn't like. Making it impossible is different.
I'm in the same boat.

26 years of Linux, been running Ubuntu for at least a decade.

Ubuntu server on laptops, because it gives me nice things.

Debian on servers, because it's minimal and conservative.
100K visits is a reasonably large amount. ELF OpenGo beat professional players 20:0 with 80K visits per move[0]. The AlphaGo version that beat Ke Jie likely did 200K visits per move, since the paper indicated that their 1600 simulations per move during training corresponds to 0.4s of think time (with 4 TPUs).

On a good consumer GPU (RTX 3060), I get 1.6K visits per second, so 100K takes about a minute. That makes a game last three to five hours typically.

But the paper emphasizes that even with 10M visits per move (>1h per move), KataGo loses 72% of games against this exploit[1].

[0]: https://arxiv.org/pdf/1902.04522.pdf

[1]: https://goattack.far.ai/pdfs/go_attack_paper.pdf#figure.capt...
I don't have any of those problems on my Dell XPS laptop. Installed it in October-ish.
So you are actually proposing to raise taxes. The problems is that everyone hate that, and will avoid paying taxes and/or vote for the opposition party.
Interesting, thanks. At the end (~6:50) there are a few seconds about the aerodynamics of the 'wing', which had been my first question.
JavaScript AST manipulation with Babel: reduce nestedness, unflatten the CFG
Pretty much the same story for me, even down to CircleMUD :). I created a widely used MCCP (zlib compression for telnet streams) patch for it and also added lua scripting support. I was better at C programming than most of my university professors after spending countless hours coding MUDs! And it grew my love for programming. Of course many hours wasted playing them too.
ROCm is doing excellently at pursuing the opportunity AMD is interested in. It's running on seriously fast supercomputers doing useful stuff for customers. I think it's also running production machine learning workloads though I don't pay much attention to that.

AMDGPU in general is doing brilliantly in games consoles and, as far as I can tell from the outside, roughly holding its own in PC gaming.

ROCm as a Linux first, open source lets-do-maths-on-GPUs is not being pursued to the same extent. That's evident in the supported hardware list (which is essentially the cards in supercomputers) and that the ROCm stack that comes in binary form hasn't been compiled for various gaming cards. Arch and I think Debian have packaging efforts in place for it, and with determination it's possible to assemble working toolchains from source code.

It's not easy to build a working system out of exclusively open source code and amdgpu gaming hardware but it can be done. The challenge is that the linux kernel, ROCm libraries and LLVM toolchain all need to broadly agree on ABI at a given point in time, and that interface changes more often than one would like, and not simultaneously across the projects. That's the sort of thing which is easy to manage on HPC and a mess on miscellaneous user systems, and it's expensive to fix properly which brings us back to which opportunities are of highest commercial value.

The positive side to this is that the foundational layers - the driver in the linux kernel and the llvm toolchain - are both developed primarily upstream. Building either from source is therefore likely to give you binaries that work. If they don't work, you can raise bugs against those projects directly. So it's quite DIY but at least you've got the pieces to work from. When cuda falls over, you've got no hope.
I'm not arguing that packaging shouldn't be done but that it should be done, and is in fact commonly done by upstream developers. What things like docker, snap and flatpak allow is packaging things up in a distribution independent way. Which means it can be done by the developers of the software directly. Of course the landscape is a bit fragmented and you could also see this as yet another package variety to support and there is the usual bit of tribalism around which to use and not to use. But overall, it means a lot of software is now available that you would in the past have had to install via distribution specific packages.
Exactly. Here is an overview of switch expressions for c#, for many cases you can replace if/else if/else with those. The pattern matching is very powerful too:

https://learn.microsoft.com/en-us/dotnet/csharp/language-ref...
Movable motors would greatly increase the complexity and weight.
I haven't seen that played out. When someone looks for open calendar availability, all they're looking for is an open slot for all attendees. Not 10 minutes after 1 or some of the attendees have finished a prior meeting. So you very well could have 1 meeting end at 10am and another start at 10am.
Twitter is making text-based two-factor authentication a paid feature
I went there, saw the Lisp syntax, and noped back out.
Corollary: since the Peter Principle and the Dilbert Principle ensure that most managers will in fact be shitty at what they do/manage, as a general rule, most managers can best serve their team and employer by routinely ditching work for the pub.
That's true in general, but that is not what seems to be the case here, and the full article on precursorism linked by poiuyt098 suggests that correct usage would be confined to such cases.
The ambiguous uninstallable meanings would be:

* cannot be installed

* can be uninstalled

The Wikipedia link you posted agrees with that interpretation.

I think “can’t be uninstalled” would be “non-uninstallable”.
Alright, case study: I want to write a function 'F', that needs to initialise some state by calling 'I' the first time 'F' is called. 'I' itself may call 'F' however; and this needs to be handled specially in 'F' on the second call so that 'I' doesn't get called a second time. Until the first invocation of 'I' has returned (i.e., state has been initialised), no one else but the thread of the first call to 'F' should be allowed to call 'F'. Only the first call to 'F' must call 'I', not any other call. How do I solve this without using recursive mutex?

This may sound like some nightmare architecture, but I ended up in this situation when writing a simple thread-safe malloc override using LD_PRELOAD.
Don’t you see that the whole aim of Newspeak is to narrow the range of thought? In the end we shall make thoughtcrime literally impossible, because there will be no words in which to express it.

– George Orwell
I think on macOS programs are able to store data "inside" themselves, because .app files are just folders. They usually shouldn't put stuff in Library.
I guess it might be my lack of experience, but why are rewrites bad ?

It's a prototype because when you start a project :

- you don't understand what the client wants

- the client themselves don't really understand what they need (and sometimes, not even what they want, which is magnified as soon as you have to deal with multiple people)

- you might not know how to achieve that

- you might have an idea how to achieve that, but not have practical experience in it

- reality (including funding limitations) restricts what solutions can be implemented

- the usual code entropy...

Given all of the above, why would you NOT do a bottom up rewrite at least once ?!

P.S.: And in the cases the performance critical bits can be isolated, Python can outsource those to performant languages like FORTRAN or C.

I am guessing the answer usually is : the funding doesn't come directly from the end user, and so the incentives are not aligned for a successful project - which also explains why software projects have such poor success rates (~10%) ?
That also leaks how many bytes of data are being processed. This sometimes matters.

When checking for a password match you have to check all characters in the.string otherwise you leak where the mismatch was. Even in a properly salted and hashed scheme that makes breaking the password easier.
"Amazon" is not what most would guess, but indeed it tends to suck the oxygen out of local Tech economies (until it starts to slowly bid down salaries).

Real change causes chaos in product sectors, which is another reason most large firms haven't produced a real "winner" in decades. Why bother when people can still make money from garbage products, in fact I would conservatively estimate it is currently 90% of the Tech sector. =)

https://www.youtube.com/watch?v=q225u-qGpas
The "mass market", such as it is, does not care about this. So, no.
Wow, I didn't know of this. Incredible along with the other two replies shared. Thanks!
Good point that a vertical wing is hard to see from below, but quad copters don't have wings, and so don't have that problem (the rest of the body has width, and is visible, but that's mostly the same with a tailsitter).
It seems you don’t fully understand parent comment and the problem itself. Capturing signals from you eye nerve doesn’t tell anything about your subjective experience of seeing an apple. The only way to understand that you’re seeing an apple from this signal is to train a model on your responses. This is how AI works. It’s a statistical imitation.

The only way for your statement to be true is if you’d be an imitation yourself, not capable of experiencing directly. Which is actually possible, see “pholosophical zombie” concept.

I’m joking of course about you being an imitation. Or do I? :)
Note that one is a two minute planned maintenance period.
Current civ6. Harder modes just give massive starter advantages and statistical bonuses.

3 starter cities compared to your 1. That can be brutal to overcome. Top players like potato mcwhisky basically have to know every little thing possible to win.
Yes, I said it was a valid point but you're overestimating it's value. The magnitude of the event matters too in judging it's response, and the Czech story is nothing by comparison.

It's getting kind of tiring seeing you all over every thread in here smearing Hersh as a discredited wacko. I personally don't buy it, much less from someone who seems so invested in spreading it. I don't know what your motivation is, but please refrain from doing that in this comment chain, it's just irrelevant, thanks.
I think the group you're talking about makes up roughly 70% of all white-collar workers.
They’re often called “hash sets” or “hash maps” in other languages - they are called this for a reason, and certainly not because they could be implemented as a list.

std::map is not a good example anyway, you want to consider std::unordered_map for a more appropriate comparison. C++ is weird that way. (What C++ calls a map is not what most languages call a map. std::map doesn’t even satisfy O(1). You’d be surprised how many working C++ developers don’t even realize the unnecessary performance cost they take when they decide to use std::map, because it’s not a proper hash map. )

But this thread is not about the finer differences in implementation of maps but rather whether or not they are basically just lists. They are not.
> and if you like Strunk & White, then we disagree on at least two books

I'd be happy to shred Clean Code, but keep your hands off my Strunk and White!
Micromanagement only means either one of two things: a) You've not hired competent and responsible enough people to follow the high level directions and they need handholding. b) You've not hired confident and articulate enough people that they can trust others to be able to execute their vision.

Which usually boils down to hiring processes which are generally shallow and mediocre in our industry no matter how much pride we take in them.

There's rarely any other reason.
I’d suggest playing Old World if you want a challenging tactical opponent. It’s one unit per tile like Civ 5 onward.
> The thing you can't emulate is the phosphorus coating. It simply looks different because light isn't coming from a backlight, but the front display is actually shining.

I did said OLED not LCD precisely because of that
Isn't this (1) the most trivial programming advice ever (give names to things), and (2) not equivalent because of short circuiting?
200-year old heat pump technology is back
> NVIDIA itself, since they have sent a bunch of people regularly to the ISO Fortran and ISO C++ standard committees to extend these languages to allow portable code to run on GPUs without changes.

Could you probide more details? I could only find C++ AMP by Microsoft

> Claiming that you are entitled to NVIDIA implementing them all, is... well... just that... pure entitlement.

It is? What happened to 'Customer is always right?'
>I guess anybody interested in a minimal Ubuntu install would be better off installing Debian instead.

Do debian ships with a microsoft signed bootloader ? Is that easy to install on Debian ?
Same, had the two most productive years of my working life, worked my ass off, build them a system that now makes my salary 20-30 times. Now I am forced to come back in the office (and man did they fail that communication), don't see any real appreciation for the work I did, and I am like 20% as productive as prior.

Funny thing: I am still meeting expectations.
Yes, but the problem persists since a truly competent AI will have good guesses about where and when to strike into your hidden territory based on what’s revealed to it, using the same advances that give computational room to respect fog of war.
Storm in a teacup? It's not like this is the most wasteful package on the system, so I don't see where the drama is. If you're building a minimal image based on Ubuntu, just go ahead and apply the workaround, or remove the files. If you're rebuilding the whole distro, drop the package and fix the deps to your liking.
Haskell case expressions are nice. It seems like you can define which input values a function can process - and you can get a log of if/else logic removed.
That's wrong, of course they should put stuff in the ~/Library if necessary. That's why if you update an app it just replaces the whole .app directory, and also if you uninstall something and then install it again all your settings will still be there.
mp3 on a stock C64 was showcased by Mahoney in 2010:

https://csdb.dk/release/?id=87985

https://youtu.be/0mF9kXZAjsI

tbf, it is ”mp3” but still really impressive.
The Civ 4 game designer recently created Old World, which is great; it has that same sense of intention, fun, and polish. Definitely recommend it.
So 75% of the time you're more productive, and in the other 25% of the time you're less productive? You said you don't have hard data as to why, but can you provide some more of the data that shows the productivity loss in the first place? It sounds to me like your net productivity could be break-even, or even higher given the very vague numbers you provided.

It's also likely that if the productivity losses occur only in this 25% of the time that you're not "heads-down" as you say, then they could be explained by bad company culture/process which could be worked on, for an easy productivity win across all teams at the company.

If you could provide this data it would be very helpful, as it would be the first hard data that I have ever seen showing any kind of productivity loss from being remote.
That would be Hawaii 5.0 https://youtu.be/q0fShLePUhI
I'm pretty sure that the "facility" is a gymnasium with cloth on the walls and floor to protect them. And, the hanging gates are rigid pink insulating foam sheets, probably made and hung custom for this project.
There are libraries of things.
https://en.wikipedia.org/wiki/Library_of_Things
> Secondly if AMD can't allocate the development budget, they should open it up to the smart people in the community, give them all the hardware documentation required to build out support.

The Linux driver is open source and a rather comprehensive description of how the hardware is believed to work. I'd like source code for the firmware but the HSA programming model is reasonably straightforward and does appear to be implemented by the firmware.

The compiler stack is LLVM and should work out of the box.

As a minor existence proof, I'm one of the people responsible for having openmp on amdgpu work, and I haven't read any internal documentation whatsoever. Openmp has bugs but also has some happy users. The public ISA pdfs have been sufficient so far.
Life is often to a large part about doing sth you don't want at all but you simply have to do or face consequences which are harsher than those somethings. Or surprisingly not that bad at all and you come to realize your model of life was lacking. Either way - no technique designed for becoming more disciplined will help you distinguish between what is worth doing or not. I put all my eggs into the meditation basket. Meditation makes me less anxious, my mind clearer and more focused. All those qualities help me understand better what I want and need and then act upon it even if doing so is uncomfortable.
Lisp especially is built upon linked lists, which have different costs for (more or less) primitive operations (add to the front, get the front item, get a rest list, get a random element, add to the end, ...) compare to a primitive vector. There are also other features not easily replicated by vectors.

CL-USER 40 > (rest '(1 2 3))
(2 3)

Above REST operation does not allocate any memory.

CL-USER 41 > (subseq '#(1 2 3) 1)
#(2 3)

Above SUBSEQ returns a new vector. Alternatively it would need a more clever implementation underneath.

OTOH getting a random element has a different complexity in a linked list vs. a vector.
Show HN: Flasho- Open source customer notifications for developers
Hi HN, excited to introduce our open source tool- Flasho. With Flasho, you can set up transactional notifications in minutes, with little to no code, using PostgreSQL triggers.

Flasho can be self-hosted (docker/build from source). We support SMS/Email currently. We'll be adding push/in-app soon. Try it out and let us know what you think. Looking forward to your feedback.
Eh, I think it's a stretch to say that any possible dependency on little-endian can be rounded down to "poor design". If you're operating with a format or protocol that's unconditionally little-endian, then it takes strictly less work to operate on the data structures in place, or on direct bitwise copies of the data structures, rather than conditionally transforming the values to native-endian, operating on them, and conditionally transforming them back to little-endian. You can argue that everyone's code ought to take the longer route due to the existence of big-endian systems, but that's what this blog post is arguing against.
Yes - and what I found that successful founders are persistent: they pivot, experiment, and learn.

As they say: overnight success after 30 years (it often takes years of hard work, trying, and dedication to achieve seemingly "overnight" success).