https://fed.brid.gy
it completely removes the reflection stage which *really* *significantly* improves performance
very relevant for me, as I'm getting barraged with up to couple hundred AIS messages per second
#dotnet #buildinpublic #ais #geosky
it completely removes the reflection stage which *really* *significantly* improves performance
very relevant for me, as I'm getting barraged with up to couple hundred AIS messages per second
#dotnet #buildinpublic #ais #geosky
(these are real AIS messages from a public source, connected with websocket)
aisstream.io 👈
#maritime #navigation #geosky #buildinpublic #dotnet
(these are real AIS messages from a public source, connected with websocket)
aisstream.io 👈
#maritime #navigation #geosky #buildinpublic #dotnet
and optimized endpoint response from 4 s to ~250 ms!
due to:
- querying only GID for intersection, doing it with raw sql
- using EF to find the EEZ by gid
- removed now unneeded geometry field from entity
#buildinpublic #geosky #dotnet #angular #efcore
and optimized endpoint response from 4 s to ~250 ms!
due to:
- querying only GID for intersection, doing it with raw sql
- using EF to find the EEZ by gid
- removed now unneeded geometry field from entity
#buildinpublic #geosky #dotnet #angular #efcore
it will display whatever different marine zone(s) the point is within
and will be situated in this cool freshly made side panel <( ̄︶ ̄)> (post below👇)
backend endpoint works ✅
#buildinpublic #dotnet #webdev #api #geosky
moved postgres' /data folder contents, allowed Full control of Network service over new folder and modified service invocation command to refer to it
#database #postgres #sql #dev #windows
data is sent from Leaflet map to Angular components via a Subject observable service
(there will be way more info on this side panel)
#gis #geosky #maps #angular #buildinpublic #webdev
#css #buildinpublic #tailwind #web #webdev
#css #buildinpublic #tailwind #web #webdev
#tailwind #css #webdev #buildinpublic
#tailwind #css #webdev #buildinpublic
that default is added to DbContext too, creating ID conflicts especially (!) during addition
#dotnet #efcore #csharp #dev #entityframework
that default is added to DbContext too, creating ID conflicts especially (!) during addition
#dotnet #efcore #csharp #dev #entityframework
obvious workaround - set exact height in css - too sketchy
right answer - expanding component itself with shadow DOM (:host class)
#buildinpublic #angular #web #css #maps
(look right in the middle)
(was randomly spinning the map, having fun with completed #eez, found these... danger zones or something)
mapcarta.com/W383490935 - on esd 138
#maps #OSM #geosky #geospatial #sea
(look right in the middle)
(was randomly spinning the map, having fun with completed #eez, found these... danger zones or something)
mapcarta.com/W383490935 - on esd 138
#maps #OSM #geosky #geospatial #sea
made the chunks streaming order make sense! :D
on world/continent zooms 1-4 - the closer to viewport center, the sooner on map
on the rest of the zooms - sorted by area: first big chunks, then little crevices
#buildinpublic #dev #geosky #maps #openseas
and don't know maybe some frens will come here from mastodon :)
#fediverse #bridgyfed #bluesky #mastodon
and don't know maybe some frens will come here from mastodon :)
#fediverse #bridgyfed #bluesky #mastodon
so I added both connection strings into the api's appsettings.json
and environment detection logic by the Docker variable in the api's Program.cs part by which the right string is chosen
heh the console logging added earlier came in handy
#docker #devops #dotnet #postgresql #buildinpublic
so I added both connection strings into the api's appsettings.json
and environment detection logic by the Docker variable in the api's Program.cs part by which the right string is chosen
heh the console logging added earlier came in handy
#docker #devops #dotnet #postgresql #buildinpublic
turned out that postgres connection string was the culprit. its Host part had value "localhost". it made the api, to no avail, search for DBMS within the container
the right value is host.docker.internal
also re-ran the container with port mappings
#docker #postgresql #devops #buildinpublic
turned out that postgres connection string was the culprit. its Host part had value "localhost". it made the api, to no avail, search for DBMS within the container
the right value is host.docker.internal
also re-ran the container with port mappings
#docker #postgresql #devops #buildinpublic
though at first there was a fail - a service that saves something into the db every N minutes, crashed the program..
(1/3)
#docker #postgresql #devops #buildinpublic
though at first there was a fail - a service that saves something into the db every N minutes, crashed the program..
(1/3)
#docker #postgresql #devops #buildinpublic
had some labels, wanted to add text with js, so left them empty in markup - code smell⚠️
okay, added the pair of for + id, still⚠️
also tried nesting, nah⚠️
turns out without text they are not perceivable at all...
#aspnet #razor #dotnet #dev #web
also I decided to simplify more for speed's sake, completely change from PreserveTopology to just ST_Simplify on first 2 zoom tiers + on 3rd for a few countries with the most complex shorelines
#buildinpublic #dev #postgis #geosky #maps #leaflet
in these wee few lines of code I learnt whole 2 facts
1 - nowadays we should prefix custom headers with app name, not X
2 - Expose-Headers doesn't work like true/false, we should pass header names to it 😅
#buildinpublic #web #dev #dotnet #http
in these wee few lines of code I learnt whole 2 facts
1 - nowadays we should prefix custom headers with app name, not X
2 - Expose-Headers doesn't work like true/false, we should pass header names to it 😅
#buildinpublic #web #dev #dotnet #http
- at least 8 characters
- no passwords from the top 50 most popular list (among 8+ characters)
- no reusing old passwords when recovering
last pic are my extra tables in identity db
#buildinpublic #dotnet #dev
- at least 8 characters
- no passwords from the top 50 most popular list (among 8+ characters)
- no reusing old passwords when recovering
last pic are my extra tables in identity db
#buildinpublic #dotnet #dev
- track by at least 1 chunk then eez are loaded incomplete
- track by only when all chunks are on map (its rare) and there will be duplicates
#buildinpublic #dev #gis #geosky #sql
data about which eez are in viewport is saved in in #redis cache (posts below =) ), the set is identified by a session id. for this part I had to learn A LOT about cookies today (ꏿ﹏ꏿ;)
#buildinpublic #dev #geosky #maps
so switched to actually using #redis in docker
#docker #devops #buildinpublic
so switched to actually using #redis in docker
#docker #devops #buildinpublic
earlier when learning devops I always practiced on Ubuntu, this time chose an alternative just as popular to work with because why not
mind blown to see a. Linux in Windows. like Usual App to Open and Pin to taskbar.. (゜o゜;
#linux #debian #dev