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.
53 students enrolled
Take This Course
  • Lectures 54
  • Length 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


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


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 , 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

Who 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.


Section 1: Intro and Overview

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


High level outline of technologies we will be using.

Section 2: Database Architecture and Design

Section Overview


Creating tables and defining necessary relationships


Adding columns to our tables to enhance data objects


Write SQL script to populate Survey Tables with sample data


Write SQL script to populate Response Tables with sample data


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


Review a data structure for later use in reporting functionality


Connecting tables to collect right data


Adding aggregate functions to calculate percentages


Demonstration of why this approach to get numbers is incorrect


Building correct reporting functionality


Wrapping our code inside of the stored procedure

Section 3: Core Functionality

Music: Four Seasons by Antonio Vivaldi


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


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


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


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


Coding functionality to preserve user’s answers inside ViewModel


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


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


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


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


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

Section 4: Core Functionality: Charts

Quick review of Google Charting library


Create prototype functionality to use with Google’s Chart library


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


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


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


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

Section 5: Admin Pages
Admin Section overview

Create WebForm pages to outline Admin structure


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


Create a form to manage Survey’s record


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


Create Form to output Item and Answers


Code functionality to add/update Item and answers


Code functionality to update / delete answers


Adding CSS to improve forms presentation


Coding fields with embed code and populating with code template


Walking through the process of embedding the survey onto the webpage


Adding simple Forms authentication to protect admin pages

Section 6: Survey via Email

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


Developing functionality to collect responses coming from email clicks


Demonstrating how the email code would be embedded into Email message

Section 7: Survey via QR Code

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


Add Participant table and wire up code to support new entity


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


Code functionality to create Participant Record


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


Building MVC View where user lands after scanning the QR Code


Description: Building functionality to collect and store personalized survey response


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