diff --git a/public/roadmap-content/android.json b/public/roadmap-content/android.json index 56500fc1f..2317745fc 100644 --- a/public/roadmap-content/android.json +++ b/public/roadmap-content/android.json @@ -184,18 +184,36 @@ }, "Dp2DOX10u2xJUjB8Okhzh": { "title": "Frame", - "description": "", - "links": [] + "description": "**FrameLayout** is a simple ViewGroup subclass in Android that is designed to hold a single child view or a stack of overlapping child views. It positions each child in the top-left corner by default and allows them to overlap on top of each other, which makes it useful for situations where you need to layer views on top of one another.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "Android developers: Frame Layout", + "url": "https://developer.android.com/reference/android/widget/FrameLayout", + "type": "article" + } + ] }, "U8iMGGOd2EgPxSuwSG39Z": { "title": "Linear", - "description": "", - "links": [] + "description": "**LinearLayout** is a view group that aligns all children in a single directioni, vertically or horizontally. You can specify the layout direction with the `android:orientation` attribute.\n\n**LinearLayout** was commonly used in earlier Android development, but with the introduction of ConstraintLayout, it’s less frequently used in modern apps.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "Android developers: Linear Layout", + "url": "https://developer.android.com/develop/ui/views/layout/linear", + "type": "article" + } + ] }, "yE0qAQZiEC9R8WvCdskpr": { "title": "Relative", - "description": "", - "links": [] + "description": "A **RelativeLayout** in Android is a type of ViewGroup that allows you to position child views relative to each other or relative to the parent layout. It's a flexible layout where you can arrange the child views in relation to one another based on certain rules, making it suitable for creating complex UI designs.\n\n**RelativeLayout** was commonly used in earlier Android development, but with the introduction of `ConstraintLayout`, it's less frequently used in modern apps.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "Android developers: Relative Layout", + "url": "https://developer.android.com/develop/ui/views/layout/relative", + "type": "article" + } + ] }, "3fFNMhQIuuh-NRzSXYpXO": { "title": "Constraint", diff --git a/public/roadmap-content/backend.json b/public/roadmap-content/backend.json index 6ab58b55c..5b3e578cc 100644 --- a/public/roadmap-content/backend.json +++ b/public/roadmap-content/backend.json @@ -796,11 +796,6 @@ "url": "https://en.wikipedia.org/wiki/Object%E2%80%93relational_mapping", "type": "article" }, - { - "title": "What is an ORM and how should I use it?", - "url": "https://stackoverflow.com/questions/1279613/what-is-an-orm-how-does-it-work-and-how-should-i-use-one", - "type": "article" - }, { "title": "What is an ORM, how does it work, and how should I use one?", "url": "https://stackoverflow.com/a/1279678", @@ -927,6 +922,11 @@ "title": "Database Indexes", "description": "An index is a data structure that you build and assign on top of an existing table that basically looks through your table and tries to analyze and summarize so that it can create shortcuts.\n\nVisit the following resources to learn more:", "links": [ + { + "title": "Database index - Wikipedia", + "url": "https://en.wikipedia.org/wiki/Database_index", + "type": "article" + }, { "title": "Explore top posts about Database", "url": "https://app.daily.dev/tags/database?ref=roadmapsh", diff --git a/public/roadmap-content/cyber-security.json b/public/roadmap-content/cyber-security.json index f6bb4600d..62fba187c 100644 --- a/public/roadmap-content/cyber-security.json +++ b/public/roadmap-content/cyber-security.json @@ -1735,8 +1735,19 @@ }, "iolsTC-63d_1wzKGul-cT": { "title": "DLP", - "description": "", - "links": [] + "description": "Data Loss Prevention (DLP) refers to a set of strategies, tools, and processes used by organizations to ensure that sensitive data is not lost, accessed, or misused by unauthorized users. DLP solutions monitor, detect, and block the movement of critical information outside an organization’s network, helping to prevent data breaches, leaks, and other security incidents.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is data loss prevention (DLP)?", + "url": "https://www.techtarget.com/whatis/definition/data-loss-prevention-DLP", + "type": "article" + }, + { + "title": "What is DLP (data loss prevention)?", + "url": "https://www.cloudflare.com/es-es/learning/access-management/what-is-dlp/", + "type": "article" + } + ] }, "35oCRzhzpVfitQPL4K9KC": { "title": "ACL", @@ -1750,13 +1761,35 @@ }, "l5EnhOCnkN-RKvgrS9ylH": { "title": "HIPS", - "description": "", - "links": [] + "description": "A Host Intrusion Prevention System (HIPS) is a security solution designed to monitor and protect individual host devices, such as servers, workstations, or laptops, from malicious activities and security threats. HIPS actively monitors system activities and can detect, prevent, and respond to unauthorized or anomalous behavior by employing a combination of signature-based, behavior-based, and heuristic detection methods.\n\nHIPS operates at the host level, providing a last line of defense by securing the individual endpoints within a network. It is capable of preventing a wide range of attacks, including zero-day exploits, malware infections, unauthorized access attempts, and policy violations.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is an Intrusion Prevention System?", + "url": "https://www.paloaltonetworks.com/cyberpedia/what-is-an-intrusion-prevention-system-ips", + "type": "article" + }, + { + "title": "What is Host intrusion prevention system (HIPS)?", + "url": "https://cyberpedia.reasonlabs.com/EN/host%20intrusion%20prevention%20system%20(hips).html", + "type": "article" + } + ] }, "LIPtxl_oKZRcbvXT4EdNf": { "title": "NIDS", - "description": "", - "links": [] + "description": "A Network Intrusion Detection System (NIDS) is a security solution designed to monitor and analyze network traffic for signs of suspicious activity or potential threats. NIDS operates by inspecting the data packets that flow through a network, looking for patterns that match known attack signatures or anomalies that could indicate malicious behavior. Unlike a Host Intrusion Detection System (HIDS), which focuses on individual host devices, NIDS provides a broader view by monitoring network traffic across multiple systems and devices.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is an Intrusion Detection System?", + "url": "https://www.paloaltonetworks.com/cyberpedia/what-is-an-intrusion-detection-system-ids", + "type": "article" + }, + { + "title": "What is a Network Intrusion Detection system (NIDS)?", + "url": "https://bunny.net/academy/security/what-is-network-intrusion-detection-nids/", + "type": "article" + } + ] }, "7w9qj16OD4pUzq-ItdxeK": { "title": "NIPS", @@ -2149,7 +2182,7 @@ }, "nOND14t7ISgSH3zNpV3F8": { "title": "Memory Leak", - "description": "", + "description": "A Memory Leak occurs when a computer program consumes memory but fails to release it back to the operating system after it is no longer needed. Over time, this can lead to reduced system performance, increased memory usage, and, in severe cases, the program or system may crash due to the exhaustion of available memory.", "links": [] }, "2jo1r9O_rCnDwRv1_4Wo-": { @@ -2202,8 +2235,19 @@ }, "sMuKqf27y4iG0GrCdF5DN": { "title": "Pass the Hash", - "description": "", - "links": [] + "description": "Pass the Hash (PtH) is a hacking technique that allows an attacker to authenticate to a remote server or service using the hashed value of a user's password, without needing to know the actual plaintext password. This method exploits weaknesses in the way some authentication protocols handle hashed credentials, particularly in Windows-based systems.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is a pass-the-hash attack?", + "url": "https://www.crowdstrike.com/cybersecurity-101/pass-the-hash/", + "type": "article" + }, + { + "title": "Pass the Hash Attack", + "url": "https://www.netwrix.com/pass_the_hash_attack_explained.html", + "type": "article" + } + ] }, "L0ROYh2DNlkybNDO2ezJY": { "title": "Directory Traversal", diff --git a/public/roadmap-content/devops.json b/public/roadmap-content/devops.json index 24d8f990c..70bcbbe6b 100644 --- a/public/roadmap-content/devops.json +++ b/public/roadmap-content/devops.json @@ -35,7 +35,7 @@ "type": "article" }, { - "title": "W3Schools - Python Tutorial ", + "title": "W3Schools - Python Tutorial", "url": "https://www.w3schools.com/python/", "type": "article" }, @@ -97,7 +97,7 @@ "type": "article" }, { - "title": "W3Schools Go Tutorial ", + "title": "W3Schools Go Tutorial", "url": "https://www.w3schools.com/go/", "type": "article" }, @@ -369,7 +369,7 @@ "type": "article" }, { - "title": "FreeBSD Resources for Newbies ", + "title": "FreeBSD Resources for Newbies", "url": "https://www.freebsd.org/projects/newbies/", "type": "article" } @@ -427,7 +427,7 @@ "description": "Windows is a graphical user interface (GUI) based operating system developed by Microsoft. It is a hybrid kernel-based proprietary operating system. According to a survey, till April 2022, windows is the most popular operating system in the world with a 75% market share.\n\nVisit the following resources to learn more:", "links": [ { - "title": "Windows Official Site", + "title": "Microsoft Windows", "url": "http://microsoft.com/windows", "type": "article" }, @@ -482,7 +482,7 @@ }, "gIEQDgKOsoEnSv8mpEzGH": { "title": "Performance Monitoring", - "description": "There are many tools available to monitor the performance of your application. Some of the most popular are:\n\n* `nmon` - A system monitor tool for Linux and AIX systems.\n* `iostat` - A tool that reports CPU statistics and input/output statistics for devices, partitions and network filesystems.\n* `sar` - A system monitor command used to report on various system loads, including CPU activity, memory/paging, device load, network.\n* `vmstat` - A tool that reports virtual memory statistics.\n\nNmon is a fully interactive performance monitoring command-line utility tool for Linux. It is a benchmark tool that displays performance about the cpu, memory, network, disks, file system, nfs, top processes, resources, and power micro-partition.\n\n* [@article@nmon Documentation](https://www.ibm.com/docs/en/aix/7.2?topic=n-nmon-command)\n\nThe iostat command in Linux is used for monitoring system input/output statistics for devices and partitions. It monitors system input/output by observing the time the devices are active in relation to their average transfer rates. The iostat produce reports may be used to change the system configuration to raised balance the input/output between the physical disks.\n\n* [@article@iostat Documentation](https://man7.org/linux/man-pages/man1/iostat.1.html)\n\nShort for **S**ystem **A**ctivity **R**eport, `sar` is a command line tool for Unix and Unix-like operating systems that shows a report of different information about the usage and activity of resources in the operating system.\n\n* [@article@SAR Man Page](https://man7.org/linux/man-pages/man1/sar.1.html)\n* [@article@SAR Man Page 2](https://linux.die.net/man/1/sar)\n* [@article@Sar tutorial for beginners](https://linuxhint.com/sar_linux_tutorial/)\n\nShort for **V**irtual **m**emory **stat**istic reporter, `vmstat` is a command line tool for Unix and Unix-like operating systems that reports various information about the operating system such as memory, paging, processes, I/O, CPU and disk usage.", + "description": "There are many tools available to monitor the performance of your application. Some of the most popular are:\n\n* `nmon` - A system monitor tool for Linux and AIX systems.\n* `iostat` - A tool that reports CPU statistics and input/output statistics for devices, partitions and network filesystems.\n* `sar` - A system monitor command used to report on various system loads, including CPU activity, memory/paging, device load, network.\n* `vmstat` - A tool that reports virtual memory statistics.\n\nNmon is a fully interactive performance monitoring command-line utility tool for Linux. It is a benchmark tool that displays performance about the cpu, memory, network, disks, file system, nfs, top processes, resources, and power micro-partition.\n\n* [@article@nmon Documentation](https://www.ibm.com/docs/en/aix/7.2?topic=n-nmon-command)\n\nThe iostat command in Linux is used for monitoring system input/output statistics for devices and partitions. It monitors system input/output by observing the time the devices are active in relation to their average transfer rates. The iostat produce reports may be used to change the system configuration to raised balance the input/output between the physical disks.\n\n* [@article@iostat Documentation](https://man7.org/linux/man-pages/man1/iostat.1.html)\n\nShort for **S**ystem **A**ctivity **R**eport, `sar` is a command line tool for Unix and Unix-like operating systems that shows a report of different information about the usage and activity of resources in the operating system.\n\n* [@article@SAR Man Page](https://man7.org/linux/man-pages/man1/sar.1.html)\n* [@article@SAR Man Page 2](https://linux.die.net/man/1/sar)\n* [@article@Sar tutorial for beginners](https://linuxhint.com/sar_linux_tutorial/)\n\nShort for **V**irtual **m**emory **stat**istic reporter, `vmstat` is a command line tool for Unix and Unix-like operating systems that reports various information about the operating system such as memory, paging, processes, I/O, CPU and disk usage.\n\nLearn more from the following resources:", "links": [ { "title": "Linux commands: exploring virtual memory with vmstat", @@ -508,7 +508,7 @@ }, "OaqKLZe-XnngcDhDzCtRt": { "title": "Networking Tools", - "description": "Networking tools are used to troubleshoot network issues. They are also used to monitor network traffic and to test network connectivity. Some of the most common networking tools are:\n\n* `traceroute` - Traces the route taken by packets over an IP network.\n* `ping` - sends echo request packets to a host to test the Internet connection.\n* `mtr` - Combines the functionality of `traceroute` and `ping` into a single diagnostic tool.\n* `nmap` - Scans hosts for open ports.\n* `netstat` - Displays network connections, routing tables, interface statistics, masquerade connections, and multicast memberships.\n* `ufw` and `firewalld` - Firewall management tools.\n* `iptables` and `nftables` - Firewall management tools.\n* `tcpdump` - Dumps traffic on a network.\n* `dig` - DNS lookup utility.\n* `scp` - Secure copy.\n\n`traceroute` command is a command in Linux that prints the route a network packet takes from its source (e.g. your computer) to the destination host (e.g., [roadmap.sh](http://roadmap.sh)). It is quite valuable in investigating slow network connections as it can help us spot the slow leg of the network packet journey through the internet.\n\n* [How to Run Traceroute in Linux](https://linuxhint.com/run_traceroute_linux/)\n\n`ping` (**P**acket **In**ternet **G**roper) command is used to check the network connectivity between host and server/host. This command takes as input the IP address or the URL and sends a data packet to the specified address with the message “PING” and get a response from the server/host this time is recorded which is called latency.\n\n* [What is ping command?](https://linuxize.com/post/linux-ping-command/)\n\n`mtr` combines the functionality of the traceroute and ping programs in a single network diagnostic tool.\n\n* [Javatpoint: Linux mtr Command](https://www.javatpoint.com/linux-mtr)\n* [mtr Linux command](https://www.tutorialspoint.com/unix_commands/mtr.htm)\n* [How to traceroute use mtr command in Linux](https://www.devopsroles.com/how-to-traceroute-use-mtr-command-in-linux/)\n\nNMAP stands for Network Mapper and is an open-source tool used to explore and audit the network's security, such as checking firewalls and scanning ports.\n\n* [NMAP Official Manual Book](https://nmap.org/book/man.html)\n\nNetstat is a command line utility to display all the network connections on a system. It displays all the tcp, udp and unix socket connections. Apart from connected sockets it also displays listening sockets that are waiting for incoming connections.\n\n* [netstat command in Linux with Examples](https://www.tutorialspoint.com/unix_commands/netstat.htm)\n* [Netstat Tutorial](http://www.c-jump.com/CIS24/Slides/Networking/html_utils/netstat.html)\n* [Netstat Commands - Network Administration Tutorial](https://www.youtube.com/watch?v=bxFwpm4IobU)\n* [Linux Command Line Tutorial For Beginners - netstat command](https://www.youtube.com/watch?v=zGNcvBaN5wE)\n\nUFW, or _uncomplicated firewall_, is command-line based utility for managing firewall rules in Arch Linux, Debian and Ubuntu. It's aim is to make firewall configuration as simple as possible. It is a frontend for the `iptables` firewalling tool.\n\n* [ufw Documentation](https://manpages.ubuntu.com/manpages/trusty/man8/ufw.8.html)\n* [Basic Introduction to UFW](https://www.linux.com/training-tutorials/introduction-uncomplicated-firewall-ufw/)\n* [UFW Essentials](https://www.digitalocean.com/community/tutorials/ufw-essentials-common-firewall-rules-and-commands)\n\nIPtables is a command-line firewall utility that uses policy chains to allow or block traffic that will be enforced by the linux kernel’s netfilter framework. Iptables packet filtering mechanism is organized into three different kinds of structures: tables, chains and targets.\n\n* [Iptables tutorial](https://www.hostinger.in/tutorials/iptables-tutorial)\n* [Beginners to Advanced Guide Iptables](https://erravindrapawadia.medium.com/iptables-tutorial-beginners-to-advanced-guide-to-linux-firewall-839e10501759)\n\n`tcpdump` is a command line tool used for analysing network traffic passing through your system. It can be used to capture and filter packets and display them in a human-readable format. The captured information can be analysed at a later date as well.\n\n* [tcpdump Documentation](https://www.tcpdump.org/manpages/tcpdump.1.html)\n* [Basic Introduction to Tcpdump](https://opensource.com/article/18/10/introduction-tcpdump)\n* [50 ways to isolate traffic with Tcpdump](https://danielmiessler.com/study/tcpdump/)\n* [Interpreting Tcpdump output and data](https://www.youtube.com/watch?v=7bsQP9sKHrs)\n\n`dig` command stands for **D**omain **I**nformation **G**roper. It is used for retrieving information about DNS name servers. It is mostly used by network administrators for verifying and troubleshooting DNS problems and to perform DNS lookups. It replaces older tools such as `nslookup` and the `host`.\n\n* [More on dig](https://linuxize.com/post/how-to-use-dig-command-to-query-dns-in-linux/)\n* [What is DNS?](https://www.cloudflare.com/en-gb/learning/dns/what-is-dns/)\n\n`SCP` is an acronym for Secure Copy [Protocol.It](http://Protocol.It) is a command line utility that allows the user to securely copy files and directories between two locations usually between unix or linux systems.The protocol ensures the transmission of files is encrypted to prevent anyone with suspicious intentions from getting sensitive information.`SCP` uses encryption over an `SSH` (Secure Shell) connection, this ensures that the data being transferred is protected from suspicious attacks.", + "description": "Networking tools are used to troubleshoot network issues. They are also used to monitor network traffic and to test network connectivity. Some of the most common networking tools are:\n\n* `traceroute` - Traces the route taken by packets over an IP network.\n* `ping` - sends echo request packets to a host to test the Internet connection.\n* `mtr` - Combines the functionality of `traceroute` and `ping` into a single diagnostic tool.\n* `nmap` - Scans hosts for open ports.\n* `netstat` - Displays network connections, routing tables, interface statistics, masquerade connections, and multicast memberships.\n* `ufw` and `firewalld` - Firewall management tools.\n* `iptables` and `nftables` - Firewall management tools.\n* `tcpdump` - Dumps traffic on a network.\n* `dig` - DNS lookup utility.\n* `scp` - Secure copy.\n\n`traceroute` command is a command in Linux that prints the route a network packet takes from its source (e.g. your computer) to the destination host (e.g., [roadmap.sh](http://roadmap.sh)). It is quite valuable in investigating slow network connections as it can help us spot the slow leg of the network packet journey through the internet.\n\n* [How to Run Traceroute in Linux](https://linuxhint.com/run_traceroute_linux/)\n\n`ping` (**P**acket **In**ternet **G**roper) command is used to check the network connectivity between host and server/host. This command takes as input the IP address or the URL and sends a data packet to the specified address with the message “PING” and get a response from the server/host this time is recorded which is called latency.\n\n* [What is ping command?](https://linuxize.com/post/linux-ping-command/)\n\n`mtr` combines the functionality of the traceroute and ping programs in a single network diagnostic tool.\n\n* [Javatpoint: Linux mtr Command](https://www.javatpoint.com/linux-mtr)\n* [mtr Linux command](https://www.tutorialspoint.com/unix_commands/mtr.htm)\n* [How to traceroute use mtr command in Linux](https://www.devopsroles.com/how-to-traceroute-use-mtr-command-in-linux/)\n\nNMAP stands for Network Mapper and is an open-source tool used to explore and audit the network's security, such as checking firewalls and scanning ports.\n\n* [NMAP Official Manual Book](https://nmap.org/book/man.html)\n\nNetstat is a command line utility to display all the network connections on a system. It displays all the tcp, udp and unix socket connections. Apart from connected sockets it also displays listening sockets that are waiting for incoming connections.\n\n* [netstat command in Linux with Examples](https://www.tutorialspoint.com/unix_commands/netstat.htm)\n* [Netstat Tutorial](http://www.c-jump.com/CIS24/Slides/Networking/html_utils/netstat.html)\n* [Netstat Commands - Network Administration Tutorial](https://www.youtube.com/watch?v=bxFwpm4IobU)\n* [Linux Command Line Tutorial For Beginners - netstat command](https://www.youtube.com/watch?v=zGNcvBaN5wE)\n\nUFW, or _uncomplicated firewall_, is command-line based utility for managing firewall rules in Arch Linux, Debian and Ubuntu. It's aim is to make firewall configuration as simple as possible. It is a frontend for the `iptables` firewalling tool.\n\n* [ufw Documentation](https://manpages.ubuntu.com/manpages/trusty/man8/ufw.8.html)\n* [Basic Introduction to UFW](https://www.linux.com/training-tutorials/introduction-uncomplicated-firewall-ufw/)\n* [UFW Essentials](https://www.digitalocean.com/community/tutorials/ufw-essentials-common-firewall-rules-and-commands)\n\nIPtables is a command-line firewall utility that uses policy chains to allow or block traffic that will be enforced by the linux kernel’s netfilter framework. Iptables packet filtering mechanism is organized into three different kinds of structures: tables, chains and targets.\n\n* [Iptables tutorial](https://www.hostinger.in/tutorials/iptables-tutorial)\n* [Beginners to Advanced Guide Iptables](https://erravindrapawadia.medium.com/iptables-tutorial-beginners-to-advanced-guide-to-linux-firewall-839e10501759)\n\n`tcpdump` is a command line tool used for analysing network traffic passing through your system. It can be used to capture and filter packets and display them in a human-readable format. The captured information can be analysed at a later date as well.\n\n* [tcpdump Documentation](https://www.tcpdump.org/manpages/tcpdump.1.html)\n* [Basic Introduction to Tcpdump](https://opensource.com/article/18/10/introduction-tcpdump)\n* [50 ways to isolate traffic with Tcpdump](https://danielmiessler.com/study/tcpdump/)\n* [Interpreting Tcpdump output and data](https://www.youtube.com/watch?v=7bsQP9sKHrs)\n\n`dig` command stands for **D**omain **I**nformation **G**roper. It is used for retrieving information about DNS name servers. It is mostly used by network administrators for verifying and troubleshooting DNS problems and to perform DNS lookups. It replaces older tools such as `nslookup` and the `host`.\n\n* [More on dig](https://linuxize.com/post/how-to-use-dig-command-to-query-dns-in-linux/)\n* [What is DNS?](https://www.cloudflare.com/en-gb/learning/dns/what-is-dns/)\n\n`SCP` is an acronym for Secure Copy [Protocol.It](http://Protocol.It) is a command line utility that allows the user to securely copy files and directories between two locations usually between unix or linux systems.The protocol ensures the transmission of files is encrypted to prevent anyone with suspicious intentions from getting sensitive information.`SCP` uses encryption over an `SSH` (Secure Shell) connection, this ensures that the data being transferred is protected from suspicious attacks.\n\nLearn more from the following resources:", "links": [ { "title": "10 SCP command examples", @@ -540,7 +540,7 @@ }, "syBIAL1mHbJLnTBoSxXI7": { "title": "Bash", - "description": "", + "description": "Bash scripts are a type of shell script that uses the Bash shell command language. Bash, which stands for \"Bourne-Again SHell\", is a Unix shell and command-line interpreter written by Brian Fox for the GNU Project.\n\nA Bash script is a text file that contains a series of commands that are executed in order when the script is run. These commands can be a combination of Bash built-in commands, external commands, and shell functions. Bash scripts are typically used to automate repetitive tasks, simplify complex commands, and perform system administration tasks.\n\nBash scripts usually have a .sh extension and are executable files. To run a Bash script, you need to give it execute permissions using the chmod command, and then you can run it by typing `./script_name.sh` in the terminal.\n\nVisit the following resources to learn more:", "links": [ { "title": "Interactive Shell Scripting Tutorial", @@ -561,7 +561,7 @@ }, "z6IBekR8Xl-6f8WEb05Nw": { "title": "Power Shell", - "description": "Windows PowerShell is a command-line shell and scripting language designed specifically for system administration. Its counterpart in Linux is called Bash Scripting. Built on the .NET Framework, Windows PowerShell enables IT professionals to control and automate the administration of the Windows operating system and applications that run in a Windows Server environment.", + "description": "Windows PowerShell is a command-line shell and scripting language designed specifically for system administration. Its counterpart in Linux is called Bash Scripting. Built on the .NET Framework, Windows PowerShell enables IT professionals to control and automate the administration of the Windows operating system and applications that run in a Windows Server environment.\n\nLearn more from the following resources:", "links": [ { "title": "PowerShell Documentation", @@ -919,7 +919,7 @@ }, "54UZNO2q8M5FiA_XbcU_D": { "title": "Caddy", - "description": "Caddy is an open-source web server with automatic HTTPS written in Go. It is easy to configure and use, and it is a great choice for small to medium-sized projects.", + "description": "Caddy is an open-source web server with automatic HTTPS written in Go. It is easy to configure and use, and it is a great choice for small to medium-sized projects.\n\nVisit the following resources to learn more:", "links": [ { "title": "Caddy Website", @@ -1035,7 +1035,7 @@ }, "P0acFNZ413MSKElHqCxr3": { "title": "Docker", - "description": "Docker is a platform for working with containerized applications. Among its features are a daemon and client for managing and interacting with containers, registries for storing images, and a desktop application to package all these features together.\n\nVisit the following resources to learn more:", + "description": "Docker is a platform for working with containerized applications. Among its features are a daemon and client for managing and interacting with containers, registries for storing images, and a desktop application to package all these features together. Containers are lightweight and portable, providing a consistent and reliable way to deploy applications across different environments.\n\nHistory\n-------\n\nDocker was founded in 2010 by _Solomon Hykes_, and the first version of Docker was released in 2013. Docker became an open-source project in 2014, and since then, it has gained massive popularity in the software development industry.\n\nKey Features\n------------\n\nDocker provides several key features that make it an attractive choice for developers:\n\n* **Lightweight**: Containers are much lighter than virtual machines, making them faster to spin up and down.\n* **Portable**: Containers are portable across different environments, including Windows, Linux, and macOS.\n* **Isolated**: Containers provide a high level of isolation between applications, ensuring that each application runs independently without interfering with others.\n* **Efficient**: Containers use fewer resources than virtual machines, making them more efficient.\n\nVisit the following resources to learn more:", "links": [ { "title": "Visit Dedicated Docker Roadmap", @@ -1090,7 +1090,7 @@ "description": "Cloud providers provide a layer of APIs to abstract infrastructure and provision it based on security and billing boundaries. The cloud runs on servers in data centers, but the abstractions cleverly give the appearance of interacting with a single “platform” or large application. The ability to quickly provision, configure, and secure resources with cloud providers has been key to both the tremendous success and complexity of modern DevOps.\n\nVisit the following resources to learn more:", "links": [ { - "title": "Cloud service provider", + "title": "Cloud Service Provider", "url": "https://www.techtarget.com/searchitchannel/definition/cloud-service-provider-cloud-provider", "type": "article" }, @@ -1116,7 +1116,7 @@ "type": "course" }, { - "title": "DevOps on AWS Course ", + "title": "DevOps on AWS Course", "url": "https://www.coursera.org/specializations/aws-devops?#courses", "type": "course" }, @@ -1176,7 +1176,7 @@ "type": "video" }, { - "title": "AWS Practitioner ", + "title": "AWS Practitioner", "url": "https://youtu.be/SOTamWNgDKc", "type": "video" } @@ -1218,7 +1218,7 @@ "description": "Google Cloud is Google's cloud computing service offering, providing over 150 products/services to choose from. It consists of a set of physical assets, such as computers and hard disk drives, and virtual resources, such as virtual machines(VMs), that are contained in Google's data centers. It runs on the same infrastructure that Google uses internally for its end-user products, such as Search, Gmail, Google Drive, and YouTube.\n\nVisit the following resources to learn more:", "links": [ { - "title": "Coursera Complete Course for Google Cloud ", + "title": "Coursera Complete Course for Google Cloud", "url": "https://www.coursera.org/professional-certificates/cloud-engineering-gcp#courses", "type": "course" }, @@ -1345,7 +1345,7 @@ }, "eJZdjheptmiwKsVokt7Io": { "title": "Contabo", - "description": "Contabo offers a wide range of hosting services, from VPS to dedicated servers. They are known for their low prices and high performance.\n\nVisit the following link to learn more about Contabo:", + "description": "Contabo offers a wide range of hosting services, from VPS to dedicated servers. They are known for their low prices and high performance.\n\nVisit the following link to learn more:", "links": [ { "title": "Contabo - Official Website", @@ -1367,7 +1367,7 @@ }, "Vu955vdsYerCG8G6suqml": { "title": "DNS", - "description": "DNS (**D**omain **N**ame **S**ystem) is the phonebook of the Internet. Humans access information online through domain names, like [nytimes.com](http://nytimes.com) or [espn.com](http://espn.com). Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.\n\nVisit the following resources to learn more:", + "description": "DNS (Domain Name System) is the phonebook of the Internet. Humans access information online through domain names, like `nytimes.com` or `espn.com.` Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.\n\nVisit the following resources to learn more:", "links": [ { "title": "What is DNS?", @@ -1523,8 +1523,24 @@ }, "zJy9dOynWgLTDKI1iBluG": { "title": "SMTP", - "description": "Email is emerging as one of the most valuable services on the internet today. Most internet systems use SMTP as a method to transfer mail from one user to another. SMTP is a push protocol and is used to send the mail whereas POP (post office protocol) or IMAP (internet message access protocol) are used to retrieve those emails at the receiver’s side.\n\nSMTP is an application layer protocol. The client who wants to send the mail opens a TCP connection to the SMTP server and then sends the mail across the connection. The SMTP server is an always-on listening mode. As soon as it listens for a TCP connection from any client, the SMTP process initiates a connection through port 25. After successfully establishing a TCP connection the client process sends the mail instantly.", - "links": [] + "description": "Email is emerging as one of the most valuable services on the internet today. Most internet systems use SMTP as a method to transfer mail from one user to another. SMTP is a push protocol and is used to send the mail whereas POP (post office protocol) or IMAP (internet message access protocol) are used to retrieve those emails at the receiver’s side.\n\nSMTP is an application layer protocol. The client who wants to send the mail opens a TCP connection to the SMTP server and then sends the mail across the connection. The SMTP server is an always-on listening mode. As soon as it listens for a TCP connection from any client, the SMTP process initiates a connection through port 25. After successfully establishing a TCP connection the client process sends the mail instantly.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is SMTP? - Cloudflare", + "url": "https://www.cloudflare.com/learning/email-security/what-is-smtp/#:~:text=The%20Simple%20Mail%20Transfer%20Protocol%20(SMTP)%20is%20a%20technical%20standard,their%20underlying%20hardware%20or%20software.", + "type": "article" + }, + { + "title": "SMTP - Wikipedia", + "url": "https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol", + "type": "article" + }, + { + "title": "Explore top posts about Serverless", + "url": "https://app.daily.dev/tags/serverless?ref=roadmapsh", + "type": "article" + } + ] }, "5vUKHuItQfkarp7LtACvX": { "title": "DMARC", @@ -1675,7 +1691,7 @@ }, "9p_ufPj6QH9gHbWBQUmGw": { "title": "Serverless", - "description": "", + "description": "Serverless computing, also known as Function-as-a-Service (FaaS), is a cloud computing model in which a cloud provider manages the infrastructure and dynamically allocates computing resources as needed. This allows developers to write and deploy code without worrying about the underlying infrastructure.\n\nVisit the following resources to learn more:", "links": [ { "title": "What is Serverless?", @@ -1709,7 +1725,7 @@ "type": "article" }, { - "title": "Vercel: Product Walkthrough ", + "title": "Vercel: Product Walkthrough", "url": "https://www.youtube.com/watch?v=sPmat30SE4k", "type": "video" } @@ -1717,8 +1733,13 @@ }, "l8VAewSEXzoyqYFhoplJj": { "title": "Cloudflare", - "description": "", + "description": "Cloudflare is a company that provides a range of services to help protect and accelerate websites and applications. At its core, Cloudflare is a content delivery network (CDN) and a reverse proxy cloud provider. This means that it acts as an intermediary between a website's origin server and its visitors, caching content and filtering out malicious traffic.\n\nCloudflare was founded in July 2009 by Matthew Prince, Lee Holloway, and Michelle Zatlyn. The company was venture-capital funded and submitted its S-1 filing for IPO on the New York Stock Exchange in August 2019. It opened for public trading on September 13, 2019, at $15 per share.\n\nVisit the following resources to learn more:", "links": [ + { + "title": "Cloudflare", + "url": "https://cloudflare.com/", + "type": "article" + }, { "title": "Cloudflare Documentation", "url": "https://developers.cloudflare.com/", @@ -1733,8 +1754,13 @@ }, "mlrlf2McMI7IBhyEdq0Nf": { "title": "Azure Functions", - "description": "", + "description": "Azure Functions is a serverless solution that allows you to write less code, maintain less infrastructure, and save on costs. Instead of worrying about deploying and maintaining servers, the cloud infrastructure provides all the up-to-date resources needed to keep your applications running.\n\nVisit the following resources to learn more:", "links": [ + { + "title": "Azure Functions - Serverless Computing", + "url": "https://azure.microsoft.com/en-in/products/functions", + "type": "article" + }, { "title": "Azure Functions Overview", "url": "https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview", @@ -1749,8 +1775,13 @@ }, "UfQrIJ-uMNJt9H_VM_Q5q": { "title": "AWS Lambda", - "description": "", + "description": "AWS Lambda is an event-driven, serverless Function as a Service provided by Amazon as a part of Amazon Web Services. It is designed to enable developers to run code without provisioning or managing servers. It executes code in response to events and automatically manages the computing resources required by that code.\n\nVisit the following resources to learn more:", "links": [ + { + "title": "AWS Lambda", + "url": "https://aws.amazon.com/lambda/", + "type": "article" + }, { "title": "AWS Lambda Introduction", "url": "https://docs.aws.amazon.com/lambda/latest/operatorguide/intro.html", @@ -1781,8 +1812,19 @@ }, "1oYvpFG8LKT1JD6a_9J0m": { "title": "Provisioning", - "description": "Tools in this category are used to provision infrastructure in cloud providers. This includes DNS, networking, security policies, servers, containers, and a whole host of vendor-specific constructs. In this category, the use of cloud provider-agnostic tooling is strongly encouraged. These skills can be applied across most cloud providers, and the more specific domain-specific languages tend to have less reach.", - "links": [] + "description": "Tools in this category are used to provision infrastructure in cloud providers. This includes DNS, networking, security policies, servers, containers, and a whole host of vendor-specific constructs. In this category, the use of cloud provider-agnostic tooling is strongly encouraged. These skills can be applied across most cloud providers, and the more specific domain-specific languages tend to have less reach.\n\nLearn more from the following resources:", + "links": [ + { + "title": "Terraform Website", + "url": "https://www.terraform.io/", + "type": "article" + }, + { + "title": "Azure Resource Manager Documentation", + "url": "https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/overview", + "type": "article" + } + ] }, "XA__697KgofsH28coQ-ma": { "title": "AWS CDK", @@ -1938,7 +1980,7 @@ "description": "Configuration management is a systems engineering process for establishing consistency of a product’s attributes throughout its life. In the technology world, configuration management is an IT management process that tracks individual configuration items of an IT system. IT systems are composed of IT assets that vary in granularity. An IT asset may represent a piece of software, or a server, or a cluster of servers. The following focuses on configuration management as it directly applies to IT software assets and software asset CI/CD.\n\nSoftware configuration management is a systems engineering process that tracks and monitors changes to a software systems configuration metadata. In software development, configuration management is commonly used alongside version control and CI/CD infrastructure. This post focuses on its modern application and use in agile CI/CD software environments.\n\nVisit the following resources to learn more:", "links": [ { - "title": "What is configuration management?", + "title": "What is Configuration Management?", "url": "https://www.atlassian.com/microservices/microservices-architecture/configuration-management", "type": "article" } @@ -2057,6 +2099,11 @@ "title": "GitHub Actions", "description": "Automate, customize, and execute your software development workflows right in your repository with GitHub Actions. You can discover, create, and share actions to perform any job you'd like, including CI/CD, and combine actions in a completely customized workflow.\n\nVisit the following resources to learn more:", "links": [ + { + "title": "Github Actions", + "url": "https://github.com/features/actions", + "type": "article" + }, { "title": "GitHub Actions Documentation", "url": "https://docs.github.com/en/actions", @@ -2603,13 +2650,40 @@ }, "XbrWlTyH4z8crSHkki2lp": { "title": "GKE / EKS / AKS", - "description": "GKE - Google Kubernetes Engine\n------------------------------\n\nGKE is a managed Kubernetes service that lets you deploy, manage, and scale containerized applications on Google Cloud.\n\nEKS - Amazon Elastic Kubernetes Service\n---------------------------------------\n\nAmazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes service from AWS.\n\nAKS - Azure Kubernetes Service\n------------------------------\n\nAzure Kubernetes Service (AKS) manages your hosted Kubernetes environment, making it quick and easy to deploy and manage containerized applications without container orchestration expertise.", - "links": [] + "description": "GKE - Google Kubernetes Engine\n------------------------------\n\nGKE is a managed Kubernetes service that lets you deploy, manage, and scale containerized applications on Google Cloud.\n\nEKS - Amazon Elastic Kubernetes Service\n---------------------------------------\n\nAmazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes service from AWS.\n\nAKS - Azure Kubernetes Service\n------------------------------\n\nAzure Kubernetes Service (AKS) manages your hosted Kubernetes environment, making it quick and easy to deploy and manage containerized applications without container orchestration expertise.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "GKE", + "url": "https://cloud.google.com/kubernetes-engine", + "type": "article" + }, + { + "title": "EKS", + "url": "https://aws.amazon.com/eks/", + "type": "article" + }, + { + "title": "AKS", + "url": "https://azure.microsoft.com/en-us/products/kubernetes-service/", + "type": "article" + } + ] }, "FE2h-uQy6qli3rKERci1j": { "title": "AWS ECS / Fargate", - "description": "ECS is a container orchestration service that allows you to run Docker containers on a cluster of EC2 instances. ECS is a good choice if you want to run Docker containers on EC2 instances and have full control over the underlying infrastructure.\n\nFargate is a serverless container orchestration service that allows you to run Docker containers without having to manage servers, clusters, or any other infrastructure. Fargate is a good choice if you want to run Docker containers without having to manage servers or clusters.", - "links": [] + "description": "ECS is a container orchestration service that allows you to run Docker containers on a cluster of EC2 instances. ECS is a good choice if you want to run Docker containers on EC2 instances and have full control over the underlying infrastructure.\n\nFargate is a serverless container orchestration service that allows you to run Docker containers without having to manage servers, clusters, or any other infrastructure. Fargate is a good choice if you want to run Docker containers without having to manage servers or clusters.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "AWS - Fargate", + "url": "https://aws.amazon.com/fargate/", + "type": "article" + }, + { + "title": "AWS - Fargate Docs", + "url": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html", + "type": "article" + } + ] }, "VD24HC9qJOC42lbpJ-swC": { "title": "Docker Swarm", @@ -2649,18 +2723,34 @@ }, "zuBAjrqQPjj-0DHGjCaqT": { "title": "Artifact Management", - "description": "", - "links": [] + "description": "Artifacts refer to the output of a build process, typically generated by a Continuous Integration (CI) tool. These outputs can be executable files, libraries, documents, or any other type of file that is produced as a result of building, compiling, or packaging code.\n\nArtifacts can include\n---------------------\n\n* Compiled binaries (e.g., .exe, .dll, .jar)\n* Libraries (e.g., .so, .dll)\n* Packages (e.g., .zip, .tar.gz, .rpm)\n* Documents (e.g., .pdf, .docx)\n* Configuration files (e.g., .properties, .yaml)\n* Images (e.g., Docker images)\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What are Artifacts - Oracle", + "url": "https://docs.oracle.com/en-us/iaas/Content/devops/using/artifacts.htm", + "type": "article" + }, + { + "title": "What is an Artifact - Atlassian", + "url": "https://support.atlassian.com/bitbucket-cloud/docs/use-artifacts-in-steps/#:~:text=Artifacts%20are%20files%20that%20are,in%20a%20later%20deployment%20step.", + "type": "article" + } + ] }, "C_sFyIsIIpriZlovvcbSE": { "title": "Artifactory", - "description": "", + "description": "Artifactory is a universal DevOps solution for hosting, managing, and distributing binaries and artifacts. Any type of software in binary form – such as application installers, container images, libraries, configuration files, etc. – can be curated, secured, stored, and delivered using Artifactory.\n\nThe name “Artifactory” reflects the fact that it can host any type of “artifact” needed in your software development “factory.” In software development, an artifact is any object produced during the software development and delivery process. Artifacts include the files used to install and run applications, as well as any complementary information necessary to configure or manage software.\n\nArtifactory serves as the central hub for your DevOps processes. All artifacts, dependencies, packages, etc. ultimately get put into and pulled from Artifactory.\n\nVisit the following resources to learn more:", "links": [ { "title": "Artifactory Website", "url": "https://jfrog.com/artifactory/", "type": "article" }, + { + "title": "About - Artifactory", + "url": "https://jfrog.com/blog/what-is-artifactory-jfrog/", + "type": "article" + }, { "title": "Explore top posts about Artifactory", "url": "https://app.daily.dev/tags/artifactory?ref=roadmapsh", @@ -2696,8 +2786,19 @@ }, "vsmE6EpCc2DFGk1YTbkHS": { "title": "Cloud Smith", - "description": "", - "links": [] + "description": "Cloudsmith is a cloud-native package management platform that enables organizations to manage and distribute software packages across their infrastructure. It provides a centralized repository for storing, managing, and deploying packages, making it easier to manage complex software dependencies and ensure consistency across environments.\n\nCloudsmith supports a wide range of package formats, including Docker, Helm, npm, pip, and more. It also integrates with popular development tools like Jenkins, GitLab, and CircleCI, making it easy to automate package management and deployment workflows.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "Cloud Smith", + "url": "https://cloudsmith.com/", + "type": "article" + }, + { + "title": "Cloud Smith Product Overview", + "url": "https://cloudsmith.com/product/", + "type": "article" + } + ] }, "-INN1qTMLimrZgaSPCcHj": { "title": "GitOps", @@ -2859,8 +2960,19 @@ }, "Qc0MGR5bMG9eeM5Zb9PMk": { "title": "Cloud Design Patterns", - "description": "", - "links": [] + "description": "Cloud Design Patterns are a set of reusable, proven solutions to common problems that arise when designing and building applications for the cloud. These patterns provide guidance on how to design and implement cloud-based systems that are scalable, resilient, and efficient.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "", + "url": "https://learn.microsoft.com/en-us/azure/architecture/patterns/", + "type": "article" + }, + { + "title": "What is CI/CD?", + "url": "https://www.redhat.com/en/topics/devops/what-is-ci-cd", + "type": "article" + } + ] }, "JCe3fcOf-sokTJURyX1oI": { "title": "Availability", @@ -2899,7 +3011,7 @@ "description": "Good design encompasses factors such as consistency and coherence in component design and deployment, maintainability to simplify administration and development, and reusability to allow components and subsystems to be used in other applications and in other scenarios. Decisions made during the design and implementation phase have a huge impact on the quality and the total cost of ownership of cloud hosted applications and services.\n\nVisit the following resources to learn more:", "links": [ { - "title": "Design and implementation patterns", + "title": "Design and Implementation Patterns", "url": "https://docs.microsoft.com/en-us/azure/architecture/patterns/category/design-implementation", "type": "article" } @@ -3062,7 +3174,7 @@ } ] }, - "BHny2Emf96suhAlltiEro": { + "datadog@BHny2Emf96suhAlltiEro.md": { "title": "Datadog", "description": "", "links": [] diff --git a/public/roadmap-content/frontend.json b/public/roadmap-content/frontend.json index 133906649..01715739b 100644 --- a/public/roadmap-content/frontend.json +++ b/public/roadmap-content/frontend.json @@ -2470,6 +2470,11 @@ "url": "https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/", "type": "article" }, + { + "title": "Building a simple offline-capable Notepad app ", + "url": "https://www.amitmerchant.com/Building-Simple-Offline-Notepad-Using-Service-Worker/", + "type": "article" + }, { "title": "Explore top posts about Web Development", "url": "https://app.daily.dev/tags/webdev?ref=roadmapsh", diff --git a/public/roadmap-content/javascript.json b/public/roadmap-content/javascript.json index 6f0cb343d..e6be9621b 100644 --- a/public/roadmap-content/javascript.json +++ b/public/roadmap-content/javascript.json @@ -429,6 +429,11 @@ "title": "String", "url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String", "type": "article" + }, + { + "title": "JavaScript Strings", + "url": "https://javascript.info/string", + "type": "article" } ] }, diff --git a/public/roadmap-content/postgresql-dba.json b/public/roadmap-content/postgresql-dba.json index e5bd11558..0f3b3f7bb 100644 --- a/public/roadmap-content/postgresql-dba.json +++ b/public/roadmap-content/postgresql-dba.json @@ -2,7 +2,13 @@ "lDIy56RyC1XM7IfORsSLD": { "title": "Introduction", "description": "PostgreSQL is a powerful, open-source Object-Relational Database Management System (ORDBMS) that is known for its robustness, extensibility, and SQL compliance. It was initially developed at the University of California, Berkeley, in the 1980s and has since become one of the most popular open-source databases in the world.", - "links": [] + "links": [ + { + "title": "History of POSTGRES to PostgreSQL", + "url": "https://www.postgresql.org/docs/current/history.html", + "type": "article" + } + ] }, "soar-NBWCr4xVKj7ttfnc": { "title": "What are Relational Databases?", diff --git a/public/roadmap-content/software-architect.json b/public/roadmap-content/software-architect.json index b99266368..6600277ba 100644 --- a/public/roadmap-content/software-architect.json +++ b/public/roadmap-content/software-architect.json @@ -1437,8 +1437,29 @@ }, "PKqwKvoffm0unwcFwpojk": { "title": "Scrum", - "description": "", - "links": [] + "description": "`Scrum` is a popular agile framework used for project management, particularly in software development. It emphasizes iterative development, collaboration, and flexibility to deliver high-quality products.\n\nKey elements of Scrum:\n\n* **Sprints**: Time-boxed iterations (usually 2-4 weeks) where teams work on specific goals.\n* **Product Backlog**: Prioritized list of features or requirements for the product.\n* **Sprint Backlog**: Selected items from the Product Backlog to be completed during a Sprint.\n* **Daily Scrum (Stand-up)**: Brief daily meeting where team members share progress, challenges, and plans for the day.\n* **Sprint Review**: Meeting at the end of a Sprint to demonstrate completed work and gather feedback.\n* **Sprint Retrospective**: Meeting to reflect on the Sprint, identify improvements, and adjust processes for the next Sprint.\n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is scrum and how to get started", + "url": "https://www.atlassian.com/agile/scrum.", + "type": "article" + }, + { + "title": "Scrum Methodology: The Complete Guide & Best Practices", + "url": "https://thedigitalprojectmanager.com/projects/pm-methodology/scrum-methodology-complete-guide/", + "type": "article" + }, + { + "title": "Essential Topics for the Scrum Product Owner", + "url": "https://www.scrum.org/resources/blog/essential-topics-scrum-product-owner", + "type": "article" + }, + { + "title": "Scrum • Topics - Thriving Technologist", + "url": "https://thrivingtechnologist.com/topics/scrum/", + "type": "article" + } + ] }, "7fL9lSu4BD1wRjnZy9tM9": { "title": "XP", @@ -1479,8 +1500,24 @@ }, "UCCT7-E_QUKPg3jAsjobx": { "title": "TCP/IP Model", - "description": "", - "links": [] + "description": "The `TCP/IP model` defines how devices should transmit data between them and enables communication over networks and large distances. The model represents how data is exchanged and organized over networks. It is split into four layers, which set the standards for data exchange and represent how data is handled and packaged when being delivered between applications, devices, and servers.\n\n* **Network Access Layer**: The network access layer is a group of applications requiring network communications. This layer is responsible for generating the data and requesting connections.\n \n* **Internet Layer**: The internet layer is responsible for sending packets from a network and controlling their movement across a network to ensure they reach their destination.\n \n* **Transport Layer**: The transport layer is responsible for providing a solid and reliable data connection between the original application or device and its intended destination.\n \n* **Application Layer**: The application layer refers to programs that need TCP/IP to help them communicate with each other.\n \n\nVisit the following resources to learn more:", + "links": [ + { + "title": "What is Transmission Control Protocol TCP/IP? - Fortinet", + "url": "https://www.fortinet.com/resources/cyberglossary/tcp-ip#:~:text=The%20TCP%2FIP%20model%20defines,exchanged%20and%20organized%20over%20networks.", + "type": "article" + }, + { + "title": "TCP/IP Model", + "url": "https://www.geeksforgeeks.org/tcp-ip-model/", + "type": "article" + }, + { + "title": "What is TCP/IP and How Does it Work?", + "url": "https://www.techtarget.com/searchnetworking/definition/TCP-IP", + "type": "article" + } + ] }, "Nq6o6Ty8VyNRsvg-UWp7D": { "title": "HTTP, HTTPS", diff --git a/public/roadmap-content/sql.json b/public/roadmap-content/sql.json index 86a2d202d..29545d9a6 100644 --- a/public/roadmap-content/sql.json +++ b/public/roadmap-content/sql.json @@ -1,7 +1,7 @@ { "R9DQNc0AyAQ2HLpP4HOk6": { "title": "What are Relational Databases?", - "description": "Relational databases are a type of database management system (DBMS) that stores and provides access to data points that are related to one another. Based on the relational model introduced by E.F. Codd in 1970, they use a structure that allows data to be organized into tables with rows and columns. Key features include:\n\n* Use of SQL (Structured Query Language) for querying and managing data\n* Support for ACID transactions (Atomicity, Consistency, Isolation, Durability)\n* Enforcement of data integrity through constraints (e.g., primary keys, foreign keys)\n* bility to establish relationships between tables, enabling complex queries and data retrieval\n* Scalability and support for multi-user environments\n\nExamples of popular relational database systems include MySQL, PostgreSQL, Oracle, and Microsoft SQL Server. They are widely used in various applications, from small-scale projects to large enterprise systems, due to their reliability, consistency, and powerful querying capabilities.\n\nLearn more from the following resources:", + "description": "Relational databases are a type of database management system (DBMS) that stores and provides access to data points that are related to one another. Based on the relational model introduced by E.F. Codd in 1970, they use a structure that allows data to be organized into tables with rows and columns. Key features include:\n\n* Use of SQL (Structured Query Language) for querying and managing data\n* Support for ACID transactions (Atomicity, Consistency, Isolation, Durability)\n* Enforcement of data integrity through constraints (e.g., primary keys, foreign keys)\n* Ability to establish relationships between tables, enabling complex queries and data retrieval\n* Scalability and support for multi-user environments\n\nExamples of popular relational database systems include MySQL, PostgreSQL, Oracle, and Microsoft SQL Server. They are widely used in various applications, from small-scale projects to large enterprise systems, due to their reliability, consistency, and powerful querying capabilities.\n\nLearn more from the following resources:", "links": [ { "title": "What is a relational database - AWS", diff --git a/public/roadmap-content/ux-design.json b/public/roadmap-content/ux-design.json index 0e8fb8f2c..792b189c3 100644 --- a/public/roadmap-content/ux-design.json +++ b/public/roadmap-content/ux-design.json @@ -24,11 +24,6 @@ "url": "https://www.businessballs.com/improving-workplace-performance/nudge-theory/", "type": "article" }, - { - "title": "Nudge Theory Explained with Examples (on YouTube)", - "url": "https://www.youtube.com/watch?v=u3yxxteiyya&ab_channel=epm", - "type": "video" - }, { "title": "Nudge Theory Explained in less than 10 minutes", "url": "https://youtu.be/fA5eGIMZTRQ",