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

There is a similar one:

https://aka.ms/nohello

which redirects(?) to

https://sbmueller.github.io/nohello/


I use

<meta http-equiv="refresh" content="300"> to do speed test from fast.com

see:

view-source:https://angularten.github.io/


What would it take to formally increase this limit to USD 250 million for everyone?


Probably negative interest rates for customers


> With the ‘unknown’ type available is there a good case for ‘any’ anymore?

Lets say you have some input json that you want to slightly modify to something else. How would you do this with unknown? I can't just blindly replace any with unknown. I'd get errors like this: The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type 'unknown'.ts(2407) For example, how can I do this better?

Remember the input json could be pretty much anything. I don't have a spec other than I only care about things that end with __c.

https://github.com/kusl/salesforcecontactmapper/blob/eff0b3e...

    import { Output } from "./Output";
    import { Preference } from "./Preference";

    export function MyMap(input: unknown): Output {
        const mypreferences = Array<Preference>();
        for (const prefCode in input) {
            if (prefCode.endsWith("__c")) {
                if (prefCode === "IsInternalUpdate__c") {
                    continue;
                }
                let currentValue = "";
                if (input[prefCode] !== null) {
                    currentValue = input[prefCode].toString();
                }
                if (currentValue === "true") {
                    currentValue = "True";
                }
                if (currentValue === "false") {
                    currentValue = "False";
                }
                const preference: Preference = {
                    PrefCode: prefCode,
                    CurrentValue: currentValue
                }
                mypreferences.push(preference);
            }
        }
        const myOutput: Output = {
            ContactId: input.Contact__c,
            Email: input.ContactEmail__c,
            IsInternalUpdate: true,
            Preferences: mypreferences
        }
        return myOutput;
    }


well you expect 'input' to be something that you can iterate over, so clearly using any is wrong here.


yes, input is a json of some kind.

You could say technically could be simply { "Unsubscribe__c": false } or even {} both of which are silly in my case because there is no key for me to identify who the person is but they are valid inputs.

Or the test case I have is https://github.com/kusl/salesforcecontactmapper/blob/eff0b3e...

Or the input could have a thousand key values and I only care about some of them. What should my object look like? How do I create a class that says everything that ends in "__c" is something I care about? I tried unknown. I tried Object. How do I fix this (and learn something so I fix all future code I write)?


You can go incredibly far with the type system.

If you wanna go down that rabbit hole, I'd suggest Typescript type challenges. Completely blew my mind when I came across it the first time.

When you start out with typescript you might think Omit<> and Partial<> are cool but holy hell, you can do so much more.


    input: Record<string, unknown>


Thank you. That gives me a red underline under ContactId and Email now. I think because input.Contact__c and input.ContactEmail__c are unknown. I think this is the right direction. What is my next step?

    const myOutput: Output = {
        ContactId: input.Contact__c,
        Email: input.ContactEmail__c,
        IsInternalUpdate: true,
        Preferences: mypreferences
    }
(property) Output.ContactId: string Type 'unknown' is not assignable to type 'string'.ts(2322) Output.ts(4, 5): The expected type comes from property 'ContactId' which is declared here on type 'Output'


What's wrong with Object?


If I set input as Object,

    if (input[prefCode] !== null) {
        currentValue = input[prefCode].toString();
    }
in the lines above, I see a red underline under input[prefCode]

> Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'Object'. No index signature with a parameter of type 'string' was found on type 'Object'.ts(7053)


Could you use a helper like

    function getProperty<T, K extends keyof T>(o: T, propertyName: K): T[K] {
        return o[propertyName];
    }

?


You can do some pretty powerful stuff with TypeScript types, so you could model it like this: https://www.typescriptlang.org/play?#code/C4TwDgpgBAysBOBLAd...


Nice I tbink that is the answer! It is for when the way you need to deal with the data is so dynamic and runtime specified that crafting out the interface/types to cast to would be painful to impossible. Data wrangling.


What if there were a service where anyone can opt in to share their own location information? If there was a way to get across the hurdle of how does the service provider know if the person is indeed who they claim to be…

My thought is something like a phone number, email address, or domain name bypasses this problem. It is fairly trivial to verify you have access to a phone number, email address, domain name. Feels like this is one of those chicken and egg problems though. Why would anyone list their location at my service if nobody queries it and why would anyone query my service if nobody lists their information with me?


> It just turns out that delegating trust to root CAs, CAs, and browser/OS vendors (the latter via built-in certificate lists) makes it easy for the end user.

This flexibility is what allowed let’s encrypt to bootstrap, right?


I can see it being useful to type and chat between each other if we aren’t seated together on a plane.


We used it with my gf to make comments about other passengers quietly.


Sounds like a very important and constructive use-case :-)


Watching real life social and dysfunctional families interactions is much more entertaining than netflix or telenovelas imho. :)


Personally, I don’t mind giving them my phone number because my number is already public information. It sucks though that I can’t get tweets by text.

This was the original use case of twitter. I understand SMS is not secure enough to publish tweets but why can we no longer get texts when someone tweets?


I'm pretty sure you can still get SMS notifications by turning it on in your Settings[0] and then also clicking on the "Notifications" button on the specific profile for which you want to receive notifications. I haven't used it in ages but all the settings appear to be there still :)

[0] https://twitter.com/settings/sms_notifications


No support for Android (yet). Install this Facebook container [1] on the desktop.

A request: I run Firefox nightly [2] as my main browser and would like to request everyone to consider using a pre-release version of Firefox if possible. It helps us make the argument that Mozilla should not run experiments in Firefox stable.

[1] https://addons.mozilla.org/en-US/firefox/addon/facebook-cont...

[2] https://www.mozilla.org/en-US/firefox/channel/desktop/


Been running nightly builds since I think 0.4 - makes web development ‘fun’ as you can never be sure if something works or not in a browser nightly build! Fortunately I don’t have to do that much any more.


I think he linked it so new readers can see the older comments and get clued in to the conversation. (:

I remember reading In the beginning was the command line back in high school. I liked the comparison with cars. I'm a little sad I never got to use the BeOS that the author so much likens to a batmobile (going from memory). This article even has its own Wikipedia article https://en.wikipedia.org/wiki/In_the_Beginning..._Was_the_Co...

For new readers, I'd also strongly recommend "Mother Earth Mother Board" by the same author, Neal Stephenson. In Mother Earth Mother Board, the author writes about the fiber optic cables that connect us across continents.

Original: https://www.wired.com/1996/12/ffglass/

Previously discussed https://news.ycombinator.com/item?id=15635028

https://news.ycombinator.com/item?id=8242682


>I'm a little sad I never got to use the BeOS that the author so much likens to a batmobile (going from memory).

You may be interested in Haiku OS then... https://www.haiku-os.org/


Adafruit published this BeOS guide just last week: https://learn.adafruit.com/build-a-bebox-with-beos-and-virtu...


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

Search: