skysight-inc/HackerNews huggingface dataset:
Ah, the Rust fanboys who vote down comments of anyone who criticizes Rust. They are actively trolling forums and spoil Rust for the rest of us. (IMHO, similar behaviour played a big role in the relative lack of success of CommonLisp, which is another language that I really like.)

So I know both languages, have chosen Go instead of Rust for a larger programming project recently, and have 30+ years of programming experience, so I feel somewhat qualified to answer the question you ask---if you meant it seriously, which I doubt.

People use Go for its simplicity, good tooling, good backwards compatibility, fast and modern automatic garbage collection, extensive libraries, and fast compilation speed.

Yes, Rust is hard to learn, puts a constant high cognitive load on its users even once they have learned it, is relatively fast moving - meaning code you write now will likely not be idiomatic in a few years from now -, and has slow compilation speed. It has many other strengths, as you rightly point out, but most of them will not be a reason for someone who uses Go to switch to Rust. For example, most people who use Go do not need or want to quench the last performance out of their CPU and are less obsessed with zero-cost abstractions. Many C++ programmers, on the other hand, might appreciate these features of Rust.

Rust and Go are simply not languages that compete with each other. Go is a competitor to Python, VisualBasic/Xojo, and various server-side scripting languages like Ruby and PHP. Rust is a competitor to C and some uses of C++, and maybe to languages like Ada and Haskell in some safety-relevant domains that do not require a formal language specification.

The OP could have just as well suggested to use Ada instead of Go. It is possible to write Ada like Pascal, making it almost as easy to use as Go, but the suggestion still doesn't make much sense.
5G Technology: Delivering live radio and mobile internet access to rural areas
This is a good article, but is it not simply finding a more polite (and perhaps, for the sake of publishing, novel) way to say procrastination is caused by insufficient will?

"People procrastinate or avoid aversive tasks to improve their short-term mood at the cost of long-term goals."

This description is true, but is it not also true for virtually every case where you would typically use the term "willpower"?
Actually no European would say that, it would be (for example) "I was born in France and lived there, but also in Germany and Portugal".
A language package manager is system administrator's enemy and her or his nightmare.

Now you explain to me why and how that is the case.
A major thesis of the article is that even if something was successful outside of the core team, they would ignore it in favour of their own ideas. Go modules is the reference case.
Here is what the official Videolan download page looks like on Windows Chrome without adblocker: https://imgur.com/a/ZWZdtk5

The VLC download is started in the background, but the "Download Now" buttons are highly misleading. This time it's Avast rather than "VLC Torrent Streamer".

Videolan should be ashamed using dark patterns to trick people into installing adware.
I'd recommend the BBC Micro, since we're not talking about the 1980s and geographical limitations of the market, the BBC has a nice basic that includes a built-in assembler, has a text UI that is more pleasant on the eyes than most 8bits, has the sideways rom system to make it possible to add a debugger and other niceties, and has a simple easy-to-understand disk filing system.
Cryptocurrencies are special in that, almost from their very inception, they could be used to make money. There are at least four ways one can make money with them: those with access to cheap electricity and enough starting capital can literally print money out of thin air; they form unregulated exchanges to gamble on; they're very useful for scamming people; they're also useful for laundering money and buying illicit goods. These four things give cryptocurrencies a lot of interest and participants.
Fair enough. Apologies for reading too much into your words, and ascribing a meaning beyond what you had intended.
> You can totally get banned from Google's entire platform if you do something wrong on the Play store after e.g. being pressured to do so by your employer.

Devil's advocate: that possibility strengthens your position when your employer tries to pressure you to do something neither you nor Google find acceptable.
Jane Street's Thoughts from AAAI 2019
They can detain you indefinitely until you give up your password, so it doesn’t matter.

