Hacker News new | past | comments | ask | show | jobs | submit | state_machine's comments login

FWIW, CockroachDB doesn't claim to beat CAP: https://www.cockroachlabs.com/blog/limits-of-the-cap-theorem


it takes longer to load a train with assigned seating -- that's why say, Amtrak might do it, but commuter rail trains, that at peak run minutes apart and want to minimize dwell-times at highly contended platforms, optimize for loading speed.


I can see why the MTA wouldn't want you telling people to go to a track before it is actually assigned -- if the train ends up on a different track, now you need to get all those people back up, off that platform an on to the new one, clogging stairs that that people who actually wanted that platform might be trying to use too. Obviously it would be nice to assign tracks earlier, so that people can head straight to the right platform, but sending people to potentially the wrong platform seems even worse.

EDIT: Penn is extremely platform/track constrained -- NJ Transit, LIRR and Amtrak are all sharing a fixed number of platforms, some of which are too short.

To maximize platform utilization, they have to wait until the last minute to finalize track assignments -- if you reserve one too early and the train ends up late, you're wasting an empty platform. Once you send a horde of people to a platform, moving them to a different one is a challenge (stairs/bottlenecks, communication, etc).


It's more serious than that even, it's a safety issue. The platforms are fairly narrow and have no railings, and they aren't designed to hold two full train loads of people at the same time.

If a full train pulls up and the platform is already full people are going to end up on the tracks. I haven't seen this at Penn but I have seen the issue happen in the subway when there are train delays. When this happens the MTA has to hold the arriving train in the station with the doors closed and clear the platform before opening the doors to let people off.

It's a nightmare. Their concerns here seem completely reasonable.


> The platforms are fairly narrow and have no railings, and they aren't designed to hold two full train loads of people at the same time.

It seems pretty unlikely that 100% of the people on the outbound train would use the app and trust the historical data to go to the platform early.


It doesn't have to be 100% - a significant number of waiting people will still present a safety issue.

The platforms are very narrow for the LIRR tracks, so holding 200% of a train (outbound and inbound) would be sheer pandemonium, and would practically guarantee someone falls off the platform. Even holding 100% of a train (just inbound, disembarking passengers) is already straining the platforms and methods of egress to their limits.

Holding even just 110-120% of a train load is very much a safety issue. I'm with the MTA on this one - the "mad dash" is horrifyingly inefficient, but is the safest course of action.

Of course, the correct fix to this is to fix the platforms such that passengers can wait at track-level without safety issue. But, of course, that's a multi-billion dollar problem nobody seems willing to touch.


People in that station actually talk to each other, so a few % of app users in the crowd might result in a large number of people knowing.

I'd hate to imagine what would happen during peak if a train came in on an unexpected track AND a different train on the expected track - it is not unusual for multiple trains to be announced at once. Then you'd have a pile of people trying to go up those narrow stairs while a pile of people were trying to go down.


Once people see others walking towards a platform (particularly if they just checked something on their phones), they tend to do the same.


But there are lots of trains leaving at any given time going to different places. There's no way to know which train somebody is heading to without asking them.


There aren't that many leaving simultaneously - plus they tend to be slotted into the same group of platforms.


Yes there are. That's the whole problem. It's complete chaos. There are several hundred people huddled in one area looking at one giant screen and there are several trains being called in sequence. How would you know that a given person was waiting for the 4:30pm Acela to Union Station to be called and not the 4:33pm Northeast Regional to Boston?

As somebody who commuted for a long time at peak rush hour back and forth from Penn Station to D.C., I can tell you that following people who "seem to know where they're going" would not be a reliable strategy.


There are dozens of platforms going to different places. Picking a random stranger and following them isn't going to get you where you're going.


So what you mean to say, with safety issue, is that government-provided infrastructure is so badly designed and ill-equipped to be used at the necessary scale attempts to improve matters must be stopped !


All infrastructure is a matter of trade-offs. Sure, they could have built the platforms 3 times wider, with funnels leading to the doors, and gates that open/close to prevent people from falling onto the tracks. But that would be an extreme increase in cost to build, and wouldn't lead to a significantly larger number of people able to take the train. This app doesn't improve matters: it causes an additional "tragedy of the commons" situation. By being the first one on the platform, you may get to claim your seat, at the common cost of making it harder for everyone else to get out of/on to the train.

