Videos uploaded by user “Steve Griffith”
JavaScript Array forEach Method
There is a fairly new method which has been added to the Array object in JavaScript. It is known as the forEach( ) method. It will call a function once for each element in the array. The function will have direct access to the array element, the index number, and the entire array.
Views: 17685 Steve Griffith
JavaScript Array map method
All Arrays in JavaScript have a map method which allows us to loop through every element in the original array, perform some action and then generate a new Array based on our actions. The map method has very similar syntax to the forEach method. https://www.youtube.com/watch?v=159EAISAxwg The primary difference is that the map function needs a return statement in order to create the new Array.
Views: 6954 Steve Griffith
CSS position sticky
The CSS position property has been around since the start of CSS. In the beginning it only had 3 values - static, absolute, and relative. Then in CSS 2 they added position fixed, which was great for menus, media players, and advertisements. In CSS 3, we now have the new value sticky. Code GIST: https://gist.github.com/prof3ssorSt3v3/98fb4d2d731815192f0c23c03cb75dcb Basics of CSS Position property : https://www.youtube.com/watch?v=hYJTyff1JzM
Views: 3587 Steve Griffith
Get Started with Postman Mock Servers
This video covers the other side of creating APIs - when you are ready to test your client-side calls to an API but the server-side code is not ready yet. Postman allows you to create Mock Servers that you can use to create documentation as well as to generate test data for your client-side AJAX calls. Code GIST: https://gist.github.com/prof3ssorSt3v3/e3c12f131133ba1e2003d1f4a394bb7b First Postman video: https://www.youtube.com/watch?v=t5n07Ybz7yI
Views: 4951 Steve Griffith
Understanding Synchronous vs  Asynchronous JavaScript
Most of what you write in JavaScript is Synchronous procedural code read from top to bottom and executed in the single main thread of the JavaScript process. However, that doesn't mean that JavaScript can't run code in an Asynchronous way. The video discusses the differences and how that can unexpectedly impact the code that you write. Promises Playlist: https://www.youtube.com/watch?v=SmPouEFKOBg&list=PLyuRouwmQCjngZXVn48vYmPK_1yAF-fLw Code GIST: https://gist.github.com/prof3ssorSt3v3/c95822670b6a707dbcf8cf55b2c57160
Views: 12353 Steve Griffith
Managing Environmental (ENV) variables on Mac OSX
This video covers how you can create temporary ENVIRONMENTAL variables in the terminal as well as how you can use the .bash_profile file to create permanent ENV variables. Also covered is how to open the .bash_profile file in the editor of your choice. Also how to use ENV variables inside the values of other ENV variables.
Views: 4733 Steve Griffith
JS Event target versus currentTarget
Whenever you add an event listener to an object in the DOM there are two different but similar properties that you can access. target and currentTarget both refer to an element that is listening for the event. This video explains with examples how these two properties differ. Thanks to Jordan M. for the question that prompted this video. Code GIST: https://gist.github.com/prof3ssorSt3v3/14d3aa4d187de8a1da073c931a66d702
Views: 4068 Steve Griffith
The Basics of Using Postman for API Testing
Postman is a great tool for testing APIs. Wether you are writing the client-side or server-side of an API, use Postman to test that your API is accepting and responding with the appropriate Headers, Methods, and Data. https://www.getpostman.com/ You can download and install the Postman application directly on Windows, OSX and Linux OR you can install and use the Chrome Extension version.
Views: 193087 Steve Griffith
Object keys, values, and entries methods
This video covers three Object methods - keys( ), values( ) and entries( ). All three methods will create an iterable Array from the Object that you can then use in conjunction with other Array and iterable methods. Code GIST: https://gist.github.com/prof3ssorSt3v3/b3779e85e74ecd8b2ba0dec1e7dd6ae6 MDN Object.keys ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys MDN Object.values ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values MDN Object.entries ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries
Views: 2104 Steve Griffith
AngularJS using $broadcast, $emit, and $on
AngularJS version 1.x Using named views, nested views, and the built-in $broadcast, $emit, and $on methods to pass data around inside of an Angular JS application.
Views: 6877 Steve Griffith
JavaScript Promises all Method
How to use the JavaScript Promise.all( ) method to handle multiple simultaneous Promises. For example, multiple AJAX calls can be made using the fetch( ) method, each of which will return a Promise. Code GIST: https://gist.github.com/prof3ssorSt3v3/a808cb3136c7ccb94104905296930370 MDN Promise.all reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all Basic Promises video: https://www.youtube.com/watch?v=SmPouEFKOBg Promise.race( ) video: https://www.youtube.com/watch?v=1cFl7WQDYYo
Views: 2951 Steve Griffith
Intro to Mobile App Development with Cordova 7
Apache Cordova is a fantastic framework for building mobile apps with HTML, CSS, and JavaScript. Version 7 has recently been released with support for using package.json to manage platforms, plugins, and the build process. CORDOVA video playlist - https://www.youtube.com/watch?v=CDY1fRZycGk&list=PLyuRouwmQCjkLnfGRHMosenaxPq9PqH0n CORDOVA CHEATSHEET - https://codepen.io/mad-d/pen/OPPyOw Apache Cordova - http://cordova.apache.org/ Adobe PhoneGap - https://phonegap.com/ NodeJS - https://nodejs.org/en/
Views: 68285 Steve Griffith
JavaScript for loops
This video covers the basic concepts behind looping as well as the JavaScript syntax used in a for..loop
Views: 1182 Steve Griffith
JS Touch Events on Mobile Devices
Beyond Mouse Events we have Touch events on mobile devices. Unfortunately, there is NO tap, doubletap, swipe, swipeleft, swiperight, pan, panleft, panright, rotate, pinch, or zoom events. We DO have touchstart, touchend, touchcancel, and touchmove. These events give us lots of information about where the touches are taking place. We can use this information to write functions that will mimic those other events. Code GIST: https://gist.github.com/prof3ssorSt3v3/946bf0ce9c8544e7795ce9962975d2f6
Views: 8262 Steve Griffith
JavaScript Nested Loops with Arrays and Objects
How to use nested loops to access all the elements and properties inside multi-dimensional Arrays and Objects. These are the skills you need to be able to properly access data inside. Code GIST: https://gist.github.com/prof3ssorSt3v3/203f8887ce15e558ffda9abe50bfb2a7 Any questions, please ask below.
Views: 14697 Steve Griffith
Intro to JavaScript Symbols
ES6 introduced a new type of Primitive value - Symbols. This tutorial covers what exactly Symbols are and how you can manage them. Code GIST: https://gist.github.com/prof3ssorSt3v3/c84cdc27b2cea971b313c1b0a8c8fb2d
Views: 1037 Steve Griffith
ES6 JavaScript Arrow Functions
Examining the differences between standard JavaScript functions and the new ES6 Arrow functions. Basically a condensed and efficient way to write functions under certain conditions. Arrow functions are well suited to be used for callback functions. Code Gist: https://gist.github.com/prof3ssorSt3v3/36d4e5c84616dfbd9e5bd27b514fd06e MDN reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
Views: 1545 Steve Griffith
Nodes Versus Elements in the DOM
When you are using JavaScript to traverse or manipulate the DOM it is very important to understand the difference between Nodes and Elements. There are many methods available in JavaScript which can fetch lists or individual Elements or Nodes. You need to know which one you are getting so you can handle it appropriately. The Node Types 1 - Element Node 3 - Text Node 8 - Comment Nodes 9 - Document Node 10 - Document Type Node 11 - Document Fragment Node
Views: 2021 Steve Griffith
Using Object assign( )  to Copy or Merge Objects
An efficient way to do a shallow copy of an Object or merge multiple objects is to use the Object.assign method. The copying will be a shallow copy which means that it does not copy the prototype chain of the source objects. Code Gist: https://gist.github.com/prof3ssorSt3v3/22b080dcef57dc404184316b95ad0b8c MDN reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
Views: 1334 Steve Griffith
Content Security Policy meta tags
To improve the security of your websites and hybrid mobile apps you should always include a content-security-policy meta tag. This video covers the different possible values that you can include as the content of your meta tag. Code GIST: https://gist.github.com/prof3ssorSt3v3/a28a0b105225954b0505b231128c5b84
Views: 2150 Steve Griffith
JavaScript Object create method
When you want to create a new Object and have it inherit properties from another Object or series of prototype linked objects then Object.create( ) is the thing you need. Code GIST: https://gist.github.com/prof3ssorSt3v3/80210a736bf2f0cf799afd7488e1d099 Object.assign method video: https://www.youtube.com/watch?v=UkGsRyGeI2g
Views: 1290 Steve Griffith
HTML5 JavaScript Web Storage using localStorage and sessionStorage
What is the difference between localStorage and sessionStorage? How can I save complex objects and arrays in localStorage if all it will hold are Strings? How to use the JSON object. Code GIST: https://gist.github.com/prof3ssorSt3v3/ff50d41496473cfc7755dd747578462f MDN reference: https://developer.mozilla.org/en-US/docs/Web/API/Storage
Views: 8242 Steve Griffith
Composition vs Inheritance in JavaScript
This is more of an intermediate topic in JavaScript. Understanding the implications of how you architect your applications will help you down the road as your application becomes more mature and requires updates. Inheritance and Composition are two approaches to designing your Objects to be maintainable. This video focuses on the weakness of Inheritance when your objects start to morph in the future. The examples in this video are built without Classes. They use Object.create and Object.assign to show the more standard JavaScript syntax. Code GIST: https://gist.github.com/prof3ssorSt3v3/14e0432af3add454f59d7ffcc0e18ee4 If you want more information about how to use Object.create( ) or Object.assign( ) watch these: Object.assign: https://www.youtube.com/watch?v=UkGsRyGeI2g Object.create: https://www.youtube.com/watch?v=qqyZn8X9M3I
Views: 2084 Steve Griffith
Intro to Typed Arrays in JavaScript
Typed Arrays are an efficient way to store arrays of numbers that are of the same type - 8-bit integer, unsigned 16-bit integers, 32-bit floats, etc. This tutorial explains the basic idea behind them and provides a very basic code sample on how to create one and access it's values. The code gist includes links to the MDN documentation pages for all the main types and objects discussed. Code GIST: https://gist.github.com/prof3ssorSt3v3/8f879e711aee27d00cbc89d7c89f6668
Views: 681 Steve Griffith
JavaScript ES6 Promises - Basic Syntax
The fundamentals about how JavaScript ES6 Promises work and how you could use them in your code. This is the first in a series of videos about Promises. Next Promise video: https://www.youtube.com/watch?v=nB-aLKE76pY
Views: 2576 Steve Griffith
Understanding the CSS Display Property
The CSS display property controls whether elements are inline or block elements, or something else. You can use CSS to change the way any element behaves in its positioning relative to other elements. Code GIST: https://gist.github.com/prof3ssorSt3v3/7d60f07ea61d7fc7bda8e2d2c8726ceb
Views: 2133 Steve Griffith
Matching Media Queries with JS
There is a built-in method on the Window object that lets you test your webpage against any media-query so that your script can be just as responsive as your CSS.
Views: 665 Steve Griffith
Iterable vs Enumerable in JavaScript
Iterable and Enumerable are different things in JavaScript. When you add properties to an object they can be defined as enumerable or not. Some object types like Arrays, Strings, Maps, Sets, and NodeLists also have Iterators which are objects that let you access certain values from the object. This video discusses the difference between the two and how the for...in and for...of loops take advantage of the difference.
Views: 1193 Steve Griffith
Basic Intro to Building Webpages
This video covers just the fundamentals of building HTML web pages. Code used in this video: https://gist.github.com/prof3ssorSt3v3/16ffdb496c4e09388ec8f318dd8d6237 Mozilla Developer Network (MDN) reference for HTML: https://developer.mozilla.org/en-US/docs/Web/HTML Brackets download: http://brackets.io/
Views: 868 Steve Griffith
CSS Layouts - Flexbox vs Grid vs Float
This tutorial discusses the differences and similarities between using CSS Flexbox, CSS Grids, and CSS Floats for building layouts. Live Codepen sample: https://codepen.io/mad-d/pen/pxrpKJ?editors=1100
Views: 1015 Steve Griffith
Array from Method
JavaScript has an Array method called from( ) which will allow us to quickly and easily create a shallow copy of an Array. Code GIST: https://gist.github.com/prof3ssorSt3v3/24f55de9cd39f65620cec9846f0a6153
Views: 373 Steve Griffith
Introduction to JavaScript Event Listeners
What are Event Listeners? What does Event-driven programming mean? How can I use event listeners to control user interactions on my web pages, in my web apps, and in my mobile hybrid apps? Code GIST: https://gist.github.com/prof3ssorSt3v3/7ca75bb8fbc2484b6824c495797e9188 Fat Arrow Functions in JavaScript: https://www.youtube.com/watch?v=2v4bulVra-w Please submit your questions below.
Views: 6575 Steve Griffith
Learning GitHub - Gists
This video is the third video in the series on Learning GitHub. It covers what Gists are and how you can create and use them. Code GIST: https://gist.github.com/prof3ssorSt3v3/5b8f2beb23aef85770ed1577e7418c32
Views: 701 Steve Griffith
Introduction to TheMovieDB API
There is a great API to use for searching for and displaying information about movies and TV shows - https://themoviedb.org/ This video covers how to get an API key and how to use the API to fetch and display information about your favourite movies and shows. The Markdown ReadMe file linked to below has all the reference links for signing up for an API and getting a free API key. Markdown ReadME file: https://gist.github.com/prof3ssorSt3v3/bd984b862b71ebbe0a65aee4f2e6746d HTML Code GIST: https://gist.github.com/prof3ssorSt3v3/d7946ea634448c501dd8287cbe3f2c0b
Views: 16280 Steve Griffith
Understanding CSS Position
The CSS position property is at the core of understanding how CSS lets you create layouts. There were three property values that were part of the original spec. Then in CSS 2.1 position: fixed was added and in CSS3 position: sticky was added. This tutorial covers the first four properties in depth. The last property has a video all to itself. Code GIST: https://gist.github.com/prof3ssorSt3v3/88bc3704b2d0b75d7a9b8fc46614a0c1 CSS Position sticky video: https://www.youtube.com/watch?v=pYegv7O21Lo
Views: 567 Steve Griffith
JavaScript for..in Loops
Another common type of loop in JavaScript is the for..in loop. When working with Arrays the for loop is the most common type of loop. When working with Objects, the for..in loop is usually the best choice.
Views: 1252 Steve Griffith
Creating and Dispatching Custom JS Events
Did you know that, even though the browser comes with a long list of built-in events, you can create your own custom events and have them dispatched whenever you want? Code GIST: https://gist.github.com/prof3ssorSt3v3/c44404e79d3421723c2a192b0049dc0a
Views: 2538 Steve Griffith
Combining fetch and the Promise all Method
When you use fetch( ) to make your AJAX calls, you will be returned a Promise object. That is why we use then( ) and catch( ) with fetch( ). That means we can use Promise.all( ) and wait for all the data files to be returned before doing anything with any of the data. This video covers the process of how to make your page wait for all the files to be returned. Code GIST: https://gist.github.com/prof3ssorSt3v3/03d8359f126b300e010748819f991b9b
Views: 928 Steve Griffith
JavaScript Array some method
How to use the JavaScript Array some method to determine whether or not an array contains a specific value. Similar to the Array contains method but it has better browser support and can be used with a functional programming approach. Code Gist: https://gist.github.com/prof3ssorSt3v3/184f901cae6a1f311768da51c22a696c MDN reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some Array includes method video: https://www.youtube.com/watch?v=iOml7u_sAVk
Views: 954 Steve Griffith
JavaScript Fetch with Request and Headers Objects
Going beyond just the basics of using fetch for AJAX calls, this video talks about the finer details of using custom Request objects, custom Header objects, as well as some of the methods that are available to deal with the response. A brief discussion of using the Chrome Dev Tools to monitor the network requests is included. Code GIST: https://gist.github.com/prof3ssorSt3v3/dbc5efa03371068e55367b1278e5ba22 List of Forbidden HTTP Headers: https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name Request Object Reference: https://developer.mozilla.org/en-US/docs/Web/API/Request/Request Headers Object Reference: https://developer.mozilla.org/en-US/docs/Web/API/Headers
Views: 9411 Steve Griffith
Javascript Ternary Operator
A comparison of the Javascript if statement and the ternary operator. (I refer to the Ternary Statement in the video. Technically this should be called the Ternary operator ?: )
Views: 1062 Steve Griffith
Private Variables in JavaScript
Many programming languages have the concept of public and private methods and properties. Private methods and properties are ones that cannot be seen or accessed from outside their containing class or file. While JavaScript does not officially have access modifiers that let you mark something as public or private there is a way that we can create Private variables and methods. That is the topic for this video. Code GIST: https://gist.github.com/prof3ssorSt3v3/83fb4270f6ac6d39f53dfb9be6e5f6da IIFE video: https://www.youtube.com/watch?v=Xd7zgPFwVX8
Views: 1101 Steve Griffith
Using the Cordova Camera Plugin
This video talks about how you can use the cordova Camera plugin to take pictures from your Hybrid App. The example uses Android, however the script will work on either iOS or Android. I use Android for the example because the iOS Simulator will NOT allow you to use the camera. Code GIST: https://gist.github.com/prof3ssorSt3v3/75092fbba5428fb9369fa02b75fa73b2 Camera Documentation: http://cordova.apache.org/docs/en/latest/reference/cordova-plugin-camera/index.html
Views: 12897 Steve Griffith
JavaScript Promise race method
Similar to the JavaScript Promise.all( ) syntax, the Promise.race( ) method allows you to provide a series of Promises and only work with the result of the first one to Resolve. Code GIST: https://gist.github.com/prof3ssorSt3v3/c4eea8742fd3a082d1e119b30acf5be6 Basic Promise video: https://www.youtube.com/watch?v=SmPouEFKOBg setTimeout video: https://www.youtube.com/watch?v=0VVJSvlUgtg Promise.all( ) video: https://www.youtube.com/watch?v=0jcEluMNy5A MDN Promise.race( ) reference page: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/race
Views: 1099 Steve Griffith
Capture DOM Changes with MutationObservers
MutationObservers allow us a way to track the changes that happen in the DOM based on other code. If you need to trigger functions that run when changes have been made to your webpages then Mutation Observers are what you need. Code GIST: https://gist.github.com/prof3ssorSt3v3/3146ce1a727861edd05dfc6523e969ea
Views: 898 Steve Griffith
Fetch in Under Five
How to use the new ES6 fetch( ) method for AJAX calls in under five minutes. You can use the code gist to follow along. Code GIST: https://gist.github.com/prof3ssorSt3v3/fba962e5ca90e6613a4ad75343b991c2
Views: 508 Steve Griffith
JavaScript Array reduce method
How to use the JavaScript Array reduce method. Similar to the map, filter, and forEach methods in how it is written, the main difference with this method is that it wants to return a single value that represents some aspect of the values in the original Array. Code Gist: https://gist.github.com/prof3ssorSt3v3/01b880467abc7e0ac2d02bfdfba6e1e6 MDN reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
Views: 1515 Steve Griffith
NodeLists versus HTMLCollections in the DOM
Before you can effectively create and manipulate HTML content using JavaScript you need to understand the differences between Nodes and Elements and the difference between NodeLists and HTMLCollections. Some methods return NodeLists and others return HTMLCollections. This video covers the difference between Nodes, Elements, HTMLCollections and NodeLists. Also discussed are many of the methods and properties that will return these different objects. Code GIST: https://gist.github.com/prof3ssorSt3v3/0bf1e06501ac934e2dbae2c0165e2e75 MDN NodeList reference: https://developer.mozilla.org/en-US/docs/Web/API/NodeList MDN HTMLCollection reference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLCollection
Views: 1651 Steve Griffith
JavaScript Array concat method
A quick and efficient method to combine two or more arrays and still maintain the individual elements in the finished array. Using unshift( ) or push( ) will add the whole array as a single element in the new array. If we wanted to add the elements individually then we would either have to use a loop and call push repeatedly OR we can use the concat( ) method and complete the same work with a single line of code. The added benefit is that we can chain other Array methods at the end. Code GIST: https://gist.github.com/prof3ssorSt3v3/544e9f1d866dd68da33ac89113c4b3a1
Views: 1237 Steve Griffith
ES6 Iterator & Generator Fundamentals
This tutorial covers all the basics of how iterators and generators work. The connection with for...of loops is explained. How to use built-in iterators is demonstrated. How to build custom iterators for objects is explained and demonstrated. Code GIST: https://gist.github.com/prof3ssorSt3v3/ec8fe7f28ecaa94bef793709d1b83b2f Iterables vs Enumerables video: https://www.youtube.com/watch?v=HZjvoftRvGE
Views: 683 Steve Griffith

Baclofen 5 mg tablets
28 prednisone 20mg
Venoruton 300 generico de crestor
Naprosyn ec 375 mg tylenol
20 greenwell road witham specialist