<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: jamwt</title><link>https://news.ycombinator.com/user?id=jamwt</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 17 Apr 2026 08:57:25 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jamwt" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jamwt in "Show HN: Vaultrice – A real-time key-value store with a localStorage API"]]></title><description><![CDATA[
<p>Makes sense to me</p>
]]></description><pubDate>Thu, 14 Aug 2025 16:30:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=44902446</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=44902446</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44902446</guid></item><item><title><![CDATA[New comment by jamwt in "Go is my hammer, and everything is a nail"]]></title><description><![CDATA[
<p>IME, engineers and "the discourse" when we argue on the Internet often conflate "ease of use" and "ease of learning". When we say "ease of use", we usually mean "ease of learning."<p>If you're a hobbyist, yeah, you should heavily value "ease of learning." If you're a professional, the learning curve is worth it if the tool's every day leverage is very high once you're ramped up. Too many developers don't put those 3-4 months in, in part due to the over-emphasis on "ease of learning" in our discussions/evaluations of things.<p>I was a part of a very large go project (<a href="https://news.ycombinator.com/item?id=11282948">https://news.ycombinator.com/item?id=11282948</a>) and go-based company infra generally some years ago, and go is emblematic of the classic tool that is <i>amazing</i> at ease of learning, and quite mediocre at "ease of use" as time goes on.<p>I personally end up resenting those tools because I feel tricked or condescended to. (This is a little silly, but emotions are silly.)<p>I'd wager this is also why Rust is a perennial "most loved" winner in the surveys: it gets better as your relationship with it deepens, and it keeps its promises. Developers highly value integrity over trickery, and hard-earned but deep value feels like integrity and wins in the long run. (other examples: VIM, *nix, git)</p>
]]></description><pubDate>Tue, 13 Aug 2024 15:33:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=41236451</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=41236451</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41236451</guid></item><item><title><![CDATA[My chatbot builder is over-engineered and I love it]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.fastmind.ai/blog/over-engineered-chatbot">https://www.fastmind.ai/blog/over-engineered-chatbot</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41230396">https://news.ycombinator.com/item?id=41230396</a></p>
<p>Points: 58</p>
<p># Comments: 13</p>
]]></description><pubDate>Mon, 12 Aug 2024 23:07:41 +0000</pubDate><link>https://www.fastmind.ai/blog/over-engineered-chatbot</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=41230396</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41230396</guid></item><item><title><![CDATA[New comment by jamwt in "Using Postgres for Everything"]]></title><description><![CDATA[
<p>Agree. If you want a fully reactive database (and not just hierarchy-based reactivity like Firebase) but want to keep your ACID + relational data modeling, check out <a href="https://convex.dev" rel="nofollow">https://convex.dev</a> .<p>Plug notice: this is my company.</p>
]]></description><pubDate>Mon, 20 May 2024 21:25:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=40420593</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=40420593</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40420593</guid></item><item><title><![CDATA[New comment by jamwt in "The Magic of Embeddings"]]></title><description><![CDATA[
<p>Hi there. Another Convex cofounder here.<p>SiteGuide (<a href="https://siteguide.ai/" rel="nofollow noreferrer">https://siteguide.ai/</a>) was the first to do vector embeddings with Convex, built by integrating Convex + Pinecone. This combination has been an increasingly common pattern over the last few months. So we put a template project to demonstrate how this is usually done:<p><a href="https://github.com/ianmacartney/embeddings-in-convex">https://github.com/ianmacartney/embeddings-in-convex</a><p>We're strongly considering building in vector search a little further down the road, but this is the recommended approach for now.</p>
]]></description><pubDate>Sat, 24 Jun 2023 20:08:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=36462253</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=36462253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36462253</guid></item><item><title><![CDATA[New comment by jamwt in "Kubernetes is hard"]]></title><description><![CDATA[
<p>Yes, way less effort</p>
]]></description><pubDate>Mon, 27 Mar 2023 21:17:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=35332778</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=35332778</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35332778</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>> doesn’t explain what the data model it is proposing actually is in concrete terms.<p>Fair enough. The goal of the post wasn't necessarily to comprehensively describe the product–so the specifics of what we provide are found elsewhere in our docs, etc.<p>> Really, the big thing that I see here is the transaction retry logic,<p>These transactions run as embedded functions inside Convex in a runtime where it is impossible to have side effects.</p>
]]></description><pubDate>Mon, 30 Jan 2023 22:15:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=34587243</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34587243</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34587243</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author here.<p>Agree this is a necessary part of the change. Convex is working on our OSS strategy this year. Thanks for the feedback!</p>
]]></description><pubDate>Mon, 30 Jan 2023 21:15:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=34586478</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34586478</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34586478</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author here.<p>It's not new "in the world", but often new to our users, who understand it less intuitively than pessimistic locking.<p>Unless they're using Haskell or probably other very exotic environments with strict understanding of mutability and so on, they know Mutexes but not STM or other OCC patterns. So we lean heavily on explaining it. Not because it is original, but because it is unfamiliar.</p>
]]></description><pubDate>Mon, 30 Jan 2023 21:12:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=34586459</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34586459</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34586459</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Also, yes, great pickup re: transactional memory. We talk about this internally all the time, this is the inspiration.<p>Haskell: IO -> STM -> (pure)<p>Convex: (The browser / Convex Actions / other effectful environments) -> Mutations -> queries<p>All the same benefits re: retry and memoization.<p>Steal steal from Haskell, so many great ideas there.</p>
]]></description><pubDate>Mon, 30 Jan 2023 21:06:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=34586388</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34586388</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34586388</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Hi there Michael! We continue to love nomad.<p>SQL is the C ABI of querying for sure. BI tools will never adapt to use Convex directly, and nor should they.<p>So... yes, Convex actually had a prototype SQL adapter for the read side of things back in the early few months when we were figuring things out. Convex's read semantics are very compatible with SQL.<p>We've kept this adapter on ice in part because of point #3 in the article -- we don't want to overpromise things which are a bad idea.<p>Meaning, if we exposed SQL on the thing as-is, this would presumably be for more analytical type queries involving patterns normal Convex queries can't express. Right now that would be a Bad Idea because your website would slow down just like every other database system allows you to.<p>So the current recommended practice is use our Airbyte Egress connector (<a href="https://airbyte.com/connectors/convex">https://airbyte.com/connectors/convex</a>) and get yourself into an offline Clickhouse/MySQL/Snowflake whatever and jam SQL over there to your heart's content. That's basically what we do.<p>We may one day abstract this away by embedding some sort of mirrored column store sql thing (maybe DuckDB based? who knows) so you can do your analytical work without impact on your OLTP or integrating 3 more systems. But the team hasn't invested in that yet and probably won't for some time.</p>
]]></description><pubDate>Mon, 30 Jan 2023 21:04:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=34586364</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34586364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34586364</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Folks for whom TypeScript is a big part of their project are going to be the most natural fit for Convex.<p>But no, not necessarily exclusively TypeScript. For example, the existence of the Python client library is due to developer demand. Some users had ML jobs that are triggered by Convex applications or reported outcomes into Convex.<p>The embedded functions are always TypeScript. The experience is pretty smooth in other languages as well-but the degree of this is largely dependent on how easily the type systems map from e.g. Python to TypeScript and how our client library can infer things in a way that feels native or requires little of your involvement.</p>
]]></description><pubDate>Mon, 30 Jan 2023 20:39:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=34586038</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34586038</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34586038</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author here.<p>> It may actually be fine to just require everything to be typescript, but the idea that you'd require your application be written in the same language as your data store, and thus implement a different data store for each language you might want to write an app in (and not share between languages)... would formerly be thought of as pretty ridiculous?<p>The vision is definitely aspirational, and is reflecting on the fact that JS/TS is becoming overwhelmingly the most popular language for projects. With things like React Native, for many teams even mobile apps are taken care of all on one language.<p>There will obviously always be apps written in other languages, and in those cases, a bit more type mapping will be necessary, because (for now) Convex functions are always side-effect free, automatically cached JS/TS running in a very particular runtime. But we'll work on making that translation as smooth as possible in our client libraries.<p>We have a Python client library out now ( <a href="https://pypi.org/project/convex/" rel="nofollow">https://pypi.org/project/convex/</a> ) and a Rust one coming soon, just to keep us honest in this respect.<p>> I guess we'll see if Convex can get popular enough to spawn lots of "what I wish I knew about convex a year ago" and "Goodbye Convex, hello Postgresql" posts...<p>Well, that's the dream, isn't it?</p>
]]></description><pubDate>Mon, 30 Jan 2023 20:25:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=34585843</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34585843</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34585843</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author here -- DuckDB is indeed cool.<p>Another interesting bit of work in this space is LINQ on the microsoft side of things. And even list comprehensions end up having a scanning/summing language kind of feel to them that would be interesting to see translated into a new database query language.</p>
]]></description><pubDate>Mon, 30 Jan 2023 20:18:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=34585772</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34585772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34585772</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author here, yep, that was the intended point. Agree the wording was unclear, and there's a footnote now clarifying that. Thanks!</p>
]]></description><pubDate>Mon, 30 Jan 2023 20:15:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=34585736</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34585736</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34585736</guid></item><item><title><![CDATA[New comment by jamwt in "It's not you, it's SQL"]]></title><description><![CDATA[
<p>Article author, here. Good point -- but the article actually proposes document relational, not hierarchical. Relational is definitely good!</p>
]]></description><pubDate>Mon, 30 Jan 2023 20:04:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=34585599</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=34585599</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34585599</guid></item><item><title><![CDATA[New comment by jamwt in "Sleeping longer than 6.5 hours/day can help you lose weight: study"]]></title><description><![CDATA[
<p>Exercise hard in the morning.<p>At 8:30p: Last big glass of water. Put phone on charger in non-bedroom and don’t touch until 7a. Keep the lights low and warm. Do low stimulation activities like reading fiction or watching semi-boring TV or chatting with your family. Lay down when you can’t keep your eyes open anymore.<p>Big change for me. The phone especially is poison for evening tranquillity.</p>
]]></description><pubDate>Thu, 23 Jun 2022 15:07:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=31850150</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=31850150</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31850150</guid></item><item><title><![CDATA[New comment by jamwt in "Convex vs. Firebase"]]></title><description><![CDATA[
<p>Yep and every lock is a spinlock. ;-)</p>
]]></description><pubDate>Wed, 22 Jun 2022 15:04:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=31836953</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=31836953</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31836953</guid></item><item><title><![CDATA[New comment by jamwt in "Convex vs. Firebase"]]></title><description><![CDATA[
<p>(Founder / CEO of Convex here)<p>Hi Shawn. I don't remember you bringing this up when we spoke in person recently, but it's a great question.<p>In our opinion, the very best way to evaluate yourself as a backend developer is how directly you solve problems <i>for</i> frontend developers. We believe in the merit of customer obsession, and the customers are not buying queues. They're buying the product as they see it: its surfaces, workflows and experience. And that's what the frontend developers, PMs, and designers are creating.<p>Historically, all these backend technologies that only interoperate with each other are only useful so long as they make product creation and improvement easier, more reliable, etc. We strongly believe as soon as you don't need them anymore, you should toss them out. They're complex and not proprietary to your product.<p>Convex (and serverless in general) is just the next step in providing more powerful abstractions that allow companies to double down on frontend engineering (work that adds product value) instead of reimplementing the same backend/devops plumbing the users never see (work that, at best, merely sustain product value).<p>So, given that we recognize this need, I respectfully disagree that we're not well equipped to solve these problems for frontend developers! Most of our team's recent our work has been designing synchronization and storage platforms to enable product development, including work on web, desktop, and mobile libraries/SDKs. We feel like we have both a lot of empathy and experience for this space, and we're very proud of our early product and the enthusiasm from the web dev community.</p>
]]></description><pubDate>Wed, 22 Jun 2022 14:46:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=31836674</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=31836674</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31836674</guid></item><item><title><![CDATA[New comment by jamwt in "Ask HN: Who is hiring? (June 2022)"]]></title><description><![CDATA[
<p>Convex | <a href="https://convex.dev" rel="nofollow">https://convex.dev</a> | San Francisco 3/2 hybrid ONSITE| Front-end engineers, full-stack engineers<p>Convex is a rapidly growing startup aiming to change the way the web is built. Specifically, we're creating a Global State Management platform--a new way to build apps without backends, databases, VPCs, kubernetes, etc.<p>Featured recently here: <a href="https://www.forbes.com/sites/kenrickcai/2022/04/27/convex-series-a-26-million-developers-dump-databases/?sh=53a64d84bf86" rel="nofollow">https://www.forbes.com/sites/kenrickcai/2022/04/27/convex-se...</a><p>More background on the vision:
<a href="https://a16z.com/2022/04/27/investing-in-convex/" rel="nofollow">https://a16z.com/2022/04/27/investing-in-convex/</a>
<a href="https://blog.convex.dev/unfulfilled-functional-ideals/" rel="nofollow">https://blog.convex.dev/unfulfilled-functional-ideals/</a><p>We're looking for people passionate about developer platforms, web development, mobile development, distributed systems and databases--all the pieces necessary to create a holistic replacement for the backends of years past.<p>Our stack is TypeScript + Rust. The Convex team has been building critical systems in Rust for nearly 10 years:<p><a href="https://www.wired.com/2016/03/epic-story-dropboxs-exodus-amazon-cloud-empire/" rel="nofollow">https://www.wired.com/2016/03/epic-story-dropboxs-exodus-ama...</a>
<a href="https://dropbox.tech/infrastructure/rewriting-the-heart-of-our-sync-engine" rel="nofollow">https://dropbox.tech/infrastructure/rewriting-the-heart-of-o...</a><p>...so if you're passionate about learning in depth how to take Rust into production, join up!<p>Feel free to either reply to me or apply directly on <a href="https://convex.dev/jobs" rel="nofollow">https://convex.dev/jobs</a><p>Or, if you just want a beta key to learn more about what Convex is first, let me know. I'll hand those out too.</p>
]]></description><pubDate>Wed, 01 Jun 2022 18:39:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=31586235</link><dc:creator>jamwt</dc:creator><comments>https://news.ycombinator.com/item?id=31586235</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31586235</guid></item></channel></rss>