Starting Date 5/19/2018
Complete Date 7/7/2018
Lecturing time Friday 7:30 PM to 10:00 PM
Saturday 1:30 pm to 5:00 PM
Place 1601 McCarthy Blvd., Milpitas, CA 95035

COURSE DESCRIPTION Python has been used in many technical fields, especially for AI programming. This course will introduce the learner to the basics and some advanced features of the python programming, and prepare students for the AI programming and big data applications.

This course will also guide the students to practice the programming of gRPC and protocol buffers. The gRPC is a modern, open source remote procedure call (RPC) framework that can run anywhere. It enables client and server applications to communicate transparently, and makes it easier to build connected systems.

The gRPC can use protocol buffers as both its IDL(interface definition language) and as its underlying message interchange format. Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler.

The gRPC and Protocol buffers are Google’s core technologies for a long time. It’s open to public in recent years. The current implementation is being used in several of Google’s cloud products and Google externally facing APIs. Through this course, students will learn basic hands-on Python skills, be able to solve practical client-server programming with Python, and be ready for AI projects with Python.

The class will cover the basic Python, including:
  • String
  • List
  • Set
  • Dictionary
  • Tuple
  • Concept of mutable and immutable
  • Sequence
  • Function
  • Control flow
  • File I/O
  • Sorting algorithm
  • Module Class
  • Union-Find Solutions
  • RegEx
And advanced Python, including:
  • Data structure and Algorithm
  • Priority Queue Algorithm
  • Iterators and Generators
  • Decoration
  • Class in depth
  • Introduction to Numpy
  • Concurrency in Python

Big Data including: Big data storage & analytics. Big Data are data sets that are so voluminous and complex that traditional data-processing application software are inadequate to deal with them. In this part, you will learn the big data problems in the real world and many data-processing applications developed in the past fifteen years to address these problems. You will learn the key concepts of big data and distributed systems, and will also have hands-on experiences in using these systems. The following topics will be covered in this part:

  • Overview and Review of Structured Query Language (SQL).
  • Hadoop and MapReduce—Making of Big Data Processing Applications
  • Apache Hive and SQL on Big Data.
  • Big Data Storage—HBase and Cassandra.
  • Streaming: Real-time Big Data Processing
  • Machine Learning on Big Data
  • Big Data in Clouds.