Interface and Application Programming

 languages
   hello world
   C, GCC, C++, GDB, DDD
   .NET, C#, Mono
   Java, OpenJDK, IcedTea, Android
   APL, Haskell, Scala
   Processing, Wiring, Arduino, p5.js
   LabVIEW, Simulink, Max, Pd, Scratch, App Inventor, Grasshopper, Firefly
   Bash, Tcl
   Python tutorial, Perl, Ruby
   JavaScript tutorial, Node.js, V8, npm, asm.js, WebAssembly
   mods

device interfaces
   RS/EIA/TIA 232/422/485, pySerial, serialport, serial
   FTDI, libFTDI, python-ftdi, ftdi
   Firmata
   USB, PyUSB, usb
   IrDA, python-irda
   GPIB, VISA, PyVISA
   MQTT, XMPP
   socket, dgram net, ws
      hello.mag.45.html hello.mag.45.js video 

data interfaces
   flat files
   Calc, Sheets
   Pyspread, Pandas
   MySQL, MongoDB

user interfaces
   Tk, Tkinter
      hello.load.45.py
   wxWidgets, wxPython
      panel_png_path.py
   Qt, PyQt
   GTK, PyGTK
   Clutter, PyClutter
   Kivy
   forms, jQuery
   Require, Backbone, Angular, Handlebars, Ember, Bootstrap, Meteor, Babel
   Cordova, Ionic

graphics
   X Windows
      xline.c video, ximage.c video
   AWT, JFC, Swing
      JavaLine.java JavaLine.html video
      JavaImage.java JavaImage.html video
   Canvas
      canvas_lines.html
   SVG
      svg_lines.html
   WebGL
      webgl_lines.html
   Three.js
      three.js_lines.html
   OpenGL, GLUT, PyOpenGL
      glimage.c video, glsurf.c video
      glimage.py, glsurf.py
   RenderMan, cgkit
   VTK, pyvtk, Mayavi
   OpenVDB
   Unity
   CUDA, OpenCL

multimedia
   SDL, Pygame
   openFrameworks, ofpython
   HTML5, WebRTC
      video.html video

math
   SciPy, NumPy, IPython, Jupyter
   Netlib, BLAS, LINPACK, LAPACK
   MATLAB, Octave
   matplotlib, Seaborn
      matline.py video, matimage.py video
   R, RPy, ggplot2
   Mathematica, SymPy, Sage
   typed arrays, web workers, file reader
   Math.js, Science.js, numbers.js
   jqPlot, D3, Highcharts
   signal processing, modeling

assignment
   write an application that interfaces with an input &/or output device that you made,
      comparing as many tool options as possible