Jach's personal blog

(Largely containing a mind-dump to myselves: past, present, and future)
Current favorite quote: "Supposedly smart people are weirdly ignorant of Bayes' Rule." William B Vogt, 2010

Logit and Expit

Logit, or log-odds, is a sometimes useful function for dealing with probabilities in a more intuitive fashion. Expit is its inverse. This was kind of a tricky algebraic proof for me, but I am out of practice... For the following, assume I'm using log() function in base 2, because I'm a programmer.

[math]logit(p) = log(odds(p)) = log(\frac{p}{1-p}) \\
expit(p) = \frac{exp(p)}{1+exp(p)} = \frac{2^p}{1+2^p}

In order to prove these are inverses, I am going to prove that

See Full Post and Comments

Just let me type

I like typing. Many programmers don't seem to, but that's ok, we still manage to work together. Except I basically have to use Eclipse for work. (Some people use IntelliJ but I've tried it, it's not sufficiently different or better for my work use-case...) And Eclipse frequently gets in the way of me just typing. I know there are things I could do to alleviate it, but I shouldn't have to!

For example, I want to add braces around a lambda to expand it to a more complicated lambda. I move the cursor to the start of the lambda body, type '{', and... I get a '{' at the end of the line. Syntax error, not what I wanted... I'm still not sure how I eventually got my brace there but it totally took me out of my thought processes to solve this error.

Other times, the whole UI will lock up as I'm typing due to the intelli-sense stuff. I type . and try to type the method name, but it locks up. I'm not even pressing ctrl+space to have it autocomplete, it can still lock up. The worst is when it "can't find a completion" and has to pop up a dialog telling me about that after I waited for many seconds, and I know the completion exists, but some issue has made Eclipse unable to find it which usually resolves with some form of restarting/project nuking.

See Full Post and Comments

Passionate about what again?

I was looking at my resume from 2014, which I haven't really updated since then since I've been employed. One of the line items is "Passionate about Linux-as-a-platform and open source software."

But I haven't really made any open source contributions worth mentioning since 2012. And while my employer runs Linux in production, a lot of the fellow developers seem to prefer their macbooks or their mac towers to the Linux tower option (we have no Linux laptop option so I use a windows laptop to remote to my Linux tower), and there's been talk for a while now about running docker in production instead. In any case I don't work anywhere near that level in our tech stack, my life is mostly a backend Enterprise Java app hell with occasional forays into our enterprise frontend hell...

I've since learned to be more passionate about making quality software first, but I'm still pretty ambivalent when it comes to existing tire fires. That is, it's fine to make them a bit worse, try not to make them a lot worse (though that is hard to do), it's better to make them more manageable or contained (yay a few unit tests here and there..), and it's impossible to ever put them out. So I think for my resume update I'll put "Passionate about Linux-as-a-platform, open source software, and quality software first." but I know in an interview setting I'd only be able to talk about the benefits of using and contributing to open source, without having much to show on the contributing part since 2012.

See Full Post and Comments