Syllabus
Design and Development of Web and Mobile Applications
(Especially for Start Ups)
Spring 20121
Stern School of Business
Norman White, KMEC 8-88
Email: nwhite@stern.nyu.edu
Phone: 212 - 998 0842
TA: TBA
Development of Web and Mobile Applications
The internet has become the most common way to distribute applications to end users, whether they are web based applications, or mobile device based applications.
This course covers application development, from a web page to a web site, including mobile applications. Students will have access to a cloud environment in which to experiment with their ideas. Custom servers can be built for individual projects, depending on the needs of the project. Access to the cloud will remain available for 8 months after the course has officially ended, for those groups which are pursuing financing.
The course covers a wide variety of different internet development approaches and architectures. Issues such as security, performance, scalability, and maintainability of the different approaches will be examined. Web/mobile enabling of applications will be discussed, and in particular techniques for developing web/mobile-enabled databases, which can be accessed from browsers running on PCs, or mobile applications running on iphones, Ipads, Androids, or similar devices.
There will be a cloud computing environment available so that student groups can implement their ideas on an appropriate platform. Supported platforms will include virtually anything that can run on the intel architecture, including Windows XP, Windows 7, Windows Server (including IIS, SQL Server etc.), and any flavors of linux. Students will have access to the Microsoft Developers Network software suite, as well as virtually all open source software packages such as apache, python, php, java, mysql, hadoop, etc.
Students should have the ability to build a simple web page and be proficient with common Microsoft office business applications, including ACCESS. There will be light programming used as examples of how to build dynamic web pages and mobile apps.
The special requirements of social media sites will be discussed, and the hadoop system and its related tools used as an example of how to handle Big Data with very large data sets.
Course Requirements: There will be several small homework assignments, an on-line quiz, a mid-term exam, and a final (group) project.
The group projects must be implemented in the Stern Sandbox cloud.
Grades will be based on homeworks (20%), Mid-term/Quizzes (30%), Final project (30%), and class participation (20%). Please bring name tags to class.
Week |
Topic(s) |
Concepts/Activities |
Readings |
|
1 |
Introduction, course overview |
Review of Client Server Computing model, review of web protocols, standards, what is an IT architecture?
|
See Web Outline |
|
2 |
Web page development |
HTML, Dreamweaver, Front Page, |
See Web Outline |
|
2 |
Common Gateway Interface (CGI) model |
Examples, Overview of server side scripting languages, PERL, PHP, ASP
How do we enable web and mobile users to run applications
|
See Web Outline |
|
3 |
Cloud Computing |
The advantages and disadvantages of cloud computing will be discussed, and a demonstration of the Stern Cloud will be given.
Sample servers will be built and deployed….
Students will access the demo servers using Remote Desktop or Xwindows clients |
See Web Outline |
|
4 |
Unix as a web platform |
Advantages and disadvantages, popular platforms (Apache, Iplanet, Solaris, SGI, Linux), introduction to Unix tools and concepts (Shell language)
Demo of a shell program as part of a web/mobile app |
See Web Outline |
|
4 |
Unix / Linux Application development approaches |
Java Servlets, Java Server Pages, web services, application servers, fast CGI, mod Perl etc. (possible speaker ).
|
See Web Outline |
|
4 |
The Windows Server Platform |
IIS overview - Active Server Pages, Front Page, How do we integrate other toolsets (PERL, PHP, Java etc.) Windows development tools, MSSQL, Visual Studio etc.; Overview of the Microsoft .NET initiative? (possible Microsoft speaker)
|
See Web Outline |
|
5 |
Review of Relational Data Base concepts
|
E/R models, normalization, SQL, remote access client/server methods (ODBC, JDBC). How do we access data bases from the web and mobile devices?
|
See Web Outline |
|
6 |
Mid-term Exam
Discussion of projects |
|
|
|
7, 8 |
Mobile Apps |
What do we need to build mobile apps? Apple Iphone SDK, Android SDK Homework, build an APP for IPHONE or ANDROID |
See Web Outline |
|
9 |
Tools for building data driven applications |
ODBC, CGI, JDBC, XML, Java, ASP, Perl, PHP, Cold Fusion, SQL Server, Oracle 8i, MySQL
How similar are the different systems?
|
See Web Outline |
|
10 |
Big Data Solutions |
Google file System, Map Reduce, Hadoop Demo Where does the data come from? Data requirements of Social Media sites. |
See Web Outline |
|
10 |
Map Reduce Programming |
.Map Reduce, HBASE, HIVE, PIG and other Big Data tools for managing petabytes of data
|
|
|
11 |
Course Review, Project discussions |
|
|
|
12 |
Final Projects |
Project Presentations with Food and Drink |
|
|
13 |
|
Final Projects Due |
|