- I am currently a public reference / Digital Resources librarian in
New Jerseywho is interested in branching out to the programming field. My formal experience includes courses during myRutgers Universitygraduate program, an internship at Milne Library (SUNY Geneseo) that included proofreading & editing XML code for the Digital Thoreau project, and finally, ongoing, self-directed coursework from Harvard'sCS50 series. For some fun learning I do online programming practice, e.g.Codewarsand miscellaneous solo projects, such as forays into Webscraping and game design.- Email: spitzer.matthewjames@gmail.com
- Résumé: on request
- This repository was made to document my growth in programming expertise, as well as simply define and link to resources for various languages & tools for new programmers. The chart below is simply a rough outline of my own experience, the skill levels are all relative between Beginner to Intermediate. Many exercises & projects are housed here, though larger projects are in other repositories that you may need to request permission to see/collaborate on. Note: the 'Tutorials' folder often contains near-verbatim, personal notes taken from online sources (cited within), they are not my own and are merely for study/practice purposes.
- Rutgers University: 550 Information Technology (Grade:
A)- HTML, CSS, Javascript, MySQL, PHP
- Rutgers: 559 Web Programming (Grade:
A)- Javascript, Boostrap.js, React.js, Node.js, Express.js, Angular.js, MongoDB, Front-End/Back-End HTML, CSS
- Harvard OpenCourseWare: CS50x
- Projects: Mario, Cash, Credit, Readability, Caesar, Substition, Plurality, Runoff, Filter, Recover, Speller, Mario, Cash, Readability, DNA, Movies, Houses, Homepage, Finance, Capstone
- Scratch, C, Python, SQL/SQLite, Flask(Jinja), HTML, CSS(Bootstrap.css)
-
Harvard OpenCourseWare: CS50: Web Programming with Python and Javascript
-
CS50: Artificial Intelligence with Python
- Projects: Project Directory
- Montclair 2020 HawkHack (November '20): developed a Django Poll project/app.
- The following table is no longer up-to-date, but does showcase the breadth of my learning when I was just beginning programming in 2020-21, and served as a to-do list of sorts to myself, to train more in specific areas, and add new skills.
| Skill | Level | Desc. | Tutorial | Projects | Doc |
|---|---|---|---|---|---|
| API |
★☆☆☆☆ | ||||
Artificial Intelligencenlp AI machine-learning |
★☆☆☆☆ | 🔖– see CS50: Artificial Intelligence with Python repository for complete project directory of AI-programs. |
|||
AxiosAPI facility |
☆☆☆☆☆ | ||||
Bootstrapframework CSS |
★★★★☆ | 🔖– pre-written, open-source CSS that programmers can use (by importing and assigning relevant class/id names to an element), thus not wasting time creating universal styles from scratch. |
ℹ️ | ||
Clang |
★★☆☆☆ | 🔖– a high-level language that, unlike Python, needs to be 'compiled' into machine-readable code before it is run. |
|||
Code Editors/IDEatom jupyter |
★★★★☆ | 🔖– text & code-editors used in programming. |
|||
| Command line | ★★☆☆☆ | 🔖– a text interface for interacting with the computer, which takes in commands and can do almost anything. |
Common Commands | ||
CSSlang |
★★★☆☆ | 🔖the styling of a webpage– colors, font styles, borders & margins, mobile adaptation, animations, &c.– Cascading Style Sheets (.css) |
|||
Data Analysispandas matplotlib numpy |
★★☆☆☆ | 🔖*- Python libraries designed to help analyze data quickly and efficiently.- "Python Data Analytics: Pandas, NumPy, and Matplotlib". * |
|||
| Docker | ☆☆☆☆☆ | 🔖*– provides the ability to package and run an application inside a discreet environment/container. (Docker containerifies a whole OS system; a Virtual Environment, only Python dependencies; a Virtual Machine, all the harddrive and OS.) * |
|||
Djangoframework python |
★★★★☆ | 🔖– a framework for Python & SQL centered around Models-Templates-Views, that easily builds websites, and even includes an admin module for easy data/DB editing. |
ℹ️ | ||
Excelspreadsheet db |
★★★☆☆ | 🔖– a common office spreadsheet program to collect and sort data, make calculations and do analysis, design charts, &c. |
|||
File Handlingjson csv |
|||||
Flaskframework python |
★★☆☆☆ | 🔖– a lightweight web framework for Python. |
|||
| Git | ★★★★☆ | 🔖– a series of terminal commands (add, commit, merge, branch, checkout...) which lets users manage versions of source-code (e.g. connect & interact with Github.com) |
|||
| Github | ★★★★☆ | 🔖– a site which allows users to store & manage source-code and conduct version control. |
Github Guide | ||
HTMLmarkup lang |
★★★★☆ | 🔖– the static structure & content of a webpage, styled by CSS and made dynamic/interactive with JS.– HyperText Markup Language (.html) |
|||
JavaScriptlang |
★★☆☆☆ | 🔖– a programming language that makes a website dynamic and interactive. Often client-side, meaning the client's web browser processes it rather than a more length web request to the web server. |
|||
Jinjatemplating lang flask django |
★★★☆☆ | 🔖– a templating-language that allows Python functions & variables to be inserted into HTML templates, used in both the Flask & Django frameworks. |
|||
Material UIjs React components |
☆☆☆☆☆ | 🔖– an open-source framework for React components. |
|||
Object-Oriented ProgrammingOOP paradigm |
★☆☆☆☆ | 🔖– a programming paradigm that relies on Classes and internal attributes(features) & methods (behaviors), rather than that of procedural programming, which relies on blocks of code inside functions. |
|||
Pythonlang |
★★★★☆ | 🔖– an interpreted programming language (no need to compile into 'machine code' first). |
Basics | ||
Raspberry PiPi |
☆☆☆☆☆ | 🔖– a tiny, cheap, single-board computer that can be loaded with many portable projects. |
|||
| React.js | ☆☆☆☆☆ | 🔖– a JavaScript library |
|||
SASScss extension |
★☆☆☆☆ | 🔖– an extension of CSS that allows the user of variables and other advanced features like inheritance when creating large, complicated stylesheets.– Syntactically Awesome StyleSheets (.scss) |
Syntax Guide | ℹ️ | |
| Selenium & ChromeDriver | ☆☆☆☆☆ | 🔖– a portable framework for testing programs. Simulates opening a web browser for client-side interaction/testing. |
|||
SQLdb |
★★☆☆☆ | 🔖– a relational database. Most familiar with SQLite, Django's built-in DB during production. |
|||
WebScrapingBeautifulSoup MechanicalSoup |
★★☆☆☆ | 🔖– programs that harvest data from websites, using a variety of tools and libraries.– Beautiful Soup – Mechanical Soup – urllib |
|||
WorkflowsGithub .yml |
☆☆☆☆☆ | 🔖– wherein certain actions are automated, e.g. Github Actions performing program tests every time a version is pushed to the remote repository.– (.yml/.yaml) |
Skill Levels
- ☆☆☆☆☆: aware of, want to learn- ★☆☆☆☆: learned in lesson
- ★★☆☆☆: exercise practice
- ★★★☆☆: used for a project
- ★★★★☆: used all the time/utilized in many projects
- ★★★★★: extremely confident, intermediate level
- Free Ivy League Courses
- MIT OpenCourseWare: Introduction to Programming in Java
- MIT OpenCourseWare: Introduction to C and C++
- Python Data Analytics: With Pandas, NumPy, and Matplotlib by Fabio Nelli (2018)
- Django 3 By Example, 3rd ed. by Antonio Melé (2020)
- Chapters: 1. Building a Blog Application / 2.
Completed Kata from Codewars.com, username: mjs375. Note: Codewars 'kyu' levels are from 8 (easiest) to 1 (hardest).
- Wikipedia Links Scraper: pulls links (entry body only) from a given Wikipedia page.
- Tic-Tac-Toe: 1 or 2-player game of tic-tac-toe, played in command-line. Randomized AI.
- Wheel of Fortune: command-line based Wheel of Fortune game.
- Card Deck: a basic file containing classes for Player, Card & Deck (methods to draw, shuffle, discard, showhand, &c.) to use in games.
- Wordle (clone): coded in HTML, CSS & vanilla JavaScript.
- National Weather Service 7-Day Forecast Scraper: Tutorial-based project that scrapes data about the upcoming 7-day forecast from a given area. Added prompt that asks user if they want to export it as a
.csvfile. - Linear Regression Model: Tutorial on creating, training, and analyzing a Linear Regression Model. My code.
- Django Poll App: tutorial to create a Django site with a polls app.

