<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Bo Nguyen</title>
    <description>The latest articles on DEV Community by Bo Nguyen (@bonv).</description>
    <link>https://dev.to/bonv</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4174533%2Fffe49edb-2c2d-4219-9ed5-922ca449af2c.jpg</url>
      <title>DEV Community: Bo Nguyen</title>
      <link>https://dev.to/bonv</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bonv"/>
    <language>en</language>
    <item>
      <title>Building in Silence: Why Good Code Gets Drowned Out (And the Harsh Reality of Local Tech Culture)</title>
      <dc:creator>Bo Nguyen</dc:creator>
      <pubDate>Tue, 20 Oct 2026 04:05:45 +0000</pubDate>
      <link>https://dev.to/bonv/building-in-silence-why-good-code-gets-drowned-out-and-the-harsh-reality-of-local-tech-culture-4jg6</link>
      <guid>https://dev.to/bonv/building-in-silence-why-good-code-gets-drowned-out-and-the-harsh-reality-of-local-tech-culture-4jg6</guid>
      <description>&lt;p&gt;I’m a Window trading system developer. For the past few years, my daily reality has revolved around low-latency execution engines, orderbook matching, data synchronization, and zero-allocation memory management. &lt;/p&gt;

&lt;p&gt;Like many of you, I jumped on ChatGPT on day one. But the funny paradox? In my day-to-day enterprise and finance work, &lt;strong&gt;LLMs barely helped.&lt;/strong&gt; Enterprise security policies, air-gapped systems, and strict IP protection meant 95% of our codebase had to be written and debugged with raw brainpower. An LLM can't debug a nanosecond race condition in an air-gapped trading system that handles real client money.&lt;/p&gt;

&lt;p&gt;So, in my spare time, I turned that pent-up engineering energy into open-source. Over the years, I've built at least 5 different production-grade projects related to trading and system architecture. Clean code, comprehensive architecture, real problem-solving.&lt;/p&gt;

&lt;p&gt;And that’s when reality hit me in the face.&lt;/p&gt;




&lt;h3&gt;
  
  
  1. The Internet is Flooded, and Quality No Longer Stands Out
&lt;/h3&gt;

&lt;p&gt;A few years ago, if you spent 6 months meticulously building a robust, high-performance tool, developers would genuinely appreciate the craftsmanship. &lt;/p&gt;

&lt;p&gt;Today? The internet is so saturated with thousands of "AI wrapper" apps launched daily that genuine engineering gets lost in the noise. It feels like nobody cares if your architecture is rock-solid. If it doesn't come with flashy marketing or a viral tweet thread, it gets buried under a pile of generic, weekend-hack projects. You put your soul into an engine, and it ends up sitting there with 25 stars on GitHub.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. The Crab Mentality in Local Tech Communities
&lt;/h3&gt;

&lt;p&gt;What hurts worse than general indifference is the toxic reaction from within my local community in Vietnam.&lt;/p&gt;

&lt;p&gt;Instead of fostering a culture of collaboration, there’s an overwhelming &lt;strong&gt;"Crab Mentality" (pulling down anyone trying to crawl out of the bucket)&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The "AI can do that" dismissiveness:&lt;/strong&gt; If you share a deeply optimized module, the immediate knee-jerk reaction from local social feeds is: &lt;em&gt;"Why bother? I could prompt ChatGPT to generate this in 5 minutes."&lt;/em&gt; (Spoiler: No, a prompt cannot handle concurrent lock-free data structures reliably under production load).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Take, close, and rebrand:&lt;/strong&gt; In open source, we expect people to fork, submit PRs, or discuss improvements. Locally, I’ve seen developers pull the code, wipe the git history, close-source it, and use it for their own commercial gain without a single word of attribution or a simple star.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Constant gatekeeping &amp;amp; skepticism:&lt;/strong&gt; Rather than looking at what a tool solves, people obsess over finding microscopic flaws or questioning your motives: &lt;em&gt;"Who are you trying to impress?"&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It reached a point where virtually all genuine stars or technical feedback on my repos came from overseas engineers who simply stumbled upon the code and respected the technical merit.&lt;/p&gt;




&lt;h3&gt;
  
  
  3. How Do We Break Out of This?
&lt;/h3&gt;

&lt;p&gt;I’m writing this not to vent, but because I know I can't be the only one feeling this creative exhaustion. When you realize that:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Pure engineering quality doesn't automatically earn visibility.&lt;/li&gt;
&lt;li&gt;Your immediate local peers prefer to tear your work down rather than lift it up.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;How do you keep the drive to build?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I’d love to hear from developers across the world:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Is this crab mentality specific to emerging tech scenes, or do you experience the same cynicism in your country?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;In an era of relentless AI-generated noise, how do you get genuine technical work noticed without becoming a full-time marketer?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;For those who broke out of toxic local bubbles: What was your turning point?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s talk in the comments below.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>ai</category>
      <category>programming</category>
      <category>opensource</category>
    </item>
    <item>
      <title>I built my own zero-dependency financial chart engine with Canvas</title>
      <dc:creator>Bo Nguyen</dc:creator>
      <pubDate>Sat, 10 Oct 2026 04:21:05 +0000</pubDate>
      <link>https://dev.to/bonv/i-built-my-own-zero-dependency-financial-chart-engine-with-canvas-2i9</link>
      <guid>https://dev.to/bonv/i-built-my-own-zero-dependency-financial-chart-engine-with-canvas-2i9</guid>
      <description>&lt;p&gt;If you've ever tried building a trading dashboard or a crypto app, you know the drill:&lt;/p&gt;

&lt;p&gt;TradingView Charting Library: Powerful, but the advanced version requires strict approval, business verification, and mandatory branding.&lt;/p&gt;

&lt;p&gt;Enterprise solutions (like AG Charts / SciChart): Insanely expensive for solo devs and indie hackers just bootstrapping an MVP.&lt;/p&gt;

&lt;p&gt;Lightweight options: Often lack smooth interactions, custom indicator layers, or flexible drawing capabilities.&lt;/p&gt;

&lt;p&gt;A while ago, I ran into this exact wall while working on my own trading setup. I didn’t want to pay enterprise licensing just to render candles, nor did I want to bloat my bundle with massive dependencies.&lt;/p&gt;

&lt;p&gt;So, I decided to go down the rabbit hole and build TradeCanvas from scratch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkhhvyve5treen5kcb4z9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkhhvyve5treen5kcb4z9.png" alt="Candlesticks to Renko, 111 indicators, 69 drawing tools, live exchange feeds and orders on the chart. Drawn with Canvas 2D or WebGL, with zero dependencies" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
What I set out to solve:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Pure Canvas rendering: Direct control over pixel projection, rendering loop, and double-buffering without DOM thrashing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;60 FPS smoothness: Viewport culling so panning across thousands of historical ticks doesn't choke the browser.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clean separation of layers: Separated the background grid, main candles, crosshair overlay, and indicator pipelines so rendering one doesn't force a full repaint of everything.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zero vendor lock-in: A clean, standalone library designed for developers who just want full control of their charting stack.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's still in active development, but the core engine, multi-timeframe candle rendering, dynamic price/time scaling, and interactions are working.&lt;/p&gt;

</description>
      <category>opensource</category>
    </item>
  </channel>
</rss>
