TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Launch HN: Patterns (YC S21) – A much faster way to build and deploy data apps

149 pointsby kvhover 2 years ago
Hey HN, I’m Ken, co-founder of Patterns (<a href="https:&#x2F;&#x2F;www.patterns.app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.patterns.app&#x2F;</a>) with with my friend Chris. Patterns gets rid of repetitive gruntwork when building and deploying data applications. We abstract away the micro-management of compute, storage, orchestration, and visualization, letting you focus on your specific app’s logic. Our goal is to give you a 10x productivity boost when building these things. Basically, we’re Heroku for AI apps. There’s a demo video here: <a href="https:&#x2F;&#x2F;www.patterns.app&#x2F;videos&#x2F;homepage&#x2F;demo4k.mp4" rel="nofollow">https:&#x2F;&#x2F;www.patterns.app&#x2F;videos&#x2F;homepage&#x2F;demo4k.mp4</a>.<p>Our target audience are data engineers and scientists who feel limited by Jupyter notebooks and frustrated with Airflow. They&#x27;re stitching together business apps (e.g. CRMs or email marketing tools), AI models, and building proprietary automations and analytics in between them (e.g. generating a customer health score and acting on it). We want to solve the impedance mismatch between analytical systems (like your pipelines for counting customers and revenue) and automations (like a &quot;do something on customer signup&quot; event).<p>We built Patterns because of our frustration trying to ship data and AI projects. We are data scientists and engineers and have built data stacks over the past 10 years for a wide variety of companies—from small startups to large enterprises across FinTech, Ecommerce, and SaaS. In every situation, we’ve been let down by the tools available in the market.<p>Every data team spends immense time and resources reinventing the wheel because none of the existing tools work end-to-end (and getting 5 different tools to work together properly is almost as much work as writing them all yourself). ML tools focus on just modeling; notebook tools are brittle, hard to maintain, and don’t help with ETL or operationalization; and orchestration tools don’t integrate well with the development process.<p>As a result, when we worked on data applications—things like a trading bot side-project, a risk scoring model at a startup, and a PLG (product-led growth) automation at a big company—we spent 90% of our time doing things that weren’t specific to the app itself: getting and cleaning data, building connections to external systems and software, and orchestrating and productionizing. We built Patterns to address these issues and make developing data and AI apps a much better experience.<p>At its core, Patterns is a reactive (i.e. automatically updating) graph architecture with powerful node abstractions: Python, SQL, Table, Chart, Webhook, etc. You build your app as a graph using the node types that make sense, and write whatever custom code you need to implement your specific app.<p>We built this architecture for modularity, composability, and testability, with structurally-typed data interfaces. This lets you build and deploy data automations and pipelines quickly and safely. You write and add your own code as you need it, taking advantage of a library of forkable open-source components—see <a href="https:&#x2F;&#x2F;www.patterns.app&#x2F;marketplace&#x2F;components" rel="nofollow">https:&#x2F;&#x2F;www.patterns.app&#x2F;marketplace&#x2F;components</a> and <a href="https:&#x2F;&#x2F;github.com&#x2F;patterns-app&#x2F;patterns-components.git" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;patterns-app&#x2F;patterns-components.git</a> .<p>Patterns apps are fully defined by files and code, so you can check them into Git the same way you would anything else—but we also provide an editable UI representation for each app. You work at either level, depending on what’s convenient, and your changes propagate automatically to the other level with two-way consistency.<p>One surprising thing we’ve learned while building this is that the problem actually gets simpler when you broaden the scope. Individual parts of the data stack that are huge challenges in isolation—data observability, lineage, versioning, error handling, productionizing—become much easier when you have a unified “operating system”.<p>Our customers include SaaS and ecommerce co’s building customer data platforms, fintech companies building lending and risk engines, and AI companies building prompt engineering pipelines.<p>Here are some apps we think you might like and can clone: 1. Free Eng Advice - a GPT-3 slack bot: (<a href="https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;kybe52ek5riu2qobghbk&#x2F;eng-advice-gpt3-slack-bot" rel="nofollow">https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;kybe52ek5riu2qobghbk&#x2F;eng-a...</a>) 2. GPT3 Automated Sales Email Generator: (<a href="https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;8g8a5d0vrqfp8r9r4f64&#x2F;sales-lead-email-generator" rel="nofollow">https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;8g8a5d0vrqfp8r9r4f64&#x2F;sales...</a>) 3. Sales lead enrichment, scoring, and routing: (<a href="https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;9e11ml5wchab3r9167kk&#x2F;lead-scoring-routing-v2" rel="nofollow">https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;9e11ml5wchab3r9167kk&#x2F;lead-...</a>)<p>Oh and we have two Hacker News specials. Our Getting Started Tutorial features a Hacker News semantic search and alerting bot (<a href="https:&#x2F;&#x2F;www.patterns.app&#x2F;docs&#x2F;quick-start" rel="nofollow">https:&#x2F;&#x2F;www.patterns.app&#x2F;docs&#x2F;quick-start</a>). We also built a template app that uses a LLM from Cohere.ai to classify HN stories into categories like AI, Programming, Crypto, etc. (<a href="https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;n996ii6owwi5djujyfki&#x2F;hn-cohere-demo" rel="nofollow">https:&#x2F;&#x2F;studio.patterns.app&#x2F;graph&#x2F;n996ii6owwi5djujyfki&#x2F;hn-co...</a>).<p>Long-term, we want to build a collaborative ecosystem of reusable components and apps. To enable this, we’ve created abstractions over both data infrastructure (<a href="https:&#x2F;&#x2F;github.com&#x2F;kvh&#x2F;dcp.git" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;kvh&#x2F;dcp.git</a>) and “structurally-typed data interfaces” (<a href="https:&#x2F;&#x2F;github.com&#x2F;kvh&#x2F;common-model.git" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;kvh&#x2F;common-model.git</a>), along with a protocol for running data operations in Python or SQL (other languages soon) in a standard way across any cloud database or compute engine.<p>Thanks for reading this—we hope you’ll take a look! Patterns is an idea I’ve had in my head for over a decade now, and I feel blessed to have the chance to finally build it out with the best co-founder on the planet (thanks Chris!) and a world-class engineering team.<p>We’re still early beta and have a long road ahead, but we’re ready to be tried and eager for your feedback!

18 comments

totalhackover 2 years ago
Looks good! I&#x27;d love to see a bring-your-own-hardware&#x2F;cloud version that still includes all other features &#x2F; UI. I read you plan to open source the execution engine but not sure if that&#x27;s the full solution. Would pay for this, but in a different cloud and where I can reuse the hardware I already pay for.
评论 #33811923 未加载
nathantottenover 2 years ago
I really like the mix of drag and drop with the ability to also write code. This is something that I always run into with tools like Zapier - they get me close, but then I need a small amount of customization that isn&#x27;t built in and then hit a wall. This seems like it might be a nice solution. Congrats on the launch.
ankrgylover 2 years ago
It’d be great to show the debugging experience in the video (in fact, I’d prefer seeing that over the breadth of features). E.g. what happens when there’s a syntax error in my sql query or the python code fails on an invalid input?<p>That tends to be the critical make it or break it feature when you’re writing code in an app builder.
评论 #33801932 未加载
sharp11over 2 years ago
Congrats on the launch! As an iOS dev who dabbles in ML, I&#x27;m having trouble understanding what you mean by &quot;data applications&quot; and who this is for. I&#x27;m guessing it&#x27;s targeted at teams that crank out lots of small apps and therefore investment in learning your platform would make sense? It would be helpful if you gave clearer explanation of the use case(s), beyond the generic &quot;customer data platforms, fintech companies building lending and risk engines, and AI companies building prompt engineering pipelines&quot; (which, tbh, means nothing to me).
评论 #33803492 未加载
评论 #33805867 未加载
bukhtarkhanover 2 years ago
Love the focus on these AI workflows. Any plans to support other AI models like Dalle &#x2F; Stable Diffusion?
评论 #33807494 未加载
hermitcrabover 2 years ago
How is it different to node-based data tools such as Alteryx, Easy Data Transform or Knime?
评论 #33803909 未加载
评论 #33813231 未加载
candiddevmikeover 2 years ago
This looks like a data equivalent of WordPress, and I don&#x27;t mean that in a good way. What happens when someone no longer wants to use Patterns?
评论 #33802943 未加载
Jorge1o1over 2 years ago
Cool video! It feels like the love child of Zapier and Airflow — in a good way!
andy800over 2 years ago
Got a demo a few months back, was told Kotlin support (as alternative to Python) is on the roadmap... how soon might that be a reality?
AnthonyDGsover 2 years ago
Great launch guys. The marketplace portion will be huge.
sailsover 2 years ago
Congrats Ken and Chris! I think Patterns is very interesting, having closely followed since the early days (but not affiliated).<p>For those interested, I&#x27;ve been doing some exploring around automation tools more broadly, and this is my attempt at orientation, within the context that Patterns exists (my own interpretation).<p>The paradigm is within the context of data analysts and data engineers required to centralise data for reporting and automation (see &quot;analytical + operational workflows&quot; on the Patterns website). This process tool chain broadly looks like the following aggressively reduced flow of core components:<p>`Extract &gt; Integrate &gt; Analyse&#x2F;Report &gt; Automate` (and Ops)<p>- Extract: Regularly pull data into a centralised storage&#x2F;compute location from multiple source systems such as SaaS APIs, databases, logs etc (eg Airbyte)<p>- Integrate: Combine data into a coherent unified standardised data warehouse (data warehouse is a thing you build not a tool you buy) (eg dbt, Pandas)<p>- Analyse: Explore data, discover facets&#x2F;aspects&#x2F;dimensions in the combined data. Typically notebook type tools, and includes data science and analytics (eg Jupyter)<p>- Reporting: Dashboards and regular reports on formalised data concepts such as metrics, using BI tools (eg Metabase)<p>- Automation: Tools that exist to trigger actions on the data available in the system, typically by sending those actions into other systems. (eg Patterns!, also Zapier et al, which are more consumer oriented, no version control etc)<p>- Ops: The tools needed to effectively achieve the above, many sub-categories (eg Airflow)<p>---<p>Some observations to then mention, specifically about Patterns&#x2F;Automation:<p>1. Probably best to be used in conjunction with the previous components. Automation tools seemingly can exist without, but the Integrate, Analyse and Reporting are specific, highly related and likely required processes at any kind of scale (team, data volume or complexity) at least this has been true historically, and companies have deployed significant resources to implement these tools.<p>2. However, one obviously can use just an Automation tool alone, as they provide the Ops and technical components to run the full `Extract &gt; Integrate &gt; Analyse&#x2F;Report &gt; Automate` process, and possibly with the least complexity, and the best containment of abstractions. This is a huge gain for small teams with limited resources.<p>3. My reservation for bigger teams is the &quot;Integrate&quot; component, which if not done carefully (regardless of where&#x2F;how) leads to a mountain of technical debt to try and maintain the data transformations (data modelling), and nothing but care solves this very time consuming process<p>4. Data is stored on Patterns, and it would be interesting to know how users with pre-existing processes would extract data into other tools, say for example to write scored lead IDs into another system for targeting (see Reverse ETL tools).<p>5. Most Automation tools lack a real &quot;user input&quot; component by default, as they seem not to be designed to build user-interface CRUD apps per-se. This is similar to Hex.Tech (as far as I can tell?) which has an &quot;app&quot; interface, but users cannot really change the state of the app. If they reload the page, their inputs will be lost (I think I am correct here for Patterns - could a &quot;non technical user&quot; change the lead scoring parameters without getting into the code?) Feels like a simple feature, but probably very complex to implement.<p>6. The Patterns on face value feels like a better way to deploy data analytics in terms of what users are trying to achieve (Create and share insight, and automate in specific instances), with nice abstractions over storage, streams, scheduling, compute (none of which are worth direct contact for an analyst if they can avoid)<p>Distinct but possibly worthwhile mentioning these categories:<p>- Reverse ETL: A similar desire to Automation; send the data back to a tool that can use it to automate something<p>- No-code: providing CRUD App development capabilities without (much) code (eg Retool)<p>- Feature Flag&#x2F;Remote Config: Provide non-technical users with an interface into the configuration of a web-app (eg Flagsmith)
评论 #33805504 未加载
tersersover 2 years ago
Love the videos! Would it be possible to have a clickable interactive demo where we can see what each node is doing?
评论 #33809970 未加载
karam_qusaiover 2 years ago
This is a step ahead indeed. good job!!
chrisweeklyover 2 years ago
Wow! Congrats! Looks amazing! :)
yuppiepuppieover 2 years ago
Congrats on the launch! Looks really nice. Curious about the marketplace: how is it populated? Are these a set of apps that are available? Can third parties build apps that would be available? And could a user build a custom app?
评论 #33804520 未加载
moklickover 2 years ago
This looks so good! Congrats to the launch!
marbanover 2 years ago
Yahoo Pipes would be have been proud.
ricklamersover 2 years ago
First want to say congrats to the Patterns team for launching a gorgeous looking tool. Very minimal and approachable. Massive kudos!<p>Disclaimer: we&#x27;re building something very similar and I&#x27;m curious about a couple of things.<p>One of the questions our users have asked us often is how to minimize the dependence on &quot;product specific&quot; components&#x2F;nodes&#x2F;steps. For example, if you write CI for GitHub Actions you may use a bunch of GitHub Action references.<p>Looking at the `graph.yml` in some of the examples you shared you use a similar approach (e.g. patterns&#x2F;openai-completion@v4). That means that whenever you depend on such components your automation&#x2F;data pipeline becomes more tied to the specific tool (GitHub Actions&#x2F;Patterns), effectively locking in users.<p>How are you helping users feel comfortable with that problem (I don&#x27;t want to invest in something that&#x27;s not portable)? It&#x27;s something we&#x27;ve struggled with ourselves as we&#x27;re expanding the &quot;out of the box&quot; capabilities you get.<p>Furthermore, would have loved to see this as an open source project. But I guess the second best thing to open source is some open source contributions and `dcp` and `common-model` look quite interesting!<p>For those who are curious, I&#x27;m one of the authors of <a href="https:&#x2F;&#x2F;github.com&#x2F;orchest&#x2F;orchest" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;orchest&#x2F;orchest</a>
评论 #33808870 未加载
评论 #33808775 未加载