Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
mononcqc
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
17 ms
·
91.
▲
by
mononcqc
11y ago
Thanks. ended up going with Cygnus CRS Orb-3, which was a rocket failure, unmanned, and also has high res reusable photos. Text is unchanged, which I believe is fine in this context.
92.
▲
by
mononcqc
11y ago
I am open to suggestions so that I can modify slides for the (possibly) next times I end up giving a version of this talk.
93.
▲
by
mononcqc
11y ago
"blow it up" was an example of a thing that "could not make sense" for rocket science as a quote. I also did not know (and currently do not know) of significant rocket explosions or failures that didn't result in th
94.
▲
by
mononcqc
11y ago
Chapter 3 of Erlang in Anger ( http://www.erlang-in-anger.com/ ) does mention them among other strategies in handling overload (3.2.2). I tried to put as much concise production experience as I could into that manual. Hopeful
95.
▲
by
mononcqc
11y ago
I think a lot of these things are experience-related, or usually cemented within a specific implementation. A lot of people may apply these principles correctly because that's what they find works best, without necessarily bringing it
96.
▲
by
mononcqc
11y ago
Author here. This is a challenging one, because it is intimately related to what is acceptable or not to your users. By default you could say that if the storage mechanism must be up and available and it isn't, then the front-end shoul
97.
▲
The Zen of Erlang
(ferd.ca)
301 points
by
mononcqc
11y ago
|
37 comments
98.
▲
Rebar3 shell (Erlang)
(ferd.ca)
7 points
by
mononcqc
11y ago
|
0 comments
99.
▲
by
mononcqc
11y ago
I'm the Fred mentioned in the quoted text. As mentioned by FLGMwt, Mnesia being a 90s database was an offhand remark done at a workshop in a discussion doing a break. The reasons I considered it a DB of the 90s is that back then, it c
100.
▲
by
mononcqc
11y ago
I would say it's a cautionary tale against making it so people get used to you accomplishing small miracles, or making sure everyone is aware you wouldn't tolerate only doing the tasks you hate forever.
101.
▲
by
mononcqc
11y ago
There's a PDF version on S3, if that helps: https://s3.amazonaws.com/ferd-ca/printf.pdf
102.
▲
by
mononcqc
11y ago
Erlang is an example of a language correctly handling these aspects, regarding time correction, drift, and so on: http://learnyousomeerlang.com/time
103.
▲
by
mononcqc
11y ago
Well the problem is obvious in mobile devices, but any asymmetric netsplit will result in a single node taking down your cluster for as long as the netsplit lasts.
104.
▲
by
mononcqc
11y ago
Have you dealt with mitigating Asymmetric partitions in Raft? http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-857.pdf shows that a single defective node has the potential to entirely render a Raft cluster useless, speci
105.
▲
by
mononcqc
11y ago
Distributed Erlang on its own is fine to run in production (particularly as a control plane for metadata between nodes) because few assumptions about reliability of the network are baked in; most of them can be made by the application desig
106.
▲
by
mononcqc
11y ago
What's the advantage of doing that vs. just using a macro defined at compile-time?
107.
▲
by
mononcqc
11y ago
The closest thing I can think of outside of using funs or macros to define the usual `delay` and `force` operators, and that currently exists, would be something like the QLC interface, which allows you to turn whatever you want into a type
108.
▲
by
mononcqc
12y ago
Yes, pretty much. I think we went short on the rebar3 descriptions just because of how known 'rebar' is as a household name. Go to almost any Erlang project, and you'll find 'rebar' or some variant. Rebar3 is the ne
109.
▲
by
mononcqc
12y ago
This implementation does rely on a lot of memory copying going on there. Rather than copying the original element to the new process, then the new mapped element back to the original process (giving you the original list's worth of mem
110.
▲
by
mononcqc
12y ago
Their own nightlies started working again recently: http://5digits.org/nightlies
111.
▲
by
mononcqc
12y ago
The longest queue is going to be in front of the tightest bottleneck, but not the central bottleneck critical to your application. If you find you have a bottleneck halfway through the pipe and you make that bottleneck go away, your true re
112.
▲
by
mononcqc
12y ago
Yeah, the text that goes behind that post in chapter 3 of http://www.erlang-in-anger.com focuses a lot more on finding the underlying true bottleneck, but I didn't feel like re-writing the same thing in many places, differe
113.
▲
by
mononcqc
12y ago
Yes, that's accurate. The loss of end-to-end principles when people use queues in a fire-and-forget manner is something I also decry.
114.
▲
by
mononcqc
12y ago
It sounds like common sense, but a lot of people use the queue as a means to widen the neck, or rather the current perceived (and measured!) bottleneck they have. Usually there is another bottleneck hidden deeper in the system, and that one
115.
▲
by
mononcqc
12y ago
Yep, that's a good point I did not mention. Thanks for providing the links.
116.
▲
by
mononcqc
12y ago
Author here. I use queues all the time. I program in Erlang and there is one unbounded queue in every single process' mailbox in every node. The problem is not queues themselves, it's when queues are used to 'optimize' a
117.
▲
by
mononcqc
12y ago
I'm the auhtor of the Erlang article on How I Start. I've felt the same in some ways because it would offer a nice comparison point, but the problem with this idea is that it doesn't let the authors pick a problem for which t
118.
▲
by
mononcqc
12y ago
Erlang has Dialyzer, which is an optional type checker and discrepancy analyzer.
119.
▲
by
mononcqc
12y ago
I've personally used Erlang in Real Time Bidding scenarios, where soft-real time constraints exist and is on the order of milliseconds. It's a fine tool for this, too.
120.
▲
by
mononcqc
12y ago
A few points: - A large system never runs on a single machine if you want any level of realistic fault tolerance. Two nodes is a bare minimum, 3 an acceptable one. - The number of nodes will always depend on where your bottlenecks lie. Erla
More ›