Mentors: Dan Roundhill, Isaac Keyet
Student: Anirudh S
I am a 20-year old third year B.Tech Computer Science and Engineering student of NIT Trichy from India (UTC +0530). I started programming from the age of 11 and I love participating in Programming contests. I solve programming problems at SPOJ, Topcoder and Codechef but have been recently spending more time on developing rather than programming. Am an open source evangelist and hosted Pengufest 2011 in my college for spreading awareness about contributing to open source projects. I am the President-elect of my college’s technical club, Spider, where I spend most of my time discussing, conceptualizing and developing Web and Mobile related software with other members. My hobbies include Vocal Carnatic music, Mirudangam, Flute and Chess.
The UI for existing features could be more user-friendly. e.g. a dashboard-kind of an interface. This would lead to quick blogging on the go and remove unnecessary steps while performing basic operations like posting a new post, pictures and videos. Removing the current tab-kind of an interface and bringing in a grid interface like the current Twitter and Facebook app. The UX would also have to be improved. This means large buttons, easy to browse-interface and smooth graphic flows too.
I have presented my ideas in a Problem-Solution basis so that it is easier to understand. The necessary XML files would have to be modified too.
1. Problem: The current UI in the form of tabs doesn’t allow for quick, easy posting or viewing. The current UI doesn’t offer enough eye candy.
Solution: Convert tabs into grid-like buttons for easy access. Basically, quicken frequent jobs like posting a new post, page, photo or video through a grid-style dashboard. With nice, large icons, this would look more pleasing to the eye. This is also the current format of many popular Android Apps like, Facebook, Twitter, Winamp and Evernote.
How: I have come up with a few mock-ups on what could be done.
Instead of calling tabView, gridView must be called after the Splash screen. gridView.java would be the new file that would act as the new grid-styled Dashboard.
To modify: wpAndroid.java, tabview.java
2. Problem: To access any feature, the User would have to return to the Dashboard either through a series of return presses, or click on a Dashboard button. This means that there are some unnecessary steps which can be avoided.
Solution: A quick-access dashboard. A pull-down (or pull-up) segment at the top (or bottom) can be provided. Pulling it down, would display the Dashboard Icons, thereby helping the user to access options quickly (like the ESPNCricinfo app).
How: Create a Custom Action Bar.
The mockup UI has been put up here.
3. Problem: The stats feature of the Android app is minimal and doesn’t provide many features while compared to the web based version.
Solution: Convert many static features into dynamic features e.g. Clicking on a statistic would take the user to a page with more details.
How: Convert existing graph to a bar graph similar to the web based version. Would have to work on the UI part in getStatsData function of viewStats.java.
To modify: viewStats.java
I am having my final exams during the final week of April and would be available from the first week of May.
May 03 – May 22 : Pre-GSoC work
Discuss on various UI options with mentor and other WordPress users and come up with as many mock-ups as possible, within this time frame.
May 23 – June 07 : Work on the conversion of dashboard interface from tabs to grids and confirm that it integrates with the existing features.
June 08 – June 17: Work on the Quick Access Dashboard segment. Can be done quickly because it would reuse parts of the main dashboard.
June 18 – June 25: Work on Landscape mode for viewing posts. Would have to use the Gravity aspect of the Sensor class.
June 26 – July 1: Start work on improving the looks of the Stats page. Conver it into a bar Graph, with more details on clicking each bar. Implement viewing the statistics of Subscriptions, top posts and incoming links.
July 2 – July 9: Work on the second phase of the Statistics page. Bring in Summary details and Humanize feature. Also ensure most of the work is ready before the Mid-term evaluation.
July 21 – August 8: Work on porting changes to all screen resolutions and displays.
August 9 – August 13: Begin other minor modifications, bug fixes, tests and documentation.
August 14 – August 18: Complete all the necessary work and get the code ready for shipping.
I have modified my timeline so as to suit changes suggested by my mentors in my proposal.