Hacker News new | comments | ask | show | jobs | submit login

The Better platform gets around half a million learning actions every week and it has been running for well over a year with no downtime or maintenance. We still don’t know of any bugs.

I'm guessing people use your learning software during weekdays and working hours (5 days and 8 hours/day). That's 3.4QPS. How many machines are you running on?

Also, I'm really shocked to hear you've not encountered any bugs. How many humans are using your systems? A scale is good enough (100s, 1000s, 10000s?).

When we ran it, the workload was mostly during weekdays in different timezones (so distributed over more than 8 hours). This was on a single c4.2xlarge AWS server, which was bigger than we needed. To be clear, I wasn't trying to make a claim about high load with that statement, just that the system has been running smoothly with steady activity for a long time.

Each week the number of individual users was in the thousands; that was usually a rolling window since people tend to not do more than a few e-learning courses per year. I'm certainly not claiming that there are no bugs -- in all likelihood there are -- only that no bugs have yet crashed the system or were obvious and serious enough for users to tell us about.

>That's 3.4QPS.

Who said a "learning action" is equivalent to a query?

>Also, I'm really shocked to hear you've not encountered any bugs.

What's so shocking about it?

What bugs are we talking about? You've never encountered a functional bug or a security bug? That's definitely a good track record. Bug studies on languages definitely point to only a slight lower rate of bug for Haskell compared to other languages, so to have none is quite an outlier.

I only know of two somewhat comprehensive studies on this. One says Haskell had far fewer bugs and the other has a conclusion like yours.

You make it sound like there are numerous studies supporting your conclusion, can you link a few of them?

I wrote Haskell myself and it is indeed generally free of bugs. However, there are many things that type system alone cannot fully address, for example, boundaries (Haskell's functions could be not total, and yes I know there are type-level integers and things, but they are often a pain to use)

> What's so shocking about it?

It's a different style of development.

A lot of people have never worked on projects without lots of bugs.

My current F# project for example has almost 100 outstanding issues.

They would be really surprised to know that lots of people have worked on large c projects that are virtually bug free.

To be fair, not encountering bugs is often broken into two fields: a) aggressively defining user issues as out of scope, or b) not having a varied user pool.

Examples of (a) are not always malicious, mind. For a small shop, if your program messes up because during a process the machine it was on got unplugged, it is easy to see why that can be called not a bug in the system. When your shop gets large enough, though, scenarios like that become far too common.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact