HN user

dlevine

1,878 karma
Posts64
Comments394
View on HN
dana11235.medium.com 1y ago

Feeling the Vibe: Coding with AI

dlevine
1pts1
dana11235.medium.com 1y ago

How to work effectively with contract developers

dlevine
7pts1
dana11235.medium.com 4y ago

Why do product teams need deadlines?

dlevine
2pts0
dana11235.medium.com 4y ago

How product teams should set deadlines

dlevine
63pts40
dana11235.medium.com 4y ago

What I learned (and still want to know) from the UN Climate Change Report

dlevine
1pts0
dana11235.medium.com 4y ago

We shouldn’t be pessimistic about the future

dlevine
3pts0
dana11235.medium.com 4y ago

What I Learned from User Story Mapping (and how most people do Agile wrong)

dlevine
3pts0
dana11235.medium.com 5y ago

Why I’m hoping Bitcoin goes to zero (even though I’m bullish on cryptocurrency)

dlevine
1pts0
dana11235.medium.com 5y ago

The Cost of Complexity

dlevine
1pts0
dana11235.medium.com 5y ago

My take on the study from MIT that predicts “societal collapse”

dlevine
317pts497
dana11235.medium.com 5y ago

Four common mistakes founders make when validating product ideas

dlevine
4pts0
dana11235.medium.com 5y ago

Some Common Perspectives on Cryptocurrency

dlevine
1pts0
dana11235.medium.com 5y ago

My Take on Microsoft's Windows 11 Hot Mess

dlevine
14pts25
dana11235.medium.com 5y ago

Do (mostly) what's cheap for you

dlevine
1pts0
blog.config.ly 5y ago

Ways to Reduce the Pain of Deploys

dlevine
2pts0
blog.config.ly 5y ago

The Cost of Pushing Code

dlevine
2pts0
blog.thirdyearmba.com 11y ago

Why Intel Should Be Scared of the Future

dlevine
8pts8
blog.thirdyearmba.com 12y ago

Dealing With The Loneliness of Working Alone

dlevine
28pts5
blog.thirdyearmba.com 12y ago

Apple’s “Handoff” Technology Shows Us the Future of Run-Anywhere Applications

dlevine
40pts27
blog.thirdyearmba.com 12y ago

How to Protect Your Startup Against the Things You Can't Predict

dlevine
1pts0
blog.thirdyearmba.com 12y ago

Learning How To Avoid Mistakes

dlevine
1pts0
blog.thirdyearmba.com 12y ago

Why I Shouldn't Feel Sorry For Myself

dlevine
1pts0
blog.thirdyearmba.com 12y ago

Why 4K On The Desktop is a Big Deal

dlevine
2pts0
blog.thirdyearmba.com 12y ago

How I Make Difficult Decisions

dlevine
1pts0
blog.thirdyearmba.com 12y ago

Don't Fight Your War on Two Fronts

dlevine
2pts0
blog.thirdyearmba.com 12y ago

Jumping Off The Train

dlevine
1pts0
blog.thirdyearmba.com 12y ago

The Story of My First Startup Failure

dlevine
4pts0
medium.com 12y ago

Fuck It. Ship It.

dlevine
5pts0
blog.thirdyearmba.com 13y ago

The Power of Attention

dlevine
3pts0
blog.thirdyearmba.com 13y ago

The Value of Downtime

dlevine
5pts0

It seems to have worked for Bill Gates as well. He definitely did some not so nice things when starting and running MS - I think it unfortunately goes with the territory of running a successful company at scale. But subsequently he has become more know for his philanthropy.

OpenBSD 7.8 9 months ago

When I was in the college in the early 2000s, I had a friend who ran OpenBSD. He always sang its praises, mostly because it was the most secure operating system.

I tried a bunch of Linux Distributions and FreeBSD before mostly settling on MacOS, but never actually got around to running it.

Glad to see OpenBSD is still being actively developed.

Something I find weird is that this article compares a 9950x with two different laptop CPUs and concludes that performance has increased massively in the past few years. If you compare the 9950x with its two Desktop predecessors (released 2 and 4 years before), you see about a 6% increase from the 7950x and a 45% increase from the 5950x. So you should consider upgrading regularly, but potentially not every single generation. I think it makes sense to consider the performance and offer an upgrade when you see a 50% or so cumulative improvement. Everywhere I have worked has upgraded developers every 3-4 years, and it might make sense to upgrade if there is a massive change (like when Macbooks went to M-series).

As for Desktop vs Laptop, that is relevant too. Desktops are typically much faster than Laptops because they are allowed much larger power envelopes, which leads to more cores and higher clock speeds for sustained periods of time. However, there is always a question as to whether your use case will be able to use all 16/32 cores/threads in a 9950X CPU. If not, you may not notice much difference with a smaller processor.

Source for CPU benchmarks: https://www.cpubenchmark.net/compare/6211vs5031vs3862vs5717/...

Study mode 12 months ago

I haven't done this that much, but have found it to be pretty useful.

When it just gives me the answer, I usually understand but then find that my long-term retention is relatively poor.

If someone uses AI to generate an output, that should be stated clearly.

That is not an excuse for it being poorly done or unvetted (which I think is the crux of the point), but it’s important to state any sources used.

If i don’t want to receive AI generated content, i can use the attribution to filter it out.

My theory is that, when done properly, it’s much closer to science than engineering.

And by “done properly,” i mean done in a regimented way with evals to verify that a wide range of inputs produce the desired outputs.

Prompting is much closer to discovering the properties of an already existing system than building something using engineering methods.

I had a licensed copy of Executor back in the mid-90s. It was the coolest thing ever. Thanks for being one of my inspirations to go into software development.

I think of LLMs as knowing a lot of things but as being relatively shallow in their knowledge.

I find them to be super useful for things that I don't already know how to do, e.g. a framework or library that I'm not familiar with. It can then give me approximate code that I will probably need to modify a fair bit, but that I can use as the basis for my work. Having an LLM code a preliminary solution is often more efficient than jumping to reading the docs immediately. I do usually need to read the docs, but by the time I look at them, I already know what I need to look up and have a feasible approach in my head.

If I know exactly how I would build something, an LLM isn't as useful, although I will admit that sometimes an LLM will come up with a clever algorithm that I wouldn't have thought up on my own.

I think that, for everyone who has been an engineer for some time, we already have a way that we write code, and LLMs are a departure. I find that I need to force myself to try them for a variety of different tasks. Over time, I understand them better and become better at integrating them into my workflows.

I’m job searching right now, and it’s definitely not the doom and gloom that I’m hearing about.

I think it’s a challenging environment for developers who are either inexperienced or who have skills that are out of date. I have found that companies are a bit more picky than i remember about knowing the exact tech stack they use, but they are still making offers and those offers are pretty good.

Note that I’m applying mostly to mid-sized non-public companies. I’m not sure what it’s like applying to MAANG-types right now.

I think of LLMs like smart but unreliable humans. You don't want to use them for anything that you need to have right. I would never have one write anything that I don't subsequently go over with a fine-toothed comb.

With that said, I find that they are very helpful for a lot of tasks, and improve my productivity in many ways. The types of things that I do are coding and a small amount of writing that is often opinion-based. I will admit that I am somewhat of a hacker, and more broad than deep. I find that LLMs tend to be good at extending my depth a little bit.

From what I can tell, Sabine Hossenfelder is an expert in physics, and I would guess that she already is pretty deep in the areas that she works in. LLMs are probably somewhat less useful at this type of deep, fact-based work, particularly because of the issue where LLMs don't have access to paywalled journal articles. They are also less likely to find something that she doesn't know (unlike with my use cases, where they are very likely to find things that I don't know).

What I have been hearing recently is that it will take a long time for LLMs will be better than humans at everything. However, they are already better than many many humans at a lot of things.

I have been playing around with MCP, and one of its current shortcomings is that it didn’t support OAuth. This means that credentials need to be hardcoded somewhere. Right now, it appears that a lot of MCP servers are run locally, but there is no reason they couldn’t be run as a service in the future.

There is a draft specification for OAuth in MCP, and hopefully this is supported soon.

I have found feature flagged rollouts to be one of the biggest advances in fairly recent software development. Probably too much to say about it in a comment, but they massively de-risk launches in a number of important ways, both in being able to quickly turn a feature off if it has unintended consequences and being able to turn it on for a very specific set of users.

With that said, I think that LaunchDarkly and the like are a bit expensive and heavyweight for many orgs, and leaving too many feature flags lying around can become serious debt. It totally makes sense to start with something lighter weight, e.g. an env var or a quick homegrown feature in ActiveAdmin.

Railroad Tycoon II 2 years ago

About a year later, I got the P3-550 that overclocked to 733. Not quite as good of an overclock in terms of percentages, but I ran that machine for 5 years with no issues.

I played Disco Elysium when it came out and enjoyed it. In particular, I thought the Inland Empire skill was pretty awesome. I can't imagine what the game would be like without the ability to talk to inanimate objects.

This is super impressive! It's a cool POC, although it is already clear that it would be feasible for Apple to put M.2 slots in Macbooks if they wanted to.

I wonder how much it would cost to have someone replace the BGA NAND chips in my Macbook. Apple charges $6-800 for a 2TB upgrade for a Macbook (depending on whether it's a 250 or 500GB drive originally). Someone would have to be able to do it for like $2-300 for it to be a feasible upgrade, especially considering that my warranty would be void. I assume there are people overseas who could do it cheaply. I assume it would be fairly quick for someone who knows what they are doing.

AI adoption can be increasing even if progress of the base technology has slowed down. LLMs as a technology are very new, and there are doubtless tons of interesting uses we have yet to discover.

Reading this, I do get the impression that the Partially Meets Expectation was given to get more work out of this guy. It's the worst kind of manipulation - spinning something that was an unqualified success into a "failure." Especially because the boss clearly already had an internal narrative, and it sounds like they cherry-picked feedback from coworkers to support that narrative.

Having had something somewhat similar happen in the past, it seems like this is common at high-growth tech companies. Everyone pretends to be your friend, and there are definitely some genuine people, but getting ahead is clearly number 1.

New iMac with M4 2 years ago

I'm surprised they are still shipping these with 256GB of storage base. I had a Macbook with a ~500GB SSD in 2012 (I installed it), and a 500GB spinning disk in like 2008 (also user installed).

A 500GB SSD can be had for <$50 these days, and a 1TB for <$100. Still plenty of profit for Apple, even if they bump up the base storage to 512GB and make 1TB a $200 upgrade...

The specialization did a good job of explaining all of the basic concepts of RL in a fairly understandable way. The instructors don't assume a huge amount of prior knowledge, and make it pretty accessible. They split reasonably between theory and applications. I would say that you need some background in math and ML.

The courses do build upon each other. You could do just the first course and get a good overview of RL without diving into the details, but I don't think you could start midway through the specialization.

I would also suggest looking at the Hugging Face Deep Reinforcement Learning course. That one is very different (focused more on application than diving deep into the theory), but it's taught by a non-academic and really tries to explain the concepts in a way that is approachable to most programmers.

I did the Reinforcement learning specialization on Coursera (https://www.coursera.org/specializations/reinforcement-learn...), which used this book. The specialization was great, but I would say that I had a lot of trouble following this book. I would find that there was a concept I didn't quite get, and then other things would build on top of that concept. I ended up feeling like I didn't quite grasp everything, even though I read most of the chapters more than once.

I do feel like there are a lot of things that aren't fully explained in this book, and maybe it is expected that the reader has some prior knowledge that I didn't have. For example, they never really explain the basic notation for backup diagrams. They just show one and mention that they are a thing. The mathematical notation they use also isn't really explained - they just start showing formulas of increasing complexity. It's possible to look these things up elsewhere, but they probably could have spent just a little bit more time explaining some of the basics and made it easier to follow.

There are a bunch of comments about how this is the default experience now. It's only the default experience if you buy the ads-free version.

Since I don't want to pay extra to disable the ads, the trick I figured out is to buy the Kindle for Kids. It comes with a cover, no ads, and a 2 year warranty. You can turn off the kids stuff with one switch, and then it's just a normal Kindle.

If you buy it on Black Friday or one of their other sale days, you should be able to get it for the same price or less than the regular edition would be when not on sale.

The use case I'm working with right now is eCommerce. Landing pages need to be served as quickly as possible to score highly on various page speed SEO metrics. I have seen a number of server-side implementations that need to have most of the common landing pages cached to score better than client-side rendered pages.

Many of these page renders require calls out to third-party APIs, which is responsible for some of the slowness. There are definitely optimizations that can be performed (e.g. caching the results of the backend APIs). But it's easier for less experienced developers to just cache the whole page with a reasonable TTL.

Also agreed that you won't be able to cache much (or as much) if the user is logged in. Logged in pages matter less for SEO, so we haven't focused too much on it.

The first time you server a page with a SSR-framework, it will be slow, and subsequently it will be fast when it is served from cache.

What I have seen is that, depending on the number of pages and frequency that each page is accessed, it may be necessary to pre-cache some or all of the server-side rendered pages to get good performance.

In some ways, React on the server is worse than PHP. Server-side rendering of client-side code adds a ton of complexity, and can even introduce performance issues that must be worked around before the app can be launched (e.g. needing to pre-warm caches).

I'm sure there are valid uses for server-side React, but at the end of the day, using server-side languages such as PHP or Rails (or even rendering pages in Node.JS if you like JavaScript) can be much faster and simpler.

I say this having been involved in an app rewrite that used Remix. The project has taken 2 years (and still isn't quite out), and the engineering leaders who made the decision have agreed that we probably could have rendered most of the pages in Rails and used JavaScript for a limited number of things. With that said. I am hopeful that the project will work well when all is said and done, but there were a lot of tradeoffs associated with going to a server-side rendering framework.