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

If you want to get to a higher level compiler, prompt fondling will not suffice; you need to master formal specification. Then machine learning algorithms can do the program synthesis to implement the spec. But just talking out your vague software requirements with a chatbot is not analogous to programming.

Also, like others said, even once you have your formal spec, C is a particularly bad choice (unless you want to specify quite a bit more). You want the program implemented in a language with as many safety constraints on it as possible, not one where you have to mentally track memory.


> In June 2025, WBD announced plans to separate its Streaming & Studios and Global Networks divisions into two separate publicly traded companies. This separation is now expected to be completed in Q3 2026, prior to the closing of this transaction. The newly separated publicly traded company holding the Global Networks division, Discovery Global, will include premier entertainment, sports and news television brands around the world including CNN, TNT Sports in the U.S., and Discovery, free-to-air channels across Europe, and digital products such as Discovery+ and Bleacher Report.

So no, I don't think this gets in the way of Ellison taking over the rest of TV news; if anything it seems like it smooths the path.


First there was PyPI and pypy, now there is PiPy


Hopefully Pipi (German for pee) won't come anytime soon. But enough bad jokes for today.


PyPi, right?

Can't wait for PyPyPi.


Yeah post 3.10 you don't need Union, Optional, List, Duct, Tuple. Any still necessary when you want to be permissive, and I'm still hoping for an Unknown someday...


> hoping for an Unknown someday

Wouldn't that just be `object` in Python?


No, because the type checker should prevent you interacting with `Unknown` until you tie it down, but `object` is technically a valid type


Exactly, I want it to complain if I try to manipulate the fields/methods of an unknown object.


By default, Mypy warns you if try to reassign a method of any object[1]. It will also warn you when you access non-existent attributes[2]. So if you have a variable typed as `object`, the only attributes you can manipulate without the type checker nagging are `__doc__`, `__dict__`, `__module__`, and `__annotations__`. Since there are very few reasons to ever reassign or manipulate these attributes on an instance, I think the `object` type gets us pretty darn close to an "unknown" type in practice.

There was a proposal[3] for an unknown type in the Python typing repository, but it was rejected on the grounds that `object` is close enough.

[1]: https://mypy.readthedocs.io/en/stable/error_code_list.html#c...

[2]: https://mypy.readthedocs.io/en/stable/error_code_list.html#c...

[3]: https://github.com/python/typing/issues/1835


Thanks, I didn't have this context. I'll start using this!


In my opinion the sheer volume of "close enough" choices is what ruins Python's type system.

It's "close enough" to a usable type system that it's worth using, but it's full of so many edge cases and so many situations where they decided that it would be easier if they forced programmers to try and make reality match the type system rather than the type system match reality.

No wonder a lot of people in the comments here say they don't use it...


I think they can get away with the "close enough" solutions since Python's type annotations don't have any runtime contracts by default. Might be off-putting to people who are more familiar with statically typed languages (though not always, in my experience).


I would buy that argument more if Typescript didn't exist.

You can live with the "close enough" if you're writing a brand new greenfield project and you prevent anyone from ever checking in code mypy doesn't like and also don't use any libraries that mypy doesn't like (and also don't make web requests to APIs that return dictionary data that mypy doesn't like)

Retrofitting an existing project however is like eating glass.


That's what I use it for. If you type something as `object`, static type checkers can just narrow down the exact typing later.


> List, Duct, Tuple...

I'm aware this is just a typo but since a lot of the Python I write is in connection with Airflow I'm now in search of a way to embrace duct typing.


I am glad they improved this but I still like Optional[], and to a lesser extent, Union[]. It's much more readable to have Optional[str] compared to str | None.


I disagree with `Optional`. It can cause confusion in function signatures, since an argument typed as "optional" might still be required if there is no default value. Basically I think the name is bad, it should be `Nullable` or something.

I believe Python's own documentation also recommends the shorthand syntax over `Union`. Linters like Pylint and Ruff also warn if you use the imported `Union`/`Optional` types. The latter even auto-fixes it for you by switching to the shorthand syntax.


Option is a pretty common name for this, as is Maybe.[^1] Either way I think that ship is sailed in Python.

[^1]: https://en.wikipedia.org/wiki/Option_type


How does oklch compare to CIELCh(uv)? I've been using that seemingly similar system to pick uniform colors.


Here's the original post explaining the color space. The ideas are very similar, OKLAB used a different white point

https://bottosson.github.io/posts/oklab/#what-about-existing...


AI more like crypto every day, including victim-blaming "you're doing it wrong" hand waves whenever some fresh hell is documented.


Just one more layer of LLM watching the other LLM will fix it, the KGB of accountability.


Would you like to count the number of spaces that various items in your manifests are indented and then pass that as an argument to a structure-unaware text file templating engine? Would you like to discover your inevitable yaml file templating errors after submitting those manifests to the cluster? Then yes, you are really missing out!


A couple of years ago I was using https://kapitan.dev/ which I found really good at the time when using jsonnet files to generate the configs. I haven't used it for some time though.


I really, really, wish we could move away from yaml for tools like this.


If YAML is a foot-gun, templated YAML is a face-cannon.


I never understood why people didn’t serialize from JSON if they run a transformation step on the YAML anyway. Read JSON, alter in your favorite language, dump YAML as the last step, deploy. Instant prevention of a lot of sadness.

Yet somehow, all we have is YAML templating?


Kubectl will handle JSON without converting it to YAML. So if you are doing this, then just do kubectl apply -f deployment.json


So why doesn't helm output to json instead of yaml, and avoid all the problems with significant whitespace?


crickets


CDK8s works really well. I'm sad it hasn't really taken off.

https://cdk8s.io/


For one thing, inferred types may feel easy to use when implemented (well) but they are not easy to implement.


This advice is missing something crucial which is how to discover new creators sans feeds. Not saying it's impossible, but it's something they excel at and they've extinguished a lot of the old ways.


Great point. I'm personally trying linkblogging and following other link blogs inspired by Simon Willison [1].

The more people that do this the more we can start rebuilding networks of people we trust and still retain control over the diversity of our sources.

1: https://simonwillison.net/2024/Dec/22/link-blog/


A few ways I do this

* In Bluesky I read retweets and comments to find new people to follow.

* I send content to friends and they send some back. I’ve found creators this way.

* Search for interesting topics, see who is generating content on those topics. Follow/subscribe if you’d like to see more.


Yeah this is super key. I think it's still possible to highlight new creators without algos, one way is to just involve more (only) humans in the process. This is what we're doing at Twigg, effectively letting users decide what gets highlighted and elevated to the rest of our members. - Too early to say how it'll play out, but it seems to be working well soo far...


What's the contribution model moving forward? I see the repository is still active, but is it not still under the Eleven's control? How will it evolve when they stop accepting pull requests?


It won’t be under Elevens control, part of the deal I believe. They’re allowed to remain opensource. Not folded into ElevenLabs.

As for contribution model, it’s still something I’m trying to figure out. For the moment, it was just trying to get a self host build ready and working.

But I have admin rights to the repo, and am not working for ElevenLabs, nor officially Omnivore. I was just a contributor before.


That's good to know, thanks.


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

Search: