Tuesday, December 20, 2011

Progress Report (Week of 12/14-12/21)

What I accomplished the past week:
I have created a classroom home page template that will be generated for each individual classroom that is added. For that classroom home page, I have added the options for viewing all students in the class as well as all projects that are uploaded to the class. Some admin privileges have been implemented including managing of students and editing of classroom description.

What I plan to do next week:
The remaining parts to allow the site to go live, will be the completion of the galleries page and the implementation of admin privileges for comments. I believe this can be done in two weeks.

Concerns:
None

Tuesday, December 13, 2011

Progress Report (Week of 12/07-12/14)

What I accomplished the past week:
I have allowed users the choice of uploading their projects to only one specific classroom and for whether or not their project can be viewed publicly. I have decided that users in the same classroom can view both public and private comments for each project. This means that if the project is seen by a user not in the classroom, they will not be able to see comments made by users from the classroom unless, those users decide to make the comments viewable to the public. Finally, I am working on creating a home page for each individual classroom.

What I plan to do next week:
Still in the process of integrating a classroom home page, privacy issues of user's projects, and admin authority over comments.

Other:
I will be leaving campus Thursday December 15, and will not be back until the beginning of next semester. I will still be working on this project and will continue posting a weekly progress report. If there are any questions, comments, or concerns regarding the site, send me an email, and I will try to reply back as soon as possible.

Concerns:
None

Tuesday, December 6, 2011

Progress Report (Week of 11/30-12/07)

What I accomplished the past week:
I have been working on adding the option for users to determine where their project should be uploaded (uploaded publicly or to a specific classroom). This would then allow projects and their comments to be either be sand-boxed within a classroom, or visible to the public.

What I plan to do next week:
Continue working on the getting the projects and comments sand-boxed from the public.

Concerns:
None

Tuesday, November 29, 2011

Progress Report (Week of 11/16-11/30)

What I accomplished the past week:
Each individual projects page now has a counter implemented to keep track of the number of views each page has received. Also, the comment system for each individual project page is operational.

What I plan to do next week:
Continue working on fixing the classroom main page.

Concerns:
None

Wednesday, November 16, 2011

Progress Report (Week of 11/09-11/16)

What I accomplished the past week:
I am in the progress of adding comments to each user's individual project pages. I have also allowed users to edit their project description if they are logged in.

What I plan to do next week:
I plan to continue working on the comments system and then on the classroom main page.

Concerns:
None

Tuesday, November 8, 2011

Progress Report (Week of 11/02-11/09)

What I accomplished the past week:
I have updated the production server so that it is now up to date with the staging server. I am still continuing to work on fixing up the user profiles and working towards creating a classroom main page.

What I plan to do next week:
Continue fixing up the user profiles and classroom main page.

Concerns:
None

Tuesday, November 1, 2011

Progress Report (Week of 10/26-11/02)

What I accomplished the past week:
I have the password recovery system set up for both public and student users. I also have the edit profile page operational, so that users can now write a little about themselves. By default, this field is left blank. Finally, I have fixed up the CSS for the home and user profile pages. 

What I plan to do next week:
I plan to continue working on fixing up the user profile, specifically, allowing users to change their email if they are a public user and adding a comments section, where a user can write shout outs to their followers. I also plan to begin creating a classroom main page for each classroom.

Concerns:
None

Wednesday, October 26, 2011

Progress Report (Week of 10/19-10/26)

What I accomplished the past week:
I have been working in the user account area fixing bugs and adding new functionalities. All account related web pages that can be modified by the owner are forbidden from access by any other users who are logged in. I have also set up the edit profile page for each user, so that there is now an about me and location field. I am still modifying the password recovery system.

What I plan to do next week:
I will continue working on the password recovery system and begin the implementation of the comments system for each individual project.

Concerns:
None

Tuesday, October 18, 2011

Progress Report (Week of 10/12-10/19)

What I accomplished the past week:
I have implemented the password recovery system for public users. I have also added a "change your password" page for users who are logged in to change their password. I am still in the process of implementing a password recovery system for student users.

What I plan to do next week:
I plan to finish the implementation of the password recovery system for student users and to continue finishing up implementing account settings for users to change.

Concerns:
None

Tuesday, October 11, 2011

Progress Report (Week of 10/05-10/12)

What I accomplished the past week:
I have replaced the long registration link found in the email with a tinyurl link. I am still in the process of implementing the password recovery system, and this should be done by next week.

What I plan to do next week:
I plan to finish the implementation of the password recovery system and to continue the re-design of a user's profile page.

Concerns:
None

Tuesday, October 4, 2011

Progress Report (Week of 9/28-10/05)

What I accomplished the past week:
I finished redesigning the url routing system for the website. Now the framework has checks in place to verify user permissions as well as checking the validity of the link in question.

A new registration process has been implemented. It works by having two registration phases. The first one asks the user for their name and their email address. The website will then send an email to them with a link to the second part of the registration. This part is where the user enters in their desired username and password. The database does not store any information regarding a user who does not completely finish their registration. This is because the link sent through the confirmation email contains the user's name and email, which is encrypted using a public-private key algorithm. The framework does a validation check on each url to confirm that the link hasn't been tampered with.

I also fixed up the website's navigation website by changing the previous look and feel of the site. To achieve this, I got rid of the side bar login screen and decided to include these components at the top of the page. Next, I moved the search option up to the header to open up the side bar. Now, only web pages that need the side bar can use it; otherwise other pages can use that space. I also got rid of the banner images on each and every page. Finally, I was able to make all footers stick to the bottom of the page.

What I plan to do next week:
I plan to implement the password recovery system and to start the re-design of a user's profile page.

Concerns:
None

Tuesday, September 27, 2011

Progress Report (Week of 9/21-9/28)

What I accomplished the past week:
I have continued redesigning the url routing system for the website because my original design for the site was making it hard to support a user's profile page. Those new url links now have checks in place to verify user permissions as well as confirming the validity of those links. This should be completed by next week.

What I plan to do next week:
I plan to finish up the redesign and implementation of the url routing system next week and to implement the new registration portions for the website.

Concerns:
None

Tuesday, September 20, 2011

Progress Report (Week of 9/14-9/21)

What I accomplished the past week:
I have removed the accordion like login menu with a fixed login menu. The ranking star scale has been readjusted to allow only one star ratings. Therefore, a user can highlight a star to give a project a +1 to its overall ratings; there are no negative ratings allowed. The CSS of each person's individual project page has also been redesigned. Finally, I have integrated the new jnlp and xml files with the website.

I also have started to redesign the url routing system. There were some issues with accessing certain url pages that have to be resolved. Moreover, there were some permission and security issues that needed to be addressed.

What I plan to do next week:
I plan to continue redesigning the url routing system. I will also continue working on fixing up a user's profile page. I also plan to redesign the registration portion of the website.

Concerns:
None

Tuesday, September 13, 2011

Progress Report (Week of 9/07-9/14)

What I accomplished the past week:
I implemented a new ranking system that is based on a 1-5 star scale. The system allows only logged in users to vote and gives them the flexibility to continuously change their ratings for each project; those statistics would be immediately reflected in the average ratings score. I also created a dialog form modal for logging in. The url for the login screen is still functional. 

What I plan to do next week:
I plan to look into building the comment's system and integrating Google forms with it. I will also continue to fix up the user's profile page for each user.

Concerns:
None

Tuesday, September 6, 2011

Progress Report (Week of 8/31-9/07)

What I accomplished the past week:
I implemented some changes to allow for more standard usage of uploading new projects onto the community website. Also, I have fixed up the url route configurations for each project of a user and have added information about each of those projects to each of their respective project page. Finally, I have looked into the various types of discussion systems to implement for the community website.

What I plan to do next week:
I plan to get the ranking system (likes) operational. Moreover, I will look into making a user's profile page for each user.

Concerns:
None

Tuesday, August 30, 2011

Progress Report (Week of 8/10-8/31)

What I accomplished the past week:
I have been looking at ways to give better flexibility to other CSDT developers in uploading their projects to the community site. I also have written up some guidelines on how the CSDT developers should get their projects recognized by the website; this will be discussed in our weekly meeting.

What I plan to do next week:
I plan to give flexibility to CSDT developers in uploading their projects to the website. I will look into adding some sort of commentary or chat function for each user's project. Finally, I will look into adding the ranking system (likes) to each project.

Concerns:
None

Tuesday, August 9, 2011

Progress Report (Week of 8/03-8/10)

What I accomplished the past week:
I was able to port the website over to the production server.

In the test server, I have added the visible and active columns to the database schema The visible column is used to determine whether or not something should be visible to the public and the active column is used to indicate if the object is deleted. I have also fixed up some of the CSS functionality on the site as well as implementing the changes that were brought up. After the review, I will move the changes from the test server to the production server.

What I plan to do next week:
I plan on continuing fixing up bugs that pop up on the website, and looking to make the delete function functional.

Concerns:
None

Tuesday, August 2, 2011

Progress Report (Week of 7/27-8/03)

What I accomplished the past week:
I was able to fix up the upload option on the website so that users can name their project, and write a description about it. Moreover, that project would then be updated on their projects table. I also have been working on changing the CSS look and feel of the website. This new CSS template has been uploaded onto the testing server <http://shippb.stu.rpi.edu/csdt>.

What I plan to do next week:
I will work on porting the website over to the production server. I will also continue on fixing bugs that pop up on the website.

Concerns:
None

Tuesday, July 26, 2011

Progress Report (Week of 7/20-7/27)

What I accomplished the past week:
I have been able to add the teacher and student features on the website. Users can now register as either a public user or as a student. A student user will be able to register a class based off of a list of classes. This type of registration does not need any email addresses. Only public users are able to create classes, while both public and student users can register in multiple classes. Users have a main page where they manage all of their classes. Finally, I have been able to port my code over to a Linux machine given by Ben Shippe.

The website is located on <http://shippb.stu.rpi.edu/csdt>. This is still in testing mode and not ready for production yet.

What I plan to do next week:
I plan to continue fixing up the bugs that are occurring due to porting my code over to the Linux machine. These include fixing up the sending of email through SMTP and fixing up the registration process so that people have to enter in valid things in the text fields. Moreover, I will continue attempting to port my code over to the production server.

Concerns:
None

Tuesday, July 19, 2011

Progress Report (Week of 7/13-7/20)

What I accomplished the past week:
I have been able to get the code ready for testing on the production server. To do this, I had to integrate the code with my own Apache web server. Finally, I had to change databases from PostgreSQL to MySQL.

What I plan to do next week:
I plan to work with Jay on getting the code transitioned to the production server.

Concerns:
None

Tuesday, July 12, 2011

Progress Report (Week of 7/06-7/13)

What I accomplished the past week:
Users that are logged in are now the only ones who can upload, or view their profiles; otherwise, unregistered users will be brought to a login screen. Sessions are now destroyed once a user logs out. The registering web page has undergone another revision. Whenever a user enters in his/her first and last name, the username is automatically populated with the "First Name.Last Name" as the default username. The "Check for Availability" button under the username is now functioning. Finally, I have added a password strength bar to tell the user the strength of their password chosen.

What I plan to do next week:
I will get the website transitioned onto the production server. There are three things that first must happen: I first have to implement the confirmation email option; Secondly, I have to create a Makefile to install and to configure the environment on the Apache Server to run Pyramid; Lastly, I have to work with Jay on getting the code transitioned to the production server.

Concerns:
None

Tuesday, July 5, 2011

Progress Report (Week of 6/29-7/06)

What I accomplished the past week:
I have been able to implement sessions, fix the upload button, and get the login screen operational. Moreover, I have been working on getting the website over to an Apache server on my machine.

What I plan to do next week:
I will start building web pages for users who are logged in and I will continue working on transitioning the Pyramid framework onto an Apache server.

Concerns:
None

Tuesday, June 28, 2011

Progress Report (Week of 6/15-6/29)

What I accomplished the past week:
I have redesigned the original website shown 2 weeks ago with a new CSS layout; the original one did not seem to match the goal of the community website. The website has also been transitioned from a PHP-based architecture to Python's Pyramid MVC-like framework. Moreover, I have switched to the PostgreSQL database due to concerns of MySQL's viability as an open source project. The user registration functionality is set-up and it is now integrated with the new database. The login screen can recognize a username and password when a user enters one.

What I plan to do next week:
I will continue working on implementing sessions throughout the entire website. Moreover, I will continue working on fixing the login screen.

Concerns:
None

Tuesday, June 14, 2011

Progress Report (Week of 6/8-6/15)

What I accomplished the past week:
I have made a basic mockup of how all of the projects uploaded to the community site will be displayed. This is done using jqGrid as well as a mySQL backend database. I have also added the upload button capacity directly on the website. Finally, I introduced a CSS template background for the site.

What I plan to do next week:
I plan to link each entry in the projects table to their respective java applet. Thus, it will allow the user a chance to view those project live. Secondly, I am trying to get the user login and tables integrated with the site.

Concerns:
None

Tuesday, June 7, 2011

Progress Report (Week of 6/1-6/8)

What I accomplished the past week:
I began integrating the database schema received from Josh last week with the CSDT community website. I am still exploring the capabilities of it and seeing what things might need to be added. I also created my own database schema to handle the uploaded data. I was able to successfully set up the NetBeans environment with the programming files on my Windows platform. However, the first attempt on my 64 bit Fedora OS failed. In addition, I started to redesign the source tree of the CSDT community website, and I looked into the GUI.java file in the Core project to find a good place to add the upload button.

What I plan to do next week:
I will begin making the PHP page that will be used to display the results of all of the projects. This page will hedge on jqGrid to display the various projects. I will also begin to look into adding an upload button into the menu option of each program file.

Concerns:
Should the CSDT community website support flashed based programs? If so, I will need access to the source code.

Wednesday, June 1, 2011

Progress Report (Week of 5/25-6/01)

What I accomplished the past week:
I was able to get the database schema from Josh on Tuesday night. I have downloaded the core project from the code repository. I am setting up the NetBeans environment for the core project and reading the documentation. I am also studying the GUIBuilder that I will need to add the upload button.

What I plan to do next week:
I will start looking into the database schema. I will continue understanding the core project as well as how my additions interfaces with the core. I will also be integrating the database schema with the PHP CSDT community website.

Concerns:
Java is complex and has many components that I needed to look over. This will start slowly, but hopefully progress will speed up over the coming weeks.

Wednesday, May 25, 2011

Progress Report (Week of 5/18-5/25)

What I accomplished the past week:
I was able to develop a preliminary plan on attacking the upload option. I began exploring the PHP code some more, and realized that it needs a database schema. I am currently in the process of getting the schema back.

What I plan to do next week:
I will continue developing the upload option plan and discuss with you the merits of it.

Concerns:
The database schema is not there. Josh is working on getting the schema for us.

CSDT - Upload Preliminary Project Plan

Plan:
1) Create an upload button on each project application
  1.1) The upload button functions by saving the desired project onto the web server instead of onto a user's machine
  1.2) The .sol extension format will be used to store the data for the projects
  1.3) The upload button will be placed next to the save button, which is already implemented on most project applications
  1.4) When a user clicks the upload button, they will be greeted with a prompt about having to first login
2) The .sol files will be stored on the web server and the document location will be based off the project's name
  2.2) Each .sol file will have unique project identifiers
    2.2.1) Username
    2.2.2) Any name the user desires
    2.2.3) Project application type
3) A database will be used to store the filename of the uploaded .sol files, and various other project attributes (to be determined).
4) On the community site, the user will have the option of choosing which type of projects they want to see given the application used to make it
5) Thumbnails of each project will be shown to allow users a chance to view a project and some details without having to click the link
6) When a user decides to view a project, that project is downloaded to the user's browser
  6.1) After the user leaves, the project is then removed (this is considered the demo mode)
7) There is a download option on each project page, which will allow a user to download a project directly to their browser
8) The details of the CSDT community site for upload are still TBD


Questions:
1) How do we organize the uploaded projects?
2) Public, private, or group privaleges for the uploaded file documents?
3) How are we going to access the projects? Should they be downloaded to the user and read from there? Or should it be read from the server?
4) Can we generate a thumbnail from the extensions (.sol, .xml, .ani)?
5) Should .sol be the standard project file format for uploading?


Issues:
1) No standard of saving projects. (.xml, .sol, .ani)
2) Do we need to verify uploaded file is a valid project file?

Appendix: Detail look at projects and their option on saving

1) African Fractals
Cannot view the java applet applications

2) Mangbetu Design:
Saves in .sol format

Location:
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/african/MANG_DESIGN/mangbetuUpdate2_5.swf/myproje.sol

3) Hexastrip Weaving
No programming application

4) Cornrow Curves
Cannot view the java applet applications

5) Graffiti Grapher:
Saves in .sol file

They are writing through flash
Location:
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/csdt.rpi.edu/subcult/grafitti/software/flash/grapher.swf/Writer#/2004.11.10.10fileNamemyproj.sol

New File Added:
.../Write2#/...

6) Break Dancer - Dance Simulation:
Saves in .ani format

7) Virtual Bead Loom:
Saves in .sol format

Location:
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/na/loom/bl/beadloom.swf/myprojd9_8_2004_3.sol

8) Pacific Northwest Basket Weaver
Does not allow save option

9) Navajo Rug Weaver
Saves in .sol format
Bug in saving the path. - Saved as myprojf, but does not recognize the path. However, there is a file saved with a different name.

Location:
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/na/rugweaver/software/rugweaver.swf/weavework12_8_2004_1.sol

10) Anishinaabe Arcs
Cannot view the java applet applications

11) Yupik Star Navigator
Does not allow save option

12) Yupik Parka Patterns
Saves in .sol format

Location:
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/na/yupik/yupik.swf/myprojg.sol

13) SimShoBan
No programming application

14) Pre-Columbian Pyramids
Saves in .sol format

Location:
2D Pyramid Builder
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/latino/pyramids/software/builder2D.swf/myprojh3_31_2005_2.sol

3D Pyramid Builder
.../.macromedia/Flash_Player/#SharedObjects/WXKQ4KD5/rpi.edu/latino/pyramids/software/temple_software.swf/myproji.sol

15) Rhythm Wheels
No programming application

Note:
.sol extension = Adobe Flash Player Shared Objects
.ani extension = Store default Window animated cursors