Hacker Newsnew | past | comments | ask | show | jobs | submit | kjmr's commentslogin

How can you write (or have AI write) such an article without also sharing the code? Now it’s just a pretty useless brag, “look what I built”.

If the AI wrote the article, and with no code, how do we know this even happened?

  Location: The Netherlands (UTC+1)
  Remote: Yes (I've been working fully remote for 10 years)
  Willing to relocate: Not yet, but Scandinavia, Austria or Switzerland in a year or so is on the table
  Technologies: Python, TypeScript, JavaScript, Swift, Objective-C
  Résumé/CV: https://www.loopwerk.io/about/KevinRenskers.pdf
  Email: Please see my CV
I’m a product & engineering lead with 25 years of experience taking software from a vague idea to a product people actually enjoy using. I thrive at the intersection of product and engineering: helping decide what’s worth building, shaping the UX together with design, guiding the architecture, mentoring the team, and staying hands-on in the code.

I care deeply about user experience, clean architecture, code quality, and long-term maintainability. I value pragmatic solutions that balance clarity and performance, and I’m comfortable moving between product decisions, design, and hands-on engineering in the same day.

The tools matter less than the judgment. I happen to work most in Python, TypeScript, and Swift, but what I really bring is the ability to make good technical and product decisions across the whole stack.

I've been online since 1994, building websites since 2000 and iOS apps since 2010. Since 2016 I've worked remotely for international clients including CBS, Last.fm, Sentry, WeTransfer, Unilever, and Emmy and Oscar winner Sound Radix. I also designed, built, and run my own SaaS, Critical Notes, from pricing and onboarding to architecture and support.

What I bring:

  - Product ownership: prioritization, UX, and knowing what's actually worth building
  - Architecture: system and API design, and modernizing legacy codebases
  - Hands-on engineering in Python, TypeScript, and Swift
  - Mentoring and technical leadership
My open source work, portfolio, and CV are at www.loopwerk.io. I'm open to freelancing and employment.

404 page not found


That makes sense, because I really do find that as a conversation goes on and the context grows, the agent simply starts to forget about all the rules.


100%. Finding the right hook is important though, especially because CC gives you so many. For my setup I use multiple coding agents and so I use frontmatter.news to compare hooks across agents so I get the same behaviour.

Author here. It wasn't a recommendation, it was just the only way I knew how to. "uv pip list --outdated" indeed has much better output, thanks!

Though this makes me wonder why are there 2 ways of viewing outdated packages, with wildly different output? The UX is mess...


Cause the "uv pip" entry point is designed to be backwards compatible with regular pip: https://docs.astral.sh/uv/pip/


“Removing upper version bounds is important when publishing libraries.”

That makes total sense! The article however was written as someone creating websites, not libraries. And when I consume dependencies in my web project, I do want those upper bounds to prevent breaking changes (assuming the dependencies respect SemVer of course).

Thanks for pointing out that config, I’ve updated the article.


`uv.lock` pins exact versions (and hashes) of your dependencies.


Yes, and he is discussing how `uv lock` updates the contents of that file


Once you know what the ^ means (I always think of “roof”), I do think that one character is easier to read than >=,<


What you’re saying makes sense for library authors. But when I make a website and I depend on a bunch of packages, that’s where I want to be safe when upgrading and I want that upper bound. The —-bound flag really helps, but is one more thing to type and remember.

Maybe when uv knows the project isn’t a library it could default to upper bounds?


Am I using it differently than everyone else? I don't want an upper bound, I want a specific version. So always ==, never >=, and upgrading a dependency is an explicit action. I don't want to suddenly have a never version.


That’s how the ‘sync’ flow works (recreating venv, through the lockfile), here discussing specifically updates.


The lack of an upper bound in pyproject.toml isn’t the real problem. The real problem is that `uv lock —-upgrade` does a wholesale upgrade of everything without an upper bound. If there was a way to upgrade packages without updating the major version, this command would be a lot safer to run.


I'm not in front of my terminal, but I'm almost certain there is a way to do this. And if not, it would not be hard to add.

I can't really take the article fully seriously when they are like "uv cant do this. Well actually it can but you gotta use an extra flag." It reads rather PEBKAC.


I think `uv lock -P <package-name>` to only update a particular package (and transitive deps of course).


Author of the article here. Sorry it comes across as “clickbait style” when actually it’s simply Dutch bluntness and honesty

poetry update also updates the lockfile. I really think the way the uv cli is organized makes it quite annoying to work with. It’s designed for correctness, for machines, not for user-friendliness.


Not having used uv but being on the Cargo team for Rust, I wish `cargo update` was `cargo lock update` because it is making our life more difficult to add a version requirement update command/mode inside of Cargo. The effort has been stalled for years.

- Our compatibility guarantees mean we can't fundamentally change `cargo update`

- Using the third-party package name of `cargo upgrade` would be confusing in the distinction between the two

- We have to be very careful adding the mode to the existing command


> the effort has been stalled for years

All because of some cargo-culted command!


Could `update` be deprecated in favor of an alias like`lock-update`?


It's not clickbait style.


Isn't designing for machines "the way" these days?

(Ducks...)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: