Spring Data JPA Postgres UUID @Id

I read lots of outdated info on this matter.

Using PostgreSQL v13+ there is a function called gen_random_uuid().
See the manual page of Postgres UUID.

Here’s an example entity called Page

As you see you can append the columnDefinition to the @Column annotation. “UUID default gen_random_uuid()”
This translates to following SQL

And you don’t have to worry about having an empty ID when inserting records.

Easily remember ManyToMany ManyToOne OneToMany

ManyToMany in a Person <> Blog Relationship
A Person can be a subscriber of many blogs.
A Blog can have many subscribers.

But since this is an inefficient way to manage usually a proxy table is used with [PersonID], [BlogID], aka the 2 related data models.

ManyToOne and OneToMany in a Person <> Blog Relationship
A Person can be the owner of many Blogs.
A Blog can have one owner Person.

In conclusion, ToMany means it’s an array, ToOne means it’s a single value.

Vue composition api: ensure variable is not null

I ran into a problem where I was loading data from the backend in App.vue and when loaded that data would be inserted into a vuex store and in another component queried.

However the loading took longer than expected and a data race happened. The route destination rendered faster than the backend could deliver data and it to be stored in the vuex store and returned.

Concretely I loaded a profile of the logged in user with vuex-orm and the axios plugin.
In order to grab the profile data I used

I wanted to update location data of that profile if it was different, which was done with a promise, because that’s how the cordova api works.
But profile was always null. And I tried ref() and reactive() but finally solved it with watch().

So whenever profile changes the location is updated. Of course I have checks to not update if it’s not required.

The initial state of profile is null, then it changes and updateProfile is called with the new value.

o2 DNS Auflösung mit Fehlern oder langsam

Es ist der 04.03.2022 seit ca. 18 Uhr funktioniert die DNS Auflösung bei O2 garnicht oder nur sehr langsam. Vor allem Google scheint probleme zu haben, aber nicht nur Google. Es ist bei mir Rechner- und Domänenübergreifend.

O2 in Göppingen, welches ca. 40km östlich von Stuttgart liegt.

Ich hab sie vorübergehend überbrückt mit meinem Server, als nächstes hätte ich OpenDNS, Google selbst oder Cloudflare versucht (8.8.8.8 8.8.4.4 bzw 1.1.1.1)

Kann jemand diese Beobachtung bestätigen?

WordPress is the worse “shareware” model

WordPress basic, which doesn’t have much functionality may be free and open, but the meat of it, the plugins, aren’t.

The WordPress plugin ecosystem has grown from being an useful extension framework to a monster of “shareware”, trialware only set out to make a sale.
Even the spamfilter Akismet, which once used to be free to all, isn’t free anymore. The restriction that you can’t have ads on your site for it to be free is not realistic.
This site for instance doesn’t even generate enough money to be able to afford the smallest, cheapest VPS. If I’m lucky I get 1 or 2 clicks / month.
Because all the visitors here have adblockers enabled, since it’s a technical savvy blog.
The code quality of those plugins is questionable, some even insert ads in your admin UI. I don’t have to explain the security implications.

The solution?
– Liberate WordPress Plugins. You should be able to change the plugin repository, just like you have multiple app stores on Android, you could have multiple plugin repositories.
– Move away from WordPress