HN user

ankitdce

234 karma

Software engineer, ex-Google. Early stage startups, rapid prototyping, MVPs.

YC Badge: 0x7f2c5c3ad7ba0735cb97ecc1848de4e48178db67

Posts56
Comments43
View on HN
flyingsolo.bearblog.dev 2mo ago

How to Acquire a Country: A Thought Experiment

ankitdce
4pts1
buttondown.com 7mo ago

AI Is Bad UX

ankitdce
4pts0
www.aviator.co 8mo ago

Show HN: Runbooks – Shareable Claude Code Sessions

ankitdce
4pts0
www.fastcompany.com 1y ago

How it feels at the beginning of the end of the world

ankitdce
37pts5
www.cummulative.io 1y ago

Why did Microsoft give GitHub Copilot away for free?

ankitdce
4pts2
techcrunch.com 1y ago

'They wish this technology didn't exist': Perplexity responds to the lawsuit

ankitdce
2pts0
therecord.media 1y ago

Russia and Turkey ban Discord messaging app

ankitdce
4pts0
github.com 1y ago

Show HN: Open-Source Stacked PRs on GitHub

ankitdce
2pts0
techcrunch.com 1y ago

Telecom that enabled Biden deepfake scam will pay FCC $1M

ankitdce
8pts0
www.aviator.co 1y ago

The Irrational Fear of Deployments

ankitdce
2pts0
www.crowdstrike.com 2y ago

Crowdstrike – Statement on Falcon Content Update for Windows Hosts

ankitdce
11pts3
techcrunch.com 2y ago

Experiment finds AI boosts creativity individually – but lowers it collectively

ankitdce
2pts1
thenewstack.io 2y ago

The Anatomy of Slow Code Reviews

ankitdce
1pts0
www.usenix.org 2y ago

Release Engineering Best Practices at Google [pdf]

ankitdce
2pts0
techcrunch.com 2y ago

X is building a 'dislike' button for downvoting replies

ankitdce
21pts16
greasyguide.com 2y ago

Robust Exception Handling in Python

ankitdce
3pts1
www.aviator.co 2y ago

Impact of Deployment Frequency and Batch Size on Software Quality

ankitdce
2pts0
www.aviator.co 2y ago

Code reviews don't usually find bugs

ankitdce
13pts17
www.nature.com 2y ago

The consequences of generative AI for online knowledge communities

ankitdce
4pts0
www.theregister.com 2y ago

Chinese schools testing 10k locally made RISC-V-ish PCs

ankitdce
13pts8
news.ycombinator.com 2y ago

Ask HN: Are manual deployment rollbacks dead?

ankitdce
1pts0
www.infoworld.com 2y ago

Return to Office Is a Mistake

ankitdce
82pts114
www.infoq.com 2y ago

Technical Decision Buy-In Framework

ankitdce
1pts0
www.siliconrepublic.com 2y ago

Meta is using two Nvidia GPU clusters to train Llama 3

ankitdce
1pts0
www.aviator.co 2y ago

Show HN: Aviator FlexReview – An Alternative to Codeowners

ankitdce
5pts0
www.thinkbigcodesmall.io 2y ago

Software development has become a blue collar job?

ankitdce
2pts1
www.pcloadletter.dev 2y ago

Dark UX doesn't work in the long run

ankitdce
75pts35
techcrunch.com 2y ago

Safety by Design

ankitdce
1pts0
www.projectmanager.com 2y ago

Henry Gantt's Biography and Role in Gantt Chart History

ankitdce
1pts0
techcrunch.com 2y ago

Building AI guardrails should be part of the process

ankitdce
1pts0

author here - a few things: 1) code review was always a lossy verification system 2) to eliminate the need for code reviews, we should build systems that can blend predictive execution with deterministic verification 3) if we cannot build bug-free systems, we have to resilient ones 4) a core value of code reviews is knowledge sharing - this we must still preserve through specs reviews

If you are looking for an open source stacked PRs CLI, you can look into av CLI (https://github.com/aviator-co/av). Unfortunately this also only works with GitHub, but it should be possible to add support for any Git-based platform.

Disclaimer: I'm the founder of Aviator who supports the av CLI. It's a free tool to manage stacked PRs.

Background: I've worked on all side of this spectrum, left Google 10 years ago and have been working in startups since then. And now founder of a startup.

I agree that from a financial outcome perspective, the odds of making big in startups may not be in your favor.

"Interesting work" perspective may need a bit more color. No matter if you work in a big tech or startup - majority of the work is very mundane. Even if you are working on the coolest AI big-tech or startup, you are probably not doing "exciting cutting edge" work most of the time!

This is probably also why folks who join a startup looking for exciting work get bored quickly with the day-today mundaneness.

Eventually what matters from the interesting work perspective is to understand what part of the work truly gives you joy - what makes you excited about getting off the bed and do great work - even the mundane one.

The motivation could be - seeing your product being used by millions of users, solving a hard problem, sharing your research with the world, having a great work-life balance, or getting rich. Understanding that can help answer the question on what is right place for you.

One challenge I've found in big-tech is that even if the company is doing amazing work, not everyone gets an opportunity to work on the most exciting projects.

Yeh, perhaps the big shift for the reincarnation was their ability to get a foothold and grow their enterprise sales business. Their strategy of building the Microsoft software ecosystem paid off very well. Also the reason why Slack could not continue competing with Microsoft teams.

The more interesting question would be whether they will go through the same downward trend again sometime in next few years.

On this Star Wars day, another take on monorepos!

But on earth, we have seen now several instances where teams have moved from polyrepo setup to a monorepo. Although "monorepo vs polyrepo" is always a debated topic, and it's hard to scale a monorepo, large companies like Stripe, Canva, Cruise, Doordash have been able to manage monorepos by building strong tooling and automation to handle the scale.

We're excited to announce "The Hangar", a community created specifically for software engineers working in developer experience space to come together, and learn from each other.

The Hangar already boasts a community of dev-productivity teams/ dev-experience teams from leading companies like Figma, Cruise, Square/Block, Slack, and Netflix. The group features open discussions around best practices, useful tools, relevant industry news and career tips.

At The Hangar, we host monthly “off-the-record” zoom hangouts where you'll find detailed insights on topics such as migrating to a self-hosted CI system or setting up Bazel correctly. This is a space where vetted experienced professionals can exchange ideas, share hard-earned wisdom, troubleshoot issues, and ultimately help each other in their projects and careers.

Join our community to talk shop anything DX: https://dx.community/

I've also had terrible experience posting on SO lately. Even though I have been posting on it for several years, they keep flagging my questions. Plus none of the questions these days get answered without a bounty. So, now I have to wait over 2+ days to get an answer.

Dev productivity metrics have come a long way from the time when one use to measure the number of lines of code written or the PRs created. I think Dora metrics is still a step up from that as it focuses on measuring team productivity vs individuals, and provides some indicator of the true bottlenecks for productivity.

For everyone who complains about monorepos, remember some of the most forward thinking engineering companies like Google and FB also use monorepos. All the arguments that people make in favor of polyrepo are making so because of lack of strong tooling for monorepos. That's also why Google and FB would not have scaled if they were using GitHub / GitLab but had to build their own. Also Google's original source control was built on top of perforce!

That's very interesting feedback. We certainly don't have a way to force simulate failure.

A related capability we are working on is to also rerun the identified flaky tests X times so they pass. This depends on the capabilities of the test runner, so it will work with specific ones first (cypress, pytest, etc). That way you still make sure that flaky tests pass instead of supressing.

That is a fair argument. Not all organizations have the bandwidth to measure and manage stability of builds. Some companies build internal tools / dev productivity team for this purpose. There are always right intentions to comment out the flaky test with the mindset of coming back to it, but it is also a very low priority item in most cases when you have to ship new features.

Fixing flaky tests can very commonly take longer than writing new tests.

Curious, how often do you see a flaky test in your system? In my past experience at one of the mid-size startups, we used to get a new flaky test almost on a weekly basis in a monorepo. We started the process of actually flagging them as ignored (we created a separate tag for flaky tests), but later realized that the backlog of fixing flaky test never came down.

In another case observed, devs just got used to rerunning the entire suite (the flakiness here was about 10-20%)

Haha great point. Well from what we have learned from our users is "fixing" test typically end up with "delete most of them". Fixing tests can be time consuming effort.

Another way to think about it is, whether Flaky tests are worth keeping? At some point if the tests fail often, do these really add value. And we think - it does. If you are able to identify flakiness from real failure and reduce noise, you can still avoid real failures.

Hi HN, we are Spriha and Ankit building Flakybot is a tool to automatically identify and suppress test-flakiness so that developers are better able to trust their test results.

Most CI systems leave it up to teams to manually identify and debug test flakiness. Since most CI systems today don’t handle test reruns, teams just end up with manually rerunning tests that are flaky. Ultimately, tribal knowledge gets built over time where certain tests are known to be flaky, but the flakiness isn’t specifically addressed. Our solution, Flakybot, removes one of the hardest parts of the problem: identifying flaky tests in the first place.

We ingest test artifacts from CI systems, and note when builds are healthy (so that we can mark them as “known-good builds” to use while testing for flakiness). This helps automatically identify flakiness, and proactively offer mitigation strategies, both in the short term and long term. You can read more about this here: https://ritzy-angelfish-3de.notion.site/FlakyBot-How-it-work...

We’re in the early stages of development and are opening up Flakybot for private beta to companies that have serious test-flakiness issues. The CI systems we currently support are Jenkins, CircleCI and BuildKite, but if your team uses a different CI and has very serious test-flakiness problems, sign up anyway and we’ll reach out. During the private beta, we’ll work closely with our users to ensure their test flakiness issues are resolved before we open it up more broadly.

That's a great question. FWIW Gitlab does have merge train with similar baseline functionality. There's two part answer to your question: - even though it's trivial from the face of it, since we specialize in merging process, we are able to provide much more complex workflows, such as batch mode. - starting with MQ, our goal is continue focusing in engineering productivity and build as we understand the use cases better. We imagine a world where every team has the toolset that is built internally by developer productivity teams at the likes of Google, FB. We have to still start somewhere right :)

Wow this is amazing. May be you should add MergeQueue to your list :)

- Yeh we define our own pre-conditions because some developers also use it for non-protected branches. The default picks up the Github build-in preconditions and allows you overwrite. - Can you clarify your fixup commit suggestion? So there's typically an option to squash and merge when merging the PR, but sounds like you want to maintain some of those commits and squash the rest? - Just read up the AzDO's semi-linear rebase.Yeh MQ should be able to do that as well. You can specify different config for rebasing the branch and for merging the PR.

Curious since you have done this much research - have you built or used any of the merge queues in your company? Would love to chat more. ankit[at]mergequeue[dot]com