skysight-inc/HackerNews huggingface dataset:
The observation on failure modes is correct. When you process thousands of tasks every day even problems with low probability happens.
What bugs me with the transaction approach is that you loose all the information (except probably for logs). In your example, if I signup on your service and for any reason the process fails (maybe after I received the confirmation that everything is ok) I will end up having no record stored for my account. This is problematic for post mortem diagnosis, for customer support (although its easy to ask the customer redo the signup) and so for and so on. Imagine you are handling payment with an external provider (e.g: Paypal). I could end up being billed without a trace on your system that I've paid. I'm not saying that my approach is correct. I'm saying that just assuming that transactions will save all your problems discount the fact that your system, to be useful, has side effects (not using the term in a strict way) on your customer and possibly on systems outside your organization. I prefer to plan for actively manage the possible failure modes and to detect and correct quickly anomaly. For this reason inconsistent data is sometime better than no data.
Another point on the database approach that I haven't thought before: In the past we designed a system that stored and updated user timelines on MySQL. It has always been a nightmare. SQL databases are not designed with an high ratio of write operation in mind. The indexes get quickly fragmented, even deleting entries doesn't immediately deflate the disk consumption etc. I don't see this being a problem immediately applicable to a queue use case. But with your service growing in size there's a risk of hitting scalability problem. Obviously you could react like we have done, use a bigger database, use better disks, create cleanup jobs. But it is bad software engineering and you are just buying more time.
I think what he meant by "for their own account" was something smaller and personal. Not part of a larger pool containing hundreds of millions of dollars.
Yea, DNSSEC has its own problems. Personally I think a version of HSTS for mail is the best idea for now.
I agree with the gist, but I'm curious as to why you would use WCF when there were simpler existing solutions (eg. Web Services)? If you simplified WCF to decoration via attributes, what do you gain over ASP.net Web Services?
Shouldn't those letters have been sent to Github and taken down that way?
Two notable reasons I know of.

First, people like boring in filesystems, and ext4 was seen as a natural and less risky successor to ext3, which most people ran. And I think that's a reasonable perception.

Second, ext4 went out of its way to solve some of the system-level issues that tended to cause problems, before it went into production. For instance, the ext4 developers introduced hacks to deal with software that handles write atomicity incorrectly, making it much less likely that you'd end up with a zero-length file if you cut power or crashed at the wrong time. XFS and JFS had similar issues that actually hit users, breaking invalid-but-widespread assumptions about filesystem semantics. ext4 at first considered having similar semantics, but instead worked around how many programs actually wrote files, which made it safer in practice.

(Also, "in the age of ZFS"? ZFS is by no means the dominant filesystem, or even an obvious contender for that title; it has a few popular features, but it's hamstrung by its choice of license.)
Would love to hear from any existing users on their experiences so far (assuming that's allowed under previous licenses). Choosing a database is one of those decisions where I tend to go with the safest, well known option, but maybe I'm missing out.
> Assembly has one huge advantage over C: no undefined behavior.

In the olden days, maybe, but nowadays? No way. As the most extreme example: forget to use memory barriers when you should? Congratulations, the OOO nature of modern day CPUs means your code may not execute identically on all platforms. But even lesser things can impact you: instructions that were cheap become expensive, or suddenly registers that you know you weren't supposed to touch but did (and that happened to work) suddenly don't because a library got changed, or half a dozen other things.

With assembly on a modern CPU, congratulations: you have eliminated one level of abstraction. But there are still many, many turtles to go before you're really all the way down.
[Screencast] azk: Quickly Orchestrate Your Local Development Environment
That statement is intellectually lazy at best. It is factually correct, but it wholly misses the context of the fact. And that is the centuries of slavery, the decades of Jim Crow, and other policies that have systematically deprived opportunity and framed/define crime to be an African-American tendency. I'd really recommend you read a couple of pieces by Ta-Nehisi Coates [0] before you make up your mind either way. Regrettably, I've argued your point of view before, but it simply shifts the burden of proof and contextualization to the under-privileged and oppressed.

[0]: http://www.theatlantic.com/features/archive/2014/05/the-case...
Use what now?
anyone who has ever cloned the repo will have a full copy though.
Life doesn't end until death occurs. Keep that in mind, kids.
One of the consequences to the minor interface overhaul they pushed in the recent months was the inability to search through your local media indexed in Spotify.
Nasa's Software Catalog
You live in one of the countries with the strongest economies in the world. That something is "cheap" for you doesn't mean it's cheap for everyone else.

£6.99 is small change to you, but it's about about four meals for me. It's also more than what I have in my wallet/bank account near at this very moment.

And there's places where economies are way weaker and my own. Heck, I know people who earn less than that per day.
It ignores keys that are incorrect, so pressing backspace isn't necessary and actually just delete the last character you typed correctly (Since that was technically the last key you typed if you don't count incorrect keys). There's a setting that make it take every key you type and just displays them as incorrect (And lets you backspace them as you'd expect), isn't not the default though.
Interesting. We've implemented a metadata layer for HDFS and YARN using NDB (MySQL Cluster) - that also supports READ COMMITTED transactions.
Do you support:

- row-level locking

- independent transaction coordinators at data nodes

- pruned index scans

- network-aware transactions (with user-defined partition keys for tables)

- any asynchronous/event API

?
Thank you, #1 might be the biggest reason that XFS is used over ext4 I guess, 16TB is not as unusual size for a decent raid array nowadays. I would like to understand why CentOS (and I guess RedHat went for XFS) though.
Take a wild guess. (hint: they're dumb)
Hah! That's almost exactly how I do that, especially the spacebar bit. :)
Social CRM that help you grow you business
You have to do better than this. I know enough about the Ukraine situation to automatically be skeptical of any story valorizing Russia's involvement. But I have no idea what "GlobalResearch" is. Which, to me and, I think, most HN readers, makes your comment a smirking personal attack rather than a contribution to the conversation.

Next time, buy some room for your outraged response with a couple sentences of explanation.
> What causes you to say that it's awful?

> How about the fact that it's awful?

Is this really what passes today for a decent reply? It's an atrocity of attempted logic straight of the Windows 95 era.

The logic used is also the epitome of not caring about putting up a decent argument even to the slightest degree. Nearly zero effort.

I've seen people construct more impressive arguments given only a kindergarten education. I'm not even kidding.

I'm not saying everything has to be lengthy and grammatically correct, but there's such a thing called pride in logic, and astrodust has none of that. It's just sad.
Azure portal is down
I saw that. Typing '1'+<RIGHT ARROW> advances slides, but doesn't load the full slide.

Bad presentation design.
Touch typing means you type the document, then correct errors, then apply formatting and font choice, and preferably don't make errors.
Excuse me for being a pedant, but wouldn't Let's Encrypt end up being just another potential attack surface?
That's one way of looking at it. Another way is that it constitutes a regressive tax on a life essential - food - for the sole benefit of a politically powerful minority lobby - food processors.

In the country of my birth, until about 50 years ago, the shoe-making industry was considered important - and the producers managed to convince the government that a tarrif on shoes would protect a vital national industry and all the associated jobs. And indeed it did; but the result is plain in photos from the era; most people wore old worn out shoes particularly the poor.

Personally I think to deprive the relatively poor of access to cheap foreign food/clothes/etc. to ensure a tiny segment of the population is "protected" is immoral. But the political power of industrialists in concert with labour unions is formiddable.
dose action shots tho
You just "block" until you hit the correct key, so try to avoid pressing backspace at all and just focus on the correct key.
I'm actually typing this on a Das Keyboard 4 Ultimate (no C) which I specifically bought to learn typing without looking on the keys, because I don't have the discipline to use apps like the OP.

Also, thank you for your link. When I need another keyboard, I'll consider the compact version.
The tenkeys are really just a dead weight (literally, given how heavy Das Keyboard is :D) for me.
Good that it has media keys too, I could never live without them (especially volume obviously; sadly GNOME has a bug that makes play/next/prev useless after a few suspend-wake cycles).
Many FOSS projects have Pro versions (Redhat Linux / Cent OS Linux)

Best One Liner about commercial Open Source software : The only kind of profit strategy that is incompatible with Open Source is monopoly-based sales, also known as "royalties". [] http://opensource.org/faq#profit
This is a comment that wants to replace empty space on your screen with itself.
Fair points. I haven't used Windows since XP so my information is a bit dated but it does look like they've made some progress in this arena. Putty is from a time where most windows software was installed from random .exes on the internet, though. I suspect due to the age of the win32 ecosystem much software still is installed this way in Windows environments.
I don't see that necessarily just as more easy or convenient things for them, I also see them as different and new expectations and challenges that they will face that I did not.
The Burroughs Master Control Program was written in a dialect of Algol. It shipped to customers in 1961 with the B5000, years before C or Unix were developed.
http://voltdb.com/john-hugg-work-volt is this you at voltdb ?
Leaked DOJ memo: N.S.A. must start shutting down surveillance programs on 5/22 [pdf]
But that's not how real typing works...
that's mintty....which is just a slightly modified putty
For basic things like model checking, I'd recommend NetFabb model checker[0] and/or uploading the file to Shapeways[1].

The first will try to do basic model checking and close any holes it finds. Shapeways uploading process will go into much more detail, trying to find areas that might be too thin for the printer to print, or too close together...

Also, I long for the day where other 3D printing technologies reach the general public. FDM (the process all makerbots and clones use) is fine, but the quality is not as goood as it could be and things like support material are a necessity when doing complex pieces.

BTW, just in case anyone needs this, a great program to convert a 3D model to gcode is Cura[2].

[0] https://netfabb.azurewebsites.net/
[1] http://www.shapeways.com/
[2] https://ultimaker.com/en/products/software
I like the way it builds up through the sequence of most common to least common (in English) letters ETAOIN... instead of focusing just on "home row" keys like Mavis Beacon used to, which I always found artificially hard because it meant lots of side-ways combinations.

Both of course have their limitations in terms of appropriate words or chunks however.
http://moi3d.com/
Ask HN: Are there commercial services that provide distress passwords?
I'm surprised this approach - which seems reserved to intelligence agencies - doesn't seem to be more widespread.

Basically I just want a password I can enter into my computer / phone that will make it a brick. Or in the case of a bank, something I could enter to lock my account or notify the authorities.
LG Shows Off Wallpaper TV No Thicker Than a Sticker
I can see meetings and presentations using this very well. You can broadcast a link locally with a push of a button -- no need to know anyone's email or screen name. Listener don't even need to know the URL itself. This makes UX near seamless!

Imagine giving a presentation in a public conference, you can provide resource (per x slide) to all of your listeners(strangers and what not) for referencing without ever saying anything about it.
You do know that the term "touch typing" predates the invention of the touchscreen by decades?
WhatsApp complained about users of the API spamming the service; instead of taking the necessary steps to secure their service, they sent lawyers. So they've been dealing with legal threats for a long time.

https://github.com/venomous0x/WhatsAPI/issues/83
> The Genericons icon font package, which is used in a number of popular themes and plugins, contained an HTML file vulnerable to a cross-site scripting attack.

How can an HTML file be vulnerable to XSS?
I guess they don't, unless a particular fork becomes popular enough to stand on its own.
This is looking nice, but I am frustrated because I have yet to see what I think is a properly designed set of introductory exercises. IMO there are two big issues for people learning to touch type: learning where the keys are and developing the motor coordination to move the fingers from the home row to the non-home-row keys and back again. Every typing program I've seen seems to focus on the former and not the later.

This site teaches the letters "eaint" first. I think it's better to introduce the home row first. Don't worry that you can't type much English with the home row (unless you're using another layout like dvorak). Just get them good with different combinations of "asdfjkl;". Then once you have that, you introduce new keys by having them practice the jump from the correct home row key typed with the same finger to the new key and back. Let's say we're introducing 'e' next. The exercise would be something like this:

ded ede dde eed eded dede deeded edded ...

This gets them familiar with precisely the right motor recruitment pattern. The point of this exercise isn't to achieve the absolute maximum speed. It is to exercise the movement pattern of moving a certain finger from the home row to the key and back. Obviously you need to make sure they're keeping their hands on the home row and not typing d and e with two different fingers to go faster on this particular exercise. But that shouldn't be hard to do in your instructions. You can start to dissuade this in your next exercises by bringing in the home row letters typed with the adjacent fingers.

fesd sefd sdfesd fdsefd ...

I think this kind of exercise pattern should be used to introduce all the keys. Once the student has established these motor patterns in the process of learning where each key is, then you can go on to English text. Of course you can put English into these exercises when possible, but not to the detriment of the main point which is motor movement patterns.

If you already know how to touch-type and are learning a new keyboard layout, then obviously you already know the motor recruitment patterns and the approach used by this web app is great.
The word 'Jini' is bubbling up from the depths of my memory... Java-based distributed architecture which relied on the 'write once run anywhere' model to distribute proxies for remote objects...
This is the first I've heard of chocolatey. Seems to offer a lot more stuff, so I'll check it out.
Strong agree. Everyone should do this at least once in their career.
Initializing and Managing Services in Linux: Past, Present and Future
Actually this tutor made me realise that I use my index fingers for ~90% of the keys, middle finger for the rest of the alphabetic keys and don't use my ring fingers at all when I type "naturally".

I find the proscribed touch-typing method of using all the fingers I found painful after a few minutes.
And you need to install windows 10 to get the new browser.

Is Microsoft coupling their browser again?
Or, I'm realizing now, if you want to try it out, email me at rich@pubmail.io
In retrospect, I wonder if there was a better way to report that bug. Clearly the first person didn't get it, at all.
Why It Pays to Be a Jerk
> I've had to modify the CSS of comments before now

I may be misunderstanding you, or missing something obvious, but I just highlight faded comments with my mouse (or finger if on mobile), works well.
Why people say NO when you ask for informational interviews or mentoring
Correct link is https://floor.senate.gov/MediaPlayer.php?view_id=2&event_id=...

But it does give me a bad certificate warning.
Write a C compiler in assemby?
Let me double that recommendation.

It's easily as good as WA and truly multi-platform.

(Disclaimer: totally unconnected to Telegram).
For context on this, check out PEP 492: https://www.python.org/dev/peps/pep-0492/

It's a really exciting proposal. AFAIK, it'd make Python 3 the first mainstream imperative scripting language to have these async/await concepts built-in (there is a similar proposal for JavaScript/ES7 built on top of generators and promises[1]). While I've commented before about how asyncio is still a bit more nascent than I'd like, I'm really excited to see where the community takes it.

[1]: https://github.com/lukehoban/ecmascript-asyncawait
In some states, it's only the purchase and public consumption of alcohol that's prohibited for those under 21; and consumption on private property and/or under the supervision of parents/guardians is expressly allowed.
Paypal has so many things wrong with their company. The majority of employees, even in the business support department, have absolutely no clue what is going on. They will give you an answer to a question, you will call back later, get a new agent, and then you'll get a completely different answer to the same question.

Half the time the customer support is clearly just improvising, because the system is such a mess that there are no clear processes for fairly common situations. Let me give an example. A customer on our website makes an order for digital goods. We collect photo ID, check their IP, call them. The customer then opens an unauthorized claim. We call in and outline the information we have.

Half the time, the agent will tell us that the information we have collected is irrelevant to an unauthorized dispute. Let me clarify that. The photo ID documents, IP address on file, and phone number of the buyer are considered irrelevant in a claim where the buyer alleges they did not authorize a purchase. Absolutely ridiculous, right?

Then magically, if you call back and connect to the right agent, they will actually look at your evidence and use it to help determine the case. These cases can be upwards of $500, and must be extremely common. And yet, somehow, there is no clear standard for what proof we need to collect in order to win an unauthorized dispute.

The company is a headache to work with. Half our time is spent verifying and doing risk management in our business, simply due to the horror that is PayPal.
"The measure of a value judgment is whether it is enclosed by quotation marks"
Hi Eric!

Not sure if you remember me, but we spoke several (5?) years ago when you guys first started. I was the SAP HANA guy and I think we were talking about the landscape of in-memory solutions back then. First off, congrats on the success so far. Second, a few questions:

- How is MemSQL comparing to HANA and Vertica? My understanding is that MemSQL provides the same infrastructure (columnar in-memory based storage) of those solutions but will run on commodity hardware (HANA for example is hardware-vendor locked).

- One of the interesting topics that has come up in the HANA space is that it's expensive to maintain and scale. Specifically, provisioning new servers for data growth and archiving old data out of memory. Are these issues present at all in MemSQL?

- Lots of your customers seem to be using it for company-specific strategic solutions. Are any using it for operations? (like financial close reporting, or as a transactional DB)
> This really just highlights the fact that Windows ships with no tools to establish any kind of verified trust chain.

It has HTTPS and FTPS support natively. It also supports generating hashes in SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5, and RIPEMD160 using the aptly named Get-FileHash cmdlet.

> no authenticated package management

MSI installers can (and should) be signed, and well as many other Windows installers and other binaries. Windows 10 supports "real" package management, but security is unimpacted directly.

> Being concerned about privacy and security and running Windows may be mutually incompatible.

You've given zero plausible reasons for believing so. All you've demonstrated here is that you know little about Windows and what the term "verified trust chain" means.

Just Windows supporting HTTPS alone more or less ruins your point.
> instructions that were cheap become expensive

Agree.

At which point, C gives you a huge advantage. Sure, you can hand write assembly, but I bet the libc implementation you're linking against has optimized to death with intimate knowledge of timing sequences and inner state of the processor from the processor vendor. I would expect a company like Intel to contribute patches to glibc (GNU libc) based on running functions from the standard library on a very very expensive FPGA (or just expensive-software simulation of hardware).

Memory ordering operations are an advanced topic; I have a copy of C++ Concurrency in Action, currently sitting on my bookshelf, that has a chapter explaining the concepts. Should be a fascinating read!
Well, 400,000 dead and nearly 700,000 wounded. Don't forget people witnessing the aftermath of total war in the European and Pacific theaters whether they were in combat or not. I think it was a bigger thing than you imply.

I'm not sure where you're going with the propaganda films as compared to my point.

But I agree, the Great Depression would be a contributing factor to what I'm describing.
seg-fault: Yep. That's me. You could take what I say with a skeptical eye because I work on a competing system, but it increasing appears that that's not actually true.

VoltDB for transactions and ingestion-time analytics and MemSQL for deeper analytics might be a neat combo system. YMMV.
safetype
I don't think the article is aptly titled, which is too bad, because literally "understanding C by learning assembly" is actually a terribly wrong-headed idea.

The article is rather about exploring a particular C run-time at the assembly language level, and a tutorial about stepping through programs at that level.

This is something useful that would-be developers need to learn, the main reason being that programs sometimes fail in ways such that uncovering the root cause requires a trip through that level. Other reasons are that in some situations we need to verify that programs believed to be correct at the source level are actually being translated in the way we expect.