Real Life Coding: Developing Survey Application

Learn how to code real life survey/poll application for use on website or in email.
3.5 (3 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
50 students enrolled
$20
Take This Course
  • Lectures 54
  • Contents Video: 5 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2014 English

Course Description

This course will take you through the steps necessary to build a useful, real life web application based on requirements from an actual marketing department. Watch as the web developer in this video series is given the task of creating survey functionality to be used on a web site and poll participants via email marketing blasts. Additionally this developer must collect real time feedback from attendees at live events.

Learn which technologies should be used and how each requirement should be fulfilled. Sit next to the developer and see how it's all put together. This course is not about teaching a specific language or technology, but rather it demonstrates how to use several technologies and programming tools together to accomplish the given goals.

By watching this video series you will benefit by learning how to code and tie different layers of application together in an efficient way. This course will help expand your web development skills and will provide you with ideas to help you approach future projects with confidence.

What are the requirements?

  • Basic knowledge of vb.net , sql , javascript, jquery, css , html
  • Visual Studio 2012 or above (including free express editions)
  • SQL Server Express (free) and SQL Management Studio 2012 or any higher version

What am I going to get from this course?

  • Design Database to support your application
  • Build KnockoutJS Model to represent multiple View Objects
  • Build UI that communicates with Web API and jQuery
  • Visualize your data with Google Visualization Charts library
  • Develop MVC based Controllers and Views to support requirements
  • Develop WebForms Admin interface to support data entry
  • Generate QR codes using your data
  • Expand and sharpen your coding skills

What is the target audience?

  • Anyone with some coding experience who is interested in learning web development.
  • Anyone with interest in web programming with free Microsoft technologies.
  • Anyone interested in front-end coding using KnockoutJS and jQuery.
  • It may be too challenging for “just starting” coders.

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Intro and Overview
03:07

Introduction to the project. Quick functional demo of what we will be coding.

01:04

High level outline of technologies we will be using.

Section 2: Database Architecture and Design
01:32

Section Overview

07:48

Creating tables and defining necessary relationships

05:21

Adding columns to our tables to enhance data objects

07:35

Write SQL script to populate Survey Tables with sample data

07:39

Write SQL script to populate Response Tables with sample data

03:51

Write SQL statement to populate Response Tables with “Skipped” data

01:08

Review a data structure for later use in reporting functionality

05:14

Connecting tables to collect right data

03:39

Adding aggregate functions to calculate percentages

02:18

Demonstration of why this approach to get numbers is incorrect

15:00

Building correct reporting functionality

01:55

Wrapping our code inside of the stored procedure

Section 3: Core Functionality
03:12

Music: Four Seasons by Antonio Vivaldi

06:01

Creating a View based on Simple Layout template. Adding necessary JS libraries to our Layout template

04:10

Adding linq-to-sql class to communicate with our database. Creating Web API controller with functionality to retrieve a survey data

05:57

Enabling MVC 5 Routing on our controller. Specifying what related data to pull from the database. Setting up JSON as default data return type for the browser

14:00

Laying out and binding HTML structure for the Survey. Defining ViewModel observable properties and actions to populate Survey data via Web API

08:51

Coding functionality to preserve user’s answers inside ViewModel

01:45

Coding Class to use as a Data Transfer object between knockout ViewModel and Web API

07:49

Coding Controller’s functionality to collect POSTed data with user’s answers

04:13

Coding function to send POST request from our Survey ViewModel to Web API function via JQuery $.ajax method

07:48

Adding functionality to our ViewModel to enable user navigate between questions of the survey

09:18

Adding CSS styles and additional Viewmodel functionality to improve survey’s presentation

Section 4: Core Functionality: Charts
03:57

Quick review of Google Charting library

03:35

Create prototype functionality to use with Google’s Chart library

07:10

Code controller to expose our data in the format needed by Chart’s API

05:06

Utilize Knockout’s BindingHandlers to develop our own custom binding for the Chart

11:46

Coding View Model to display chart. Laying out HTML structure and custom binding

07:48

Adding functionality to control report presentation. Adding navigation controls to enable user navigate between multiple answer charts

Section 5: Admin Pages
Admin Section overview
Preview
00:31
01:13

Create WebForm pages to outline Admin structure

03:14

Create Admin page as launch page for the rest of Admin functionality

09:03

Create a form to manage Survey’s record

06:37

Layout Survey’s Items and add edit links to manage Survey’s properties

10:17

Create Form to output Item and Answers

18:48

Code functionality to add/update Item and answers

03:16

Code functionality to update / delete answers

03:23

Adding CSS to improve forms presentation

04:02

Coding fields with embed code and populating with code template

06:06

Walking through the process of embedding the survey onto the webpage

06:26

Adding simple Forms authentication to protect admin pages

Section 6: Survey via Email
03:58

Modifying Admin Survey page to include embed capabilities to use with email

04:57

Developing functionality to collect responses coming from email clicks

00:45

Demonstrating how the email code would be embedded into Email message

Section 7: Survey via QR Code
06:15

Coding Web API method to generate QR Code image with provided parameters

02:26

Add Participant table and wire up code to support new entity

05:18

Code demo functionality to collect user input and produce a QR Code

01:44

Code functionality to create Participant Record

05:54

Code functionality to produce QR based on the input from the form

04:53

Building MVC View where user lands after scanning the QR Code

03:10

Description: Building functionality to collect and store personalized survey response

00:35

Making changes to Email response functionality to accommodate personalization changes

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Dima Grebniev, Web Development

I have over 15 years of experience developing web applications. I began my career working for multinational consulting company where I coded enterprise level projects using Java and later Microsoft.NET. I worked in financial, e-commerce and publishing industries.

At the same time, I decided to run my own small development shop called MolinaBird Design Studio and to build web and mobile applications for local business community.

I have a strong background in business analysis and application development.

In my free time I have always enjoyed sharing my knowledge and my “hands on” experience with others.

Ready to start learning?
Take This Course