Yes, at peak times there is congestion (just like at peak times there's highway congestion), and the existing infrastructure (built mostly before 1930) was built to be significantly safer and more efficient than existing systems. And 90 years later, it still is usually the most efficient and safest mode of transport in NYC. But given the record number of subway riders and record age of the infrastructure, it takes everyone pitching in a little to not make the situation intolerable. Part of that "pitching in" is "Don't go onto the platform before the train's riders have left".


Except that (correct me if I'm wrong), the platform is displayed 10 minutes before the train arrives, so there is already people waiting when the train arrives


It is displayed 10 minutes before the to train leaves. If a train is being turned over it will have already arrived and unloaded at that point.


In my experience after commuting for a few months, this is never the case. Even when the track listing is displayed 10 minutes prior to departure time, the train usually won't arrive for another few minutes. You get crowds of people where the doors will be. It's really not safe, although I've never seen someone fall so it can't be that bad.


The app isn't really an improvement if it has mass adoption, you'd just move the rush for seats from the station hall to the track platform.


It's midtown, in New York City. Infrastructure is space-constrained, a problem we've had since soon after the Dutch left. Shouldn't be a shock to anyone.


This app is a classic tragedy of the commoms. If everyone used the app, it would be worse for everyone.


Yeah, it seems obvious that they purposely don't assign the track until the last minute for a good reason, so of course they'd want to shut down any software to try and circumvent that system.


Have you ever taken a rush hour train at Penn Station? The alternative (i.e. current system) is everyone congregates on the concourse staring at the platform screens, and when a new one pops up hundreds of people flood in the direction of that platform in a mad dash. It's a mess.


It is exactly this alternative(the current system) that the Amtrak/MTA/LIRR prefer for safety reasons. Amtrak which also has the same procedure at Penn states this here:

http://www.slate.com/blogs/moneybox/2013/07/17/amtrak_s_unpe...

Although it is indeed inefficient and the MTA is completely inept, the platforms for LIRR trains are very narrow, they are shared by two trains and the escalators to get up to the main floor are also very narrow and crowded already.

So although the "mad dash" is in fact a mess, its a safer mess than overcrowding the platforms on the tracks.


I wouldn't call the MTA inept, I'd say the fact the United States as a whole doesn't invest a substantial amount of money in improving the transit systems for the nations most important metropolitan area is what's inept.

I certainly don't support cutting pensions or wages whicg means money needs to come in and Albany consistently constrains the MTA's budget requests and needs. There's probably waste but this alternative is ridiculous and Cuomo's billion is a drop in the bucket. We should probably be realistic as a nation and invest a trillion dollars in the system.


I think this is also dehumanizing.


Mass transit is dehumanizing. Cities are dehumanizing. A significant amount of the way that giant infrastructure works is making assumptions and rote; Turning the human problem of "how do I get here" into a mechanical process of "There are two ways to do so, X and Y, each of which follow these steps".

This is great for efficiency - that's why it's done. It's terrible for humanity. It's stagnant, it kills creativity, it leads to these incredible tragedies of the commons when so much relies upon the commons.


> It's terrible for humanity. It's stagnant, it kills creativity

Your other points may be valid but I'm not so sure about this one. Artists tend to cluster in big cities, often with mass transit (and sometimes without, like LA). I sincerely doubt there's any sort of correlation between mass transit and creativity.


Mediocre artists cluster. Good artists hermit. Great artists do both - But don't maintain city apartments.


Source?


I agree with your points. I am curious about your use of the phrase "tragedy of the commons" though, specifically how it relates to mass transit.

I would think the "tragedy of the commons" would people who elect to drive a car during rush hour rather than taking a similarly viable mass transit option if one exists.

Or are you using the term just in the context of overpopulation? Thanks.


I'm really not as convinced that mass transit is a good deal. Certainly, there are some places where it is, and some huge benefits. Less time/money/space spent on parking, for example. But the oft-cited statistics about energy-use-per-passenger-mile, while true, are far from the whole story - The human cost in additional time spent commuting and inflexibility of schedule are very real. It takes me twice as long to get to work by transit as by car. It's just barely on the cusp of not worth it - and significantly because SF lacks in parking. It means that I've got to time my comings and goings carefully - I used to work 40 hour weeks as 2x12-14 and then short days the rest, but I can't anymore, because if I stick around till midnight coding I can't get home. If you look at it purely from a "how much does commute cost" perspective, sure, mass transit looks cheap. But it costs humans real time to do. Time is money, and the hour a day I spend in additional commute time, trapped in a small box with smelly homeless dudes, is really not worth my time. It's only because of 'opportunity cost' that I bother with it - I couldn't spend that time making money, and it's value to me in additional entertainment is significantly discounted from my normal rate only because... well, I think I've just talked myself into quitting and getting a job literally anywhere else, because I'm utterly sick of the commute. And at 45 minutes each way, it's really not that bad!

To a certain extent, because it's so cheap to aggregate, we lose out on opportunities to differentiate. Rather than spreading out so we work close to home, we build giant throughfares that make for clear divisors - And then do insane things on top of that. Look at the commute times in and out of SF - the traffic is really bad flowing both into and out of the city, because lots of peninsula-working persons want to live in the city and lots of peninsula living persons want to work in the city. (I say this with great hypocrisy, living on the peninsula and working in the city, but at least I'm in Millbrae and not Sunnyvale).

The same thing has happened in manufacturing - It's so cheap to produce mass-market products, and they do enough in most cases, that it's basically impossible to find semi-niche products in many areas. You can buy cheap Chinese goods or pay 20x the cost for high quality American made, but there's no mid-market anymore. Every so often a product comes around that is mid-market, but when people flock to it, it inevitably goes down in quality. My example is Lands End jeans - In the 90s, they were great. Then they got popular, got bought out, and are now just another branding for cheap goods.

When working from home becomes more acceptable, cities are going to look like things of the past - Full of only collectivists who can't live without someone to praise them at every corner, and the poor and downtrodden who've gotten stuck in the ghettos. This is, of course, cyclical, and been given several names - "White Flight" being the current pejorative for one of the major cycles. But I'm looking forward to being a Solarian[1]; VR for interaction, Automated cars when I need to be somewhere or to transport goods, and high-bandwidth network links for everything else. I don't see anyone else arguing for lining fiber everywhere we run power to, but when I do, I will gladly vote for them.

[1]https://en.wikipedia.org/wiki/Solaria#Isolationists


I see, so the overcrowded cities(and by extension the mass transit) are the "commons" by which the individual is trying to reap the biggest reward from. Thanks.


Yet, at the same time, people living in cities with mass transit vs suburban sprawl (admittedly still not an 'ideal') prefer the cities for the increased sense of community, higher sense of dynamism, and more 'creative' things going on than what they might get in their their non-mass-transit suburban coutnerparts..


That's definitely debatable; I'd guess that many people globally live in cities because that's where the work is, not for any of the other aspects you mentioned.


I mean, I don't think your point is wrong but I would hardly call cities, at least good ones, terrible for humanity or killing creativity.


Following some rules is dehumanizing?


Being treated like cattle shuttled down a narrow pathway. Being forced to wade into a compressed crowd of people who apparently forget all manners and will push and shove you.

It's basically one of, if not the worst parts of every day. And there is nothing you can do to avoid it.


The alternative is having people actually end up squeezed in front of a killing machine (train) which I would think is more like "being treated like cattle" in the part that I care about than the "I have to walk down a small hallway.

Also, we treat astronauts like cattle. Squeezed into small areas, down tiny hallways. The Hugh-manatee.


There's always Port Authority!


The fact that they dont have more platforms and more trains is dehumanizing because it causes overcrowding.


This mad dash is a great secondary tourist must see.

The island's population doubles (1) each workday.

This view of everyday life for many is worthwhile to observe.

As well as "dont talk on the train" rule - but you have to ride at commuter times

(1) nyt 6/3/13 commuters from the other boroughs and outside the city nearly double Manhattan’s population, from 1.6 million to 3.1 million.


This is absurd. After commuting for 1 year less than a year I knew which track to go to for any of the trains I ended up on. And more importantly where to stand on the platform to be at a door when the train pulled in.

The idea that somehow it's unknown or occult knowledge as to which track to go to is silly, when they announce the track for the train over the PA, they sometimes say 'This is a track change', and the few hundred people who are on the platform already have to trample back up to the concourse and then back down to the new track.


You must be using the LIRR. Things are not as consistent on the NJTransit side if the house. I know with about 90% certainty which of two platforms to go to for my train. Sometimes, like Monday, they throw us a curve ball and board us on the other side if the concourse. Occasionally we even board on track 13 in the LIRR area.


I think the idea is that having an app encourages more people to do it, not that it can't be done without an app.


I've only done much less hellish Grand Central version, and I think Metro North publishes track assignments much earlier.

That said though, just imagine how much worse it would be if that mass rush was between platforms, fighting opposing traffic, instead of just from a (mostly) open waiting area.


>"I've only done much less hellish Grand Central version, and I think Metro North publishes track assignments much earlier."

There is so much more space to wait for track assignments as well as space on the grand stairwell to get down to the track in Grand Central(even with tourists) that I don't think they are comparable at all.

If the Metro North does publish assignments much earlier it's likely because its much safer to do so. Although I don't think I've ever seen people waiting on the platforms for Metro North trains in Grand Central.


Yeah, that's fair. If I have to take LIRR, I'll generally use Atlantic and switch at Jamaica if needed -- anything to avoid Penn.


If you're trying to get a seat on a train that originates at Penn, changing at Jamaica doesn't help, however.


I don't use the LIRR tracks often, but many of the Amtrak trains arrive at the same track or 1-2 tracks. Veteran travelers know where to go, casual travelers are stuck in this maze that is very difficult to navigate.


Thing is though, they could be providing that data MUCH earlier both on the displays and to a phone app. It's not like they don't decide where a train is going until it gets to the station, that would be ridiculous, they'd have to know a while in advance to make sure the track is available, clear, operating correctly, and do all the necessary switching (and more importantly, do so in such a way that doesn't impact other trains).

MTA's appeared a number of times on this website and by all accounts it's where tech innovation goes to die, most of their service is still based on switch wire systems that were built in the 60's. Whether that's due to bureaucratic inertia, inadequate funding, or unions or whatever I have no idea, but that's the real problem.


Based on the other comments here, I'm guessing they don't post train numbers until the arriving train has disembarked so its passengers can clear the platform before the horde arrives. It probably has nothing to do with technology.


Given the other comments on this issue, it's not so much that MTA hates innovation, but that those who would be "disruptors" don't actually understand the entirety of the problem.


I did not realize the physiological effects would be as severe:

> The fraction of carbon dioxide is growing: It just crossed 400 parts per million, and high-end estimates extrapolating from current trends suggest it will hit 1,000 ppm by 2100. At that concentration, compared to the air we breathe now, human cognitive ability declines by 21 percent.


This level of impairment conflicts with data from military studies, for example ...

> CO2 at 40,000 ppm for 2 weeks did not affect performance on multiple tests of cognitive function in physically fit young airmen

https://www.nap.edu/read/11170/chapter/5#54

but it is something certainly worth further investigation.


> Twenty-four volunteers, ages 18-23, were selected for their motivation and their excellent health.

If only we were all 18-23 years old in excellent health. The amount of abuse sustained and the speed of recovery my 20 year old self could sustain compared to my 30 year old self is truly astonishing.

When you're young, your body can compensate in a myriad ways you aren't even thinking about, that obviously weren't measured in the study.

It's a good start but not really relevant to the possible scenarios.

1. Dubious sample selection (perfect health, probably above average cognitive ability as well)

2. High levels/short term exposure rather than moderate levels & long term exposure (1+ year)

3. Tests were likely too simple and did not require a high level of abstraction/cognition in the first place.

I know sample n=1, but I've experienced increased anxiety and lower energy levels at ppms as low as 2000-3000, which you can easily encounter in a poorly ventilated room.


Here's the LBNL study behind the article claims for comparison ...

https://ehp.niehs.nih.gov/1104789/


But seems to be in line with NASA findings:

https://thinkprogress.org/its-taking-less-co2-than-expected-...

Also, the general safety limit for co2 is around 5000 ppm for up to 8 hours - higher than that, and headaches and other effects will manifest.

I'm quite surprised that "no effect" could be seen at 40k ppm - I wonder if there were some limits to the cognitive tests (like the difference between proving a difficult mathematical theorem vs doing some Calculus).


My father certifies hospital gas systems in the US. He's measured CO2 levels in urban areas around 498ppm. Hospital air, the air piped to patients, has a limit of 500ppm. Soon hospitals will have to put CO2 scrubbers on their air supplies just like astronauts.

Maybe head mounted CO2 scrubbers will become fashion accessories for the 1%.


How is CO2 a problem in breathable air? To humans, it's a harmless and inert gas, just like nitrogen. The real problem is too little O2, which humans require for respiration. Obviously, too much CO2 could displace O2 and reduce O2 levels, but it's not the CO2 that's an actual problem (i.e., if the CO2 displaced only N2, and O2 levels stayed the same, you wouldn't have a problem).

So having a CO2 scrubber doesn't seem to make any sense to me, you need something that keeps the O2 levels up. That may be a CO2 scrubber (pulling the carbon atom off the CO2), or it may be more feasible to just carry an oxygen bottle as many elderly people do today. I suspect the latter is the case; if it were feasible to have a portable CO2 scrubber to improve your O2 levels, they would have done it already for all these people.


This relies on several common misconceptions.

Earth's atmosphere is only about 0.03% carbon dioxide. CO2 levels high enough to cause catastrophic global warming still wouldn't displace enough oxygen to matter to humans - it would be a smaller change than a few thousand feet of elevation, which is entirely safe.

The second issue: CO2 is not inert in the human body. It's not used for any crucial reactions, but it's more relevant to us than N2 (largely inert at STP, not while diving) and vastly more reactive than He. That's why divers commonly use Trimix (O2, N2, He), and deep divers use Heliox (O2, He). CO2 is present in solution in your bloodstream at all times, partly as an output of chemical reactions and partly absorbed from the air.

Among other roles, CO2 levels are detected in human lungs - high CO2, not low O2, is what makes you feel the burning "need to breath" sensation. That's why hyperventilating is a common cause of shallow-water blackouts - it lowers blood CO2 levels more than it increases O2 levels, allowing you to run out of air without feeling it.

There's some data suggesting that elevated CO2 levels cause cognitive impairment, which can become quite serious. There's other data (e.g. from nuclear submarines) showing that humans can tolerate CO2 with minimal effect. No one has reconciled this neatly, but it's definitely not true that O2 displacement is the problem.


Very informative, thanks.


It is harmful in large concentrations as it displaces oxygen (cf. dry ice pool accidents).


True, and dangerous; this even happens naturally when volcanos displace oxygen and create lethal stretches of depressed ground. (https://en.wikipedia.org/wiki/Mazuku)

But not the issue here. CO2 is a tiny fraction of the atmosphere, and apocalyptic global warming happens well before O2 displacement becomes an issue. Bear in mind that humans can function effectively up to several thousand meters - the O2 loss from low pressure is vastly larger than any possible CO2 displacement.

If CO2 is going to have physiological effects via the atmosphere, it's based on chronic exposure and high blood concentrations. There are some studies suggesting that causes cognitive harm, and others suggesting it doesn't.


This is a controversial finding, and not well-accepted nor even abided by where it is a literal life and death matter, like in nuclear submarines [1] or the ISS. Either the LLNL experiment is somehow flawed, or systems designs that crew members depend upon for their lives for months at a time without any pause for the past few decades are poorly designed. By Occam's Razor, I'd rather look at the relatively simpler experiment first before I looked at these complex life support systems, and if anyone is to pursue the LLNL study further, they probably should start there. I'm willing to buy the hypothesis there are cognitive differences, but they would have to adequately explain what has been going on in submarines and the ISS that we missed earlier.

[1] https://wattsupwiththat.com/2012/10/17/claim-co2-makes-you-s...


Air indoors (and I'm cars!) routinely reaches these levels, easily.


In case anyone is interested in even more of the technical specifics, the original design RFC might be interesting too: https://github.com/cockroachdb/cockroach/blob/master/docs/RF...


One of the challenges for us in implementing something like LISTEN/NOTIFY comes from our distributed nature: since a table is likely broken up across many nodes, you somehow need to aggregate changes from all of them back into a single change feed wherever the listener is, and in such a way that it doesn't create a single point of failure.


Yes, change feeds (and triggers) are on the roadmap (though not yet in active development).


We're still working on integration with other monitoring systems, but the one we've tested the most and documented is prometheus: https://www.cockroachlabs.com/docs/monitor-cockroachdb-with-...

Additionally, you can get some of the same status info on the dashboard using the `node status` command (https://www.cockroachlabs.com/docs/view-node-details.html).


[cockroachdb employee]

Short answer: no.

Long answer: at their closest earth and mars are about 54m km apart, at the furthest it's over 400, with an average of around 225m km, so theoretical latency is varies between 4 and 24 minutes.

CockroachDB uses synchronous replication via raft, and that latency would cause problems as would some other setting like our window sizes and their interaction with timeouts.


> CockroachDB uses synchronous replication via raft

Deep space aside, I wish the announcement just said that! I came back to HN for insight into the paragraph about "multi-active availability... an evolution in high availability from active-active replication". Marketing... sometimes... I tell you what.


Whoops, sorry about that. If you're looking for more on how it works (rocksdb, raft, distributed transactions across multiple raft groups, etc), you might find the design doc interesting: https://github.com/cockroachdb/cockroach/blob/master/docs/de...


The 14 issues tagged 1.7.1:

  net: retry DNS lookups before failure?
  io: endless loop in MultiReader in Go 1.7
  path/filepath: EvalSymlinks is broken for relative paths on Windows
  net/http/httputil: Proxy terminates HTTP/2 stream before reading response body.
  hash/crc32: wrong output for unaligned input on s390x
  cmd/compile: incorrect assignment to uint64 via pointer converted to *uint16 (new in 1.7)
  doc: deprecation message for Transport.CancelRequest is not correct Documentation
  compress/zlib: Writer appears to ignore underlying writer errors at times.
  net: NATs client can't connect to server when client built with go1.7: "dial tcp: no suitable address found"
  doc: go1.7 release notes include typo for TLSConfig.NextProtos Documentation
  reflect: ChanOf makes "han" types instead of "chan" types
  x/mobile: Binding go mobile framework on iOS 9 with golang1.7rc6 crash when call debug.FreeOSMemory()
  net/http: nil pointer dereference in closeConnIfStillIdle
  website: retina favicon Suggested


> nil pointer dereference in closeConnIfStillIdle

What happens here? Does Go suffer from boundary access issues that C has? You know, in Rust, you don't have to worry about that, but is it the same for GO?


Go has null pointers, unlike Rust. Dereferencing a null reference type generally panics, but there are some random exceptions (e.g. indexing a nil map returns a zero value of the appropriate type).


I've run into intermittent issues with net/http (such as the defaults for HttpClient causing application failures in production). It's just a spot you learn to pay attention to. I'm glad they're fixing some of the bugs in the code because otherwise it is an incredible part of the STD lib.


I think it would produce a runtime error and return a stack trace. Someone more qualified than me should chime in though...


Yes, like this:

  package main
  
  import "io"
  
  func main() {
  	var foo io.Closer
  	foo.Close()
  }
  justin@t420:/tmp$ go run nil.go 
  panic: runtime error: invalid memory address or nil pointer dereference
  [signal 0xb code=0x1 addr=0x20 pc=0x401023]
  
  goroutine 1 [running]:
  panic(0x463ea0, 0xc82000a140)
  	/usr/lib/go-1.6/src/runtime/panic.go:481 +0x3e6
  main.main()
  	/tmp/nil.go:7 +0x23
  exit status 2


The goroutine panics. Nil dereferences are recoverable from[1], but I'm not sure how many people expect standard library code to panic.

[1]: https://play.golang.org/p/hjfaNQbOBO


> Does Go suffer from boundary access issues that C has?

It has NPE (like Java or C#), though in some conditions it'll behave more like Objective-C.


We were bit by the `closeConnIfStillIdle` bug as we didn't expect the stdlib to panic like that (also something you cannot recover from, as it happens in a goroutine which you didn't create.)


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: