You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/backend/databases.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ script = 'animation'
31
31
<dd>A set of properties of database transactions intended to guarantee validity even in the event of errors, power failures, etc. <b>Atomicity</b> guarantees that each transaction is treated as a single "unit", which either succeeds completely, or fails completely. <b>Consistency</b> ensures that a transaction can only bring the database from one valid state to another. <b>Isolation</b> ensures that concurrent execution of transactions leaves the database in the same state that would have been obtained if the transactions were executed sequentially. <b>Durability</b> guarantees that once a transaction has been committed, it will remain committed even in the case of a system failure.</dd>
@@ -103,7 +103,7 @@ The UNION operator is used to combine multiple similar schema result-sets.</dd><
103
103
<dd>Simplicity of design, simpler "horizontal" scaling to clusters of machines (which is a problem for relational databases), and finer control over availability. The data structures used by NoSQL databases (e.g. key-value, wide column, graph, or document) are different from those used by default in relational databases, making some operations faster in NoSQL. Sometimes the data structures used by NoSQL databases are also viewed as "more flexible" than relational database tables due to not having to adhere to previously defined schemas.</dd>
<dd>Use scripts to import CSV directly into Elasticsearch. Or use Logstash to import, parse, and transform data from various sources (Kafka, Apache Spark, Hadoop, MySQL, S3, etc). Logstash then exports into Elasticsearch. Logstash can scale across many nodes and guarantees at-least-once delivery. </dd>
Copy file name to clipboardExpand all lines: content/backend/node.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ script = 'animation'
21
21
<dt>Process.env</dt>
22
22
<dd>The process.env global variable is injected by the Node at runtime for your application to use and it represents the state of the system environment your application is in when it starts. Secret variables are stored here rather than in accessible code.</dd><br/>
Copy file name to clipboardExpand all lines: content/backend/web_framework.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -39,7 +39,7 @@ script = 'animation'
39
39
<dt>Middleware</dt>
40
40
<dd>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. </dd>
<dd>Hashing performs a one-way transformation on a password, turning the password into another string, called the hashed password. Salting is adding random data as an additional input to the hash function. Authentication then relies on comparing the salt + hash of the original password. This protects commonly used passwords or users who use the same password on several sites, by making all salted hash instances for the same password different from each other.</dd>
Preventing reverse engineering via brute forcing the hash algorithm
57
57
</figcaption>
58
58
</div><br/>
59
59
<dt>Cookies vs tokens</dt>
60
60
<dd>Cookie-based authentication is stateful. This means that an authentication record or session must be kept both server and client-side. Token-based authentication is stateless. The server does not keep a record of which users are logged in or which tokens have been issued. Instead, every request to the server is accompanied by a signed token which the server uses to verify the authenticity of the request. Today, most authentication has moved from cookie-based to token-based.</dd>
<dd><b>Passport</b> - authentication middleware for Node that provides "strategies" for handling all types of authentication mechanisms. <b>JWT</b> (JSON web tokens) and <b>OAuth</b> (login with Facebook/Google account) are the most common. </dd><br/>
@@ -101,7 +101,7 @@ script = 'animation'
101
101
<dd>In HTTPS, the communication protocol is encrypted using Transport Layer Security (TLS) to encrypt data before it is sent from the client to the server, thus preventing some common hacks (Man in the middle). HTTPS is based on <b>public/private-key cryptography</b>. This means that there is a key pair: The public key is used for encryption and the secret private key is required for decryption. A website certificate is a public key with a label identifying the owner. when your browser connects to an HTTPS server, the server will answer with its certificate. The browser checks if the certificate is valid and signed by a trusted certification authority. After the verification, the browser extracts the public key and uses it to encrypt information it sends back to the server. The server can decrypt it because the server has the matching private key.
<dd><b>Cross-origin resource sharing (CORS)</b> is a mechanism that allows restricted resources on a web page to be requested from another domain outside the domain from which the first resource was served. A web page may freely embed cross-origin images, stylesheets, scripts, iframes, and videos. Certain "cross-domain" requests, notably Ajax requests, are forbidden by default by the same-origin security policy. These have to be set explicitly on the header.</dd><br/>
Copy file name to clipboardExpand all lines: content/basics/cs.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -57,31 +57,31 @@ script = 'animation'
57
57
<dd>You fix the robot so that it's loading things correctly. The next day, one of your co-workers plays a prank on you and wires the loading dock robot to the automated printing systems. Every time the robot goes to load an original book, the factory printer makes a duplicate run of all the phonebooks! Fortunately, the robot's bug-detection systems are sophisticated enough that the robot doesn't try printing even more copies when it encounters a duplicate book for loading, but it still has to load every original and duplicate book that's been printed.</dd>
Binary search trees keep their keys in sorted order, so that lookup and other operations can use the principle of binary search. This means that each comparison allows the operations to skip about half of the tree, so that each lookup is much better than the linear time required to find items by key in an (unsorted) array, but slower than the corresponding operations on hash tables.
Hash functions are used in hash tables, to quickly locate a data record (e.g., a dictionary definition) given its search key. Specifically, the hash function is used to map the search key to a list; the index gives the place in the hash table where the corresponding record should be stored. Typically, the set of possible keys is larger than the number of different table indices, and so it will map several different keys to the same index which could result in collisions. So then, each slot of a hash table is associated with a set of records, often called a bucket.
Copy file name to clipboardExpand all lines: content/basics/fundamentals.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ script = 'animation'
29
29
<dd>The glue that connects all components together. It is connected to a power supply and contains expansion slots to allow for additional functionality. For example, a GPU can offload video processing from the CPU. </dd>
<p>A <b>bit</b> is the basic unit of information representing either 0 or 1. <br/>
@@ -89,6 +89,6 @@ script = 'animation'
89
89
<divclass="example">
90
90
<p>The Command line interface (CLI) is a means of interacting with a computer program where the user (or client) issues commands to the program in the form of successive lines of text (command lines). Most users rely upon graphical user interfaces and menu-driven interactions with a mouse. However, many software developers, system administrators and advanced users still rely heavily on command-line interfaces to perform tasks more efficiently, configure their machine, or access programs and program features that are not available through a graphical interface.</p>
91
91
<p>A Unix shell is a command-line interpreter or shell that provides a command line user interface for Unix-like operating systems. Bash is a Unix shell and command language that can be used for executing commands from the CLI. <i> Windows has their own their shell and command language. Install Git Bash on Windows to run these commands.</i></p>
<p>DNS resolution occurs by first looking up the name server for the TLD (.com or .net), then the name server for the full domain (medium.com), and lastly the numeric IP of the subdomain with domain (www.medium.com). To reduce the load on the Domain Name System servers, results are cached locally or in intermediate resolver hosts. A time to live (TTL) is included with the cached results, an expiration time after which the results must be discarded or refreshed.</p>
0 commit comments