open:itroadmap

Action disabled: source

IT Roadmap - 資訊技術應用 學習地圖

Last Updated @ 2024/09/22



Software Engineering

  • SWEBOK (Software Engineering Body of Knowledge) v3
    • 15 Knowledge Areas (KAs):
      • Software requirements
      • Software design
      • Software construction
      • Software testing
      • Software maintenance
      • Software configuration management
      • Software engineering management
      • Software engineering process
      • Software engineering models and methods
      • Software quality
      • Software engineering professional practice
      • Software engineering economics
      • Computing foundations
      • Mathematical foundations
      • Engineering foundations
    • Related Disciplines:
      • Computer engineering
      • Systems engineering
      • Project management
      • Quality management
      • General management
      • Computer science
      • Mathematics
  • Fundamentals of Computer Science
    • Discrete Mathematics
    • Data Structure
    • Algorithm
    • Pattern Recognition
    • Compiler
      • Lex / YACC (Yet Another Compiler Compiler)
      • GNU bison
      • ANTLR (ANother Tool for Language Recognition)
    • System Programming
    • Operating System


  • Waterfall Model – System Development Life Cycle (SDLC)
    • Requirements → Design → Implementation → Verification → Maintenance
    • Conception → Initiation → Analysis → Design → Construction → Testing → Production/Implementation → Maintenance.
  • Winston W. Royce's Original Waterfall Model
    1. System and software requirements: captured in a product requirements document
    2. Analysis: resulting in models, schema, and business rules
    3. Design: resulting in the software architecture
    4. Coding: the development, proving, and integration of software
    5. Testing: the systematic discovery and debugging of defects
    6. Operations: the installation, migration, support, and maintenance of complete systems
  • Iterative and Incremental Development 疊代進化式開發
  • Spiral Model 螺旋模型 1
  • Chaos Model 混沌模型
  • V-Model (Software Development)
  • Dual Vee Model
  • Domain-Driven Design (DDD) 領域驅動設計 – an approach to software development for complex needs by connecting the implementation to an evolving model. Premise:
    1. Placing the project's primary focus on the core domain and domain logic;
    2. Basing complex designs on a model of the domain;
    3. Initiating a creative collaboration between technical and domain experts to iteratively refine a conceptual model that addresses particular domain problems.
  • Agile Software Development 敏捷軟體開發
    • Scrum
    • Pair Programming 結對程式設計
    • Continuous Integration (CI) 持續整合
    • Extreme Programming (XP) 極限編程
    • Roles: Product owner, Development team, Scrum master
    • Workflow: Sprint Planning, Daily Scrum, Sprint Review and Retrospective
  • Extreme Programming Practices
    • Fine-Scale Feedback
      • Pair Programming
      • Planning Game
      • Test-Driven Development (TDD)
      • Whole Team
    • Continuous Process
      • Continuous Integration
      • Refactoring or Design Improvement
      • Small Releases
    • Shared Understanding
      • Coding Standards
      • Collective Code Ownership
      • Simple Design
      • System Metaphor
    • Programmer Welfare
      • Sustainable Pace
  • Unified Process (UP)
  • Rational Unified Process (RUP)
  • Life-cycle Management
    • Application Life-cycle Management (ALM)
    • Product Life-cycle Management (PLM)
  • Web Accessibility (網頁親和力、網頁無障礙、網頁下載加速)
    • W3C - WCAG (Web Content Accessibility Guidelines) v2.0 v2.1 Draft
      • WAI - ARIA (Web Accessibility Initiative – Accessible Rich Internet Applications) –
        specifies how to increase the accessibility of web pages, in particular, dynamic content, and user interface components developed with Ajax, HTML, JavaScript, and related technologies.
      • ATAG (Authoring Tool Accessibility Guidelines)
    • AMP (Accelerated Mobile Pages) – AMP is optimised for mobile web browsing and intended to help webpages load faster. AMP pages may be cached by a CDN, such as Microsoft Bing or Cloudflare's AMP caches, which allows pages to be served more quickly.
    • Reference: 1.wiki2.Google3.Berkeley4.blog5.NCC


  • Object-Oriented Programming (OOP)
  • Object-Oriented Design (OOD)
  • Architectural Patterns (Software)
    • Model 1
    • Model 2 (Web MVC) by Sun Microsystems, 1999 – e.g.: Rails, ASP.Net, Struts
    • MVC (Model–View–Controller) – e.g.: Backbone.js
      • Observer Pattern ? 1, 2
    • MVW (Model - View - Whatever)
      • MVP (Model–View–Presenter) – e.g.: Android
      • MVVM (Model–View–ViewModel) – e.g.: JavaScript, Node.js
      • MTV (Model–Template–View) – e.g.: Python Django
  • Design Patterns
    • Creational
      • Singleton
    • Structural
    • Behavioral
  • Transaction Pattern - an approach to constructing user transactions
  • Model Driven Architecture (MDA)


  • DevOps (a clipped compound of “development” and “operations”)
    • Definition
      • A software development and delivery process that emphasizes communication and collaboration between product management, software development, quality assurance (QA), and operations professionals.
      • It supports this by automating and monitoring the process of software integration, testing, deployment, and infrastructure changes by establishing a culture and environment where building, testing, and releasing software can happen rapidly, frequently, and more reliably.
    • CI/CD (Continuous Integration / Continuous Delivery or Deployment) Tools
      Continuous Delivery and Release Management
      • Jenkins - an open source automation server, provides hundreds of plugins to support building, deploying and automating any project.
      • Ansible - Ansible delivers simple IT automation that ends repetitive tasks and frees up DevOps teams for more strategic work.
      • Drone
      • GitLab
      • GitHub
      • Travis CI
  • Type of Developer
    • 前端 Front-end Developer
    • 後端 Back-end Developer
      • Layers of the full stack:
        1. Server, Network, and Hosting Environment.
        2. Data Modeling
        3. Business Logic
        4. API layer / Action Layer / MVC
        5. User Interface
        6. User Experience
        7. Understanding what the customer and the business need.
      • Other Pieces of the Puzzle:
        1. Ability to write quality unit tests. By the way, even JavaScript can have unit tests these days.
        2. Understanding of repeatable automated processes for building the application, testing it, documenting it, and deploying it at scale.
        3. An awareness of security concerns is important, as each layer presents its own possible vulnerabilities.
  • The 12 Factors – a Methodology for Building SaaS Apps. (epub)
    1. Codebase - One codebase tracked in revision control, many deploys
    2. Dependencies - Explicitly declare and isolate dependencies
    3. Config - Store config in the environment
    4. Backing services - Treat backing services as attached resources
    5. Build, release, run - Strictly separate build and run stages
    6. Processes - Execute the app as one or more stateless processes
    7. Port binding - Export services via port binding
    8. Concurrency - Scale out via the process model
    9. Disposability - Maximize robustness with fast startup and graceful shutdown
    10. Dev/prod parity - Keep development, staging, and production as similar as possible
    11. Logs - Treat logs as event streams
    12. Admin processes - Run admin/management tasks as one-off processes


  • ICS (Industrial Control System)
  • OT (Operation Technology)


  • PMI (Project Management Institute)
    • PMP (Project Management Professional)
      • PMBOK (Project Management Body of Knowledge) Guide and Standards
      • The 10 Knowledge Areas:
        • Integration Management, Project Scope Management, Project Time Management, Project Cost Management, Project Quality Management, Project Human Resource Management, Project Communications Management, Project Risk Management, Project Procurement Management, and Project Stakeholder Management.
    • CAPM (Certified Associate in Project Management) – an entry-level certification for project practitioners.
    • ACP (Agile Certified Practitioner)
  • CMMI Institute – a subsidiary of ISACA
    • CMMI (Capability Maturity Model Integration) – a globally-recognized set of best practices that enable organizations to improve performance, key capabilities, and critical business processes.
      • Initial > Managed > Defined > Quantitatively Managed (measured & controlled) > Optimizing
    • DMM (Data Management Maturity) – Build, improve, and measure your Enterprise Data Management Program.



