|
|
@ -32,8 +32,8 @@ |
|
|
|
"description": "Learn the basics of CI/CD and how to implement that with GitHub Actions.", |
|
|
|
"description": "Learn the basics of CI/CD and how to implement that with GitHub Actions.", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-07-09T19:59:14.191Z", |
|
|
|
"updatedAt": "2021-07-09T19:59:14.191Z", |
|
|
|
"createdAt": "2020-07-09T19:59:14.191Z" |
|
|
|
"createdAt": "2021-07-09T19:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "sso", |
|
|
|
"id": "sso", |
|
|
@ -41,8 +41,8 @@ |
|
|
|
"description": "Learn the basics of SAML and understand how does Single Sign On work.", |
|
|
|
"description": "Learn the basics of SAML and understand how does Single Sign On work.", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-07-01T19:59:14.191Z", |
|
|
|
"updatedAt": "2021-07-01T19:59:14.191Z", |
|
|
|
"createdAt": "2020-07-01T19:59:14.191Z" |
|
|
|
"createdAt": "2021-07-01T19:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "oauth", |
|
|
|
"id": "oauth", |
|
|
@ -50,8 +50,8 @@ |
|
|
|
"description": "Learn and understand what is OAuth and how it works", |
|
|
|
"description": "Learn and understand what is OAuth and how it works", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-06-28T19:59:14.191Z", |
|
|
|
"updatedAt": "2021-06-28T19:59:14.191Z", |
|
|
|
"createdAt": "2020-06-28T19:59:14.191Z" |
|
|
|
"createdAt": "2021-06-28T19:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "jwt-authentication", |
|
|
|
"id": "jwt-authentication", |
|
|
@ -59,8 +59,8 @@ |
|
|
|
"description": "Understand what is JWT authentication and how is it implemented", |
|
|
|
"description": "Understand what is JWT authentication and how is it implemented", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-06-20T19:59:14.191Z", |
|
|
|
"updatedAt": "2021-06-20T19:59:14.191Z", |
|
|
|
"createdAt": "2020-06-20T19:59:14.191Z" |
|
|
|
"createdAt": "2021-06-20T19:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "token-authentication", |
|
|
|
"id": "token-authentication", |
|
|
@ -68,8 +68,8 @@ |
|
|
|
"description": "Understand what is token based authentication and how it is implemented", |
|
|
|
"description": "Understand what is token based authentication and how it is implemented", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-06-02T20:59:14.191Z", |
|
|
|
"updatedAt": "2021-06-02T20:59:14.191Z", |
|
|
|
"createdAt": "2020-06-02T20:59:14.191Z" |
|
|
|
"createdAt": "2021-06-02T20:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "session-authentication", |
|
|
|
"id": "session-authentication", |
|
|
@ -77,8 +77,8 @@ |
|
|
|
"description": "Understand what is session based authentication and how it is implemented", |
|
|
|
"description": "Understand what is session based authentication and how it is implemented", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-05-26T20:59:14.191Z", |
|
|
|
"updatedAt": "2021-05-26T20:59:14.191Z", |
|
|
|
"createdAt": "2020-05-26T20:59:14.191Z" |
|
|
|
"createdAt": "2021-05-26T20:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "basic-authentication", |
|
|
|
"id": "basic-authentication", |
|
|
@ -86,8 +86,8 @@ |
|
|
|
"description": "Understand what is basic authentication and how it is implemented", |
|
|
|
"description": "Understand what is basic authentication and how it is implemented", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-05-19T20:59:14.191Z", |
|
|
|
"updatedAt": "2021-05-19T20:59:14.191Z", |
|
|
|
"createdAt": "2020-05-19T20:59:14.191Z" |
|
|
|
"createdAt": "2021-05-19T20:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "character-encodings", |
|
|
|
"id": "character-encodings", |
|
|
@ -95,8 +95,8 @@ |
|
|
|
"description": "Covers the basics of character encodings and explains ASCII vs Unicode", |
|
|
|
"description": "Covers the basics of character encodings and explains ASCII vs Unicode", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-05-14T20:59:14.191Z", |
|
|
|
"updatedAt": "2021-05-14T20:59:14.191Z", |
|
|
|
"createdAt": "2020-05-14T20:59:14.191Z" |
|
|
|
"createdAt": "2021-05-14T20:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "unfamiliar-codebase", |
|
|
|
"id": "unfamiliar-codebase", |
|
|
@ -104,8 +104,8 @@ |
|
|
|
"description": "Tips on getting getting familiar with an unfamiliar codebase", |
|
|
|
"description": "Tips on getting getting familiar with an unfamiliar codebase", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-05-04T20:59:14.191Z", |
|
|
|
"updatedAt": "2021-05-04T20:59:14.191Z", |
|
|
|
"createdAt": "2020-05-04T20:59:14.191Z" |
|
|
|
"createdAt": "2021-05-04T20:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "why-build-it-and-they-will-come-wont-work-anymore", |
|
|
|
"id": "why-build-it-and-they-will-come-wont-work-anymore", |
|
|
@ -113,8 +113,8 @@ |
|
|
|
"description": "Why “build it and they will come” alone won’t work anymore", |
|
|
|
"description": "Why “build it and they will come” alone won’t work anymore", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "spekulatius", |
|
|
|
"authorUsername": "spekulatius", |
|
|
|
"updatedAt": "2020-05-04T12:59:14.191Z", |
|
|
|
"updatedAt": "2021-05-04T12:59:14.191Z", |
|
|
|
"createdAt": "2020-05-04T12:59:14.191Z" |
|
|
|
"createdAt": "2021-05-04T12:59:14.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "dhcp-in-one-picture", |
|
|
|
"id": "dhcp-in-one-picture", |
|
|
@ -122,8 +122,8 @@ |
|
|
|
"description": "Here is what happens when a new device joins the network.", |
|
|
|
"description": "Here is what happens when a new device joins the network.", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-04-28T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-04-28T15:48:21.191Z", |
|
|
|
"createdAt": "2020-04-28T15:48:21.191Z" |
|
|
|
"createdAt": "2021-04-28T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "ssl-tls-https-ssh", |
|
|
|
"id": "ssl-tls-https-ssh", |
|
|
@ -131,8 +131,8 @@ |
|
|
|
"description": "Quick tidbit on the differences between SSL, TLS, HTTPS and SSH", |
|
|
|
"description": "Quick tidbit on the differences between SSL, TLS, HTTPS and SSH", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-04-22T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-04-22T15:48:21.191Z", |
|
|
|
"createdAt": "2020-04-22T15:48:21.191Z" |
|
|
|
"createdAt": "2021-04-22T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "asymptotic-notation", |
|
|
|
"id": "asymptotic-notation", |
|
|
@ -140,8 +140,8 @@ |
|
|
|
"description": "Learn the basics of measuring the time and space complexity of algorithms", |
|
|
|
"description": "Learn the basics of measuring the time and space complexity of algorithms", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-04-03T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-04-03T15:48:21.191Z", |
|
|
|
"createdAt": "2020-04-03T15:48:21.191Z" |
|
|
|
"createdAt": "2021-04-03T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "big-o-notation", |
|
|
|
"id": "big-o-notation", |
|
|
@ -149,8 +149,8 @@ |
|
|
|
"description": "Easy to understand explanation of Big-O notation without any fancy terms", |
|
|
|
"description": "Easy to understand explanation of Big-O notation without any fancy terms", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-03-15T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-03-15T15:48:21.191Z", |
|
|
|
"createdAt": "2020-03-15T15:48:21.191Z" |
|
|
|
"createdAt": "2021-03-15T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "random-numbers", |
|
|
|
"id": "random-numbers", |
|
|
@ -158,8 +158,8 @@ |
|
|
|
"description": "Learn how they are generated and why they may not be truly random.", |
|
|
|
"description": "Learn how they are generated and why they may not be truly random.", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-03-14T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-03-14T15:48:21.191Z", |
|
|
|
"createdAt": "2020-03-14T15:48:21.191Z" |
|
|
|
"createdAt": "2021-03-14T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "scaling-databases", |
|
|
|
"id": "scaling-databases", |
|
|
@ -167,8 +167,8 @@ |
|
|
|
"description": "Learn the ups and downs of different database scaling strategies", |
|
|
|
"description": "Learn the ups and downs of different database scaling strategies", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2020-02-18T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-02-18T15:48:21.191Z", |
|
|
|
"createdAt": "2020-02-18T15:48:21.191Z" |
|
|
|
"createdAt": "2021-02-18T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "what-is-internet", |
|
|
|
"id": "what-is-internet", |
|
|
@ -176,8 +176,8 @@ |
|
|
|
"description": "Learn the basics of internet and everything involved with this short video series", |
|
|
|
"description": "Learn the basics of internet and everything involved with this short video series", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "dmytrobol", |
|
|
|
"authorUsername": "dmytrobol", |
|
|
|
"updatedAt": "2020-02-29T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-02-29T15:48:21.191Z", |
|
|
|
"createdAt": "2020-02-29T15:48:21.191Z" |
|
|
|
"createdAt": "2021-02-29T15:48:21.191Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "torrent-client", |
|
|
|
"id": "torrent-client", |
|
|
@ -185,8 +185,8 @@ |
|
|
|
"description": "Learn everything you need to know about BitTorrent by writing a client in Go", |
|
|
|
"description": "Learn everything you need to know about BitTorrent by writing a client in Go", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "jesse", |
|
|
|
"authorUsername": "jesse", |
|
|
|
"updatedAt": "2020-01-17T15:48:21.191Z", |
|
|
|
"updatedAt": "2021-01-17T15:48:21.191Z", |
|
|
|
"createdAt": "2020-01-17T15:48:21.191Z", |
|
|
|
"createdAt": "2021-01-17T15:48:21.191Z", |
|
|
|
"canonical": "https://blog.jse.li/posts/torrent/" |
|
|
|
"canonical": "https://blog.jse.li/posts/torrent/" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
@ -195,8 +195,8 @@ |
|
|
|
"description": "How to Step Up as a Junior, Mid Level or a Senior Developer?", |
|
|
|
"description": "How to Step Up as a Junior, Mid Level or a Senior Developer?", |
|
|
|
"isPro": false, |
|
|
|
"isPro": false, |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"authorUsername": "kamranahmedse", |
|
|
|
"updatedAt": "2019-12-03T12:13:00.860Z", |
|
|
|
"updatedAt": "2020-12-03T12:13:00.860Z", |
|
|
|
"createdAt": "2019-12-03T12:13:00.860Z" |
|
|
|
"createdAt": "2020-12-03T12:13:00.860Z" |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"id": "design-patterns-for-humans", |
|
|
|
"id": "design-patterns-for-humans", |
|
|
|