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: Datree (YC W20) – Best practices and security policies on each commit

106 pointsby shimontabout 5 years ago
We are Shimon and Eyar, co-founders of Datree (<a href="https:&#x2F;&#x2F;www.datree.io" rel="nofollow">https:&#x2F;&#x2F;www.datree.io</a>). We&#x27;ve built software to help engineering teams automate the adoption of development best practices, coding standards, and security policies.<p>When I (Shimon) was the manager of a 400-developer company&#x27;s infrastructure engineering team, we had an issue where a developer committed AWS secret keys into a public GitHub repo. We were very, very lucky that the bad actors who quickly got ahold of the keys &quot;only&quot; spun up compute instances to mine bitcoin.<p>Mistakes happen and they happen to the best of us. No developer wants to make mistakes, especially ones impacting production. Those mistakes can be not only costly to the business, but emotionally painful for the developer.<p>After finding out about the issue, I had to search for any other leaked secret in our repositories to make sure we were no longer exposed. The next thing that I had to do was to take steps to help folks avoid making this mistake again.<p>It&#x27;s easy to create a policy that says &quot;do not commit secrets to GitHub&quot; (which was what I did) but in reality, this is much harder to implement. I would do things like sending a mass email to all of Engineering and having code reviewers check for it manually during code reviews. Problem is, these approaches don&#x27;t work consistently—if at all.<p>The bigger the engineering team—and the faster it ships software—the bigger this problem becomes. Also, developers today operate more independently and have broader responsibilities; they are responsible for not just writing code, but also testing, and deployment to production. You might expect that developers would follow best practices, standards, and policies, but of course, in practice, these things fall through the cracks. That&#x27;s why we built Datree.<p>What we built is a rules engine, which is essentially a server-side git-hook platform. We connect it to the organization’s source control, scan the layout of the repository, parse all structured files like YAML &#x2F; JSON &#x2F; XML &#x2F; Dockerfile, and build a catalog with the organization’s metadata—such as packages used, container images, and all the properties in the structured files.<p>The engine performs an automatic check each time code is committed to GitHub. This happens before the code can be merged to master. It runs just like your CI tests. It checks if the rules you&#x27;ve set are followed—and tells the developer when they aren&#x27;t and how to fix it, but not like your CI configuration, Datree is running on the org level so you can apply any rule on all of your repositories in just one click.<p>You may be asking “is this another static code analysis tool?” We see Datree as completing or complementing those tools, not competing with them. We’re seeing our customers create a rule with Datree to check and verify that static code analysis step is integrated and executed as part of their CI flow, instead of going over each CI config file in their repositories and updating it manually.<p>Rules could be anything: development best practices, lessons learned from post-mortems, security policies, or compliance standards. For example, a very popular rule is to prevent secrets from being merged into the master branch. Leaking secrets to source control is a common and potentially costly mistake (see <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19825202" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19825202</a>).<p>Often people ask us, “what rules should we adopt?” Because of this, we started curating industry best practices and turning them into rules they can simply enable when they use our product. Datree now comes with more than dozens of rules packs for all kinds of popular technologies (like Docker and serverless), languages and frameworks, tools (like GitHub and Travis CI), and even use cases (like SOC 2 compliance). Of course, you are free to create your own custom rules.<p>To date, Datree has run 100,000+ checks for Engineering teams large and small, including Microsoft, Globalgiving, Cybereason, and Gigster (YC S15, 400+ engineers).<p>We’re sure many HN members will have encountered similar problems and&#x2F;or have expertise in this area. We’d love to hear from you: How do you ensure the adoption of development best practices for your team? What works and doesn’t? Thank you!

16 comments

ThePhysicistabout 5 years ago
Funny we built almost the same product 6 years ago (sold it to a competitor), we even did automated refactoring of Python code. We also developed a regex-like language that could operate on abstract syntax trees &#x2F; annotated graphs, which we wrote all our checks with. We were working on extending that with a graph database backend and symbolic execution, basically building a large code graph that we would perform pattern matching on. We didn’t finish this work as we sold the company before that, in retrospect I often wonder what would have happened if we had kept developing it.<p>From my experience it’s quite hard to monetize developer tools except maybe when focusing on security, so it’s good you seem to have that as a focus as well. Good luck!
评论 #22537668 未加载
评论 #22537855 未加载
cddotdotslashabout 5 years ago
This is really awesome! One area I&#x27;d recommend looking into is automated scanning of cloud infrastructure templates (Terraform, CloudFormation, Troposphere, ARM Templates, etc.) These get pushed to source control all the time and often contain tons of policy violations.<p>The pricing feels a bit steep, especially considering that it&#x27;s 3.5x the cost per user of GitHub itself ($8 vs $28) but I suppose most enterprises wouldn&#x27;t mind at their scale compared to the cost of a breach.
评论 #22538876 未加载
harrisonjacksonabout 5 years ago
&gt;What we built is a rules engine, which is essentially a server-side git-hook platform.<p>Isn&#x27;t it too late once it is committed to github? It seems like this would be much more useful as a service running as a precommit hook on each workstation. Probably harder to ship&#x2F;monetize that but as far as actually solving the problem wouldn&#x27;t that be better?
评论 #22537709 未加载
评论 #22537579 未加载
评论 #22538030 未加载
__jalabout 5 years ago
We do several of these things, and bundling them together looks nice; I imagine troubleshooting the pipeline is much easier. We would need the enterprise version because we are on-prem, and our user count compared against the &#x27;pro&#x27; edition makes me think this would be a hard sell - high 5 figures&#x2F;year to replace a few shell scripts is tough.
评论 #22538224 未加载
elpakalabout 5 years ago
&gt;The engine performs an automatic check each time code is committed to GitHub<p>What if we don&#x27;t use GitHub but something else? Are you hooks able to run purely in git?
评论 #22537758 未加载
almathesabout 5 years ago
Why wouldn&#x27;t someone just use github actions and token scanning.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;features&#x2F;actions" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;features&#x2F;actions</a><p><a href="https:&#x2F;&#x2F;developer.github.com&#x2F;partnerships&#x2F;token-scanning&#x2F;" rel="nofollow">https:&#x2F;&#x2F;developer.github.com&#x2F;partnerships&#x2F;token-scanning&#x2F;</a>
评论 #22537192 未加载
评论 #22537261 未加载
toomuchtodoabout 5 years ago
Do you offer an on-prem version for orgs that couldn&#x27;t use a SaaS provider for this sort of functionality?
评论 #22537508 未加载
theanirudhabout 5 years ago
Looks good. We were trying to implement this using a mix of CI, pre-commit hooks and Gitlab PR templates, but it was limiting. This looks like exactly what we needed.<p>Regarding custom rules, does the tool run automated tests for those too?
评论 #22537621 未加载
评论 #22538271 未加载
yaniabout 5 years ago
I like the idea and I would like to use the product but the pricing needs to target more than large enterprises. $3,360 as a starting price is more than I am willing to invest. For 10 users, I pay $1,620.40&#x2F;annually to use Jira + Slack + GitHub.<p>Also, I do not want to request a demo, I want to try it out myself, then invite a few more people to try it out.
bluefoxabout 5 years ago
Hello Shimon, nice to see your post here, all the best to you and your team from an ex-colleague.<p>Would you mind sharing an example of a custom rule?
评论 #22537582 未加载
debaserab2about 5 years ago
Any plans to expand to other VCS hosting services(bitbucket specifically)?
评论 #22538461 未加载
dhagzabout 5 years ago
So this sounds like git-hooks-as-a-service. Am I right in that assessment?
评论 #22537193 未加载
评论 #22536972 未加载
vira28about 5 years ago
Wondering if there any open source project which does similar things? (surprised if it&#x27;s not)
评论 #22538548 未加载
评论 #22537263 未加载
评论 #22540118 未加载
simplifyabout 5 years ago
Curious, what tech did you use to implement this?
评论 #22547749 未加载
Chico75about 5 years ago
How do you deal with false positives?
评论 #22537551 未加载
mtmailabout 5 years ago
The URL <a href="https:&#x2F;&#x2F;www.datree.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.datree.io&#x2F;</a>
评论 #22536851 未加载