Live data from Hacker News

Keyframes: Delivering scalable, high-quality animations to mobile clients

code.facebook.com

141–150 of 153 posts

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#141

Correct me if I'm wrong. It sounds like Keyframes is like "Flash runtime", the differences are you author your animation in After Effects, and the output is JSON (instead of SWF).

Yes, that was also my first thought. Keyframes animations were pretty much one of the earliest features of Flash. Used those nearly 15 years ago. However Flash was/is not limited to that, since it's also a completely programmable. Since Adobe moved quite some effort away from Flash and towards HTML I'm pretty sure that they would now also support exporting keyframe animations from one of their standard tools into a n…

It would be great to finally get back the true programmable animations that we had with Flash so many years ago. It took a while, but things to be coming full circle--for the better.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#142
post #31

Earlier quoted context omitted.

It's been a while since I've seen that episode, but ... wasn't that _the_ product in SV? This represents a small bit of UX that may be compelling enough to keep users engaged in new ways on their primary product (a relatively large social media site, ftr).

Yes. It's an analogy. The purpose of an analog is not to be exactly identical, otherwise it would be called an equality .

I'm sorry, it doesn't seem remotely comparable. Huge, complicated products are often made of seemingly inconsequential pieces. That SV piece was about an entire product made of an inconsequential piece of tech.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#143
post #139
post #27

Earlier quoted context omitted.

Why does the software license [1] include the following clause: > provided Your Software does not consist solely of the Software Why didn't you guys choose MIT or BSD? It feels like the custom Facebook license is close to the intent of these, but it has that mysterious gotcha. In any case, thanks for the software! It looks really slick, and I definitely have a use case for using it to replace the sprite sheet I used…

We've fixed the license for the project and merged it in: https://github.com/facebookincubator/Keyframes/pull/32

And how about https://github.com/facebook/transform/blob/master/LICENSE?

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#144

Earlier quoted context omitted.

If the folks who uploaded it can't grant that right, github's TOS does not actually suddenly grant that right. It just makes it a TOS violation.

Interesting, thanks for the actual-lawyer perspective! So is it that ToSes are less legally binding than copyright law? Or is there special meaning behind " can't grant that right"? Seems like a clear abuse of GitHub's goodwill towards real open-source projects, though. Luckily, it looks like they're going to change the license: https://github.com/facebookincubator/Keyframes/issues/24

They aren't less legally binding, necessarily, it's a question of "what is the end result".

The TL;DR is: You can't grant more rights than you have or can sublicense, no matter what the TOS does.

The same is true of most property. You can't gain an interest greater than the one the person who gave it to you had.

Otherwise, you'd be able to create greater title out of thin air (IE a guy with a life interest can't grant you a fee simple)

Imagine instead github's TOS said "by uploading, you grant the right to use the software under the BSD license". Bob, who has no rights at all, uploads your commercial software. Is it suddenly BSD licensed? No, because Bob didn't have the right to grant "the right to use the software under the BSD license". Even if Github made Bob sign the contract with his blood, it doesn't give away any rights Bob doesn't own.

Here's the truth table version. Note: We assume the validity and bindingness of the TOS, which would certainly be a serious issue in any litigation.

A has necessary rights to grant right to fork. A uploads thing to github with license that prevents forks.

end result -> You probably have right to fork.

A has does not have necessary rights to grant right to fork. A uploads thing to github with license that prevents forks.

end result -> You probably do not have right to fork. Any TOS violation is a separate contractual issue.

A has necessary rights to grant right to fork. A uploads thing to github with license that is silent on forks.

end result -> You probably have right to fork.

A does not have necessary rights to grant right to fork. A uploads thing to github with license that is silent on forks.

end result -> gray area. You probably do not have right to fork. You may or may not be able to argue an implicit license.

Note that this gets even more complex if A is a member of a corporation, as you have actual and apparent authority issues.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#145

Earlier quoted context omitted.

Hello all, I'm on the open source team at Facebook. We're about to fix the license file for the project so stay tuned. - Thanks

This is a huge overpromise. Why not say something like "We're asking the legal team to consider whether we can still publish our projects on GitHub"

I'm not sure why it's a huge overpromise. It's the same as when i fix screwups on behalf of Google. You are assuming a lot about the authority structures of the company that may or may not be true :)

I generally would assume that if someone makes that comment, and you can verify that they are who they say they are, that they will in fact, be able to accomplish what they say.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#146
post #84

Earlier quoted context omitted.

While a binary format would be better over the wire, once it's put into memory the format really doesn't matter. In fact I would argue that the decision to use JSON versus XML versus a binary format is entirely immaterial as it'll get cached once and likely never downloaded again (essentially). At least as far as Facebook's usage is concerned (they load these 6 once and never again). Also I think you have to pick som…

As someone who has to deal with mobile perf issues, JSON serialization/deserialization can take a lot more of a perf budget than you realize. A flatbuffer version would definitely be faster hands down. With gzip sizing is about the same, but processing speed wise it is not.

Also if you gzip the binary version and the json version, the gzipped binary is still going to be much smaller.

Same with csv data, for download size it really pays off to preprocess and pack into arrays of binary structs before compression.

This is part of a bigger class of effects in preprocessing data before compression, it is often surprisingly effective. For example delta coding or columnar format (SoA vs AoS) can yield big improvements depending on data.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#147
post #53

Earlier quoted context omitted.

They had better start paying their lawyers overtime. You can't do a PR without forking and people fork on Github for a multitude of reasons (I often fork into a group as a lazy form of bookmarking or collecting projects). Hell. I just clicked the 'fork' button. Where's my cease and desist?

Just wondering: for lazy repo bookmarking, why fork rather than star?

For me, forks are like super stars. I have an order of magnitude more stars than forks.

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#148

I've made the exact same thing, basically. A tool to convert AE animations to iOS. Has some other features, but it's also AE -> JSON -> code: http://www.squall.no Cool to see what the folks at FB came up with!

very well polished... will check it out

Re: Keyframes: Delivering scalable, high-quality animations to mobile clients

#149

Earlier quoted context omitted.

Yes, that was also my first thought. Keyframes animations were pretty much one of the earliest features of Flash. Used those nearly 15 years ago. However Flash was/is not limited to that, since it's also a completely programmable. Since Adobe moved quite some effort away from Flash and towards HTML I'm pretty sure that they would now also support exporting keyframe animations from one of their standard tools into a n…

It would be great to finally get back the true programmable animations that we had with Flash so many years ago. It took a while, but things to be coming full circle--for the better.

It's bascially the same as for UI components. Adobe had the great MXML based Flex framework back then.

The web world only slowly catched up, and I think it took until the current gen of frameworks (angular2, etc.) to be at the same level. However the good thing (as you also pointed out) is that the new variants are based on standards.

Post reply on HN