Skip to content

Instantly share code, notes, and snippets.

View jdmaturen's full-sized avatar

jd jdmaturen

View GitHub Profile
@jdmaturen
jdmaturen / company-ownership.md
Last active July 29, 2023 22:39
Who pays when startup employees keep their equity?

Who pays when startup employees keep their equity?

JD Maturen, 2016/07/05, San Francisco, CA

As has been much discussed, stock options as used today are not a practical or reliable way of compensating employees of fast growing startups. With an often high strike price, a large tax burden on execution due to AMT, and a 90 day execution window after leaving the company many share options are left unexecuted.

There have been a variety of proposed modifications to how equity is distributed to address these issues for individual employees. However, there hasn't been much discussion of how these modifications will change overall ownership dynamics of startups. In this post we'll dive into the situation as it stands today where there is very near 100% equity loss when employees leave companies pre-exit and then we'll look at what would happen if there were instead a 0% loss rate.

What we'll see is that employees gain nearly 3-fold, while both founders and investors – particularly early investors – get dilute

  1. As a pioneer in deep learning and AI research, what was the turning point for you when you began to perceive the potential risks associated with advanced AI as a serious concern?

  2. In your opinion, which AI applications have the most potential for positive impact on society, and how can we encourage their development while mitigating the risks associated with more dangerous applications?

  3. Can you share any insights on how the AI research community has responded to your concerns, and what collaborations or initiatives you've seen emerge to address AI safety?

  4. As AI technologies become more integrated into our everyday lives, what steps can individuals and organizations take to ensure they are using these tools responsibly and ethically?

  5. You mentioned the possibility of looking to the international ban on chemical weapons as a model for curbing dangerous AI development. How do you envision an AI-specific regulatory framework or treaty would function, and what challenges might it face?

@jdmaturen
jdmaturen / rate_limiter.py
Created October 28, 2021 05:02
Simple Thread Safe Python Rate Limiter. MIT License. Intended for use in e.g. limiting calls to rate limited services.
# MIT License
# author @jdmaturen
import logging
import time
from collections import deque
from threading import Lock
class RateLimiter(object):
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@jdmaturen
jdmaturen / bg_nbd.py
Created October 16, 2013 05:36
Implementation of the beta-geometric/NBD (BG/NBD) model from '"Counting Your Customers" the Easy Way: An Alternative to the Pareto/NBD Model' (Fader, Hardie and Lee 2005) http://brucehardie.com/papers/018/fader_et_al_mksc_05.pdf and accompanying technical note http://www.brucehardie.com/notes/004/
"""
Implementation of the beta-geometric/NBD (BG/NBD) model from '"Counting Your Customers" the Easy Way: An Alternative to
the Pareto/NBD Model' (Fader, Hardie and Lee 2005) http://brucehardie.com/papers/018/fader_et_al_mksc_05.pdf and
accompanying technical note http://www.brucehardie.com/notes/004/
Apache 2 License
"""
from math import log, exp
import numpy as np
--- a/Library/Formula/membase.rb
+++ b/Library/Formula/membase.rb
@@ -1,9 +1,9 @@
require 'formula'
class Membase < Formula
- url 'http://membase.org/downloads/membase_1.6.0beta2-18-g638fc06_src.tar.gz'
+ url 'http://membase.org/downloads/membase_1.6.0beta3_src.tar.gz'
homepage 'http://membase.org'
- md5 'b0b2a5d909cf3d2e20db07c4d12259a0'
@jdmaturen
jdmaturen / sbg.py
Last active May 1, 2020 19:43
Implementation of the shifted beta geometric (sBG) model from "How to Project Customer Retention" (Fader and Hardie 2006) http://www.brucehardie.com/papers/021/sbg_2006-05-30.pdf Apache 2 License
"""
Implementation of the shifted beta geometric (sBG) model from "How to Project Customer Retention" (Fader and Hardie 2006)
http://www.brucehardie.com/papers/021/sbg_2006-05-30.pdf
Apache 2 License
"""
from math import log
@jdmaturen
jdmaturen / nps.py
Created October 30, 2014 22:26
Two methods of estimating confidence and error in NPS results. One uses the beta distribution as the conjugate prior to the Bernoulli distribution. The other uses the central limit theorem and standard error calculation. The latter can also correct for finite population size.
import math
import numpy as np
from scipy.stats import beta
def nps_beta_dist(sample_size, promoters, detractors, confidence=95):
"""
Confidence range of NPS score. NPS score is defined as the percent of promoters
minus the percent of detractors. See also http://en.wikipedia.org/wiki/Net_Promoter
@jdmaturen
jdmaturen / ExponentiallyDecayingSample.py
Created April 6, 2011 01:45
expontentially decaying sample algorithm w/ redis
import logging
from math import exp
from random import random
from time import sleep
from time import time
from uuid import uuid1
from redis.exceptions import WatchError
(jd@XXX) /home/jd/shovel> time ./shovel.py jd_test
got 901 messages
real 0m1.617s
user 0m0.558s
sys 0m0.044s