I missed a fifth item in my list of things we need:
5. We need tooling to pull in external swcs (externs and cross-copiling ones) 
when compiling to Javascript.

(I think we also need a naming convention for the two types of swcs. 
"definition swcs" and "code swcs”?)

On Apr 20, 2016, at 1:37 AM, Harbs <harbs.li...@gmail.com> wrote:

> Alex and Josh bring up good points.
> 
> I’m thinking that I should step back and figure out what I was trying to 
> accomplish by suggesting that we accept these APIs.
> 
> In fact, I think it’s time we figure out exactly what FlexJS actually is.
> 
> The motivation to accept the code into FlexJS was really to empower users to 
> have access to great APIs and capabilities. However to say that any cool 
> functionality should become part of the core product probably does not make 
> sense. Case in point: I’m currently working on FlexJS support for CEP panels 
> in Adobe extensions. I think it’s great functionality, but I don’t believe it 
> belongs in the Flex repo.
> 
> To address the question of exactly what belongs in the FlexJS repo, I think 
> we need to address exactly what is the identity of FlexJS actually is. 
> Different folks would probably have different definitions, but here’s what I 
> think:
> 
> 1. It’s the compiler which turns MXML and ActionScript into Javascript.
> 2. It’s the paradigm of composing apps using MXML.
> 3. It’s a set (or sets) of components which is built with this paradigm in 
> mind. (similar to mx and spark components in the classic Flex framework.)
> 4. It’s the infrastructure which enables tools to take advantage of this.
> 
> I think that’s pretty much it.
> 
> Based on this definition, drawing APIs are probably not “Flex core”. In fact, 
> some of the other packages which already exist are probably also not Flex 
> core (such as GoogleMaps).
> 
> These are all useful things, but trying to include all useful things will 
> cause a lot of bloat and actually probably stunt community growth. Until our 
> focus was how to grow the Apache Flex community. I think we’ve come to a bit 
> of a cross-roads here, and we need to figure out how to help grow the 
> community OUTSIDE Apache.
> 
> What would accepting these APIs accomplish? I think primarily three things:
> 1. Give the APis visibility.
> 2. Help promote others to work on them.
> 3. Make it easy for clients to use them.
> 
> These are generalized problems and I think we need to solve them in a 
> generalized way so the next person who comes up with some other awesome 
> classes will have these problems solved as well. If someone builds some cool 
> stuff around FlexJs, we should not need discussion to make them useful and 
> usable.
> 
> Here’s some ideas I came up with while thinking about this:
> 
> 1. We need a way to find tools and libraries that support FlexJS.
> 2. We need to help external libraries automate builds of swcs. I think it 
> would be really useful to publish some docs with a recommended workflow for 
> Github to do this.
> 3. We need some kind of central repository of FlexJS swcs outside Apache. 
> There should probably be two classes of swcs. Ones that are strictly externs, 
> and others which actually compile into Javascript code.
> 4. I think we need a system to create an automated build of Definitely Typed 
> definitions into FlexJS swcs into a centralized repo. I think  Github has 
> hooks you can use to trigger things when their repo changes.
> 
> If these four points are addressed, I think it’ll do a lot to build the 
> greater community without adding all kinds of peripherals into the core 
> FlexJS repo. (and much more effectively as well) It’s not necessary for 
> Apache Flex to address all these directly. If the community at large 
> addresses some of them, that’s also fine (or maybe even better).
> 
> Harbs
> 
> On Apr 19, 2016, at 6:39 PM, Josh Tynjala <joshtynj...@gmail.com> wrote:
> 
>> I've always thought that someone implementing the Flash classes is a good
>> idea, but that it makes the most sense as an external project. In other
>> words, not included with Apache FlexJS. There's nothing wrong with external
>> projects. In fact, they're a sign of a healthy community! We should be
>> encouraging them and promoting them.
>> 
>> I agree with Alex's points that including the Flash classes in FlexJS will
>> set expectations of compatibility that may not be desirable from our side.
>> It also keeps FlexJS bound to the legacy of Flash, instead of showing that
>> the project is evolving into something new and interesting.
>> 
>> - Josh
>> 
>> On Tue, Apr 19, 2016 at 8:05 AM, Alex Harui <aha...@adobe.com> wrote:
>> 
>>> 
>>> 
>>> On 4/19/16, 12:01 AM, "Harbs" <harbs.li...@gmail.com> wrote:
>>> 
>>>> webgl is not a very good name, because a lot of the code is actually
>>>> canvas rather than webgl.
>>> 
>>> OK.  I realized that Lizhi has been calling it SpriteFlexJS.  So that
>>> could be in the package name.
>>> 
>>> Actually this might be a good time to discuss names in terms of business
>>> models.  Lizhi, I want to make sure you are aware that whatever name we
>>> put on your code base will belong to Apache and you won't be able to sell
>>> software using that name.  This is a public mailing list, so feel free to
>>> not answer or write me directly, but an important point is this: I'm not
>>> sure how you plan to keep contributing to the SpriteFlexJS code, but if it
>>> involves selling the software what most people do is come up with two
>>> names, one for the for-profit software and one for the open source code
>>> base.  For example, the Apache Subversion project doesn't let other
>>> for-profit products be called Subversion, but they can use SVN.  Adobe
>>> PhoneGap is a for-profit product based on Apache Cordova.
>>> 
>>>> 
>>>> What might make more sense would be to keep all the flash packages as
>>>> experimental, and if we can identify robust piece of the package, we can
>>>> repurpose some of the code to be in separate packages.
>>> 
>>> Another option is that we don't bring in all of this code right away.
>>> Didn't this thread start based on interest in Lizhi's ByteArray?  Lizhi
>>> could donate that one file and we could use it under a different package
>>> name.
>>> 
>>>> 
>>>> I see value in keeping the flash packages as such, because it will likely
>>>> help spur more people who want complete “flash-like” APIs to do work on
>>>> it. As Lizhi points out, there are incomplete areas in his code.
>>>> 
>>>> As far as demand for Flash and Starling goes: I expect that folks who
>>>> want more support will have to help out in improving it. Again, I hope
>>>> this will help attract more people to work on it.
>>> 
>>> In short, I'm just wondering if the work on Flash and Starling is Flex.
>>> Should it have its own community?  FlexJS will hopefully have many
>>> customers and not all of their code should be in our code base.
>>> 
>>> -Alex
>>> 
>>> 
> 

Reply via email to