2020 meeting and projects

From CMEE4K
Jump to navigation Jump to search

2020 calendar

2020 meeting schedule: Jan 25 - Mar 7, and Apr 18 - May 16. Total: 11 sessions. Last session (May 23, 2020) is reserved.
2020 Jan
Date Content Remark / Discuss
3D Modelling and Related Technologies
2020
Jan 25
Feb 1
3D Pen, Printer, and modelling
2020
Feb 8
  • Introduction to OpenSCAD. Editing 3D model.
  • Bring a small object for scanning.

2020
Feb 15
No meeting for Family Day long weekend
2020
Feb 22
Summarize 3D topic, CNC cutter and laser engraving
  • Introduction of 3D printer, layer, G-Code
  • Have a small (laser engraving) demo.

Explained: Laser Engraving, 3D printer, CNC

skipped topics:

Python and AI

Python and AI
2020
Feb 29
Mar 7
Python programming
  • Learning editor Notepad++ and test "Hello World" program
  • Python from Scratch U of Waterloo Python course web site


Reference

2020
Mar 14
to
Arp 11
2020
Apr 18
Introduction of Data Analysis and (AI) Inference Engine.

For this session, the sample codes are stored in this


YouTube video: Install Anaconda Distribution, Python 3.7 64-bit, tensorflow and keras

Computer Networking

Computer Network
2020
Apr 25,
May 2,
May 9
Introduction of computer network (Internet): WAN, LAN, WiFi, DNS, EMail, HTTP, TCP/IP.




May 16 is long weekend. No meeting.

Web Programming

Web Programming
2020
May 23,
May 30

Internet components and workflow

  • HTML, Apache & Tomcat, HTTP protocol, JavaScript
  • CGI programming, JavaScript, JS library

What is LAMP (Linux, Apache, MySQL, PHP)?

Linux ThatIsEz OS
Apache Root directory
MySQL ThatIsEz test MqSQL cmee4k DB connection
YouTube Use phpMyAdmin to create MySQL
cmee4k user ID and design cmee4k DB
PHP ThatIsEz show PHPinfo() information


JavaScript example



Some JavaScript games



Use PHP and MySQL



Reference

University of Waterloo educational web sites

Sidetrack: Create your own web server with Raspberry Pi 4b and host it in your HOME


CGI program and HTTP Protocol

Directly calling CGI program
PHP phpinfo() from root dir http://thatisez.com/phpinfo.php
PHP hello CGI program http://thatisez.com/cgi-bin/hello.php
Python hello CGI program http://thatisez.com/cgi-bin/hello.py
Perl hello CGI program http://thatisez.com/cgi-bin/hello.pl
Run PHP CGI program from user dir http://thatisez.com/simon/hello.php
Calling CGI program from HTML
Simple page http://thatisez.com/simon/simpleForm.html
Page has JavaScript http://thatisez.com/simon/JavaScriptForm.html



Static HTML page and Dynamic JavaScript

  • XML is a Data in tree Structure.
    • XML uses tag <xxx>data</xxx> to represent data entry and sub-entry.
    • XML is expanded to many customized format.
      • HTML is a customize XML tag file.
      • HTML is Tag structure for browser to display these Tag (elements).
        For example: <image>, <href>, <javascript> etc
      • Compare HTML vs XML
    • Each entry has a Collector (points to its children), and a set of Attributes.
  • DOM (Document Object Model) is how XML structure saved in memory.
  • HTML DOM is the GUI Tree Structure in browser memory.
  • HTML does have JavaScript, it is static HTML page.
    Example: http://thatisez.com/simon/simpleForm.html     See the source code
  • JavaScript program in the browser can traverse DOM elements, can change element Attributes, and also the event handler.
Feedback and What is Next?