<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Kamil Mansuri]]></title><description><![CDATA[Kamil Mansuri]]></description><link>https://kamil.dev</link><image><url>https://kamil.dev/img/substack.png</url><title>Kamil Mansuri</title><link>https://kamil.dev</link></image><generator>Substack</generator><lastBuildDate>Fri, 17 Apr 2026 13:56:42 GMT</lastBuildDate><atom:link href="https://kamil.dev/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Kamil Mansuri]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[kamilozero@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[kamilozero@substack.com]]></itunes:email><itunes:name><![CDATA[Kamil Mansuri]]></itunes:name></itunes:owner><itunes:author><![CDATA[Kamil Mansuri]]></itunes:author><googleplay:owner><![CDATA[kamilozero@substack.com]]></googleplay:owner><googleplay:email><![CDATA[kamilozero@substack.com]]></googleplay:email><googleplay:author><![CDATA[Kamil Mansuri]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Fifteen Years Where Latency Is the Product]]></title><description><![CDATA[What network reliability, voice infrastructure, and edge telemetry taught me about building systems]]></description><link>https://kamil.dev/p/fifteen-years-where-latency-is-the</link><guid isPermaLink="false">https://kamil.dev/p/fifteen-years-where-latency-is-the</guid><dc:creator><![CDATA[Kamil Mansuri]]></dc:creator><pubDate>Wed, 24 Dec 2025 02:08:42 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" width="416" height="299.4014251781473" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2121,&quot;width&quot;:2947,&quot;resizeWidth&quot;:416,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;turned on monitoring screen&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="turned on monitoring screen" title="turned on monitoring screen" srcset="https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw1fHxkYXRhfGVufDB8fHx8MTc2NzgwNTM4MXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I never set out to become a real-time systems engineer. But looking back at fifteen years of building infrastructure, every role pushed me deeper into the spaces between packets, focusing on the milliseconds of latency that separate good systems from failure.</p><h2>Learning What Reliability Actually Means</h2><p>My education in real-time systems was kickstarted at Comcast. As a Senior Reliability Engineer, I was responsible for keeping Xfinity Business Internet running and ensuring NBC Sports stayed stable during national broadcasts. The stakes were immediate. When millions of viewers tune in for Sunday Night Football, there is no buffer, no retry, no &#8220;we&#8217;ll fix it in the next sprint.&#8221; The system works or it doesn&#8217;t, and everyone knows which one happened.</p><p>I built event-driven monitoring and auto-remediation systems using Kafka, RabbitMQ, and Redis. We cut Xfinity Business Internet downtime by half. I drove enterprise-wide Splunk adoption, wiring automated playbooks that slashed incident detection and resolution time. But the real lesson wasn&#8217;t technical. It was understanding that observability isn&#8217;t a feature you bolt on later. It&#8217;s the foundation everything else depends on.</p><p>That lesson would follow me everywhere.</p><h2>The Unforgiving and World of Voice</h2><p>From Comcast I moved to TelTech, the company behind Robokiller. If you&#8217;ve ever wondered why voice infrastructure is considered hard, spend a day debugging complex SIP routing issues while your carriers point fingers at each other.</p><p>Voice is different from other backend work. You can buffer video. You can retry HTTP requests. But voice is now or never. Every millisecond of latency accumulates into awkward conversation. One-sided audio, garbled codecs, or even modest jitter destroying comprehension. Packet loss that would be invisible in a web app becomes a dropped syllable that changes the meaning of a sentence.</p><p>At TelTech I worked on the infrastructure that powered Robokiller&#8217;s call blocking for 12 million users. The system processed over 10 million minutes monthly, analyzing calls in real-time to determine if they were spam. Sub-second response times weren&#8217;t a nice-to-have. They were the product.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Gzzh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Gzzh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Gzzh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg" width="328" height="200.03341687552214" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:730,&quot;width&quot;:1197,&quot;resizeWidth&quot;:328,&quot;bytes&quot;:173824,&quot;alt&quot;:&quot;Image of a spam call&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://kamil.dev/i/182475488?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="Image of a spam call" title="Image of a spam call" srcset="https://substackcdn.com/image/fetch/$s_!Gzzh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Gzzh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c204139-16f0-4cd6-a87e-92683150dc25_1197x730.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>I learned SIP, RTP, and the weird edge cases that come with bridging VoIP to the legacy telephone network. Carriers use different codecs, strange signaling headers, and inconsistent DTMF handling. The modern VoIP world and the old PSTN world don&#8217;t speak the same language, and someone has to translate.</p><p>That someone became me when I cofounded a telephony startup as CTO. We rebuilt the voice infrastructure from scratch, creating a mobile SDK that handled SIP and RTP natively. This gave us full control over call routing regardless of which carrier or provider sat upstream. When you own the protocol layer, you&#8217;re not dependent on anyone&#8217;s roadmap. You can optimize the entire path, swap providers without rewriting the app, and debug issues end-to-end instead of opening tickets with three different vendors who all blame each other.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kD2J!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kD2J!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kD2J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg" width="326" height="199.59183673469389" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:750,&quot;width&quot;:1225,&quot;resizeWidth&quot;:326,&quot;bytes&quot;:248338,&quot;alt&quot;:&quot;Image of example VoIP Architecture&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://kamil.dev/i/182475488?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Image of example VoIP Architecture" title="Image of example VoIP Architecture" srcset="https://substackcdn.com/image/fetch/$s_!kD2J!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kD2J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4e69c1-5269-40a0-bcf6-e4230a3fe9bd_1225x750.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The technical challenge was real, but the insight was strategic: vendor flexibility isn&#8217;t just about cost savings. It&#8217;s about owning your own destiny.</p><h2>Same Problems, Different Domain</h2><p>After the telephony startup, I joined Take-Two Interactive to lead backend platform engineering for their mobile games division, including titles like Two Dots. Different industry, same fundamental demands.</p><p>Gaming has its own version of &#8220;now or never.&#8221; When a player taps the screen, they expect immediate feedback. When an engagement event fires, it needs to reach the analytics pipeline instantly or the data loses value. I built an event-driven engagement platform that doubled daily session frequency and drove a 20% revenue increase through improved player retention.</p><p>The work confirmed something I&#8217;d suspected: the pattern recognition transfers. Real-time voice, real-time gaming, real-time anything. The protocols differ but the physics of latency are universal. You learn to think in milliseconds, to trace packets through systems, to find the bottleneck that&#8217;s adding 50ms nobody accounted for.</p><h2>Hardware Meets Software at the Edge</h2><p>Then came Vapor IO, where everything got harder.</p><p>Vapor IO operates edge data centers, computing infrastructure deployed at the base of cell towers and in urban cores rather than centralized cloud regions. The pitch is simple: put compute closer to users and latency drops. The reality is complicated. Edge environments have thermal constraints, power limitations, and connectivity that makes cloud networking look trivial.</p><p>I joined as VP of Engineering and inherited Synse, a proprietary telemetry system built to monitor the physical infrastructure. Temperature sensors, power distribution units, fan controllers. Hardware that doesn&#8217;t speak HTTP or know what Kubernetes is.</p><p>Synse worked. We ran it across 30+ edge data centers, collecting telemetry from hardware that ranged from standard server racks to experimental GPU clusters. I helped build Zero Gap AI, a platform we developed with NVIDIA using GH200 Grace Hopper systems for AI workloads at the edge. Observability wasn&#8217;t optional when you&#8217;re running $50,000 GPUs in a cell tower enclosure with constrained cooling.</p><p>But Synse was proprietary. It solved our problems but created its own silo. The more I worked with it, the more I came to appreciate what open standards offer: interoperability, community knowledge, vendor flexibility. The same lesson I&#8217;d learned in telephony, showing up in a different form.</p><p>I started embracing OpenTelemetry, the open standard for observability data. Not because Synse was bad, but because I&#8217;d seen this pattern before. Proprietary systems create lock-in. They make you dependent on internal roadmaps. They isolate you from the broader ecosystem of tools and talent.</p><p>The shift wasn&#8217;t about abandoning what we&#8217;d built. It was about recognizing that the best infrastructure connects systems rather than creating new walls between them.</p><h2>What Comes Next</h2><p>Fifteen years of building real-time systems. Reliability engineering at Comcast. Voice infrastructure at TelTech and my own startup. Event systems at Take-Two. Edge telemetry at Vapor IO. Each role taught me something about latency, observability, and the value of owning your own stack while remaining compatible with everyone else&#8217;s.</p><p>After fifteen years of connecting systems that weren&#8217;t designed to talk to each other, I&#8217;ve started to see infrastructure differently. The best tools don&#8217;t create new kingdoms. They build bridges.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://kamil.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Please subscribe below to keep up with my latest posts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Features I Didn’t Ship]]></title><description><![CDATA[Why boring features don't ship, even when they work]]></description><link>https://kamil.dev/p/the-features-i-didnt-ship</link><guid isPermaLink="false">https://kamil.dev/p/the-features-i-didnt-ship</guid><dc:creator><![CDATA[Kamil Mansuri]]></dc:creator><pubDate>Wed, 24 Sep 2025 18:47:57 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9ff3fde4-b797-42b9-81ed-d39631e3d470_1200x630.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>The Editor I Deleted</h2><p>Last month I built a markdown editor for <a href="https://apps.apple.com/app/id6747908871">Telescopo</a>, a highly requested feature. Took six hours. Live preview, syntax highlighting, the works. It worked `fine`.</p><p><strong>I decided to scrap ALL of it.</strong></p><p>Not because it was broken. It worked. But sitting there, looking at it, I felt nothing. Just another text box. Another cursor blinking. Another editor in a world drowning in editors.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aKri!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aKri!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!aKri!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!aKri!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!aKri!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aKri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png" width="200" height="200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:200,&quot;bytes&quot;:84379,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://kamilozero.substack.com/i/174449857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aKri!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 424w, https://substackcdn.com/image/fetch/$s_!aKri!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 848w, https://substackcdn.com/image/fetch/$s_!aKri!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!aKri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b81792b-1bd6-48f6-8a41-5973b166ccc5_1024x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>My app renders <em>LaTeX</em> equations instantly. It makes PlantUML diagrams appear like magic. It has beautiful and fun themes with animated gradients that makes reading specs at 2 AM actually enjoyable. (Highly recommend the &#8220;Bad Command&#8221; or &#8220;Cyberpunk&#8221; themes!) And here I was, adding a boring text box that looked like every other text box since 1984.</p><p>So I killed it. Kept the new bottom navbar I&#8217;d designed for it though. That was actually beautiful.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!avI6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!avI6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!avI6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!avI6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!avI6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!avI6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4739327,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://kamilozero.substack.com/i/174449857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!avI6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!avI6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!avI6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!avI6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40593e16-1ae9-4a59-b0e1-e5bb8fb0c032_3840x2160.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>The AI Name Drop</h2><p>Since we launched it, Telescopo AI had &#8220;AI&#8221; in the name. Never had any AI features. I just liked how it sounded (and it&#8217;s a nice complementary name to my Mobile AI Headshots app - <a href="https://www.telefoto.ai">Telefoto AI</a>).</p><p>Last week someone messaged me: &#8220;Drop the AI from the name. I hate AI buzzword bullshit.&#8221;</p><p>You know what&#8217;s funny? Version 3 just shipped with actual AI. On-device document summarization using Apple Intelligence. Real AI that does real work on your actual Mac. And that&#8217;s exactly when I dropped &#8220;AI&#8221; from the name.</p><p>Now it&#8217;s just <strong>Telescopo</strong>. Now that it actually has AI.</p><h2>The LaTeX Flex</h2><p>Everyone renders <em>LaTeX</em> the same way. Load MathJax. Wait. Process. Wait. Display. Wait some more if you want to change the font size. Start over if you switch themes.</p><p>I built my own <em>LaTeX</em> engine from scratch. Not because I&#8217;m smarter than the MathJax team. But because I&#8217;m more obsessive about one specific thing: speed.</p><p>Telescopo renders <em>LaTeX</em> instantly. Not quickly. Instantly. Change fonts in real-time. Switch from Light to Cyberpunk theme and watch the equations recolor themselves smoothly. Zoom with your trackpad and see the math scale perfectly.</p><p>Nobody else does this. Not because they can&#8217;t. Because they don&#8217;t care enough. They ship MathJax and call it done. That&#8217;s fine. But fine bores me.</p><h2>The Cloud Nobody Asked For</h2><p>&#8220;You need cloud sync,&#8221; a fellow app developer told me. &#8220;Table stakes for document apps.&#8221;</p><p>Sure. I could add it. Firebase, iCloud Kit, whatever. Sync your documents across devices. Collaborate with teammates. Share with anyone.</p><p>But here&#8217;s what actually happens: you open Telescopo because Preview choked on your 500-page PDF. You need to read this paper right now. You don&#8217;t need to sync it. You need to read it. Fast. Beautiful. Now.</p><p>Every feature I don&#8217;t build makes the features I do build better. No sync means instant opening. No accounts means no login screens. No cloud means your confidential technical docs stay on your Mac.</p><h2>The 4MB Obsession</h2><p>Telescopo is 4MB. VS Code is 370MB. I could make Telescopo bigger. Add frameworks. Include libraries. Bundle dependencies. Make my life easier.</p><p>But 4MB is a choice. It means I write my own <em>LaTeX</em> engine instead of embedding someone else&#8217;s. It means I optimize every image. It means I question every dependency.</p><p>There&#8217;s actually a single unoptimized PNG image in there right now that bugs me. I could probably get it under 2MB if I fixed it. I probably will. Not because anyone cares. Because I care.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5qUx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5qUx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 424w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 848w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 1272w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5qUx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png" width="1165" height="370" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:370,&quot;width&quot;:1165,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63876,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://kamilozero.substack.com/i/174449857?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5qUx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 424w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 848w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 1272w, https://substackcdn.com/image/fetch/$s_!5qUx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccc06aed-9e65-4a51-a015-b1dd9797fb33_1165x370.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>The Perfect Reading Chair</h2><p>Someone asked why Telescopo doesn&#8217;t compete with Obsidian or VS Code. Here&#8217;s why: they&#8217;re building Swiss Army knives. I&#8217;m building the world&#8217;s best reading chair.</p><p>You don&#8217;t edit in a reading chair. You don&#8217;t sync reading chairs to the cloud. You don&#8217;t need a subscription for your reading chair. You just need it to be comfortable, beautiful, and always work.</p><p>That&#8217;s Telescopo. It opens documents instantly. It renders them perfectly. It looks beautiful doing it. That&#8217;s the entire feature list that matters.</p><h2>What Actually Ships</h2><p>Version 3 just landed with a completely rebuilt bottom navbar. Subtle colors that match each theme. Tighter controls. Better popovers. Apple Intelligence integration that feels native.</p><p>None of these are &#8220;features&#8221; in the traditional sense. You can&#8217;t put &#8220;better navbar&#8221; on Product Hunt. But when you&#8217;re reading documentation at midnight, these details matter more than any editor ever could.</p><h2>The Boredom Filter</h2><p>Here&#8217;s my development process: build something. Use it for a week. If it bores me, delete it.</p><p>The editor bored me. Cloud sync bored me. Collaboration features bore me to tears.</p><p>But making <em>LaTeX</em> render instantly? That&#8217;s fun. Creating smooth theme transitions with Metal? That&#8217;s interesting. Building a Cyberpunk theme with animated gradients? That makes me smile every time I open a document. I was so happy using the Cyberpunk theme that I wrote Cyberspace and Bad Command themes just to have more choices in fun animated themes to choose from.</p><p>If it doesn&#8217;t make me excited to use my own app, it doesn&#8217;t ship.</p><h2>The Next Thing</h2><p>People keep sending feature requests. Add an editor. Add annotations. Add cloud sync. Add collaboration.</p><p>Maybe I&#8217;ll build them. Probably, I&#8217;ll delete them. The editor needs to be as beautiful as the viewer or it doesn&#8217;t belong. The sync needs to be invisible or it&#8217;s just friction. The features need to inspire me or they&#8217;re just checkboxes.</p><p>Until then, I&#8217;ll keep obsessing over the perfect reading experience. Making ePUBs and PDFs open faster. Making themes transition smoother. Making <em>LaTeX</em> render better. We just integrated our Mermaid renderer into Markdown, no reason we can&#8217;t start combining our rendering engines into an entirely new format that gives even more power and beauty to viewing technical documents. </p><p>Because in a world of bloated apps trying to do everything, there&#8217;s something radical about doing one thing perfectly.</p><p>Even if it&#8217;s just reading technical documents.</p><div><hr></div><p><em><a href="https://apps.apple.com/app/id6747908871">Telescopo is available on the Mac App Store</a>, for more information visit <a href="https://www.telescopo.ai">www.telescopo.ai</a></em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://kamil.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Making Beautiful Software That Just Works]]></title><description><![CDATA[Why I spent three months building a cyberpunk theme for a document viewer]]></description><link>https://kamil.dev/p/making-beautiful-software-that-just</link><guid isPermaLink="false">https://kamil.dev/p/making-beautiful-software-that-just</guid><dc:creator><![CDATA[Kamil Mansuri]]></dc:creator><pubDate>Thu, 21 Aug 2025 00:43:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/3db9da31-e415-4c40-8350-59d8b0758035_1200x630.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I spent a few months building a Markdown document viewer with an animated cyberpunk theme. I am not an app developer. I build enterprise grade backend systems. I listen to synthwave. I just wanted a macOS native Markdown viewer that could vibe with my tunes. Some people would call that insane. They're probably right. But here's the thing: when someone opens a 500-page PDF at 2 AM to debug a production issue, why shouldn't that experience be beautiful?</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;fc19df9f-c46d-4441-84e0-2c2ffa73e7d0&quot;,&quot;duration&quot;:null}"></div><h2>The Original Sin</h2><p><a href="https://apps.apple.com/us/app/telescopo-ai/id6747908871?mt=12">Telescopo</a> started as Smackdown, a simple markdown viewer for Mac. It did one thing well: it rendered markdown files with nice typography. That was it. 500 lines of Swift code, shipped in a weekend, five bucks on the Mac App Store.</p><p>But every time I opened it, I'd think about what else it could do. Not feature creep exactly, more like feature destiny. The code was begging to handle more than just markdown.</p><h2>The Beauty Principle</h2><p>Most document viewers look like they were designed by someone who hates both documents and viewers. Gray backgrounds, system fonts, utilitarian interfaces that scream "I am a tool you tolerate." Even Apple's Preview, while functional, feels like it hasn't been touched since 2011.</p><p>I wanted Telescopo to feel different. When you open a Python file, the syntax highlighting should be gorgeous. When you're reading an EPUB novel, the typography should be perfect. When you're reviewing a PDF at midnight, dark mode should feel like it was designed by someone who actually uses dark mode.</p><p>So I built three themes. Light for normal humans. Dark for developers. And Cyberpunk for... well, for me initially, but turns out a lot of people love subtle animations while they read.</p><h2>The Constraint Advantage</h2><p>Here's a decision that shaped everything: Telescopo is a viewer, not an editor. You can't modify files. You can't annotate PDFs. You can't edit markdown.</p><p>This constraint was liberating. Instead of building yet another mediocre text editor, I could focus entirely on the reading experience. How fast can a PDF open? How smooth can scrolling be? How quickly can you navigate between chapters in an EPUB?</p><p>When you're not worried about saving changes or managing undo states, you can use all that computational power for one thing: making viewing files feel incredible.</p><h2>Native or Nothing</h2><p>I wrote Telescopo in Swift, using AppKit, optimized with Metal. No Electron. No web views. No cross-platform frameworks.</p><p>This matters more than you'd think. Native means when you press Command-O, the file dialog appears instantly. When you scroll, it follows your trackpad perfectly. When you pinch to zoom, it responds immediately. These milliseconds add up to something that feels right.</p><p>Metal acceleration means a 1000-page PDF scrolls like butter. It means the Cyberpunk theme can have subtle animations without destroying your battery. It means switching between tabs is instant, not "pretty fast for a document viewer."</p><h2>The Tab Revolution</h2><p>For some reason, document viewers hate tabs. Preview doesn't have them. Most PDF readers don't have them. It's 2025 and we're still opening seventeen windows to compare files.</p><p>Building proper tabs was harder than I expected. Not just the UI, but making them feel native. Command-T for new tab. Command-W to close. Command-Shift-[ and ] to switch. Dragging tabs between windows. All the muscle memory Mac users have from Safari and Terminal.</p><p>But here's what made it worth it: watching someone realize they can have their Python script in one tab, the API documentation in another tab, and flip between them instantly. That moment of "oh, this is how it should work" makes the weeks of implementation worth it.</p><h2>Supporting Everything</h2><p>The feature that gets the most reactions: Telescopo opens 70+ file formats. PDFs, EPUBs, markdown, Python, Swift, Rust, JSON, CSV, even Mermaid diagrams render inline.</p><p>Each format required its own parser, its own optimizations, its own edge cases. Python files need different syntax highlighting than Swift. EPUBs need chapter detection. CSVs need column recognition. Mermaid diagrams need to render without launching a browser.</p><p>But when someone drops any file onto Telescopo and it just works, that surprise and delight is worth every parser I had to write.</p><h2>The Free Upgrade</h2><p>When I released Telescopo, I had a choice. Charge existing Smackdown users for the upgrade (it was 30x more code, after all) or give it to them free.</p><p>I made it free. Not because I'm running a charity, but because surprising users with unexpected value creates something money can't buy: genuine enthusiasm. Those users became my best advocates. They wrote reviews. They told friends. They posted on forums.</p><p>Turns out, generosity is good business.</p><h2>What I Learned</h2><p>Beautiful software doesn't mean ornamental. It means thoughtful. Every animation in Telescopo has a purpose. Every color was chosen deliberately. Every interaction was refined until it felt invisible.</p><p>Fast is a feature. Not "fast enough" but genuinely, surprisingly fast. When a massive PDF opens instantly, users notice. When search completes before they finish typing, they remember.</p><p>Constraints create clarity. By refusing to be an editor, Telescopo became a better viewer than apps trying to do both.</p><p>Native matters. In a world of Electron apps and web wrappers, native Mac software stands out just by feeling correct.</p><h2>The Point</h2><p>Software can be functional and beautiful. It can be powerful and simple. It can be professional and have a cyberpunk theme with subtle animations.</p><p>We spend hours every day looking at documents, code, and data. Those hours should be pleasant. The tools we use every day should bring us joy, not just utility.</p><p>That's why I spent three months on that cyberpunk theme. Because at 2 AM, when you're debugging production issues, reading through logs and documentation, you deserve software that makes you smile.</p><p>Even if it's just a document viewer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!603W!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!603W!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 424w, https://substackcdn.com/image/fetch/$s_!603W!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 848w, https://substackcdn.com/image/fetch/$s_!603W!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 1272w, https://substackcdn.com/image/fetch/$s_!603W!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!603W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png" width="150" height="150" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:512,&quot;width&quot;:512,&quot;resizeWidth&quot;:150,&quot;bytes&quot;:23934,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://kamilozero.substack.com/i/171522734?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!603W!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 424w, https://substackcdn.com/image/fetch/$s_!603W!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 848w, https://substackcdn.com/image/fetch/$s_!603W!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 1272w, https://substackcdn.com/image/fetch/$s_!603W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc00d83-520c-483d-9822-3f56ca401fae_512x512.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div><hr></div><p><em><a href="https://apps.apple.com/app/id6747908871">Telescopo is available on the Mac App Store</a> for free for Markdown. For anyone that wants a few additional features, you can unlock LaTeX, Mermaid, SVG, ePub, PDF, and 70+ additional formats along with six themes, and AI summarization and much more with Telescopo Pro for only $19.99 (20% off the $24.99 price for a limited time). Telescopo is just a native Mac app that makes reading files beautiful. <a href="https://www.telescopo.ai">www.telescopo.ai</a></em></p>]]></content:encoded></item></channel></rss>