Hacker Timesnew | past | comments | ask | show | jobs | submit | more rfonseca's commentslogin

Here's one way (YMMV) of reading academic papers. It usually takes time, and a couple of passes, and you may try to understand the ideas and impact first, to then move to the design/implementation, and the experiments that demonstrate the paper claims. http://ccr.sigcomm.org/online/files/p83-keshavA.pdf


This is pretty cool. Have you considered not killing the instance after the user disconnects, but pausing the container instead? This opens up the whole tradeoff space between how long you keep the state vs cost to the infrastructure/price to the user.


In the case of containers it gets tricky because of how it interacts with the scheduler (e.g. if a node is idle but has a bunch of paused containers that could be unpaused at any time, the scheduler has to decide how to proceed), but I love the concept. It's something I've thought a bit about in a world where the server can be compiled to WebAssembly, because it's imaginable to suspend it and serialize the memory state so that it can be sent off to storage somewhere and pulled out when the next request comes in. This was actually part of the motivation behind a library I wrote called Stateroom (https://github.com/drifting-in-space/stateroom), which creates a stateful WebSocket server as a WebAssembly module, but I haven't yet implemented the ability to freeze the state of the module between requests.


This all makes sense, except for "Don't choose digits from your favorite irrational number"... You can choose whatever combination of numbers you want, and find it in your favorite irrational number if you search long enough :)


> This all makes sense, except for "Don't choose digits from your favorite irrational number"... You can choose whatever combination of numbers you want, and find it in your favorite irrational number if you search long enough

You're not reading it right. You don't disqualify digits for occurring consecutively in the expansion of an irrational number. You disqualify digits if the method you used to pick them was to think of an irrational number and extract some of the digits. That is a method that other people can also use.


I’m pretty sure he read it right, the smile at the end indicates he was joking.


> the smile at the end indicates he was joking

This is not a universal convention.


It doesn’t have to be.


And in the instant context, it is not suggested at all.


Good thing we have more than instant context then :)


No, we don't? Perhaps you're not familiar with the meaning of "instant"?


Yeah I guess I don’t. Why don’t you explain it to me? You seem to be quite a smart guy who picks up on everything. Please tell me more about how you are right and I am wrong.


> Please tell me more about how you are right and I am wrong.

Sure. So far you've claimed that (1) the smile at the end of rfonseca's comment should be viewed as good-natured and not mocking. This is not true of such expressions in general, but you've also claimed that (2) you have special knowledge, external to the thread, indicating that (1) is true.

You haven't bothered to support either claim, except to the extent that (2) supports (1); (1) is far from certain and (2) seems extremely unlikely, so unlikely that I surmise you didn't realize what you were saying.

"The instant context" is a common expression which uses "instant" in the sense 4a given to the adjective here: https://www.merriam-webster.com/dictionary/instant


The reason is that there isn't that large number of named/popular irrational numbers and you are likely to choose some digits close to the start (say within couple thousand digits). Good chance somebody else will do the same. I know personally two people who do this (chose consecutive digits from an irrational number).


My favorite irrational number is ϕ(1/10). Can you help me find (1; 2; 3; 4; 5; 6) in it in base 10? ;)

All normal numbers have the property you mentioned, and nearly all irrational numbers are normal, but there are some that are not.


What is the phi function that you use here? If that's Euler's totient, then that does not seem to be well-defined for rational numbers...


Also, the set of “typical” numbers that we actually can prove are normal is quite small.


We can prove that almost all irrational numbers are normal, which is a quite large set. It's just when we pick out a particular irrational number that we have difficulty proving normality (unless that irrational number was intentionally constructed to be normal).


0.101001000100001... is irrational.


Not necessarily. It depends on the combination of numbers (and the irrational number).


Indeed not every irrational number has this property, for instance you could create an irrational number using only the digits 1 and 2, but some irrational numbers do have this property.

Until I did some research a few minutes ago, I thought this property was the irrational number being a "normal number"; however, that is not the case. That all said, a Normal number definitely has this property and I don't think having this property implies normality, but I don't know either way.

An interesting fact though is that almost all real numbers are normal, which means pretty much every irrational number has this property, though not every irrational number. However, we still don't know if pi, e or square root 2 are normal.


> I don't think having this property implies normality, but I don't know either way.

Having this property cannot imply normality. Imagine an irrational number z which has this property, and another number z' constructed from z by taking the first 1 digit of z, appending 1 "2", appending the first 2 digits of z, appending 2 "2"s, appending the first 3 digits of z, appending 3 "2"s, and so on.

Using e as an example, our z' would begin 2.7 2 71 22 718 222 7182 2222 71828 22222...

z' is irrational and shares the property that every sequence of digits can be found in its decimal expansion. But it is obviously not normal; over half of its digits are "2".


Interesting, my first inclination is to be skeptical that the property would still hold, since we're "potentially" slicing up a necessary sequence and adding 2s in the middle.

However infinities are weird* and I think you could construct a proof by contradiction making use of the fact that a sequence of N digits is embedded in infinitely many longer sequences most of which that won't have been broken up by the inserted 2s.

* I'm always skeptical when dealing with infinities and probabilities. Human intuition doesn't gel well with either concept.


Shoring up places where I thought my proof was weaker:

- I rely on the assumption that an irrational number with this property exists. (If it didn't, then the property would imply normality.) This is easy to fix; Champernowne's constant has this property and so the assumption is valid.

- I assert without proving that z' is irrational. We can prove this using the definition of a rational number as one whose decimal expansion repeats after some index. Since z is irrational, somewhere in its decimal expansion there is a digit not equal to 2. (Otherwise, every digit of z would be 2, and z would be the rational number 2/9.) Since z' successively repeats larger and larger stretches of z, this suffices to show that, for any index i into z', there is a higher index j > i such that the jth digit of z' is not 2.

- But we also know that a sequence of n "2"s in a row can be found within z' for any positive n. Assume that the jth digit of z' is not 2. Since we know that a sequence of 2j "2"s occurs later within z' -- it can't occur earlier because not enough digits have yet occurred -- any cycle in the digits of z' cannot yet have begun by index j.

- But since there is no maximum index into z' beyond which all digits are not 2, a cycle in the digits of z' cannot have begun at any index into z'. This shows that z' is irrational.


> Since we know that a sequence of 2j "2"s occurs later within z' -- it can't occur earlier because not enough digits have yet occurred -- any cycle in the digits of z' cannot yet have begun by index j.

This is wrong -- the cycle might begin at j and continue into a huge series of 2s.

But we cannot yet have completed one cycle by index j, and this property can be extended -- there is no index into z' at which one cycle could have been completed, and hence the digits of z' never cycle.

A much simpler proof that there is no cycle goes like this:

Suppose there is a cycle of length n. We know that a stretch of 2n consecutive 2s will appear after the beginning of the cycle. This implies that the cycle consists entirely of 2s. We also know that a non-2 digit will appear after the beginning of the cycle. This is a contradiction; there cannot be a cycle of any length.


> my first inclination is to be skeptical that the property would still hold, since we're "potentially" slicing up a necessary sequence and adding 2s in the middle.

No. If the sequence you want occurs between places a and b of z, then it is a substring of the full sequence between places 1 and b of z, and all such sequences are included within the expansion of z'. (Going by example again, if you're interested in the sequence that occurs between decimal places 41,028 and 315,001 of z, then that sequence will occur within the part of z' that repeats places 1 through 315,001 of z.)


> However, we still don't know if pi, e or square root 2 are normal.

The math is somewhat beyond me - at least, without digging into the formal proof - but my understanding is that we can prove that pi cannot be represented as a ratio of two integers, and therefore cannot have a finite decimal representation.


We know all these numbers are irrational. That's been known for a long while. Normal numbers are something different, however.

You can look at the wikipedia definition[1], but that involves a few levels of definitions that I don't know, like density, but the gist is that every sequence of N digits occurs with equal frequency to every other sequence of N digits in the expansion of the number.

The definition is complicated due to dealing with infinity and multiple bases.

But that said even with this superficial understanding we can see two things: * Rational numbers can never be normal, since the digits repeat after some period. (Just choose a sequence of numbers longer than the period and you can easily construct a sequence that doesn't appear) * Normal numbers contain every sequence of N digits in their decimal expansion. So if we prove pi is normal (like we believe it is) then we know somewhere in its decimal expansion we can find any sequence of digits we want. Which is the property this comment[2] was referring to.

[1]: https://en.wikipedia.org/wiki/Normal_number [2]: https://hackertimes.com/item?id=25282609


Hey was this a serious comment or was it meant to be tongue in cheek? thaumasiotes and I can’t seem to figure it out.


> "Don't choose digits from your favorite irrational number"

What about numbers of which we don't know if they are irrational or not? Like e+π, e⋅π or 2^e.



There is a lot of interest on microservices from the research community; there are many open-source frameworks that enable you to write/deploy/operate microservice applications with different levels of abstraction. One thing that is missing in the open is (significant) example applications / benchmarks, across which we can compare the different frameworks in terms of ease of use, convenience, performance, etc. Can you give a description or samples of what people are doing in m3o.com?


I think most people are effectively doing some form of CRUD on the backend that's then consumed by web apps or mobile. In our case we've built out a number of example applications in https://github.com/micro/services.


Photographer Sebastião Salgado and his wife have re-forested his family's farm, planting over 2M trees over 20 years, and have developed the know-how to make this reproducible at much more granular scales than big government-led projects. http://www.institutoterra.org/eng/conteudosLinks.php?id=22&t...


Interestingly, a paper not 10, but 9 years ago, not by the same authors, but by the same group (systems folks at Berkeley), was proclaiming the cloud as an idea whose time had finally come. No mourning there. https://www2.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-...


I was about to make that connection, this is similar to Brazil's boletos. The difference is that in Brazil it is a standardized system that spans all banks: anyone with a bank account that wants to receive money can have their bank issue a "boleto", which is essentially a barcode that routes money to the destination account. A payer can go to any participating place (post office, convenience store, bank tellers, etc) and surrender cash, which then gets routed through the banking system to the right account.

Which brings us to a potential problem: there has been a tremendous amount of fraud in this system (Brazil's Boletos), with all sorts of malware changing the barcode when it is downloaded in an infected computer to issue a boleto with a different destination account.

Back in 2014 this was well documented by Krebs[1], and at amazing detail by @assolini from Kaspersky[2]. I also documented a specific case that happened to a friend[3]. While it should be possible to mount similar attacks on the Amazon system, having people deposit money into others' accounts, it should be straightforward for Amazon to detect this, since it is a single issuer system...

[1] https://krebsonsecurity.com/2014/07/brazilian-boleto-bandits... [2] https://securelist.com/analysis/publications/66591/attacks-a... [3] http://cs.brown.edu/~rfonseca/notes/net-bb-dns-poison.html


Kinderlab Robotics' Kibo Robot (http://kinderlabrobotics.com/kibo/) also features a tangible, screen-free programming language where the instructions are wooden blocks that kids put together in a sequence. They are a funded startup shipping mostly to schools and museums, and the whole thing is backed up by a long line of research first at the MIT Media Lab, and now at Tufts. Previously, the founders created ScratchJr. Worth checking out.


This is fantastic, especially the part about what sensors could be if reimagined.

"But we're still doing that today, after decades of digital camera technology, and it really makes no sense anymore: why are we still lump-sum recording light instead of using sensors that can tell how much light passes through it per time unit, instead of "filling up"? (...) Instead of starting a sensor, letting light fall on it, and then turning it off and asking it how much light it found, we have the technological capability to make sensors that change electrical resistance based on how strong a light hits them."

That would mean almost unlimited dynamic range.

One avenue for possible disruption that the article does not mention is through digital cinematography first, where a sensor would have to be "only" 8 Mpixels (4K), and the users have more budget and care about dynamic range. This could starts with the likes of Red or Black Magic and eventually trickle down to the photo market.

Is there any prototype of such a sensor anywhere? What would it take for this to be produced using current processes? Is there any foundry today that could miniaturize these photoresistors?

Thanks again for the article, very refreshing!


I'm hoping this is what Black Magic will achieve, really, with their UHDTV-4K cameras (which use the Rec.2020 colour space, which is really wide). With TVs slowly moving to 4K, and hopefully monitors to follow, the idea of a rec.2020 colour space across the workflow is _immensely_ appealing. Although right now, not quite affordable ($3500 for a camera that's really currently only seriously marketed by a single brand, plus $800 per single 4k monitor, it's not consumer-cheap yet)


Don't normal sensors have a raw gamut that's pretty close to Rec2020 anyway? Is the innovation to do it in video as well?



Much better discussion going on there :) Thanks for the link!


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: