Hi,
I want to be a T5 GSOC student because I want to contribute to the T5
community and I think that the GSOC programme can provide me with mentorship
(from a T5 commiter or high skilled developer) that will get me familiar
with the internals of the T5 web framework and IOC container.

I know that the T5 devs are really busy, but I think it wont be much of a
burden for the mentor to have me as a student because I have some background
with t5, and I’m available on IM and email 24/7 (no fullltime obligations -
just studies).

I'm a first year masters student from Macedonia and I have about 2.5 years
experience with t5. I'm pretty familiar with Tapestry IOC, I've done AOP and
meta-programming in t5 and I know jQuery (for some custom components).

Here are some of my thoughts about potential GSOC 2011 tasks. Please give me
some guidlines to discuss these or new ideas that would benefit the T5
community the most in order to get my proposal good and ready ASAP.

GSOC 2011 - Applicant Dragan Sahpaski
Tapestry ideas/proposals:

   1. Grid component enhacements:
      1. Sorting: Support url query parameters for sort keys (property ids
      in the BeanModel). Example without zones: If you have a List<Employe>
      and sort by employee.department you can get a URL like:
      /employeeslist?sort=department&order=asc.
      Example with zones: /employeeslist#sort=department&order=asc.
      The SPI behaviour can be generalized for zones but thats a different
      story all together.
      2. Pagination: better pager. Also page-number can go into the url.
      3. Better HibernateDataSource for the grid
      4. Changing column order and visibility and saving this in a db.
       2. Multi-upload component:
      1. based on http://valums.com/files/2010/file-uploader/demo.htm
      https://github.com/valums/file-uploader


   1. Persistence strategy for persisting @Persist-ed fields in the DB.
   Exporting and changing saved values between users. Example: This is usefull
   when you are building a personalized app and the user changes UI state that
   gets saved in the DB and the changes he did are there the next time he logs
   in.


   1. Asynchronous DB operations. This would be a use case where the DB
   operation is not causing changes visible to the user so the request does not
   need to wait for it. Example: Logging requests, the user is not aware of
   this and doues not have to wait the logged request to get commited.


   1. Asynchronous Ajax updates (like gmail). I have no idea how to do this
   ATM but its a very compelling UI feature.


   1. Right click menu: Comprehensive configuration options. Use it as a
   mixin, component etc. Have it configured by page, component etc.


   1. Better transaction support with Hibernate.
   2. Integrate Tapestry with some NoSQL database. I have small experience
   with CouchDB and MongoDB.


Cheers,
Dragan Sahpaski

Reply via email to