My WPI internship started at the beginning of July and ended in the late August. Interned students worked together with a Graduate Student, Venkatesh Raghavan, for forty hours weekly. From the summer K-12 internship at the Computer Science Department in the Fuller Laboratory, I learned much useful and pertinent knowledge related to database science and Java programming. This wonderful and memorable internship covers assignments including reading relevant books and online tutorials, which covered concepts on Sequence Query Language (SQL), Java Server Pages (JSP), Unix Commands, and Website Designs, to carry out a project that creates a User Interface to display all publications accomplished by the Database System Research Group of the Computer Science Department at WPI. The software used to create this project includes NetBeans 5.0 IDE, Eclipse 3.2, and MySQL 5.0.45.
Below are the detailed weekly
summaries that show the tasks I have accomplished during this internship.
Week 1 (July 1 – July 7)
During the first week, I read
Oracle 8i, Oracle 9i to be familiar with basic concepts of relational database
and its pertinent terminology, such as primary key, foreign key, constraint,
relational schemes, nested tables, and triggers; moreover, I read A Guide to
LATEX to help me understand how bibliographies of different papers are
organized in BIBTEX. After the reading assignments, I was assigned to design a
project proposal, DSRG Publication Library, related to tabular designs
for WPI DSRG publications.
Week 2 (July 8 – July 14)
This week, I read the SQL 101 in
the Oracle 8i and learned how to use different SQL commands to create
databases and tables, describe tables, and select, alter, delete, or update
components within the existing tables. In the middle of this week, I switched my
focus to learn Java Server Page in JSP 2.0. This book covered the
complete reference on JSP. I learned the basic Web Programming Environments,
including the background of website development, overview of Hypertext Transfer
Protocol (HTTP), and introduction to servlets. Then, I concentrated to the JSP
syntaxes and its basic components. Soon, I was assigned to design a User
Interface that allows various users to login, add, update, delete and view
different publications from the WPI DSRG databases. I created several .jsp files
in NetBeans software to create the outlooks of the User Interface.
Week 3 (July 15 – July 21)
During this week, I started
downloading and using the software, MySQL version 5.0.45. This free-downloaded
software provided its version manual, which I used to instruct myself how to use
MySQL conjointly with my pervious knowledge of SQL commands to create tables for
the DSRG publications. I was assigned soon to write all codes for table designs
and saved them into text pads for future uses. At this point, I start to
organize the DSRG reference pages (years 2007-1989) in excel spreadsheets. These
tasks include sorting authors, different types of publications, and searched
online for different links of the annual conferences, workshop and competitions.
Week 4 (July 22 – July 28)
This week, I finished organizing
the DSRG publications in excel spreadsheets and saving codes for the creation of
tables in MySQL. I start learning the concepts of Triggers and Auto_Increment
commands related MySQL syntaxes to create triggers to be used for assigned
tables. I also updated the project proposal to version 1.2, where I added some
more terminology (Trigger) and two more tables Venky suggested earlier. In
addition, I have identified the tables that require AUTO_INCREMENT commands for
their serial numbers. Then, I was assigned to start learning the concepts and
syntaxes of JDBC (Java Database Connectivity), which I can use soon to connect
the Java programs with the MySQL databases.
Week 5 (July 29 – August 4)
During this week, I start learning the Unix Commands including cd, ls, chmod and so on. Moreover, I the MySQL connector/J’s manual and learned how the MySQL connector/J can connect Java and databases conjointly. Then, I started to create the database, dsrgatwpi, in MySQL to store all the syntaxes I have written for table designs and DSRG publications. I also updated some already existed tables and created several new tables as I was assigned to do so.
All the completed coding files in text
pads are sent to Venky for final checks.
Week 6 (August 5 – August 11)
This week, I organized all the
tables I have created using MySQL syntaxes. I completed the inserting work of
all the DSRG publications, except the project sections due to the unavailability
of the links. Also, I was assigned to assist Kwame, another interning student at
DSRG lab, to generate keys for the DSRG BIBTEX Data Entry site using javascript
in HTML files. In addition, we both worked on formatting the BIBTEX entries in
the Dynamic HTML page.
Week 7 (August 12– August 18)