Programming Social Applications
Окопный Павел Валерьевич
- to introduce the emergence of Application Design for facilitating a variety of social needs online
- be able to design accurate conceptual models of social applications
- be able to model the logic of user behavior within an application
- be able to perform full-stack application development (Python, HTML/CSS, elements of JS, SQL)
- UX design and PrototypingTopic 1 Basics of UX Methods and techniques. Scope and project perspectives. Customer funnel Model of Agile UX. Topic 2 Usage research User stories. Use cases. Mental models and conceptual design. Topic 3 UX evaluation Evaluation Methods and Techniques
- Front-end developmentTopic 1 Prototyping Sitemap creation. Mockup developing. Topic 2 HTML and web-design HTML. Bootstrap. Page layouts. Content writing Topic 3 Advanced elements Applying JS. Customization of layouts
- Back-end developmentTopic 1 Introduction to Python Variables and types. Running apps. Application servers. Тopic 2 Databases and APIs SQL queries. Adding databases to the project. Exchanging data between server and a database. Topic 3 Project Deployment Bug fixes. Connecting back- and front-end. Topic 4 Social Algorithms Ranking, recommendations, collaborative filtering.
- Online programming tasks
- Homework ProjectsStudents should develop an application with the help of Python programming language, using Flask libraries and MySQL DBMS. The application should involve one of the AI algorithms, such as collaborative filtering and have a web-interface which supports at least one user scenario. The user scenario should start with logging into the application and end with returning the result of algorithm usage, for instance, a list of recommended products. Projects are done during the second module. Works are submitted in English. Students are allowed to make an application on any topic they like. Progress is supervised by the instructor. Students divide in groups of three, and assign roles to themselves (project manager, designer, programmist) to determine the domain area they are responsible for. However, equal contribution is expected from each of them. As a final result, students must send a repository containing code, issues, basic flow of the user, and description.
- Interim assessment (2 module)0.6 * Homework Projects + 0.4 * Online programming tasks
- Turner, P. (2017). A Psychology of User Experience : Involvement, Affect and Aesthetics. Cham, Switzerland: Springer. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1651402
- Hartson, R., & Pyla, P. S. (2012). The UX Book : Process and Guidelines for Ensuring a Quality User Experience. Amsterdam: Elsevier Ltd. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=453819
- Rubio, D. (2017). Beginning Django : Web Application Development and Deployment with Python. [Berkeley, CA]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1623501