Archive
Nix - Death by a thousand cuts
- tech
This is my perspective on using Nix (the OS, the package manager, and the language) as a main driver for the past 2 years. I have gone to conferences, engaged the community, donated, submitted bug reports, converted my home servers, and probably spent hundreds of hours in Nix configs. I consider myself well versed, but certainly no expert. TLDR: In its current state (2025), I don't generally... [read more]
Charitable Giving in 2024
- finance,
- community
At the end of the year I square up my donations in order to meet the fuzzy target I set for that year. There is really no reason why I need to do this by the end of the year. It is mostly a habit from back when there was a tax advantage to donating smaller amounts while using the standard deduction. Here is my general methodology: Throughout the year when anyone I know (friends, family,... [read more]
On Coding Interviews: What Works, What Doesn’t, and Why It Matters
- tech
The relationship between technical interviews and real-world performance remains one of the most debated topics in software engineering recruitment. While you may be reading this because of a recent interview experience we shared, this post aims to explore a broader and more important question: how can companies better identify talented developers? Although many organizations have established... [read more]
Talk: Computer Keyboards!
- talks,
- tech
I'm a keyboard nerd. I think if you are spending most of your days sitting at a desk, you may as well make it nice. For me, its all about ergonomic forms and layouts, but in this talk I get into the world of keyboard styling, meetups, hacking, competitions, and history. Its a very visual talk and somehow I managed to deliver these ~120 slides in 1 hour. Slides and source here. Key takeaways... [read more]
OWASP Security Workshop 2024
- work,
- tech,
- talks
At Udemy we had a two day workshop/game given a couple times a year for anyone who wanted to join. It was a fun way of introducing penetration testing to web application developers. As a developer we may know to use the right database library that prevents things like an SQL injection, but do we really ever get to experience a real SQL injection? So we review the top 10 web vulnerabilities, put on... [read more]
Bringing Back San Francisco Casual Carpool
- community,
- tech
I have been trying to bring back SF casual carpool since it ended with the pandemic. Here are some of the things I/we have done between September 2022 and August 2023. Things I have tried Waiting at the North Berkeley passenger line daily, using both sfcarpool.app and the RapidCarpool app I have done this for close to a year, waiting 20 minutes a day. I get picked up around once a... [read more]
Talk: GraphQL and the n+1 problem
- talks,
- work,
- tech
When I was working at Udemy, there was a new charter for all services to communicate internally via grpc, and all for public facing traffic to use GraphQL. Some teams were using these technologies a bit, but for most of them these were both new technologies to learn. Since I had GraphQL experience from previous jobs, I was tasked with doing this work for my team, Adaptive Assessments. This was one... [read more]
Talk: Financial Independence
- finance,
- talks
In 2018, my buddy Jory John was nudging me to read and listen to some personal finance stuff that was going around. I enjoyed it, and it was a wake up call for me to get my ducks in order. I made plans to aggressively pay off our debts, learned how to methodically save, consolidated my accounts, and figured out index fund investing for retirement (which I had always felt daunted by). After... [read more]
Supercharging your API with Swagger
- tech,
- programming
This was a post I wrote for the PLOS tech blog, which is no longer online. If you manage, develop, or use REST APIs I have a tip for you. Swagger is a framework and toolset that greatly eases the pain of documenting and interacting with your APIs. It's a swiss army knife for all things APIs and in this post I'll explain why and how it makes APIs more enjoyable to work with. We have quite a few... [read more]
Talk: How to Entertain a Juggler
- talks
This is a presentation I seem to give every couple years. It can be 30 minutes to an hour depending on the venue, and if there is a hands on juggling lesson at the end. In 2015 I went to see a friend do a presentation at Nerd Nite East Bay about Native Bees. There were some other interesting talks and one was about competitive dodgeball leagues. The audience was very entertained with the idea... [read more]
Post: Testing Made Awesome With Docker
- work,
- tech,
- docker
This was a post I wrote for the PLOS tech blog. I later started writing a book with the same title, but eventually moved on to other projects before finishing it. As PLOS has grown (in users, articles, and developers) we have put a lot of effort into splitting our original applications into groups of services. My team is responsible for several web services. We have worked on finding open source... [read more]
A Visit from Richard Stallman
- community,
- work,
- tech
When I was working at The Public Library of Science (PLOS), one of my co-workers ran into Richard Stallman on the streets of San Francisco - presumably flown in to give a talk at some local conference. Somehow my co-worker talking him into giving a talk at PLOS. After all, our mission (making science/research free and accessible to all), is somewhat parallel to the mission of the The Free Software... [read more]
Talk: Free and Open Source Software
- talks,
- community
When I was living in New Haven there was a thriving Pecha Kutcha group, so I gave a couple talks. Here is my 6 minute introduction to free/libre software, for non-technical people. ... [read more]
How deep is your faith… in the cloud?
- projects
I started a small blog in 2011 to talk about a file sync project I was creating, Mybox. Trying to find some of my old writings I found one of the earlier posts on the wayback machine. In the past few days there has been some buzz about two seemingly major security issues in Dropbox. What can we learn from these and why where these so major that Jupiter Broadcasting dedicated most of a show to it?... [read more]
Robust and Efficient Algorithms for Rank Join Evaluation
- tech
This is about my graduate thesis on database query optimization. In the 2000's, organizations were dealing with more and more data. Efficiently making sense of it all was a hot topic. Several universities were working on these problems and the The Database Research Group at UCSC was no exception. We had quite a bit of active research on data mining and search efficiency. The particular issue I... [read more]
An Apology
- post
I wrote this piece for my friend Emily Heller years back for her printed zine called "A Sorry Book". Man, this wont make sense to anyone... unless ye be the old common computer nerd. So I am working in the school computer lab - its my fifth year here. This girl is moaning and groaning that she is having trouble with her account. So I say, "oh you just have to delete some old emails... [read more]