Each new term in the Fibonacci sequence is generated by adding the previous two terms. By considering the terms in the Fibonacci sequence whose values do not exceed n, find the sum of the even-valued terms.
00:00 - Introduction 01:39 - Working 08:37 - Solution
-————————————————————————————————————- Project Euler (named after Leonhard Euler) is a website dedicated to a series of computational problems intended to be solved with computer programs. The project attracts adults and students interested in mathematics and computer programming. Since its creation in 2001 by Colin Hughes, Project Euler has gained notability and popularity worldwide. It includes over 700 problems, with a new one added once every one or two weeks. Problems are of varying difficulty, but each is solvable in less than a minute of CPU time using an efficient algorithm on a modestly powered computer. As of 5 April 2020, Project Euler has more than 1,000,000 users, from all over the world, who have solved at least one problem.
NOTE: I am not a teacher by any means, these videos are just to help me improve my understanding.
We can retrieve the data that body-parser captured from the form during a POST request from the request's body field. This is done by setting up a POST route for the form, running the urlencoded function, followed by our own middleware function.
Link to challenge : https://www.freecodecamp.org/learn/apis-and-microservices/basic-node-and-express/get-data-from-post-requests
Written Guide : https://www.notion.so/ganeshh123/Get-Data-from-POST-Requests-becb31b940214d35ae096a2ffa94de33
Full Playlist for this course : https://www.youtube.com/playlist?list=PLhGp6N0DI_1SdIZ3uhbXnKAq2UcICSnWS
All Writen Guides for this course : https://www.notion.so/ganeshh123/dab5e189407244c793c2f32d066eee9f
All My Tutorials can be found at : https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26
Concepts:
bodyParser.urlencoded()
Returns middleware that only parses urlencoded bodies and only looks at requests where the Content-Type header matches the type option. This parser accepts only UTF-8 encoding of the body and supports automatic inflation of gzip and deflate encodings. A new body object containing the parsed data is populated on the request object after the middleware (i.e. req.body). This object will contain key-value pairs, where the value can be a string or array (when extended is false), or any type (when extended is true).
https://github.com/expressjs/body-parser#bodyparserurlencodedoptions
request.body
Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().
https://expressjs.com/en/api.html#req.body
app.post()
Routes HTTP POST requests to the specified path with the specified callback functions.
https://expressjs.com/en/api.html#app.post.method
Middleware
Middleware functions are functions that have access to the request object (req), the response object (res), and the next middleware function in the application’s request-response cycle. The next middleware function is commonly denoted by a variable named next.
http://expressjs.com/en/guide/using-middleware.html
response.json()
Sends a JSON response. This method sends a response (with the correct content-type) that is the parameter converted to a JSON string using JSON.stringify(). The parameter can be any JSON type, including object, array, string, Boolean, number, or null, and you can also use it to convert other values to JSON.
https://expressjs.com/en/api.html#res.json
-————————————————————————————————————-
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. Node.js lets developers use JavaScript t
...
https://www.youtube.com/watch?v=9zqOoBAEuEg
This is a full walkthrough for the American-British Translator project on freeCodeCamp. Firstly, we compile the data from the various data objects to create a simple translation dictionary list. After that, we implement the translation functionality, using string replacement methods.
Link to Project : https://www.freecodecamp.org/learn/quality-assurance/quality-assurance-projects/american-british-translator
Written Guide and Source Code: https://www.notion.so/ganeshh123/American-British-Translator-c2326f06789a4fa4b44ac65e7c051c27
Full Playlist for this course : https://www.youtube.com/playlist?list=PLhGp6N0DI_1THkXF3kT2kVnN8pR4HCbGp
All Writen Guides for this course : https://www.notion.so/ganeshh123/2362de926605419faadb16f295b772c6
All My Tutorials can be found at : https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26
00:00 - Project Setup
04:05 - Test 1 - I can enter a simple sentence into the text area and select whether to translate to British or American English from the dropdown menu
07:05 - Creating a simple list for Translation
14:02 - Test 2 - When the "Translate" button is pressed, append the translated sentence to the translated-sentence div
21:09 - Test 3 - Your application should handle the way time is written in American and British English
25:35 - Test 4 - Your application should also handle the way titles/honorifics are abbreviated in American and British English
28:11 - Test 5 - Wrap any translated spelling or terms with span class="highlight".../span tags so they appear in green
32:16 - Test 6 - If the sentence in the text area has no spelling or terms that should be translated, append the message "Everything looks good to me!" to the translated-sentence div
34:20 - Test 7 - If there is no text in the text area, append the message "Error: No text to translate." to the error-msg div so the text appears in red
36:52 - Test 8 - I can press the "Clear Input" button to remove all text from the text area and the translated-sentence div
39:26 - Styling & Final Touches
-————————————————————————————————————-
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting—running scripts server-side to produce dynamic web page content before the page is sent to the user's web browser.
Express.js, or simply Express, is a web application framework for Node.js. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js. Express runs between the server created by Node.js and the frontend pages of a web application. Express a
...
https://www.youtube.com/watch?v=25qmCDFK6Pk
To Update records, it's a 3 step process: Find and Retrieve the record, Edit and make changes, and Save the changes to the database. We can combine the concepts we learned in the previous challenges to do this.
Link to challenge : https://www.freecodecamp.org/learn/apis-and-microservices/mongodb-and-mongoose/perform-classic-updates-by-running-find-edit-then-save
Written Guide : https://www.notion.so/ganeshh123/Perform-Classic-Updates-by-Running-Find-Edit-then-Save-11a8663dc65145fabbe022a893510910
Full Playlist for this course : https://www.youtube.com/playlist?list=PLhGp6N0DI_1QJMb63oecYZ3lLjrF4PnIs
All Writen Guides for this course : https://www.notion.so/ganeshh123/6f987e7260914612b06adf840dbb00c3
All My Tutorials can be found at : https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26
Concepts:
findById()
Finds a single document by its _id field. findById(id) is almost* equivalent to findOne({ _id: id }). If you want to query by a document's _id, use findById() instead of findOne().
https://mongoosejs.com/docs/api.html#model_Model.findById
model.findOne()
Behaves like .find(), but it returns only one document (not an array), even if there are multiple items. It is especially useful when searching by properties that you have declared as unique.
https://mongoosejs.com/docs/api.html#model_Model.find
document.save()
Saves this document by inserting a new document into the database if document.isNew is true, or sends an updateOne operation only with the modifications to the database, it does not replace the whole document in the latter case.
https://mongoosejs.com/docs/api/document.html#document_Document-save
Model
Models are fancy constructors compiled from Schema definitions. An instance of a model is called a document. Models are responsible for creating and reading documents from the underlying MongoDB database.
https://mongoosejs.com/docs/models.html
mongoose.model()
When you call mongoose.model() on a schema, Mongoose compiles a model for you. The first argument is the singular name of the collection your model is for. Mongoose automatically looks for the plural, lowercased version of your model name.
https://mongoosejs.com/docs/models.html#compiling
-————————————————————————————————————-
MongoDB is a cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License (SSPL).
Mongoose is an Object Data Modeling (ODM) library for MongoDB and Node.js. It manages relationships between data, provides schema validation, and is used to translate between objects in code and the representat
...
https://www.youtube.com/watch?v=e_sxDMDmSo4
If you're failing this challenge, go to 16mins 2s
To get started with our chat app, we need to set up socket, our database connection, and GitHub Authentication. After this, we can start creating a websocket between the client and server script for realtime communication.
Link to Challenge : https://www.freecodecamp.org/learn/quality-assurance/advanced-node-and-express/set-up-the-environment
Written Guide: https://www.notion.so/ganeshh123/Set-up-the-Environment-acf010081f6649ebb8eccfad69669058
Full Playlist for this course : https://www.youtube.com/playlist?list=PLhGp6N0DI_1RL9djhgSH65pZhJ6xSyKX8
All Writen Guides for this course : https://www.notion.so/ganeshh123/ccf6039186334f83a54c1c9216f30e3c
All My Tutorials can be found at : https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26
00:00 - Introduction
00:20 - Example App
00:51 - Setting up Socket Server
http.createServer()
Returns a new instance of http.Server.
https://nodejs.org/api/http.html#http_http_createserver_options_requestlistener
Server() - exposed by require('socket.io')
Creates an Instance of a Socket Server.
https://socket.io/docs/server-api/#new-Server-httpServer-options
server.listen()
Starts the HTTP server listening for connections.
https://nodejs.org/api/http.html#http_server_listen
03:05 - Setting up Socket Client
04:48 - Listening for a 'connection' event
06:10 - Project Setup
06:32 - Database Connection
09:13 - GitHub Login Setup
12:04 - What's in this project?
13:40 - Challenge Solution
16:02 - IMPORTANT - How to allow testing
-————————————————————————————————————-
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting—running scripts server-side to produce dynamic web page content before the page is sent to the user's web browser.
Express.js, or simply Express, is a web application framework for Node.js. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js. Express runs between the server created by Node.js and the frontend pages of a web application. Express also handles an application's routing.
freeCodeCamp (also referred to as “Free Code Camp”) is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning web development accessible to anyone. Beginning with tutorials that introduce students to HTML, CSS and JavaScript, students progress to project assignments that they complete either alone or in p
...
https://www.youtube.com/watch?v=XBiuB8ekvdE
To add functionality to our log out button, we can use the logout() method passport adds to a request to destroy the session cookie, essentially signing them out. We also take a look at how we can set up a route to return 404 errors.
Link to Challenge : https://www.freecodecamp.org/learn/quality-assurance/advanced-node-and-express/logging-a-user-out
Written Guide: https://www.notion.so/ganeshh123/Logging-a-User-Out-3aa890c97b5441deb581b64f3e223feb
Full Playlist for this course : https://www.youtube.com/playlist?list=PLhGp6N0DI_1RL9djhgSH65pZhJ6xSyKX8
All Writen Guides for this course : https://www.notion.so/ganeshh123/ccf6039186334f83a54c1c9216f30e3c
All My Tutorials can be found at : https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26
00:00 - Introduction
00:15 - How Hyperlinks work in Express
00:58 - Creating a Logout Route
01:12 - Destroying the Session Cookie - request.logout()
Removes req.user, and clears the session.
https://github.com/jwalton/passport-api-docs#reqlogout
02:18 - Redirecting After Logout
03:14 - Sending out 404 Status - response.status()
Sets the HTTP status for the response. It is a chainable alias of Node’s response.statusCode.
https://expressjs.com/en/api.html#res.status
05:32 - Challenge Solution
-————————————————————————————————————-
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. Node.js lets developers use JavaScript to write command line tools and for server-side scripting—running scripts server-side to produce dynamic web page content before the page is sent to the user's web browser.
Express.js, or simply Express, is a web application framework for Node.js. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js. Express runs between the server created by Node.js and the frontend pages of a web application. Express also handles an application's routing.
freeCodeCamp (also referred to as “Free Code Camp”) is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning web development accessible to anyone. Beginning with tutorials that introduce students to HTML, CSS and JavaScript, students progress to project assignments that they complete either alone or in pairs. Upon completion of all project tasks, students are partnered with other nonprofits to build web applications, giving the students practical development experience.
freeCodeCamp (also referred to as “Free Code Camp”) is a non-profit organization that consists of an interac
...
https://www.youtube.com/watch?v=8wUJW6woWjw
We look at rendering the images from our API Data. We create an image tag for each picture, extracting and assigning the source and alt text properties from each object.
Link to challenge : https://www.freecodecamp.org/learn/data-visualization/json-apis-and-ajax/render-images-from-data-sources
Concepts:
img
The HTML img element embeds an image into the document.
The src attribute is required, and contains the path to the image you want to embed. The alt attribute holds a text description of the image, which isn't mandatory but is incredibly useful for accessibility — screen readers read this description out to their users so they know what the image means. Alt text is also displayed on the page if the image can't be loaded for some reason.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img
forEach()
The forEach() method executes a provided function once for each array element.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
innerHTML
The Element property innerHTML gets or sets the HTML or XML markup contained within the element.
https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML
-————————————————————————————————————-
JSON (JavaScript Object Notation) is an open standard file format, and data interchange format, that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and array data types.
Ajax is a set of web development techniques using many web technologies on the client side to create asynchronous web applications. With Ajax, web applications can send and retrieve data from a server asynchronously without interfering with the display and behavior of the existing page.
freeCodeCamp (also referred to as “Free Code Camp”) is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning web development accessible to anyone. Beginning with tutorials that introduce students to HTML, CSS and JavaScript, students progress to project assignments that they complete either alone or in pairs. Upon completion of all project tasks, students are partnered with other nonprofits to build web applications, giving the students practical development experience.
Thanks for Watching!
...
https://www.youtube.com/watch?v=HgFt5R-zUEg
We're going to dynamically set the height of the bars so that they are proportional to the values of the items in the array. We'll multiply them by a constant so that we can make them a little taller and distinguish the differences in height.
Link to challenge : https://www.freecodecamp.org/learn/data-visualization/data-visualization-with-d3/dynamically-change-the-height-of-each-bar
Similar Challenge : https://youtu.be/D0zzAn8T_g0
Concepts:
selection.attr(name[, value])
If a value is specified, sets the attribute with the specified name to the specified value on the selected elements and returns this selection. If the value is a constant, all elements are given the same attribute value; otherwise, if the value is a function, it is evaluated for each selected element, in order, being passed the current datum (d), the current index (i), and the current group (nodes), with this as the current DOM element (nodes[i]). The function’s return value is then used to set each element’s attribute. A null value will remove the specified attribute.
If a value is not specified, returns the current value of the specified attribute for the first (non-null) element in the selection. This is generally useful only if you know that the selection contains exactly one element.
https://github.com/d3/d3-selection/blob/v1.4.1/README.md#selection_attr
-————————————————————————————————————-
D3.js (also known as D3, short for Data-Driven Documents) is a JavaScript library for producing dynamic, interactive data visualizations in web browsers. It makes use of Scalable Vector Graphics (SVG), HTML5, and Cascading Style Sheets (CSS) standards.
freeCodeCamp (also referred to as “Free Code Camp”) is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning web development accessible to anyone. Beginning with tutorials that introduce students to HTML, CSS and JavaScript, students progress to project assignments that they complete either alone or in pairs. Upon completion of all project tasks, students are partnered with other nonprofits to build web applications, giving the students practical development experience.
Thanks for Watching
...
https://www.youtube.com/watch?v=QtE264YlscE
Mac Users - 03:10
This video shows you how to use Spicetify to install beautiful themes on Spotify Desktop!
-----------------------------------------------------------------------------------------------
Links:
Written Guide: https://www.notion.so/Tutorials-Ganesh-H-293ea420d34a464f9a1907e0405b5f26?p=20568f6bfc064c1890ab328f842ae14a
Spicetify Download : https://github.com/khanhas/spicetify-cli/releases
Themes: https://github.com/morpheusthewhite/spicetify-themes
-----------------------------------------------------------------------------------------------
Commands:
spicetify backup
spicetify apply
-----------------------------------------------------------------------------------------------
Music:
Corporate Summer by Plastic3 - https://plastic3.net/
Link: https://audiojungle.net/item/corporate-summer-inspiring-upbeat/106397
Jumbo by Alex Skindro - http://ncs.io/jumbo
---------------------------------------------------------------------------------------------
Spotify is an online music streaming service. It offers streaming of over 30 million songs. The service was founded in 2006 by Daniel Ek and Martin Lorentzon. Spotify has around 140 million active registered users. There are two versions of Spotify: a premium monthly subscription service and a free service which is supported by advertising.
https://www.spotify.com
---------------------------------------------------------------------------------------------
Thanks for Watching!
...
https://www.youtube.com/watch?v=ucFVg9jnXbw
We can use D3 to create SVG shapes on our page, to create visualizations of our data.
Link to challenge : https://www.freecodecamp.org/learn/data-visualization/data-visualization-with-d3/learn-about-svg-in-d3
Concepts:
SVG
Scalable Vector Graphics is an Extensible Markup Language-based vector image format for two-dimensional graphics with support for interactivity and animation. The SVG specification is an open standard developed by the World Wide Web Consortium since 1999. SVG images and their behaviors are defined in XML text files.
https://www.w3schools.com/graphics/svg_intro.asp
selection.style(name[, value[, priority]])
If a value is specified, sets the style property with the specified name to the specified value on the selected elements and returns this selection. If the value is a constant, then all elements are given the same style property value; otherwise, if the value is a function, it is evaluated for each selected element, in order, being passed the current datum (d), the current index (i), and the current group (nodes), with this as the current DOM element (nodes[i]). The function’s return value is then used to set each element’s style property. A null value will remove the style property. An optional priority may also be specified, either as null or the string important (without the exclamation point).
If a value is not specified, returns the current value of the specified style property for the first (non-null) element in the selection. The current value is defined as the element’s inline value, if present, and otherwise its computed value. Accessing the current style value is generally useful only if you know the selection contains exactly one element.
https://github.com/d3/d3-selection/blob/v1.4.1/README.md#selection_style
selection.attr(name[, value])
If a value is specified, sets the attribute with the specified name to the specified value on the selected elements and returns this selection. If the value is a constant, all elements are given the same attribute value; otherwise, if the value is a function, it is evaluated for each selected element, in order, being passed the current datum (d), the current index (i), and the current group (nodes), with this as the current DOM element (nodes[i]). The function’s return value is then used to set each element’s attribute. A null value will remove the specified attribute.
If a value is not specified, returns the current value of the specified attribute for the first (non-null) element in the selection. This is generally useful only if you know that the selection contains exactly one element.
https://github.com/d3/d3-selection/blob/v1.4.1/README.md#selection_attr
-————————————————————————————————————-
...
https://www.youtube.com/watch?v=WaKcg9ZeGZs