Live data from Hacker News

Tinygrad

github.com

41–50 of 159 posts

Re: Tinygrad

#41
post #12

Earlier quoted context omitted.

> What if they want to add a new feature that takes another ~1000 LoC? They don't. The LoC limit exists as much to avoid scope creep and maintain focus as it is about anything else.

It trades off utility for managing scope creep. Keeping this code base tiny necessarily means that anything that uses it would need to write more code. If the point is a demonstration instead of a usable library, then that is good because it is much easier to follow without excess complexity.

Necessarily is a strong word; there are assuredly many users of this tool who find it sufficient in its scope as it is, based on the project activity. If a user needs significant feature additions they can write them as a separate tool that interacts with this one.

Re: Tinygrad

#42
post #37

Earlier quoted context omitted.

It's how you get commits like these, though https://github.com/geohot/tinygrad/commit/050636bcb1068beff6... Subject: here's two extra lines of precious code (#307) diff --git a/tinygrad/__init__.py b/tinygrad/__init__.py index 0deab3e9..31ac75d5 100644 --- a/tinygrad/__init__.py +++ b/tinygrad/__init__.py @@ -1,3 +1 @@ -import tinygrad.optim -import tinygrad.tensor -import tinygrad.nn +from tinygrad import optim, ten…

This is why the good lord gave us: https://github.com/psf/black Import line is actually improved with this commit. LGTM, ship it. We now return to your regularly scheduled bikeshedding.

You're saving yourself from one kind of golfing, but not all of them.

Additionally, I feel like installing an additional tool is kind of against the spirit of 1kLOC simplicity.

Re: Tinygrad

#43
post #23
post #22

Earlier quoted context omitted.

simplicity is a virtue. the project goal apparently isn't to have a lot of features, it's to do the core thing in the simplest way possible.

And if someone does some code golf to stay under the 1000 line limit rather than go to 1050 lines that’s an improvement?

no that's another bloated ml library with code compression.

i suspect a part of the motivation for this library is learning and teaching.

and maybe a little flexing on overcomplicated autograd libraries.

Re: Tinygrad

#44
post #14

I like this guy mostly for preserving a hacker-ish culture in the atmosphere and for just being a real human being in public. Too often do I feel like I'm just interacting with interfaces to corporations or people who self censor themselves so much they barely feel human. I'm not sure this library matters much to me but I maintain positive perspective on this guy for these reasons.

Having gone to college and knowing this guy personally from then, you would have a much different opinion... Maybe he has grown up, but back then... yeeesh

Who cares if he’s a nice guy?

Re: Tinygrad

#45
post #2

>tinygrad will always be below 1000 lines. If it isn't, we will revert commits until tinygrad becomes smaller. Love this ethos so much. Wish more projects would follow suit.

Completely disagree - limiting lines of code as an ethos makes as much sense as using lines of code written as a business metric. What if they want to add a new feature that takes another ~1000 LoC? Can they just write it as a separate library and include it as a dependency? IMO trying to minimize LoC creates a perverse incentive to split up your package when it might not need it (in the same way maximizing LoC creat…

[deleted]

Re: Tinygrad

#46
post #2

>tinygrad will always be below 1000 lines. If it isn't, we will revert commits until tinygrad becomes smaller. Love this ethos so much. Wish more projects would follow suit.

Completely disagree - limiting lines of code as an ethos makes as much sense as using lines of code written as a business metric. What if they want to add a new feature that takes another ~1000 LoC? Can they just write it as a separate library and include it as a dependency? IMO trying to minimize LoC creates a perverse incentive to split up your package when it might not need it (in the same way maximizing LoC creat…

This is a semi-educational project, so it makes sense to keep the number of lines small.

Re: Tinygrad

#47

Earlier quoted context omitted.

Having gone to college and knowing this guy personally from then, you would have a much different opinion... Maybe he has grown up, but back then... yeeesh

Who cares if he’s a nice guy?

If he's being held up as some shining beacon of the "hacker-ish culture" as the grandparent poster is doing, it would be nice if he weren't also a jerk.

Re: Tinygrad

#48
post #9

This is the guy that did some iOS jailbreaks, reverse engineered the PS3 and now runs a self driving car startup.

And the shady cheapETH business last year: https://oldreddit.com/r/cheapETH/comments/lkzkso/george_hotz...

fixed link:

https://old.reddit.com/r/cheapETH/comments/lkzkso/george_hot...

Re: Tinygrad

#49
post #38

Earlier quoted context omitted.

Having gone to college and knowing this guy personally from then, you would have a much different opinion... Maybe he has grown up, but back then... yeeesh

I mean, he's obviously not a normal guy. I don't know what you expect. From a recent profile: > Apart from a criminal streak, Hotz shares with Raskolnikov, Dostoyevsky’s antihero, a predilection for instrumental reason and an urge to test his own mettle, to know himself by knowing his limits. As a young adult Hotz allowed himself to become addicted to prescription opiates almost as an experience in self-mastery. “I d…

> not a normal guy

I assure you some people try themselves - and I do not see what is not "normal" about it. To experience, voluntary, then grow, is the norm.

Re: Tinygrad

#50
post #2

>tinygrad will always be below 1000 lines. If it isn't, we will revert commits until tinygrad becomes smaller. Love this ethos so much. Wish more projects would follow suit.

Completely disagree - limiting lines of code as an ethos makes as much sense as using lines of code written as a business metric. What if they want to add a new feature that takes another ~1000 LoC? Can they just write it as a separate library and include it as a dependency? IMO trying to minimize LoC creates a perverse incentive to split up your package when it might not need it (in the same way maximizing LoC creat…

It serves an important gatekeeping function by discouraging low-effort contributions.
Post reply on HN