Web Programming - Modern Apps
Denmark info Notes Weekly Resources Graded work Policies Standards Professors & addendum Code examples
© 2019 - Seneca School of ICT and Business Academy Aarhus
This page has information about and links to learning resources that you will use in this course.
For Seneca students, this is a pro option course in the web programming field of study.
Therefore, continue to use the content from the courses that you have successfully completed:
You will need one or more devices. A College or personal desktop or laptop, and (likely) a personal mobile device (e.g. a smartphone).
This document introduces you to Postman, and has how-to getting started info.
Use macOS or Linux
We expect the student to do their work on a computer that runs macOS (Mac OS X), Linux, or another Unix-like operating system.
If a student has a Windows 10 computer, then plan to install one of the following:
None. This is a web programming course therefore, the best source for content is on the web!
There are several required online resources:
The Mozilla Developer Network MDN Web Docs web site is vast, with thousands of documents. It is a trusted and authoritative source for web developer information. Of interest:
HTML5 Guide, including HTML Forms Guide, and the HTML5 Element List
In October 2017, Microsoft, Google, and the W3C committed to making MDN Web Docs the single authoritative source for web developer documentation.
Read more about this in an article by Ali Spivak.
Others:
Bootstrap (version 3) CSS documentation
Links to other topics (e.g. Getting started, etc.) are on that page
Third-party (formden) Guide: Bootstrap Forms by Example
Official Angular Documentation
Angular CLI videos on YouTube, by Codevolution
Oh, and you should must know (and love!) the series of RFCs that describe HTTP, 7230 through 7235. If you want a friendlier introduction to HTTP, read its Wikipedia article.
Google web developers content
Angular 4: From Theory to Practice - Asim Hussain (free!)
Beginning Angular 2 - Greg Lim
Front end frameworks
Alternatives:
State management
HTML and CSS
Start VS Code from the command line
Make sure that you’re in your project folder.
Then type this command: code .
Note: This assumes that your computer is configured to run this command. See the Running VS Code on Mac to configure that feature.
Useful keyboard shortcuts (macOS)
Task | Keyboard shortcut |
---|---|
Trigger IntelliSense | Control + Space |
Toggle comments on/off | Command + / |
Reformat document | Shift + Option + Command + F |
Show/hide left-side bar | Command + B |
Show/hide terminal | Control + (back-tick) |
Markdown preview pane toggle on/off | Command + K, V |
A full list of keyboard shortcuts in a nice printable format is here:
Useful Emmet snippets for HTML
For most elements, just begin typing the element name, without the angle bracket.
Emmet snippet | Task |
---|---|
. |
Declare class(es), e.g. div.row |
# |
Declare unique identifier, e.g. table#customers |
> |
Child, e.g. div>p |
* |
Multiplier, e.g. ul>li*5 |
( ) |
Grouping, often used with multiplier |
+ |
Sibling, e.g. div>h3+p*3 |
{blahblah} |
Text content for an element, e.g. h3{Hello, world!} |
[ |
Custom attribute, e.g. span[data-bind |
See the Emmet cheat sheet for full coverage.
What version of an npm package is installed?
# All globally-installed packages
npm list -g
# One specific globally-installed package
npm list -g express
# While in the root of a project, one specfic package
npm list express
Heroku Dev Center, documentation:
Heroku CLI Usage
If you attempt to do this:
git push heroku master
…and it generates an error, then verify that your project knows its remote destination (i.e. its hosting Heroku app):
git remote -v
If it does know its remote destination, then you can set/fix it. As described and shown here, this command will set the remote to an existing Heroku app named “foo-bar-app”:
heroku git:remote -a foo-bar-app
Various commands:
# Is the database engine installed?
mongod --version
# Is the command shell installed?
mongo --version
# Start the database engine
mongod --dbpath [path-to-database-folder]