Open MichaelKentBurns opened 5 months ago
An email from Ash on March 21 contained the following valuable input:
Hello Michael, That's my feedback points after reading the Backend page : Clarity and Structure: Similar to the front-end content, the back-end content is clear and easy to understand. The distinction between front-end and back-end development is well-established, which helps readers grasp the broader context of web development. Elaboration on Technologies: While you mention Apache, PHP, and MySQL, it would be better to expand on each of these technologies individually. provide a brief overview of what each technology is used for in the context of back-end development, how they interact with each other, and perhaps some basic examples. Practical Examples: Including practical examples or scenarios where back-end technologies are used would enhance the educational value of the content. For instance, describe a simple web application that utilizes PHP for server-side scripting, MySQL for database management, and Apache as the web server. Interactive Learning: Similar to the front-end section, consider incorporating interactive elements or exercises where readers can practice deploying a basic web server or writing PHP scripts. Hands-on experience is invaluable for learning back-end development concepts. Resource Recommendations: Provide links to relevant tutorials, documentation, and online courses for readers who want to delve deeper into back-end development. Mentioning specific mentoring sites or resources tailored to learning Apache, PHP, and MySQL would be beneficial. Modern Technologies: While Apache, PHP, and MySQL are still widely used, it's worth mentioning other popular back-end technologies and frameworks like Node.js, Python (with frameworks like Django or Flask), and Ruby on Rails. Providing a brief overview of these alternatives would give readers a broader understanding of the back-end landscape. Security Considerations: Touch upon the importance of security in back-end development, such as protecting against SQL injection, implementing secure authentication mechanisms, and handling sensitive data appropriately. Security is a crucial aspect of web development that aspiring back-end developers need to be aware of. Scalability and Performance: Brief discussion concepts related to scaling web applications, such as load balancing, caching, and database optimization. Understanding how to optimize back-end systems for performance and scalability is essential for building robust web applications. These are some points that I found interesting in relation to my analysis on this page
Thank you!
An email from Philemon on March 20. Note that the roadmap portion should be contributed as a separate page which is referenced from Philemon's contribution page. I'm assuming that he will do that as I did with his roadmap for front end. All that should be added to the back end page is a reference to that much like I did on the front end page.
Hi Michael, I've just been through the backend web section of the site and I find it very interesting; I'd like to see https://www.freecodecamp.org/learn/ added, which is a very practical learning resource that offers free certification to the learner. This certification could attract potential employers.
in addition, I'd like us to be able to help new learners with a resource containing a roadmap or practical guide giving them the steps to follow in their apprenticeship to become a backend web developer. to do this, I'd suggest that at the end of the page, a link can be inserted leading to a PDF document containing the roadmap in question that they can download.
Here's an example of the roadmap in question:
Backend Web Development: Your Roadmap to Server-Side Mastery
The web runs on the shoulders of hardworking backend developers. They're the architects behind the scenes, crafting the logic that powers applications, stores data, and connects users with the information they crave. If you're looking to delve into this dynamic field, this roadmap will equip you with the knowledge and skills to become a sought-after backend web developer.
Phase 1: Foundational Knowledge
Web Fundamentals: Before diving into backend specifics, understand the core concepts of the web. Explore how HTTP requests and responses work, familiarize yourself with the browser-server interaction, and learn about common web technologies like HTML, CSS, and JavaScript. Programming Languages: Pick a powerful backend language like Python, Java, Node.js (JavaScript), PHP, or Ruby. Each has its strengths and weaknesses, so research and choose one that aligns with your interests and career goals. Version Control Systems (VCS): Master Git, the industry-standard VCS for tracking code changes, collaborating with teammates, and deploying applications. Phase 2: Building Your Backend Toolkit
Databases: Databases are the lifeblood of web applications. Learn about relational databases (SQL) like MySQL or PostgreSQL, and explore NoSQL databases like MongoDB for specific use cases. Web Frameworks: Frameworks like Django (Python), Spring (Java), Express.js (Node.js), Laravel (PHP), and Ruby on Rails provide pre-built structures and functionalities, allowing you to develop web applications faster and more efficiently. APIs (Application Programming Interfaces): APIs are messengers between applications. Learn how to design, build, and consume APIs to connect your backend with other services and applications. Phase 3: Advanced Skills and Security
Server-Side Security: Security is paramount. Understand common web vulnerabilities like SQL injection and Cross-Site Scripting (XSS). Learn secure coding practices and implement robust authentication and authorization mechanisms. Scalability and Performance: As applications grow, their ability to handle increasing user traffic becomes crucial. Explore techniques for scaling your backend to ensure optimal performance under load. Deployment and DevOps: Learn how to deploy your applications to production servers and explore DevOps principles for streamlining development, testing, and deployment processes. Phase 4: Continuous Learning
The world of backend development is constantly evolving. Stay updated with the latest trends and technologies. Explore cloud platforms like AWS, Azure, or GCP, delve into containerization with Docker, and keep an eye on emerging technologies like serverless computing.
Remember:
Practice Makes Perfect: Solidify your learning by working on personal projects. Build simple web applications, experiment with different technologies, and contribute to open-source projects. Build Your Network: Connect with other backend developers, participate in online forums and communities, and attend meetups or conferences. The developer community is a valuable resource for learning and sharing knowledge.
Best regards Bahati Philemon
Remember, we are not trying to do general training on our site. Some tips that are not available elsewhere may be of value in our page, but primarily we want to mention the important things and provide links to resources elsewhere. We are guiding our readers to a professional career not teaching them web design.
Use your discretion in adding these tips. We will review your results together before we publish your results.
An email from Efatha on April 3rd:
Comments
This work is relevant and empowered by stong explanations, I am about to learn a very deep back end web development. it's a great thing for me to hear about back end
Questions
1.What are the useful skills to fulfill the back end web tasks ? 2.Which framework is more relevant and flexible to use in the back end development?
Corrections
the back end development? You may think that backend development is called what it is because it runs behind the user's back. A visitor to your website never really "accesses" the back end completely. They just communicate with your server, either directly through ports for very limited access (like transferring HTML/CSS files) or not even that – buried deep under CDNs or firewalls (like Cloudflare). what back end development is? What is a backend web framework?
A backend web framework is a software tool that can automate some aspects of the web development process, making it easier and quicker. More precisely, a backend web framework is a library of models and tools that can help the developer build the architecture of their website, web application, mobile app, or software.
To clarify, we can make an example: think of a backend web framework like a template for a graphic design project. Without the framework, you have a white canvas where you need to build every piece, manually design every element, pick any color and position, and make sure that everything can work together. With a template (or a framework), you have half the job already done: you have a given structure that you can customize as you like, and you also have pre-built elements that you can use and integrate together instead of building them one by one and then integrating them.
With a backend web framework, the developer’s work is easier in the same way: instead of having to code every single line in different programming languages, the developer can exploit a given structure and given tools and modules to build their application.
Suggestion
I would prefer to hear about these benefits of back end. because they can feed a web developer who was desperate .
Benefits of using a backend web framework
Security: a framework provides security from many points of view. Security from external attacks and issues, crashes, slowness, and other negative aspects could lower the quality of the application you’re building. Scalability: frameworks are very flexible. Once you’ve picked the right backend framework for your project — and in this article, we’re helping you with your choice — you can use the same framework as you build up your web application from a very simple. software tool to the most complex web platform. Integrations: frameworks also make integrations easier because they provide pre-build tools to handle this aspect too. Types of backend web frameworks
There are two main types of backend web frameworks:
Client-side web framework and Server-side web framework
more for types of back end web recommendation To qualify as a back end developer, I'd say the bare minimum skills you need are:
Good knowledge about a programming language in which you can write HTTP servers. Examples: C#, Java, Node, PHP, Python,MySQL etc. (there are many!) Manage to host using cPanel (traditional) or using bash terminal (cloud hosting/traditional) Working with Version Control Systems (VCS) like git for managing and deploying builds.
This is probably a good job for Ash to spearhead using the feedback from Philemon and possibly Efatha. I will create an Upwork job.