<commit_before># CIS-627-Web-Database-Services-Development

## Contact Information
Instructor | <NAME>
Email | <EMAIL>
Phone | 215-667-9348

## Instructor Bio
I graduated from La Sallle University , both for my Undergraduate degree and for my Masters. I have been a professional software engineer since I graduated. I have worked mostly in the startup environment. I am currently VP of Engineering at Zodiac, a predictive customer centricity analytics company. I lead the entire software development part of the organization in planning, language selections, framework selections, operational stability and more. I have spent years working with Python and scaling web services to be able to handle up to 1/3 of all ecommerce traffic.

## Course Overview
This encompasses programming models that support database access. It covers client/server and multi-tiered architectures; development of database applications; Internet and intranet database design and implementation; database-driven Web sites; and use of XML and/or JSON syntax related to databases. The toolset for this course will not be Windows based but will heavily leverage virtualization with docker. An example of a possible toolset is Python and mySQL on an uwsgi, Windows or MAC server. The course also considers privacy of data and data protection on servers.
Prerequisite: CIS 523, CIS 622 or permission of instructor.

## Course Dates
The course runs from 5/22/2017 to 7/14/2017.


## Prerequisites
The pre-requisites for this course are CIS 523 Database Management Systems and CIS 622 Introduction to Web

Programming. We will be working with Docker, Python and MYSQL. You will need to install Docker on your local machine.  We will have access to AWS web servers for those with lower system specifications on their laptop. You will receive the installation directions via a document in Week 1.

LEARNING OBJECTIVES
•	Consider "classical" client/server architecture and the problems associated with it – especially those associated with server-side scripting.
•	Develop examples using client -server architecture on a non-windows database interface
•	Discuss data access, use of objects for data access, and a separate level for data access.
•	Discuss business rules, use of object for business rules and a separate level for business rules.
•	Address scaling and other backend challenges.
•	Design and implement a general class
•	Design and implement a solution for a form process including validation and security
•	Implement a server-side solution with persistence using session variables and/or cookies Design and implement a database solution to a proposed scenario
•	Design problem solution to retrieve information from a database
•	Develop maintenance applications for database tables
•	Develop and implement an authentication and authorization system

