HNHacker News
TopNewBestAskShowJobs

jeremydeanlakey

660 karma · joined March 7, 2019

Mommy Saver = app to make a crying infant smile in 2 seconds. (https://play.google.com/store/apps/details?id=com.mommysaverapp)

Tighter Ship app (in progress) = small-business-bookkeeping as a super-fast and super-easy to-do list.

Actuarial work 2008-2015, software engineering 2015+, real estate investor, OMSCS student, father

submissionscomments
jeremydeanlakey··on Cognitive load is what matters
To make this more concrete:

If your service layer method requires data to be saved and the results to be sorted, you want to call a data layer method that saves it and a library method that sorts it. You do not want any of that saving or sorting functionality in your service method.

Combining different layers and different tasks so that your module is "deep" rather than "shallow" will make your code much higher cognitive load and create a lot of bugs.

jeremydeanlakey··on Cognitive load is what matters
The central idea around cognitive load is very good, central to writing good code.

But it's deeply mistaken to oppose smaller (or more correctly: simpler) classes/functions and layered architecture.

Layered architecture and simple (mostly small) classes and methods are critical to light cognitive load.

e.g. You should not be handling database functionality in your service classes, nor should you be doing business logic in your controllers. These different kinds of logic are very different, require different kinds of knowledge. Combining them _increases_ cognitive load, not decreases.

It's not mainly about swapping out dependencies (although this is an important benefit), it's about doing one thing at a time.

jeremydeanlakey··on U.S. moves to bar noncompete agreements in labor contracts
> The bottom line is, a non compete is not something that springs on you.

It's pretty standard now for employers to spring on you a previously-unmentioned non-compete clause at the time that you're onboarding. I've learned to ask for it before accepting an offer but I don't think most employees know to do that.

I'm a capitalist and I think non-competes have a very valid purpose in a limited set of circumstances. But the ubiquitous use right now is to make it harder for employees to leave.

jeremydeanlakey··on The WFH Folks
The desire for social connection at work might be dependent on phase-of-life.

My first job out of college had lots of socializing. In fact, that's where I met my wife.

Now I have kids. I don't really want to socialize with coworkers.

Socializing with coworkers was low before COVID. Now it's even slightly lower and I'm okay with that.

Edit: Also the impact of social connection on productivity might depend a lot on role and personalities involved.

jeremydeanlakey··on Trust-Busting as the Unsexy Answer to Google and Facebook
"when a company has a monopoly on a network it... basically becomes a government."

A monopoly functions like a government.

Or inverted: a government functions like a monopoly.

I find both angles interesting.

jeremydeanlakey··on Two Wishes for Dev Tooling
I like the refactor bot idea.

I'd be a little nervous to lean on Copilot to refactor, but I'd love a bot that just implements the changes that IntelliJ can already recommend to me.

A bot that did other logically straightforward refactors (like extracting mapper methods from big functions) would also be nice.

jeremydeanlakey··on Michael Burry of ‘The Big Short’ reveals a $530M bet against Tesla
> $530 million bet

> long puts against 800,100 shares

I find the title misleading. Unless I misunderstand, Michael Burry has not actually put $530M of his money at risk. He's made a much smaller, leveraged bet. $530M is just the notional value.

jeremydeanlakey··on Green vs. Brown Programming Languages
Ever since I first started working as a developer, I've wanted to preach the idea that code UX is important.

Some issues I found: 1) It took me years to clearly specify what clean code is. 2) I still haven't learned to effectively articulate its importance. 3) Except maybe onboarding time, I don't know how to measure its importance. 4) Cleaning up code is not rewarded. 5) Writing dirty code is often rewarded with promotions.

jeremydeanlakey··on How Developers Choose Names
A thesaurus is one of my favorite dev tools.
jeremydeanlakey··on Outgrowing Software
> tech will change everything, but once the dust has settled the questions that matter will mostly be retail questions, not tech questions

I'm not disagreeing but how will we know the dust has settled?

I might have thought the dust had settled with music when you could download mp3s. But now streaming services are the thing.

jeremydeanlakey··on Show HN: Finicity API Client for easy financial data
I created this after trying to use Finicity's API for my personal project. This handles authorization, endpoints and parameters, paging, mapping responses to typed objects.

Note that Plaid has a similar but official Python API library. But so far as I know, it only handles the authorization and endpoints, not the paging and mapping responses to objects.

I'm a little confused why companies whose product is an API don't create robust client libraries as they can do so better and more cheaply than their customers (and only once). If anyone can shed light on why they don't, I would be interested to know.

jeremydeanlakey··on An app can be a home-cooked meal
This is a really great resource! I'm planning on using it in the coding lessons I give my kid. Thanks for the link!
jeremydeanlakey··on No One Gets Rich by Shunning New Cars and Lattes
When I was a student, buying lattes would have significantly hurt my freedom. My stress level would be higher and I may have struggled to graduate before running out of money.

After building a career, worrying about lattes was a waste of effort. But buying a nice car would have limited my freedom. For example, I would not have bought as much investment real estate and I would probably be >$500K poorer.

But worrying about buying new cars probably won't make sense for me soon.

Avoiding lattes and new cars was, in fact, very important for my finances (in the past, but not now). The article acknowledges the importance of individual circumstances:

> What should determine personal spending is the totality of the buyer’s financial circumstances.

But the headline risks misleading people.

jeremydeanlakey··on Maybe You Don't Need Kubernetes (2019)
> keep it stupid simple

https://en.wikipedia.org/wiki/KISS_principle

jeremydeanlakey··on Analyzing churn rates, free trials, and other metrics
> You might think "just crank up the growth until you hit $10k/month". Something weird happens ... you ended up losing money with high growth.

Ratio of new customers showing losses vs old customers showing profits.

Your ratio of new to old customers basically IS your growth rate.

As that ratio increases, you could show "losses". But financially, it's more like investment than losses.

You probably should, in fact, crank up the growth in this situation. Think of it as an investment and calculate your rate of return.

Edit 1: I threw together a quick spreadsheet to illustrate the point (shows cash flows per customer):

https://docs.google.com/spreadsheets/d/19mbsjcwlyLs_KsvPrjdt...

Edit 2: On second thought, rate of return is the wrong measure because time value of money is not significant. What you care about is Customer Acquisition Cost and Customer Lifetime Value.

Edit 3: FYI I'm a developer now, but was actuarial, and Excel whiz w/degrees in finance & accounting. I'm always happy to give anyone a little bit of free help with things like this.

jeremydeanlakey··on Basic Social Skills Guide (2012)
I plan to use this with my son because I think he's going to struggle socially as I did when I was a kid.

One thing about body language though - I think it's one thing to read about body language but a very different thing to visually train your brain to recognize it quickly.

I hope to one day make YouTube videos with lots of examples for this purpose. In the meantime, the best book resource I've found for that is the book "What Every Body is Saying", because it contains lots of example pictures.

jeremydeanlakey··on The post-exponential era of AI and Moore’s Law
I wonder does the compute power per dollar have to level off so soon?
jeremydeanlakey··on Code Health: Respectful Reviews == Useful Reviews
I think you're right that in case of obvious mistake, like a typo, a question would sound condescending (like "I think you can't handle feedback" instead of "let's make sure we understand each other's thinking").
jeremydeanlakey··on Code Health: Respectful Reviews == Useful Reviews
They didn't have my favorite one: using questions instead of statements For example, "Why did you do it this way?" instead of "Here's why you should do it a different way". (or "have you considered...", "what are the benefits of A vs B", "is this going to meet this requirement or avoid that problem")

This approach has helped me because

a) It feels less aggressive (more like you're working through it together),

b) It prods them into thinking through what they missed, and

c) It prods for information that I might be missing. I might actually discover that I'm wrong and the other person considered more information.

jeremydeanlakey··on Today’s correction isn’t much like the dot-com bubble
One perspective that I gained much later than I should have:

Suppose you have a small software company, Reinvest Software with big margins and lots of opportunities to expand. You can take home that profit and pay taxes. Or you can invest in growth. That investment in growth is an investment in intangible assets with insanely good tax treatment. But it looks bad on the financial statements.

Suppose an investor, Smart Capital, sees your business potential and invests even though your GAAP income is low or negative. Smart Capital does very well for itself.

Suppose another investor, Sucker Capital, sees Smart Capital doing well, decides that profits don't matter and invests in Negative Margin Software, which never has hope of making money.

I think a lot of people can't distinguish between Negative Margin Software and Reinvestment Software. For many years, I didn't realize that they were separate things and I thought tech was mostly a Ponzi scheme.

At first glance, I see more Reinvestment Software vs Negative Margin Software compared to the dot-com era.

jeremydeanlakey··on Age Discrimination at Work
Here in the US, we had a candidate include a picture of himself... wearing a captain hat and striking a dramatic pose. He said he put it there to filter out the wrong kind of companies. We hired him.
jeremydeanlakey··on Google just deleted my nearly 10-year-old free and open-source Android app
It looks like @GooglePlayDev responded on Twitter 4h ago.

https://twitter.com/GooglePlayDev/status/1166999937156100096

Good luck to the developer!

jeremydeanlakey··on Beluga whale retrieves cell phone, returns it to tourist [video]
More direct link without all the ads and clutter:

https://www.instagram.com/p/BxFlIZpAT7a/?utm_source=ig_embed

jeremydeanlakey··on Civic honesty around the globe
At first I thought it was counterintuitive.

But after self-reflection, I'm more likely to report it if it did have money.

If it had money, I'd feel an obligation to protect it and return it to the owner. If it didn't, I'd feel more like it's their problem.

jeremydeanlakey··on Gmail Experiencing Issues
The doors at my work open with an app. It connects through the internet.

My phone switches from mobile data to wifi as I get near the door, causing a several second wait. Now I hit the button before I reach the wifi and then run to the door to try to get it before it locks again.

Hopefully we never lose internet...

jeremydeanlakey··on Gmail Experiencing Issues
Not familiar with Nest. Does your thermostat not work if your internet doesn't work?
jeremydeanlakey··on Gmail Experiencing Issues
My code is having some trouble with Firestore as well. I was getting 503s ten minutes ago but now it's just really slow.
jeremydeanlakey··on Appeal accepted: Google removed my ads-free app for “deceptive ads”
> unfortunately all I've got are upvotes instead

I wouldn't call that unfortunate. You pretty much nailed it and no one has much to add.

jeremydeanlakey··on Appeal accepted: Google removed my ads-free app for “deceptive ads”
I agree. I included my wording specifically because of this.

My response email to the rejection today was very clear. Unfortunately, it was also passive aggressive.

Hopefully I'll learn to clear my head before reacting next time.

jeremydeanlakey··on Appeal accepted: Google removed my ads-free app for “deceptive ads”
Update: Google's reversed their decision and the appeal is accepted.

I wrote a passive-aggressive email. I posted this. I tweeted at them (first tweet ever).

I'm not sure what worked, but something got through. Thanks all for the support.

Page 1 of 2Next →