[{"id":"116086750780399245","created_at":"2026-02-17T15:47:23.112Z","in_reply_to_id":null,"in_reply_to_account_id":"418247","sensitive":false,"spoiler_text":"","visibility":"unlisted","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/116086750780399245","url":"https://mastodon.social/@swiftcoder/116086750780399245","replies_count":0,"reblogs_count":0,"favourites_count":2,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.radio/@M0YNG\" class=\"u-url mention\">@<span>M0YNG</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://social.treehouse.systems/@whitequark\" class=\"u-url mention\">@<span>whitequark</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://catcatnya.com/@elexia\" class=\"u-url mention\">@<span>elexia</span></a></span> this one weird phenomenon means second-hand MacBooks have stayed basically the same price this whole time</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"418247","username":"M0YNG","url":"https://mastodon.radio/@M0YNG","acct":"M0YNG@mastodon.radio"},{"id":"115439100728983853","username":"whitequark","url":"https://social.treehouse.systems/@whitequark","acct":"whitequark@treehouse.systems"},{"id":"111710445477329614","username":"elexia","url":"https://catcatnya.com/@elexia","acct":"elexia@catcatnya.com"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115917987322180815","created_at":"2026-01-18T20:28:37.101Z","in_reply_to_id":"115917768415570345","in_reply_to_account_id":"111355660496857789","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115917987322180815","url":"https://mastodon.social/@swiftcoder/115917987322180815","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://social.treehouse.systems/@be_far\" class=\"u-url mention\">@<span>be_far</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@c0dec0dec0de\" class=\"u-url mention\">@<span>c0dec0dec0de</span></a></span> that one you can toggle off, btw, in accessibility settings - <a href=\"https://support.apple.com/en-gb/guide/iphone/iph145eba8e9/ios\" target=\"_blank\" rel=\"nofollow noopener\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">support.apple.com/en-gb/guide/</span><span class=\"invisible\">iphone/iph145eba8e9/ios</span></a></p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"111355660496857789","username":"be_far","url":"https://social.treehouse.systems/@be_far","acct":"be_far@treehouse.systems"},{"id":"109372891638499110","username":"c0dec0dec0de","url":"https://hachyderm.io/@c0dec0dec0de","acct":"c0dec0dec0de@hachyderm.io"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":{"url":"https://support.apple.com/en-gb/guide/iphone/iph145eba8e9/ios","title":"Reach the top of the iPhone screen with one hand","description":"Use Reachability to lower the top half of the iPhone screen and make it more easily accessible with one hand.","language":"en","type":"link","author_name":"","author_url":"","provider_name":"Apple Support","provider_url":"","html":"","width":0,"height":0,"image":null,"image_description":"","embed_url":"","blurhash":null,"published_at":null,"authors":[]},"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115916587654259203","created_at":"2026-01-18T14:32:39.893Z","in_reply_to_id":"115916530120014109","in_reply_to_account_id":"108202856115931230","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115916587654259203","url":"https://mastodon.social/@swiftcoder/115916587654259203","replies_count":0,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.ie/@abban\" class=\"u-url mention\">@<span>abban</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@jonikorpi\" class=\"u-url mention\">@<span>jonikorpi</span></a></span> I didn&#39;t even know about that one 🤣</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"108202856115931230","username":"abban","url":"https://mastodon.ie/@abban","acct":"abban@mastodon.ie"},{"id":"109300795072423343","username":"jonikorpi","url":"https://mastodon.gamedev.place/@jonikorpi","acct":"jonikorpi@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115916508690856679","created_at":"2026-01-18T14:12:34.978Z","in_reply_to_id":"115916502510796997","in_reply_to_account_id":"109372891638499110","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115916508690856679","url":"https://mastodon.social/@swiftcoder/115916508690856679","replies_count":1,"reblogs_count":0,"favourites_count":0,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@c0dec0dec0de\" class=\"u-url mention\">@<span>c0dec0dec0de</span></a></span> shoot, you are right 🤦</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"109372891638499110","username":"c0dec0dec0de","url":"https://hachyderm.io/@c0dec0dec0de","acct":"c0dec0dec0de@hachyderm.io"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115916159239718559","created_at":"2026-01-18T12:43:42.779Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115916159239718559","url":"https://mastodon.social/@swiftcoder/115916159239718559","replies_count":4,"reblogs_count":5,"favourites_count":14,"quotes_count":0,"edited_at":null,"content":"<p>Apple UX designers please stop overloading swipe gestures challenge (difficulty: impossible)</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[{"id":"115916154874672426","type":"image","url":"https://files.mastodon.social/media_attachments/files/115/916/154/874/672/426/original/f856e775ee657653.png","preview_url":"https://files.mastodon.social/media_attachments/files/115/916/154/874/672/426/small/f856e775ee657653.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":768,"height":1536,"size":"768x1536","aspect":0.5},"small":{"width":339,"height":678,"size":"339x678","aspect":0.5}},"description":"Annotated iOS 26 screen shot showing the 5 different vertical swipe gestures in mobile Safari","blurhash":"UYMj{,kD%LxuRjj]WXWV~qj[RjkC_3WBRPt6"}],"mentions":[],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115729004334357040","created_at":"2025-12-16T11:27:45.555Z","in_reply_to_id":"115728959083756686","in_reply_to_account_id":"465088","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115729004334357040","url":"https://mastodon.social/@swiftcoder/115729004334357040","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@runevision\" class=\"u-url mention\">@<span>runevision</span></a></span> I wonder how well it would work to form a voronoi diagram and then relax it, rather than the incremental springy approach?</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"465088","username":"runevision","url":"https://mastodon.gamedev.place/@runevision","acct":"runevision@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115717141218055536","created_at":"2025-12-14T09:10:48.765Z","in_reply_to_id":"115711733234288324","in_reply_to_account_id":"114488868963757256","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115717141218055536","url":"https://mastodon.social/@swiftcoder/115717141218055536","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@eniko\" class=\"u-url mention\">@<span>eniko</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@lisyarus\" class=\"u-url mention\">@<span>lisyarus</span></a></span> ok, that’s a scene graph 🤣</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"114488868963757256","username":"eniko","url":"https://mastodon.gamedev.place/@eniko","acct":"eniko@mastodon.gamedev.place"},{"id":"109308954021871818","username":"lisyarus","url":"https://mastodon.gamedev.place/@lisyarus","acct":"lisyarus@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115711689617003289","created_at":"2025-12-13T10:04:23.936Z","in_reply_to_id":"115711667769920148","in_reply_to_account_id":"114488868963757256","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115711689617003289","url":"https://mastodon.social/@swiftcoder/115711689617003289","replies_count":1,"reblogs_count":0,"favourites_count":2,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@eniko\" class=\"u-url mention\">@<span>eniko</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@lisyarus\" class=\"u-url mention\">@<span>lisyarus</span></a></span> it&#39;s only a scene graph if your drawing code actually traverses it like a tree! I tend to have some sort of tree for animations/interactions, but the renderer traverses the same entities as a flat list</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"114488868963757256","username":"eniko","url":"https://mastodon.gamedev.place/@eniko","acct":"eniko@mastodon.gamedev.place"},{"id":"109308954021871818","username":"lisyarus","url":"https://mastodon.gamedev.place/@lisyarus","acct":"lisyarus@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115678447595322947","created_at":"2025-12-07T13:10:30.940Z","in_reply_to_id":"115678428556512421","in_reply_to_account_id":"109300795072423343","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115678447595322947","url":"https://mastodon.social/@swiftcoder/115678447595322947","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@jonikorpi\" class=\"u-url mention\">@<span>jonikorpi</span></a></span> You&#39;d be amazed how many people don&#39;t use key repeat. The repeat also is set so slow as to be useless by default...</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"109300795072423343","username":"jonikorpi","url":"https://mastodon.gamedev.place/@jonikorpi","acct":"jonikorpi@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115626359654089613","created_at":"2025-11-28T08:23:52.031Z","in_reply_to_id":"115626336985810277","in_reply_to_account_id":"243556","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115626359654089613","url":"https://mastodon.social/@swiftcoder/115626359654089613","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@aeva\" class=\"u-url mention\">@<span>aeva</span></a></span> Pretty sure in this era they applied the Pentium or Celeron branding to the low-cost parts, and the Core 2 Duo branding to the high-cost parts</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"243556","username":"aeva","url":"https://mastodon.gamedev.place/@aeva","acct":"aeva@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115559685568746761","created_at":"2025-11-16T13:47:46.232Z","in_reply_to_id":"115556022648481901","in_reply_to_account_id":"26245","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115559685568746761","url":"https://mastodon.social/@swiftcoder/115559685568746761","replies_count":0,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@whitequark\" class=\"u-url mention\">@<span>whitequark</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@esoterra\" class=\"u-url mention\">@<span>esoterra</span></a></span> yeah, Zola bundles a local server, and unfortunately there isn&#39;t a Cargo feature to disable that (although it wouldn&#39;t be that hard to add one).</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"26245","username":"whitequark","url":"https://mastodon.social/@whitequark","acct":"whitequark"},{"id":"109932537310244682","username":"esoterra","url":"https://hachyderm.io/@esoterra","acct":"esoterra@hachyderm.io"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115554170284708008","created_at":"2025-11-15T14:25:09.729Z","in_reply_to_id":"115554099999774575","in_reply_to_account_id":"26245","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115554170284708008","url":"https://mastodon.social/@swiftcoder/115554170284708008","replies_count":1,"reblogs_count":0,"favourites_count":0,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@whitequark\" class=\"u-url mention\">@<span>whitequark</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@esoterra\" class=\"u-url mention\">@<span>esoterra</span></a></span> Fair enough, although I think you are more or less solving the same problem as a Github Worker with extra steps (`run arbitrary WASM bundle` is not that different to `run arbitrary command in a docker container` as far as the end result is concerned).</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"26245","username":"whitequark","url":"https://mastodon.social/@whitequark","acct":"whitequark"},{"id":"109932537310244682","username":"esoterra","url":"https://hachyderm.io/@esoterra","acct":"esoterra@hachyderm.io"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115554087933812515","created_at":"2025-11-15T14:04:13.096Z","in_reply_to_id":"115553957670097634","in_reply_to_account_id":"26245","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115554087933812515","url":"https://mastodon.social/@swiftcoder/115554087933812515","replies_count":1,"reblogs_count":0,"favourites_count":0,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@whitequark\" class=\"u-url mention\">@<span>whitequark</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@esoterra\" class=\"u-url mention\">@<span>esoterra</span></a></span> I don&#39;t disagree, but depending on who your target audience is, compiling their preferred SSG to a compatible WASM bundle sounds significantly harder than copy.pasting 5 lines of github action YAML.</p><p>If you are providing the prebuilt WASM bundles, well and good, but then we come back around to the &#39;specifically blessed SSGs&#39; problem</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"26245","username":"whitequark","url":"https://mastodon.social/@whitequark","acct":"whitequark"},{"id":"109932537310244682","username":"esoterra","url":"https://hachyderm.io/@esoterra","acct":"esoterra@hachyderm.io"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115553928414255701","created_at":"2025-11-15T13:23:39.019Z","in_reply_to_id":"115553915991111834","in_reply_to_account_id":"109932537310244682","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115553928414255701","url":"https://mastodon.social/@swiftcoder/115553928414255701","replies_count":1,"reblogs_count":0,"favourites_count":0,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://hachyderm.io/@esoterra\" class=\"u-url mention\">@<span>esoterra</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.social/@whitequark\" class=\"u-url mention\">@<span>whitequark</span></a></span> For what its worth, Zola can be tweaked to produce relocatable outputs, so I build my site in a github worker, and just copy the output into github-pages/cloudflare-pages/netlify. No need for the build tool at the hosting level at all.</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"109932537310244682","username":"esoterra","url":"https://hachyderm.io/@esoterra","acct":"esoterra@hachyderm.io"},{"id":"26245","username":"whitequark","url":"https://mastodon.social/@whitequark","acct":"whitequark"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115553915752238192","created_at":"2025-11-15T13:20:25.927Z","in_reply_to_id":"115553907870755676","in_reply_to_account_id":"108227161822023939","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115553915752238192","url":"https://mastodon.social/@swiftcoder/115553915752238192","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@lritter\" class=\"u-url mention\">@<span>lritter</span></a></span> <span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@floooh\" class=\"u-url mention\">@<span>floooh</span></a></span> Retrofits exist, but you often prove the process out in new builds, and only much later go back and retrofit existing buildings</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"108227161822023939","username":"lritter","url":"https://mastodon.gamedev.place/@lritter","acct":"lritter@mastodon.gamedev.place"},{"id":"233755","username":"floooh","url":"https://mastodon.gamedev.place/@floooh","acct":"floooh@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115542515001882743","created_at":"2025-11-13T13:01:04.177Z","in_reply_to_id":"115542496352037095","in_reply_to_account_id":"114489870759570131","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115542515001882743","url":"https://mastodon.social/@swiftcoder/115542515001882743","replies_count":1,"reblogs_count":0,"favourites_count":3,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://mastodon.gamedev.place/@Njord\" class=\"u-url mention\">@<span>Njord</span></a></span> 40ºC is just a nice summer day in a good chunk of the world! 😂</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"114489870759570131","username":"Njord","url":"https://mastodon.gamedev.place/@Njord","acct":"Njord@mastodon.gamedev.place"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115400395316732654","created_at":"2025-10-19T10:38:09.869Z","in_reply_to_id":"115400352869138473","in_reply_to_account_id":"109354473366647414","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115400395316732654","url":"https://mastodon.social/@swiftcoder/115400395316732654","replies_count":0,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@bug\" class=\"u-url mention\">@<span>bug</span></a></span> at some point I stopped making distance fields, and just directly evaluated the quadratics in the shader (loosely based on a description of what Slug was doing): <a href=\"https://www.shadertoy.com/view/sdXBDs\" target=\"_blank\" rel=\"nofollow noopener\" translate=\"no\"><span class=\"invisible\">https://www.</span><span class=\"\">shadertoy.com/view/sdXBDs</span><span class=\"invisible\"></span></a></p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"109354473366647414","username":"bug","url":"https://fosstodon.org/@bug","acct":"bug@fosstodon.org"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115400339340979322","created_at":"2025-10-19T10:23:55.749Z","in_reply_to_id":"115394442452417833","in_reply_to_account_id":"109354473366647414","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115400339340979322","url":"https://mastodon.social/@swiftcoder/115400339340979322","replies_count":1,"reblogs_count":0,"favourites_count":1,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://fosstodon.org/@bug\" class=\"u-url mention\">@<span>bug</span></a></span> I poked at this a while back and decided I&#39;d stick to converting font glyphs to quadratic approximations. Well done!</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"109354473366647414","username":"bug","url":"https://fosstodon.org/@bug","acct":"bug@fosstodon.org"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115263956754884434","created_at":"2025-09-25T08:20:02.630Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115263956754884434","url":"https://mastodon.social/@swiftcoder/115263956754884434","replies_count":0,"reblogs_count":0,"favourites_count":0,"quotes_count":0,"edited_at":null,"content":"<p>You know, I&#39;ve had this blasted theme song stuck in my head for about the last 20 years, and it finally dawned on me that it&#39;s probably meant to be a heavily-synthed version of the Soviet national anthem</p>","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[{"id":"115263949486624904","type":"video","url":"https://files.mastodon.social/media_attachments/files/115/263/949/486/624/904/original/4f804eb4fc1dfd2f.mp4","preview_url":"https://files.mastodon.social/media_attachments/files/115/263/949/486/624/904/small/4f804eb4fc1dfd2f.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":776,"height":464,"frame_rate":"60/1","duration":41.633333,"bitrate":1175205},"small":{"width":640,"height":383,"size":"640x383","aspect":1.671018276762402},"focus":{"x":0.0,"y":0.0}},"description":"The theme song of the classic Macintosh shareware 4X game, Galactica Anno Dominari","blurhash":"U5P%O.D%-;?ct7xuRjIU4n-;-;IU~qoft7xt"}],"mentions":[],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}},{"id":"115263395257636872","created_at":"2025-09-25T05:57:14.873Z","in_reply_to_id":"115263335045108366","in_reply_to_account_id":"277578","sensitive":false,"spoiler_text":"","visibility":"unlisted","language":"en","uri":"https://mastodon.social/users/swiftcoder/statuses/115263395257636872","url":"https://mastodon.social/@swiftcoder/115263395257636872","replies_count":0,"reblogs_count":0,"favourites_count":2,"quotes_count":0,"edited_at":null,"content":"<p><span class=\"h-card\" translate=\"no\"><a href=\"https://vis.social/@kristinHenry\" class=\"u-url mention\">@<span>kristinHenry</span></a></span> there is always “renaissance man/woman” if you want to sound *more* pretentious 😂</p>","reblog":null,"application":{"name":"Mastodon for iOS","website":"https://app.joinmastodon.org/ios"},"account":{"id":"269956","username":"swiftcoder","acct":"swiftcoder","display_name":"Tristam","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2018-01-03T00:00:00.000Z","note":"<p>Recovering software engineer. Graphics, Procedural generation. Restauranteur</p>","url":"https://mastodon.social/@swiftcoder","uri":"https://mastodon.social/users/swiftcoder","avatar":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_static":"https://files.mastodon.social/accounts/avatars/000/269/956/original/6d4c8e156ede1b13.jpg","avatar_description":"","header":"https://mastodon.social/headers/original/missing.png","header_static":"https://mastodon.social/headers/original/missing.png","header_description":"","followers_count":114,"following_count":296,"statuses_count":353,"last_status_at":"2026-02-17","hide_collections":false,"show_media":true,"show_media_replies":true,"show_featured":true,"noindex":true,"emojis":[],"roles":[],"fields":[{"name":"Website","value":"<a href=\"https://trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">trist.am</span><span class=\"invisible\"></span></a>","verified_at":"2022-12-19T07:45:37.578+00:00"},{"name":"bsky","value":"<a href=\"https://bsky.app/profile/trist.am\" target=\"_blank\" rel=\"nofollow noopener me\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">bsky.app/profile/trist.am</span><span class=\"invisible\"></span></a>","verified_at":null}]},"media_attachments":[],"mentions":[{"id":"277578","username":"kristinHenry","url":"https://vis.social/@kristinHenry","acct":"kristinHenry@vis.social"}],"tags":[],"emojis":[],"tagged_collections":[],"quote":null,"card":null,"poll":null,"quote_approval":{"automatic":["public"],"manual":[],"current_user":"denied"}}]