skysight-inc/HackerNews huggingface dataset:
> How does data-centric work? How is it different from OOP?

Rust doens't have objects. You have structs, which are purely data, and functions, which are purely behavior. OOP puts the two together. So in Rust, you don't tend to design things by saying "what are the objects I need?" but rather "what is the data I am manipulating and how do I manipulate it?"

> Also, what opinion rust devs have over golang?

I am not 100% sure what you're asking here, could you maybe re-phrase? Are you asking why Rust is better than Go?
You can downvote and flag the post, but the title of the submission is the same as the title of the article, so I see no problem. Unless of course the article is pure clickbait.
> You're a victim of highly biased reporting/information.

I don't think this report on Facebook's role in the Rohingya massacres should be dismissed as biased reporting:

https://www.bbc.co.uk/news/blogs-trending-45449938

"But there was also a much more fundamental issue - the lack of Burmese-speaking content monitors. According to the Reuters report, the company had just one such employee in 2014, a number that had increased to four the following year."

Facebook can work great for connecting friends, family and community groups but it's real world impact can be devastating when it strays into 'news' and politics. Across social media personalised feeds reinforce echo-chambers and attention metrics push users towards provocative content.
That's some fevered imagination.
> No dynamic libraries

While I understand that some people prefer this, I prefer static linking to dynamic linking. So much in fact that I refuse to use environments that only do dynamic linking in any of my projects.

Yes, I have to make a few concessions to that because of the idiocy of glibc, but other than that.
It's like the Sapir-Whorf hypothesis. The strong version is nonesense, but the weak version has some evidence. A tool cannot make you a good programmer, but it can help you be a good programmer.
Black Friday Hosting Deals Cyber Monday Hosting Deals UPTO 99% OFF
The biggest #hostingdiscount of the year is Now Live, Get Up to 99% Off #Hosting Offers and Up to 97% Discount on #Domains with the #CyberMonday and #BlackFriday Hosting #Deals for 2018.
https://googiehost.com/blog/upcoming-hosting-deals/
#blackfridaydeals | #blackfridaysale | #cybermonday | #webhostingoffer
As an Italian expat I can assure you it's not because people want to do that, but more due to the economical conjecture. Sure, there might be the odd one that is just "lazy", but p.much anyone you speak to <35 that hasn't left home yet will tell you that moving away from parental house is very high up in their priority, but they just can't afford that.
You could try swapping the ssd with a new one with a fresh install of windows or even try dual booting a fresh install of windows to see if it's a software issue after all.
It's important to understand the difference between data races and race conditions. The former are a subset of the latter. Race conditions in general can happen even in single-threaded code. (Although admittedly Rust ownership semantics prevent many of the latter as well; for instance, modifying a collection while iterating over it is impossible, cf. Java `ConcurrentModificationException` which itself is thrown only on a best-effort basis.)
Facebook Admits to Targeting Billionaire George Soros in PR Attack
It's Robert Langlands[1], for anybody who doesn't want to give in to the clickbait title

1: https://en.wikipedia.org/wiki/Robert_Langlands
Would you like to download your script wrapped in a .deb post-install/pre-install section? Would that make you feel superior?
I wonder to what extent the encrypted memory enclaves in modern CPUs can mitigate these kinds of attacks.

If the data stored in the physical memory has been encrypted using a randomly generated secret key by the memory controller on the CPU, it should be impossible to generate an exact target data pattern in the victim even when the aggressor and victim are in the same enclave.

That in itself isn't sufficient to guard against all attacks, because the memory enclaves don't provide data integrity, only encryption. So if all you're trying to do is to change a victim's boolean that controls whether you have e.g. root access, then changing that boolean from false (0) to true (any non-zero value) is going to succeed with high probability despite the encryption.

Still, maybe there's an angle here that can help put an end to Rowhammer once and for all in a few hardware generations?
You're right, I qualified it with "classic JVM threads", but a less ancient example would be better; it's just not immediately clear which green thread implementations are also relatively heavyweight like JVM green threads used to be.
It is also littered with stunning successes.
Pricing mistakes happen every day on ecommerce sites, the "bargains" websites are full of them.

Amazon really could do better with not allowing the fictitious discounts though. Listing 80-90% off RRP for an item which was never sold at that price is very common on all the daily deals, (and is illegal/unlawful in the UK/Europe from memory), along with all the drop-shipped trash from China (which you can usually get from Aliexpress/Gearbest/etc at a fraction of the price anyway) makes me largely ignore them and Black Friday specials anyway.
I do wish there were more modal, terminal-based text editors that weren't so similar to Vim.

Kakoune is Vim-like, and now this.
Second level doesn't work.
Created a branch with git checkout -b bugFix
level does not complete
then, redoing it in two steps as suggested does not complete the level so the player is stuck

fyi
That looks nice, but Python is an odd choice for studying synchronization primitives considering it has the GIL.
https://youtu.be/TVHcdgrqbHE

They are supposedly doing it with Linux right now.
Oh nice, good to know.

> Are you asking why Rust is better than Go?

No, just the opinion in general, why rust over go? I know go is more oriented to distributed systems, but it seems like rust eventually will be used for that as well. And I also see golang being used to build just anything, like gopass for example.
This is a cool analysis featuring an interesting metric (degree of compressibility) for measuring repetitiveness in song lyrics.
Great graphics explaining the algorithm too!

Spoiler: Lyrics do seem to get more repetitive.
There's a great site with more details about many of these at https://ezitis.myzen.co.uk/ .
Actually Arduino is one way I hope that C++ gets more embedded love.

Either that, or certification requirements like AUTOSAR that have switched to C++14.
I'd still say it's a net gain overall†, although the Great Bundling is questionable and definitely concerning in terms of attack surface, yet the synergies when finding and fixing vulnerabilities should not be taken lightly.

† It's overall a good thing evil maid/law enforcement/whatever doesn't get to have trivial access to the user's device anymore.
Sure, here are some:

Georgi Agabekov, uncovered 400 KGB agents in Iran.

Vladimir Petrov, uncovered 600 KGB agents, including Kim Philby.

Gordievsky, head of KGB residenture in London, exposed all of it.

The failure of Berlin Tunnel.

Polyakov, head of GRU China sector. Exposed 1650 Soviet and 19 foreign GRU agents and operatives.

Penkovsky, provided 7500 pages of documentation on Soviet missile designs and rocket fuel types to CIA.
> Rust will force you to be a good programmer,

> [if] you like it or not.

Perhaps, but I'm convinced that it will at the same time prevent you from becoming a great programmer.
Failure is an option in Perl 6
The Information Pathology
So what you say, just like the CIA.
Rust still lacks an effect system, though. Any plans?
How UX design is changing the world of banking
OK, so a programming language won't make you a good programmer, indeed ;)

Edit: This place is disappointingly childish... It does not reflect well on Rust, either.
Because it's hard to do well, and you have to build everything with it in mind.

We've been very successful with a strategy of hiring new graduates and training them. This is what we've done:

https://www.haplo.com/news/working-with-early-stage-develope...
Humans Are Suddenly Getting Better at Tetris
Enclaves do have integrity protection (at least SGX does).
I see. Much more elegant than explicitly coding the trade-off, actually :)
Why would VSCode be clearly the winner? I prefer Atom, VSCode is not even "200%" better, since most of it is personal preference. Such bold claims without even providing one argument.
But surely if they're leaving for a better job elsewhere, it's because the company that trained them hasn't increased their salary in line with their new abilities?
ctrl+W <word> enter - seems you are right :D <3 nano hahah
i find more complicated editors just distract with their fancies from what you are doing. inputting and deleting characters.
>Originally, usury meant interest of any kind.[0]

For example, here's Aristotle on usury[1]:

>There are two sorts of wealth-getting, as I have said; one is a part of household management, the other is retail trade: the former necessary and honorable, while that which consists in exchange is justly censured; for it is unnatural, and a mode by which men gain from one another. The most hated sort, and with the greatest reason, is usury, which makes a gain out of money itself, and not from the natural object of it. For money was intended to be used in exchange, but not to increase at interest. And this term interest, which means the birth of money from money, is applied to the breeding of money because the offspring resembles the parent. Wherefore of an modes of getting wealth this is the most unnatural.

[0] https://en.wikipedia.org/wiki/Usury

[1] http://classics.mit.edu/Aristotle/politics.1.one.html
This is true in the UK. At least, we are trained that we must have a paper trail to show we picked the best candidate, so you have to think carefully about which requirements are essential vs optional. I'm not sure what the law says, but the aim is more to avoid lawsuits than to find out I guess.

Closely tailored requirements to pick the candidate already in mind are definitely a thing that still happens, though. It annoys me as it wastes the time of everyone from the hiring manager through to the unsuccessful candidates, but alas we're all slaves to HR :( Lol at the Swahili thing, I've not seen it so blatant before!
And the optimization process itself would determine whether updating the model or changing the world is optimal, I guess. Thanks.
C seems simple.

http://blog.llvm.org/2011/05/what-every-c-programmer-should-...

http://blog.llvm.org/2011/05/what-every-c-programmer-should-...

http://blog.llvm.org/2011/05/what-every-c-programmer-should-...

What about advocating best practices to write proper code to those still using C89 + compiler extensions without any kind of analyzers?
Earth Strike
see also this Chomsky interview https://www.youtube.com/watch?v=Q8A1_rL0d1c
I use comprehensions because they're self-contained. Instead of a loop with a few statements that introduces new variables into the scope, there's a single expression with fewer loose ends. I think using (non-generator) comprehensions for efficiency is usually the wrong reason.

I find the split comprehension more readable than the equivalent for loop. That's mostly because I'm used to that style, of course, but it's also because it's more constrained. Comprehensions have a very limited grammar, but there are multiple ways to write a for loop that builds a list.
I don't think it worth flagging, maybe some HN readers are interested in Langland's work? Just retitle it, prefix [note for clickbait-aversed: it's Langland]
I've setup Jira (on premise) at my workplace myself. Runs behind an nginx reverse proxy and it is indeed pretty fast!

We don't use much stuff and it's a bit older version 7.8, but I cannot complain so far.
you could incentivise them to stay by upgrading their hardware as well as a loyalty bonus, so they get a new macbook pro and new hires get the older machines.
Unfortunately feedback has a price: senior engineers have to do more thorough code reviews, they may have to explain more fundamental things, and it all adds up. Some junior devs are independent and learn quickly with minimal feedback. Bless these devs, I love working with them. Some junior devs require a lot of time, and make the same mistakes over and over.
No current plans.
At least we're getting paid well for watching load indicators. Atlassian should make a step forward and show funny cat gifs to increase satisfaction.
Thanks for the tip. I've driven past that a number of times and meant to look it up but never got around to it.
I think it's a lot easier for someone to learn a new language, or learn the benefits of a new language, by recreating something which already exists.
I've heard of him and I'm just a regular everyday normal guy who codes for a living.
(previous post: https://news.ycombinator.com/item?id=18503795)

> Fortunately, while the attack would be extremely difficult to prevent, it also looks to be very difficult to actually pull off in the wild. (...) the VU Amsterdam team said a successful attack in a noisy system can take as long as a week. (from https://www.theregister.co.uk/2018/11/21/rowhammer_ecc_serve...)

Well, if you don't know that you are under attack, taking a week isn't exactly an advantage. And if the attack can be divided among many agents, even if not in parallel, can make it harder to find out that you're under attack.
This is a driver issue.
They in fact got a better price then would have happened absent the shorting.
Leveraging Office365 for automating business flow
Practically C/C++ means C++ and sporadically C++ first and C second. When you see a job offer for a C/C++ programmer you can safely assume that nobody cares for the literal C part. It all depends on context, in this case I agree with you.
Ah. That's a more interesting question, for sure. :)

I got involved with Rust over Go because if I'm going to use a statically typed language, I need generics. That was the initial thing, but other things ended up going similar ways (I think package management is extremely important, for example.)

I think Go has made great choices to accomplish its goals, but I'm personally more interested in a different set of tradeoffs.
> (for the local market)

There is no local market, at least not in the long term. Once a junior developer has acquired some skills and experience they're going to start looking at other markets where their market rate will be higher, and being less likely to have attachments that make it harder to move they will find it easier to move than more senior developers.
Languages features, dependencies, etc.

For instance one project:

error[E0010]: allocations are not allowed in constants
error[E0015]: calls in constants are limited to tuple structs and tuple variants

Another:

error: could not find native static library `brotli`, perhaps an -L flag is missing?

error: aborting due to previous error

error: Could not compile `brotli-sys`.

And I'm not talking what happens if you don't fix versions in Cargo.toml.
If those two were the only options, definitely.

But they're not.
No problem. Others haven't had this conversation as many times as you and I have :)
ghcmod-vim lets you query types but I hadn't found anything that allows gotodef which is why I just went back to vscode + vim keybinds + haskero and everything just works.
From what I recall, the 5c didn't sell that well ...
Salary isn't the only thing that people are looking for. Especially if you're early in your career, your interests and abilities aren't clear. As you learn more, you find you enjoy one thing more than another, are better at some things and not at others. Also, early in your career, you have fewer options, so you may start out in an area that's not close to your specific interests.

I'd guess it's more likely than not that someone who's learning lots and quickly will find that they're better suited, and thus more valuable, to a different employer than their first employer. It's not simply a matter of raising wages. It's getting a close fit of aptitude and interest with the work at hand.
WhatsApp UI (Four tabs in the bottom) Issues after iOS 12/12.1 Update
What are developers doing reading a dev resource in a localized version in the first place?
CIMB Group Joins Ripple’s Blockchain Network
Malaysian banking giant, CIMB Group, which is also the fifth-largest ASEAN bank, has recently joined RippleNet. RippleNet is a consortium of over 100 financial institutions who pledge to use Ripple’s blockchain-based products.
Free entry and open late Thursdays, very easy to pop in after work if you work centrally!
Allocations were never allowed in constants, so I find that first one quite confusing. Any chance you can share the code?

And the second one is because a system library is missing. You're saying you have it installed, and it used to build, but does no longer?
I am working on medical devices, where a bug can have catastrophic consequences.

Essentially the ecosystem today is C and C++ for embedded FW and middleware. Even if we are careful, we rely on static analysis tools to avoid some categories of bug. (Plus a humongous amount of tests). Typically bugs that would be caught (mostly) by the Rust compiler at compile time. I think it is a great idea to have some safety guarantee at compile time.

Would Rust fixes every problem ? Absolutely not, you'll always get logical bug or implementation not conform to the requirements but I think it is a move in the right direction, and I hope that slowly in next 10 years Rust will grow in the embedded space.

And overall cargo is nice, C/C++ don't have standard package manager. The test infrastructure is there by default, this is a breeze to add them in your code, rather than relying on an external framework, so this is also good.

I don't really see an alternative today for small footprint SW where C and C++ is king, and I hope that embedded toolchain vendors are taking notes.

If today you mostly code in javascript or python, unless you need bare metal like performance or to have stronger safety guarantee, maybe it does not make sense to move to Rust.
That's why you should first have a feature freeze, and after a while go into a code freeze.
I inherited a cardboard box from my grandparents which is lined with newspaper describing a giant tank battle - which given the date must be the Battle of Kursk.

One of the items it contained appeared to a kind of RAF badge made of some kind of plastic but with no identifying insignia.

After investigation I realised it was a "sweetheart badge" from the Second World War, (my Grandfather was in the RAF).

Apparently they were worn by women to discourage unwanted attention by making it clear to potential suitors that they already had a partner.
Thanks for the pointers. This is nice work.
I'm the co-founder of a web-focused consultancy which works with larger, "enterprise" type businesses to fund work with much smaller companies, usually pre-seed startups. We hire more experienced engineers to work on the ground with the larger clients and we actively hire more junior engineers to work alongside a small number of experienced people on the startup projects. We find this offers solid on-the-job training for the juniors as they rapidly get exposure to a wide range of skills and technologies without necessarily being hampered by legacy codebases, massively complex change management and deployment processes and office politics.
Vice did a special on utilizing viruses to kill cancer 3 years ago. AFAIK the technology was flawed then, it would need improving upon for this to represent a true breakthrough.
My brother studied with focus on AI (Germany) and is searching for nearly 1 year for a job... one should think that this is the most requested job on the planet. But nobody wants to have AI experts without 5-8 years experience.

If somebody wants to change that message me here ;)
I walk by the (abandoned?) Samaritan Hospital for Women every day, it's such an interesting looking building compared to all around it and, in the midst of a heavily urban environment, almost looks completely wild, with flurries of green popping out of random spots on it.
Asynchronicity is just how sequential models are extended to support concurrency. Parallelism and concurrency are orthogonal, so a concurrent model can be executed in parallel.
I wouldn't do that, I'd just prefix `Langland: `, so the title remains as in the article, but a bit like a subtitle.

(I Would Also Remove Clickbait Case But Maybe That's Just Me!)
Ask HN: What are the most used approaches to software project estimation?
For projects either with an hourly or fixed rate developed for other clients, not in-house projects
It is common in the UK and normally they are well thought out and have balanced benefit for both parties. I did dodge a bullet once in my career though where a bunch of mid level devs were proposed a course to take them to senior (and a 5% raise) but it came with a 2.5 year retainer.

I read all the docs carefully and I wasn't convinced by the course content so didn't take it. On the day the course was to begin, one manager pulled me to one side and said they really value me and would offer me a 8% raise—but I had to take it right now—he even had an amended contract and pen in his hand, open on the last page for me to sign then and there. I refused. I was seen as a bit of black sheep by management afterwards and sidelined.

Every dev that took it came to me over the course of the next few weeks and said they wished they hadn't taken it as they didn't learn anything they didn't already know and they felt like they'd been cheated. They could get out, but they'd owe the company something like £7,000 which gradually reduced each month over the course of the retainer.

It was a tactic to stem the flow on the revolving door that place had. The weird part is although technically and ethically it's by far the worst place I ever worked, I made so many friends there and the people were truly amazing.

Eight years later I'm still in frequent contact with several of them and we often reminisce and recall the crazy stuff that happened at that strange place on an almost daily basis. Looking back now it's almost comical, like something straight out of a Dilbert nightmare. But the stress at the time was immense.
Mannose impairs tumour growth and enhances chemotherapy
Leave it to Goodin to overyhype a non-practical attack. I wish this guy would retire. He's brought that overhyping clickbait style of reporting from the register to ars technica and I can't stand it anymore.

Rowhammer has been around for four years, yet is hasnever been seen in practice. Ever. Can we stop with reporters passing basic academic research as a current threat. It's just research pr0n, sci-fi hacking. It's not even remotely closely to being a threat.
Thinking about it, this is discrimination law: you have to be able to prove you selected the candidates based on their merits as outlined in the job requirements, rather than a protected characteristic such as race, gender, sexuality etc. Proving a negative is difficult so you need a watertight case for the positive.
Yes, but old buildings don't make for good hospitals, I'm afraid. They're hard to keep clean and in a sanitary state for operations and other medical procedures.
Brilliant idea. Not sure if it is legal but assume a legal way can be found. Needs some resources to set up an entity that you own that acquires the mortagage that you also own. Most bankrupt people don’t have the resources to do that. Room for a philanthropic venture?
>That aside, it's difficult, if not impossible for us "on the outside" to judge the value of these concept to the IC as we only get to know what the IC wants us to know. They're playing the long game. They're playing chess.

"In a game of chess, you must never let your opponent see your pieces", as renowned military strategist Z. Brannigan said.
There was a practical attack to gain root on android via it wasn’t there?

https://arstechnica.com/information-technology/2018/07/new-r...
That's a quote from Margin Call - I watched it again last week.