1
0
mirror of https://github.com/kamranahmedse/developer-roadmap.git synced 2025-03-15 12:49:43 +01:00

Add python roadmap

This commit is contained in:
Kamran Ahmed 2021-09-26 22:02:59 +02:00
parent cda4789262
commit 236ec5a570
31 changed files with 3101 additions and 28 deletions

View File

@ -37,9 +37,10 @@
}, },
"featured": true, "featured": true,
"imagePath": "/roadmaps/frontend.png", "imagePath": "/roadmaps/frontend.png",
"resourcesPath": "/roadmaps/1-frontend/resources.md", "resourcesPath": "/roadmaps/100-frontend/resources.md",
"pdfUrl": "https://kamranahmedse.gumroad.com/l/frontend-roadmap", "pdfUrl": "https://kamranahmedse.gumroad.com/l/frontend-roadmap",
"id": "frontend", "id": "frontend",
"metaPath": "/roadmaps/100-frontend/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -76,13 +77,14 @@
"featuredDescription": "Step by step guide to becoming a backend developer in 2021", "featuredDescription": "Step by step guide to becoming a backend developer in 2021",
"featured": true, "featured": true,
"imagePath": "/roadmaps/backend.png", "imagePath": "/roadmaps/backend.png",
"resourcesPath": "/roadmaps/2-backend/resources.md", "resourcesPath": "/roadmaps/101-backend/resources.md",
"author": { "author": {
"name": "Kamran Ahmed", "name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse" "url": "https://twitter.com/kamranahmedse"
}, },
"pdfUrl": "https://kamranahmedse.gumroad.com/l/backend-roadmap", "pdfUrl": "https://kamranahmedse.gumroad.com/l/backend-roadmap",
"id": "backend", "id": "backend",
"metaPath": "/roadmaps/101-backend/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -113,7 +115,7 @@
"featuredDescription": "Step by step guide for DevOps or operations role in 2021", "featuredDescription": "Step by step guide for DevOps or operations role in 2021",
"featured": true, "featured": true,
"imagePath": "/roadmaps/devops.png", "imagePath": "/roadmaps/devops.png",
"resourcesPath": "/roadmaps/3-devops/resources.md", "resourcesPath": "/roadmaps/102-devops/resources.md",
"versions": [ "versions": [
"latest", "latest",
"2018", "2018",
@ -125,6 +127,7 @@
}, },
"pdfUrl": "https://kamranahmedse.gumroad.com/l/devops-roadmap", "pdfUrl": "https://kamranahmedse.gumroad.com/l/devops-roadmap",
"id": "devops", "id": "devops",
"metaPath": "/roadmaps/102-devops/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -152,8 +155,8 @@
"isTextHeavy": false, "isTextHeavy": false,
"isCommunity": false, "isCommunity": false,
"featured": true, "featured": true,
"contentPath": "/roadmaps/4-react/landscape.md", "contentPath": "/roadmaps/103-react/landscape.md",
"resourcesPath": "/roadmaps/4-react/resources.md", "resourcesPath": "/roadmaps/103-react/resources.md",
"versions": [ "versions": [
"latest", "latest",
"2018", "2018",
@ -165,6 +168,7 @@
}, },
"pdfUrl": "https://kamranahmedse.gumroad.com/l/react-roadmap", "pdfUrl": "https://kamranahmedse.gumroad.com/l/react-roadmap",
"id": "react", "id": "react",
"metaPath": "/roadmaps/103-react/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -192,8 +196,8 @@
"isTextHeavy": true, "isTextHeavy": true,
"isCommunity": true, "isCommunity": true,
"featured": true, "featured": true,
"contentPath": "/roadmaps/6-android/landscape.md", "contentPath": "/roadmaps/104-android/landscape.md",
"resourcesPath": "/roadmaps/6-android/resources.md", "resourcesPath": "/roadmaps/104-android/resources.md",
"versions": [ "versions": [
"latest", "latest",
"2018", "2018",
@ -204,6 +208,45 @@
"url": "https://twitter.com/kamranahmedse" "url": "https://twitter.com/kamranahmedse"
}, },
"id": "android", "id": "android",
"metaPath": "/roadmaps/104-android/meta.json",
"isUpcoming": false
},
{
"seo": {
"title": "Python Developer Roadmap: Learn to become a Python developer",
"description": "Community driven, articles, resources, guides, interview questions, quizzes for python development. Learn to become a modern Python developer by following the steps, skills, resources and guides listed in this roadmap.",
"keywords": [
"guide to becoming an python developer",
"python developer roadmap",
"python roadmap",
"become python developer",
"python developer skills",
"python skills test",
"skills for python development",
"learn python development",
"what is python",
"python quiz",
"python interview questions"
]
},
"title": "Python Developer",
"description": "Step by step guide to becoming a Python developer in 2021",
"featuredTitle": "Python",
"featuredDescription": "Step by step guide to becoming a Python Developer in 2021",
"isTextHeavy": true,
"isCommunity": true,
"featured": true,
"resourcesPath": "/roadmaps/105-python/resources.md",
"contentPath": "/roadmaps/105-python/landscape.md",
"versions": [
"latest"
],
"author": {
"name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse"
},
"id": "python",
"metaPath": "/roadmaps/105-python/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -235,8 +278,8 @@
"description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2021", "description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2021",
"featuredTitle": "DBA", "featuredTitle": "DBA",
"featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2021", "featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2021",
"contentPath": "/roadmaps/7-postgresql-dba/landscape.md", "contentPath": "/roadmaps/106-postgresql-dba/landscape.md",
"resourcesPath": "/roadmaps/7-postgresql-dba/resources.md", "resourcesPath": "/roadmaps/106-postgresql-dba/resources.md",
"author": { "author": {
"name": "Alexey Lesovsky", "name": "Alexey Lesovsky",
"url": "https://github.com/lesovsky" "url": "https://github.com/lesovsky"
@ -247,6 +290,7 @@
"detailed": false, "detailed": false,
"versions": [], "versions": [],
"id": "postgresql-dba", "id": "postgresql-dba",
"metaPath": "/roadmaps/106-postgresql-dba/meta.json",
"isUpcoming": false "isUpcoming": false
}, },
{ {
@ -273,8 +317,8 @@
"isCommunity": false, "isCommunity": false,
"isUpcoming": true, "isUpcoming": true,
"featured": true, "featured": true,
"contentPath": "/roadmaps/8-aws/landscape.md", "contentPath": "/roadmaps/107-aws/landscape.md",
"resourcesPath": "/roadmaps/8-aws/resources.md", "resourcesPath": "/roadmaps/107-aws/resources.md",
"versions": [ "versions": [
"latest", "latest",
"2018", "2018",
@ -284,7 +328,8 @@
"name": "Kamran Ahmed", "name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse" "url": "https://twitter.com/kamranahmedse"
}, },
"id": "aws" "id": "aws",
"metaPath": "/roadmaps/107-aws/meta.json"
}, },
{ {
"seo": { "seo": {
@ -311,12 +356,13 @@
"featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2021", "featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2021",
"isUpcoming": true, "isUpcoming": true,
"featured": true, "featured": true,
"contentPath": "/roadmaps/9-qa/landscape.md", "contentPath": "/roadmaps/108-qa/landscape.md",
"resourcesPath": "/roadmaps/9-qa/resources.md", "resourcesPath": "/roadmaps/108-qa/resources.md",
"author": { "author": {
"name": "Anas Fitiani", "name": "Anas Fitiani",
"url": "https://github.com/anas-qa" "url": "https://github.com/anas-qa"
}, },
"id": "qa" "id": "qa",
"metaPath": "/roadmaps/108-qa/meta.json"
} }
] ]

View File

@ -0,0 +1,3 @@
This roadmap is an extension to the [backend developer roadmap](/backend); you should follow that roadmap and once you reach "Pick a Language" block, visit this roadmap to learn python specific tools.
[![](/roadmaps/python.png)](/roadmaps/python.png)

View File

@ -0,0 +1,35 @@
{
"seo": {
"title": "Python Developer Roadmap: Learn to become a Python developer",
"description": "Community driven, articles, resources, guides, interview questions, quizzes for python development. Learn to become a modern Python developer by following the steps, skills, resources and guides listed in this roadmap.",
"keywords": [
"guide to becoming an python developer",
"python developer roadmap",
"python roadmap",
"become python developer",
"python developer skills",
"python skills test",
"skills for python development",
"learn python development",
"what is python",
"python quiz",
"python interview questions"
]
},
"title": "Python Developer",
"description": "Step by step guide to becoming a Python developer in 2021",
"featuredTitle": "Python",
"featuredDescription": "Step by step guide to becoming a Python Developer in 2021",
"isTextHeavy": true,
"isCommunity": true,
"featured": true,
"resourcesPath": "./resources.md",
"contentPath": "./landscape.md",
"versions": [
"latest"
],
"author": {
"name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse"
}
}

View File

@ -0,0 +1,7 @@
> **We are still preparing the resources**. Please check back later or [subscribe to get notified](/signup).
While we prepare the list, follow this simple advice to learn anything
> Just **pick a project and start working on it**, you will learn all that you need along the way.
**→**   [All Roadmaps](/roadmaps)  •  [Programming guides](/guides)  •  [Subscribe](/signup)

View File

@ -18,6 +18,7 @@ export type RoadmapType = {
imagePath?: string, imagePath?: string,
contentPath?: string; contentPath?: string;
resourcesPath: string; resourcesPath: string;
metaPath: string;
isCommunity: boolean; isCommunity: boolean;
isUpcoming: boolean; isUpcoming: boolean;
id: string; id: string;

2970
public/project/python.json Normal file

File diff suppressed because it is too large Load Diff

BIN
public/roadmaps/python.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 KiB

View File

@ -27,25 +27,31 @@
<url> <url>
<loc>https://roadmap.sh/android</loc> <loc>https://roadmap.sh/android</loc>
<changefreq>monthly</changefreq> <changefreq>monthly</changefreq>
<lastmod>2021-09-25T21:04:08.144Z</lastmod> <lastmod>2021-09-05T18:22:27.710Z</lastmod>
<priority>1.0</priority>
</url>
<url>
<loc>https://roadmap.sh/python</loc>
<changefreq>monthly</changefreq>
<lastmod>2021-09-26T19:59:45.842Z</lastmod>
<priority>1.0</priority> <priority>1.0</priority>
</url> </url>
<url> <url>
<loc>https://roadmap.sh/postgresql-dba</loc> <loc>https://roadmap.sh/postgresql-dba</loc>
<changefreq>monthly</changefreq> <changefreq>monthly</changefreq>
<lastmod>2021-09-25T21:04:08.144Z</lastmod> <lastmod>2021-09-05T18:22:27.710Z</lastmod>
<priority>1.0</priority> <priority>1.0</priority>
</url> </url>
<url> <url>
<loc>https://roadmap.sh/aws</loc> <loc>https://roadmap.sh/aws</loc>
<changefreq>monthly</changefreq> <changefreq>monthly</changefreq>
<lastmod>2021-09-25T21:04:08.144Z</lastmod> <lastmod>2021-09-22T12:34:39.639Z</lastmod>
<priority>1.0</priority> <priority>1.0</priority>
</url> </url>
<url> <url>
<loc>https://roadmap.sh/qa</loc> <loc>https://roadmap.sh/qa</loc>
<changefreq>monthly</changefreq> <changefreq>monthly</changefreq>
<lastmod>2021-09-25T21:04:08.144Z</lastmod> <lastmod>2021-09-22T12:27:37.565Z</lastmod>
<priority>1.0</priority> <priority>1.0</priority>
</url> </url>
<url> <url>

View File

@ -25,6 +25,8 @@ const roadmapsMeta = roadmapDirs.reduce((metaAcc, roadmapDirName) => {
resourcesPath = path.join(roadmapDir.replace(STORAGE_PATH, ''), roadmapMeta.resourcesPath); resourcesPath = path.join(roadmapDir.replace(STORAGE_PATH, ''), roadmapMeta.resourcesPath);
} }
let metaPath = path.join(roadmapDir.replace(STORAGE_PATH, ''), 'meta.json');
console.log(`----------------------------`); console.log(`----------------------------`);
console.log(`[#] Roadmap: ${roadmapMeta.title}`); console.log(`[#] Roadmap: ${roadmapMeta.title}`);
console.log(`[x] Generating sidebar`); console.log(`[x] Generating sidebar`);
@ -36,6 +38,7 @@ const roadmapsMeta = roadmapDirs.reduce((metaAcc, roadmapDirName) => {
id: roadmapSlug, id: roadmapSlug,
contentPath: contentPath, contentPath: contentPath,
resourcesPath: resourcesPath, resourcesPath: resourcesPath,
metaPath: metaPath,
isUpcoming: roadmapMeta.isUpcoming || false isUpcoming: roadmapMeta.isUpcoming || false
} }
]; ];

View File

@ -72,14 +72,16 @@ function getPageRoutes() {
return pageRoutes; return pageRoutes;
} }
function generateNode({ function generateNode(nodeProps) {
slug, const {
basePath, slug,
fileName, basePath,
priority = null, fileName,
date = null, priority = null,
frequency = 'monthly' date = null,
}) { frequency = 'monthly'
} = nodeProps;
const pagePath = path.join(basePath, fileName); const pagePath = path.join(basePath, fileName);
let pageStats = {}; let pageStats = {};
try { try {
@ -126,7 +128,7 @@ function generateSiteMap() {
const roadmapsChunk = roadmaps.map((roadmap, roadmapCounter) => { const roadmapsChunk = roadmaps.map((roadmap, roadmapCounter) => {
return generateNode({ return generateNode({
basePath: ROADMAPS_PATH, basePath: ROADMAPS_PATH,
fileName: `${roadmapCounter + 1}-${roadmap.id}/meta.json`, fileName: roadmap.metaPath.replace('/roadmaps', ''),
slug: `/${roadmap.id}`, slug: `/${roadmap.id}`,
date: roadmap.updatedAt, date: roadmap.updatedAt,
priority: '1.0' priority: '1.0'