There are no laws at the border, even the constitution doesn’t apply for US citizens there.
Perhaps unrelated. Could biophotons be connected to this in some way?
A black bloc uncle old me once, that in political struggle you need a militant and a civil/political branch. With as little direct connection between the two as possible. One of his reasons was the one you pointed out. The other that the persons that participates in violent struggle, are a bad fit for dialogue and building something lasting up afterwards.
Ask HN: Large number of function arguments in Python
Hi all,

So I am working on a python application that can take its input as cli args and as a JSON string. The number and type of arguments is the same for both.

I have a function, lets call it _main that is coordinating with other modules that needs all these parameters as input. Currently I am passing ~15 arguments to _main. It looks nasty, and I believe there are better ways to accomplish this.

One way could be to create a request class having @property defined for all these parameters. I can create an object by using parameters from CLI or JSON as required and pass this object to _main.

The downside is that _main is called only at one place. Is it worth the effort to create a class that will be used only once? Or I am better off creating a dict and passing as kwargs this function.

Most but not all of these parameters are needed by other modules that are called by _main. So, the request object created cannot be passed as is to other modules.

What are the best practices around this - to pass large number of arguments to functions?

thanks for taking the time to read this!
> Saying Britain killed millions in India in WW2 is complete hyperbole.

Between two and three million people died in the Bengal Famine of 1943. The extent to which the British regime was responsible is still debated, but it would seem that the Churchill government refused to supply food aid (or at least only supplied a fraction of that requested) and refused the local administration permission to import food themselves.
Google has stored some passwords in plaintext since 2005
I curate a bunch of articles (about 10 every weekday) on https://discoverdev.io

