Norman Hooper

Results 29 comments of Norman Hooper

A vote? Already? I've really been enjoying this steady back-and-forth. I'd be up for a ranked choice vote. > I do believe in relying on the collective wisdom of larger...

### Type checking > an automated type checker in place before we started using type hints anywhere. After a little wrangling with configuring the GitHub workflow, we now have a...

Thank you for explaining this. I'm going to start off sounding like I disagree, but by the end I'm going to agree, mostly. ### :scroll: Docstrings > Are you looking...

The [Curtiss-Wright Corporation](https://en.wikipedia.org/wiki/Curtiss-Wright) ("Wright" as in "the Wright Brothers") shut down its Aeroplane Division in 1948, after failing to make the transition from propellers to jets. Yesterday I fixed a...

> I tapped out of this discussion when a prominent python author and speaker's difficulties with type hints were characterized as a strawman. I am a big fan of Dave...

See [corehq/motech/repeaters/migrations/0016_add_indexes.py](https://github.com/dimagi/commcare-hq/blob/e32b46522c77544562f632691023f1038e6a94ec/corehq/motech/repeaters/migrations/0016_add_indexes.py) for an example of how to add this index concurrently, so that the table is not locked. (Running [`EXPLAIN ANALYZE`](https://github.com/dimagi/commcare-hq/pull/35033/commits/e32b46522c77544562f632691023f1038e6a94ec#r1807545648) on a query that uses that new index...

I'm sorry that the description on this PR is so long. The bit you missed is > ### Do not merge ... And the "do not merge" label. I didn't...

The point is the difference between this ... ```python class CaseBulkDB: """ Context manager to facilitate making case changes in chunks. """ def __init__(self, domain, form_meta: SystemFormMeta = None): self.domain...

I've learned that a lot of Python devs know about coroutines in the context of async programming, but didn't use them before Python 3.4. Coroutines landed in Python 2.5. See...

> You mentioned that its used mainly for async programming. Maybe I should unpack this. A coroutine is a function that can pause its execution and later resume it. Python...