Brandonz | 不烂凳子

  • Condolences to the Families and Nation

    I am in deepest condolences to the families and the country who lost a person who tells the truth. I feel sad and unsafe that there is no longer anyone to tell me the truth about the world.

  • 纯JS+HTML打造!本地运行Dialog Builder with OpenAI

    纯JS+HTML打造!本地运行Dialog Builder with OpenAI

    Hey各位privacy-conscious developers和AI enthusiasts!今天要proudly introduce我的latest project——Dialog Builder with OpenAI,这次是100% pure JavaScript and HTML构建,而且你的API keys只保存在local browser,我们完全不store任何sensitive data!马上体验demo 👉 https://dialogs.brandon.my/

    我知道很多developers都worried about sharing API keys with third-party services。所以这个project采用了完全前端实现的设计理念:

    • 你的OpenAI API key只存在localStorage,永远不会发送到我的server.
    • 所有API calls直接从你的browser发出,完全bypass backend.
    • 对话设计自动保存到local storage,即使refresh page也不会丢失数据.

    🔒 Premium Content

    You need a Paid Member account to access this content.

    这个project完全使用vanilla JS + HTML + CSS构建,主要技术亮点:

    // Example of local API key handling
    const saveAPIKey = (key) => {
      localStorage.setItem('openai_api_key', key);
      console.log('API key saved locally only!');
    };
    
    // All API calls made directly from client
    const fetchAIResponse = async (prompt) => {
      const response = await fetch('https://api.openai.com/v1/chat/completions', {
        method: 'POST',
        headers: {
          'Authorization': `Bearer ${localStorage.getItem('openai_api_key')}`,
          'Content-Type': 'application/json'
        },
        body: JSON.stringify({
          model: "gpt-3.5-turbo",
          messages: [{role: "user", content: prompt}]
        })
      });
      return await response.json();
    };

    为保障你的API key安全,我们实现了多重保护:

    • 🔐 API key模糊显示,默认显示为asterisks.
    • ⚠️ 清除本地数据按钮,一键清除所有sensitive information.
    • 🌐 所有请求直接发送到OpenAI,无中间server参与.

    🔒 Premium Content

    You need a Paid Member account to access this content.


    如何使用 | How to Use

    1. 访问https://dialogs.brandon.my/
    2. 输入你的OpenAI API key(只保存在你的浏览器).
    3. 开始构建对话流程,实时测试AI响应.
    4. 导出HTML代码,直接嵌入你的网站.

    所有操作都在你的浏览器内完成,完全无需担心数据隐私!

    a man speaking into a microphone in front of a group of people

    适合场景 | Perfect Use Cases

    这个tool特别适合:

    • 🏢 企业内部工具开发,无需部署backend.
    • 🎓 教育演示用途,学生可以安全地学习AI integration.
    • 🔧 快速原型开发,快速验证对话流程设计.
    • 🌐 静态网站集成,即使只有HTML也能拥有AI功能.

    未来规划 | Future Roadmap

    虽然已经是pure client-side,但我们还有更多计划:

    • IndexedDB存储 – 支持更大规模的对话数据存储.
    • Service Worker缓存 – 实现完全离线功能.
    • Web Components版本 – 更容易嵌入其他项目.
    • 本地模型集成 – 支持WebLLM等本地运行模型.

    结语 | Final Thoughts

    在这个data privacy越来越重要的时代,client-side AI solutions绝对是未来趋势。我的Dialog Builder就是一个很好的起点,让你在享受AI强大功能的同时,完全掌控自己的数据。

    🎯 立即尝试:https://dialogs.brandon.my/
    💡 记住:你的API key永远只留在你的设备上!
    GitHub: https://github.com/phototix/OpenAI-TTS-Dialog

    P.S. 如果你喜欢这个project,记得star我的GitHub repo哦!

  • 我终于搞了自己的AI Jarvis系统!

    我终于搞了自己的AI Jarvis系统!

    Yo各位tech迷,今天我要share一个超级兴奋的project!我终于入手了一台NVIDIA A1000 GPU workstation,然后combine with最新的LLama models,通过Open WebUI搭建了一个完全属于我自己的AI chat和agent系统。Seriously,感觉就像当了一回Iron Man,拥有了自己的Jarvis!😎

    🔒 Premium Content

    You need a Paid Member account to access this content.

    Overall,这个project不仅让我experience了cutting-edge AI tech的power,还让我feel到了那种“未来已来”的excitement。如果你也是tech enthusiast,我真的highly recommend尝试build你自己的AI system。Trust me,那种拥有personal Jarvis的感觉,真的是无敌!🚀

    有没有人也在玩AI agents?欢迎在comments分享你的experience!

  • 告别软件订阅时代:How I Built My Own Web Apps with AI Instead of Paying for Subscriptions lah

    告别软件订阅时代:How I Built My Own Web Apps with AI Instead of Paying for Subscriptions lah

    各位朋友,你们有没有发现,现在很多软件都变成subscription-based了?Every month都要扣钱,真的很sian啊!💸 尤其像我这种搞IT的,需要用到各种tools,subscription fees加起来可以买很多碗laksa了咧!

    But guess what?自从我开始用AI来generate code,我都不需要花更多的钱去买软件和电脑里的工具了!Self Built Apps 怎么做?都用AI给我生成出来。

    🔒 Premium Content

    You need a Paid Member account to access this content.

    🔒 Premium Content

    You need a Paid Member account to access this content.

    以下是一些我自己已经建立的Web Apps 和 一些辅助工具来自社群:Self Built Apps

    🔒 Premium Content

    You need a Paid Member account to access this content.

    Open Source Apps I Use:

    • Open WebUI – 管理我的AI models
    • NextCloud – 自己的cloud storage,不用给Google Drive钱
    • Joplin – Note-taking app,sync去自己的serverSelf Built Apps

    总结一下:Why This Approach Rocks 🚀

    1. Cost Savings:省下几百块的subscription fees every year
    2. Customization:可以customize到完完全全符合我的需求
    3. Learning Opportunity:在build的过程中学到超多新skills
    4. Independence:不用被大公司lock-in,我的data我做主

    所以啦,各位tech朋友,不要再傻傻付subscription了!Leverage AI的力量,build你自己的tools吧!如果你们有兴趣学how to do this,可以留言让我知道,我可能consider做一个小型的workshop哦!😉

  • AI Gadgets Are Everywhere Lah: But Are They Really Your 救星 or Just Another 电子垃圾? 

    AI Gadgets Are Everywhere Lah: But Are They Really Your 救星 or Just Another 电子垃圾? 

    Look around you lor. Suddenly everywhere also got some new gadget shouting about “Powered by AI!” From your 冰箱 that can suggest recipes based on a rotten tomato, to your 耳机 that can translate your Singlish into proper English for your ang moh boss. The hype is real, but as someone who’s been in the tech game since floppy disks were a thing, my 直觉 is tingling. Is this the future, or are we just being sold a very expensive, glorified paperweight?

    Let’s be real hor. Most of these so-called “AI” features are just pre-programmed routines with a fancy name. Your “smart” speaker telling you the weather isn’t intelligence; it’s a bloody API call, something any decent programmer can whip up in 5 minutes. They’re slapping the “AI” label on everything to justify a 50% price hike, and consumers are 吃这一套 like it’s free chicken rice.

    🔒 Premium Content

    You need a Paid Member account to access this content.

    So what’s the bottom line? Don’t be a 韭菜. The next time you see an “AI” toothbrush, ask yourself: “What problem is this actually solving?” If the answer is “making the company money,” then walk away.

    True, useful AI should feel seamless. It should solve a problem you actually have, not one invented by a marketing team. It should make you more efficient, more creative, or more informed. Anything else is just 电子垃圾 waiting to happen.

    你的看法是什么? Have you bought any “AI” gadget that turned out to be surprisingly awesome or a complete waste of time? Share your horror or success stories in the comments lah. Let’s separate the 钻石 from the 玻璃.

  • 用WhatsApp自动化你的任务管理?我搞了个超懒人版AI助手!

    用WhatsApp自动化你的任务管理?我搞了个超懒人版AI助手!

    Yo,各位拖延症晚期患者 & 生产力工具控!今天我要分享一个超级简单但极度实用的自动化方案——用 WhatsApp 打造个人专属任务管理系统!是的,你没看错,连App都不用装,直接在WhatsApp里收每日任务提醒、早晨鸡汤(误)、晚间总结,甚至还能帮你记录完成情况!


    🤔 为什么搞这个?

    因为我!但又不想完全摆烂(偶尔还是要装一下自律)。市面上太多任务管理App,但每次都要打开另一个软件?太麻烦了啦! 既然我每天泡在WhatsApp里(谁不是?),那就让任务提醒直接怼到我脸上

    🔒 Premium Content

    You need a Paid Member account to access this content.

    ⚙️ 怎么运作?

    • 每天早上8点:从数据库拉取今日任务 + 随机一句毒鸡汤(例如:“今天的你,和昨天的你一样烂,但没关系!继续努力!”),通过WhatsApp发给我。
    • 任务完成时:我直接回复 ✅ [任务ID],捕捉消息,更新数据库。
    • 晚上10点: 汇总今日完成情况,计算生产力分数(自我欺骗用),并发送总结+明日预告。

    🚀 效果如何?

    • 零学习成本:不用学新软件,直接WhatsApp聊天式操作。
    • 极度个性化:任务逻辑、鸡汤语录、总结格式全自定义(我甚至加了天气提醒和生日提醒)。
    • 免费或极低成本:WhatsApp API 用量少的话几乎不要钱。

    😈 要不要试试?

    如果你也懒得开一堆App,但又想假装高效,这个方案绝对适合你

    🔒 Premium Content

    You need a Paid Member account to access this content.


    总结:用自动化工具把琐事丢给机器,人类负责躺平+创造!如果你也搞了类似的操作,欢迎交流——或者吐槽我的简陋设计!🤣

    🚨 免责声明:此方案可能导致你变得更懒,本人概不负责。


    P.S. 代码?哼,才不直接给你!自己动手丰衣足食~(付费客户另谈,谢谢 😏)

  • 普通马来西亚人在新加坡生存和融入的实用指南

    Practical Guide for Ordinary Malaysians to Survive & Adapt in Singapore

    Hey 各位大马朋友,如果你刚来Singapore工作 or 已经在这里打拼多年,this post 就是为你准备的!

    Singapore 是一个高效但竞争激烈的社会,especially for Malaysians who 需要适应这里的快节奏。别担心,这篇指南会帮你 navigate 生活、工作、省钱、社交,让你更快 feel at home!

    1. 工作环境适应 Work Culture Adjustment 准时 Punctuality 是王道:Singapore 的 workplace 非常重视时间观念,迟到会被视为 unprofessional。 Hierarchy 比较明显:上司和下属的关系 more formal than Malaysia,建议用 “Mr./Ms.” 称呼 superiors unless 对方允许你叫名字。 加班文化 OT Culture:某些行业(如 finance、IT)expect 你加班,但记得 check contract 有没有 OT pay。 💡 Pro Tip: 如果遇到职场问题,可以找 MOM (Ministry of Manpower) 或 Malaysia High Commission 求助。
    2. 省钱大法 Money-Saving Hacks Singapore 的 cost of living 比 Malaysia 高很多,but 你可以用这些方法 stretch your dollar:

    🔒 Premium Content

    You need a Paid Member account to access this content.

    Conclusion 总结 作为 Malaysian in SG,you’re not alone!很多人和你一样在这里奋斗,只要掌握正确的方法,你不仅可以 survive,还可以 thrive!

  • Sending Bulk Utility Emails: The Right Way

    Sending Bulk Utility Emails: The Right Way

    As someone who’s worked with email systems, let me tell you straight – sending mass emails isn’t as simple as blasting your entire contact list. Here’s how to do it properly without getting blacklisted:

    Proper Methods

    1. Email Marketing Services
      • Use professional platforms like Mailchimp, SendGrid, or Amazon SES
      • These services handle deliverability and compliance automatically
      • Pricing typically based on number of emails sent
    2. SMTP Relay Services
      • For more technical users
      • Configure your application to send through services like Postmark or SparkPost
      • Requires some coding knowledge
    3. Self-hosted Solutions
      • Only recommended if you know what you’re doing
      • Requires proper SPF, DKIM, DMARC setup
      • Need to warm up IP addresses gradually

    What NOT to Do

    • Don’t use your personal Gmail/Yahoo account
    • Don’t put all recipients in the “To” field (this exposes everyone’s email)
    • Don’t send attachments – use cloud links instead
    • Don’t ignore unsubscribe requests (it’s illegal in many countries)

    For Your Work

    Since you’re working now, I’d recommend:

    1. Check if they already have an email service provider
    2. If not, propose setting up a proper system (Mailchimp has non-profit discounts)
    3. Always get explicit consent before adding anyone to mailing lists

    Remember, sending bulk emails improperly can get your domain blacklisted – then NO emails from your organization will reach anyone’s inbox. 小心驶得万年船啊!

  • 财富自由的自我定义

    财富自由的自我定义

    财富是一个工具,而不是身份 — 你要钱是为了自由,不是为了自我或地位。信任是通过行动来获得,并不是理所当然的 — 当你有钱的时候,社会会变得不可靠;一定要守住自己的心。内心的平静才是真正的奢侈 — 没有混乱,没有乞求,没有依赖 = 真实的成功。注意力是一个负担 — 名声会带来问题;隐形财富能给你控制力。选择孤独而不是虚假的忠诚 — 更少但真实的关系比受欢迎更重要。你不欠任何人什么 — 只有当帮助符合你的价值观时才去做,不是出于内疚。自由意味着退出的力量 — 能够随时离开任何事情是无价的。不要追求“好”或“坏”的标签 — 这些都是主观且不稳定的。选择对你有用的。把生活结构得像一座堡垒 — 在法律上、财务上、情感上,减少暴露。安静地建立,自由地生活 — 让你的成果来发声。沉默就是平静,力量是安静的。

  • AAA Studio 要倒?Ubisoft 是真的危险了。Rockstar?还活着,而且活得很好。

    AAA Studio 要倒?Ubisoft 是真的危险了。Rockstar?还活着,而且活得很好。

    最近打游戏打到 emo,真的忍不住想讲一讲。
    Ubisoft 啊——曾经让我热血沸腾的 Assassin’s Creed,Far Cry,Watch Dogs…… 现在咧?像 copy paste 出来的快餐游戏。😩

    每年一款差不多的公式,open world、map full of icons、repetitive side quests。Sibeh sian lor。
    你 launch 个新作,bug 多到我都可以开个 zoo,优化又差,玩家 feedback 都像在 shout to a wall。
    Come on lah,Ubisoft,what happened to the *passion*?

    Clear bubbles on a pink surface.

    反观 Rockstar,eh, macam 不一样的 league 咯。
    GTA V,10 年还活着,online 还赚钱赚到翻。Red Dead Redemption 2,storytelling,gameplay,细节,全部顶呱呱。你一玩,就知道这个 studio 是有灵魂的。Not just pumping games for profit。

    mic, music, studio, music studio, stage, sound, guitar, amplifier, music studio, music studio, music studio, music studio, music studio

    为啥 Rockstar 成功?
    不是靠 brand name 而已,是因为它的作品真的是 *用心* 做的。Quality、innovation、player immersion,全都做到足足。玩家感受到那种“我不是在玩游戏,我是在经历故事”的那种投入感。

    所以啊,现在的 AAA studio,真的不能只靠旧招。Brand legacy is not a shield anymore。
    Consistent excellence 才是王道。

    Ubisoft,如果你不 reinvent yourself,再大的 IP 也会 slowly die off。
    Rockstar 给我们看到的是,真正的创意 + craftsmanship,永远有市场。

    玩家不是傻的。我们 vote with our time and money。

    So yah, 这就是我的 rant for today。
    打游戏,原本是要开心,现在变成失望的过程。希望 AAA studio 能 wake up,一起把 game industry 做回精彩一点。