Hacker News new | past | comments | ask | show | jobs | submit | mkhalil's comments login

Most (all?) open source licenses allow you to sell hosted clusters. They offered a hosted solution well before they changed its license. You can also fork it; but depending on the license, you might need to open-source any fork.

: I don't know of any open source license ones that don't allow someone to sell hosted cluster. Even AGPL, which is copyleft, allows it; so long as the hosted version is either: the same as the open-source version, or it's version is also open-sourced.


Nobody knows what the AGPL actually says, since it has not been determined sufficiently in court (at least in the EU) which is why the license is blacklisted by most companies.

If you want corporate adoption except AWS, you still cannot use AGPL.

I feel like there should be a license that doesn’t allow hyperscalers alone to fork without releasing source while being palatable to smaller companies


It’s a copyright license not a EULA. Grants rights for copying and can’t put restrictions on the using part.


Event-sourcing solves this. And with how cheap storage is, it should be more prevalent in the industry. IMO the biggest thing holding it back is that there isn't a framework that's plug-and-play (say like Next.js is to React) that provides people with that ability.

I've been working on one in Typescript (with eventual re-writes in other langs. like Rust and Go), but it's difficult even coming up with conventions.


Event sourcing is an expensive solution and I don't mean from a storage perspective — it burns engineering cognitive horsepower quickly on things that don't matter. Do it if you're in finance or whatever. Having been burned by my own "let's event source" impulse on data change tracking systems, I now prefer less sophisticated solutions. Figuring out how to deal with slow projections, watching a projection rebuild go from minutes to hours to a few days as a system I expected to handle a few events/minute go to 20 events/second. Fancy caches can't save you if you want to use that vaunted ability to reconstruct from scratch. Event schema evolution also presents difficult tradeoffs: when old events stop having meaning or evolve in meaning you either end up adding on new event subtypes and variants leaving old cruft to accumulate, or you do migrations and edit history on really large tables.

I'd counsel anyone considering event sourcing to use more "low power" solutions like audit logs or soft deletes (if really necessary) first if possible.


Appreciate your perspective, and it makes me wish there was some kind of online 'engineers learning from their mistakes' forum (rare to see "I burned myself"). To hear hard won knowledge distilled like this is a nice reminder to spend ones complexity budget wisely.


Why not keep the projection always updated?


Care to share what you've been working on?


Did anyone read this article? The headline is misleading.

It clearly states in the first line:

> "Google’s contract with Lenovo Group Ltd.’s Motorola blocked the smartphone maker from setting Perplexity AI as the default assistant on its new devices"

They didn't block Perplexity AI from Motorola's devices, the agreement states that they allow them to preload the devices with Perplexity, but the agreement, that both parties signed, does not give Motorola the permission to set it as the default.

> "Motorola “can’t get out of their Google obligations and so they are unable to change the default assistant on the device.”

They signed the agreement, and now are going to courts to claim they had no choice.

I understand the premise, that they think they had no choice, but this article is misleading in its headline, and plenty of the comments here clearly show that a lot of "readers" didn't bother to read it.


> they think they had no choice

And they really don't have a choice. if you don't abide by googles terms then they will not permit you to use google mobile services. That means (at the very least):

  - No "play" services (breaks lots of apps and 3rd party peripherals).
  - No app store (over 90% of apps are distributed solely through the play store. even major android players like samsung have tiny libraries in their own stores).
  - No youtube app (and no way to natively play without play services APIs, you NEED to use a crippled iframe embed in a webview!!!)
  - No push notifications (developers usually target the "built-in" option that is basically play services)
  - Missing apps and api-level integration with loads of other stuff, maps, mail, search, calendar, casting, etc
  - No widevine DRM (no hd/4k netflix, etc)
  - Loads of other insidious stuff I cant recall or articulate right now
You cant even use the word "Android" to describe the OS.

Just look at how crippled Amazons fork is. Or how huawei pretty much lost their entire GLOBAL market share because of a US sanction preventing them having a GMS contract.

No matter what anyone says, android IS google. It is so riddled with google specific behaviours you cant use without a license that companies have even ditched android to make their own OS - because they literally aren't allowed to favorably position their own functionality over googles in any way.


The Play services thing is a major deal for banking apps and such. If anyone has tried dealing with third-party ROMs like LineageOS and GrapheneOS, they would know how much Google tries its best to screw you if you leave their gross leech of an ecosystem


I have a Pixel with GrapheneOS and no Google anything installed, and bunq, N26, and SG apps all work flawlessly (but with no push notifications because no Google services, and I'm fine with that).


From what source do you install those apps?


Big shout out to Google Play Integrity/Safety Net (or whatever it's currently called).

Was the one thing which ended my couple of years without Google, as my banking apps started banning my phones fingerprint for being insecure.

Seems like in a major part of '''Pax Americana''' is needing to use a Google or Apple fingerprint to participate in society. Makes you laugh when people whinge about China.


In Europe, banking apps block root but still work on a custom OS (like LineageOS) without contactless payments. I guess this is because many people here buy Chinese phones and they just can't ignore them.


Attesting that a closed source device meets arbitrary closed source standards is a necessary evil.

One real world problem is that some existing systems are built relying on the integrity of the components within, i.e. BART in the bay area relies on the BART cards being honest and secure. If iPhones are to be allowed into the system, they also have to be honest and secure.

The capability is being over-used and abused, and we should design systems to never need it, but some do.


> If iPhones are to be allowed into the system, they also have to be honest and secure.

This describes a 1:1, total-trust relationship. There are other types of systems fulfilling the requirements without needing a 1:1, total-trust relationship.

For example, the main requirements here are: The account succeeds at making requests it is allowed to make, and the account fails at making requests it is not allowed to make. Both those requirements can be fulfilled entirely server-side, and should be. Why require the client to be locked down?


> Why require the client to be locked down?

It is hard and likely expensive to require every single reader in every single city to be networked:

> Because Clipper operates in multiple geographical areas with sporadic or non-existent internet access, the fare collection and verification technology needs to operate without any networking. To accomplish this, the Clipper card memory keeps track of balance on the card, fares paid, and trip history.

https://en.wikipedia.org/wiki/Clipper_card#Technology


So because it's hard and it's expensive for them, we all get locked down phones. Makes perfect sense.


Have you tried on GrapheneOS?

Also, what's stopping you from using your bank's website instead... or switching to a bank which sucks less?


It just gets all so tiresome. And I don't really have enough money and free time to swap devices/banks when things get banned at random intervals.

Just wanted to be left alone tbh ;/


Don't worry, Pax China will have you giving the fingerprint to Xiaomi and Huawei instead.



> Just look at how crippled Amazons fork is

What has Google done to stop Amazon here?


...literally all the things listed in the comment you're replying to.


But what stops Amazon from making these things? What's stopping them?


Almost two decades of Google market dominance with Android, and Google's simultaneous ownership of the entire ecosystem, including the browser, search engine, cloud integration and the internal app store (which is integrated so far up the OS's ass you can't do much without it). You just can't enforce a monopoly like Google does and simply claim "why wouldn't the competitors and consumers just kneecap themselves to leave??"


You'd have to get every single app developer to implement an Amazon variant of Google Play Services alongside Google's.

That's not going to happen, it's already a large problem in China.


This is a relatively simple technical problem. If Amazon implements compatible APIs, they can trivially rebuild apps to use them.


Play Services, and the Play Store. The network effect is so strong that competition becomes impossible. Nobody would buy a phone with a different AI provider because you couldn't use apps like Uber, and Uber wouldn't develop and publish to a different store and re-write their app to avoid Play Services to target a platform without any users.


You’re not being clever like you think you are. “They could simply build something else” is … something that truly everybody knows. That’s not the point.


What is the point?


Why didn't Linux programmers just fork Windows or iOS?


What's stopping you? Reflect on that and you'll have your answer.


What's stopping me is I'm not trying to build a phone. If I were, I wouldn't be blaming Google for not making things easy enough for me.


lol and you've clearly never heard of a thought experiment


Try re-reading the second sentence.


Try engaging your brain for like 2 seconds


Holy fuck dude. Try rereading the comments in the thread that already answered your questions.


They blocked Perplexity via agreements, amongst many agreements to fortify their monopoly, the legality of which has been challenged in court and this testimony is to demonstrate that this agreement also belongs in the "illegal" bucket.


Google Cloud has also gotten a huge boost from large retailers who, understandably, don't want to run their software on Amazon owned AWS.

When I asked out of curiosity why not Azure, especially given that these companies almost all use Office, Teams, Outlook, etc. several have told me it's because of Google Shopping and SEO. Though never formally stated or part of the contract it's often mentioned by Google that "They already have a relationship" with these companies via the feeds they provide for those products. And there are consistent talking point among the GCP sales reps about how they "help deliver you customers" and you "shouldn't fund a competitor".

Obviously not the same thing but it does indicate that Google isn't afraid to leverage their search monopoly in the other parts of their business.


> And there are consistent talking point among the GCP sales reps about how they "help deliver you customers" and you "shouldn't fund a competitor".

I wonder how much of it is Google asking them to do that, versus quotas and incentives that make anything else untenable.

The latter is a well-known phenomenon, if your sales reps are under enough pressure, they will eventually resort to illegal tactics that make your company look bad, even if they're never explicitly told to do so.

Another way to look at this is through an evolutionary lens; the salesmen that do the right thing can't possibly perform as well as those that don't, so they're fired / never promoted. It's not that all salesmen are evil, it's that, in such an environment, only the evil ones have a chance, all without managements knowledge or approval.

HSBC is the most famous example where this happened, to the point of their bank employees knowingly assisting gangs and cartels in laundering money.


I ran a large cloud environment for two different US based retailers.

Grocer A: They built their cloud strategy with Azure in mind. Microsoft partnered up with them early on at the C-Level and grocer was given a metric fuck-ton of free services to help build and identify the proper cloud strategy for all of their 2500-ish stores.

Luxury Goods Retailer B: Moved from a Data Center to AWS, since that's where our corporate IT partner recommended we go to. C-level leadership tried to get some fake products removed from Amazon.com, Amazon.com said no, we were given the green light to spend "...whatever needed to be spent" to get us off of AWS and over to Google Cloud as quickly as possible.

It's been my experience that the Google Cloud sales reps will always usually reach out after money raising announcements and other acquisition events just to let you know that they're there and please spend money with them. It was never "Don't fund your competitor," it was always, "we're google, our tech works, they're not going to sunset google cloud, our support sucks, use our partner."


Does that matter how it started? If everyone knows this is happening for long, then Google is definitely turning a blind eye, and it is the same thing as promoting the sales tactic.


I doubt it's because of that. Being a user of those msft products like Teams, it is more likely that they don't want another msft product if they can avoid it. why would you want bugs on top of bugs?


Agreed. Anyone who's tried Azure non-trivially knows why to use GCP.


I think that's most likely something that some sales guy came up with on his own.


[flagged]


This is wildly wrong. Ever since the Sherman Anti-Trust Act of 1890 (1) companies are forbidden from using monopoly powers to force other parties to sign deals, which is the question about which Perplexity is testifying- whether Google is using it's market monopoly power in one area (cell phone operating systems) to force other companies to sign deals that unfairly hurt competitors in a different market (AI assistants). And that's been illegal for a very long time.

1: Named for John Sherman, General William Sherman's younger brother, who was a Senator from Ohio. That's how long this law has been around!


Google could be running foul of antitrust laws if forcing Gemini as default on Android OEM's is part of the standard contract required to use the Android brand.


The use of the android brand is allowed to be used by anything passing the compatibility test suite. That doesn't have any Google specific requirements afaik. Contracts with Google only come into play when trying to utilize Google play services or google play store in your product.


You mean like two people agreeing to sell drugs to each other? Organs? Prostitution?


mmm, which part of the constitution? I remember one explicit delegation to the federal government of the cross border trade, plus a long list of items that people are forbidden from trading freely, plus, recently, a long list of items where the government meddles by imposing taxes on imported trade.


[flagged]


They are


True, but this just added extra visibility to the anti trust case


It’s a little oversimplified, but I wouldn’t call it misleading.

There is little point to getting an app like perplexity AI pre-installed on a phone as a non-default. Changing defaults isn’t exactly trivial, and any user motivated enough to go through that will have no problems installing the app from the App Store.

So of course the deal fell through.

And it’s accurate to say that “Google blocked a deal to put Perplexity AI on Motorola phones”, and highly monopolistic.

Though… as an end user and occasional family tech support person, I’m thankful for anything that reduces pre-installed bloatware on phones. Thanks google.


> I’m thankful for anything that reduces pre-installed bloatware on phones

Except that I still get all the google bloatware on my phone.


On my pixel, GrapheneOS has 2x the battery life of factory android.

Of course, most commercial apps won’t run due to Google’s monopolistic bullshit. You can partially fix it by installing (sandboxed) google play services, but that halves the battery life back to what stock android gets.


Every single app I have tried on GrapheneOS works great without GMS except Too Good To Go (their app mandates location access and the manual location selection is broken).

I download them using Aurora Store.


> They signed the agreement, and now are going to courts to claim they had no choice.

Did the title change? They (Lenovo) are going to court? This is an antitrust case against Google and the witness is not part of the agreement signed. Is Lenovo suing Google?

The title is representing the witness (perplexity) stance, not Lenovo's. And given it's a antitrust suit it seems like a very valid stance.


Read it again perhaps? Without any of that context, it just reads like "google blocked [some/all] use of Perplexity AI on [some/all] Motorola devices"

Try not to overthink it.


Even rereading the whole thread I don't get what is misleading. Google and Motorola signed an agreement, and it blocks Motorola from using Perplexity as its core search engine.

Saying Google has no part in this would be wrong, and the fact that the agreement was mutual doesn't change the restrictions.


Who's overthinking? This is not an example of a bad title: the main message of the piece is that a (prosecuting?) witness is demonstrating how the alleged antitrust behavior of one of the signatory parties prevents them from operating as they see fit. Lenovo is not the one on the stand being accused of antitrust behavior. I guess perplexity could accuse Lenovo of antitrust behavior but that's not the case the article is describing, is it?


Sure a contract was signed, but as has been pointed out many times about Google's heavy-handed control over Android, it doesn't mean it was fair to all parties:

https://arstechnica.com/gadgets/2018/07/googles-iron-grip-on...

Given the recent judgements about Google's anticompetitive behavior in multiple other arenas, revisiting these licensing agreements seems justified.


> Sure a contract was signed, but as has been pointed out many times about Google's heavy-handed control over Android, it doesn't mean it was fair to all parties:

The article is basically saying "if you don't use Play store and Google apps you'll have to build them yourself". I don't really understand - yes? You would have to. But you still got a load of stuff free. You only have to build apps on top. You get a working OS for free still, which is incredibly valuable.


> The article is basically saying "if you don't use Play store and Google apps you'll have to build them yourself".

The article says a lot more. A key point about the Open Handset Alliance, OHA (emphasis theirs):

"If a company does ever manage to fork AOSP, clone the Google apps, and create a viable competitor to Google's Android, it's going to have a hard time getting anyone to build a device for it. In an open market, it would be as easy as calling up an Android OEM and convincing them to switch, but Google is out to make life a little more difficult than that. ...

The OHA is a group of companies committed to Android—Google's Android—and members are contractually prohibited from building non-Google approved devices. That's right, joining the OHA requires a company to sign its life away and promise to not build a device that runs a competing Android fork."


Android is open source and Google play services is technically possible to avoid. What other major operating system vendor for consumer electronics goes out of their way to make this sort of thing possible? Apple and Microsoft sure don't.


If you read the article I linked and many of the criticisms in these comments (not to mention TFA) smartphone vendors need to cede a huge amount of control to Google to have a viable product. As such, the open source aspect of Android is just a very effective distraction from the anti-competitive practices that Google has been plying with it.


Legally or illegally? If you don't care about doing it legally, sure you can make a stub Google play service and fake the device integrity by extracting certificates from other devices.

If you care about the laws though you cannot really get rid of the play services.


What’s illegal about stubs + extracting certs?

If the certificates were used for copy protection, the DMCA might apply. If they weren’t part of the API, copyright might apply. Patent law doesn’t apply, and trade secrets don’t enjoy legal protection.

They could argue you’re in violation of their terms of service, but their remedy for that is to kick you off the services you’re actively avoiding.

Is there some other law I’m missing?


The stubs still need to use Google servers for FCM but without following their terms, is that okay? Probably a grey area at best.

Extracting the certificates used for protection is against the DMCA in the US and probably legal in the EU as part of the interoperability exceptions.


Most online journalism relies on clickbait, and they know people aren't going to read too much past the headline to care (and 99% of threads on sites like HN clearly demonstrate that).


You should just say 99% of material, because it has nothing to do with the "type" of site, what you're talking about is just a human behavior.


"The very basis of interhuman discourse is misunderstanding"


well at least it is new information unlike your statement.


Calling the Google Apps agreement something phone vendors voluntarily agreed to is pedantic, reductive and useless. Yes, technically they didn't get physically forced into it, but that's not the whole story.

Google used their unimaginably deep pockets and several monopolies to make sure that no phone without Google Apps will sell. Look at what happened to Huawei after Trump's ban - there were articles in even mainstream media about how people are buying the P10 (was it?), starting it up, realizing nothing works and trying to return it. And literally the only reason that "nothing worked" was that it didn't have Google Play services.


Google has a monopoly on Android services and app distribution that the used to effectively force them to sign it. Literally not having a choice isn't the only way to be coerced to agree.


As a device maker if Google or Apple demands that you jump, you jump.

They are essentially being strongarmed by the duopoly.


Since the title has changed since you wrote this, it may be prudent to include the title at question in the future for clarity.

The original title was:

> Google blocked Motorola use of Perplexity AI, witness says

The new title is:

> Google contract prevented Motorola from setting Perplexity as default assistant

The new title definitely addresses this issue, but since you're at the top of the comments, you're likely to get a lot of people responding with disagreement and/or downvoting.


Google is a convicted monopolist, so it has to play by different rules.


If Lenovo wants preferential terms they have to sign.


If i remember correctly, it was similar argument when Microsoft in similar way blocked other browsers' pre-install - "if Dell wants to be MS Windows preferred partner ...". And ultimately that argument didn't fly. Though unfortunately a huge irreparable damage was still done.


You could have simply written "I have no idea what anti-trust is all about", and saved yourself a lot of words.


My journey with NixOS is as follows: 1) great and useful for development work. (I use NixOS inside WSL) 2) but for your general Desktop environment, I'd say it's only great and useful if you find "tooling" fun/as a hobby (i.e. the type of person who keeps their dot-files updated in a git-repo [although, you won't need dot-files anymore :)]

I would say the biggest negative is that it seems the development of it is disjointed, as there are almost too many ways to do the same thing; some things are being deprecated before the documentation even keeps up with development.

--- personal notes: --- Also, some things are finicky and require some understanding to get to work (e.g. getting VSCode (on Windows) working with language analyzers and code sitting inside a WSL NixOS distro)

- I love Flakes but don't really love home-manager; I can understand home-manager being useful if your using Nix and not NixOS. - My NixOS rules pretty simple: 1) A per-project flake.nix + direnv file (or an env playground) 2) Configuring "etc/nixos/configuration.nix" for global tools like "wget, git, etc." (don't get me started with programs.<program_name>.enabled, see above for "too many ways to do the same thing")


> don't get me started with programs.<program_name>.enabled, see above for "too many ways to do the same thing"

programs.<program_name>.enabled implies that there is some system configuration needed in order for the program to function (or in home manager, the analog would be user configuration in your home directory).

Whereas environment.systemPackages simply puts bins on your path.


"I visited a GM dealership this week and the salesperson told me Super Cruise was not enabled for test drives."

Seems like a) the salesperson might not know his vehicles and perhaps it just wasn't a Super Cruise enabled vehicle (meaning, it wasn't added-on to that specific vehicle). b) the actual Super-Cruise module was broken in that vehicle, and that was his excuse c) he didn't know how or wasn't comfortable with telling you how to enable it. (some people are still quite afraid of giving full control over to computers)

I have tested numerous vehicles with Super Cruise; I quite enjoyed it.

I could be wrong, but unless it's a new GM rule, afaik, and with my understanding of how dealerships work (as far as the ones I've visited), dealerships try to avoid messing with the vehicle programming as much as they can. It's rather sad, as aside from the manufactures, dealerships have the most tools and access to the vehicles programming, but rarely-if-ever stray from the service manual.

Custom programming kind of is a market for that reason.

Living in a state with a very large automotive industry, there are a lot of people who have the tools + knowledge that offer custom programming services like: Programming the key fob that if one was to hold the unlock-door button for 5 seconds, the driver side window opens. And if the lock button is pressed once, then held for 5 seconds, all the windows are rolled up. Enabling a bunch of different video codecs/formats and enabling video-playback while the car is in motion if the passenger seat detects something siting there, etc, etc...


The vehicle was equipped for Super Cruise. The feature is tied to a subscription account, and GM/the dealership do not provide subscriptions for showroom cars. After I wrote my comment, the dealership contacted me to say they had set up a demo subscription with GM for the vehicle if I wanted another test drive.


I know of a even more impressive website that will transfer playlists from Spotify (or 20 other platforms, including text files) to 20 other platforms or a text file. I will share the link, but don't hug it to death y'all. :)

https://app.tunemymusic.com/transfer


I used this. It worked fine. It's a shame it's necessary though... I wish there was some kind of vendor-neutral import/export format rather than requiring a third party to solve the whole matrix of integrations.


The music industry needs to more widely use some kind of equivalent to the ISBN that the book industry uses. A simple "ISMN" list per playlist/library would be all that would be needed to move between services when both apps have the same songs.

One could also imagine a standardized ismn://<number> URL format that could open in your preferred music app, and this could work even without a streaming service if you already own that song in your personal music collection.

ISMN seems to exist: https://www.loc.gov/ismn/about.html

But, I've never actually seen it used for recordings; it seems to be focused solely on music notation. So, it would be nice to have some kind of recording-focused identifier for keeping track of specific performances between services.


This exists and is called ISRC. This metadata is embedded in a subchannel on CD's.

https://en.wikipedia.org/wiki/International_Standard_Recordi...


Cool, I didn’t know that. I wish it were actually used by the various music apps.


It's a pity that compression is likely to provide subtly different data under different network conditions. If everything were lossless we could just use hashes as identifiers and proceed without the participation of the apps.

After all, they have no incentive to make this easy for us.


This is actually a beautiful idea. It'd definitely be possible for music purchased through bandcamp since lossless is generally available for most releases. Commenting to bookmark this.


MusicBrainz has also been making a list of unique identifiers for music tracks: https://musicbrainz.org/


They’re called magnet links.


Yeah, but the next step is to make identifier somethink like a has so the media can be content addressable.

Wait, we can't have that. It's too convenient


Content addressable doesn't really work here... different apps may have the same recordings encoded in different formats and bitrates, but they are still the same recording. Unless you meant "content addressable" in the sense of a uniquely assigned identifier like I was already talking about, and not a computed identifier from the raw bytes of the file like a hash.


This sounds like an acoustic fingerprint, such as AcoustID[0]. I think AcoustIDs and XSPF[1] would be a good combination for shared playlists. It's a shame that development stopped on the Tomahawk music player[2], it would have been an ideal platform for shared playlists like this.

[0] https://musicbrainz.org/doc/AcoustID

[1] https://en.wikipedia.org/wiki/XML_Shareable_Playlist_Format

[2] https://github.com/tomahawk-player/tomahawk


Now we just need to associate payment/attribution related metadata with those identifiers


> I wish there was some kind of vendor-neutral import/export format rather than requiring a third party to solve the whole matrix of integrations.

"vendor-neutral import/export format" sounds like the definition of third party. It's not that there shouldn't be a third party, it's that spotify etc. should adopt it.


I recently made a transition from Spotify to Tidal and found the suggested transfer service to do the job really clumsy. In my case I've transferred favorite artists and the service was just trying to match them by name which failed miserably when there was more than one with the same name - seemingly it picked one randomly. I wonder how this service would do.


I recently made the switch as well and used spotify_to_tidal [1] which is the free and open-source alternative to what Tidal recommends and it worked pretty fine! it couldn't find some specific tracks and I bet it does a somewhat similar name match as the one Tidal recommends, but at least this one doesn't have a limitation by the number of tracks, in case it's useful to someone else.

[1] https://github.com/spotify2tidal/spotify_to_tidal


other than name match, what exactly do you expect them to attempt to do? use a shazam like process to analyze each potential match?


Use the Spotify artist ID[0] to find the Wikidata entry, and then grab the Tidal artist ID from the Wikidata entry to match the correct artist on Tidal. Even better if you use album IDs. (Brain explodes if you could use a song ID.)

Realistically, Wikidata may not have enough of this data populated, but it is nice to dream. And it seems plausible that MusicBrainz or similar might have enough data.

[0] https://www.wikidata.org/wiki/Property:P1902

[1] https://www.wikidata.org/wiki/Property:P4576

Edit: P1902 has 57000 uses and P4576 has 7000. So YMMV big time.


Great, yet another attempt at solving this with yet another standard that not everyone will use. Why did you pick this attempt instead of something more common like Gracenote?


Gracenote is owned by private equity and has limited availability of data. I prefer to encourage the use of more open data. MusicBrainz or Discogs would have been better choices than Wikidata based on quantity of entries. Though in 5 minutes I have been unable to find if Discogs even has external IDs, and I am not sure of the quantity of Spotify IDs that MusicBrainz has.


Great that you want to use open sources, but now, you've just provided more evidence for my case as you've listed 2 new "sources of truth". Even that fact that there are plural truth sources indicates no one source is truth. Why are they different? Same reasons that have already been discussed

So, we really have not made any forward progress here


Reality is that simply very few people use this functionality.

If those two open access sources become big enough, it is quite clear that someone will make a project to reconcile the data between them.

If any of those projects skyrockets the same way wikipedia skyrocketed, then the topic will be solved.


If If If. This isn't blind pessimism. This is from someone that has dealt with metadata from studios/labels for just under two decades. IMDB was meant to do this for movies/tv, but yet it's an absolute dumpster fire.

So from an outside perspective, it's fun to dream a little dream, but from a gray beard it's just yet another dream.


It could check the album names on both sides, for example. And in case of uncertainty, it could make a list of dubious matches. Stuff like that, I guess.


The point is that it's all just metadata. There's a saying along the lines of "the filename is a really bad place to store metadata". Whether the title is the same and/or the album name as an additional qualifier, it's all subject to data entry which is prone to mistakes.


To some extent yes, but that data is usually sent from record label with the same values for different streaming services. But anyway, don't tell me that they can't at least figure out that there are more than one artists with the same name...


Record labels are actually quite terrible at providing this. You would assume otherwise because it’s in their best interest. However, I work in the industry and can tell you it’s a ridiculous problem because their is no standard and lots of human effort in cleanup and cleanliness.


You'd think that, but not in my experience. It's not like they are getting ID3 tags populated by Gracenote or some such service. You're also assuming that the streaming platforms do not attempt to manipulate the metadata they received for their own internal policies. See my other comment in a sibling thread for specific examples.

Too much inside baseball experience with the data the studios/labels believe is perfect that when received is far from perfect leaving the individual platforms to deal with it.


Allll the other associated metadata is useful...


You say that as if all metadata is the same. I can tell you it is not. Every company that uses metadata will at some point use a field differently from someone else. "The Album" => "Album, The" type of things. "Album" => "Album (YYYY)" types of things. "Track remix by Artist" => "Track" + "Producer" as different fields.


My impression is that Tidal does a bad job of this in general. I have lots of artists I follow on there who have albums appearing on their page from identically named but different artists.


Don't get me started on that. How can a company which core business is content streaming be that lazy is beyond me. I often feedback them the errors, but even such feedback is difficult.


Sadly it’s an expensive scaling problem. Not trivial to solve at the scale streaming platforms operate at.


Well, at least they could make it easy to feedback, like a button on the artist/album page. But it's it really that hard to do it themselves? They are not getting a million albums per day, do they? I'm sure there are ways to improve the process with a little good will.


Discogs seems to handle it just fine.


Anyone know of a technical solution to retrieve a list of 'titles' for deleted videos from a youtube playlist? Have at least 10x Playlists full of removed/deleted music that has been inappropriately copyright striked, but I can't even reconstitute the playlists as I don't have the Title/Artist for the removed tracks.


Paste the URL into savefrom, they have a cache


I manually copy pasted the video urls into services that lookup details and check web archive



Thanks for sharing! I didn't want to sign up for a monthly subscription to transfer my music...


Agreed.

Having said that I have used https://ko-fi.com/zzzrod to support (if it can be called that) the dev (the link is from app homepage) as per my personal capacity. Because it is such an excellent service and provided for free and also because it isn't behind subscription. So thought I will share that. But of course it is perfectly fine to use it for free as well if one wants to. Cheers.


I didn't even know TuneMyMusic had a premium service, but fwiw, it's free for the first 500 songs. I've only used it a few times and was pretty impressed at how many services it supports.


I love TuneMyMusic, I exported my Spotify when I left, imported everything to Deezer, and now I periodically export everything from Deezer so I can slice and dice it in Excel for various reasons.


That’s the one I used when I moved from Spotify to YouTube music. Luckily my playlists contained less than 500 songs so the whole migration was easy and free.


I've used this site before when moving from Spotify to Youtube Music, worked really well and didn't take long to transfer everything over.


If this does as you say it does… thank you for posting this. Ive been thinking of trying to get away from spotify but felt trapped at the playlist loss. My kid are now conditioned for instant music that might be the bigger challenge.


Playlisty is a great iOS/MacOS app for doing it locally if you're using Apple Music.

https://www.obdura.com/playlisty/


I used Soundiiz to go from Spotify to YouTube. I paid 5$, but was happy to pay.


Soundiiz does this also. I've been using it for years. Great service


I found Soundiiz pretty bad, at least when transferring from Spotify and Apple Music to Youtube Music. It failed to find about a hundred tracks from the library of couple of thousand tracks, and they weren't some niche, rare things, too. I had to manually search for them, using the same titles, and found most of them.


This is so helpful. This is the one blocking piece preventing my transfer off Spotify.


CRA is meant as a starter application. IMO for anything serious, an app should either "eject" or use a framework.


CRA seems pretty much abandoned. I wouldn’t recommend it for anything nowadays. There are much better options for both starter and serious apps.


I would never touch another project that has ejected from its build tool, and I am almost certain that I would never do an eject on my own projects. The maintenance burden is too high and it always becomes a complete mess as dependencies go out of date.

I’d be interested to know for what reasons others have ejected? I have worked on 3 projects where some idiot dev had ejected for the silliest reasons. Since holding firm on my “never eject stance” I’ve never encountered a problem that I couldn’t solve without reading the docs more.


I’ve been unhappy with both options.

Ejecting gives you an incredibly complicated configuration (as CRA needs configs that can handle _any_ project) with a high maintenance cost as you say.

Not ejecting gave me other headaches. Any advanced stuff that wasn’t directly supported by CRA (that happened multiple times) required me to understand the underlying config _and_ how CRA interfaces with it _and_ how to force CRA to generate the right configs. The classic leaky abstraction problem. Plus, CRA wasn’t bug-free leading to its own problems where I also had to dig into internals. That’s all significant maintenance burden too (added complexity).

Out of the two options I’d almost certainly stick with “don’t eject”, but nowadays I heavily favour “don’t use these tools, keep build tooling simple”. And like so many people, I’m leaning more and more towards “it’s all so crazy complex (and broken) that it’s not worth it, don’t use React”. Things are getting _more_ complex with new developments rather than less, this is an insane ecosystem.


CRA was indeed a headache. Thankfully I use Vite now and I hardly ever think about it for my relatively simple SPAs.

What stack/tools are you currently using?


"I would never touch another project that has ejected from its build tool"

Maybe if it was something that first relied on a large framework, but CRA is not that. It is just a tool that kickstarts the development process, especially for the inexperienced.

Considering all it really provides is ESLint rules and a webpack config, if you're working on a serious project, a day or two of work shouldn't be a blocker. Besides, there are other options you can use besides webpack (e.g. vite, as in this post).

I know webpack scares many people, and TBH it is not a nice DX, but many enterprise/big projects require customizations that required ejections and a blanket statement like "I would never touch another project that has ejected" would severely limit your opportunities in working in the enterprise world.


A closed source application for controlling one's fan...umm no thank you.

I never will understand the reasoning behind why people are so afraid of releasing their source code. Looks like a weekend project; does he expect to make a living out of a weekend project?


>Looks like a weekend project;

Is that the best developer insult in your repertoire?

>does he expect to make a living out of a weekend project?

Trying to make money from writing SW is not illegal. The free market will decide.

>A closed source application for controlling one's fan...umm no thank you.

Well since you think it's only a weekend project, why don't you put your money where your mouth is and spend a weekend developing a FOSS fan control app if you need one?


> Looks like a weekend project; does he expect to make a living out of a weekend project?

Why won’t you spend a weekend and do the world a service?


In this case, every OEM will just copy it and slap their name on it. He released it as freeware and he has every right to do so. You have no right to others work.


It's a .NET program without any obfuscation. You can read the source code using any .NET decompiler, such as ILSPY.


High-quality PDF Version of the manual (NASA Graphics Standards Manual) if anyone is interested (legally distributed by NASA): https://www.nasa.gov/wp-content/uploads/2015/01/nasa_graphic...

Never was the type of person to spend $90 on a look-book/coffee-table book, but bless those who make things like this possible I guess \-_-/


bless you as well for linking this !


> legally distributed by NASA

They're a public agency. Anyone is entitled to "legally" distribute this material.


A few famous whistleblowers might want to disagree with you :P


Non-classified information produced by the US government is placed into the public domain automatically.

Presumably, since it is a work-product of the US government, classified information is also technically in the public domain, but is protected by mechanisms other than claiming copyright.


A) thank you so much!

B) used bookstores sell coffee table books for dirt cheap sometimes, check it out if your taste is more flexible

C) wow page 11 bothers me. Why, why, why… the grid is there for a reason!! Just make it line up with the grid, oh my god

EDIT: page 39 is also a really neat tip, for anyone writing a book. TL;DR: format your cover as a variation of your content pages. Might apply to websites and their splash pages, too! Certainly stands in contrast to the current SOP for SV startup splash pages


> C) wow page 11 bothers me. Why, why, why… the grid is there for a reason!! Just make it line up with the grid, oh my god

Make what line up? LOL! I'm sympathetic to the outrage, but happy to note that measuring the world should never cross over to wishing the world fits a unit measurement.

The grid is a ruler, not a form-factor.

The ruler's unit is 1/3 of the stroke width, as explained in the caption on pg. 11.

Why the stroke width? Presumably because it's a constant for the logotype. From the stroke you can build the grid and describe all the other dimensions.

You could choose any multiple for the stroke. So why 3?

Zero-one-infinity = 3

https://en.m.wikipedia.org/wiki/Zero_one_infinity_rule

(I'm being glib)

Because it looks right. Because 0 is not enough. 1 just begs for a sub-unit. 2 is merely twice 1. More than 3 is gratuitous.

"Three is the number thou shalt count and the number of the count shall be three..."

Holy Hand Grenade of Antioch

https://m.youtube.com/watch?v=xOrgLj9lOwk


Aligning fonts on a grid in the way you're suggesting is a common beginner mistake in typography.

https://en.wikipedia.org/wiki/Overshoot_(typography)


The paragraphs at the top of page 11 explain why the grid is there.


Re: grid: Rules are meant to be broken :)

Visual weight sometimes dictates a slightly less than perfect alignment.


While photographing I was trying to get an image perfectly aligned, but couldn't get it done. A friend, who was with me, said his best image was unaligned intended, because it would look just not aligned, even when it was. Since then I don't care anymore if the image is not perfectly aligned, but looks like it is, to the eye.

Thank you for bringing back this memory with your comment!


Sorta related: (if this video triggers some brain neurons from the past)

In 2018, this was solved by some guys (I believe one worked for Boston Dynamics) in 0.38s.

Video: https://www.youtube.com/watch?v=nt00QzKuNVY

Hardware Info: https://build-its-inprogress.blogspot.com/2018/03/the-rubiks...

Software Info: https://cactus-zone.blogspot.com/2018/03/rubiks-solver-softw...


It's very related: it's mentioned in the article. :)


Very interesting video!

In the slowed version it seemed like the operations were fully sequential, I think they might be able to achieve a shorter time by overlapping some operations and potentially with edge-cutting too

In the slow-montion footage of the shared faster Mitsubishi robot you can see it's doing some operations in parallel (but not edge-cutting)


I think edge-cutting would possibly just disassemble the cube at this speed.


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: