Thanks for this answer Christian. Let us know if we can help this review.

2014-10-22 16:30 GMT-04:00 Christian Gruber <[email protected]>:

> Always happy to meet folks and share experiences.  As to whether we would
> consider merging Blender into Guice, that's an easy and a hard question to
> answer.  The simple answer is - we'll consider any great improvements.  But
> how it turns out is obviously a combination of API review, implementation
> review, licensing (no issues if it's Apache 2.0), performance implications
> in cases other than what the code was intended to solve (side effects),
> whether the chances change the scope of the Guice project in ways we
> wouldn't prefer, etc.
>
> That said, I don't know that it's necessary.  If it's a fork, you can,
> ultimately, release it to maven with a different artifact.  As long as you
> properly manage dependencies so no one is pulling in conflicting symbols,
> it's not an issue.  We have a few guice forks out there doing interesting
> things.
>
> But starting the conversation here is definitely a great place to start
> helping us see what you're trying to achieve.  Thanks!  We want to
> encourage folks to try new things, or re-try things in new ways, but I
> don't want to unrealistically imply any particular likelihood of
> incorporating it.  We'll just have to look at the details to figure that
> sort of question out.
>
> c.
>
> On Wed Oct 22 2014 at 12:20:33 PM Stéphane NICOLAS <
> [email protected]> wrote:
>
>> I will let Mike answer your question Christian, as it is more oriented to
>> his previous post.
>>
>> My personal point of view is that a lot of people already use RG, and for
>> this reason itself, its worth trying to update it and make it the best it
>> can.
>>
>> From a technological point of view, I really like RG as it way simpler to
>> use than Dagger. I am not super familiar with Dagger, though I really love
>> DI as it made me a better dev, but I really like how Guice is simple, and
>> well known also for Android devs from the Java world. I like the fact that
>> you add injections super easily, without having to define a module in the
>> most simple cases, no need to say when the module is being used, by who,
>> etc. I saw the video about Dagger 2 and chances are that this release will
>> make Dagger close to RG in terms of simplicity. But I must say that up to
>> now I have not been convinced by the Dagger tutorial and find it harder to
>> use.
>>
>> Also, when we started to work on Blender, I have been keeping wondering
>> if Guice was being discarded for the good reasons : namely speed and memory
>> consumption. With Blender we could already re-gain some ground on that
>> field, and I am pretty sure Guice could be even more optimized and deliver
>> super decent performance results. I have been a bit sad to see that Google
>> itself discourages using Guice on Android.
>>
>> Though, I agree that a lot of advanced features of Guice are too costly
>> for Android, like the TypeLitteral stuff. But still, in that case, it could
>> be enough for me to discourage people to use them on Android.
>>
>> So, to sum yes, I found it really both interesting and worth it to make
>> Guice better so that we can use it on Android.
>>
>> Do you guys consider merging Blender into Guice ?
>> It could be coded better, but we tried to minimize the changes so that
>> you can more easily see the changes from master branch.
>>
>> Stéphane
>> BTW, I am going to present Blender and RG 3 at AndevCon San Francisco, it
>> would be glad to meet you or Sam there.
>>
>>
>>
>>
>> 2014-10-22 12:38 GMT-04:00 Christian Gruber <[email protected]>:
>>
>> Can you recommend what features of Guice you find you want that Dagger
>>> does not offer, and how these relate?  The Dagger and Guice folks are in
>>> pretty regular discussion and are related projects, and it would be nice to
>>> know what we're missing.  Absolutely Guice is more powerful and flexible
>>> across many dimensions - a deliberate decision to constrain APIs in order
>>> to encourage certain patterns, especially in Dagger 2.
>>>
>>> Google has some experience (with some good results) simulating the guice
>>> API in a compile-time annotation processor, though it still ended up being
>>> a sub-set of the GUICE total capability.  I'm interested to hear of your
>>> experiences. I will say, I'm really glad people are experimenting with
>>> different approaches.
>>>
>>> Also, I should point out that we do have a validation annotation
>>> processor for Guice that we need to roll-out to help with earlier error
>>> validation, though that doesn't address performance constraints.  It's been
>>> sitting for a bit, owing to prioritization, but I think that we should get
>>> it in shape and into Guice soon. (cc:ing colin about that)
>>>
>>> Christian.
>>>
>>> On Tue Oct 21 2014 at 2:18:15 PM Michael Burton <[email protected]>
>>> wrote:
>>>
>>>> We are aware of Dagger, but feel that Guice is more powerful and
>>>> flexible.  Which is why we are investing time in making Guice more
>>>> performant for our use-case.  We hope to make additional contributions in
>>>> the future to further close that gap.
>>>>
>>>>
>>>>
>>>>
>>>> On Tuesday, October 21, 2014 2:14:22 PM UTC-7, Stéphane NICOLAS wrote:
>>>>>
>>>>> No, we didn't compare them yet.
>>>>>
>>>>> For sure, RG + RoboBlender decrease the amount of processing needed to
>>>>> compute injection points, but still a good part of it is done at runtime.
>>>>>
>>>>> Nevertheless, we think it makes a good compromise in terms of
>>>>> simplicity and performance to use Guice + Blender on Android.
>>>>>
>>>>> S.
>>>>>
>>>>> On Tuesday, October 21, 2014 5:08:27 PM UTC-4, Sam Berlin wrote:
>>>>>>
>>>>>> This is interesting.  Have you compared the results to Dagger
>>>>>> (Dagger1 or Dagger2)?  Dagger is explicitly built with Android in mind, 
>>>>>> and
>>>>>> shifts the processing to compile time.
>>>>>>
>>>>>> sam
>>>>>>
>>>>>> On Tue, Oct 21, 2014 at 5:04 PM, Stéphane NICOLAS <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hello all,
>>>>>>>
>>>>>>> Mike Burton (the author of RoboGuice
>>>>>>> <https://github.com/roboguice/roboguice>, a version of Guice adapted
>>>>>>> to Android) and I have been working on a new annotation processor for
>>>>>>> Guice(named Blender).
>>>>>>> We have been working hard on this and, in RoboGuice, we gain from 30
>>>>>>> to 70% gain in speed and around 30% gain in memory footprint for our 
>>>>>>> apps.
>>>>>>>
>>>>>>> *We would like to submit the idea of Blender to the community
>>>>>>> of Guice devs in order to have your feedback on this, and as we hope
>>>>>>> thatBlender can become part of the official Guice.*
>>>>>>>
>>>>>>> Here are some *slides* to explain why and how we did it :
>>>>>>> https://speakerdeck.com/stephanenicolas/blender-boosting-guice-with-
>>>>>>> annotation-processing
>>>>>>>
>>>>>>> We have currently *forked Guice* and tried to make something close
>>>>>>> to a *PR* for it :
>>>>>>> https://github.com/stephanenicolas/google-guice/tree/PR-blender
>>>>>>> (Please ask us where to get the latest version, we try to stick on
>>>>>>> guice 4 changes)
>>>>>>>
>>>>>>> We are very excited to submit Blender, and we are very open to
>>>>>>> modify our implementation to make it fit in Guice and we are eager
>>>>>>> to get feedback on it.
>>>>>>>
>>>>>>> Thanks in advance,
>>>>>>>  Stéphane
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "google-guice" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to [email protected].
>>>>>>> To post to this group, send email to [email protected].
>>>>>>> Visit this group at http://groups.google.com/group/google-guice.
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/google-guice/9cd1683f-
>>>>>>> 0545-4687-b824-0a0cfd7a9f31%40googlegroups.com
>>>>>>> <https://groups.google.com/d/msgid/google-guice/9cd1683f-0545-4687-b824-0a0cfd7a9f31%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "google-guice" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at http://groups.google.com/group/google-guice.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/google-guice/67524038-b76f-4979-9bf9-27b1a04c3ce9%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/google-guice/67524038-b76f-4979-9bf9-27b1a04c3ce9%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-guice.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-guice/CALo37o7xviVzjB7JvgfthuMUiACdwqyeCu98zUKRB%2B1L8S%2BudQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to