Tools

  • WIKI syntax
    • Wiki.js – The most powerful and extensible open source Wiki software.
      • Requirements: PostgreSQL 9.5 or later, Node.js 10.12 or later)
  • WYSIWYG Editor
    • Matterwiki – A simple and beautiful wiki for teams.
  • Markdown Web Editor
    • MkDocs – Project documentation with Markdown.
    • StackEdit – In-browser Markdown editor
      • GitHub Source – Full-featured, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.
    • Notion.so – The all-in-one workspace for your notes, tasks, wikis, and databases. :!:
    • HackMD – 用即時協作的 Markdown 編輯器書寫[團隊/技術/專案]文件,讓你快速協作、輕鬆紀錄想法、隨時共享知識。
    • Editor.md – 开源在线 Markdown 编辑器
    • MDWiki – a CMS/Wiki completely built in HTML5/Javascript and runs 100% on the client.
    • Jingo (Node.js) – The aim of this wiki engine is to provide an easy way to create a centralized documentation area for people used to work with git and markdown.
    • Raneto – Raneto is a free, open, simple Markdown powered Knowledgebase for Node.js.
  • App Editor
    • typora.io – Typora gives you a seamless experience as both a reader and a writer.
  • App + SaaS
    • Simplenote – The simplest way to keep notes. Light, clean, and free. Simplenote is now available for iOS, Android, Mac, Windows, Linux, and the web.
    • Notion – a project management and note-taking software.
  • Document Converter
    • Pandoc – A universal document converter. If you need to convert files from one markup format into another, pandoc is your swiss-army knife.


  • LayoutIt! – Interface Builder for CSS Grid and Bootstrap
  • Material Design – an adaptable system of guidelines, components, and tools that support the best practices of user interface design.


  • Mockup Tool
  • Website/Pages Builder/Creator 1
    • Open Source
      • WordPress – Open Source CMS & eCommerce Web Platform
      • Elementor – The Best Website Builder Plugin for WordPress
      • GrapesJS – Multi-purpose Open-source Web Builder Framework
      • Symfony – Free Open Source Web Design Software
    • Try & Pay
      • Wix – The Best FREE SaaS Website Builder (drag and drop)



  • API Development
    • Swagger – a suite of tools for API developers 1 2 3
  • Website App Service
    • AppDevTools – Free online developer tools: Text Tools, Formatters, Escape Tools, Validators, Encoders and Decoders, Converters, Image Tools, Network Tools.
    • Jupyter
      • Google CoLab – Colaboratory is a free Jupyter notebook environment that requires no setup and runs entirely in the cloud.
      • Microsoft Azure Notebooks – Develop and run code from anywhere with Jupyter notebooks on Azure.
    • PhantomJS - Scriptable Headless Browser


  • Online Code Editor
    • CodePen – Online Code Editor and Front End Web Developer Community
    • CodeSandbox – Online Code Editor and IDE for Rapid Web Development
    • JSFiddle – an online IDE service and online community for testing and showcasing user-created and collaborational HTML, CSS and JavaScript code snippets, known as 'fiddles'. It allows for simulated AJAX calls.


  • Wokwi - Online Arduino and ESP32 Simulator


  • Enterprise Collaboration Software (Team Work / Team Ware)
    • Slack – a collaboration hub for work, no matter what work you do. It’s a place where conversations happen, decisions are made, and information is always at your fingertips.
    • JANDI


  • Performance / Load Testing 1, 2
    • Open Source
      • Taurus – Automation-friendly framework for Continuous Testing by using YAML
      • Locust – An open source load testing tool in Python.
      • Gatline – Load-Test-As-Code: the best way to load test your applications, designed for DevOps and CI/CD.
      • Appium – Automation for Apps. It drives iOS, Android, and Windows apps using the WebDriver protocol.
      • Apache Selenium – a portable software-testing framework for web applications. (w/ IDE & WebDriver)
      • Robot Framework – a generic open source automation framework for acceptance testing, acceptance test driven development (ATDD), and robotic process automation (RPA).
      • OpenSTA (System Testing Architecture)
      • Fiddler / nGrinder / K6 / Tsung / Siege / Bees with Machine Guns / Fortio / puppeteer-webperf / Flood Element / Artillery
    • Free Options
      • Microsoft WCAT (Web Capacity Analysis Tool)
      • The Grinder – a Java Load Testing Framework
    • Commercial
      • LoadNinja – Performance Testing and Load Testing Tool
      • HP: LoadRunner, Httperf
      • IBM Rational Performance Tester
      • WebLOAD, LoadUI NG Pro, SmartMeter.io, LoadView, Appvance, NeoLoad, LoadComplete, WAPT, Loadster, LoadImpact, Testing Anywhere, QEngine (ManageEngine), Loadstorm, SOASTA CloudTest
      • StresStimulus, NeoLoad
    • Others
      • Postman – Postman's built-in tools offer solutions for managing APIs in every stage of development — designing & mock, testing, documentation and monitoring.
  • SAST (Static Application Security Testing) / Code Audit
    • Open Source
      • FlawFinder, Graudit, Valgrind, JCSC
      • for C/C++ : ITS4, Pscan
      • for Java : DoctorJ
      • for .Net: OWASP Code Crawler
    • Commercial
      • IBM Security AppScan Source
      • Checkmarx CxSAST


  • OAM (Operations, Administration and Management)
  • APM (Application Performance Management)



  • Remote Connect & Take Control
    • Microsoft Terminal Service / RDP (for Windows)
    • RealVNC – The software consists of a server (VNC Server) and client (VNC Viewer) application for the Virtual Network Computing (VNC) protocol to control another computer's screen remotely.
    • MobaXterm – Enhanced terminal for Windows with X11 server, tabbed SSH client, network tools and much more.
      • Remote desktop: use RDP, VNC or XDMCP to display a full remote desktop on your computer
      • Remote session manager: SSH, SFTP, telnet, VNC, Mosh, RDP connections in a single application
      • SSH/SFTP browser: edit and transfer remote files through secured connection


  • @ Self Hosted
    • OwnCast – a free and open source live video and web chat server for use with existing popular broadcasting software.



Language

  • Linux
    • Shell Script: bash, csh
    • C, C++
  • Apple
  • Microsoft
    • Windows PowerShell
    • C, C++, C#
    • F#
    • Visual Basic
  • Google
    • Dart – a client-optimized language for fast apps on any platform
  • Can be run @Apache httpd
  • Based on JVM
    • Kotlin – a statically typed programming language that runs on JVM and also can be compiled to JavaScript source code or use the LLVM compiler infrastructure.
    • Groovy – A multi-faceted language for the Java platform.
  • Data Science
    • R – a free software environment for statistical computing and graphics.
    • MATLAB (Matrix Laboratory) – a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks.
    • Scala (Based on JVM)
    • HDLs, FPGAs (Field Programmable Gate Arrays)
  • Legacy
    • BASIC (Beginners All-Purpose Symbolic Instruction Code)
    • LISP, Fortran, Pascal, ProLog
    • COBOL, IBM RPG (Report Program Generator)
    • Assembly
  • Others
    • Ruby – A dynamic, open source programming language with a focus on simplicity and productivity.
    • Erlang – a programming language used to build massively scalable soft real-time systems with requirements on high availability.
    • Lua – a lightweight, multi-paradigm programming language designed primarily for embedded use in applications.
      Lua is cross-platform, since the interpreter is written in ANSI C,[3] and has a relatively simple C API.
    • Go (Golang) – an open source programming language that makes it easy to build simple, reliable, and efficient software.


  • Java SE /JDK
    • JDK 5 - Annotation
    • JDK 8 - Lambda
  • Nomenclature, standards and specifications
  • General purpose packages
    1. java.lang
    2. java.io
    3. java.nio
    4. java.math
    5. java.net
    6. java.text
    7. java.util
  • Special purpose packages
    1. java.applet
    2. java.beans
    3. java.awt
    4. java.rmi
    5. java.security
    6. java.sql
    7. javax.rmi (Remote Method Invocation)
    8. javax.swing
    9. javax.swing.text.html.parser
    10. javax.xml.bind.annotation
  • OMG packages
    1. org.omg.CORBA
    2. org.omg.PortableInterceptor
  • Critical security issues with the Java SE plugin


  • Java EE
    • Applet - Java Applet
    • EL- Unified Expression Language
    • EJB - Enterprise Java Beans
    • JAAS - Java Authentication and Authorization Service
    • JACC - J2EE Authorization Contract for Containers
    • JAF - Java Beans Activation Framework
    • JAX-RPC - Java API for XML-Based Remote Procedure Calls
    • JAX-RS - Java API for RESTful Web Services
    • JAX-WS - Java API for XML Web Services
    • JAXM - Java API for XML Messaging
    • JAXP - Java API for XML Processing
    • JAXR - Java API for XML Registries
    • JCA - J2EE Connector Architecture
    • JDBC - Java Database Connectivity
    • JMS - Java Message Service
    • JMX - Java Management
    • JNDI - Java Naming and Directory Interface
    • JSF - Java Server Faces
    • JSP - Java Server Pages
    • JSTL - Java Server Pages Standard Tag Library
    • JSON-P - Java API for JSON Processing
    • JPA - Java Persistence API
    • JTA - Java Transaction API
    • JavaMail
    • Managed Beans
    • Servlet - Java Servlet API
    • StAX - Streaming APIs for XML Parsers
    • WebSocket - Java API for WebSocket
    • WS - Web Services
  • Web Profile Specification
Specification Version
Java EE 6 Java EE 7 Java EE 8
Servlet 3.0 3.1 4.0
JavaServer Pages (JSP) 2.2 2.3 2.3
Unified Expression Language (EL) 2.2 3.0 3.0
Debugging Support for Other Languages (JSR-45) 1.0 1.0 1.0
JavaServer Pages Standard Tag Library (JSTL) 1.2 1.2 1.2
JavaServer Faces (JSF) 2.0 2.2 2.3
Java API for RESTful Web Services (JAX-RS) 1.1 2.0 2.1
Java API for WebSocket (WebSocket) n/a 1.0 1.1
Java API for JSON Processing (JSON-P) n/a 1.0 1.1
Common Annotations for the Java Platform (JSR-250) 1.1 1.2 1.3
Enterprise JavaBeans (EJB) 3.1 Lite 3.2 Lite 3.2
Java Transaction API (JTA) 1.1 1.2 1.2
Java Persistence API (JPA) 2.0 2.1 2.2
Bean Validation 1.0 1.1 2.0
Managed Beans 1.0 1.0 1.0
Interceptors 1.1 1.2 1.2
Contexts and Dependency Injection for the Java EE Platform 1.0 1.1 2.0
Dependency Injection for Java 1.0 1.0 1.0


  • Scratch – the world’s largest coding community for children and a coding language with a simple visual interface.
  • Blockly – a library for building visual programming editors. e.g: Games


  • HTML (HyperText Markup Language)
    • HTML5 & Web 2.0
      • Canvas
    • Optional Matadata
  • XML (eXtensible Markup Language)
  • XHTML (eXtensible HyperText Markup Language)
  • DHTML (Dynamic HTML)
  • WML (Wireless Markup Language)
  • XSD (XML Schema Definition)
  • XSL (Extensible Stylesheet Language)
    • XSLT (XSL Transformation)
    • XSL-FO (XSL Formatting Objects)
    • XPath (XML Path Language, a non-XML language used by XSLT)
  • XML Application
    • RSS (Really Simple Syndication / Rich Site Summary)
    • XUL (XML User Interface Language)
    • GML (Geography Markup Language) - by OGC (Open Geospatial Consortium)
  • PMML (Predictive Model Markup Language) - an XML-based predictive model interchange format.
  • KML (Keyhole Markup Language) - an XML notation for expressing geographic annotation and visualization within Internet-based, two-dimensional maps and three-dimensional Earth browsers.


  • JSON – JavaScript Object Notation
    • GeoJSON – a format for encoding a variety of geographic data structures.
  • YAML – Ain't a Markup Language / Yet Another Markup Language


  • DOM (Document Object Model)
  • JavaScript
    • JSON (JavaScript Object Notation)
    • AJAX (Asynchronous JavaScript and XML)
  • Cross-Website Request
    • CORS (Cross-Origin Resource Sharing, 跨來源網域資源共享) 1
    • JSONP (JSON with Padding or Prefix) 1
  • VBScript @IE
  • SSI (Server Side Includes) 1
  • CGI (Common Gateway Interface)
    • CGI/PERL
    • CGI/C
  • PHP
    • SQL Support: PDO (PHP Data Objects) / MySQLi() / ADOdb
  • Perl
  • Python
  • ColdFusion


  • UX (User Experience)
    • CSS (Cascading Style Sheets)
    • CSS Preprocessor/ Syntax / Language
    • RWD (Responsive Web Design)
      • Media Query, Viewport. 1
  • Rich Internet Applications
    • MIME (Multipurpose Internet Mail Extensions)
    • SVG (Scalable Vector Graphics)
    • Canvas
    • Flash, ActionScript, Flex
  • True Type Font (Free Fonts) 1
    • :?:
  • Color Space
    • RGB (Red, Green, Blue)
    • HEX (# Hexadecimal Value of RGB)
    • HSL (Hue 色調 = 0 ~ 360, Saturation 飽和度 = 0% ~ 100%, Lightness 亮度 = 0% ~ 100%)
    • HWB (Hue 色調 = 0 ~ 360, Whiteness 白度 = 0% ~ 100%, Blackness 黑 = 0% ~ 100%)
    • CMYK (Cyan 青 = 0% ~ 100%, Magenta 洋紅 = 0% ~ 100%, Yellow 黃 = 0% ~ 100%, Black 黑 = 0% ~ 100%)
  • Design Trends
    • Awwwards – The Website Awards that recognize and promote the talent and effort of the best developers, designers and web agencies in the world.



Application Framework

  • Node.js
    • Bundler / Bundling Tool
      • WebPack – Webpack is used to compile JavaScript modules. Once installed, you can interface with webpack either from its CLI or API.


  • Web Application Framework
    • AngularJSAngular (by Google) 1
    • React (React.js / ReactJS) – an open-source JavaScript library providing a view for data rendered as HTML.
      • JSX – a statically-typed, object-oriented programming language designed to run on modern web browsers.
    • Vue.js – A progressive, incrementally-adoptable JavaScript framework for building UI on the web. Single-Page Application (SPA). Vue School
    • Vue CLI – 🛠️ Standard Tooling for Vue.js Development
  • Solution Stack
    • MEAN.io – An opinionated fullstack javascript framework - which simplifies and accelerates web application development.
    • MEAN.js – Open-Source Full-Stack Solution For MEAN Applications using MongoDB, Express, AngularJS, and Node.js. 1
    • MERN Stack – (MongoDB, Express, React.js, Node) 1 2
    • MEVN – (MongoDB, Express, Vue, Node)
  • Graphics / Animation / Game
    • WebGL – a low-level 3D graphics API based on OpenGL ES, exposed to ECMAScript via the HTML5 Canvas element.
    • Three.js – JavaScript 3D Library.
    • Phaser – a free software 2D game framework for making HTML5 games for desktop and mobile.


  • Flutter – an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase.
  • React Native – an open-source mobile application framework created by Facebook. It is used to develop applications for Android, Android TV, iOS, macOS, tvOS, Web, Windows and UWP.
    • Expo – Build one project that runs natively on all your users' devices
  • Apache Cordova - Mobile apps with HTML, CSS & JS. Target multiple platforms with one code base. Free and open source.
  • App Inventor – a web application integrated development environment originally provided by Google, and now maintained by the MIT. It allows newcomers to computer programming to create application software (apps) for two operating systems (OS): Android, and iOS.
  • Thunkable – enables anyone to create beautiful and powerful mobile apps.
  • PWA (Progressive Web Application)
  • Template Engine
    • Java-based
      • Apache Velocity – a Java-based template engine. It permits anyone to use a simple yet powerful template language to reference objects defined in Java code.
    • JavaScript-based
      • ?


    • Socket.IO – a library that enables real-time, bidirectional and event-based communication between the browser and the server.
    • Express.js – Fast, unopinionated, minimalist web framework for Node.js
    • Koa.js – next generation web framework for node.js
    • Mongoose – a Object Data Modeling (ODM) library for MongoDB distributed as an npm package.


  • Java VM (JDK) Framework
    • OpenXava – an AJAX Java framework for rapid development of enterprise web applications.
    • Grails – A powerful Groovy-based web application framework for the JVM.
    • JRuby – an implementation of the Ruby programming language atop the Java Virtual Machine.


  • Java EE Web Application Development Framework
    • Major
    • Others
      • ZK Framework – for building amazing enterprise web and mobile applications.
      • Play – The High Velocity Web Framework For Java and Scala.
      • Apache Tiles 3 – A free open-sourced templating framework for modern Java applications. Based upon the Composite pattern it is built to simplify the development of user interfaces.
  • Java Object-Relational Mapping (ORM)
    • iBATISMyBatis 3 – a first class persistence framework with support for custom SQL, stored procedures and advanced mappings.


PHP


Python

  • Web Apps
      • Flask-RESTful – an extension for Flask that adds support for quickly building REST APIs. 1
      • Django makes it easier to build better Web apps more quickly and with less code.
      • Django REST Framework
      • Djongo – Host Django Apps on a MongoDB database.
  • Library / Package / Extension / Framework :
    • PyPI – The Python Package Index
    • Scrapy – An open source and collaborative framework for extracting the data you need from websites.
    • Celery – an asynchronous task queue/job queue based on distributed message passing.
    • Turtle – The turtle has three attributes: a location, an orientation (or direction), and a pen. The pen, too, has attributes: color, width, and on/off state.
    • PyGame – a cross-platform set of Python modules designed for writing video games. It includes computer graphics and sound libraries.
    • Pymunk – easy-to-use pythonic 2d physics library that can be used whenever you need 2d rigid body physics from Python.


Microsoft

  • ASP, ASP.Net
    • SignalR (by WebSocket)





Middle Ware

  • DNS
    • Linux named, PowerDNS
    • FQDN (Fully Qualified Domain Name)
    • PunyCode - a representation of Unicode with the limited ASCII character subset used for Internet host names.
  • FTP
    • vsFTP
  • Network File System
    • CIFS (Common Internet File System)
      SMB (Server Message Block, ©Samba) @NetBIOS
    • NIS (Network Information Services) @RPC
    • autofs


  • Event-Driven I/O Server-Side JavaScript Environment
      • npm (node package manager)
      • Grunt (Task Runner)
  • Web Container / Proxy
    • AJP (Apache JServ Protocol)
      • mod_proxy_ajp
      • mod_jk
    • HA (High Availability)
      • Clustering
      • Load Balancing
      • Session Replication
      • Fail-Over
  • Solution Stack Package / Installer
    • XAMPP (LinuX + Apache + MariaDB + PHP + Perl) – for Win/Mac/Linux
    • WAMP (Windodws + Apache + MySQL + PHP/Perl/Python) – for Win/Mac/Linux by bitnami
    • MAMP – (MacOS/Windows + Apache/Nginx + MySQL/MarianDB? + PHP/Python/Perl/Ruby) – for Win/Mac
    • LAMP (Linux + Apache + MySQL + PHP/Perl/Python)


  • EAI (Enterprise Application Integration)
  • ESB (Enterprise Service Bus)
  • SOA (Service-Oriented Architecture)
  • Microservices – a variant of SOA architectural style that structures an application as a collection of loosely coupled services. In a microservices architecture, services are fine-grained and the protocols are lightweight.
  • Technology
    • Web Services
      1. REST (Representational State Transfer) RESTful Web Service / Web API / HTTP
        • Architectural Properties: Performance, Scalability, Simplicity, Modifiability, Visibility, Portability, Reliability
        • Architectural Constraints: Client-Server, Statelessness, Cacheability, Layered System, Code-On-Demand, Uniform Interface
      2. SOAP (Simple Object Access Protocol)
      3. XML-RPC
    • WSDL (Web Services Description Language)
    • UDDI (Universal Description, Discovery and Integration)
    • BPEL (Business Process Execution Language)
    • BPM (Business Process Management)
    • Work Flow
    • Web Form
    • Rule Engine
    • Task Manager
  • Services Framework Solutions
    • Oracle
      • WebLogic SOA
      • Oracle BPM Suite
    • Red Hat
      • JBoss Fuse / FSW (Fuse Serive Works)
    • Apache Software Foundation
      • Apache Axis – A Web Service containers that helps users to create, deploy, and run Web Services.
      • Apache Axis2 – A Web Services / SOAP / WSDL engine, the successor to the widely used Apache Axis SOAP stack. (Axis2/Java and Apache Axis2/C)
      • Apache CXF – Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS and JAX-RS.
      • Apache ActiveMQ – The most popular and powerful open source messaging and Integration Patterns server.
      • Apache Camel – A versatile open-source integration framework based on known Enterprise Integration Patterns.
    • Microsoft
      • COM (Component Object Model) / DCOM (Distributed COM)
      • ActiveX
      • OLE (Object Linking and Embedding)
    • Others
      • RabbitMQ (by Erlang) – Implement AMQP (Advanced Message Queuing Protocol)
      • Agentflow BPM
      • Alfresco BPM


  • Microservice API Gateway / API Middleware / API Management Platform
    • Open Source: Overview
      • GraphQL – an open-source data query and manipulation language for APIs, and a runtime for fulfilling queries with existing data.
        • Client Side:
          1. Relay – A JavaScript framework for building data-driven React applications
          2. Apollo Client – Apollo Client is the best way to use GraphQL to build client applications. The client is designed to help you quickly build a UI that fetches data with GraphQL, and can be used with any JavaScript front-end.
      • 3scale API Management Platform - Unlock the power of your APIs. No other solution offers so much power, ease, and flexibility in such a cost effective way.
      • WSO2 API Management - a 100% open source enterprise-class solution that supports API publishing, lifecycle management, application development, access control, rate limiting and analytics in one cleanly integrated system.
      • Kong - The open-source API Gateway and Microservices Management Layer, delivering high performance and reliability. Kong runs in front of any RESTful API and is extended through Plugins, which provide extra functionality and services beyond the core platform.
      • Tyk - an open source API Gateway that is fast, scalable and modern. Out of the box, Tyk offers an API Management Platform with an API Gateway, API Analytics, Developer Portal and API Management Dashboard.
      • API Umbrella - a proxy that sits in front of your APIs. It can seamlessly add common functionality like api keys, rate limiting, and analytics to any API.
    • Commercial Product:
  • Data Pipelines / Streaming / Distributing / Workflows
    • Open Source:
      • Apache Kafka – used for building real-time data pipelines and streaming apps. It is horizontally scalable, fault-tolerant, wicked fast.
      • Apache NiFi – supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
      • Apache Airflow – a platform to programmatically author, schedule and monitor workflows.


  • ACID – properties of database transactions intended to guarantee data validity despite errors, power failures, and other mishaps.
    • Atomicity – guarantees that each transaction is treated as a single “unit”, which either succeeds completely, or fails completely
      • Transaction be “all or nothing”: Commit, Roll back.
    • Consistency – ensures that a transaction can only bring the database from one valid state to another
      • Transaction Rules: Constraints, Cascades, Triggers.
    • Isolation – ensures that concurrent execution of transactions leaves the database in the same state.
        • Read uncommitted, Read committed, Repeatable read, Serializable.
        • Failure: Write-Write Conflict, Write–Read Conflict, Read-Write Conflict
        • 2PL (Two-Phase Locking)
    • Durability – guarantees that once a transaction has been committed, it will remain committed even in the case of a system failure
  • Column-Oriented Distributed Data Store
    • Druid
  • NoSQL
    • Document Database:
    • In-memory Database:
      • Redis (REmote DIctionary Server) – in-memory data structure store.
      • Memcached, Velocity, Tuple space
    • Key-Value Database:
    • Graph Database:
      • Neo4j, InfoGrid, AllegroGrph
  • Object Mapping
    • ODM (Object Document Mapping)
    • ORM (Object Relational Mapping)


  • DW (Data Warehousing)
  • OLAP / MOLAP (Multi-dimensional On-Line Analytical Processing)
    • Commercial Product
      • Microsoft Database Analysis Services
      • IBM Cognos
      • Oracle Database OLAP Option, Essbase, Hyperion
      • SAP Business Objects, AG, Cartesis
      • SAS OLAP Server
      • Infor BI OLAP Server
    • Open Source



  • Open Source:
    • GeoTools - an open source (LGPL) Java code library which provides standards compliant methods for the manipulation of geospatial data.
    • PostGIS - PostGIS adds support for geographic objects to the PostgreSQL object-relational database.
  • Commercial Product:
      • Format: Shapefiles - shp, shx, dbf
    • MapInfo
  • LBS (Location-Based Service) – a software-level service that uses location data to control features.
  • RTLS (Real-Time Location Systems) – used to automatically identify and track the location of objects or people in real time, usually within a building or other contained area.
    • Ranging and angulating
      • Angle of arrival (AoA)
      • Line-of-sight (LoS)
      • Time of arrival (ToA)
      • Multilateration (Time difference of arrival) (TDoA)
      • Time-of-flight (ToF)
      • Two-way ranging (TWR) according to Nanotron’s patents
      • Symmetrical Double Sided – Two Way Ranging (SDS-TWR)
      • Near-field electromagnetic ranging (NFER)


  • EIP (Enterprise Information Portal)
  • ECM (Enterprise Content Management) / CMS (Content Management System) / CMF (Content Management Framework)
  • KM (Knowledge Management) / PKM (Personal Knowledge Management)
  • Open Source
    • WordPress @php - web software you can use to create a beautiful website, blog, or app.
    • Joomla! @php - an award-winning content management system (CMS), which enables you to build Web sites and powerful online applications.
    • Drupal @php - content management platform
    • OpenCms @java - a professional, easy to use website content management system.
    • uPortal @java, by Apereo (formerly Jasig) - enterprise portal framework built by and for the higher education community
    • Plone CMS @python - A powerful, flexible Content Management Solution that is easy to install, use and extend.
    • OpenKM Community @java - Document Management System
    • Liferay Portal CE @java - Create and connect personalized digital experiences across web, mobile and connected devices.


  • Mail Service
  • MTA (Mail Transfer Agent)
    • smtp
      • Linux:
      • Microsoft: Exchange Server
    • pop3, imap4
      • Linux: Dovecot
      • Microsoft: Exchange Server
  • MDA (Mail Delivery Agent)
    • Mail Filter (Open Source)
    • Anti-Spam / Anti-Virus
      • Open Source: SpamAssassin, RadicalSpam, Scrollout, MailScanner, ASSP (Anti-Spam SMTP Proxy Server)
      • Commercial Product: CelloPoint, OpenFind
  • MUA (Mail User Agent)
    • Commercial Product
      • Microsoft Outlook, Outlook Express
    • Web Mail
      • SquirrelMail
      • Open WebMail
    • Application Package (Open Source)


  • DKIM (DomainKeys Identified Mail 網域驗證郵件) – 用來防止郵件內容遭到竄改
  • DMARC (Domain-based Message Authentication, Reporting & Conformance) – 用來輔助 SPF 與 DKIM 的不足
  • Anti-SPAM
    • Solutions
      • CBL - Composite Blocking List
      • SORBS - Spam and Open-Relay Blocking System
      • Postgrey - Postfix Greylisting Policy Server


  • SMS Protocol
    • SMPP (Short Message Peer-to-Peer)
  • IM (Instant Message) / LAN Messenger
    • Protocol
      • SIP (Session Initiation Protocol) / SIMPLE (Instant Messaging Protocol)
      • TOX (based on DHT)
      • XMPP (Extensible Messaging and Presence Protocol) / Jingle (Google Talk)
    • Commercial Production
      • Google Talk, Apple iChat, Microsoft Skype / MSN, WeChat, Line
    • Open Source
      • Miranda IM (for Microsoft Windows), Pidgin (software) (multi-platform), Output Messenger
  • Open Source
    • Discourse (Internet forum & mailing list management)


  • VoIP (Voice over Internet Protocol, also Voice over IP, VoIP or IP telephony)
  • PSTN (Public Switched Telephone Network)
  • CTI (Computer telephony integration)



Infrastructure

  • BIOS (Basic Input/Output System)
  • EFI / UEFI (Unified Extensible Firmware Interface) BIOS


  • X Window System – an architecture-independent system for remote graphical user interfaces and input device capabilities.
    • X.Org – The X.Org project provides an open source implementation of the X Window System.
    • X Server – a display server for the X Window System
      • MobaXterm – Enhanced terminal for Windows with X11 server, tabbed SSH client, network tools and much more.
      • X.Org Server – the free and open-source implementation of the display server for the X Window System stewarded by the X.Org Foundation.
      • Cygwin/X (for Windows)
      • XQuartz (for Mac OS)
  • UNIX
    • HP-UX
    • IBM AIX
  • Apple
    • MAC OS
    • iOS
  • Microsoft
    • DOS
    • Windows 95/98/XP/Vista/7/8/10/11
    • Microsoft Windows Server NT/2000/2003/2008/2012/2016/2019/2022
  • Google
    • Android


  • Hypervisor / Virtual Machine Monitor (VMM) – computer software, firmware or hardware that creates and runs virtual machines.
    1. Type-1, native or bare-metal hypervisors
    2. Type-2 or hosted hypervisors
  • Virtual Machine (VM) - Cloud Computing Virtualization Operating System
    • Red Hat
      • KVM : Host @Linux
    • Xen : @Linux,Solaris
    • QEMU : Host @AnyOS
    • Microsoft
      • Hyper-V : Host @WindowsOnly
      • Virtual PC : Host @WindowsOnly, File: *.VHD
      • System Center - Virtual Machine Manager
    • Oracle
      • Oracle VM : Host @BareMetal
      • VirtualBox : by Oracle, Host @AnyOS
    • VMware
      • VMware vSphere
      • VMware ESX/ESXi Server: Host @BareMetal
      • VMware Fusion : Host @MacOS
      • VMware Server : Host @Windows,Linux
      • VMware Workstation & Player : Host @Windows,Linux , File: *.VMDK
    • DOS
      • DOSBOX : Host @AnyOS, Guest: DOS only
      • DOSEMU : Host @Linux, Guest: DOS only


  • Software Container Platform (Operating-System-Level Virtualization)
    • LXC (Linux Container)
    • Docker – a set of platform-as-a-service (PaaS) products that use OS-level virtualization to deliver software in packages called containers.
    • Kubernetes (K8s) - an open-source system for automating deployment, scaling, and management of containerized applications. (Production-Grade Container Orchestration)


  • Cloud Computing
    • Service Models:
      • Infrastructure as a Service (IaaS)
      • Platform as a Service (PaaS)
      • Software as a Service (SaaS)
      • Security as a Service (SECaaS)
      • Mobile “backend” as a Service (MBaaS)
      • Serverless Computing
    • Deployment Models:
      • Private Cloud
      • Public Cloud
      • Hybrid Cloud
      • Others
        • Community Cloud
        • Distributed Cloud
        • Intercloud
        • Multicloud
  • OpenStack – The Open Source Cloud Operating System
    • Reference:
    • Distributions:
    • Components:
      1. Compute (Nova)
      2. Networking (Neutron)
      3. Block storage (Cinder)
      4. Identity (Keystone)
      5. Image (Glance)
      6. Object storage (Swift)
      7. Dashboard (Horizon)
      8. Orchestration (Heat)
      9. Workflow (Mistral)
      10. Telemetry (Ceilometer)
      11. Database (Trove)
      12. Elastic map reduce (Sahara)
      13. Bare metal (Ironic)
      14. Messaging (Zaqar)
      15. Shared file system (Manila)
      16. DNS (Designate)
      17. Search (Searchlight)
      18. Key manager (Barbican)


  • OpenCL (Open Computing Language) – the open, royalty-free standard for cross-platform, parallel programming of diverse processors found in personal computers, servers, mobile devices and embedded platforms.
  • CUDA (Compute Unified Device Architecture) – a parallel computing platform and programming model developed by NVIDIA for general computing on graphical processing units (GPUs).


  • Apache Hadoop v3.1.3
    • Module
      • Hadoop Common: The common utilities that support the other Hadoop modules.
      • Hadoop Distributed File System (HDFS): A distributed file system that provides high-throughput access to application data.
      • Hadoop YARN: A framework for job scheduling and cluster resource management.
      • Hadoop MapReduce: A YARN-based system for parallel processing of large data sets.
      • Hadoop Ozone: An object store for Hadoop.
      • Hadoop Submarine: A machine learning engine for Hadoop.
    • Project
      • Ambari: A web-based tool for provisioning, managing, and monitoring Apache Hadoop clusters which includes support for Hadoop HDFS, Hadoop MapReduce, Hive, HCatalog, HBase, ZooKeeper, Oozie, Pig and Sqoop. Ambari also provides a dashboard for viewing cluster health such as heatmaps and ability to view MapReduce, Pig and Hive applications visually alongwith features to diagnose their performance characteristics in a user-friendly manner.
      • Avro: A data serialization system.
      • Cassandra: A scalable multi-master database with no single points of failure.
      • Chukwa: A data collection system for managing large distributed systems.
      • HBase: A scalable, distributed database that supports structured data storage for large tables.
      • Hive: A data warehouse infrastructure that provides data summarization and ad hoc querying.
      • Mahout: A Scalable machine learning and data mining library.
      • Pig: A high-level data-flow language and execution framework for parallel computation.
      • Spark: A fast and general compute engine for Hadoop data. Spark provides a simple and expressive programming model that supports a wide range of applications, including ETL, machine learning, stream processing, and graph computation.
      • Tez: A generalized data-flow programming framework, built on Hadoop YARN, which provides a powerful and flexible engine to execute an arbitrary DAG of tasks to process data for both batch and interactive use-cases. Tez is being adopted by Hive, Pig and other frameworks in the Hadoop ecosystem, and also by other commercial software (e.g. ETL tools), to replace Hadoop MapReduce as the underlying execution engine.
      • ZooKeeper: A high-performance coordination service for distributed applications.
  • MEC (Mobile Edge Computing) - provides a distributed computing environment for application and service hosting. It also has the ability to store and process content in close proximity to cellular subscribers, for faster response time.
  • HPC (High-Performance Computing) - most generally refers to the practice of aggregating computing power in a way that delivers much higher performance than one could get out of a typical desktop computer or workstation in order to solve large problems in science, engineering, or business.


  • NAS (Network Attached Storage)
  • SAN (Storage Area Network)
  • Web Storage / Cloud Storage
    • Open Source
      • NextCloud – Online collaboration platform
      • ownCloud – a suite of client–server software for creating and using file hosting services. ownCloud functionally has similarities to the widely used Dropbox.
    • Commercial


  • Network OSI (Open System Interconnection) Reference Model
    1. Physical Layer
      • DOCSIS, DSL, ISDN, USB, IEEE 802.11
    2. Data Link Layer
      • LLC (Logic Link Control), MAC(Media Access Control) Address, L2TP, LLDP, PPP
    3. Network Layer
      • IP(IPv4, IPv6) Address, ICMP, IPsec, IPX, AppleTalk
    4. Transport Layer
      • TCP, UDP, SCTP, NBF
    5. Session Layer
      • NetBIOS, SAP, SIP, L2TP, PPTP
    6. Presentation Layer
      • TLS, SSL, MIME, XDR
    7. Application Layer
      • DNS, FTP, HTTP, NFS, NTP, SMTP, DHCP, SNMP, SSH, Telnet
  • Socket Programming
  • IP Network Service
    • DHCP
    • VPN / IPSec
    • NLB (Network Load Balance)
  • Switch
    • Layer 2~3, Layer 4, Layer 5~7
  • Firewall / Router
    • Hardware:
      • Cisco, NetScreen, Juniper, FortiGate
    • OS Package:
      • Linux: SELinux, iptables
    • Software
      • Open Source:
        • ClearOS, DD-WRT, Untangle, ZeroShell, Endian, Smoothwall Express.
  • SDN (Software-Defined Networking)
    • OpenFlow Protocol
  • Wi-Fi 802.11 a/b/g/n/ac
    • Working/Access Mode
      • STA (Station)
      • AP (Access Point)
      • Router (Layer 3)
      • Bridge (Layer 2)
      • Repeater (Layer 1)
      • Wi-Fi Direct (Wi-Fi Peer-to-Peer)
    • SSID (Service Set Identifier) - 字串格式(2~32 bytes),方便使用者看得懂的名稱。通常一台AP可以設定多個SSID,讓屬於同個ESS的BSS可以虛擬化的分割。
      • BSSID (Basic SSID) - AP的Mac Address (6 bytes),一個AP無線訊號所涵蓋的範圍即為BSS。
      • ESSID (Extended SSID) - 為字串格式(2~32 bytes),ESS為多個BSS所形成的集合,多個AP後面必須有Controller設定每個AP帶有相同的ESSID。定義在802.11f。STA可以在同一個ESS內的不同BSS範圍內Roaming,即視為同的網路區域。
      • HESSID - 為Mac Address 格式(6 bytes),一樣是由多個AP後端的Controller選定ESS內其中一個BSSID當作此ESS的HESSID。和ESSID不同在於ESSID無法確認為Global Unique,HESSID因為是取多個BSS的其中一個Mac Address,所以可以確定是Global Unique。
    • WDS (Wireless Distribution System)
    • WEP (Wired Equivalent Privacy) - 在制定過程中出現設計缺陷,已被證明非常容易招受攻擊。
    • WPA/WPA2 (Wi-Fi Protected Access) - 另加入WEP所沒有的802.1x、EAP (Extensible Authentication Protocol) 認證機制,如RADIUS等認證伺服器,防止使用者在重疊的無線網路訊號中,進入其他無線網路。
    • WPA-PSK - 不用認證,只需鍵入簡單密碼的WPA-PSK加密模式,適合家庭用戶或安全顧慮較輕的使用者。
    • AOSS / QSS / WPS (Wi-Fi Protected Setup)
    • MIMO (Multiple-input and multiple-output)
      MU-MIMO (Multi-user MIMO) – a set of multiple-input and multiple-output (MIMO) technologies for wireless communication.
    • WMN (Wireless Mesh Network) 無線網狀網路 – a communications network made up of radio nodes organized in a mesh topology.
  • Bluetooth
    • Version Comparison: 4.0/4.1/4.2
    • Protocol: HFP / A2DP / HSP / AVRCP
  • Telecommunicatin (Mobile) Network
    • GSM/GPRS
    • CDMA/CDMA2000/WCDMA
    • 4G LTE/VoLTE


  • Global Navigation Satellite System (GNSS)
    • United States - Global Positioning System (GPS)
    • Russia - GLONASS
    • European Union - Galileo
    • Japan (Reginal) - QZSS
    • China (Reginal) - BeiDou
    • India (Reginal) - NAVIC
    • AGPS


  • IoT (Internet of Things)
    • NarrowBand IoT (NB-IoT) – is a Low Power Wide Area Network (LPWAN) radio technology standard developed by 3GPP to enable a wide range of cellular devices and services.
    • LoRa / LoRaWAN - Long Range Wide Area Network (WAN), from the LoRa Alliance
    • IIoT (Industrial IoT)
    • AIoT (AI + IoT)
  • Industrial Automation
    • PLC (Programmable Logic Controller)
      • DDC (Direct Digital Control)
      • HMI (Human-Machine interface)
    • DCS (Distributed Control System)
    • SCADA (Supervisery Control and Data Acquisition) System 資料採集與監控系統
    • MODBUS – a serial communications protocol originally published by Modicon (now Schneider Electric) in 1979 for use with its PLCs.
      • PDU (Protocol Data Unit) 協定資料單元
      • ADU (Application Data Unit) 應用資料單元
      • RTU (Remote Terminal Unit) 遠端終端裝置
      • OPC (OLE for Process Control) Server
      • AIO (Analogic Input Output) Controller
      • DIO (Digital Input Output) Controller
    • Network Buses
      • RS-485: also known as TIA-485(-A), EIA-485.
      • RS-232 (Recommended Standard 232) – a standard originally introduced in 1960 for serial communication transmission of data. It formally defines signals connecting between a DTE & DCE
        • DTE (Data Terminal Equipment) such as a computer terminal.
        • DCE (Data Circuit-Terminating Equipment or Data Communication Equipment), such as a modem.
  • Digital Logic Circuits
    • TTL (Transistor-Transistor Logic)
    • CMOS (Complementary Metal Oxide Semiconductor)
  • Signal Interface (Reference: 1)
    • UART (Universal Asynchronous Receiver-Transmitter)
    • I2C / I²C (Inter-Integrated Circuit) – pronounced I-squared-C, is a synchronous, multi-master, multi-slave, packet switched, single-ended, serial computer bus invented in 1982 by Philips Semiconductor (now NXP Semiconductors).
      • SCL
      • SDA
    • SPI (Serial Peripheral Interface) – SPI devices communicate in full duplex mode using a master-slave architecture with a single master.
      • Pinout: SCK / MISO / MOSI / SS1, SS2, …
      • Reference: 1, 2
    • SSI (Synchronous Serial Interface)
    • GPIO (General-purpose input/output)
  • Connection / Communication
    • Wi-Fi
    • NFC
    • RFID
    • Bluetooth
    • BLE (Bluetooth Low Energy, Bluetooth Smart)
      • GATT (Generic Attribute Profile) – a data exchange protocol in Bluetooth LE, provides a number of commands for the client to discover information about the server.
    • Z-Wave / ZigBee / Insteon / X10
  • Indoor Positioning / Distance
    • Beacon / iBeacon
      • RSSI (Received Signal Strength Indicator) – a measurement of the power present in a received radio signal.
    • UWB (Ultra-WideBand)
      • TOA (Time of Arrival)
      • AoA (Angle of Arrival)
    • Others
      • LQI (Link Quality Indicator)


  • V7RC – Android App by 嵐奕科技有限公司 1


  • Single-Chip Microcomputer (單晶片微電腦)
    • ARM Cortex-M0
    • ARM Cortex-M4
  • SoC (System on Chip) – an integrated circuit (also known as an “IC” or “chip”) that integrates all components of a computer or other electronic systems.
  • PCB (Printed Circuit Board) – mechanically supports and electrically connects electrical or electronic components using conductive tracks, pads and other features etched from one or more sheet layers of copper laminated onto and/or between sheet layers of a non-conductive substrate.
    • FlatCAM – a program for preparing CNC jobs for making PCBs on a CNC router. Among other things, it can take a Gerber file generated by your favorite PCB CAD program, and create G-Code for Isolation routing.
  • EDA (Electronic Design Automation)
    • KiCad EDA – a free software suite for electronic design automation (EDA). It facilitates the design of schematics for electronic circuits and their conversion to PCB designs.


Microcontroller (微控制器/微控板)

    • Software:
    • Hardware:
        • Nano, Nano 33 IoT, Uno Rev3, Mega 2560 Rev3, Micro, Leonardo, MRK …
        • ESP32 – ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth.
      • NodeMCU – an open source IoT platform. It includes firmware which runs on the ESP8266 Wi-Fi SoC from Espressif Systems, and hardware which is based on the ESP-12 module.
        • ESP8266 v2,v3 – a low-cost Wi-Fi microchip with full TCP/IP stack and microcontroller capability produced by manufacturer Espressif Systems[1] in Shanghai, China.
      • MediaTek LinkIt ONE – enables you to design and prototype Wearable and Internet of Things (IoT) devices, using hardware and an API that are similar to those offered for Arduino boards.
        • 7688, 7697


Single-Board Computer (SBC 單板電腦) / Autonomous Machines / AIoT Edge Computing



Security

  • PKI (Public Key Infrastructure) –
    a set of roles, policies, and procedures needed to create, manage, distribute, use, store, and revoke digital certificates and manage public-key encryption.
  • Protocol
    • IPsec (Internet Protocol Security) –a secure network protocol suite that authenticates and encrypts the packets of data sent over an internet protocol network. It is used in virtual private networks (VPNs).
    • IKE (Internet Key Exchange) – the protocol used to set up a security association (SA) in the IPsec protocol suite.
    • SSL v3 (Secure Sockets Layer, 安全通訊端層) – 存在 POODLE (Padding Oracle On Downgraded Legacy Encryption) 安全性漏洞,不再使用。
    • SASL (Simple Authentication and Security Layer 簡單認證與安全層)
    • TLS (Transport Layer Security, 傳輸層安全性) v1.2
    • HSTS (HTTP Strict Transport Security, HTTP強制安全傳輸技術)


  • CA (Certificate Authority) – stores, issues and signs the digital certificates.
  • RA (Registration Authority) – verifies the identity of entities requesting their digital certificates to be stored at the CA, usually called a subordinate CA.
  • VA (Validation Authority)



  • FreeDNS – Free DNS - Dynamic DNS - Static DNS subdomain and domain hosting



  • WebSite Attack Types
    • SQL Injection
    • XSS (Cross Site Scripting)
    • CSRF (Cross-Site Request Forgery Attack) / XSRF / One-Click Attack / Session Riding – 跨站請求僞造 (Prevention)
    • DoS (Denial of Service Attack)
    • DDoS (Distributed Denial of Service Attack)
      • TCP SYN Flood
      • UDP Flood
      • ICMP Flood
      • Http Flood
      • Ping of Death
      • Land Attack
    • Fraud 欺騙
    • Phishing 釣魚
    • Clickjacking (Click hijacking)
  • Software Attack Types
    • Zero-Day Exploit
    • Trojan Horse - Comes with other software.
    • Virus - Reproduces itself by attaching to other executable files.
      • Worm - Self-reproducing program. Creates copies of itself. Worms that spread using e-mail address books are often called viruses.
    • Logic Bomb - Dormant until an event triggers it (Date, user action, random trigger, etc.).
    • Ransomware (勒索軟體)
  • Human Attack Types
    • Social Engineering
    • APT (Advanced Persistent Threat)
      • Spear Phishing (魚叉式網路釣魚)
      • Watering Hole


  • Anti-Virus
  • Sanitize
  • WAF (Web Application Firewall)
  • IPS (Intrusion Prevention System)
  • IDS (Intrusion-Detection System)
  • DLP (Data Loss Prevention)
  • Static Code Analysis
  • AST (Application Security Testing)
    • DAST (Dynamic AST 黑箱動態測試)
    • SAST (Static AST 白箱源碼檢測)
    • IAST (Integrated/Intrinsic/Interactive AST )
  • Penetration Test (PT) 滲透測試
    • OWASP (Open Web Application Security Project)
    • OSSTMM (Open Source Security Testing Methodology Manual)
  • Certification
    • CISM (Certified Information Security Manager)
    • CISSP (Certified Information Systems Security Professional)
    • CEH (Certified Ethical Hacker) / CIH (Certified Incident Handler)
    • ECSA (EC-Council Certified Security Analyst) / NSPA (Network Security of Packet Analysis)
  • Sandbox - a security mechanism for separating running programs, usually in an effort to mitigate system failures or software vulnerabilities from spreading.
  • CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) – 全自動區分電腦和人類的公開圖靈測試,俗稱驗證碼。


  • SOC (Security Operation Center)
  • SIEM (Security Information and Event Management)
  • MDM (Enterprise Mobile Device Management)
    EMM (Enterprise Mobility Management)
    • BYOD (Bring Your Own Device)


  • GDPR (General Data Protection Regulation) – a regulation in EU law on data protection and privacy for all individuals within the European Union (EU) and the European Economic Area (EEA).
  • ISO/IEC 27000-series (also known as the 'ISMS Family of Standards' or 'ISO27K' for short) – comprises information security standards published jointly by the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC).
  • ISMS (Information Security Management System)
    • The PDCA Cycle:
      • Plan (establishing the ISMS)
      • Do (implementing and workings of the ISMS)
      • Check (monitoring and review of the ISMS)
      • Act (update and improvement of the ISMS)


  • Tor (The Onion Router)



