skysight-inc/HackerNews huggingface dataset:
Not easier, but vastly more flexible.

Sure, it's completely trivial to read a file containing an array of C structs of metadata and offsets into a blob of concatenated PNGs: just mmap the thing, and your main data structure is sitting right there in memory.

But problems start arising when you need to update the structure of that metadata. Add some more fields. Some more structured, multi-value fields, referring to multiple entities in your increasingly complex data structure. Entities which must be guaranteed to exist. And perform modifications concurrently, from multiple processes. And have the file not get corrupted when something kills a writer process in the middle of writing...

Databases are slow and overkill for the simple case, but they certainly make adding unexpected requested features much easier. And it can be expected that you will get unexpected feature requests.
Spam and Fake News Appearing in Google News
I’ve once used my PC for the same thing, the result was OK. Based on raw performance, my GTX 960 GPU is 4.5 times slower than a single 1080 Ti, and thus 36 times slower than 8x 1080 Ti’s.

My GPU was able to try 20GB passwords in a couple of minutes. That was the largest password list I’ve found on the internets.

However, neither system can brute force even a short 8 characters password. If the password is lower+upper+digits, that’s (26*2+10)^8=2.14E+14 passwords. This number is way out of range even for a PC with 8x 1080 Ti.

Those GPUs are only useful in a very small number of corner cases.
I remember in previous posts Marissa Mayer's salary was already discussed to death. I think this discussion just focuses on the new information in this post.
A planet on which a $70 billion company was facing an existential threat which required it to convince the public it was serious about change, which it could do with an acknowledgement, an apology and a settlement of a few million.
What's "high volume"?
> Plain text is always compatible

This person has obviously never been tasked with reading text files from old mainframes.
Any plans now that Vista and IE9 are no longer supported? https://support.microsoft.com/en-us/help/22882/windows-vista...
See also https://www.theregister.co.uk/2017/06/12/googles_news_algori...
create-react-app works out of the box for small applications and automatically sets up webpack to sane configurations. I've found that setup ideal for small apps.

It's only on the larger apps with more complex customization where I have found the need to use anything other than the default webpack configurations other than the default create-react-app ones.
I love how everyone here thinks they can do better. Yahoo was a deadman walking before she took over. Overall she did what she was suppose to do as a CEO of any company, return value to the shareholders. Now you can disagree with that being the goal, but it is the way it works today. By that measure it worked. Is it the right thing long term, most likely not. We have lost focus on long term planing in favor of quarterly reporting. It is the world we live in. Please go can change it, but don't sit here and say you could do better as I do not see any of you saying you have the job as a CEO of a multi-billion dollar company.

Oh, I expect this to get down voted to oblivion. Prove me wrong.
Came her to say all this. No ssl is a joke.
>But as the food in your stomach processes the liver is continually getting more calories. So if you eat a huge meal right before going to bed its possible to never switch to fat burning.

Probably that's because some people advice eat pasta a night before your sports event. To have some calories in your body to burn in the morning until first food stop.
If anyone wants to do something similar to this in the command line (simple article text to audio) I have a little one line shell script here. Put the text inside article.txt and then run it. Mac only.

https://gist.github.com/reustle/7029e02e171f8a4b13d0
Towards a faster Scala compiler
Thanks, shnraj! What type of content would you like to be narrated?
Same here. You just stick to a few simple patterns that work. If you have a shared data structure you protect that with a mutex. You don't hold the mutex and call other functions. You take the mutex, you read or write the shared structure, and you release the mutex. That's the basic pattern.

People run into deadlocks and other issues when they don't realize what mutex protects which data, or they try to take multiple mutexes, or they hold a mutex while calling a callback, or they don't protect access at all.

From a performance perspective you need to be aware of how much contention you have on a mutex. Typically locking a mutex should never block. If you have contention there are patterns for dealing with that as well.

For most types of concurrent applications you're done. Yeah, lockless techniques, spin locks, etc. may have their place but for the most part keep it simple.
People are dogging on you for suggesting learning styles. Learning style aside, seeing something with your eyes helps you see it with your mind. I think very few people would find it easier to understand a paragraph or a few than a good illustration or demonstration.
It's about time, Apple SOCs are a huge reason for why iPhones and IPads have such great performance.
So, is it actually "by humans" or it's a synthesized speech? Just wondering, sounds a bit robotic :)
I would have given it a class name of "black_bar_because_someone_important_has_died", for the people whose first reflex when they don't understand something is "Inspect Element."
Word has built in diff. Review -> Compare.

It's kind of slow though in my experience. Diffing plain text is amazing. I recently used it to diff a research paper I was peer reviewing that the TeX source was provided for. I felt like a wizard.
I've generated this exact token at several companies and it's worked great.

An expiration of one day is not 86400 it's unix_time()+86400, to clarify. It's not stored in the users session and is completely stateless. It's great!

It has every property a csrf token needs

- per user

- not guessable or forgeable

- expires

Since it is stateless it doesn't require db lookups which can be an additional benefit. If you complain that it lacks the ability to be revoked I challenge you to find a single instance of people revoking csrf tokens.
Yes, talk. But some sorts of talk are more useful than others.
35% faster than the same blobs can be read from or written to individual files on disk using fread() or fwrite().

How about reading efficiently with unbuffered I/O directly on the file descriptor?
2.14e14 is nothing. 8x 1080 Ti can crack that in less than 15 minutes (NTLM, MD4, MD5).
Awesome...Nice link!
May his soul Rest in Peace!
A database on a raw device is a thing. E.g. Oracle has this option for decades; MySQL, for some time, too.
I started doing this a while back, too! However, I noticed recording takes way more time than I thought it would, and I didn't think I'd be able to keep up with the workload every day. The plan was always to involve the community and different readers, but I'd have to get it started: build a contributors website, do quality control, read stuff myself, etc. It never happened.

Would it help if I contribute a few articles a week? My twitter handle is the same as my username, or see my profile for email.
Google Trying to Patent ANS
If you like these audio article concepts, check out SpokenLayer. They work with many big publishers.

http://www.spokenlayer.com
I'd rather have real threads available in my language, and use shared state sparingly. Your N single-threaded processes have to talk to each other anyway, or at least to a master, and might even share memory through memory-mapping. Threads are just a tool, and they give you options. You can use them in a share-nothing way if you want.

As someone who grew up on the Java VM and started my start-up/web career on it, I've always felt like Java programmers have a different relationship with threads than C programmers. Java gives you cross-platform, usable, debuggable native threads; it basically makes them free if you want them. In C/C++, on the other hand, threads are a library, and using them is a grungy affair. If you grew up on Rails, meanwhile, threads don't exist ("when you say worker thread, do you mean worker process? I'm confused").

Node.js was created by C programmers and launched with a lot of anti-thread propaganda, much like the link. They equated threads with shared state, and also said threads were too memory inefficient to be practical for a high-performance server (they meant that holding a native thread for every open connection would require too much stack space, which is true, but that's not what they said).
With 30+ extensions installed, It would be nice to list incompatible extensions in the about:addons page. From about:support page, I see Multiprocess Windows	0/1 (Disabled by add-ons)
IIRC, the highlights of the anti-Tor-Browser argument are something like:

- Various people who are very interesting to intelligence agencies, police, organized crime syndicates, and private security for major corporations use Tor Browser, increasing the demand for and thus price of black market exploits specifically targeted at it.

- Tor Browser incorporates patches and default settings that receive less testing and review than the code and defaults of vanilla Firefox, making it more likely that vulnerabilities exist.

- Architecturally, Firefox lacks robust exploit mitigations, making it more likely that such vulnerabilities are actually exploitable.

- There's a delay between security fixes in vanilla Firefox and their release in a Tor Browser update.

- Exit nodes and root CA certificates may both be controlled by attackers, potentially giving them the ability to deploy exploits even to targets that only use HTTPS to trusted sites.

Adding all of the above together, it is not only plausible but likely that effective exploits specifically for Tor Browser currently exist in some attackers' toolkits.
As a dev you should take a look at the difference of hashes/s of the different algorithms. Some are measured in GH/s, some in MH/s, some only kH/s. E.g. MD5 is way faster then SHA256. So if you only use a strong hash for ensuring data integrity in the absence of adversaries and performance matters, you may prefer MD5 even in these days.
Modern Front End Guide for Engineers
Google's news algorithm serves up  pills
I would like to add that Square internally has a very oft-repeated (and somewhat tongue-in-cheek) mantra of "break the rules, not the law", and IMO a pretty strong moral compass in general.
It's easier when you restrict yourself to:

- take mutex

- read/write/modify shared data structure

- release mutex

There are plenty of multi-threaded RTOS and a lot of critical embedded software is multi-threaded. Typically there are clearer guarantees in those vs e.g. Linux. Multi-threaded code isn't fundamentally (from a theoretical perspective) different than single threaded code when it's running on a single core. Multiple cores communicating is sort of orthogonal.
Some of Bromium reminds me a bit of moka5. Moka went bankrupt as they had a solution of sorts in search of a problem.
Not for an event where the total eclipse will only be visible in the continental US. The map in TFA changes timezones so that local time is always used. It's the same as flight schedules where takeoff and ETA are always represented in local time.
Keep in mind that actors and futures can be used together, which produces an even more powerful result than either abstraction used alone. We use this programming model in Mesos via a library called libprocess. There will be some talks on this approach in upcoming MesosCons and we'll submit one to Cppcon.
Check https://en.wikipedia.org/wiki/Glycemic_index
Top 89 Most Underrated Science Fiction Novels
I think your information there is quite dated. I can understand if you want PHP4 to die, we all do, but, to say that 'PHP should die', ignores all the benefits PHP has been bringing to the table. You only have to look towards Symfony, Laravel, and the language ever popular CMS is made in to get a better understanding of why its done. Once you know that, make some points about that please, rather than generalized statements with no backing.

And, Why is Django any better? Frankly, I find python to be a terrible language to be productive in due to its syntax and lack of types. PHP has lack of types, too, but atleast the variables are marked.

Also, what is wrong with that explicit construct line? Its a constructor, it says it right there.
There's no good reason to use md5, period. If performance matters and security doesn't, use something like mmhash3. If security matters and speed doesn't, use something like SHA-512 (optionally truncated to 256 bits). If both matter, use something like siphash if a prf will do or blake2 if you need a true, high-speed cryptographic hash.

(Actually, besides portability and interoperability, there's probably no good reason to use SHA-anything over blake2. Although if you are working in environments that provide hardware crypto support (Intel SHA Extensions on Atom, now also supported on Ryzen so maybe we'll see it on the desktop, too), SHA becomes faster than blake2 and you should use that instead.)

If at any point you find yourself in a situation where your hash being computed too fast poses a security risk, that should be a HUGE warning. Hashes should be fast, cryptographic or otherwise. If you need a "slow hash" you are probably looking for a derivation algorithm and not a hash and should be looking at scrypt, bcrypt, or even pbkdf2.
Twitter Testing Dedicated Spot for Live Videos on Its Homepage
Async release of hyper
Did you forget the passcode to your beer?
Role of Current Transformer and Notice
During my first week at American Express I did not have the credentials to install any applications. My manager wanted me to build a prototype and I couldn't install a database. Firebase and other third party was impossible because I had to work on an internal server. I thought SQLite would save my day, but I remembered it being really hard to install and set up. So I had to write my own DB that I called 'stupid-db'. It literally just reads/writes data into a file: https://github.com/songz/stupid-db

The demo went well.
1903 Parrot Academy That Taught Birds to Speak Using Phonographs
She was given $30M in restricted stock to get her to walk away from being owed that much at Google. Then they gave her some incentives in stock options (valued at $22M if yahoo stock increased by something like 8% a year for a decade), because otherwise why would she take the job? Instead Yahoo stock tripled and that created her $260M.

Now she may not have had a lot to do with the stock increase, but she certainly didn't screw it up. Her compensation was mostly incentive based, which is what you want for a CEO.

CEOs aren't going to be paid like an engineer. They probably are overpaid. But for shareholders, offering a tiny part of the upside from a stock increase is a small amount to pay when it the stock appreciates strongly. The bigger problem is when it doesn't.
You're actually preaching to the choir, I don't disagree at all with your point, I just don't think it applies here.

Look, at my job we self-host Gitlab CE. It's 100% Free Software and we could implement all the features we want without asking them a damn thing. Yet I still have asked them to "please add this feature".

It has nothing to do with being Free Software or not, but with asking them to do actual work in implementing the feature.
I don't think this is very true. There hasn't been much private funding for NumPy. People working at private companies have worked sometimes on NumPy but very rarely as part of their full-time job.
Whatever... But Multithreaded systems are fun to design, develop and most importantly - troubleshoot... more harder the 'real time'ness more the fun :)
The original article here doesn’t really have “principles” to explain. It is just a list of 10 topics related to graphic design. Each of those topics could be expanded into a book filled with many principles, criteria, heuristics, etc., formal or otherwise.

To be honest I’m not sure who is upvoting the article or why. It doesn’t really have much concrete content.

It’s sort of like if you had an article “Principles of software engineering: logic, programming languages, compilers, networking, operating systems, data structures, computational complexity, hardware, system architecture”, and then wrote a paragraph of oversimplified fluff about how each one was related to software. First, those aren’t principles, but more to the point, that wouldn’t be particularly useful for someone trying to learn the discipline of software engineering.
You missed the $10B returned to shareholders.
Note that the article makes a crucial assumption: That all those unfounded future liabilities (most of which are pensions etc. I assume) of governments are fixed and cannot be changed. This isn't true, though: By changing the law, those unfounded liabilities can be erased at the stroke of a pen.

What does this mean? That these staggeringly high numbers (if true) do not necessarily mean doom but "merely" that at some point people will find out that the pensions they have been promised won't be there when they reach retirement. (I.e. what the people in Greece are currently painfully experiencing will eventually hit others, too - one pension cut after the other until little is left.)

This doesn't necessarily affect "future" generations, though: Those that will pay for it is the generation that lives through the cut, i.e. which has paid into the system before the cut but was due to receive money only after the cut. This can very well be a generation that is alive today.

Edit: Just to clarify - the article conflates these financial liabilities with environmental damage. Just to avoid confusion: obviously, environmental degradation cannot be erased with the stroke of a pen, the above is only talking about the financial side of things.
Replacing Bonderman with "a woman" will not magically solve issues around sexism. There is quite a bit of research, for instance on academic hiring, showing that women often have the same or at least similar sexist biases against women as men. See also the research on implicit stereotypes showing that both men and women associate men with traits related to strength and power and women with traits related to weakness. A female board member would probably not make stupid comments like Bonderman's but that alone is not going to change the toxic culture at Uber.
>As someone who grew up on the Java VM and started my start-up/web career on it, I've always felt like Java programmers have a different relationship with threads than C programmers. Java gives you cross-platform, usable, debuggable native threads; it basically makes them free if you want them. In C/C++, on the other hand, threads are a library, and using them is a grungy affair.

The difference is Java threads work within the constraints of the JVM memory model. Which is very well specified and understood. It is implemented in the JVM and the JVM guarantees your platform will follow it.

While C/C++ do what ever the hardware dictates.

https://dzone.com/articles/java-memory-model-programer%E2%80...
I'd argue against the use of LOL for any writing that involves an exchange of money, at any level, reader, author, publisher, printer, paywall, et c.

But with regard to trivia, such as The Sokal Hoax, it is always, always, always the job of the journalist to inform the reader. This is true for acronyms, units of measurement, coincidental circumstances and more.

If someone writes an article about the JFK assassination, they should be explaining JFK's initials, events surrounding the cuban missile crisis, the MLK assassination, Jack Ruby's mob ties, LBJ's rivalry, Bobby Kennedy's assassination, Ted Kennedy's car accident, the grains of the bullet used, what the unit of measurement known as the grain measures for a bullet, even what a knoll is.

The journalist should capture as much information as needed to convey all relevant information to tell a complete story. A bad journalist leave details out, and expects the reader to "just know everything."
Yep: https://addons.mozilla.org/en-US/firefox/tag/firefox57
The most important concept I learnt about coverage in school was the subsumption hierarchy. For those interested in more details, the Pezze-Young book does the best job of explaining these in chapters 12 & 13. http://ix.cs.uoregon.edu/~michal/book/

I'm surprised that in-practice i've seen only the use of statement & (sometimes) branch coverage being reported. I'd be curious to see if anyone (outside of aviation) has used any other coverage criteria.
A CEOs main job is resource allocation. She deserves a lot of credit for not selling Alibaba shares. There were lots of voices saying sell it before it's too late over the last few years.
Colliding md5 hashes of human-meaningful
I don't know who to blame here: the people for allowing this mismanaged of future problem, or the politicians doing the mismanagement.

As I just said this morning: "The reason you have to work longer before you get to retire is because the state failed to save and put aside the money required. And they have known for years this was coming."
Lets hope we do better on global warming or other catastrophes.
Straight array of structs. The complication was that there were several of them, they were stored in bus-attached MRAM which was accessed directly (e.g. mmap of /dev/ram) by several independent processes.

The idea came from previous generations of the product which generally ran on microcontrollers coupled with custom FPGA designs, so, not entirely unwarranted.. but completely incorrect for a newer product with much greater computing power than their previous devices.
You might want to install the Add-on Compatibility Reporter available from https://addons.mozilla.org/en-US/firefox/addon/add-on-compat...
Jargonification always feels like job security by obscurity. In other words, not actually job security, but a contrivance thereof.
Not fully compatible with PowerPoint, no. That's why I said the PowerPoint format is proprietary; it's impossible to build a working interoperable tool, because either parts of its format remain secret and do not follow the published standard, or the format itself makes references to hidden implementation details.
> Oh goodness have we come a long way if interacting with a file is harder than interacting with a SQL database.

It's not interacting with a file, it's interacting with a file that contains other files of varying sizes that need to be accessed randomly with good performance.
The problem that eric-tucker raised, a very valid one, is that the corruption of file metadata in the published release posed a serious stability risk for anyone whose environment depends on uglify-js. At the very least, from the comments still present (i.e. not deleted) on the issue, it seems absurd to me that the maintainers closed the issue without either (1) publishing a workaround or (2) resolving the issue in production. Similarly, though, I find it reprehensible that it took so long for someone to step forward and help trace the issue - or even make an offer to do so.

On a broader note: by now, I think it is a true and established fact that there is no such thing as bug-free software. Bugs exist everywhere, and there is plenty of code out there to defend against the existence of such bugs. It is absolutely and undeniably negligent to say that you won't fix a demonstrable issue in a software release because it triggers known issues in other software, especially when a non-harmful remedy is at hand.