從 Go 路由選擇看 “標準庫優先”:何時堅守?何時拓展?
大家好,我是 Tony Bai。最近,知名 Go 博主 Alex Edwards 更新了他那篇廣受歡迎的文章——“Which Go router should I use?1]”,特別提到了 [Go 1.22 版本對標準庫 http.ServeMux 的顯著增強。這篇文章再次引發了我們對 Go Web 開發中一個經典問題的思考:在選擇路由庫時,我們應該堅守標準庫,還是擁抱功能更豐富的第三方庫?這個 ⌘ Read more
從 Go 路由選擇看 “標準庫優先”:何時堅守?何時拓展?
大家好,我是 Tony Bai。最近,知名 Go 博主 Alex Edwards 更新了他那篇廣受歡迎的文章——“Which Go router should I use?1]”,特別提到了 [Go 1.22 版本對標準庫 http.ServeMux 的顯著增強。這篇文章再次引發了我們對 Go Web 開發中一個經典問題的思考:在選擇路由庫時,我們應該堅守標準庫,還是擁抱功能更豐富的第三方庫?這個 ⌘ Read more
@kat@yarn.girlonthemoon.xyz i’m actually going to cry real tears they only ship to germany, austria, and switzerland
OH MY FUCKING GOD I’M GOING TO CRY I NEED BIG TUX SO BAD https://www.steiner-plueschshop.de/kuscheltiere/arktis-seetiere/pinguin-linux/
@kat@yarn.girlonthemoon.xyz I CAN’T FUCKING SEW I’M GOING TO BRIBE MY SISTER TO MAKE ME ONE
good morning. i want a tux plushie so bad i am going to eat drywall
Go 語言 從設計到優化全流程 構建高併發權重抽獎系統
在現代互聯網應用中,抽獎系統被廣泛用於營銷活動、用戶激勵等場景。一個好的抽獎系統需要滿足:公平性:確保概率分佈準確高性能:支持高併發抽獎請求安全性:防止作弊和重複中獎可擴展:支持多種抽獎活動配置本文將基於 Go 語言實現一個完整的權重抽獎系統,涵蓋核心算法、併發控制、安全防護等關鍵設計。一、系統架構設計1. 整體架構圖2. 核心組件說明二、核心算法實現1. 權重區間算法type Prize str ⌘ Read more
Go 語言 從設計到優化全流程 構建高併發權重抽獎系統
在現代互聯網應用中,抽獎系統被廣泛用於營銷活動、用戶激勵等場景。一個好的抽獎系統需要滿足:公平性:確保概率分佈準確高性能:支持高併發抽獎請求安全性:防止作弊和重複中獎可擴展:支持多種抽獎活動配置本文將基於 Go 語言實現一個完整的權重抽獎系統,涵蓋核心算法、併發控制、安全防護等關鍵設計。一、系統架構設計1. 整體架構圖2. 核心組件說明二、核心算法實現1. 權重區間算法type Prize str ⌘ Read more
在 Go 中應該何時使用 panic?
如果你使用 Go 有一段時間了,可能聽說過 Go 的諺語 “don’t panic”。這句話的核心意思是:“優雅地處理錯誤,或者將錯誤返回給調用方去處理,而不是直接傳遞給內置的 panic() 函數。”儘管 “不要 panic” 是一個值得遵循的優秀準則,但有時候它被理解成“你絕對不能、絕不應該調用 panic()”。我並不這麼認爲,在某些少數情況下, panic() 是更合適的行爲。「爲什麼 p ⌘ Read more
在 Go 中應該何時使用 panic?
如果你使用 Go 有一段時間了,可能聽說過 Go 的諺語 “don’t panic”。這句話的核心意思是:“優雅地處理錯誤,或者將錯誤返回給調用方去處理,而不是直接傳遞給內置的 panic() 函數。”儘管 “不要 panic” 是一個值得遵循的優秀準則,但有時候它被理解成“你絕對不能、絕不應該調用 panic()”。我並不這麼認爲,在某些少數情況下, panic() 是更合適的行爲。「爲什麼 p ⌘ Read more
Why do Saturation and Luminance go all the way to 240, but Hue goes only to 239? And why 239 anyway?
Comments ⌘ Read more
@prologic@twtxt.net where on IRC? Network, channel, nick? IRC is vast! It’s like saying, “meet me in Australia, and we go from there!” 😅
@bender@twtxt.net Ahh I see. That reminds me, I was going to start watching something someone recommended here hmmm 🧐
@bender@twtxt.net How do you explain mine then? Unless it was registered before me, then let go of and I re-registered it later? 🤔
Also spent the morning continuing to think about a new design for EdgeGuard’s WAF. I’m basically going to build an entirely new pluggable WAF that will be designed to only consider Rate Limiting, IP/ASN-based filtering, JavaScript challenge handling, Basic behavioral analysis and Anomaly detection.
The only part of this design I’m not 100% sure about is the Javascript-based challenge handling? 🤔 I’m also considering making this into a “proof of work” requirement too, but I also don’t want to falsely block folks that a) turn Javascript™ off or b) Use a browser like links, elinks or lynx for example.
Hmmm 🧐
golang 每日一庫之依賴注入庫 samber-do
do 是 Go 語言中一個輕量級的依賴注入(Dependency Injection, DI)容器,由 samber 開發。它基於 Go 1.18+ 泛型實現,爲 Go 提供了一個類型安全的 DI 方案。do 庫的設計理念是簡化服務組件之間的依賴管理,取代手工創建依賴關係的繁瑣工作,使不同組件之間鬆散耦合、更易測試與維護。與反射型 DI 框架不同,do 在註冊和解析依賴時不使用反射,因此性能開銷很 ⌘ Read more
golang 每日一庫之依賴注入庫 samber-do
do 是 Go 語言中一個輕量級的依賴注入(Dependency Injection, DI)容器,由 samber 開發。它基於 Go 1.18+ 泛型實現,爲 Go 提供了一個類型安全的 DI 方案。do 庫的設計理念是簡化服務組件之間的依賴管理,取代手工創建依賴關係的繁瑣工作,使不同組件之間鬆散耦合、更易測試與維護。與反射型 DI 框架不同,do 在註冊和解析依賴時不使用反射,因此性能開銷很 ⌘ Read more
Go 1-24 震撼發佈!這些新特性你必須知道!
一、工具鏈重大升級 🛠️————-更智能的模塊校驗機制 新版本引入了 verify 命令go mod verify -json通過結構化輸出模塊校驗結果,完美解決了開發者在持續集成(CI)流程中解析校驗結果的痛點。舊版本只能獲得簡單提示$ go mod verifyall modules verified新版本結構化輸出$ go mod verify -json{ ”Pat ⌘ Read more
Go 1-24 震撼發佈!這些新特性你必須知道!
一、工具鏈重大升級 🛠️————-更智能的模塊校驗機制 新版本引入了 verify 命令go mod verify -json通過結構化輸出模塊校驗結果,完美解決了開發者在持續集成(CI)流程中解析校驗結果的痛點。舊版本只能獲得簡單提示$ go mod verifyall modules verified新版本結構化輸出$ go mod verify -json{ ”Pat ⌘ Read more
精通 SOLID 原則在 Go 中的應用:編寫乾淨且可維護的代碼
在軟件開發中,構建可維護、可擴展和健壯的代碼是最終目標。SOLID 原則由 Robert C. Martin(也稱爲 Uncle Bob)提出,爲實現這一目標提供了基礎。這些原則如何應用於 Go 語言呢?Go 以其簡潔和務實著稱,讓我們來探討 Go 的慣用風格如何與 SOLID 原則對齊,從而生成乾淨、高效的軟件。單一職責原則(SRP)———–“一個類應該只有一個改變的原因。”在 G ⌘ Read more
精通 SOLID 原則在 Go 中的應用:編寫乾淨且可維護的代碼
在軟件開發中,構建可維護、可擴展和健壯的代碼是最終目標。SOLID 原則由 Robert C. Martin(也稱爲 Uncle Bob)提出,爲實現這一目標提供了基礎。這些原則如何應用於 Go 語言呢?Go 以其簡潔和務實著稱,讓我們來探討 Go 的慣用風格如何與 SOLID 原則對齊,從而生成乾淨、高效的軟件。單一職責原則(SRP)———–“一個類應該只有一個改變的原因。”在 G ⌘ Read more
Which AI “arena” is the one we can actually trust?
I’m getting deeper and deeper into the AI space, and I’m discovering the different AI “arenas” and benchmarking. I have no idea what to trust or leverage to help me learn about the different models out there. Does the lobste.rs community have one that they go to by default? ⌘ Read more
Sometimes things go wrong when buying CDs second-hand. I bought an album quite cheap – but as it turned out, they only checked the cover, not the content, so I got something else instead which is actually much more expensive. 🤣
告別 JMeter!這款 Go 語言神器讓性能測試輕量 10 倍,還支持分佈式壓測
k6 簡介:爲何選擇它———–k6 由 Go 語言編寫,相較於傳統工具 JMeter,具有輕量高效、語法簡潔、擴展性強等優勢。其特點包括:開發者友好:基於 JavaScript/TypeScript 腳本,無縫銜接現代開發流程 雲原生支持:內置分佈式測試能力,輕鬆模擬萬級併發 豐富可視化:提供 HTML/JSON 格式報告,支持自定義儀表板 擴展生態:通過 npm ⌘ Read more
Microsoft changes pre-production driver signing, ends the device metadata service
As the headline suggests, we’re going to be talking about some very dry Windows stuff that only affects a relatively small number of people, but for those people this is a big deal they need to address. If you’re working on pre-production drivers that need to be signed, this is important to you. The Windows Hardware Program supports partners signing drivers for use in pr … ⌘ Read more
I’m not allowed to go to the bathroom alone ⌘ Read more
Redox gets services management, completes userspace process manager
Can someone please stop these months from coming and going, because I’m getting dizzy with yet another monthly report of all the progress made by Redox. Aside from the usual swath of improvements to the kernel, relibc, drivers, and so on, this month saw the completion of the userspace process manager. In monolithic kernels this management is done in the kernel, resulting in necessary ambient author … ⌘ Read more
Good bye Dj Mustard, back to the universe you go ❤️🕊️ ⌘ Read more
@lyse@lyse.isobeef.org it’s thankfully sorted out now but i literally turned on my PC and was like WTF IS GOING ON
Running - 4 miles: 4.00 miles, 00:09:40 average pace, 00:38:41 duration
nice and easy run on the treadmill. not sure how much i am going to run this week in anticipation for the final run.
#running #treadmill
如何在 Go 中設計並公開接口
Go 語言中的接口(interface)是其最具特色的功能之一。與許多其他語言不同,在 Go 中,類型不需要顯式聲明實現某個接口。只要一個類型定義了接口所需的方法,它就自動實現了該接口。然而,編寫良好的接口並不容易。不恰當地暴露寬泛或不必要的接口,容易污染包的 API。本文將解釋現有接口設計準則背後的邏輯,並結合標準庫中的示例進行說明。「接口越大,抽象越弱」大型接口往往難以找到多個實現類型。因此, ⌘ Read more
如何在 Go 中設計並公開接口
Go 語言中的接口(interface)是其最具特色的功能之一。與許多其他語言不同,在 Go 中,類型不需要顯式聲明實現某個接口。只要一個類型定義了接口所需的方法,它就自動實現了該接口。然而,編寫良好的接口並不容易。不恰當地暴露寬泛或不必要的接口,容易污染包的 API。本文將解釋現有接口設計準則背後的邏輯,並結合標準庫中的示例進行說明。「接口越大,抽象越弱」大型接口往往難以找到多個實現類型。因此, ⌘ Read more
Go 開發者必知:五大緩存策略詳解與選型指南
大家好,我是 Tony Bai。世界讀書日贈書活動火熱進行中,快快參與,也許你就是那個幸運兒。在構建高性能、高可用的後端服務時,緩存幾乎是繞不開的話題。無論是爲了加速數據訪問,還是爲了減輕數據庫等主數據源的壓力,緩存都扮演着至關重要的角色。對於我們 Go 開發者來說,選擇並正確地實施緩存策略,是提升應用性能的關鍵技能之一。目前業界主流的緩存策略有多種,每種都有其獨特的適用場景和優缺點。今天,我們就 ⌘ Read more
Go 開發者必知:五大緩存策略詳解與選型指南
大家好,我是 Tony Bai。世界讀書日贈書活動火熱進行中,快快參與,也許你就是那個幸運兒。在構建高性能、高可用的後端服務時,緩存幾乎是繞不開的話題。無論是爲了加速數據訪問,還是爲了減輕數據庫等主數據源的壓力,緩存都扮演着至關重要的角色。對於我們 Go 開發者來說,選擇並正確地實施緩存策略,是提升應用性能的關鍵技能之一。目前業界主流的緩存策略有多種,每種都有其獨特的適用場景和優缺點。今天,我們就 ⌘ Read more
@prologic@twtxt.net hahahahaha! Don’t you go watering that seed, mate 😅. I mean, we all dream about it, ain’t that right?
$750 Bounty: Sensitive Data Exposure
When Deep Links Go Deeply Wrong: The Zomato Insecure WebView Story
Going to try and few up a few more UX bugs today with yarnd.
@kat@yarn.girlonthemoon.xyz No no, it’s just barks at the slightest thing going on around the neighborhod 😃 like it just goes a bit nuts often 🤣 it was a rescue dog, two years old, and it wasn’t treated very well, a street dog. I think it’s just basically afraid of every human in the world 😢
You need break the routine.
I haven’t really done that lately. 🤔 Maybe have another go at Rust (given its increasing importance in the Linux kernel)? Or Elixir, yes, I only had some very, very brief contact with it. 🤔
I just came across an old forum posting of mine about Prolog. That brought up some memories. Prolog is pretty alien, but I do miss stuff like that because it’s so different.
Just thinking out loud here. 😅
Pinellas County Running - Long run: 8.00 miles, 00:09:07 average pace, 01:12:50 duration
last long run of the training plan. legs were heavy again today. first half hour had a nice sprinkling going on but that humidity crept right in afterwards. more tired than i should be and need to try and keep these next few runs light
#running
Creating an MCP Server Using Go
1 points posted by Elton Minetto ⌘ Read more
Pinellas County Running - 3 miles: 3.02 miles, 00:08:36 average pace, 00:25:56 duration
legs felt really heavy today. woke up tired (even though getting plenty of rest) and probably going to feel the same the rest of the day.
#running
@movq@www.uninformativ.de this is so real… i think we need to bring back topic focused groups but like with a little off topic side of things just in case people wanna go off topic. so the option’s there but the intent is the topic! microblogging isn’t best for this yeah. i think this is part of why IRC still goes strong for many tech people
@lyse@lyse.isobeef.org there are times that it works out to reply to the “flat” conversation, if it fully relates, or the participants are few, or if the strict topic is kept. When there are too many people, or too many topics being spit out, then forking constantly is the way to go. I am a strong proponent of forking. It’s like telling the rest, “you debate that there, I will take this one aside”.