Integrated Application

  • Authentication Protocol
    • SAML (Security Assertion Markup Language) 2.0
    • OAuth v2.0 – An open protocol to allow secure authorization in a simple and standard method from web, mobile and desktop applications.
    • OpenID 2.0OpenID Connect 1.0 - a simple identity layer on top of the OAuth 2.0 protocol.
    • Integration with ..
      • uPortal, Liferay, BlueSocket, Moodle, and Google Apps to name a few
  • OpenID - Identity Provider
  • Authentication Solution
    • Open Source:
    • Commercial Product:
      • Microsoft Azure AD Premium (Azure Active Directory Access Control)
      • Centrify Identity Service
      • Okta Identity and Mobility Management
      • OneLogin
      • Ping Identity PingOne
      • SecureAuth IdP
      • PerfectCloud SmartSignin
  • JWT (JSON Web Token) 1
    – an open, industry standard RFC 7519 method for representing claims securely between two parties.
    • jwt.io – allows you to decode, verify and generate JWT


Global Payment Service / Payment Gateway / 第三方支付

  • Global
    • PayPal (eBay)
    • Payoneer – Cross-border payments platform empowers businesses, online sellers and freelancers to pay and get paid globally as easily as they do locally.
    • Stripe – Online payment processing for internet businesses


E-Commerce, M-Commerce / 金流, 物流 / Shopping Cart 線上購物車套裝模組 / 電子發票模組

  • 台灣 E-Invoice 電子發票系統 功能
    • 開立
    • 申報
    • 載具,對獎,歸戶


  • Gumroad – a self-publishing digital marketplace platform to sell digital services such as books, memberships, courses and other digital services.


  • SCM (Supply Chain Management)
  • PLM (Product Life-cycle Management)
  • CRM (Customer Relationship Management)
    • Call Center
  • ERP (Enterprise Resource Planning)
    • SAP
    • Apache OFBiz – a suite of business applications flexible enough to be used across any industry. A common architecture allows developers to easily extend or enhance it to create custom features.
    • Odoo – a business management software including CRM, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management.
  • eDM / Questionnaire / Survey
    • Open Source: PHPList, ActiveCampaign, poMMo, OpenEMM, LimeSurvey, Survey Project
  • PMS / PMIS (Project Management Information System)
    • OpenProject – a web-based project management system for location-independent team collaboration.
    • Calligra Plan (formerly KPlato) – a project management application (part of Calligra Suite) – formerly included with KOffice. It is intended for managing moderately large projects with multiple resources.


  • SEO (Search Engine Optimization) for: Google, Bing, Yahoo, Baidu, …
  • Advertisement
    • Google
      • AdWords – 關鍵字廣告,付費打廣告的一方。
      • AdSense – 在自己的網站上刊登廣告,為賺取收益的一方。
      • AdMob – 行動應用程式營利,為APP開發者所用。
    • FaceBook :?:
  • URL Shortener
    • Self-Hosted Open Source
      • Polr – a quick, modern, and open-source link shortener. It allows you to host your own URL shortener, to brand your URLs, and to gain control over your data. It's also GPLv2+ licensed.
      • YOURLS (Your Own URL Shortener) – a small set of PHP scripts that will allow you to run your own URL shortening service (a la TinyURL or bitly).
      • Shlink – Shorten URLs and serve them under your own short domain.
      • Kutt.it, Lessn More, Wurlie, Z.ips.Me
    • Cloud Service
      • Goo.gl, Bitly


  • TCP/IP
    • WebSocket
    • RESTful
  • CoAP (Constrained Application Protocol) – CoAP is a service layer protocol that is intended for use in resource-constrained internet devices, such as wireless sensor network nodes.
  • MQTT (Message Queuing Telemetry Transport)
    – a machine-to-machine (M2M)/“Internet of Things” connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport.
  • Multi-Protocol Messaging Platform
    • Apache ActiveMQ – the most popular open source, multi-protocol (AMQP / STOMP / MQTT / JMS), Java-based message broker.
    • EMQX – Powering the future-proof IoT solutions and enterprise digital transformation through unified “Connect, Move, Process and Analyze” IoT data from edge to cloud to multicloud.


  • ThingsBoard – Open-source IoT Platform for: Device management, data collection, processing and visualization for your IoT solution.
  • ThingSpeak – Data collection in the cloud with advanced data analysis using MATLAB.
  • Cisco Jasper: IoT Connectivity Management Platform
  • Blynk – a hardware-agnostic IoT platform with white-label mobile apps, private clouds, device management, data analytics, and machine learning.
  • Heroku – a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.
  • Particle
  • Temboo
  • Dweets – dweet.io - Share your thing- like it ain't no thang.
  • freeboard.io – Visualize the Internet of Things. Ridiculously simple dashboards for your devices.



  • IFTTT (If This Then That) – a free web-based service to create chains of simple conditional statements, called applets. An applet is triggered by changes that occur within other web services such as Gmail, Facebook, Telegram, Instagram, or Pinterest.
  • dweet.io – Ridiculously simple messaging (and alerts) for the IoT.


  • ngrok – tunnel local ports to public URLs and inspect traffic.
  • serveo.net – Expose local servers to the internet by ssh.


  • Node-RED (by IBM) – a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.
  • OBD (On-Board Diagnostic) 車載自動診斷系統


  • Open Source / On-Premise
    • Home Assistant (GitHub)– home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.
    • openHAB (Open Home Automation Bus) – an technology agnostic home automation platform which runs as the center of your smart home!
    • Domoticz – a very light weight home automation system that lets you monitor and configure miscellaneous devices.



  • Online Teaching, Remote Teaching, Distance Teaching, Distance Education, Distance Learning, 遠距教學
  • for Students



Open Service

  • Others
    • Yahoo API



    • MNIST (Modified National Institute of Standards and Technology) database – a large database of handwritten digits that is commonly used for training various image processing systems.
    • IMDb (Internet Movie Database)


  • Classes & Certifications
    • MOOCs (Massive Open Online Courses) – free online courses available for anyone to enroll.
    • edX – Online courses from the world's best universities.
    • Udacity - Free Online Classes & Nanodegrees
    • Coursera – Online Courses & Credentials by Top Educators.
    • Udemy – Udemy provides tools which enable users to create a course, promote it and earn money from student tuition charges.
    • PhET Interactive Simulations – a non-profit open educational resource project at the University of Colorado Boulder that creates and hosts explorable explanations.
    • HiSKIO
    • Microsoft
  • Tutorials & References
    • W3Schools – optimized for learning, testing, and training. Examples might be simplified to improve reading and basic understanding.
    • w3big -- Web Online tutorials :!: – Web development and programming language tutorials for HTML, CSS, Javascript, Bootstrap, PHP, MySQL, Python, Java, Ruby, …
    • Tutorials Points – RxJS, ggplot2, Python Data Persistence, Caffe2, PyBrain, Python Data Access, H2O, Colab, Theano, Flutter, KNime, Mean.js, Weka, Solidity
    • RUNOOB 菜鳥教程– 學的不僅是技術,更是夢想!
    • Programiz – Beginner Friendly Tutorials for Programmers: Python, C/C++, Java, Kotlin, Swift, R, DS & Algorithms.



Cross-Domain / Interdisciplinary

  • BI (Business Intelligence) & Data Mining
    • IBM SPSS Modeler
    • SAS Enterprise Miner
    • RapidMiner, Angoss
    • Pentaho BI
    • Defining Properties
      • 3V(4V): Volume, Velocity, Variety, (Veracity). ? Value
  • Statistical Computing
    • R (programming language)
    • Python
  • Integration Solution
  • Data Visualization
    • JavaScript
      • Chart.js – Simple yet flexible JavaScript charting library for the modern web
      • D3.js – Data-Driven Documents based on data manipulation documentation. D3 combines powerful visualization components with data-driven DOM manipulation methods.
      • Apache Echarts – an enterprise-level chart tool from the data visualization team of Baidu. A Declarative Framework for Rapid Construction of Web-based Visualization. It runs smoothly on PCs and mobile devices, and it is compatible with most current browsers.
      • HighCharts – a chart library written in pure JavaScript that makes it easy and convenient for users to add interactive charts to web applications.
    • JSON
      • Vega – a set of interactive graphical grammars that define the mapping rules from data to graphic, common interaction grammars, and common graphical elements. Users can freely combine Vega grammars to build a variety of charts.
    • Python
      • Matplotlib – a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.
      • pyecharts– A Python Echarts Plotting Library.
        • Chart: 30+ kinds of charts. Map: 300+ Chinese cities / 200+ countries and regions. Platforms: Pure Python / Jupyter Notebook / Web Framework.
    • Command-line
      • Gnuplot – a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms.
    • Proprietary Language
      • MATLAB (MATrix LABoratory) – a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks.
        • Simulink – a MATLAB-based graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems. Its primary interface is a graphical block diagramming tool and a customizable set of block libraries.
  • Interactive Map (GIS)
    • JavaScript
      • Leaflet – a JavaScript library of interactive maps for mobile devices. It has all the mapping features that most developers need.
      • OpenLayers – a high-performance, feature-packed library for all your mapping needs.


    • Algorithm
      • Classification 分類
        • SVM (Support Vector Machine)
        • Decision Tree
        • KNN (K-Nearest Neighbor)
      • Clustering 分群
        • K-Means
    • Learning Paradigms
      • Supervised Learning (用於分類)
        • MLP (Multi-Layer Perceptron 多層感知器)
      • Unsupervised Learning (用於分群)
        • GAN (Generative Adversarial Network)
          • DCGAN, WGAN
      • Semi-Supervised Learning
      • Reinforcement Learning
      • Self-Supervised Representation Learning
        • Shallow AutoEncoder Learning
    • Training / Predict
  • Forecasting Model
    • 神經網路
      • Feedforward, Convolutional, Recurrent
    • 組合樹
      • Random Forests, Boosted Trees, Decision Trees
    • 支援向量機 (SVM)
      • Scalar Regression, Multiclass Classification
    • 正規化線性模型
      • Linear Regression, Logistic Regression
    • 特徵工程
      • Sparse Vectorization, Dense Vectorization, Categorical Processing
    • 管道模型
      • Sequentially Chained Models
  • 語音合成 Speech / Lip Synchronization
    • NLG (Natural Language Generation)
    • Algorithms:
      • FITAMOS (Face/Image/Text/Audio/Motion/Object/Scene)
    • Library:
      • OpenCV (Open Source Computer Vision) – a library of programming functions mainly aimed at real-time computer vision for computer vision and machine learning.
      • PCL (Point Cloud Library) – an open-source library of algorithms for point cloud processing tasks and 3D geometry processing, such as occur in three-dimensional computer vision.
  • RPA (Robotic Process Automation) – an emerging form of business process automation technology based on the notion of software robots or artificial intelligence (AI) workers.
  • Facial Recognition
    • Open Source
      • OpenFace
      • FaceNet
      • deepFace – a lightweight face recognition and facial attribute analysis (age, gender, emotion and race) framework for python. It is a hybrid face recognition framework wrapping state-of-the-art models: VGG-Face, Google FaceNet, OpenFace, Facebook DeepFace, DeepID, ArcFace and Dlib. The library is mainly based on Keras and TensorFlow.
    • Commercial
      • Facebook DeepFace
  • Face Fake
    • DeepFake
  • AOI (Automated Optical Inspection) 自動光學檢測 / 視覺檢測輔助系統
  • IVA (Intelligent Video Analytics)
  • LPR (License Plate Recognition) / ALPR (Automatic License-Plate Recognition) / ANPR 自動車牌辨識
    • Car Identification System
    • License Plate Detection & Recognition
  • NPU (Neural Processing Unit)
  • GPU (Graphics Processing Units)
  • TPU (Tensor Processing Unit) - an AI accelerator application-specific integrated circuit (ASIC) developed by Google specifically for neural network machine learning.
  • FPGA (Field-Programmable Gate Arrays)
  • NCS (Neural Compute Stick) / VPU (Vision Processor Unit)
  • Core ML (by Apple) – integrate trained machine learning models into app.
  • TensorFlow - an open-source software library for dataflow programming across a range of tasks. It is a symbolic math library, and also used for machine learning applications such as neural networks.
  • Torch – an open source machine learning library, a scientific computing framework, and a script language based on the Lua programming language.
  • PyTorch – an open source machine learning library for Python, based on Torch. Tensors and Dynamic neural networks in Python with strong GPU acceleration.
  • YOLO (You Only Look Once) – a system for detecting objects on the Pascal VOC 2012 dataset. It can detect the 20 Pascal object classes.
  • CAFFE (Convolutional Architecture for Fast Feature Embedding) – a deep learning framework, written in C++, with a Python interface.
    • Netscope – a web-based tool for visualizing neural network architectures (or technically, any directed acyclic graph). It currently supports Caffe's prototxt format.
  • Keras – a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.
  • Scikit-Learn – a free software machine learning library for Python.
  • Onnx (Open Neural Network Exchange) – an open format to represent deep learning models.
  • Pandas (Panel Data) – a software library (Python) for data manipulation and analysis. It offers data structures and operations for manipulating numerical tables and time series.
  • Theano – a numerical computation library for Python.
  • Orange – Open source machine learning and data visualization for novice and expert. Interactive data analysis workflows with a large toolbox.
  • Selenium – a portable software-testing framework for web applications. (w/ IDE & WebDriver)
  • XGBoost
  • LIBSVM


  • Research
    • OpenAI – is an AI research and deployment company. Our mission is to ensure that artificial general intelligence benefits all of humanity.
  • Speech Recognition & Translation


  • Physical
    • Commodity Money, Coupon
  • Digital Currency
    • Cryptocurrency (Crypto Currency) – by Scrypt Algorithm (Miner)
      • Litecoin (LTC) 萊特幣, Dogecoin 多吉幣/狗狗幣/旺旺幣, Auroracoin 極光幣, Mintcoin 薄荷幣, FeatherCoin (FTC) 羽毛幣, 懸賞幣, 西班牙幣, 黑幣, 紐約幣, …
    • Non-Cryptocurrency
      • Internet coupon
  • ICO (Initial Coin Offerings 首次代幣發行)


    • 定義
      • A continuously growing list of records, called blocks, which are linked and secured using cryptography.
      • Each block typically contains a hash pointer as a link to a previous block, a timestamp and transaction data.
    • 特性
      1. 不可竄改
      2. 夠高夠難的共識決
      3. 時間戳記 (TimeStamp)
      4. 點對點 P2P
      5. 去中心化(或者說多中心化)
    • 應用
      1. Distributed Ledger Technology
      2. 病例、生產履歷
  • LBRY – a blockchain-based file-sharing and payment network that powers decentralized platforms, primarily social networks and video platforms. 1




  • VR (Virtual Reality) 虛擬實境 - VR replaces your whole worldview with a simulation in some way or another.
  • AR (Augmented Reality) 擴增實境 - AR is any sort of computer-based system that overlays data on top of your current view of the world, while continuing to let you see the world around you.
  • MR (Mixed Reality) 混合實境 - MR seamlessly integrates digital objects into your world making it look as if they are really there.
  • SR (Substitutional Reality) 替代實境
  • Comparison: 12
  • Editor
  • 3D Projection
    • Holographic Projection 全息投影技術
      • front-projected holographic display
    • Pepper's Ghost 佩珀爾幻象
    • 邊緣消隱


  • Video Conference
    • Minecraft – In Minecraft, players explore a blocky, procedurally generated 3D world with virtually infinite terrain, and may discover and extract raw materials, craft tools and items, and build structures, earthworks and simple machines.
  • Game
    • Gather Town – Centered around fully customizable spaces, Gather makes spending time with your communities just as easy as real life


  • DAW (Digital Audio Workstation)
  • Raster Photo/Image Editor
    • Commercial
    • Open Source
      • XnView – Image viewer, resizer, batch image converter and more
      • GIMP (GNU Image Manipulation Program) – a free and open-source raster graphics editor[5] used for image manipulation (retouching) and image editing, free-form drawing, transcoding between different image file formats, and more specialized tasks.
  • Vector Graphics Editor
    • Commercial
    • Open Source
      • Inkscape – a professional vector graphics editor for Linux, Windows and macOS. It's free and open source.
      • BoxySVG – a free tool for creating scalable vector graphic files that runs as an extension in Google Chrome.
      • Vecteezy – a free sharp looking in-browser Illustrator alternative for stylish designs
      • Vectr – a slimline vector editor available for your browser or desktop
      • SVG-Edit – A straightforward Illustrator alternative for web developers
  • Video Streaming 1,2
    • HLS (HTTP Live Streaming)
    • RTMP (Real Time Message Protocol)
    • RTSP (Real-Time Stream Protocol)
    • WebRTC (Web Real-Time Communication)
  • Video Broadcasting Services
    • YouTube – online video sharing and social media platform.
    • OdySee – an open-source video-sharing platforms built on LBRY, have been described as decentralized alternatives to YouTube.
    • PeerTube – aspires to be a decentralized and free/libre alternative to video broadcasting services. :!:


  • CAD (Computer-Aided Design)
    • Commercial
      • Fusion 360 – a powerful 3D CAD, CAM, and CAE platform.
      • DraftSight
      • Solid Edge – from Siemens, is a CAD solid modeling platform that uses parametric functions.
      • BricsCAD – is best known for having rich features in both 2D drawing and 3D modeling.
      • ZBrushCoreMini – Enjoy a true ZBrush experience as you take your first steps into the exciting world of digital sculpting with ZBrushCoreMini… completely free!
    • Open Source
      • FreeCAD – a free, open-source parametric CAD program offering the capability to 3D design objects of almost any size.
      • LibreCAD – a free, high-quality open-source 2D modeling program that grew out of QCAD.
      • NanoCAD – a CAD program that is powerful and DWG-compatible. (Free for Trial)
      • OpenSCAD
    • Website SaaS
      • SketchUp – Formerly known as Google SketchUp, this 3D modeling platform is an excellent choice for both enthusiastic hobbyists and CAD experts.
      • Autodesk Tinkercad – an easy-to-use 3D CAD design tool. Quickly turn your idea into a CAD model for a 3D printer.
      • Onshape – the product development platform that combines CAD, PDM, collaboration and analytics tools in the cloud.
    • Home Design & Interior Design
      • Planner 5d – An advanced and easy-to-use 2D/3D home design tool.
  • 3D Graphics Engine / API
    • OpenGL(Open Graphics Library[3]) – a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics.
    • Styly (Run in Browser)
  • 3D Modeling Editor / Animation and Rendering Software
    • Autodesk 3DS MAX – helps you create massive worlds in games, stunning scenes for design visualization, and engaging virtual reality experiences.
    • Autodesk MAYA – provides an integrated, powerful toolset. Use it for animation, environments, motion graphics, virtual reality, and character creation.
    • Maxon Cinema 4D (C4D) – the fastest and easiest-to-use 3D animation solution.
    • Blender :!: – a free and open-source 3D computer graphics software toolset used for creating animated films, visual effects, art, 3D-printed models, motion graphics, interactive 3D applications, virtual reality, and, formerly, video games.
  • 3D Modeling Viewer / Characters Download
    • Mixamo – Animate 3D characters for games, film, and more.
    • Sketchfab – The best 3D viewer on the web
    • MakeHuman :!: – a free and open source 3D computer graphics middleware designed for the prototyping of photorealistic humanoids.
  • 3D Community / Library / Files Download
    • SketchUp 3D Warehouse – an open library in which SketchUp users may upload and download 3D models to share.
    • MakerBot Thingiverse – a universe of things. Download our files and build them with your lasercutter, 3D printer, or CNC.
    • GrabCAD Library – The largest online community of professional designers, engineers, manufacturers, and students.
    • Autodesk LIBRARY.IO – Thousands of Packages and Libraries available for free.
  • 3D Scanner
    • Hardware:
      • Microsoft Kinect – a line of motion sensing input devices.
    • Software:
      • SCANECT – The Easiest Way To 3D Scan With the Structure Sensor and Kinect-like 3D Sensors.
  • 3D Printing Software
  • 3D Printer
      • FDM (Fused Deposition Modeling,熔融沉積)
        • 機型: 箱型機、單臂型、龍門型、三角洲型
        • 線材: 列印溫度 200度
          • PLA 聚乳酸 (可分解, 不回收)
          • ABS 丙烯晴 丁二烯 苯乙烯共聚物 (味道不好,可回收)
      • SLA (Stereo Lithography Apparatus,光敏樹脂選擇性固化)
      • SLS (Selective Laser Sintering,粉末材料選擇性雷射燒結)
    • 品牌/賣場
  • Laser Cutting & Engraving


  • STEAM fields – Science, Technology, Engineering, Art, and Mathematics.
  • MOOCs – Massive Open Online Courses
  • Moodle (Modular Object-Oriented Dynamic Learning Environment) –



1)
Type C 除了充電還有哪些規格?筆電也通?充電/影音/頻寬各項應用解析
2)
FIBBR USB-C5 USB 3.1 Gen1 Type C to Type C 光纖數據線 5m
  • open/itroadmap.txt
  • 上一次變更: 2024/09/22 19:48
  • (外部編輯)