[{"id":"116414910941451834","created_at":"2026-04-16T14:42:49.787Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116414910941451834","url":"https://uwyn.net/@glaforge/116414910941451834","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":"2026-04-16T14:50:25.619Z","content":"\u003cp\u003eThe new \u003ca href=\"https://uwyn.net/tags/Gemini\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eGemini\u003c/span\u003e\u003c/a\u003e 3.1 Text-to-Speech is pretty expressive! You can tune voices and intonation with audio tags and scene descriptions.\u003c/p\u003e\u003cp\u003eI played with it, via my Gemini Interactions SDK in \u003ca href=\"https://uwyn.net/tags/java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003ejava\u003c/span\u003e\u003c/a\u003e \u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/04/16/streaming-gemini-3-1-expressive-new-tts-model-in-java/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/04/16/\u003c/span\u003e\u003cspan class=\"invisible\"\u003estreaming-gemini-3-1-expressive-new-tts-model-in-java/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116414940540914105","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/414/940/540/914/105/original/61d98383d2d52dbd.jpg","preview_url":"https://uwyn.net/system/media_attachments/files/116/414/940/540/914/105/small/61d98383d2d52dbd.jpg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1376,"height":768,"size":"1376x768","aspect":1.7916666666666667},"small":{"width":642,"height":358,"size":"642x358","aspect":1.7932960893854748}},"description":null,"blurhash":"UJGl-XD*IqROtRIV-;M_E1Ip-pNI~WaJMxN_"}],"mentions":[],"tags":[{"name":"gemini","url":"https://uwyn.net/tags/gemini"},{"name":"java","url":"https://uwyn.net/tags/java"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/04/16/streaming-gemini-3-1-expressive-new-tts-model-in-java/","title":"Streaming Gemini 3.1's expressive new TTS model in Java","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1024,"height":572,"image":null,"image_description":"","embed_url":"","blurhash":"UJH2~5D*IpRNtRE2-;M_E1IV-pNI~pemMxN{","published_at":null,"authors":[]},"poll":null},{"id":"116391531908897453","created_at":"2026-04-12T11:37:14.062Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116391531908897453","url":"https://uwyn.net/@glaforge/116391531908897453","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":"2026-04-12T11:38:14.189Z","content":"\u003cp\u003e💭 Inspired by \u003cspan class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"https://mastodon.social/@maxandersen\" class=\"u-url mention\"\u003e@\u003cspan\u003emaxandersen\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e I forked my own little 🤖 𝗻𝗮𝗻𝗼𝗰𝗼𝗱𝗲 𝗰𝗼𝗱𝗶𝗻𝗴 𝗮𝗴𝗲𝗻𝘁 but using \u003ca href=\"https://uwyn.net/tags/langchain4j\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003elangchain4j\u003c/span\u003e\u003c/a\u003e  ➕ \u003ca href=\"https://uwyn.net/tags/gemini\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003egemini\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e\u003cp\u003e2 approaches:\u003cbr /\u003e1️⃣  AI service w/ all tools\u003cbr /\u003e2️⃣  multi-agent w/ specialized tools\u003c/p\u003e\u003cp\u003eBonus: Web search \u0026amp; Markdown rendering\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/04/11/a-simple-coding-agent-in-a-loop-with-langchain4j-jbang-and-gemini/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/04/11/\u003c/span\u003e\u003cspan class=\"invisible\"\u003ea-simple-coding-agent-in-a-loop-with-langchain4j-jbang-and-gemini/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[{"id":"109310053964924077","username":"maxandersen","url":"https://mastodon.social/@maxandersen","acct":"maxandersen@mastodon.social"}],"tags":[{"name":"langchain4j","url":"https://uwyn.net/tags/langchain4j"},{"name":"gemini","url":"https://uwyn.net/tags/gemini"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/04/11/a-simple-coding-agent-in-a-loop-with-langchain4j-jbang-and-gemini/","title":"A Simple Coding Agent in a Loop with LangChain4j, Jbang, and Gemini","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1600,"height":983,"image":null,"image_description":"","embed_url":"","blurhash":"U25OT:?vt8ozM_ozkDkC~q-;WEWCM{f+f+bb","published_at":null,"authors":[]},"poll":null},{"id":"116364071969863394","created_at":"2026-04-07T15:13:48.642Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116364071969863394","url":"https://uwyn.net/@glaforge/116364071969863394","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"content":"\u003cp\u003eThe open source ADK agent framework has a new URL and a refreshed homepage!\u003cbr /\u003e\u003ca href=\"https://adk.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eadk.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[],"tags":[],"emojis":[],"card":{"url":"https://adk.dev/","title":"Agent Development Kit (ADK)","description":"Build powerful multi-agent systems with Agent Development Kit (ADK)","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1200,"height":630,"image":null,"image_description":"","embed_url":"","blurhash":"U7S~x5jbxuofoza}azju~qkBM{j?smo0oea{","published_at":null,"authors":[]},"poll":null},{"id":"116351445986827261","created_at":"2026-04-05T09:42:51.429Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116351445986827261","url":"https://uwyn.net/@glaforge/116351445986827261","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"content":"\u003cp\u003eThe components of a coding agent by Sebastian Raschka\u003cbr /\u003e\u003ca href=\"https://magazine.sebastianraschka.com/p/components-of-a-coding-agent\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003emagazine.sebastianraschka.com/\u003c/span\u003e\u003cspan class=\"invisible\"\u003ep/components-of-a-coding-agent\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116351445373891720","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/351/445/373/891/720/original/f362858f0e20adc1.jpg","preview_url":"https://uwyn.net/system/media_attachments/files/116/351/445/373/891/720/small/f362858f0e20adc1.jpg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1408,"height":768,"size":"1408x768","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"U4PQ4=s+}]RE=w%#oRn#~LkBp1R7?cN3w6iv"}],"mentions":[],"tags":[],"emojis":[],"card":{"url":"https://magazine.sebastianraschka.com/p/components-of-a-coding-agent","title":"Components of A Coding Agent","description":"How coding agents use tools, memory, and repo context to make LLMs work better in practice","language":"en","type":"link","author_name":"Sebastian Raschka, PhD","author_url":"https://substack.com/@rasbt","provider_name":"Ahead of AI","provider_url":"","html":"","width":1200,"height":675,"image":null,"image_description":"","embed_url":"","blurhash":"UyOWvmbF~qWB9FjZ%Nfk%gazM{oft7a{RjjZ","published_at":"2026-04-04T11:45:37.000Z","authors":[{"name":"Sebastian Raschka, PhD","url":"https://substack.com/@rasbt","account":null}]},"poll":null},{"id":"116334419602760413","created_at":"2026-04-02T09:32:49.427Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116334419602760413","url":"https://uwyn.net/@glaforge/116334419602760413","replies_count":1,"reblogs_count":2,"favourites_count":2,"edited_at":null,"content":"\u003cp\u003eIt still amazes me how easy \u0026amp; fast it is to create \u003ca href=\"https://uwyn.net/tags/MCP\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eMCP\u003c/span\u003e\u003c/a\u003e servers in \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e with \u003ca href=\"https://uwyn.net/tags/jbang\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003ejbang\u003c/span\u003e\u003c/a\u003e, \u003ca href=\"https://uwyn.net/tags/langchain4j\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003elangchain4j\u003c/span\u003e\u003c/a\u003e and a custom skill inside \u003ca href=\"https://uwyn.net/tags/geminicli\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003egeminicli\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e\u003cp\u003eA handful of prompts, and less than 5 minutes later, I had created a working \u003ca href=\"https://uwyn.net/tags/Wikipedia\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eWikipedia\u003c/span\u003e\u003c/a\u003e MCP server!\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/04/02/creating-a-wikipedia-mcp-server-in-java-in-a-few-prompts/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/04/02/\u003c/span\u003e\u003cspan class=\"invisible\"\u003ecreating-a-wikipedia-mcp-server-in-java-in-a-few-prompts/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[],"tags":[{"name":"mcp","url":"https://uwyn.net/tags/mcp"},{"name":"java","url":"https://uwyn.net/tags/java"},{"name":"jbang","url":"https://uwyn.net/tags/jbang"},{"name":"langchain4j","url":"https://uwyn.net/tags/langchain4j"},{"name":"geminicli","url":"https://uwyn.net/tags/geminicli"},{"name":"wikipedia","url":"https://uwyn.net/tags/wikipedia"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/04/02/creating-a-wikipedia-mcp-server-in-java-in-a-few-prompts/","title":"Creating a Wikipedia MCP Server in Java in a Few Prompts with Skills","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1331,"height":669,"image":null,"image_description":"","embed_url":"","blurhash":"U8Q]ybIE?dk=%fRiV=enXli_SHR$-+b]t9w#","published_at":null,"authors":[]},"poll":null},{"id":"116295628025813068","created_at":"2026-03-26T13:07:36.937Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116295628025813068","url":"https://uwyn.net/@glaforge/116295628025813068","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"content":"\u003cp\u003e🎸Generate audio clips \u0026amp; full songs in \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e with the new \u003ca href=\"https://uwyn.net/tags/Lyria3\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eLyria3\u003c/span\u003e\u003c/a\u003e generative model, using my \u003ca href=\"https://uwyn.net/tags/Gemini\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eGemini\u003c/span\u003e\u003c/a\u003e Interactions Java SDK 🎶\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/03/25/generating-music-with-lyria-3-and-the-gemini-interactions-java-sdk/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/03/25/\u003c/span\u003e\u003cspan class=\"invisible\"\u003egenerating-music-with-lyria-3-and-the-gemini-interactions-java-sdk/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116295626851657406","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/295/626/851/657/406/original/a99436d554090c12.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/295/626/851/657/406/small/a99436d554090c12.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1864,"height":972,"size":"1864x972","aspect":1.9176954732510287},"small":{"width":665,"height":347,"size":"665x347","aspect":1.9164265129682998},"focus":{"x":-0.5,"y":0.43}},"description":"Code snippet showing how to invoke the Lyria model to generate songs in Java","blurhash":"U8R:KO00?Hs:01M{WBj?%2xut7WBRPRPR*Rj"}],"mentions":[],"tags":[{"name":"java","url":"https://uwyn.net/tags/java"},{"name":"lyria3","url":"https://uwyn.net/tags/lyria3"},{"name":"gemini","url":"https://uwyn.net/tags/gemini"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/03/25/generating-music-with-lyria-3-and-the-gemini-interactions-java-sdk/","title":"Generating music with Lyria 3 and the Gemini Interactions Java SDK","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1024,"height":512,"image":null,"image_description":"","embed_url":"","blurhash":"UPJ%L9D*IA~U%fMxxC%Mo}i^R+XTRkV[RkbI","published_at":null,"authors":[]},"poll":null},{"id":"116273950384497266","created_at":"2026-03-22T17:14:42.382Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116273950384497266","url":"https://uwyn.net/@glaforge/116273950384497266","replies_count":0,"reblogs_count":1,"favourites_count":2,"edited_at":null,"content":"\u003cp\u003eI created a small \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e library to extract \u003ca href=\"https://uwyn.net/tags/JSON\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJSON\u003c/span\u003e\u003c/a\u003e structures from chatty \u003ca href=\"https://uwyn.net/tags/LLM\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eLLM\u003c/span\u003e\u003c/a\u003e outputs that don\u0026#39;t always output pure JSON\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/03/22/extracting-json-from-llm-chatter-with-jsonspotter/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/03/22/\u003c/span\u003e\u003cspan class=\"invisible\"\u003eextracting-json-from-llm-chatter-with-jsonspotter/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[],"tags":[{"name":"java","url":"https://uwyn.net/tags/java"},{"name":"json","url":"https://uwyn.net/tags/json"},{"name":"llm","url":"https://uwyn.net/tags/llm"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/03/22/extracting-json-from-llm-chatter-with-jsonspotter/","title":"Extracting JSON from LLM chatter with JsonSpotter","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":1024,"height":512,"image":null,"image_description":"","embed_url":"","blurhash":"UDQ]+r$+.AabWSRnxuWT%ebFxdtPaTbWk6n-","published_at":null,"authors":[]},"poll":null},{"id":"116258193967163886","created_at":"2026-03-19T22:27:38.533Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116258193967163886","url":"https://uwyn.net/@glaforge/116258193967163886","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003e📢 Just released v0.8.0 of my \u003ca href=\"https://uwyn.net/tags/Gemini\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eGemini\u003c/span\u003e\u003c/a\u003e Interactions API for \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e, with a new tool: Google Maps 🗺️\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://github.com/glaforge/gemini-interactions-api-sdk?tab=readme-ov-file#built-in-tools-google-maps\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003egithub.com/glaforge/gemini-int\u003c/span\u003e\u003cspan class=\"invisible\"\u003eeractions-api-sdk?tab=readme-ov-file#built-in-tools-google-maps\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116258192260016061","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/258/192/260/016/061/original/596d900eba862d90.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/258/192/260/016/061/small/596d900eba862d90.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":894,"height":365,"size":"894x365","aspect":2.4493150684931506},"small":{"width":751,"height":307,"size":"751x307","aspect":2.446254071661238},"focus":{"x":-0.6,"y":0.04}},"description":"Snippet of code showing how to configure the Google Maps tool with the Gemini Interactions API for Java","blurhash":"U7Ryvq00ayxuRjRjf8t7%2Rja_oe?bt7Rjj["}],"mentions":[],"tags":[{"name":"gemini","url":"https://uwyn.net/tags/gemini"},{"name":"java","url":"https://uwyn.net/tags/java"}],"emojis":[],"card":{"url":"https://github.com/glaforge/gemini-interactions-api-sdk?tab=readme-ov-file#built-in-tools-google-maps","title":"GitHub - glaforge/gemini-interactions-api-sdk: Java implementation of the Gemini Interactions API","description":"Java implementation of the Gemini Interactions API - glaforge/gemini-interactions-api-sdk","language":"en","type":"link","author_name":"","author_url":"","provider_name":"GitHub","provider_url":"","html":"","width":0,"height":0,"image":null,"image_description":"Java implementation of the Gemini Interactions API - glaforge/gemini-interactions-api-sdk","embed_url":"","blurhash":"URR{uw%LM{xuR:tQRQt7V?V@ofae_NRQt7Rj","published_at":null,"authors":[]},"poll":null},{"id":"116198236727725377","created_at":"2026-03-09T08:19:43.663Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116198236727725377","url":"https://uwyn.net/@glaforge/116198236727725377","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"content":"\u003cp\u003eFixing \u003ca href=\"https://uwyn.net/tags/AISlop\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAISlop\u003c/span\u003e\u003c/a\u003e with a \u003ca href=\"https://uwyn.net/tags/SKILL\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eSKILL\u003c/span\u003e\u003c/a\u003e.md in \u003ca href=\"https://uwyn.net/tags/geminicli\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003egeminicli\u003c/span\u003e\u003c/a\u003e  \u003c/p\u003e\u003cp\u003eWell, at least, removing as much sloppiness as possible from AI generated text! And making it more human-readable ☺️\u003c/p\u003e\u003cp\u003eInspired by the awesome \u003ca href=\"https://tropes.fyi/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etropes.fyi/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e\u003cp\u003eExplanations and skill:\u003cbr /\u003e\u003ca href=\"https://glaforge.dev/posts/2026/03/08/fixing-ai-slop-with-a-skill-in-gemini-cli/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/03/08/\u003c/span\u003e\u003cspan class=\"invisible\"\u003efixing-ai-slop-with-a-skill-in-gemini-cli/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116198234788490537","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/198/234/788/490/537/original/508a2bacedaf35f7.jpg","preview_url":"https://uwyn.net/system/media_attachments/files/116/198/234/788/490/537/small/508a2bacedaf35f7.jpg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1376,"height":768,"size":"1376x768","aspect":1.7916666666666667},"small":{"width":642,"height":358,"size":"642x358","aspect":1.7932960893854748}},"description":null,"blurhash":"UGHVYL4U%K%M?uNbVrxur=ozofoejZRQt6Rk"}],"mentions":[],"tags":[{"name":"aislop","url":"https://uwyn.net/tags/aislop"},{"name":"skill","url":"https://uwyn.net/tags/skill"},{"name":"geminicli","url":"https://uwyn.net/tags/geminicli"}],"emojis":[],"card":{"url":"https://tropes.fyi/","title":"Tropes - AI Writing Pattern Directory","description":"The definitive reference for identifying AI writing patterns. Learn to spot the tropes that give away AI-generated text.","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":0,"height":0,"image":null,"image_description":"","embed_url":"","blurhash":null,"published_at":null,"authors":[]},"poll":null},{"id":"116190037344666267","created_at":"2026-03-07T21:34:31.006Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116190037344666267","url":"https://uwyn.net/@glaforge/116190037344666267","replies_count":0,"reblogs_count":0,"favourites_count":2,"edited_at":null,"content":"\u003cp\u003eNot being a native English speaker I miss some vocabulary. I wanted to know the words describing the elements of a comic book. \u003c/p\u003e\u003cp\u003eMy friend @NanoBanana came to the rescue! I asked:\u003c/p\u003e\u003cp\u003e\u0026quot;Create an illustration describing the various elements of a comic page (panels, bubbles, etc)\u0026quot;\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116190037177963470","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/190/037/177/963/470/original/df8445db306b0cc8.jpg","preview_url":"https://uwyn.net/system/media_attachments/files/116/190/037/177/963/470/small/df8445db306b0cc8.jpg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1408,"height":768,"size":"1408x768","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"UAMjaBOt-CUu9F%1aK$fyXrpivtTZ$ofIooe"}],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null},{"id":"116138243541632954","created_at":"2026-02-26T18:02:40.292Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116138243541632954","url":"https://uwyn.net/@glaforge/116138243541632954","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003e🍌⚡️ My favorite image model, now at flash speed!\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://uwyn.net/tags/NanoBanana\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eNanoBanana\u003c/span\u003e\u003c/a\u003e 2, pretty much the same quality as the pro version, but super, super fast!\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://blog.google/innovation-and-ai/technology/ai/nano-banana-2/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eblog.google/innovation-and-ai/\u003c/span\u003e\u003cspan class=\"invisible\"\u003etechnology/ai/nano-banana-2/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116138242691005530","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/138/242/691/005/530/original/a9ed3cd72e143f3c.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/138/242/691/005/530/small/a9ed3cd72e143f3c.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1408,"height":768,"size":"1408x768","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"UBL4pI{br;tU%FD,J:9u?aEAENXnMb$vnQbW"}],"mentions":[],"tags":[{"name":"nanobanana","url":"https://uwyn.net/tags/nanobanana"}],"emojis":[],"card":{"url":"https://blog.google/innovation-and-ai/technology/ai/nano-banana-2/","title":"Nano Banana 2: Combining Pro capabilities with lightning-fast speed","description":"Our latest image generation model offers advanced world knowledge, production-ready specs, subject consistency and more, all at Flash speed.","language":"en","type":"link","author_name":"Naina Raisinghani","author_url":"","provider_name":"Google","provider_url":"","html":"","width":1300,"height":731,"image":null,"image_description":"","embed_url":"","blurhash":"USOgQjNK00x[f-WBs,xu%hIVp0RPScxtt4aK","published_at":"2026-02-26T16:00:00.000Z","authors":[{"name":"Naina Raisinghani","url":"","account":null}]},"poll":null},{"id":"116126984709040482","created_at":"2026-02-24T18:19:24.140Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116126984709040482","url":"https://uwyn.net/@glaforge/116126984709040482","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":"2026-02-24T18:19:35.478Z","content":"\u003cp\u003e📢 Tomorrow at 🕐 1PM (Paris) / 🕛 noon (London), I\u0026#39;ll be your host for our \u003ca href=\"https://uwyn.net/tags/WednesdayBuildHour\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eWednesdayBuildHour\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e\u003cp\u003eI\u0026#39;ll guide you through an online workshop to learn how to 𝗕𝘂𝗶𝗹𝗱 \u003ca href=\"https://uwyn.net/tags/AI\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAI\u003c/span\u003e\u003c/a\u003e \u003ca href=\"https://uwyn.net/tags/Agents\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAgents\u003c/span\u003e\u003c/a\u003e 𝘄𝗶𝘁𝗵 \u003ca href=\"https://uwyn.net/tags/ADK\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eADK\u003c/span\u003e\u003c/a\u003e 𝗳𝗼𝗿 \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e\u003cp\u003e➡️ Register here: \u003ca href=\"https://goo.gle/wbh-adk-java\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egoo.gle/wbh-adk-java\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116126984340111775","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/126/984/340/111/775/original/40ed031876b91405.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/126/984/340/111/775/small/40ed031876b91405.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1302,"height":631,"size":"1302x631","aspect":2.063391442155309},"small":{"width":689,"height":334,"size":"689x334","aspect":2.062874251497006}},"description":null,"blurhash":"UBR{#?M{?baf?b%MtQof~qM{M{RjaeRjRjRi"}],"mentions":[],"tags":[{"name":"wednesdaybuildhour","url":"https://uwyn.net/tags/wednesdaybuildhour"},{"name":"ai","url":"https://uwyn.net/tags/ai"},{"name":"agents","url":"https://uwyn.net/tags/agents"},{"name":"adk","url":"https://uwyn.net/tags/adk"},{"name":"java","url":"https://uwyn.net/tags/java"}],"emojis":[],"card":{"url":"https://goo.gle/wbh-adk-java","title":"Wednesday Build Hour: Build AI Agents with the Agent Development Kit (ADK) for Java | Google Developer Groups","description":"Virtual Event - Create autonomous AI agents that can reason, plan, use tools, and solve complex problems.","language":"en","type":"link","author_name":"","author_url":"","provider_name":"Google Developer Groups","provider_url":"","html":"","width":2160,"height":2160,"image":null,"image_description":"","embed_url":"","blurhash":"UcE_p~]]OZNO+GWHF1OA56ALNExHOroa-B$d","published_at":null,"authors":[]},"poll":null},{"id":"116119654007406250","created_at":"2026-02-23T11:15:06.511Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116119654007406250","url":"https://uwyn.net/@glaforge/116119654007406250","replies_count":0,"reblogs_count":0,"favourites_count":2,"edited_at":null,"content":"\u003cp\u003e\u003ca href=\"https://uwyn.net/tags/Agent\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAgent\u003c/span\u003e\u003c/a\u003e \u003ca href=\"https://uwyn.net/tags/skills\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eskills\u003c/span\u003e\u003c/a\u003e help 𝗮𝘂𝘁𝗼𝗺𝗮𝘁𝗲 𝗿𝗲𝗽𝗲𝘁𝗶𝘁𝗶𝘃𝗲 𝘁𝗮𝘀𝗸𝘀.\u003c/p\u003e\u003cp\u003eRecently I used \u003ca href=\"https://uwyn.net/tags/GeminiCLI\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eGeminiCLI\u003c/span\u003e\u003c/a\u003e to easily create \u003ca href=\"https://uwyn.net/tags/MCP\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eMCP\u003c/span\u003e\u003c/a\u003e servers in \u003ca href=\"https://uwyn.net/tags/Java\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eJava\u003c/span\u003e\u003c/a\u003e with \u003ca href=\"https://uwyn.net/tags/jbang\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003ejbang\u003c/span\u003e\u003c/a\u003e \u0026amp; \u003ca href=\"https://uwyn.net/tags/LangChain4j\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eLangChain4j\u003c/span\u003e\u003c/a\u003e \u003c/p\u003e\u003cp\u003eI extracted that 𝗸𝗻𝗼𝘄𝗹𝗲𝗱𝗴𝗲 into a 𝗿𝗲𝘂𝘀𝗮𝗯𝗹𝗲 SKILL.md to create more servers!\u003c/p\u003e\u003cp\u003e\u003ca href=\"https://glaforge.dev/posts/2026/02/21/easily-build-a-local-mcp-server-in-java-with-a-skill-in-gemini-cli/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"ellipsis\"\u003eglaforge.dev/posts/2026/02/21/\u003c/span\u003e\u003cspan class=\"invisible\"\u003eeasily-build-a-local-mcp-server-in-java-with-a-skill-in-gemini-cli/\u003c/span\u003e\u003c/a\u003e\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[],"tags":[{"name":"agent","url":"https://uwyn.net/tags/agent"},{"name":"skills","url":"https://uwyn.net/tags/skills"},{"name":"geminicli","url":"https://uwyn.net/tags/geminicli"},{"name":"mcp","url":"https://uwyn.net/tags/mcp"},{"name":"java","url":"https://uwyn.net/tags/java"},{"name":"jbang","url":"https://uwyn.net/tags/jbang"},{"name":"langchain4j","url":"https://uwyn.net/tags/langchain4j"}],"emojis":[],"card":{"url":"https://glaforge.dev/posts/2026/02/21/easily-build-a-local-mcp-server-in-java-with-a-skill-in-gemini-cli/","title":"Easily Build a Local MCP Server in Java with a Skill inside Gemini CLI","description":"Tech blog of Guillaume Laforge, with articles on generative AI, LLMs, cloud computing, microservices architecture, serverless solutions, Java and Apache Groovy programming","language":"en","type":"link","author_name":"","author_url":"","provider_name":"","provider_url":"","html":"","width":2816,"height":1536,"image":null,"image_description":"","embed_url":"","blurhash":"U6R3TO68?0em;]-O.8wkI7x{RoJVwFv%.7XQ","published_at":null,"authors":[]},"poll":null},{"id":"116110579835622378","created_at":"2026-02-21T20:47:25.636Z","in_reply_to_id":null,"in_reply_to_account_id":"109358649378485294","sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116110579835622378","url":"https://uwyn.net/@glaforge/116110579835622378","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003e\u003cspan class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"https://mastodon.social/@metacosm\" class=\"u-url mention\"\u003e@\u003cspan\u003emetacosm\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e EXACTLY! \u003cbr /\u003eI don\u0026#39;t understand why people keep believing the exponential will never stop.\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[{"id":"109358649378485294","username":"metacosm","url":"https://mastodon.social/@metacosm","acct":"metacosm@mastodon.social"}],"tags":[],"emojis":[],"card":null,"poll":null},{"id":"116109684465297036","created_at":"2026-02-21T16:59:43.369Z","in_reply_to_id":null,"in_reply_to_account_id":"109340671537961131","sensitive":false,"spoiler_text":"","visibility":"unlisted","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116109684465297036","url":"https://uwyn.net/@glaforge/116109684465297036","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003e\u003cspan class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"https://social.lemee.co/@jb\" class=\"u-url mention\"\u003e@\u003cspan\u003ejb\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e Among many other things!\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[{"id":"109340671537961131","username":"jb","url":"https://social.lemee.co/@jb","acct":"jb@social.lemee.co"}],"tags":[],"emojis":[],"card":null,"poll":null},{"id":"116109468364287296","created_at":"2026-02-21T16:04:45.928Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116109468364287296","url":"https://uwyn.net/@glaforge/116109468364287296","replies_count":2,"reblogs_count":4,"favourites_count":4,"edited_at":null,"content":"\u003cp\u003e📈 All those people showing graphs with projected exponential growth about something... but future turns often more into a sigmoid function!\u003c/p\u003e\u003cp\u003e👋 Hello from the plateau!\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116109467920526561","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/109/467/920/526/561/original/d3e07450c303a4fe.jpeg","preview_url":"https://uwyn.net/system/media_attachments/files/116/109/467/920/526/561/small/d3e07450c303a4fe.jpeg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":2816,"height":1536,"size":"2816x1536","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"UBSr_taetkkC?^bHRPkCR5aetRofo}V[V@Rj"}],"mentions":[],"tags":[],"emojis":[],"card":null,"poll":null},{"id":"116108354876248816","created_at":"2026-02-21T11:21:35.451Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116108354876248816","url":"https://uwyn.net/@glaforge/116108354876248816","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003eComparing \u003ca href=\"https://uwyn.net/tags/Lean\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eLean\u003c/span\u003e\u003c/a\u003e and \u003ca href=\"https://uwyn.net/tags/Rocq\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eRocq\u003c/span\u003e\u003c/a\u003e (formerly known as Coq)\u003c/p\u003e\u003cp\u003eI thought both were theorem provers, but it seems Rocq is more for building verifiable software, while Lean is for more classical math.\u003c/p\u003e\u003cp\u003eSo Lean might be a better fit for the math explorations \u003ca href=\"https://uwyn.net/tags/LLMs\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eLLMs\u003c/span\u003e\u003c/a\u003e and \u003ca href=\"https://uwyn.net/tags/AI\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAI\u003c/span\u003e\u003c/a\u003e \u003ca href=\"https://uwyn.net/tags/Agents\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAgents\u003c/span\u003e\u003c/a\u003e are doing for solving problems.\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116108354190439929","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/108/354/190/439/929/original/c01d8aa661f27085.jpeg","preview_url":"https://uwyn.net/system/media_attachments/files/116/108/354/190/439/929/small/c01d8aa661f27085.jpeg","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1408,"height":768,"size":"1408x768","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"U8QTDc%3p3RP-xMyV?xsy0Shs@oy-:oztQM{"}],"mentions":[],"tags":[{"name":"lean","url":"https://uwyn.net/tags/lean"},{"name":"rocq","url":"https://uwyn.net/tags/rocq"},{"name":"llms","url":"https://uwyn.net/tags/llms"},{"name":"ai","url":"https://uwyn.net/tags/ai"},{"name":"agents","url":"https://uwyn.net/tags/agents"}],"emojis":[],"card":null,"poll":null},{"id":"116093484471032469","created_at":"2026-02-18T20:19:51.075Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116093484471032469","url":"https://uwyn.net/@glaforge/116093484471032469","replies_count":0,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003eSometimes, the \u003ca href=\"https://uwyn.net/tags/AI\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eAI\u003c/span\u003e\u003c/a\u003e talks to me...\u003c/p\u003e\u003cp\u003eI built a research workflow that uses \u003ca href=\"https://uwyn.net/tags/Gemini\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eGemini\u003c/span\u003e\u003c/a\u003e\u0026#39;s interactions API, Google\u0026#39;s Deep Research agent, also \u003ca href=\"https://uwyn.net/tags/nanobanana\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003enanobanana\u003c/span\u003e\u003c/a\u003e for illustration, and due to a timeout in my system, the sketchnote agent was yelling at me because I forgot to feed it! 🍴😋\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116093481812705165","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/093/481/812/705/165/original/432da8543be2f49d.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/093/481/812/705/165/small/432da8543be2f49d.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":1408,"height":768,"size":"1408x768","aspect":1.8333333333333333},"small":{"width":650,"height":355,"size":"650x355","aspect":1.8309859154929577}},"description":null,"blurhash":"UBQTAYtl?wND,tEftBxau4oaIUkC%gWAVYWB"}],"mentions":[],"tags":[{"name":"ai","url":"https://uwyn.net/tags/ai"},{"name":"gemini","url":"https://uwyn.net/tags/gemini"},{"name":"nanobanana","url":"https://uwyn.net/tags/nanobanana"}],"emojis":[],"card":null,"poll":null},{"id":"116085486964542723","created_at":"2026-02-17T10:25:58.810Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"fr","uri":"https://uwyn.net/users/glaforge/statuses/116085486964542723","url":"https://uwyn.net/@glaforge/116085486964542723","replies_count":0,"reblogs_count":2,"favourites_count":2,"edited_at":null,"content":"\u003cp\u003e⚠️ Si jamais vous tombez sur cette boutique en ligne, \u003ca href=\"https://uwyn.net/tags/Dundle\" class=\"mention hashtag\" rel=\"tag\"\u003e#\u003cspan\u003eDundle\u003c/span\u003e\u003c/a\u003e, passez votre chemin. \u003c/p\u003e\u003cp\u003e💩 Ce sont des arnaqueurs !\u003c/p\u003e\u003cp\u003eMa fille a essayé d\u0026#39;acheter plusieurs \u0026quot;game cards\u0026quot; pour des jeux vidéo pour un anniv.\u003c/p\u003e\u003cp\u003eAucune ne marchait.\u003c/p\u003e\u003cp\u003eLe site ne veut évidemment pas rembourser...\u003c/p\u003e\u003cp\u003e👺 ARNAQUE 👹\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[{"id":"116085485726199779","type":"image","url":"https://uwyn.net/system/media_attachments/files/116/085/485/726/199/779/original/613360e4c4554eba.png","preview_url":"https://uwyn.net/system/media_attachments/files/116/085/485/726/199/779/small/613360e4c4554eba.png","remote_url":null,"preview_remote_url":null,"text_url":null,"meta":{"original":{"width":2598,"height":1046,"size":"2598x1046","aspect":2.4837476099426388},"small":{"width":756,"height":304,"size":"756x304","aspect":2.486842105263158}},"description":null,"blurhash":"U7SPX_RP%MM|~qWCD%oIt7jYM{ayRQs.ofWE"}],"mentions":[],"tags":[{"name":"dundle","url":"https://uwyn.net/tags/dundle"}],"emojis":[],"card":null,"poll":null},{"id":"116080798494549314","created_at":"2026-02-16T14:33:38.434Z","in_reply_to_id":null,"in_reply_to_account_id":"111097170856285902","sensitive":false,"spoiler_text":"","visibility":"unlisted","language":"en","uri":"https://uwyn.net/users/glaforge/statuses/116080798494549314","url":"https://uwyn.net/@glaforge/116080798494549314","replies_count":1,"reblogs_count":0,"favourites_count":1,"edited_at":null,"content":"\u003cp\u003e\u003cspan class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"https://poils.pachyderme.net/@cadmos\" class=\"u-url mention\"\u003e@\u003cspan\u003ecadmos\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e Feel free to reuse it!\u003c/p\u003e","reblog":null,"application":{"name":"Web","website":null},"account":{"id":"109314675907601286","username":"glaforge","acct":"glaforge","display_name":"Guillaume Laforge","locked":false,"bot":false,"discoverable":true,"indexable":false,"group":false,"created_at":"2022-11-09T00:00:00.000Z","note":"\u003cp\u003e🥑 Developer Advocate for Google Cloud ☁️\u003cbr /\u003e🧠 Focusing on Generative AI 🤖\u003cbr /\u003e⭐ Co-founder of the 🪶 Apache Groovy programming language\u003cbr /\u003e☕ Java Champion 🏆\u003cbr /\u003e🦋 @glaforge.dev\u003cbr /\u003e📣 Co-host of Les Cast Codeurs Podcast\u003c/p\u003e","url":"https://uwyn.net/@glaforge","uri":"https://uwyn.net/users/glaforge","avatar":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","avatar_static":"https://uwyn.net/system/accounts/avatars/109/314/675/907/601/286/original/ae8293f6d838cdaf.jpg","header":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","header_static":"https://uwyn.net/system/accounts/headers/109/314/675/907/601/286/original/028d8e3802c3ac3f.jpg","followers_count":1401,"following_count":563,"statuses_count":978,"last_status_at":"2026-04-16","hide_collections":false,"noindex":false,"emojis":[],"roles":[],"fields":[{"name":"✒️ Blog","value":"\u003ca href=\"https://glaforge.dev/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003eglaforge.dev/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2023-03-06T12:36:44.212+00:00"},{"name":"🔗 LinkedIn","value":"\u003ca href=\"https://www.linkedin.com/in/glaforge/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://www.\u003c/span\u003e\u003cspan class=\"\"\u003elinkedin.com/in/glaforge/\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐦 Twitter","value":"\u003ca href=\"https://twitter.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003etwitter.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":null},{"name":"🐙 Github","value":"\u003ca href=\"https://github.com/glaforge\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\" translate=\"no\"\u003e\u003cspan class=\"invisible\"\u003ehttps://\u003c/span\u003e\u003cspan class=\"\"\u003egithub.com/glaforge\u003c/span\u003e\u003cspan class=\"invisible\"\u003e\u003c/span\u003e\u003c/a\u003e","verified_at":"2022-11-13T15:02:34.818+00:00"}]},"media_attachments":[],"mentions":[{"id":"111097170856285902","username":"cadmos","url":"https://poils.pachyderme.net/@cadmos","acct":"cadmos@poils.pachyderme.net"}],"tags":[],"emojis":[],"card":null,"poll":null}]