A lot of articles are companies describing their exact issue, possible designs considered and final design adopted. Check out the tags "#software-architecture" (https://www.discoverdev.io/tags/software-architecture) or "#scaling" (https://www.discoverdev.io/tags/scaling) for articles that you're looking for.

I've been doing this for about two years now and perhaps curated about 5000 such blogposts!
Free and Open Source Vue JavaScript Template
According to this usage, C has generic functions because you can, e.g., index into an array of ints. The whole point of generics is that the language makes available some form of abstraction over types. Go does not have this feature. It has some built-in operators that can operate on multiple types. Most languages have this. The arithmetic operators in C, for example, can take operands of many different types. This is not "generics".

>Because the core Go team assumes and asserts users of Go should not and can not be trusted with anything more complex than a wooden cube with rounded edges large enough that it can't fit in their mouths.

This can't really be the right explanation given that generics are now being added to the language. In any case, this kind of mean-spirited speculation about people's motives is borderline trolling, IMO. The Go team have publicly stated their reasons for not (initially) putting generics in the language. Unless you have some inside info suggesting that they're lying, I'd refrain from saying this kind of thing.
We can't generalise to blanket statements like that, or the perfect company would never reinvest and would end up owning all it's shares. Not every company can reinvest and get the same benefits, or buy back it's shares and yield the same returns to investors. All taxes do is landscape the playing field a bit.
All speakers announced Code Elixir LDN 2019, check em out
Isn't arterial calcification still considered irreversible? Arterial obstruction due to cholesterol is known to be reversible with a change of diet, check the work of Dr. Esselstyn from the Cleveland cardiology clinic.

But in one of the interviews, I think in the documentary Forks over Knives (several years back) he mentioned that calcium deposits cannot be reversed.
It'll be that too, eventually. But not yet!
The simple and sad truth:

-Nobody gets fired for buying Oracle.
-It's easy .. explaining an investment in open source .. good luck
erikbern.com is the blog of a previous engineering manager of the ML team at Spotify who is now CTO of Better Mortgage, a tech startup in NYC.

His blog post regularly show up at the top of HN, and a good number of them are directly related to the thinking behind how he does his job.
I think the term is generally used to refer to a melting pot of cultures as opposed to a bunch of adjacent monocultures.

I'm not passing judgement on either.
Indeed. It's like a feature democracy where each library gets a vote on which features it finds most useful. Those that then get deeply embedded are clearly those that are most useful. Those features that aren't particularly used don't really get anywhere.
Toggl – Where did time go?
It seems like a very French thing to make the 'conquered' (or in this case, employed) part of oneself.

Antithetical to any other way of merely being the administrative authority over the employed.

Schneider Electric (again a French company) is doing this as well... is there a need for such cap raise? It seems like they're unloading risk onto their employees, from a cynical perspective.
There was also the Rosenstrasse protest, where a group of non-Jewish women managed to get their Jewish husbands released.

https://en.wikipedia.org/wiki/Rosenstrasse_protest
The thing I "envy" about PHP guys is that they aren't on proglang forums; they are somewhere happier making money and clients happy, and not giving a f* about the things our niche here does...
Depends on the purpose. I write mainly Python at home and at work, sometimes create small to medium sized Bash scripts, use PHP for my personal websites and most web projects, sometimes a few lines of Javascript (command line, I mean, not as part of html/css/js), sometimes some Java at work, LaTeX macros for documents... If speed is paramount (rarely) I'll also write C/C++ or maybe Go, but those are not my forte.

So it really depends on the purpose of the project, who else works on it, what it needs to integrate with, etc.

Thinking about what I use, C# didn't even come to mind. I only used it when required in school or when interning in companies that run Windows. I've written some C# on Linux at home but it's not much more than my experiments with Brainfuck were...
I never really liked the 500 series - I preferred the 1400 (I know, weirdo). The Intel MacBooks have had their moments (glass trackpads, SD card readers, quad core in the 2011 15"), but almost all of them had design defects of some kind:

* Original white and black MacBooks had sharp edges and cracking wrist rests

* 2nd Gen MBP had 8600GT chip death issues

* First Unibody MB/MBP had glossy screen not suitable for indoor lighting

* First Polycarbonate Unibody had chassis cracking and rubber base warping issues (but was otherwise an excellent machine, too bad they didn't resolve those issues and keep selling it...)

* 2011 15" will all eventually fail due to faulty GPUs

* 2012 Retina MBs had underpowered GPUs

* Retina MBPs had soldered RAM and proprietary SSDs (10.13's NVMe support for those older machines with a simple adaptor has made a complete mockery of anyone defending Apple's stupid proprietary pinout, too), glued batteries and display coating problems

In saying that, the original aluminium unibody was a spectacular design. It felt so much more premium than any other machine of the time it was absurd.

I personally think absolute peak Apple notebook was the 2012 MacBook Pro 15" with the Anti-Glare display. All the best things about the pre-retina Unibody design, but serviceable, with USB3, no known serious GPU or CPU flaws, and none of the retina issues such as staingate or glued battery.

Had they made a Haswell revision of that to get the better battery life I'm reasonably convinced it would still be a seriously popular machine today.
https://news.ycombinator.com/item?id=19815288
> Keep an eye on data breaches with Monitor

This is fairly neat; For example, I browsed to the Datacamp website and was notified of a breach in 2017. But that must hurt for the company.

Still, it strongly incentivizes keeping high security standards, because now, customers will know. I like it.
there was a proposal ~10years ago on that https://fon.com/
Steal Like a Dev
Alexis Ohanian speaks out against “always-on” work culture
Multitude of reasons:

* your documents cannot leave your company network,

* you need features not supported by gdocs,

* you need to work offline,

* you need 100% compatibility for produced files,

* (fill in your favorites)

Lack of MS Office (non-365) availability for Linux is quite a barrier to Linux adoption in more places.
But it started out as a Soundcloud project...
Richer type system, richer concurrency, richer tooling, greatly advanced and advancing runtime, interoperability with multiple languages on the JVM, a naming system that doesn't cause frustrating workarounds a la the Kubernetes ObjectMeta / TypeMeta / "v1alpha1", "v1beta2", "v1" nonsense ...

Go is the language that taught me to really appreciate writing things in Java.
You are thinking about personhood the wrong way. In the law, personhood means being able to own things, sue and be sued, pay taxes, enter contracts, and a number of other things.

Do you think that immigrants don't pay taxes?
Battery will last its longest if it's reasonably frequently used.

Ultimately if you want the longest battery longevity, keep it between 50% and 85% charged, and keep the machine cool.
I live in London, have visited the US and have friends that live there. Almost all of these are wrong or simply things I don't value. The only one I don't dispute is the likelihood of success in business. To be fair I'd rather take the healthcare (and slightly more sane political environment).

- Better TV. Who watches normal TV as opposed to Netflix?

- Much Better Food. Dispute this. US food standards are demonstrably lower than in the EU. You might be able to get bigger portions and a larger variety of junk food but so what.

- Higher paying jobs. In SF maybe, but the cost of living is correspondingly much higher.

- Bigger cars, bigger roads. Why do you need this if you can comfortably get places via modern public transport?

- Second Amendment. Unnecessary in a country where no one has guns

- First Amendment. We have comparable laws

- Lower Taxes (income and sales). I'd rather pay taxes to get healthcare free at point of service and a safety net for people who lose their jobs

- Ability to not talk to the Police and not have that used against you. We have comparable laws
> Do not apply this pattern with a loose hand.

Why especially this pattern ?

I would say you shouldn't apply any pattern with a loose hand...
> The last thing I personally want to see is Go being handed over to the community to be designed by committee.

There is a point about diversity to be made here. Different design models will each have their strengths and weaknesses, and the design spaces each opens up are not going to be fully explored if one model prevails. So I'm glad there's a language like golang with a coherent centrally-planned vision behind it in existence. It's also good to see more community-driven models get to do their thing. We'll see over time how each develops and what problems they best solve. It does seem to me to be a 'let 100 flowers bloom' type situation.

A bit of a bland centrist view perhaps, but with systems as complex as programming languages and their associated libraries, ecosystems and pragmatics, it's really hard to know what works. Best to experiment.
Why is it so common for some people to use "EU"/"Europe" when talking about a quirk about their country? Americans do it too, though the states are far less unique than countries.
It's not about learnability, compile times or anything like that - Go has a high-performance concurrent GC and Rust does not. There are whole domains, problems and the like that are basically unapproachable in Rust unless you're up for reimplementing half of a LISP system beforehand. (And people do - that's what the ECS pattern often boils down to!)
> Windows has better toolbar management, mouseovers & switching between apps. Also since Ubuntu moved back to Gnome, switching between Virtualbox VMs has been buggy (display driver issues no doubt)

I find both Mac and Windows' window managers much less pleasant than one of the many tiling window managers on Linux, since they automate away a ton of manual window management. That being said, I invested an unreasonable amount of time into configuring xmonad to behave in the way I want to, and the default window manager on, say, Ubuntu, is indeed pretty bad compared to Windows / Mac.

Amethyst, an xmonad-clone for Mac, works well enough, but still has bugs and is nowhere near as configurable as tiling WMs on Linux.
Mostly machine learning for distributed sensor networks (ie: smart meters). Deal with lots of time-series data, state space modelling, some recurrent neural nets (etc). Our shop has a 'golang only' thing going, which means that I end up having to reimplement algorithms in go sometimes from scratch.
VP of engineering but can't install a simple SSL cert! /s
semi-grey beard here, too. Disagree about Java - it is stagnating because it hasn't kept pace with language innovation.
Agreed, which is why I specifically didn't refer to the TimescaleDB TSL license as "OSS".
Turn off haptics and use tap to click. Once you go tap you'll never go back?
I'd say they have fifty+ years of implementing the same language over and over. During the fifty+ years they studiously avoided learning what anyone else had been doing, and it shows.
We're talking about auto suggestions along the lines of 'Yes, I have', 'no, I haven't', 'sounds good!', 'yum!'.

I'm not arguing against your principles necessarily, but deploying the argument where it's really not warranted is a form of crying wolf and turns people against it.

And as an aside, at my university the only time I ever saw any recruiting material for STEM, it was along the lines of 'Scholarships for women in STEM'.
I'm assuming the threat is considered to be someone with local physical access to one's computer. Once you've entered your master password then an "attacker" only has to click the burger menu, then "logins" then they can enter a string from a website login URL, maybe "porn" and it would show the website's full domain, the username used, when the site was first and most-recently visited, and how many visits were made over time -- if it keeps bookmarks with all the info -- if you were using privacy mode to hide your tracks then it's not working there.

If you use Private Mode all the time then can't you just set the browser to act as if it were in private mode but with more fine-settings choice, that way you could have had password saving all along.

So, I'm still not really seeing the benefit.

That said, presumably the password db could have salted-hashes in in-place of domains/URLs for "privacy mode passwords" and then they'd be very hard to casually discover; that might be closer to user expectations.
Chroot 40th anniversary, added to BSD in 1979
Because many of the rules are made on the EU level, not by the individual country.
Thx for the hint that looks really interesting!
Your are not alone in your experience. This causes people working in nursing homes to quit: the death is difficult to deal with, especially if you are working in a capacity to get to know folks.

It is difficult knowing folks as they die. Really difficult, and your aftereffects are quite normal.

If it keeps eating away at you, there is help available - from people trained to help people through this exact situation. Please consider getting help if it seems too much at any time.
Can Data Ward Off College Debt? New Strategy Focuses on Results
In my opinion the monotonic clock example cuts against this argument - originally the core team was extremely dismissive of the idea, even though it had been shown to cause pain for a lot of people: https://github.com/golang/go/issues/12914#issuecomment-15075...
Yes, you can pass USB devices through most hypervisors, including Virtualbox.

For example, I tried a smartcard reader inside VM (host: macOS, hypervisor Virtualbox, guest: Windows) and it worked.
Impossible to read/scroll on my Android phone
Check out dataclasses[1]. It's in the standard library of Python 3.7 and there's a backport for earlier versions.

https://docs.python.org/3/library/dataclasses.html
JS has Safari (JSC) as well.
TimescaleDB's TSL license is not "OSS", but it is open source.

TimescaleDB has a good blog post about why they went this route[0]

I do think that perhaps we need to stop being so snooty about OSS vs open source, and recognise that companies with open source products are allowed to make a profit while preventing the big cloud providers from scalping them.

[0] https://blog.timescale.com/how-we-are-building-an-open-sourc...
> It's funny that Facebook is much better at giving control to user than email. At least in Facebook, you can delete post. And once you send email, there is no way to retract it.

This is hitting straight into data ownership question. As a sender, I might want the ability to retract a message I sent. As a receiver, however, I do not want the sender to have that ability. Once a message reaches my inbox, I want to own it.

I'm strongly on the receiver side on this one. This is how it works in meatspace - once you send a message, you can't unsend it; it belongs to the transport layer and then to the receiver.
A useful mental exercise here: if the core team left Google, do you think they’d lose power?
> Java has made a U-turn in adding streams and related functional features on top of a language that used to be strongly for OOP (actually defining the meaning of OOP for a generation of developers.)

But isn't that just an inevitable outcome of aging? The only way to never age is dying young.

And practical use of Java had stopped being textbook OOP (which means using classes to model the world and putting your logic where the data is) long before the streams API etc came along. Actually the shift away from textbook OOP integration between logic and data already started when the beans pattern drowned us in getters and setters, which already happened when Java generics were still the Pizza language sitting as a draft on Odersky's desk. I even suspect that lack of generics was a confounding factor in that shift, because when you look at a pre-generics codebase (which I happened to do just yesterday) you will find that the brave men and women back then spent an enormous amount of boilerplate just for hiding untyped collections behind typed facades which is a form of using OOP features (meant for modeling the world) for program structure, which is basically what post-textbook-OOP Java is all about.