Top all-time · #1607
blog.paralleluniverse.co
Company blog · blog.paralleluniverse.coprogramming
blog.paralleluniverse.co is the company blog at blog.paralleluniverse.co, writing about programming. Since 2012, 45 different Hacker News readers have linked it 120 times, most often “An Opinionated Guide to Modern Java Development, Part 1”. No feed was found, so read it on the site itself.
Sometimes recommended · 9 of 35 sampled comments recommend it?
Why HN links it
HN readers link this blog for its posts on Quasar, which adds lightweight threads and actors to the JVM, and for its 'Modern Java' series. Comparisons with Akka and posts on Little's law also come up.
Summarised by Claude from a sample of 35 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- An Opinionated Guide to Modern Java Development, Part 113 people · 15 mentions · first linked 2014-05-01
- From Imperative to Pure-Functional and Back: Monads vs. Scoped Continuations7 people · 15 mentions · first linked 2015-09-05
- Why Writing Correct Software Is Hard5 people · 15 mentions · first linked 2016-07-25
- Show HN: Lightweight Threads, Channels and Actors for the JVM5 people · 9 mentions · first linked 2013-05-02
- Erlang (and Go) in Clojure (and Java)5 people · 6 mentions · first linked 2014-02-04
- Benchmarking High-Concurrency HTTP Servers on the JVM3 people · 3 mentions · first linked 2016-04-06
- Little’s Law, Scalability and Fault Tolerance: The OS is your bottleneck3 people · 3 mentions · first linked 2014-02-04
- Go and Quasar: a comparison of style and performance2 people · 2 mentions · first linked 2016-05-04
- Implementing, Abstracting and Benchmarking Lightweight Threads on the JVM2 people · 2 mentions · first linked 2014-02-06
- Introducing Comsat and the Parallel Universe Stack2 people · 2 mentions · first linked 2014-01-22
What Hacker News says?
The biggest take I have from this post is that apparently they have created go-like lightweight threads for the JVM with Quasar ( http://docs.paralleluniverse.co/quasar/ ) which is really interesting. If I understand correctly, Quasar uses bytecode instrumentation to enable user-mode threads for the JVM, and they claim they did benchmarks that show X6 to X12 better performance than native JVM threads: http://blog.pa…
Comment linking /2014/02/06/fibers-threads-strands/
on “An Opinionated Guide to Modern Java Development, Part 1”Submitted An Opinionated Guide to Modern Java Development, Part 1 as a story · 553 points
HN discussionA bit of a hassle, but Comsat will make it dead-easy (right now Comsat runs on top of any servlet container, but it will also run directly on top of Netty/Undertow). Take a look at our Comsat web actors: http://blog.paralleluniverse.co/2014/01/28/web-actors-1/
Comment linking /2014/01/28/web-actors-1/
on “An Opinionated Guide to Modern Java Development, Part 1”Submitted No More Callbacks: 10,000 Actors, 10,000 Threads, 10,000 Spaceships as a story · 339 points
HN discussionThe days of Java being verbose are over with Lambdas and Method References. I don't know what you mean by "getting in the way". If you have time to spare read this: http://blog.paralleluniverse.co/2014/05/01/modern-java/
Comment linking /2014/05/01/modern-java/
on “Building Web Apps in Go”Submitted An Opinionated Guide to Modern Java, Part 2 as a story · 313 points
HN discussionLightweight Threads, Channels and Actors for the JVM: http://blog.paralleluniverse.co/post/49445260575/quasar-puls...
Comment linking /post/49445260575/quasar-pulsar
on “Porting dl.google.com from C++ to Go”Submitted An Opinionated Guide to Modern Java, Part 3: Web Development as a story · 226 points
HN discussion>If you want to make 300,000 threads in Lua or Go, go right ahead, but if you port that application to Java you're going to have a bad time. In Java itself perhaps, but with Java you can use lightweight threads via Quasar. http://blog.paralleluniverse.co/2013/05/02/quasar-pulsar/ "a single machine can handle millions of them"
Comment linking /2013/05/02/quasar-pulsar/
on “What Color Is Your Function?”Submitted A New Approach to Databases — Simulating 10Ks of Spaceships on my laptop as a story · 143 points
HN discussionstash is not the same as selective receive at all. With selective receive you can do simple, intuitive nested receive blocks (see the Pulsar Clojure examples here: http://blog.paralleluniverse.co/post/49445260575/quasar-puls... or any Erlang code). And yes, you can configure Akka for certain types of usage, but it is anything but simple . We value the simplicity and intuitiveness that are at the core of Clojure and…
Comment linking /post/49445260575/quasar-pulsar
on “No More Callbacks: 10,000 Actors, 10,000 Threads, 10,000 Spaceships”Submitted Parallel Universe open sources a novel in-memory data grid as a story · 117 points
HN discussionhttp://blog.paralleluniverse.co/rss.xml
Comment linking /rss.xml
on “An Opinionated Guide to Modern Java, Part 2”Submitted Show HN: Lightweight Threads, Channels and Actors for the JVM as a story · 116 points
HN discussionSimilar to Quasar then I assume. I'm sure native fibers would be faster, but bytecode is fairly close to ASM and i don't think the performance difference is large. Benchmarks I've seen for Quasar show no performance difference to regular threads at low paralellism but it can scale much higher Found a great article comparing Akka's Actors vs Quasar http://blog.paralleluniverse.co/2015/05/21/quasar-vs-akka/
Comment linking /2015/05/21/quasar-vs-akka/
on “Comparing Languages for Engineering Server Software: Erlang, Go, and Scala/Akka [pdf]”Submitted Capsule Shield: A Docker Alternative for the JVM as a story · 113 points
HN discussion> Do you have some pointers to your work? At the moment we're not open-sourcing the spec (I'm an engineer, not an academic) but we might in the future. We've opted not to even try to prove the system's correctness, as that might take decades (it's far more complex than, say, seL4). Instead, we're just formally specifying it, and model-checking it with a finite model. The software in question, however, is itself open…
Comment linking /2012/08/20/distributed-b-tree/
on “The C standard formalized in Coq”Submitted Reactive (Dataflow) Programming in Java and Clojure with Quasar and Pulsar as a story · 71 points
HN discussionIf you want to run operations in parallel and then "join" them, you need some joining mechanism. A fiber itself can be joined and return a value, so in Quasar, Fiber implements Future. But that's semantics: with fibers, if you want to run operations in parallel, you spawn more fibers; if you then want to join those operations -- you join the fibers. Of course you can have long-running fibers that interact with one a…
Comment linking /2014/02/20/reactive/
on “An Opinionated Guide to Modern Java, Part 3: Web Development”Submitted Distributed Actors in Java and Clojure as a story · 71 points
HN discussionThe fact that it's not using standard JVM threads? His blog post describes how everything works: http://blog.paralleluniverse.co/post/49445260575/quasar-puls...
Comment linking /post/49445260575/quasar-pulsar
on “Mio: A High-Performance Multicore IO Manager for GHC [pdf]”Submitted From Imperative to Pure-Functional and Back: Monads vs. Scoped Continuations as a story · 58 points
HN discussionFor those who aren't familiar - have a look at this tutorial http://blog.paralleluniverse.co/2015/03/09/up-and-running-wi...
Comment linking /2015/03/09/up-and-running-with-comsat-screencast/
on “Dropwizard 0.8.0: Java framework for ops-friendly, high-performance web services”Submitted Quasar and Akka – a Comparison as a story · 49 points
HN discussionWhile I have in general sworn off java, and is rather enamoured by clojure's lein build tool -- I enjoyed the recent post (that was on hn as well): http://blog.paralleluniverse.co/2014/05/01/modern-java/ It does appear grails manage to expose many of the good parts of Ivy/Maven while keeping build-files reasonably sane -- and crucially it appears to offer a pretty solid story in terms of "predictable future deployme…
Comment linking /2014/05/01/modern-java/
on “Go: Best Practices for Production Enviroments”Submitted Writing an MMO with Web Actors as a story · 47 points
HN discussion> you're effectively talking about a secondary, novel type system, right? Yes, exactly. The main reason I prefer language-level effects rather than monads is for composability with normal imperative control flow. Monads are written in terms of higher order functions passing closures around, and that gets really messy in a language where you not only have early return and loops with break and continue, but you also h…
Comment linking /2015/08/07/scoped-continuations/
on “How Rust Is Tilde’s Competitive Advantage [pdf]”Submitted Implementing, Abstracting and Benchmarking Lightweight Threads on the JVM as a story · 39 points
HN discussionYou can plug Quasar/Comsat in to get lightweight threads http://blog.paralleluniverse.co/2014/01/22/introducing-comsa... RatPack is a nice async microframework
Comment linking /2014/01/22/introducing-comsat/
on “Java REST framework Dropwizard 1.0 released”Submitted Little’s Law, Scalability and Fault Tolerance: The OS is your bottleneck as a story · 39 points
HN discussion