I've been spending more time on stackexchange, it is probably better suited to what I'm looking for.
1,093 karma · joined January 6, 2020
I've been spending more time on stackexchange, it is probably better suited to what I'm looking for.
How does a "fat pointer in C" or "devops for ML" become political? I'm joking, but I think too many deliberately charged issues make it to the top. I popped over to slashdot for the first time in years and it has become a right-wing megaphone. It is very sad. I would prefer to not see HN go this way. (Mea culpa: I'm partially to blame for this because politics makes my blood boil... but it would be nice to just say 'no' at some point...)
Heh, well put. Me too. I come to HN looking for... well... "hacks".
You are putting words in my mouth.
And you clearly do not understand the answer.
I guess I'm not very good at ELI5 because I very clearly answered your question with your own proposal.
Maybe when you get to college a professor can do a better job explaining it to you (if you actually make it to college, because you're going to struggle very hard if that's how you think when an answer is spoon-fed to you).
But who manages THAT many remote sessions? Seems like an upstream problem to me, no?
Your terms are bit jumbled, so let's keep it simple: you're asking how to prove if an infinite sum converges and what its value is. Convergence proofs require analytic thought: meaning there may not be an immediate look-up. You need to convert the problem into the known corpus of convergent sums or use one of many tests (bounds test, integral test, etc) to show it converges analytically. Which you only learn through experience and memorization (unless you want to re-prove hundreds of series... maybe you do!) Fortunately this one is easily re-written as a known convergent sum.
First, you missed a term in your sum (9), re-written here:
sum(n=1..inf) 9 * 10^-n
Step 1: you pull out the 9 and it becomes 1/10+1/100+1/1000...
Step 2: Then we shift to n=0 by subtracting 1/10^0 from the series so that it is in the form n=0..k-1
1/10^0 + 1/10 + 1/100 + 1/1000 + ... + 1/10^-n - 1/10^0
Step 3: Now we've got ourselves a geometric series of just 1/10^n .. wikipedia does a great job explaining the sum convergence for GS from n=0...inf: https://en.wikipedia.org/wiki/Geometric_series
Step 4: compute geometric convergence
(1-r^n)/(1-r) = (1-(1/10)^n)/(1-1/10) = 1/(1-1/10) = 10/9
So we have 10/9 as the solution to Sum[n=0...inf](1/10^n)
Step 5: the remaining arithmetic
Now subtract our 1/10^0 ... and then * 9 = 1
I think the problem is the repeating function. Infinite things are non-intuitive and should be presented differently.
Even here on HN you still see people confused about "convergence" and "identity". 0.999... doesn't CONVERGE, it literally is 1.
I suspect this persists even with students that have had second year college calculus that discusses convergent series and sums.
LONG LIVE TXT2MOB!
THat's funny because my EE math concentration was on advanced calculus. I took two semesters of a-calc and got A's, but I only know how to compute a Jacobian and apply it, not its origin story. It's a very weird feeling to understand the motions but not the ... depth?
I see no reason to use callbacks, unless the NodeJS module dev didn't implement promises. And even then I write a wrapper. I'm glad to see later versions of Node include promisified versions of things like File IO.
Let's take a great of example of where promises are used most often: AJAX. If the endpoint isn't RESTful and there is state on the other end, cancelling a promise requires updating the entire module of the new state. There can be multiple reasons for cancelling, and the code needs to be aware of what is happening beyond a simple timeout.
Same thing goes for USB devices (via libusb+ffi) and serial-ports (via serialport). In flight requests can disturb state if cancelled, and it makes the programming very complex to just time-out.
One could argue AJAX and hardware programming are outside the domain of JavaScript, but I wouldn't.
I guess it is more than a "nuance", it is the observance that cancelling an asynchronous operation in general can have unintended consequences if not handled correctly ... beyond memory leaks from unresolved promises.
Proof? Just look at all the replies you got: each one is dozens of pages of complex (imaginary) math, control theory, and statistics.
The hardest part of QC is exactly what you described: how to extract the answer. There is no algorithm, per se. You build the system to solve the problem.
This is why QC is not a general purpose strategy: a quantum computer won't run Ubuntu, but it will be one superfast prime factoring coprocessor, for example (or pathfinder, or root solver). You literally have to build an entire machine to solve just one problem, like factoring.
Look at Shor's algorithm: it has a classical algorithm and then a QC "coprocessor" part (think of that like an FPU looking up a transcendental from a ROM: it appears the FPU is computing sin(), but it is not, it is doing a lookup... just an analogy). The entire QC side is custom built just to do this one task:
https://en.wikipedia.org/wiki/Shor%27s_algorithm
In this example he factors 15 into 5x3, and the QC part requires FFTs and Tensor math. Oy!
Like I said, it will take decades for this to become easier to explain.
For fun, look at the gates we're dealing with, like "square root of not": https://en.wikipedia.org/wiki/Quantum_logic_gate
I'm surprised they attempted timeouts in promises with so little text, that's actually pretty dangerous pattern because it glosses over the complexity in actually stopping an in-flight promise. It is VERY easy to end up with hundreds of thousands of unresolved promises with their pattern. Dangerous!
There is a great repo on this issue.... aand I can't for the life of me find it. Basically there's a github project that uses generators and passes an atom down through the call stack to ensure everything below the race promise is aware that it is being halted. And even that doesn't handle all the nuances of this pattern.
And if anyone knows what github repo I'm talking about, I'll give you ... 50 DKP?
(And the chapter number ordering doesn't reset with sections, not a big deal, just odd)
Plus the set notation threw me a little, e.g.: the cardinality of the set of all ciphertexts for key k in K is ... a number Nc. oookkaaayy.... pause ... ...60 minutes later .... OOOHHH got it!!! ... Same goes for the additive theorem, where suddenly the bit strings M and C become numbers that are added with k mod n --> First it's a message and now ... SHAZAM ... its big integer!
I know as an embedded analyst that RSA and ECC crypto spends a lot of time in bigint routines, but it is becoming clear WHY that is the case.
I realize this is all 101 stuff for people who know crypto, but I really want to learn it for real-reals, so I'm creeping through this book a little bit every day until my brain shuts down. It took me 30 minutes to convince myself of Example 2.6 wasn't perfect crypto: I know intuitively why, but applying the definition mathematically made me feel all of the rust in my brain from 30 years out of college.
I"m sure I'll hit more confusing set theory math, fortunately I have the internet.
Such a fun book!
Yeah, I guess that isn't as bad as it seems if there are just a few. I didn't bother to look up what "excluded" meant.
Hulu (No Ads)
Get First Month Free
then $11.99/month
A few excluded shows play with ads.
[from here https://signup.hulu.com/plans]
That last line kills me.
It's like H2G2, you can't have Tea and No Tea unless you remove your common sense particle.
I'll be dead in my grave before I recognize anything past 5.8.1.
Just like how they still haven't made The Matrix 3.
Sh. Quiet, you. :)
> ... not a scroll+button. Unix/X middle click paste is a feature I sorely miss on macOS and Windows.
Open up any serious Python project and you'll find significant dependencies. Math, graphics, IO, stats, ML... anything you really want to do requires dependencies. In fact, one of my biggest issues with Python is the cross-platform incompatibility of many packages which makes it a terrible choice for my deployment. (Even worse if the project has Cython components!)
I often end up having to scour github for forked pywheels that aren't vetted. Which are then cloned ad infinitum.
Its a tradeoff between extensibility and open source / free software, and robustness.
I think that's OP's point. Every word in this sentence is subjective. Throwing around concepts like leverage debt and risk exposure is a way only a mid/well-off person would frame the discussion.
For the other 80% of the US, this statement is madness.