Hacker Newsnew | past | comments | ask | show | jobs | submit | beeworker's commentslogin

It's safe to use "420", the cops don't know man.


You don't need to be rich. It costs very little to fund a $30k life insurance policy, which will get your whole body suspended with Cryonics Institute. Alcor is more, $80k for just the head.


>You don't need to be rich.

No, but being rich helps with illusions of immortality and going with such a scheme.


You've posted four snide and low-content comments on this post. Do you have anything substantive to say, or are you just here to sneer?


For some subjects, sneering IS the substantive thing to say.

Would you expect "substantive comments" to some post about the discovery of a perpetual motion machine or intelligent design?


Except you're dead and all your assets now belong to your heirs or some charity you've set up. If you're revived you'll be broke.


It's not like you can't setup some special accounts to wait for you for that case if you're rich.


You can't, you're dead. Whomever you willed your estate to will lay claim to those accounts. Even if they're secret. What ever institution holding those accounts will claim them for themselves. There's no legal precedent for a person returning from the dead.


>You can't, you're dead

Yeah, the idea is to do it before you die. You could e.g. setup a foundation to operate after your death and have in its statue (article of incorporation?) that if you ever return you get them back.

Besides technical solutions, like using cryptocurrency or simply burrying your assets somewhere only you know about where they'd be safe. Or use this, if those announcing it got anywhere and weren't scamers:

The Reanimation Foundation will, it is said, be the "first cryonics organization to enable individuals signed up for cryonics to take their money with them. It will be able to offer this service because it will be incorporated in Liechtenstein, which has no rule against perpetuities."

>There's no legal precedent for a person returning from the dead.

How about people being declared legally dead after gone missing and then re-appearing a few decades later. There have been several such cases in the past (sometimes those people got married elsewhere and started a new life, etc).


One difference is flow control. When you call a function, all the arguments are evaluated before being passed into the function. If you want to delay evaluation, you have to wrap the argument values in a function. When you call a macro, the text forms get passed with no evaluation.

Say Clojure forgot to ship with the boolean "or". "or" should evaluate its arguments one at a time (to allow for short circuiting) and return the first non-false value. You could do this with functions, but you have the source-level overhead of manually wrapping everything, and performance overhead of defining and passing an anonymous function for each argument. With a macro, at compile time you just translate the "or" macro into a simpler form that uses "if". This is how Clojure actually implements "or":

    (defmacro or
      "Evaluates exprs one at a time, from left to right. If a form
      returns a logical true value, or returns that value and doesn't
      evaluate any of the other expressions, otherwise it returns the
      value of the last expression. (or) returns nil."
      {:added "1.0"}
      ([] nil)
      ([x] x)
      ([x & next]
          `(let [or# ~x]
             (if or# or# (or ~@next)))))


I wonder how much macros are necessary one you add call-by-name parameters e.g. scala.


You should have a look at Kernel, vau-calculus and F-expressions. Kernel merges the notions of first-order functions and macros by having lexically scoped definition of Fexprs which takes their argument by name and also receives the call-site environment so that you can eval the argument in it if needed.

I find it a very elegant way of having everything clean, "lambda" does not even have to be a primitive anymore.


Or, once you have lazy evaluation (like in Haskell), for that matter.


Laziness can achieve a similar thing in that case (less elegantly, IMO), but there are other uses for macros that can't be solved with laziness.


Look at the uses for Template Haskell, for example.

That's basically Haskell's macro system. And it's used quite a lot, though it's kind of arcane.

If you want to create an abstraction that defines one or several data types, you'll think hard about whether you can use some kind of type-level programming instead—but if that's not possible, or not convenient, you can use TH macros.

For example, the `lens` package defines TH macros for creating special kinds of accessors that are tedious to write by hand.


using macros to deal with boilerplate, although useful, though is of a different order than things that simply cannot be expressed without macros


Which things cannot be expressed without macros? Macros run at compile time, and just output normal code in the language.

I think being able to generate types is a very useful and important use of macros. In fact, (depending on whether or not your macros can have side effects) you could use macros to implement something like F#'s type providers.


Search down for my comment which contains the substring:

"if I have a non-strictly evaluated language with higher order functions, do I still need macros?"


I second the other comments suggesting to at least treat online advice with a grain of salt. That said...

I burned out some years ago and have been struggling with recovery since, depressive thoughts aren't far away but by now I've found coping mechanisms. It's annoying I don't feel I can talk about it with my real ID because I still don't feel like my performance and drive is even 80% what it used to be, and I fear that would impact my future chances of switching jobs if they discovered my inner struggles. But my performance seems to be enough for my coworkers to value me, so I keep going another day. I too almost lost my previous job during the early periods, but at the end of it I was valued again. (I just observe external praise, I never feel it. Whatever.)

I'm anti-big-med for myself, but I won't discourage you from taking them as a lot of people say they help and some even report total elimination of depressive thoughts. I would encourage you to see if extra caffeine helps you at all while you wait, especially as the big drugs tend to take 3-4 weeks before kicking in at all and caffeine seems to have a more immediate effect. How much caffeine do you take per day? If you don't take much, you may want to get a box of 200mg pills and try for 200-600mg per day and see if it helps you at all. Caffeine has some anti-inflammatory properties, and depression is increasingly being recognized as an inflammatory disease, plus caffeine as a stimulant itself can help with the focus. Anecdotally, what cripples me some days is never-ending introspection about my value to the world and my performance. Sometimes taking more caffeine than usual that day will allow me to shut my mind up about itself and think about other things, and that allows me to get things done. (Work, laundry, going to the gym.)

Last year I finally did start feeling like I was recovering a little bit, then my mom unexpectedly died. Expect life to continuously shit on you. But whatever. If you keep on keeping on you'll develop your own coping mechanisms (those that don't die) so even setbacks won't necessarily send you over the edge as you've been there before. Lastly, killing yourself in a nice way would take effort, it's not worth it. Just look forward to sleeping instead. You might also consider getting a pet, or a house plant -- something whose continued existence depends on your existence.


"Come up with"? Absolute monarchies actually worked pretty well overall, we don't need to "come up with" anything when we can just restore the Stuarts[0] and their system, for instance. Okay, the current elites (who have the most chance of making such a change nonviolently for a large number of people) might want to make some alterations for modern technology and to transition away from the incredibly egotistical viewpoint of the People thinking they know anything about governance, and they might want to make sure the guy they put in charge has a philosophy and will at least approaching that of the late Lee Kuan Yew.

But really we just need anything that gets power, perceived or real, away from the People.[1][2]

[0] http://en.wikipedia.org/wiki/House_of_Stuart

[1] http://www.constitution.org/eng/patriarcha.htm

[2] http://www.amazon.com/Critique-Democracy-Guide-Neoreactionar...


Anything that even smells like the financial and banking industry is considered shady by a lot of people, not just programmers, after our Great Recession. A necessary evil at best, and for programmers one that pays very well. In any case, it was a good zing.


While we're making art style changes, why don't we change the experience for self-signed certs?

When the user first visits an HTTPS page with a self-signed cert, they get the content, and the URL art style has a broken lock or something warning it's not known to be secure. (It's better than raw HTTP but it's not trusted.) With certificate pinning by the browser, the next time the user visits that page, if it's different, then they get the current experience that warns them in big scary text and requires several clicks to get past. There's a question of if it's different in that the server owner upgraded to a paid SSL cert should it show a warning or not, but if there's a way to sign that upgrade with the old cert that the browser can know about there shouldn't be a problem...


So if I have to renew my (self-signed) certificate, all my current users will now get scary warnings? I'm not sure we should be encouraging people to hold on to their possibly-compromised certs.


> When the user first visits an HTTPS page with a self-signed cert, they get the content, and the URL art style has a broken lock or something warning it's not known to be secure.

Do we assume the user is going to notice that URL art style, and actually heed it? Because if the answer is "no" (and I think in reality, the answer would be "no"), then pick a high value site, and MitM it with a self-signed cert. The user misses the indicator, and proceeds to interact with the site; does JS work? (let's steal the user's cookies) do forms work? (please log in!)


If you have the ability to MitM a high value site like facebook.com without getting caught, I think it's worthwhile to do so regardless simply because you'll get some portion of the users who bypass the warning. In my scheme, the only people who won't see the warning are those who have never visited facebook with that browser before, so they may or may not have an account to login with that you can hijack.


Not a bad idea, in theory, but... suppose I visit a site on Monday and see certificate A. Then when I return on Tuesday, I see a different certificate B. What reason is there to think that A is likely to be the "true" certificate, and B isn't?

Showing a big scary warning in one case, and not in the user, implies to the user that the browser has some reason to think one is more secure, which is misleading.


You could use some website which you connect to securely (CA signed) which fetches and displays fingerprint C. You can then compare it to A and B and the one which matches C is the "true" one.

Of course the whole thing can be automated by the browser and happen behind the scene - i.e. Firefox connecting to a Mozilla service for each self signed website it sees and comparing the fingerprints. Then it can store information about this self-signed certificate as trusted.


That sounds essentially the same as how Let's Encrypt works: https://letsencrypt.org/howitworks/technology/

Except that rather than creating a self-signed certificate and then asking an external service to store a fingerprint, you just let the external service sign your certificate.

EDIT: Oh yeah, and signing the certificate up-front has the nice benefit of not forcing browsers to leak private information (namely, the domain names that are being accessed) to a centralized third party.


I agree in that scenario it's hard to say whether one is more likely to be the true certificate than the other. If we're assuming attacks that aren't targeted towards specific users (e.g. from state actors, or just a corrupt hotel wifi admin, who are attacking whoever happens to be on the network) then we can't say without more details about the network you were connected to on Monday vs. Tuesday. If we're assuming attacks that are targeting you specifically as an individual, perhaps A could be considered slightly more likely than B due to coming first... Visiting the site on Monday leaks the information that you visited the site, so an attacker may believe you will visit that site again. But if the attacker is keeping logs of your traffic habits, they may have just chosen Monday to poison your fresh DNS lookups. So again it looks like we can't say which is more likely.


People enjoy overcoming challenges. (People also like to brag.)


You must not use grep with regexes very often.


Are you serious? Quick, write me a grep regexp that will catch all equivalently valid forms of a nim_Identifier (or nimidentifier or nImID_entif_iEr, but not NimIdentifier).


Not really, sorry. I had forgotten that the first letter is compared case sensitively as I remembered from Nimrod it was all insensitive. But I still think for nearly all cases in real world code you can instead of using nimgrep be equally served by a case insensitive search on (nimidentifier|nim_identifier) even if it's technically possible to have other variants or a mismatch, which you can grep out as a second step anyway, with the capital N.



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

Search: