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

Mike should have used a GDPR-enabled app.


Great project!!

Interesting that the largest section of the report is the last one called "Social Media outreach" to justify their choices.


Thanks so much. I think we just really wanted to explain our plan on social media (and our outreach person didn't have much to do).


His last transaction had to match the size of his ego.


The year 2021 is to wordfreq what 1945 was to carbon carbon-14 dating.

I guess the same way the scientists had to account for the bomb pulse in order to provide accurate carbon-14 dating, wordfreq would need a magic way to account for non human content.

Saying magic, because unfortunately it was much easier to detect nuclear testing in the atmosphere than to it will be to detect AI-generated content.


Knowing all the efforts that the US government has had to devote in order to push Apple to bring those jobs home, for other countries that do not have as much muscle as in financial and industrial leverage, their industrial future must look quite bleak.


It's really not about the jobs, it's about national security. The US needs the ability to fabricate chips on its own soil where the threat of China invading Taiwan isnt a concern.


Great. I hope they find a real name to their product, that would not be an acronym.

We can critic Google as much as we want, but at least it's a bit less weird to say "Hey Gemini" compared to "Hey GPT", when you know that GPT is actually something between an abstract concept and a code implementation.


In principle an acronym (initialism really) can be an original name, e.g. IBM, BMW. This is common. This trademark seems to have been denied because it's not "original" enough. It's too generic a term.


It's not so much that it's too generic, but that the term has been broadly used by pretty much everyone talking about transformer-based models for the past years at this point. The term has entered public domain before they even tried to register it.


Weirdly enough, Microsoft did get a trademark on "Windows". Perhaps OpenAI was counting on a similar decision.


AFAIK trademarks are granted for products. Microsoft was granted that trademark for software. If you opened a window shop and tried to trademark windows you'd fail since it is an existing term in that category. Similarly GPT is a term used in the filed of AI and thus would not be allowed to be trademarked in that category. I'm sure a window shop could trademark GPT for their line of windows.


This is called "descriptiveness", a very bad quality for a trademark application to have.


Microsoft once sued a teenager for trademark infringement for having a website called MikeRoweSoft.com. The kid's name was Mike Rowe and he lost the website in a settlement.


That’s because it is expensive for kids to defend lawsuits, not because a court agreed.


Still redirects to microsoft.com


They have money, you know ...


The real question is whether beemer is trademarked.


Company name vs product name


In this example, the company is called Bayerische Motoren Werke AG. BMW is one of their trademarks.

See also how there's a company named 'Dr. Ing. h.c. F. Porsche AG' with a brand called 'Porsche'. But nowadays that company is just a subsidiary of Volkswagen, and they could restructure to make the Porsche AG disappear, without doing any changes to the brand.


> Volkswagen

Also, this is literally "people's car".


And BMW is literally "Bavarian motor works". It's fun to know, but so what?


They are examples of mundane descriptions which are, in fact, trademarks.


But they're not examples of mundane descriptions. BMW is much closer than Volkswagen is -- I doubt anyone has ever actually referred to a car as being "a car of the people" -- but "Bavarian motor works" is not a phrase that you'd expect anyone to use descriptively unless there was an appropriate referent, a set of car factories in Bavaria whose company affiliation was obscure or irrelevant. (Perhaps because there are many of them affiliated with different companies, but we're talking about things they have in common such as a demand for steel or technicians.)

Had that been the case, and had the phrase been in common use, it would have been impossible to trademark "Bavarian Motor Works" to refer to part of the Bavarian motor works. But reality is different.


Aren't M&M's a product name?


to play devil's advocate for a second...

referring to gpt as "hey gpt" is not really different than "computer" as used in at least one popular tv show.


Plot Twist:

- AI is not smart enough to take over humanity.

- But by playing god with geoengineering by having rain packed with sulfur on our crops, we are facing The Blight, like in Interstellar.


You know what they say: Artificial intelligence is no match for natural stupidity...


A good example of a Go project using embed to pack its html/css/js assets in a single binary is PocketBase:

https://github.com/pocketbase/pocketbase/blob/master/ui/embe...


Last I checked, AdGuard Home also did this.

https://github.com/AdguardTeam/AdGuardHome


All those are available in Rally, which is OSS. It is great that WAYF offers something completely bare bone without the features you are mentioning, IMHO.

https://rallly.co/


It is the first time I see that "hook" pattern in a Go API backend: `hook.Hook` and `hook.TaggedHook`.

Where does it come from?

Why is it useful here?

What are the alternatives? Advantages/Drawbacks?

Is there an article somewhere, outside of the Pocketbase docs, presenting that pattern?

- https://github.com/pocketbase/pocketbase/blob/master/core/ap...

- https://github.com/pocketbase/pocketbase/tree/master/tools/h...


This just looks like the "Event Bus" [1] [2] [3] pattern, this is not the one from the React world if you were thinking about that. Hooks here are just the following, the "Hook" is just a collection of event handlers.

    type Handler[T any] func(e T) error

    type handlerPair[T any] struct {
        id      string
        handler Handler[T]
    }

    type Hook[T any] struct {
        mux      sync.RWMutex
        handlers []*handlerPair[T]
    }
It's very useful when you want to make an easily extensible library/framework/application, as you can see in pocketbase/core/app.go you can register handlers for various things that can happen.

[1]: https://en.wikipedia.org/wiki/Event-driven_programming

[2]: https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_patt...

[3]: https://en.wikipedia.org/wiki/Observer_pattern


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

Search: