I did see someone pooping once. The train car cleared out pretty fast. I also got threatened twice during rush hour. When I first moved to NY, I tried talking to the good people at the counter ... never made that mistake again. After a bit, I just started taking cabs. I did encounter traffic jams periodically but felt a better experience overall. Btw .. I also have respect for NYC cabbies. They are the opposite of Bay area cabbies. I try to not use Uber when I am in NY. Anyways ... the NYC subway sucks when compared to international standards. If you travel a bit internationally, you'll know what I'm talking about.
Travelling internationally has reinforced my positive opinions of NYC's mass transit. Sure, it's occasionally gross, and certainly less polished than London or Paris, but it's 24 hour presence is truly special. It's redundancy and express/local service patterns are also unique. You seem to be able to afford cabs -- that isn't the case for a good portion of NYC's population. That I can go from Williamsburg to Inwood in ~1 hr. 15 min. for $2.50 at 2am Sunday morning....that's something special that other cities can't compare on.
I'm not excusing the cost overruns and budget mishaps the MTA is prone to, but these stereotypes of a cesspool-like NYC mass transit are dated and a disservice to their actual typical operating conditions.
Several cities in Europe that don't run 24h/day every day at least run overnight on Friday and Saturday nights. (London doesn't, since the unions are currently blocking it.)
But your point would work if you'd chosen 2am on Monday.
Copenhagen's metro runs 24 hours a day, every day, but it's small and new (and entirely automated).
Will scientists at YC Research continue the common pattern of academic research/publications? Or are there some grander plans to disrupt traditional research?
It's pretty important that YCR groups have strong ties with the existing research communities — research collaborations tend to have a multiplicative effect.
So I'd expect to see papers coming out of YCR. However, I'd also expect to see many other forms of communication (e.g. blog posts, code releases, etc). In general, we'll tune our efforts to achieve the best research results and impact, rather than to fit the existing incentive systems.
I love the accessibility and content of blog posts by members of Recurse Center. It would be amazing if scientists from YCR publish informal, yet rigorous posts for newbies.
I was at SOSP until earlier today. During the Q&A of the Chaos graph processing system, there was discussion of a previous exchange between Frank McSherry and the authors of the work ... what was REALLY cool was that parts of the original exchange happened on Twitter and via blog posts and we were hearing about it at the conference some time later :)
Unless YC is promising to fund these researchers for life they'll pretty much have to, or else they'll never get back on the treadmill once the YC money runs out.
I am a professional scientist and I have to disagree. 10 million is just seed cash that I'm sure will be magnified. But do not underestimate the cost of research. While a particular project that pays off seems (and is) a great return, salaries, equipment and conference travel consume a lot of money.
It probably depends on the type of research that you do. Drug research is expensive. But I think that you can do something like Xerox PARC (it seems like YCR might be going for something similar) with relatively little money. It appears that in 2001 their budget was $65m (http://abcnews.go.com/Business/story?id=86872). I'm not sure if their budget was larger during the 70's but that's not that much money considering what came out of there.
From what I can tell, back in the 70's Xerox PARC's annual budget that focused on computing was $10-14.5 million in today's dollars, which seems fairly cheap. But it took multiple years to develop it.
This also feels like cheating because we're targeting extremely successful research. If we knew ahead of time which research would be successful it would be a lot cheaper to do.
Erlang's HiPE compiler is apparently AOT. The challenge seems to be dynamic typing. At points, it has to guess types. I assume compiled Python would have similar issues.
You definitely can get SDR transceivers but 1) they are more expensive and not (to my knowledge) 'dongle' sized, and 2) in most jurisdictions there are understandably licensing conditions required in order to be permitted to transmit on the amateur frequencies.
If anyone with experience on SDR transceivers has some input here, that would be great!
The recent run up in property prices in most major western cities makes me think the home owning class isn't in too bad of a shape. If you own a house in Vancouver, the Bay area, Toronto, London etc. you basically won the lottery. If you are a young adult, well ... hope your parents help you out?
My parents were immigrants and not savvy enough to buy a house. I'm wondering how I can ever afford a 200K down payment on a million dollar house, and if that is in any way a reasonable idea. Taxing income is the wrong approach since people getting income are contributing to society. The lottery winners who happened to own houses in the right place .. I'm not sure what they contributed.
Very much a personal opinion from someone coding for 15 years+. I'm new to Elixir but I found it to be a joyful language to work with so far. Java is a language you code in to pay the bills. Go is not bad at all but while I've heard people remark Go is fun, it hasn't been that fun for me. A bit of ugly syntax here and there. Python is awesome but I'm tired of the v2/v3 crap and frankly don't think it is the right tool for large, multi-person code bases (e.g. Openstack). Elixir has been truly enjoyable for me. If you are a jaded dev who used to love languages, give Elixir a try. I hope you get the same joy that I am getting from it because it has an ineffable quality about it.
Thanks. Another point is that in Erlang/Elixir, if you have many actors, you will have less garbage per actor. Which means faster GC overall.
The best known example for Erlang/Beam "http throughput" is WhatsApp's 3 million+ concurrent connections per host. I don't think you get anywhere close in Akka. Maybe max out at 50K per server? Is even that possible?
Also, I'm not aware of good examples that use Akka with Java. Everyone I know using Akka seems to also be using Scala (not sure if it is just some kind of self-selection). I really can't stand Scala's syntax. I tried two or three times but I find it too easy to encounter Perl like unreadable code. Just my opinion though.
The problem is the JVM. There's a reason erlang has its own virtual machine. Without virtual machine support, doing concurrency is really just faking it, and will result in significant bugs later on that are essentially impossible to debug.
I take a neutral stance on this: the JVM isn't as amenable to the exact kind of concurrency that Erlang provides (green-threads with local GC backed by immutable data), but that isn't a fair assessment of concurrency.
Erlang (et. al. green thread models) has a method of concurrency that works well for situations you're using Erlang for. It's not the most efficient or most technically advanced mechanism for handling concurrency.
That being said-
> Without virtual machine support, doing concurrency is really just faking it
This is patently false, because it implies that:
- A VM is necessary for "real" concurrency
- (by deduction) Anything not utilizing an erlang-identical model is "faking it."
> will result in significant bugs later on that are essentially impossible to debug
I'm going to need to see an anecdote or citation for this.
Personally-speaking, I have a much easier time (quickly) understanding the execution of event-loop-backed cooperative multitasking than high-level, arbitrarily-preempted threads.
Also - I cannot see any reason why Quasar for the JVM would be any easier or harder to debug (from a theoretical, not tooling or practical standpoint) than Erlang actors.
The nuances differentiating the two models aren't great enough to merit bugs that you might see in one place or the other. Unbound, CPU-heavy tasks will cause problems for both systems.
The quasar library comes with bytecode manipulation to implement lightweight threads. It saves the program counter and local stack, and pushes it back when resuming. The space cost of context switching is reduced to its minimum.
Now this is still on the regular JVM, which will probably have difficulties JITting code that resides in those green-threads (but still better performance than erlang). Also, the entire application is subject to the regular hiccups: gc requires global safepoints, which are reached by making each thread wait when it reaches a local safepoint; on top of the stop-the-world gc operations themselves.
But things are improving: RedHat is developing Shenandoah, a GC that has STW pauses under 10ms. The only thing left is making concurrent the scanning of garbage roots(those reside in the registers and stacks). Their goal for version 2 is to get completely rid of pauses.
I've coded in Python and Go (which has compile time type safety and does inference to avoid verbosity) code professionally, and am loving Elixir. I build distributed systems and I while I love Python, I don't think it is the right language for that. Frankly, I prefer nodeJS's single thread to Python's GIL because you are under no illusions wrt concurrency. Go is better but I don't understand why channel communication across machines doesn't exist (I think it was there as an experimental feature early on but maybe I am mistaken). I'm very impressed by the capabilities of the Beam VM and hope that Elixir will let me build better distributed systems (despite the lack of type safety).
I'm trying to convince people at work to use Elixir but people seem to have language fatigue. The lack of a major company/product using Elixir is making me worried as well. But hey .. someone had to be first, right? :)
> The lack of a major company/product using Elixir is making me worried as well.
There are plenty of people using Erlang. That's good enough, IMO.
If there were ever a show-stopping problem with the Elixir compiler that couldn't (or wouldn't) be fixed, you could just write whatever functionality you needed in Erlang (Which decades of prior art exist for).
I'm surprised about the drug trial bit. I thought generics didn't need to have new trials .. they just need to have the exact same formulation. The oddness is that they need to "reverse engineer" the formulation themselves. The pill's color, shape and markings couldn't be copied though.
Can anyone knowledgeable on this critique what I wrote? I got my info during a tour of a generic drug manufacturer's plant a looooong time ago.
I believe the generic maker must show bioequivalency to make sure the thing they are making works the same as the thing the other manufacturer was making. There's probably numerous ways that making a complicated medicine can be screwed up.