skysight-inc/HackerNews huggingface dataset:
This isn't entirely accurate. BigTable was Google's earlier cloud database, and it's certainly non-traditional, and you have to build your application without traditional consistency guarantees, the way you describe.

Spanner doesn't exactly hide the details, but it lets you make transactions that span multiple shards. You still eat the cost of the transaction, you're just free from having to implement it at the application level, which is a more difficult and error-prone way of doing things. The bottom line is that if you need consistency, it needs to be implemented somewhere in your stack. If you don't need consistency (analytics workloads come to mind) then you have more flexibility with your database.

Disclosure: Google employee, reconstructing what I know from published information.
There's a bunch of tools that Amazon customer service reps have, and procedures, that have come directly out of Jeff doing customer support work every now and then, e.g. the Andon Cord (any customer service rep can pull any item from sale worldwide, instantly, through the andon cord process, from which a team of dedicated staff evaluate the product and why the cord was pulled).

http://www.shmula.com/customer-service-andon-cord-jeff-bezos...
I suggest mentioning in the title that it concerns the US-border, I travelled across a lot of international borders, that didn't care. Only some international borders are a problem, one of these, the US one.
Offer strategy and design. Most people with ideas and a little bit of funding need this kind of help the most.
I don't think that comparison holds. It's easy to push 50k+ on a single node, you're basically only resource bound on that machine. Pushing 20k+ on something that's globally consistent spread out over so many instances is a different exercise entirely. It also depends on the level of consistency you're asking from Cassandra. You'd probably need to set this to EACH_QUORUM or ALL to mimic the behaviour Spanner gives you.

And yes Cassandra will scale linearly-ish as long as you're in the same datacenter. Try running a geo-distributed 30-node Cassandra ring and it's a whole different story at that level of consistency and availability.
My supermarket had a sale a few weeks where some shitbox Android was $5.99. I think they normally retail <$30
My first Microsoft product was MS-DOS 3.3.

Borland had better language tooling, but they lost their way, and Microsoft got Anders in the process as well, so in a way I consider that Turbo Pascal spirit lives in .NET, to a certain extent. :)
It's targeted to large datasets more than companies. There isn't really any advantage of a single node Cloud Spanner instance over Cloud SQL. Cloud Spanner becomes worthwhile when you have more data/throughput than a single node system can support, at which point the pricing is competitive with other options.
I spend a few days in the support trenches now and then to see what our agents were commonly facing when dealing with clients. One such day, it became apparent that most calls were investigating credit card charges since we're a SaaS that powers many sites. Watching the CSRs navigate through an ugly and slow transaction search screen made it painfully obvious we need to re-tool that for them. Within days we had a much faster db query and more flexible search parameters that helped them quickly find transactions. I'd often poll the CSRs for new feature requests and look for common threads. A small % increase in efficiency over many reps adds up to alot of $$$s saved and customer satisfaction.
Given multiple phones, how do you legally establish which one is "main"?
> For example, lots of bands work very hard to put on shows that are affordable for their fans. Scalpers taking advantage of the situation is an example of this-is-why-we-can't-have-nice-things.

Don't believe their hype. If bands wanted to make shows cheaper they only have to do more shows.
It's not redux itself which has too much magic in it, just your application flow that becomes magic when using redux.

> How? Components take props. They're just as independent as they were previously.

But in raw react it's straitforward: props are properties passed in the jsx tag of the element. With redux your props just pop out of nowhere when some event is dispatched somewhere in your code and your (smart) component can also change any other component's state without you knowing it. I know this kind of behavior can be useful sometimes (because you exactly want to do that) but in many situation you don't need it (in the same app I mean).

My problem with redux is that it makes the remote control implicit instead of explicit. Plus you don't always control redux by yourself but are also encouraged to use a lot of librairies that tamper the global state behind your back: redux-router, redux-form, etc.
on a scale of 0-9, I'd put factory reset at about a 5. I'd wager there's still software out there that could do a raw read of the SD storage device's blocks. Unless Apple and friends have the device reset go to extra measures that tell the drive (at the chip-level, not the OS) "report all zeros" when read from, I think to increase your safety to "level 9" you should overwrite the disk by copying a large file several times until all the free space is consumed. Even then, flash drives have more physical storage than they report, but accessing those blocks would be pressing the edge of whats practical except in the most exigent situations.

Edit: I didn't realize virtually all phones' storage is encrypted nowadays.
Were you also using OCX for the ASP pages?
I've read a lot of classic literature, but I always assumed this one was some sappy historical romance novel. After reading your description, this will be the next novel I read.
Reply: "Ask the judge in six months."
> From the rest of the article it seems like the wire protocol for accessing it is MySQL. I wonder if they mean to add a PostgreSQL compatibility layer at some point.

I doubt it, the spanner is not even offering full MySQL capabilities, so it's unlikely to to support any advanced PG SQL.
"No, this is a cheap backup phone that I intend to throw away if it leaves my possession."
But it makes sense in this case. The system guarantees CP. But as customer it looks like you're getting CA as well, because A is so high. If you drink the kool-aid, you get C & A & P.

The kool-aid isn't too bad, though if they can measurably guarantee A > 99.999999%, I'm happy to round off to 100% and call it CAP.
It would be nice if there were a feature built in to phones to facilitate this. Like, on the lock screen, an emergency wipe button that runs a procedure you specify (log you out of everything, obfuscate which services you subscribe to, etc) and this way as you're going through customs, you can gauge your risk and at any point you feel uncomfortable, you discreetly click your button before smoothly handing over your phone and password with a warm smile.
Centuries of geomagnetic variations recorded by royal Judean stamped jar handles
No, but they can be detained and harassed - just what happened to the fellow mentioned in the article.
"No, officer, its the phone I carry when I travel. I worry about it getting stolen."
I'm interested to see how Apple will react to this, given their history with the FBI. Right now, you can connect your iPhone to a computer and get all the information off it - doesn't matter if you are iTunes or Cellebrite. It'd be good to have a permanent way to disable this ability in the future, so that your phone data cannot be siphoned out, even if you provide the PIN. Of course, that's not the only way for data to be extracted, but all other options would be considerably slower and less practical.
Option 1, why did you bring decoys? You should probably sit here in this cell for a bit while we work out what the fuck you're doing.

Option 2, they can't stop you from entering but they can make you enter directly into a jail cell, or generally make your life miserable. See the owner of cock.li, who had all of his electronics seized twice.
> Yeah sorry I didn't mean to imply that you don't have concrete goals (although I couldn't find them explicitly stated in your website), only that this kind of "rethinking computing/storage/interaction" projects are often hard to approach from the outside.

Ah, infer and imply - perfect for ibGib! I say this because I didn't make that inferrence about concrete goals. It was more of like an event that prompts more attention to the concept of concreteness. As for the website, I hope it is quite obvious that is a WIP! ;-) I'm not a great front-end person, as I am super abstract and backend-ish, which segues nicely into...

> How easy is it to detach the engine from the user interface in ibgib?

The UI/web app is totally just a view into the engine (which is itself just the current expression of the "concept of ibGib"). It allows us to explore these abstract concepts more concretely. The plan is to have a CLI, an API, and possibly an isomorphic secondary implementation that allows for occasionally disconnected scenarios. The POC was attempted in isomorphic client/server javascript/typescript, but the complete parallel/concurrent aspect of it was too unwieldy. Elixir (Erlang and the BEAM(!)) turned out to be ridiculously well-suited for it, and their community and documentation is stellar.

> I'd like to create something less "bubbly" for myself, but I could learn about how you use your simple data model to build domain objects.

To me, this is incredibly easy to do. But I'm not sure if DeepUI's HN thread is quite the right venue for such a thing. I would love to work with you (and anyone else interested) in a GitHub issue. I am holding off on doing my own Show HN because I want a couple more specific features before doing such a thing. (I wasn't planning on speaking this much, but the comment was just too perfect).

> Just curious, how does a data model touch religion? :-D

ibGib is less a data model and more a projection of a certain type of logic...it's a "meta-logic", which ends up being the logic. This is similar to how any turing machine can emulate any other turing machine. The point is that I've been developing this logic for just about my whole life. I was that kid who slept through class, did no homework, got 800 SAT/36 ACT math scores, etc. But axiomatic systems, and the process of actually applying math, and proofs, rigor, etc. all didn't sit well with me. Neither did religion. Now it does. But that's a perfect opportunity for a GitHub issue or an ibGib. I don't have notifications implemented yet, but collaborating is actually implemented in that you can add comments/pics/links to anyone's existing ibGib that you have a link to.
Fun fact - the "border zone" in which your 4th amendment rights are suspended and you are subject to search, is 100 miles wide and overlaps where the majority of Americans live and work

https://www.aclu.org/other/constitution-100-mile-border-zone
> Since most of our private data is stored in the cloud — and not on individual devices — you could also reset your phone to its factory settings [...] Then if you’re asked to hand it over, there won’t be any personal data on your phone

This makes me wonder: is it true? Is the data truly unrecoverable if you factory-reset your phone? I doubt so. But maybe there's some special tool to truly wipe a device (say like the equivalent of DBAN)
Usually dissenting comments wind up banned on many sites for "trolling".

Here on HN they tend up being banned with the excuse of "starting flamewars".
I was in the same situation a year ago. Eventually found Vultr that allows attaching additional "disk instances". But despite that I would choose Linode for any resource-balanced project.
> Or use tabs to manually center things rather than use the center button. (...) We really do need to make software easier/more intuitive.

First thought: what if the software could guess that you're trying to use tabs to center text, and offer a hint to use the "center" button instead? Then I realized that Microsoft Office already went this way once, and we all know the result.

It's a tough thing, making people use your software well, especially if the target audience is not to be expected to actually want to learn anything.

Makes me wonder though, where does the difference between Word and e.g. Photoshop come from? Both are professional tools, but with the latter, you don't get people stuck at the most basic level and utterly clueless. They all know this is a tool and they need to learn to use it.
Is this all the work of Humble Bundle, or are they just organizing the developers who are donating their wares?
Result of option 2: "Okay sir, please come this way for an inspection of your rectum"
My largest frustration with technology and specifically software developers is that they don't exist to code but most in the field seem to forget that simple fact.

They exist to solve real world problems for people, using software as a tool. I don't know how anyone can possibly do that even if they don't actively engage their user base and proactively solve workflow issues the end-users may not even know are technically possible.

Very frustrating to watch entire teams spend years on internal corporate business logic apps and never even once spend time with the teams consuming them. The results are always entirely predictable.
Thank you! I already put the book source online. You can use Lyx to edit the book source file.
> Why can't they meet the demand by renting a larger venue?

For a variety of reasons. If Sting reunites with The Police and goes on tour- sure, rent a football stadium. Some bands prefer smaller, more intimate venues. Some may have a hard time competing for the limited spaces at larger venues. Some may choose to avoid that level of fame. Who knows? It's none of my business.

Bands are always free to chase as much fame as they want, and to make their own policies about pricing or resale or whatever. I just think it's a little dystopian to say they're required to zealously follow some sort of capitalist ideal.

> Banning ticket resale is also expensive at scale.

Checking tickets at the door doesn't get much more expensive if you also require showing an ID with a name that matches the name on the ticket. You can even use the barcodes on most IDs, no fiddly reading required! Remember, you're trying to keep out the people who capitalize on scale, so if somebody sneaks in with a resold ticket and a corresponding fake ID, who cares? A 99% solution is fine.
I would add QuickSight to that list https://quicksight.aws/
That probably came off as more offensive than I intended. I just feel a more decentralized internet is a stronger one. Not assuming any nefarious intent.
I use OVH. Their support is horrendous though. For example, I put in a support request at mid-day this Saturday to ask if their geo-ip feature where you can select which country you want an additional IP to appear to be from, meant that the IP address actually terminated in that country. They didn't get back to me until this morning (3 days later), and the response was a bit vague.

I bought some new IPs 4 hours ago for my VPS. I've had an automated response to say they've taken payment. Do I have the IPs? Not according to the control panel. I imagine I'll get them at some point in the next 24 hours. shrug If not, I'll put in a support request to ask where they are and maybe wait another 2 or 3 days for a response.

When I signed up a few months back, I purchased my first VPS on a Saturday. At no point did they tell me that my order needed to be manually checked. I eventually got my VPS on Monday morning.

Does anyone even work there on the weekend?

Amateurs
Cloud Spanner is currently a regional service, not a global service. So you would only lose availability for failures within the region.
>citizens can't be blocked from re-entering at the border.

Well, sort of. They have to let you in, but you can be held more or less indefinitely if you're suspected of committing a crime, or not complying with the border agent.
The area you are frog marched into is strictly no devices allowed, if they see you with any electronics in your hand you will be pounced upon. This is very obviously because people try to destroy evidence they have on their devices once they discover they are screwed.
I'm always amazed that one can tip over a soft drink (with the lid on) and then the thing will explode everywhere when you try to open it, yet it was transported possibly thousands of miles over all sorts of rough terrain, jostled about, mishandled, loaded and unloaded quickly by forklifts, then stacked on shelves by hand, and the only thing it does when you open it then is just make a noise.
Which on my opinion, failed mostly due to the tension between WinDev (C++) and DevTools (.NET), than anything else.

Projects like Singularity and Midori prove that if the willingness was there to actually cooperate, they would have managed it.

Now we have .NET Native/UWP, which is basically the original idea of .NET when it was still called COM+ Runtime and AOT compiled.
I agree. Skills should be transferrable.

I've seen friends who can do mail-merge in Word but cannot navigate the internet on a desktop with the ease and speed I can because they learned mail-merge in school but never bothered to browse internet on a laptop/desktop (instead they use phones all the time).
Doesn't seem necessary if you had disk encryption enabled. The data remaining unerased on the disk is already meaningless without the key.
I agree a no bandwidth premise challenges a many assumptions -- I actually started with the thumb drive bit (even available in Sweden from whence the question comes) -- particularly assumptions about content delivery.

Anyway, I'm not advocating Smalltalk even if I think it's a good idea to seriously consider old technologies. My thoughts were more along the lines of '30MB' as of the same logical form as that time I thought, '180 KiloBytes! Why would I ever need two floppy drives?'
I really don't like that argument. Nobody is claiming that the Gnome dev's had to maintain GTK for everybody, or that it was their job. But it would be really nice, and it is disappointing that they don't.

For very long, the focus was ambiguous, and for some devs it was intended as a cross-platform toolkit (that's why there are Mac and Windows ports). Only "recently" (a few years) the focus has been on Gnome only.

> they could have easily forked GTK2 or 3 and maintained their own independent stable toolkit.

They could have, but almost nobody wants that. There is little utility in making yet another toolkit for a couple of new apps. What people want is to keep certain features in the mainline GTK, so mainline GTK apps retain them (non-CSD titlebars[1], icons in menus, stock actions, window-resize grippers, ...[2])

About code churn; I find the new versioning scheme of GTK particularly frustrating and backwards. Now they do have "stable" versions, but what they do is once they declare a version as stable, they break ABI, change the version number, and move all development to a new version. I think this is a useless definition of stable: People can already just throw the .so files in with their app if they want something frozen in time, there is no need for that kind of "stable" release.

What they used to do (in the late Gtk 2 days) was to keep backwards compatibility (within reasonable bounds) while adding new features. This is what I'd call stable - write code against 2.18, and it still runs against 2.28 a few years later, supporting new features and bugfixes. Now, that mode of development is harder, I understand, and they have no obligation to go that route. But it would be really beneficial if they want GTK to succeed. And I really want to like and use GTK (I prefer it and Gnome to some extent over Qt and KDE), this is why I get a bit worked up about the state of GTK...

[1] The titlebars are a bad example, AFAIK you can still get server side titlebars in the latest GTK.
[2] There are so many lost features, I actually made a list and at one point wanted to make a "Gnome Feature Graveyard" website in protest.
One thing to note is Spanner's transactions are different compared to what you get with a traditional RDBMS. See https://cloud.google.com/spanner/docs/transactions#ro_transa...

An example is the rows you get back from a query like "select * from T where x=a" can't be part of a RW transaction. I believe because they don't have the time-stamp associated with them. So, you have to re-read those rows via primary key inside a RW transaction to update them. This can be a surprise if you are coming from a traditional RDBMS background. If you are think about porting your app from MySQL/PostgreSQL to Spanner, it will be more than just updating query syntax.

Disclaimer: I used F1 (built on top of Spanner, https://research.google.com/pubs/pub41344.html) few years ago.
React and LiveScript = Love
Show HN: React Studio Public Beta 2
I understand what he's saying. It's marketing.

There's nothing wrong with saying it's CP, but since we control everything there's extremely rare P. Then he can show availability numbers (which he kinda does).

Saying it's "effectively CA" defeats the point of the CAP theorem, which says you have to make tradeoffs. See: https://codahale.com/you-cant-sacrifice-partition-tolerance/
It would be very interesting to have your product at the 200-300$ pricepoint. Currently, the lowest tier starts at almost 2000$ per month for the high availability version.

I'm not trying to compare on a per-mb level, but it would be nice for smaller scale workloads.
This is a very narrow concept of efficiency. The person who drops $500 on a ticket doesn't necessarily like the band more than the person who can only afford $50. People are always citing models of price efficiency forgetting that perfect competition only obtains under very limited conditions, and that participants are theoretically free to enter or exit the market at any time.

Bands don't generally want to maximize revenue from any given gig, they want to maximize fan loyalty because it's the dedicated fans who spend the most money over the long term. Overly simplistic pricing models don't account for this. In economics your aim is to maximize utility. Money is only a proxy for this, and often an inaccurate one.
It's always a risk.

We're fortunate to live in a timeframe where this sort of bullshit has been unusual up until now for most people.

Ask a US citizen of Pakisanti descent about travel to India sometime. International conflict gets taken out on poor saps trying to travel all of the time. Sometimes it's petty chickenshit, sometimes real.
All Apple devices are AES encrypted with a combination of a key on flash in the CPU, and a unique static key in the CPU core. "Erasing" the phone just removes the key, rendering the bulk flash storage completely useless. There's never any data stored which is not encrypted.
Welcoming Jon Galloway as the New Executive Director of the .NET Foundation
> Practically speaking, I would be a happier person today if I hadn't read that part of the spec, and instead persisted on in blissful ignorance of the element's intended semantics. Thanks, specs.

Hear hear! I found this hilarious and speaking to a shared feeling about some specs.

Of course, I kind of understand why these WTF elements make it into the specs. Maybe it's some stupid corner-case that the first implementor's code handled in an odd way because the code was simpler. Maybe there are other interactions that made it simpler to have this case be weird so that it would at least be consistent with that case. Most often, of course, it's because some vendor's code is a buggy mess of spaghetti code that can barely do the most basic stuff without falling over.

We've all been there... ;)
1) It's written in a functional way where you don't mutate the initial list. Edit: I guess you could iterate once and populate both left and right sides at the same time, but that would make the code more verbose (personal bias).

2) What do you mean?