Getting started with twitter4j project

158 views
Skip to first unread message

Akash Nawani

unread,
Mar 18, 2012, 6:41:39 PM3/18/12
to gsoc-tw...@googlegroups.com
Hi Yusuke,

Thanks a lot for sharing your idea and creating this group to discuss.
I think I understand the idea pretty well. Basically we have to build a framework that will provide various kinds of Events and EventListener interfaces. So that client applications built on top of this framework can actually listen to the events by implementing the listeners.
Let us take the example of twitter timeline module. For simplicity, suppose we are going to build a framework that deals only with the user's timeline. This framework will keep track of the timeline and as soon as it finds that the timeline has been updated it will generate an event. The client application listening to this event will notify the user that your timeline has been updated. Such a framework would consist of the following classes and interfaces : 
  • TimelineUpdatedEvent - A class which will inherit from java.util.EventObject class. This is basically an event which will be triggered whenever the timeline gets updated.
  • TimelineUpdatedEventListener - An interface for the client listeners which will inherit from java.util.EventListener. This interface will declare a method called timelineUpdatedEventOccured( TimelineUpdatedEvent event). Client applications will define this method according to what exactly they have to do when the timeline gets updated.
  • Timeline  - A class which will make use of the Twitter REST, Search and Streaming APIs for the core computation (in this case, retrieving the user's timeline, caching, auth etc). This class will contain the following members:
    • eventListenerList class variable - A list of listeners that are listening for TimelineUpdatedEvent. When this event occurs all these listeners will be notified.
    • addListener(TimelineUpdatedEventListener l) method - To add more listeners.
    • fireEvent(TimelineUpdatedEvent e) method - This method will be called whenever some change in timeline is sensed by the framework. By calling it we will be notifying all the listeners that the timeline has been updated.

Client application build on top of this framework will consist of a class : 
  • TimelineApplication - A class which will implement TimelineUpdatedEventListener interface. It will define the method timelineUpdatedEventOccured( TimelineUpdatedEvent event). Hence whenever the Timeline class of the framework triggers the event this method will be executed on the client application.
This is how I think the framework should look like. Please let me know your feedback. Thanks. :)

Yusuke Yamamoto

unread,
Mar 19, 2012, 4:07:29 AM3/19/12
to gsoc-tw...@googlegroups.com
Hi,

Let's be less specific here.
The current timeframe is "Would-be student participants discuss application ideas with mentoring organizations."

What I want you guys to do now are:
- Introduce yourself!
- Play with Twitter4J and/or take a look at the JavaDoc/code to see what needs to be done with the framework
- Brainstorm the big picture

If you have any generic problem with Twitter4J, feel free to post questions to the Twitter4J list:

Thanks,
-- 
Yusuke Yamamoto
yus...@twitter.com
@yusuke

Akash Nawani

unread,
Mar 19, 2012, 5:36:02 PM3/19/12
to gsoc-tw...@googlegroups.com
Okay. I'll play around with the code and docs of twitter4j for now.

Akash Nawani

unread,
Mar 22, 2012, 2:32:54 AM3/22/12
to gsoc-tw...@googlegroups.com
Hi Yusuke,

I have sent a pull request that contains the fix of issue# TFJ-646. Can you please review it.

Abhijit Singh

unread,
Mar 27, 2012, 11:12:27 AM3/27/12
to GSoC Twitter4J
@Yusuke: I have gone through the discussions. I have a doubt. As this
project involves development of the framework, do we need to submit
any kind of "proposal"? If yes, then what kind of proposal can be
given for this?
Thanks

Akash Nawani

unread,
Mar 27, 2012, 11:40:27 AM3/27/12
to gsoc-tw...@googlegroups.com
Abhijit,

Please go through the FAQs of google summer of codes :  http://google-melange.appspot.com/gsoc/document/show/gsoc_program/google/gsoc2012/faqs 
You can find the proposal requirements for twitter projects here :  https://github.com/twitter/twitter.github.com/wiki/Google-Summer-of-Code-2012 

Alessandro Secco

unread,
Mar 27, 2012, 11:44:57 AM3/27/12
to GSoC Twitter4J
i think that one are project proposals (for mentors or such)...
I followed this template:
http://www.google-melange.com/gsoc/org/google/gsoc2012/twitter

On 27 Mar, 17:40, Akash Nawani <akash.naw...@gmail.com> wrote:
> Abhijit,
>
> Please go through the FAQs of google summer of codes :  http://google-melange.appspot.com/gsoc/document/show/gsoc_program/goo...
>
> You can find the proposal requirements for twitter projects here :  https://github.com/twitter/twitter.github.com/wiki/Google-Summer-of-C...

Akash Nawani

unread,
Mar 27, 2012, 11:50:16 AM3/27/12
to gsoc-tw...@googlegroups.com
Apart from project proposals general proposal requirements are listed on that page as well.

Yusuke Yamamoto

unread,
Mar 27, 2012, 1:32:30 PM3/27/12
to gsoc-tw...@googlegroups.com
Please consult "General Proposal Requirements" part of https://github.com/twitter/twitter.github.com/wiki/Google-Summer-of-Code-2012

You can just copy & paste the project idea of the framework, but in addition to that you may want to add:
- your skill set
- what kind of Java APIs are you familiar with (such as Swing, JavaFX, Web framework, Android etc.)
- pointer(s) to your past contribution to any open source project
- which part of the framework you want to contribute to (if any)
The framework can be #huge. If you want to focus on a certain part (such as caching, persistence, efficient timeline retrieval, Web/Desktop/Mobile specific feature) of the framework, please specify.

I'm thinking that the event-driven framework has a huge potential, but you can be creative to propose a project other than the framework such as transparent caching mechanism, easy-to-setup stub/mock.

Best,


--
Yusuke Yamamoto
yus...@twitter.com
@yusuke

Akash Nawani

unread,
Mar 27, 2012, 2:55:59 PM3/27/12
to gsoc-tw...@googlegroups.com
Hello Yusuke,

Have you thought of any library for the purpose of caching?
Message has been deleted

Abhijit Singh

unread,
Mar 28, 2012, 5:45:27 AM3/28/12
to gsoc-tw...@googlegroups.com
Thanks All

Akash Nawani

unread,
Mar 29, 2012, 4:09:05 AM3/29/12
to gsoc-tw...@googlegroups.com
Hi Yusuke,

I have submitted my proposal for Twitter4j. Can you please have a look at it and let me know your valuable feedback so that I can improve my application in case of errors/misunderstandings. Thanks for your time.


On Tuesday, 27 March 2012 23:02:30 UTC+5:30, Yusuke Yamamoto wrote:

Vinoth

unread,
Apr 4, 2012, 2:59:53 PM4/4/12
to GSoC Twitter4J
Hi Yusuke,

I'm a student at the University of Southampton pursuing my M.Sc as a
Web Technologist.
I have plenty experience in using twitter and twitter4j, adding
eventhandlers to twitter4j seems a interesting idea.
I would like to contribute to the same.

My recent work on could be found here,
http://blogs.ecs.soton.ac.uk/nettrax/

Vinoth

unread,
Apr 4, 2012, 3:04:14 PM4/4/12
to GSoC Twitter4J
I forgot to mention that I'm a good Java programmer with experience of
more than 5 yrs in java...work'd as a programmer in a op IT MNC
company. :)

On Mar 19, 9:07 am, Yusuke Yamamoto <yus...@twitter.com> wrote:
Reply all
Reply to author
Forward
0 new messages