Disclaimer: This content reflects my personal opinions, not those of any organizations I am or have been affiliated with. Code samples are provided for illustration purposes only, use with caution and test thoroughly before deployment.
Last year, I wrote about turning hand-drawn architecture diagrams into digital diagrams using generative AI. While that approach worked well for creating editable digital diagrams, the result was quite basic—mostly rectangles and text. But if you’ve ever seen presentations by AWS solution architects, you’ll know that colorful AWS service icons can make architecture diagrams much more visually appealing and easier to understand at a glance.
I’ve since figured out how to leverage AI to not only create the basic diagram structure but also incorporate those recognizable AWS service icons. In this post, I’ll walk you through the process step by step.
Since COVID, online meetings have become an indispensable tool for collaboration, communication, and productivity. Whether you’re a seasoned professional or just starting your career, mastering the art of online meetings is crucial for success. Having spent four years in a customer-facing role, I’ve participated in countless online meetings across various time zones, gaining valuable insights into what works and what doesn’t. This blog post shares my experiences and provides practical tips to help you engineer better online meetings by focusing on two key areas: hardware configuration and software optimization. By addressing these elements, you can create a more professional, engaging, and productive online meeting experience for yourself and your participants. Here are some tips for better online meetings.
As a developer, I often find myself needing a tool that can let me type with voice. While macOS boasts a variety of excellent GUI-based transcription tools, the Linux landscape leans more towards command-line utilities. This presented a challenge, but also an opportunity to build a custom solution tailored to my workflow. I kept delaying it, but now I finally got time to build a fast and accurate transcription tool on Linux, leveraging the power of command-line tools and the flexibility of the terminal. I used VSCode, Cline, Gemini 2.0 Flash (in Plan Mode), and Gemini 2.0 Pro (in Act Mode) to help me build this.
Why Whisper and Faster Whisper?
When it comes to transcription accuracy, Whisper models from OpenAI consistently outperform many other options. Initially, I experimented with whisper.cpp, a C++ implementation of the Whisper architecture. It’s a fantastic project, offering great performance and flexibility, especially on my work Macbook with Apple silicon.
However, I recently discovered Faster Whisper, a reimplementation of the Whisper model using CTranslate2. The key advantage? It’s incredibly fast, even on older hardware without dedicated GPUs. On my trusty old laptop with an Intel Core i5-7200U CPU, the small.en model loads in about 2 seconds and can transcribe 1-3 sentences in roughly 4 seconds. This makes it perfectly suited for my needs.
graph TD
subgraph "Input"
NEWS["News from Social media,<br>Podcast,Feedly"] -- Save for later --> POCKET["Pocket<br>(Read later)"]
Perplexity --> READ
POCKET
TWBOOK[Taiwan Library Books]
YouTube --> DeepSRT
Ideas
Meetings
end
subgraph "Logseq"
JOURNAL[Daily Journal]
KANBAN_LEARNING[Kanban - Learning]
JOURNAL--> KANBAN_WRITING["Kanban - Writing ideas"]
end
Meetings --> JOURNAL
Ideas -- (optional) AI formatter --> JOURNAL
READ[Read & Digest]
READ -- learnings --> JOURNAL
READ -- Topic that needs further research --> KANBAN_LEARNING
POCKET --> READ
TWBOOK[Taiwan Library Books] --> READ
DeepSRT -->READ
KANBAN_LEARNING --> Research
KANBAN_WRITING --> Research
Research --> JOURNAL
Research --> WRITER[AI writing assistant]
subgraph "Output"
WRITER[AI writing assistant] --> Blog
WRITER --> Buffer --> SOCIAL[Social media post]
WRITER --> Book
WRITER --> Talk
WRITER --> Email
end
Meetings -- action item --> BULLET[Bullet journal]
Ideas --> BULLET
BULLET --> CALENDAR[Google Calendar<br>Outlook Calendar]
BULLET --> Research
CALENDAR --> Research
This is an updated version of my pre-ChatGPT productivity post. The landscape of productivity tools has changed dramatically since the AI boom, and my system has evolved accordingly.
The system is shown in the diagram above. Let me explain it in detail.
Note: This post is written with the help from Gemini 2.0 Flash. Let me know if you like the style and tone.
Keeping a pristine photo gallery can be a challenge. I wanted a way to separate my permanent family photos from the everyday snapshots I take—parking spots, receipts, quick notes—things I only need temporarily. I wanted those transient images kept separate, ready for easy cleanup later. I remembered an Android app that did just this, but unfortunately, it’s no longer available on the Play Store, leaving me searching for a new solution.