## Textbook
How to Tango With Django 1.9 by <NAME> and <NAME>
![Image of Tango With Django](https://s3.amazonaws.com/titlepages.leanpub.com/tangowithdjango19/hero?1488289141)

https://leanpub.com/tangowithdjango19

## Online Resources
https://docs.djangoproject.com/en/1.9/intro/
https://docs.djangoproject.com/en/1.9/

## Technical Support
Technical support information will be provided by academic computing.  They may be reached by contacting
215.951.1788. You may also submit a help request by visiting  http://helpdesk.lasalle.edu. The help desk cannot resolve issues dealing with software that is used specifically for this course.


## Course Structure
This course will be set up by giving a folder for each week of class. You will be asked to read the directions and complete the assignments. For most weeks, the typical learning module format will be

•	Directions for the module
•	Tutorials
•	Slide presentations
•	Posted examples
•	Weekly assignment(s)

Majority of course work will be done online. When working online, assignments, conversations, and postings that are scheduled and due in a week’s time are expected to be completed in that week. The online week runs from Tuesday 12:01 AM to following Monday evening (11:59 PM). Weekly folders will be available for your use by 12:01 on Tuesday.  If you have a schedule issue, during the course, you need to contact me as soon as possible. I am planning to host online synchronous sessions for additional help.  The synchronous sessions will be your opportunity to get additional help with course materials. The sessions will be archived so you can view them later.

## Course Requirements
### Participation

Completion of student assignments and project is required.
We will be holding several synchronous sessions. You can expect we will be working together for one hour from 7-8 on those nights. Meetings will be schedules as needed.

### Project/assignment due dates

There will be individual assignments which build on the material covered each week.  Students are also expected to code materials from the presentations themselves.
There will be a semester project due the last week of the semester.


### Learner expectations

Students are expected to:
•	Complete all readings, look through the slides and posted examples, watch the tutorials, and complete assignments for that week.
•	Check the online course material and email at least 3 times a week.
•	Participate actively in both online and in-class sessions by asking questions
•	Engage the instructor immediately if any problems arise that may prevent the student from completing the above weekly requirements

The instructor is expected to:
•	Post all course materials and assignments in a timely manner
•	Make him/herself available by email and/or online chat for student questions or concerns
•	Check the course regularly
•	Provide each student with timely feedback on their progress in the course
•	Grade and return all assignments in a timely manner

## Evaluation and assessment of learner performance
Individual Projects (HW Assignments) | 40%  
Midterm and Final Exam | 40%  
Semester Project | 20%  

## Academic Honesty
A high level of responsibility and academic honesty is expected from our students and it is imperative that a student demonstrates high ethical standards in his/her academic work. Academic dishonesty includes, but is not limited to, submission as one’s own work or material that is not one’s own. Plagiarism from the web or from any other source is unacceptable and will be dealt with under the university’s policy on plagiarism. Students suspected of academic dishonesty are subject to disciplinary actions. Please refer to the LaSalle Student handbook.

If you have a question about the authenticity of your work, LaSalle makes available to you a data base service called “Turn It In”. You instructor will give you all the information to use it. The purpose of this service is to help you identify areas where you might improve our writing and source referencing.

## Course Policies
### Late work policy

In the event that an assignment is turned in late, you are required to notify me by email that the work has been completed. At my earliest convenience, I will then grade the late work and update your grade.


### Communication

Please be aware when you email me with a question or concern to allow 24 hours for a response. In most cases the reply will be much sooner. I believe that prompt and relevant feedback to your questions, and concerns, is of extreme importance.

Concerning email, you must put your NAME on the email and YOUR CLASS AND THE ASSIGNMENT OR ISSUE YOU ARE REFERRING TO IN THE SUBJECT LINE OR the reply may be delayed. Please comply with this request to ensure a prompt response from me.  Another mode of communication is the synchronous tool. The class synchronous area allows us to chat in "real-time" during a mutually arranged appointment.

### Etiquette

Please understand that there is a certain type of etiquette that must be upheld in the class when turning in college work. To this end, refrain from slang, derogatory language, caps, and any potentially offensive forms of expression. Hence, when you approach your instructor or other students with questions or comments, you should always
maintain a professional tone.

### Grades

The intention is to grade assignments within one week after the scheduled due date.  I ask that you please refrain from asking questions on grades before the one week window.

Grade | Meaning
-----------------
A | superior level of competency  
A- | very good level of competency  
B+ | good level of competency  
B | average, satisfactory level of competency  
B- | less than average level of competency  
C | marginally satisfactory level of competency  
F  | failure to demonstrate a satisfactory level of competency  
I  | work not completed within the current semester period  
W  | an authorized withdrawal from a course (This must be processed by the graduate office.)  


### Online hour course equivalency
ONLINE Component | Learning Hour Equivalency (In Hours)
-------------------
Tutorials/Slideshows/Posted examples | 21  
Synchronous Sessions | 8  
Class Lab Work | 15  
Total | 44  

Each week students will have approximately 1.5 to 2 hours of lecture material.  Students are expected to reproduce lab work presented in the lecture material. This lab work will include student coding of material presented.


<commit_msg>Spec changes in charts markdown<commit_after># CIS-627-Web-Database-Services-Development

## Contact Information
Instructor | <NAME>
Email | <EMAIL>
Phone | 215-667-9348

## Instructor Bio
I graduated from La Sallle University , both for my Undergraduate degree and for my Masters. I have been a professional software engineer since I graduated. I have worked mostly in the startup environment. I am currently VP of Engineering at Zodiac, a predictive customer centricity analytics company. I lead the entire software development part of the organization in planning, language selections, framework selections, operational stability and more. I have spent years working with Python and scaling web services to be able to handle up to 1/3 of all ecommerce traffic.

## Course Overview
This encompasses programming models that support database access. It covers client/server and multi-tiered architectures; development of database applications; Internet and intranet database design and implementation; database-driven Web sites; and use of XML and/or JSON syntax related to databases. The toolset for this course will not be Windows based but will heavily leverage virtualization with docker. An example of a possible toolset is Python and mySQL on an uwsgi, Windows or MAC server. The course also considers privacy of data and data protection on servers.
Prerequisite: CIS 523, CIS 622 or permission of instructor.

## Course Dates
The course runs from 5/22/2017 to 7/14/2017.


## Prerequisites
The pre-requisites for this course are CIS 523 Database Management Systems and CIS 622 Introduction to Web

Programming. We will be working with Docker, Python and MYSQL. You will need to install Docker on your local machine.  We will have access to AWS web servers for those with lower system specifications on their laptop. You will receive the installation directions via a document in Week 1.

LEARNING OBJECTIVES
•	Consider "classical" client/server architecture and the problems associated with it – especially those associated with server-side scripting.
•	Develop examples using client -server architecture on a non-windows database interface
•	Discuss data access, use of objects for data access, and a separate level for data access.
•	Discuss business rules, use of object for business rules and a separate level for business rules.
•	Address scaling and other backend challenges.
•	Design and implement a general class
•	Design and implement a solution for a form process including validation and security
•	Implement a server-side solution with persistence using session variables and/or cookies Design and implement a database solution to a proposed scenario
•	Design problem solution to retrieve information from a database
•	Develop maintenance applications for database tables
•	Develop and implement an authentication and authorization system

## Textbook
How to Tango With Django 1.9 by <NAME> and <NAME>
![Image of Tango With Django](https://s3.amazonaws.com/titlepages.leanpub.com/tangowithdjango19/hero?1488289141)

https://leanpub.com/tangowithdjango19

## Online Resources
https://docs.djangoproject.com/en/1.9/intro/
https://docs.djangoproject.com/en/1.9/

## Technical Support
Technical support information will be provided by academic computing.  They may be reached by contacting
215.951.1788. You may also submit a help request by visiting  http://helpdesk.lasalle.edu. The help desk cannot resolve issues dealing with software that is used specifically for this course.


## Course Structure
This course will be set up by giving a folder for each week of class. You will be asked to read the directions and complete the assignments. For most weeks, the typical learning module format will be

•	Directions for the module
•	Tutorials
•	Slide presentations
•	Posted examples
•	Weekly assignment(s)

Majority of course work will be done online. When working online, assignments, conversations, and postings that are scheduled and due in a week’s time are expected to be completed in that week. The online week runs from Tuesday 12:01 AM to following Monday evening (11:59 PM). Weekly folders will be available for your use by 12:01 on Tuesday.  If you have a schedule issue, during the course, you need to contact me as soon as possible. I am planning to host online synchronous sessions for additional help.  The synchronous sessions will be your opportunity to get additional help with course materials. The sessions will be archived so you can view them later.

## Course Requirements
### Participation

Completion of student assignments and project is required.
We will be holding several synchronous sessions. You can expect we will be working together for one hour from 7-8 on those nights. Meetings will be schedules as needed.

### Project/assignment due dates

There will be individual assignments which build on the material covered each week.  Students are also expected to code materials from the presentations themselves.
There will be a semester project due the last week of the semester.


### Learner expectations

Students are expected to:
•	Complete all readings, look through the slides and posted examples, watch the tutorials, and complete assignments for that week.
•	Check the online course material and email at least 3 times a week.
•	Participate actively in both online and in-class sessions by asking questions
•	Engage the instructor immediately if any problems arise that may prevent the student from completing the above weekly requirements

The instructor is expected to:
•	Post all course materials and assignments in a timely manner
•	Make him/herself available by email and/or online chat for student questions or concerns
•	Check the course regularly
•	Provide each student with timely feedback on their progress in the course
•	Grade and return all assignments in a timely manner

## Evaluation and assessment of learner performance
Individual Projects (HW Assignments) | 40%  
Midterm and Final Exam | 40%  
Semester Project | 20%  

## Academic Honesty
A high level of responsibility and academic honesty is expected from our students and it is imperative that a student demonstrates high ethical standards in his/her academic work. Academic dishonesty includes, but is not limited to, submission as one’s own work or material that is not one’s own. Plagiarism from the web or from any other source is unacceptable and will be dealt with under the university’s policy on plagiarism. Students suspected of academic dishonesty are subject to disciplinary actions. Please refer to the LaSalle Student handbook.

If you have a question about the authenticity of your work, LaSalle makes available to you a data base service called “Turn It In”. You instructor will give you all the information to use it. The purpose of this service is to help you identify areas where you might improve our writing and source referencing.

## Course Policies
### Late work policy

In the event that an assignment is turned in late, you are required to notify me by email that the work has been completed. At my earliest convenience, I will then grade the late work and update your grade.


### Communication

Please be aware when you email me with a question or concern to allow 24 hours for a response. In most cases the reply will be much sooner. I believe that prompt and relevant feedback to your questions, and concerns, is of extreme importance.

Concerning email, you must put your NAME on the email and YOUR CLASS AND THE ASSIGNMENT OR ISSUE YOU ARE REFERRING TO IN THE SUBJECT LINE OR the reply may be delayed. Please comply with this request to ensure a prompt response from me.  Another mode of communication is the synchronous tool. The class synchronous area allows us to chat in "real-time" during a mutually arranged appointment.

### Etiquette

Please understand that there is a certain type of etiquette that must be upheld in the class when turning in college work. To this end, refrain from slang, derogatory language, caps, and any potentially offensive forms of expression. Hence, when you approach your instructor or other students with questions or comments, you should always
maintain a professional tone.

### Grades

The intention is to grade assignments within one week after the scheduled due date.  I ask that you please refrain from asking questions on grades before the one week window.

|Grade | Meaning|
|-------|----------|
|A | superior level of competency  |
|A- | very good level of competency  |
|B+ | good level of competency  |
|B | average, satisfactory level of competency  |
|B- | less than average level of competency  |
|C | marginally satisfactory level of competency  |
|F  | failure to demonstrate a satisfactory level of competency  |
|I  | work not completed within the current semester period  |
|W  | an authorized withdrawal from a course (This must be processed by the graduate office.)  |


### Online hour course equivalency
|ONLINE Component | Learning Hour Equivalency (In Hours)|
|----------|---------|
|Tutorials/Slideshows/Posted examples | 21  |
|Synchronous Sessions | 8  |
|Class Lab Work | 15  |
|Total | 44  |

Each week students will have approximately 1.5 to 2 hours of lecture material.  Students are expected to reproduce lab work presented in the lecture material. This lab work will include student coding of material presented.



{'fraction_non_alphanumeric': 0.041425198540459326, 'fraction_numerical': 0.011375831723545825, 'mean_word_length': 4.457393850658858, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5030678', 'n_tokens_mistral': 4559, 'n_tokens_neox': 4179, 'n_words': 2794}