160 karma · joined December 30, 2017
Socials: - github.com/rorybyrne - linkedin.com/in/rorytbyrne - twitter.com/ryrobyrne - rory@rory.bio
Interests: AI/ML, Biotech, Books, DevOps, Entrepreneurship, Open Source, Philosophy, Programming, Research, Science, UI/UX Design, Web Development, Science Policy, Neuroscience
---
The immediate benefit is that "what commit produced my last good result" is a local problem, so a local solution is faster and more convenient than a round-trip to an API.
But more broadly, storing data locally makes it easy for others to build tools on top of the data. E.g. a visualisation tool that plots hyperparameters vs metrics, by parsing the metadata from `logis` commits.
Also scientists often don't commit regularly, so there is an opportunity to hijack the commit log for their benefit. Every cycle of edit->run-experiment is an iteration of the scientific method, and capturing that automatically is arguably more valuable than sporadic commits with "stuff" as the message.
https://github.com/flywhl/cyantic
---
Example:
If you write a blueprint like
@blueprint(Tensor)
class NormalTensor(Blueprint[Tensor]):
mean: float
std: float
size: tuple[int, ...]
def build(self) -> Tensor:
return torch.normal(self.mean, self.std, size=self.size)
and a data class like class MyModel(CyanticModel):
some_tensor: Tensor
you can construct MyModel using mean and std instead of a Tensor: some_yaml = """common:
size: [3, 5]
some_tensor:
mean: 0.0
std: 0.1
size: @value:common.size
"""
my_model = MyModel.model_validate(yaml.safe_load(some_yaml))
You can also pre-process the data using `@hook` references, and there's an API for defining custom hooks.There's good test coverage and I think the library is ready for use, but would appreciate issues if you come across any bugs.
Thanks for reading
Also: https://web.stanford.edu/class/ee384m/Handouts/HowtoReadPape...
This is your own fault for going to EDM/house/trap parties. Go to better parties, then you'll find better music.
Not everything is a conspiracy.
It's especially annoying when I click the link to Y and it just says "This repository contains the source code for Y".
An average man ate up to 60 potatoes per day.
https://github.com/synek/git-plan
One feature I wanted to add was for it to parse your source code for comments with a specific format (e.g. `# git-plan feat xyz` or `# git-plan fix xyz`) and then stitch all the hunks together into commits for you. So all you'd have to do is comment your code and then run `git plan commit` and it would generate commits for you to confirm with y/n.
I built a prototype of that here:
https://github.com/synek/codeline
I haven't worked these for a while unfortunately :(
It's even earlier in development than git-plan, but the `commit -m "some message"` command works.