100+ Websites Where You Can Learn How to Code
Linkidex's master list of websites that can teach you how to code.
Learning how to code is an incredibly valuable skill. Whether you’re building websites, developing mobile apps, exploring data science, or simply wanting to understand the technology shaping our world, coding unlocks endless possibilities. Low-code/no-code platforms and AI-assisted development tools are reducing the need for deep coding knowledge in some areas, but the ability to code remains crucial for understanding and managing AI systems, solving complex problems, and securing in-demand tech jobs.
With so many resources available, it can be difficult to know where to begin. That’s why we’ve created this ultimate list of over 100 websites to help kickstart your coding journey. Whether you’re a complete beginner or looking to refine your skills, this list offers everything from interactive tutorials and coding challenges to in-depth courses on specialized topics.
How to use this list
Each website has something unique to offer, so dive in and find the one that best suits your learning style. Bookmark your favorite sites, organize them in google sheets, or use Linkidex. If you already have an idea what technology you want to learn, you can check out some of our more specific articles, focus on looking at sites such as codecademy that let you fitler courses by technology, or look for specialized websites that only discuss what it is you are trying to learn, such as learning Python on the appropiratley named learnpython.org.
Our Curated Lists
If you already know what you want to learn, check out our curated lists.
Master List of Websites Teaching Programming
This is our list of over 100 websites where you can learn how to code, in alphabetical order.
A Byte of Python
“A Byte of Python” is a free online book designed to teach programming using the Python language. It serves as a comprehensive tutorial for beginners, covering fundamental concepts and syntax in an accessible manner. This resource is particularly beneficial for those new to programming, as it provides practical examples and exercises to reinforce learning.
Visit A Byte of Python
A List Apart
A List Apart is a web magazine that focuses on web design and development, covering topics such as web standards, usability, and best practices in coding. It features articles and resources aimed at web professionals seeking to improve their craft. By reading A List Apart, aspiring software engineers can gain insights into effective web design principles and enhance their understanding of user experience, which is crucial for creating user-friendly applications.
Explore A List Apart
AI for Everyone from DeepLearning.Ai
This online course introduces the concepts and applications of artificial intelligence (AI) to a general audience without requiring a technical background. It covers the impact of AI on various industries, ethical considerations, and how to leverage AI in business contexts. Understanding AI concepts can be beneficial for software engineers looking to integrate intelligent systems into their applications or explore careers in AI development.
Visit AI for Everyone
Adam Khoury’s Video Tutorials
Adam Khoury offers a series of video tutorials focusing on web development technologies such as HTML, CSS, JavaScript, PHP, and more. These tutorials provide step-by-step guidance that helps beginners grasp fundamental concepts and practical skills. By following these tutorials, aspiring software engineers can build a solid foundation in programming and web development, which is essential for their careers.
Check out Adam Khoury’s Video Tutorials
After Hours Programming
After Hours Programming is a community-driven platform that offers resources and courses for individuals interested in programming outside traditional educational settings. It emphasizes hands-on projects and real-world applications, catering to both beginners and experienced programmers looking to enhance their skills through practical experience. Engaging with this platform can improve problem-solving abilities crucial for software engineering roles.
Explore After Hours Programming
Alison
Alison is an online learning platform that provides free courses on various subjects, including software development, programming languages, and project management. The courses are designed to cater to different skill levels, allowing you to learn at your own pace. By taking relevant courses on Alison, you can gain knowledge in specific areas of software engineering and earn certificates that enhance your resume.
Check out Alison
Android Developers
The Android Developers website provides a comprehensive suite of tools, resources, and documentation for building Android applications. It includes training materials, developer guides, and updates on the latest Android features. This platform will help you learn how to develop mobile applications effectively while understanding best practices in the Android ecosystem—essential skills for mobile software engineering roles.
Visit Android Developers
Android Documentation for App Developers
This documentation serves as a detailed reference for developers creating Android apps, covering everything from app architecture to APIs and user interface design. By studying this documentation, you can gain in-depth knowledge of Android development, enabling you to build robust applications and troubleshoot issues that may arise during the development process—key skills for aspiring software engineers focused on mobile development.
Explore Android Documentation
Apple Swift Playgrounds
Swift Playgrounds is an interactive learning environment designed to teach coding concepts using Apple’s Swift programming language through puzzles and challenges. It provides a fun way to learn programming while experimenting with code in a hands-on manner—ideal for beginners looking to build foundational skills in software engineering related to iOS app development. Visit Apple Swift Playgrounds
. Apple: Start Developing iOS Apps (Swift)
This resource provides a comprehensive introduction to developing iOS applications using Swift, Apple’s programming language. It includes tutorials, sample code, and best practices for building apps on Apple platforms. This is essential for aspiring software engineers interested in mobile app development, as it equips them with the skills needed to create functional and user-friendly applications for iOS devices.
Visit Apple: Start Developing iOS Apps
Ben Collins’ Advanced Formulas 30 Day Challenge
This challenge focuses on teaching advanced spreadsheet formulas and data manipulation techniques using Google Sheets or Excel. While not directly related to traditional software engineering, mastering these skills can enhance your data analysis capabilities, which are valuable in many tech roles, especially those involving data-driven decision-making.
Check out Ben Collins’ Advanced Formulas
BitDegree
BitDegree is an online learning platform that offers free and paid courses in programming, web development, and blockchain technology among other subjects. It features interactive lessons and projects that allow you to apply what you’ve learned in real-world scenarios. By utilizing BitDegree’s resources, you can enhance your technical skills and prepare for a career in software engineering.
Visit BitDegree
Blondiebytes
Blondiebytes is a platform that creates educational content focused on programming and computer science concepts through articles, videos, and tutorials. It aims to make complex topics accessible to learners of all levels. Engaging with Blondiebytes can help you build foundational knowledge in programming languages and software development practices essential for aspiring software engineers.
Explore Blondiebytes
Byte of Python
A Byte of Python is a free online book designed to teach programming using Python language fundamentals. It serves as a beginner-friendly tutorial covering essential concepts with practical examples. This resource is particularly helpful for those new to programming as it provides a solid foundation in Python—an important language in software engineering today.
Visit Byte of Python
ByteByteGo
ByteByteGo is an educational platform focused on teaching system design and algorithms through interactive lessons and practical examples. It provides resources aimed at preparing developers for technical interviews, particularly in system design. Understanding algorithms and system design is crucial for software engineers, making this resource beneficial for interview preparation and skill enhancement.
Check out ByteByteGo
CODE ABBEY
CODE ABBEY offers a collection of programming challenges that help users improve their coding skills through practice. The platform features problems ranging from beginner to advanced levels, allowing you to progressively enhance your abilities. By solving these challenges, you will develop problem-solving skills and coding proficiency—critical for success in software engineering roles.
Visit CODE ABBEY
CODE.ORG
CODE.org is an educational organization dedicated to expanding access to computer science education through interactive courses and resources targeted at all ages. It offers beginner-friendly tutorials that introduce coding concepts in a fun way, making it an excellent starting point for aspiring software engineers looking to learn programming basics effectively.
Explore CODE.org
CODE4STARTUP
CODE4STARTUP focuses on providing resources and courses specifically tailored for aspiring entrepreneurs and developers looking to create startups. It covers various aspects of web development and software engineering necessary for building applications from scratch. Engaging with this platform will equip you with the skills needed to develop your own projects and understand the tech landscape relevant to startups. Visit CODE4STARTUP
CODEASY
CODEASY is an interactive platform that combines storytelling with programming education, making learning to code engaging and fun. It offers a variety of coding exercises and challenges, primarily focused on languages like C#. The story-based approach helps learners remember concepts better and reduces intimidation often felt when starting to learn programming. This platform is particularly useful for beginners who want a structured yet enjoyable introduction to coding.
Visit CODEASY
CODEAVENGERS
CODEAVENGERS provides gamified coding lessons that teach web development technologies, including HTML, CSS, and JavaScript. The platform emphasizes practical projects and interactive challenges, making it easier for learners to grasp complex concepts through hands-on experience. This approach is beneficial for aspiring software engineers looking to build foundational skills in web development while enjoying the learning process.
Explore CODEAVENGERS
Codecademy
Codecademy is an online learning platform that offers interactive coding courses across a wide range of programming languages and technologies, including Python, JavaScript, HTML/CSS, and SQL. The platform’s hands-on approach allows learners to practice coding in real-time while receiving instant feedback. This resource is essential for aspiring software engineers as it provides a structured learning path with practical applications, helping them build a strong foundation in programming.
Visit Codecademy
CodeCombat
CodeCombat is an online platform that teaches programming through a game-based environment where users write code to control characters and complete challenges. It covers languages such as Python and JavaScript, making learning engaging and interactive. This gamified approach helps beginners develop problem-solving skills while having fun, making it an excellent resource for those new to coding and software engineering.
Check out CodeCombat
Code Conquest
Code Conquest offers a variety of interactive coding tutorials aimed at beginners looking to learn web development skills such as HTML, CSS, and JavaScript. The platform focuses on hands-on exercises that allow learners to apply their knowledge immediately. By using Code Conquest, aspiring software engineers can build essential skills in web development while gaining confidence through practical experience.
Visit Code Conquest
CodeGym
CodeGym is an online platform specifically designed for learning Java programming through gamified lessons and practical tasks. It offers a comprehensive curriculum that includes theory, exercises, and projects tailored for beginners to advanced learners. This resource is valuable for aspiring software engineers who want to master Java effectively while enjoying an engaging learning experience.
Explore CodeGym
Codementor
Codementor connects learners with experienced developers for one-on-one mentoring sessions on various programming topics and technologies. This personalized support allows aspiring software engineers to get help with specific questions or projects while gaining insights from industry professionals. Engaging with Codementor can accelerate your learning process and provide valuable guidance as you develop your skills in software engineering.
Visit Codementor
Coderbyte
Coderbyte offers coding challenges and interview prep resources aimed at helping users improve their programming skills across various languages such as JavaScript, Python, Ruby, and more. The platform features challenges of varying difficulty levels that enhance problem-solving abilities crucial for technical interviews in the software engineering field. By practicing on Coderbyte, you can strengthen your coding skills and prepare effectively for job interviews in tech companies.
Check out Coderbyte
Codewars
Codewars is a platform that offers coding challenges known as “kata” to help developers improve their programming skills through practice. Users can solve problems in over 55 programming languages, ranging from beginner to advanced levels. This interactive environment allows aspiring software engineers to sharpen their coding techniques, learn new languages, and compare solutions with others, fostering a community of learning and improvement.
Visit Codewars
Coursera
Coursera is an online learning platform that partners with universities and organizations to offer courses on a wide range of subjects, including computer science and software engineering. Courses often include video lectures, assignments, and peer-reviewed projects. By enrolling in relevant courses on Coursera, aspiring software engineers can gain knowledge in specific areas such as algorithms, data structures, and programming languages while earning certificates that enhance their resumes.
Explore Coursera
Crunchzilla
Crunchzilla provides interactive tutorials designed to teach programming concepts through fun and engaging games. The platform focuses on JavaScript and offers various challenges that help learners develop their coding skills in a playful environment. This approach is beneficial for beginners who want to learn programming fundamentals while enjoying the process of coding.
Visit Crunchzilla
CS Dojo
CS Dojo is a YouTube channel that focuses on teaching computer science concepts and programming skills through engaging video content. The channel covers topics such as algorithms, data structures, and interview preparation tips. Following CS Dojo can provide valuable insights and practical knowledge that will aid aspiring software engineers in their learning journey and prepare them for technical interviews.
Check out CS Dojo
CSS-Tricks
CSS-Tricks is a web design resource that focuses primarily on CSS but also covers HTML, JavaScript, and various web development techniques. It features tutorials, articles, and guides aimed at helping developers improve their front-end skills. By utilizing CSS-Tricks, aspiring software engineers can enhance their understanding of web design principles and practices essential for front-end development roles.
Explore CSS-Tricks
CSStutorial.net
CSStutorial.net is dedicated to teaching CSS (Cascading Style Sheets) through comprehensive tutorials and examples. The site covers various aspects of CSS styling techniques used in web development, making it an excellent resource for beginners looking to learn how to style web pages effectively. Mastering CSS is crucial for any aspiring software engineer focused on front-end development.
Visit CSStutorial.net
Classpert
Classpert is an online course aggregator that helps users find coding and software development courses from various platforms based on topics, providers, and user reviews. This resource allows aspiring software engineers to compare courses easily and choose the best ones tailored to their learning needs, making it easier to find quality educational content in the tech field.
Explore Classpert
Code Avengers
Code Avengers provides interactive coding lessons aimed at teaching programming through engaging projects and games focused on web development technologies such as HTML, CSS, and JavaScript. By participating in these interactive lessons, you can develop practical skills in coding while enjoying a fun learning experience—ideal for beginners entering the software engineering field.
Check out Code Avengers
Code College – CSS3 in 30 Days
Code College offers a structured course focused on learning CSS3 over a 30-day period. This course is designed to teach the latest features of CSS, enabling learners to create modern and responsive web designs effectively. Completing this course will equip you with the necessary styling skills for front-end development—an important area within software engineering.
Visit Code College – CSS3 in 30 Days
Command Line Power User
Command Line Power User is a resource designed to help users master the command line interface, focusing on productivity and efficiency. It covers essential commands and techniques for navigating and manipulating files, making it easier to perform tasks without a graphical interface. Learning these skills will enhance your ability to manage systems and automate tasks, which are valuable skills in software engineering.
Visit Command Line Power User
Cyber Aces
Cyber Aces offers free online courses focused on cybersecurity fundamentals, including networking, operating systems, and security principles. While primarily centered on cybersecurity, the knowledge gained can be beneficial for software engineers who need to understand security best practices when developing applications. This foundation can enhance your overall skill set in software development.
Explore Cyber Aces
Cybrary
Cybrary is an online platform that provides free and paid courses on IT and cybersecurity topics. It offers a variety of learning paths that include software development skills relevant to security practices. By using Cybrary, you can expand your technical knowledge and prepare for roles that require both software engineering and cybersecurity expertise.
Visit Cybrary
DASH BY GENERAL ASSEMBLY
DASH is an interactive learning platform by General Assembly that teaches web development through project-based lessons. It covers HTML, CSS, JavaScript, and design principles, allowing you to build real projects as you learn. This hands-on approach is invaluable for aspiring software engineers looking to gain practical experience in web development.
Check out DASH
Datacamp
Datacamp offers interactive courses focused on data science, analytics, and programming languages such as Python and R. The platform emphasizes hands-on learning with real-world datasets, which helps you develop practical skills in data manipulation and analysis—key areas in many software engineering roles today.
Visit Datacamp
Dataquest
Dataquest provides a project-based learning platform focused on data science and analytics skills through interactive coding challenges. The curriculum covers Python programming, data visualization, and machine learning concepts. By engaging with Dataquest, you can develop essential skills in handling data, which is increasingly important for software engineers working with data-driven applications.
Check out Dataquest
David Walsh
David Walsh’s website features a blog with tutorials and articles focused on web development technologies, including JavaScript, HTML5, CSS, and PHP. It provides practical insights and coding tips that can enhance your understanding of web development. By following David Walsh, you can learn modern techniques and best practices essential for a career in software engineering.
Visit David Walsh
Derek Banas
Derek Banas is known for his YouTube channel and website that offer extensive video tutorials on various programming languages and technologies. His “Learn X in One Video” series condenses complex topics into concise lessons. This resource can help you quickly grasp programming concepts and languages, making it easier to develop software engineering skills.
Check out Derek Banas
Design Gurus
Design Gurus provides resources and courses aimed at teaching design principles relevant to software development, particularly in user experience (UX) and user interface (UI) design. Understanding design concepts is crucial for software engineers to create user-friendly applications. Engaging with Design Gurus will help you enhance your design skills alongside your coding abilities.
Explore Design Gurus
DevOps School
DevOps School offers training programs and resources focused on DevOps practices, tools, and methodologies. It covers topics such as continuous integration, continuous deployment, and infrastructure as code. Learning DevOps principles will equip you with essential skills for modern software development environments, making you a more versatile software engineer.
Visit DevOps School
DevOps.com
DevOps.com is an online publication dedicated to DevOps news, articles, and resources. It provides insights into industry trends, best practices, and tools related to DevOps. Staying informed through this platform will help you understand the evolving landscape of software development and operations, which is increasingly relevant for software engineers today.
Check out DevOps.com
DigitalOcean
DigitalOcean offers cloud computing services along with extensive documentation and tutorials on various programming topics, including web development and server management. Their community tutorials are particularly useful for learning how to deploy applications in the cloud, which is a critical skill for software engineers working in modern environments.
Visit DigitalOcean
Django Girls Introduction to the Command-Line Interface
This resource provides an introduction to using the command line interface specifically tailored for those learning Django, a popular web framework for Python. It helps beginners understand how to navigate the command line effectively while developing web applications. Mastering command line skills is essential for software engineers who need to manage files and execute scripts efficiently.
Explore Django Girls CLI
ENVATOTUTS+
Envato Tuts+ offers a wide range of online courses and tutorials covering web development, design, and other creative skills. The platform includes video lessons that cater to different skill levels, helping you learn at your own pace. By utilizing Envato Tuts+, you can gain practical knowledge in various programming languages and frameworks relevant to software engineering.
Visit Envato Tuts+
EdX
EdX is an online learning platform that offers courses from universities and institutions worldwide on various subjects including computer science and software engineering. You can find professional certifications and MicroMasters programs that provide in-depth knowledge in specific areas of software development. Engaging with EdX can significantly enhance your educational background in software engineering.
Check out EdX
Edabit
Edabit is an interactive platform that provides coding challenges across various programming languages to help users improve their coding skills through practice. The gamified approach encourages regular practice and problem-solving, which are crucial for developing proficiency in programming as a future software engineer.
Visit Edabit
Educative.io
Educative.io provides interactive coding courses on various computer science topics including data structures, algorithms, system design, and programming languages like Python and JavaScript. The platform’s hands-on approach allows you to learn by doing, which is essential for mastering the skills needed in software engineering roles.
Visit Educative.io
Effective DevOps
Effective DevOps is a resource that provides insights into implementing DevOps practices within organizations effectively. It covers cultural changes, tools, and methodologies necessary for successful collaboration between development and operations teams. Understanding these concepts will prepare you for working in environments where DevOps principles are applied as part of the software engineering process.
Explore Effective DevOps
EliteDataScience
EliteDataScience focuses on providing resources related to data science education including tutorials on machine learning algorithms, data analysis techniques, and Python programming for data science applications. This knowledge is beneficial for software engineers looking to incorporate data-driven decision-making into their applications or pursue careers in data science fields as well. Visit EliteDataScience
Eloquent JavaScript
Eloquent JavaScript is an online book that teaches JavaScript programming through engaging examples and exercises covering both basic concepts and advanced topics like functional programming and asynchronous programming. Mastering JavaScript through this resource will provide you with essential skills needed for front-end development as well as server-side programming using Node.js. Check out Eloquent JavaScript
Exponent
Exponent provides resources specifically designed to help users prepare for technical interviews in tech companies focusing on coding challenges, system design interviews, behavioral questions, etc., tailored for aspiring software engineers seeking jobs in competitive environments. Visit Exponent
FREECODECAMP
freeCodeCamp is a non-profit educational organization that provides a comprehensive, interactive learning platform for web development. It offers a self-paced curriculum covering HTML, CSS, JavaScript, and various frameworks, with over 1,400 hours of coding challenges and projects. Students can gain hands-on experience by contributing to nonprofit projects after completing the curriculum. This platform is excellent for aspiring software engineers looking to build practical skills and a portfolio.
Visit FREECODECAMP
Founders and Coders
Founders and Coders is a coding bootcamp that offers a full-time software development program focused on JavaScript and web technologies. The curriculum includes hands-on projects, pair programming, and collaboration with real clients. This immersive experience helps students develop technical skills as well as teamwork and problem-solving abilities, which are crucial for software engineering careers.
Explore Founders and Coders
GA Dash
GA Dash (General Assembly Dash) is an online learning platform that provides free resources and tutorials for learning web development, including HTML, CSS, JavaScript, and more. It offers project-based learning experiences that allow users to apply their knowledge in practical scenarios. This resource is beneficial for beginners looking to build foundational skills in software engineering.
Check out GA Dash
GITHUB
GitHub is a widely used platform for version control and collaboration on software projects. It allows developers to host code repositories, track changes, and collaborate with others through pull requests and issues. Learning to use GitHub is essential for software engineers as it fosters collaboration in team environments and helps manage code efficiently.
Visit GITHUB
GameDev Academy
GameDev Academy offers courses and tutorials focused on game development using various engines like Unity and Unreal Engine. It covers programming languages such as C# and C++, along with game design principles. This resource is ideal for aspiring software engineers interested in pursuing careers in game development or related fields.
Explore GameDev Academy
GameDev.net
GameDev.net is an online community and resource hub for game developers that features articles, forums, tutorials, and job listings related to game development. Engaging with this community can provide valuable insights into industry trends, best practices, and networking opportunities for aspiring software engineers in the gaming industry.
Visit GameDev.net
GeeksforGeeks
GeeksforGeeks is an extensive online platform offering tutorials, articles, and coding challenges on various computer science topics including algorithms, data structures, programming languages, and interview preparation. This resource is invaluable for aspiring software engineers as it provides a wealth of information to strengthen your technical knowledge and problem-solving skills necessary for coding interviews.
Explore GeeksforGeeks
Git Immersion
Git Immersion is a guided tour that teaches the basics of Git version control through hands-on exercises. It covers essential commands and workflows needed to manage code effectively in collaborative environments. Understanding Git is crucial for software engineers as it enhances collaboration on projects and helps maintain code integrity over time.
Check out Git Immersion
GitHub Learning Lab
GitHub Learning Lab offers interactive courses that teach you how to use GitHub effectively, covering topics such as version control, collaboration, and project management. The hands-on approach allows you to practice real-world scenarios, making it an invaluable resource for aspiring software engineers who need to understand how to work in collaborative coding environments.
Visit GitHub Learning Lab
GitHub Docs
GitHub Docs provides comprehensive documentation on how to use GitHub’s features and functionalities. It includes guides on version control, repositories, and workflows. Familiarizing yourself with these documents will enhance your understanding of best practices in software development and version control, which are essential for any software engineer.
Explore GitHub Docs
Google AI
Google AI is a division of Google focused on advancing artificial intelligence research and applications. It offers resources and tools for learning about AI technologies, including tutorials on machine learning and AI ethics. Understanding AI concepts can significantly benefit software engineers looking to integrate intelligent systems into their applications.
Visit Google AI
Google Android Training
Google Android Training provides resources and tutorials for developers interested in building Android applications. It covers various aspects of Android development, including UI design, app architecture, and best practices. By engaging with this training, you can gain the skills needed to develop mobile applications, a key area in software engineering today.
Check out Google Android Training
HackerNoon
HackerNoon is an online publication that features stories and articles about technology, programming, startups, and more from various contributors in the tech community. Reading HackerNoon can keep you informed about industry trends, insights from professionals, and innovative ideas that can inspire your journey as a software engineer.
Check out HackerNoon
HTML Dog CSS Tutorials
HTML Dog provides tutorials focused on HTML, CSS, and JavaScript for web development beginners to advanced users. The structured lessons help learners understand web standards and best practices in front-end development. Mastering these skills is essential for any aspiring software engineer working on web applications.
Visit HTML Dog
HTML.com
HTML.com offers tutorials and resources focused on HTML and web development basics. It provides step-by-step guides that are beginner-friendly, making it easier for new developers to learn how to create websites effectively. This foundational knowledge is crucial for anyone pursuing a career in software engineering with a focus on web technologies.
Explore HTML.com
HTML5 Dog
HTML5 Dog provides tutorials specifically focused on HTML5, CSS3, and JavaScript best practices for modern web development. The site offers detailed explanations and examples that help learners understand how to implement new features effectively. Gaining proficiency in these technologies is vital for developing contemporary web applications as a software engineer.
Visit HTML5 Dog
Hackr.io
Hackr.io is a community-driven platform where users can find coding tutorials across various programming languages and frameworks based on recommendations from other learners. This resource helps aspiring software engineers discover high-quality content tailored to their learning needs while enabling them to track their progress through different courses or tutorials available online.
Check out Hackr.io
JavaScript for Cats
JavaScript for Cats is an introductory guide designed to teach JavaScript concepts in a simple and engaging way using cat-themed illustrations and examples. This lighthearted approach makes it accessible for beginners who want to learn JavaScript fundamentals—a critical skill for any aspiring software engineer focusing on web development or interactive applications. Visit JavaScript for Cats
JavaScript.com
JavaScript.com is an educational site dedicated to teaching JavaScript programming through resources like tutorials, articles, and community forums. It serves as an excellent starting point for beginners looking to learn JavaScript—a key language used in both front-end and back-end web development—essential for modern software engineering roles. Explore JavaScript.com
Joy of WP
Joy of WP focuses on teaching WordPress development through tutorials that cover everything from basic setup to advanced plugin development techniques using PHP and JavaScript within the WordPress ecosystem. Understanding WordPress can be beneficial for software engineers interested in content management systems or web development projects involving WordPress sites. Visit Joy of WP
Khan Academy
Khan Academy offers a wide range of free online courses, including a comprehensive section on computer programming. The programming curriculum covers JavaScript, HTML/CSS, and SQL, providing interactive lessons and exercises that help learners grasp fundamental concepts. This platform is excellent for beginners looking to build a strong foundation in programming and web development.
Visit Khan Academy
Killer PHP
Killer PHP is a resource dedicated to teaching PHP programming through tutorials, articles, and video lessons. It covers various aspects of PHP development, including best practices and advanced techniques. Learning PHP is essential for web developers, especially those interested in server-side programming, making this resource valuable for aspiring software engineers.
Explore Killer PHP
LEARN BY GOOGLE DEVELOPERS
Learn by Google Developers provides a variety of free resources and courses aimed at helping developers learn Google’s technologies and platforms, including Android development, web development, and machine learning. The structured content is beneficial for aspiring software engineers looking to gain expertise in specific areas relevant to modern software development.
Visit LEARN BY GOOGLE DEVELOPERS
Launch School Open Book Shelf
Launch School’s Open Book Shelf offers free access to educational materials focused on software engineering concepts, particularly Ruby on Rails and full-stack development. The resources are designed to help learners build a strong understanding of programming principles and best practices, making it a great option for those pursuing a career in software engineering.
Check out Launch School Open Book Shelf
Learn Enough Command Line to Be Dangerous
This resource provides an introduction to using the command line interface effectively, covering essential commands and workflows. Mastering the command line is crucial for software engineers as it allows for efficient file management and automation of tasks, making this guide an important tool for beginners.
Visit Learn Enough Command Line to Be Dangerous
Learn JS
Learn JS is an online resource that offers tutorials focused on JavaScript programming. It covers the language’s fundamentals as well as advanced topics such as asynchronous programming and frameworks like React. This resource is essential for aspiring software engineers who want to develop interactive web applications using JavaScript.
Explore Learn JS
Learn Python The Hard Way (Website)
“Learn Python The Hard Way” is an online book that teaches Python programming through a hands-on approach with practical exercises and projects. It emphasizes understanding programming concepts deeply through practice rather than just theory. This resource is beneficial for beginners looking to gain proficiency in Python, which is widely used in software engineering today.
Visit Learn Python The Hard Way
Learn Ruby the Hard Way
Similar to its Python counterpart, “Learn Ruby the Hard Way” offers a practical approach to learning Ruby through exercises and projects that encourage active participation in coding. This resource helps aspiring software engineers develop a solid understanding of Ruby, which is particularly useful for web development with frameworks like Ruby on Rails.
Check out Learn Ruby the Hard Way
Learn to Code HTML & CSS (via Shay Howe)
Shay Howe’s guide provides a comprehensive introduction to HTML and CSS through clear explanations and practical examples. It covers everything from basic markup to advanced styling techniques, making it an excellent resource for beginners who want to build websites effectively—an essential skill for any aspiring software engineer focused on web development. Visit Shay Howe’s Guide
Learn-HTML.org
Learn-HTML.org is a free interactive tutorial that teaches HTML basics through hands-on examples and exercises. The site covers essential HTML tags and structure needed for building web pages, providing a solid foundation for anyone looking to enter the field of web development as part of their software engineering journey. Explore Learn-HTML.org
LearnCode.academy
LearnCode.academy offers video tutorials focused on web development technologies such as HTML, CSS, JavaScript, Node.js, and more. The channel emphasizes practical coding skills through project-based learning, making it an excellent resource for aspiring software engineers looking to enhance their front-end and back-end development capabilities. Visit LearnCode.academy
LearnPython.org
LearnPython.org provides interactive Python tutorials that cover basic concepts as well as advanced topics like data structures and object-oriented programming. The hands-on approach allows learners to practice coding directly in their browser, making it easier for beginners to gain confidence in Python programming—an important language in software engineering. Explore LearnPython.org
LearnRubyOnline.org
LearnRubyOnline.org offers interactive lessons focused on Ruby programming language fundamentals with exercises that allow users to practice coding directly in their browser. This platform is beneficial for those looking to learn Ruby efficiently while gaining practical experience necessary for software engineering roles involving Ruby on Rails or other Ruby applications. Visit LearnRubyOnline.org
Line25: Design & Code a Cool iPhone App Website in HTML5
Line25 offers tutorials that guide users through designing and coding iPhone app websites using HTML5 technologies. This resource helps learners understand mobile-friendly design principles while gaining hands-on experience with HTML5—a valuable skill set for aspiring software engineers interested in mobile app development. Check out Line25
Live Code Stream
Live Code Stream provides live coding sessions where developers demonstrate coding techniques and projects in real-time while interacting with viewers through Q&A sessions. This platform allows learners to see coding practices in action, helping them understand real-world applications of programming concepts essential for software engineering. Visit Live Code Stream
Machine Learning Mastery
Machine Learning Mastery offers tutorials and resources focused on machine learning concepts using Python libraries such as TensorFlow and scikit-learn. It provides practical guides that help learners understand how to implement machine learning algorithms effectively—an increasingly important area within software engineering. Explore Machine Learning Mastery
Mammoth Interactive – Learn to code in 30 minutes!
Mammoth Interactive provides short courses aimed at teaching coding concepts quickly across various languages including Python, JavaScript, and Swift through engaging video content and hands-on exercises. This platform can help beginners get started with coding efficiently while building foundational skills necessary for further study in software engineering. Visit Mammoth Interactive
MarkSheet
MarkSheet offers resources focused on front-end web development technologies such as HTML5, CSS3, JavaScript frameworks, and more through tutorials and articles that emphasize best practices in design and development workflows—essential knowledge for aspiring software engineers working on user interfaces. Explore MarkSheet
Microsoft Channel 9: JavaScript Fundamentals and Development for Absolute Beginners
Microsoft Channel 9 features video content focused on teaching JavaScript fundamentals aimed at absolute beginners along with insights into development practices using Microsoft technologies like Azure or Visual Studio Code—valuable skills for aspiring software engineers entering the tech industry. Visit Microsoft Channel 9
Microsoft Virtual Academy
Microsoft Virtual Academy (now integrated into Microsoft Learn) offered free online courses covering a wide range of Microsoft technologies and programming topics. Although it has been retired, its content has been migrated to Microsoft Learn, providing learners with access to high-quality resources that can help you develop your software engineering skills across various platforms and tools.
Explore Microsoft Learn
MIT OpenCourseWare
MIT OpenCourseWare is an initiative by the Massachusetts Institute of Technology that offers free access to course materials from a wide array of subjects, including computer science and programming. You can find lecture notes, assignments, and exams from actual MIT courses, allowing you to learn at your own pace and gain a deep understanding of software engineering principles.
Visit MIT OpenCourseWare
MDN JavaScript
MDN JavaScript is a section of MDN Web Docs specifically dedicated to JavaScript programming. It offers in-depth tutorials and documentation covering everything from basic syntax to advanced concepts like asynchronous programming and APIs. Mastering JavaScript through this resource is vital for software engineers working on front-end development or server-side applications using Node.js.
Visit MDN JavaScript
NodeSchool
NodeSchool provides open-source workshops that teach web development concepts using Node.js and JavaScript through interactive lessons. The hands-on approach allows you to practice coding in real-time while learning essential skills for building server-side applications. This resource is particularly useful for aspiring software engineers interested in back-end development with Node.js.
Check out NodeSchool
One Month
One Month offers short courses designed to teach coding skills quickly across various programming languages and frameworks such as Python, Ruby on Rails, and HTML/CSS. The focus on practical projects helps learners gain real-world experience in a condensed timeframe, making it suitable for those looking to quickly acquire software engineering skills.
Visit One Month
PHP Pandas
PHP Pandas is a resource that focuses on teaching PHP programming through tutorials and articles aimed at both beginners and advanced users. It covers various aspects of PHP development, including frameworks like Laravel. Learning PHP is essential for web developers who want to build dynamic websites or applications using server-side scripting languages.
Explore PHP Pandas
PHP The Right Way
PHP The Right Way is an easy-to-read guide that explains best practices for PHP programming, covering topics such as coding standards, security practices, and performance optimization. This resource helps aspiring software engineers understand how to write clean and maintainable PHP code—critical skills for developing robust web applications using PHP frameworks like Laravel or Symfony.
Visit PHP The Right Way
PHPBuddy.com
PHPBuddy.com provides tutorials and resources focused on learning PHP programming from the ground up. It includes practical examples and exercises that help beginners understand core concepts in PHP development effectively. This resource is beneficial for those looking to establish a solid foundation in PHP as part of their journey towards becoming a software engineer specializing in web development. Check out PHPBuddy.com
Pluralsight (Code School)
Pluralsight offers a subscription-based platform providing access to a vast library of technology courses, including Code School’s interactive tutorials focused on web development technologies like Ruby on Rails and JavaScript frameworks. By engaging with Pluralsight’s content, you can enhance your technical skills through hands-on learning experiences tailored for aspiring software engineers. Visit Pluralsight
Programming with Mosh
Programming with Mosh is an online platform offering video courses on various programming languages such as Python, JavaScript, C#, and more. Mosh’s teaching style emphasizes practical coding skills through project-based learning, making it easier for beginners to grasp complex concepts essential for software engineering careers. Check out Programming with Mosh
ProgrammingKnowledge
ProgrammingKnowledge provides free video tutorials covering a wide range of programming languages and technologies including Python, Java, C++, and web development tools like HTML/CSS/JavaScript. This resource is beneficial for aspiring software engineers looking to learn at their own pace while gaining practical coding experience through hands-on projects. Visit ProgrammingKnowledge
Python-Guide.Org: Hitchhiker’s Guide to Python
The Hitchhiker’s Guide to Python is an extensive resource that covers Python programming best practices, tools, libraries, and frameworks used in the industry today. It serves as a comprehensive reference for both beginners and experienced developers looking to deepen their understanding of Python—an essential language in many areas of software engineering. Explore Hitchhiker’s Guide to Python
Rails For Zombies
Rails For Zombies is an interactive tutorial designed to teach Ruby on Rails by guiding users through building applications step-by-step while solving challenges along the way. This engaging approach helps learners understand the framework’s fundamentals effectively—valuable knowledge for aspiring software engineers interested in web application development. Check out Rails For Zombies
Rails Girls
Rails Girls is an initiative aimed at introducing women to web development using Ruby on Rails through workshops that provide hands-on experience in building web applications from scratch. Participating in Rails Girls events can empower aspiring female software engineers by providing them with essential skills and confidence in coding. Visit Rails Girls
Real Python: Learn Python Programming By Example
Real Python offers tutorials focused on practical examples of Python programming across various topics such as data analysis, web development, automation scripts, etc., helping learners apply their knowledge effectively in real-world scenarios—essential for anyone pursuing a career in software engineering. Explore Real Python
Resilient Coders
Resilient Coders is a nonprofit organization that provides coding education focused on underserved communities by offering intensive training programs that teach full-stack web development skills using JavaScript technologies like React.js and Node.js along with professional development support—greatly benefiting those looking to enter the tech industry as software engineers. Visit Resilient Coders
Rithm School
Rithm School offers a 16-week coding bootcamp focused on full-stack web development, teaching technologies like JavaScript, Python, SQL, and Flask. The program includes hands-on projects and interview preparation, providing students with the skills needed to succeed in softwareengineering careers. With small class sizes and personalized instruction, Rithm School emphasizes real-world applications and prepares students for job placements.
Ruby In 20 Minutes
Ruby In 20 Minutes is a quick tutorial designed to introduce beginners to the Ruby programming language. It provides a concise overview of Ruby’s syntax and features through interactive examples. This resource is helpful for aspiring software engineers who want to quickly grasp the basics of Ruby before diving deeper into web development or Ruby on Rails.
Explore Ruby In 20 Minutes
Ruby Koans
Ruby Koans is an interactive learning platform that teaches Ruby through a series of exercises that require you to fill in missing code. The koans guide you through different aspects of the language while encouraging hands-on practice. This method helps reinforce your understanding of Ruby concepts, making it a valuable resource for those looking to become proficient in Ruby programming.
Check out Ruby Koans
Ruby on Rails Tutorial
The Ruby on Rails Tutorial is an online book that provides a comprehensive guide to building web applications using the Ruby on Rails framework. It covers everything from setting up your environment to deploying your application, making it an excellent resource for aspiring software engineers interested in web development with Rails.
Visit Ruby on Rails Tutorial
RubyMonk
RubyMonk offers interactive tutorials for learning Ruby programming and the Ruby on Rails framework. The platform provides hands-on coding exercises that allow you to practice as you learn, helping you build a solid foundation in both Ruby and Rails—essential skills for software engineers focusing on web development.
Explore RubyMonk
Scratch
Scratch is a visual programming language designed for beginners, particularly children, to learn coding concepts through interactive projects and games. While it may not directly teach traditional programming languages, Scratch helps develop logical thinking and problem-solving skills that are fundamental for any aspiring software engineer.
Visit Scratch
Scrimba Learn React for Free
Scrimba offers an interactive learning platform specifically focused on teaching React, a popular JavaScript library for building user interfaces. The free course allows you to watch tutorials while coding alongside the instructor in real-time, making it easier to grasp React concepts effectively—important knowledge for front-end developers in software engineering.
Check out Scrimba Learn React
SheCanCode
SheCanCode is an online community and resource hub aimed at supporting women in tech through coding tutorials, career advice, and networking opportunities. This platform helps aspiring female software engineers find resources tailored to their needs while fostering a supportive environment for learning and growth in the tech industry.
Visit SheCanCode
SitePoint
SitePoint is an online publication that offers articles, tutorials, and courses covering various web development topics including HTML, CSS, JavaScript, PHP, and more. It serves as a valuable resource for aspiring software engineers looking to stay updated with industry trends while enhancing their technical skills through practical guides and community discussions.
Explore SitePoint
Skillcrush’s Coding Camp
Skillcrush offers a coding camp designed for beginners that covers essential web development skills such as HTML, CSS, JavaScript, and WordPress through project-based learning modules. This camp helps aspiring software engineers gain practical experience while building their portfolios—critical for entering the tech job market successfully.
Visit Skillcrush
Smashing Magazine: Beginner’s Guide to Creating a WordPress Website
Smashing Magazine provides a comprehensive guide aimed at beginners looking to create websites using WordPress. It covers everything from installation to customization and best practices in web design. Understanding WordPress is beneficial for software engineers interested in content management systems or freelance web development projects. Check out Smashing Magazine
Software Testing Material
Software Testing Material offers resources focused on software testing concepts, methodologies, and tools used in the industry today. It includes tutorials on manual testing, automation testing tools like Selenium, and interview preparation materials—essential knowledge for software engineers involved in quality assurance processes within their projects. Explore Software Testing Material
Softwarehow
Softwarehow provides guides and reviews related to various software tools and technologies used in programming and development environments. By exploring these resources, aspiring software engineers can gain insights into industry-standard tools that can enhance their productivity and effectiveness in software development tasks. Visit Softwarehow
SoloLearn
SoloLearn is a mobile-friendly platform offering free coding courses across multiple programming languages including Python, JavaScript, C++, and more through interactive lessons and community engagement features like quizzes and coding challenges—ideal for beginners looking to learn programming at their own pace. Check out SoloLearn
Springboard
Springboard offers online courses focused on data science, software engineering, UI/UX design, and more with personalized mentorship from industry professionals throughout the learning journey—providing aspiring software engineers with tailored support as they develop technical skills necessary for success in their careers. Visit Springboard
Stack Overflow
Stack Overflow is a question-and-answer platform where developers can ask questions about programming issues they encounter while coding or working on projects. It’s an invaluable resource for aspiring software engineers to seek help from the community while also contributing by answering questions—enhancing both knowledge retention and community engagement. Explore Stack Overflow
Team Treehouse
Team Treehouse is an online learning platform offering courses focused on web development technologies such as HTML/CSS, JavaScript, Python, PHP, and more through video tutorials combined with interactive quizzes—providing aspiring software engineers with structured learning paths tailored to specific career goals. Check out Team Treehouse
The Code Player
The Code Player offers video tutorials that demonstrate how to create various web applications using HTML5, CSS3, JavaScript, jQuery, and more through step-by-step instructions—helping learners visualize the coding process while developing practical skills necessary for becoming proficient software engineers. Visit The Code Player
The Encyclopedia of Human-Computer Interaction
This comprehensive resource provides insights into the principles and practices of human-computer interaction (HCI). It covers various topics, including user experience design, usability testing, and interaction design. Understanding HCI is crucial for software engineers as it helps create user-friendly applications and improves overall user satisfaction.
Visit The Encyclopedia of Human-Computer Interaction
The Odin Project
The Odin Project is a free, open-source curriculum that teaches web development through hands-on projects and a community-driven approach. It covers HTML, CSS, JavaScript, Ruby on Rails, and more. This project-based learning method is beneficial for aspiring software engineers looking to build a portfolio while gaining practical experience in full-stack development.
Explore The Odin Project
The Python Foundation: Beginner’s Guide
The Python Foundation provides a beginner’s guide to help new programmers get started with Python. It includes resources, tutorials, and community links to support learners in their journey to mastering Python—a versatile language widely used in software engineering today. This guide is essential for anyone looking to enter the programming field.
Visit The Python Foundation: Beginner’s Guide
Thinkster.io: A Better Way to Learn Angular
Thinkster.io offers a focused curriculum for learning Angular, a popular front-end framework for building web applications. The platform emphasizes practical coding exercises and real-world projects, making it easier for aspiring software engineers to grasp Angular concepts effectively while developing robust applications.
Check out Thinkster.io
ToolsQA
ToolsQA provides tutorials and resources focused on software testing and automation tools like Selenium, QTP, and TestNG. It covers various testing methodologies and best practices that are essential for software engineers involved in quality assurance processes within their projects. Understanding these concepts can enhance your skill set in software development.
Visit ToolsQA
Try Git
Try Git is an interactive tutorial that teaches users how to use Git version control through hands-on exercises in the browser. By completing this tutorial, aspiring software engineers can quickly learn the basics of Git—an essential tool for collaboration and code management in software development projects.
Explore Try Git
Tuts+
Tuts+ offers a wide range of tutorials and courses on various topics including web development, design, and programming languages. The platform provides both free and premium content that helps learners develop practical skills through project-based learning—ideal for aspiring software engineers looking to enhance their technical knowledge across different areas.
Visit Tuts+
Udacity
Udacity offers online courses focusing on technology and programming topics, including nanodegree programs in web development, data science, AI, and more. These courses are designed in collaboration with industry experts to provide relevant skills needed in the job market—making it a valuable resource for aspiring software engineers seeking specialized training.
Explore Udacity
Udemy
Udemy is an online learning platform that offers a vast library of courses on programming languages, web development frameworks, mobile app development, and more at various price points (including free options). By taking courses on Udemy, aspiring software engineers can learn at their own pace while gaining practical skills through hands-on projects tailored to their interests and career goals.
Visit Udemy
Upskill
Upskill provides online courses focused on technology skills needed for careers in software development and data science. The platform emphasizes project-based learning and real-world applications to help learners build a portfolio while acquiring essential skills—ideal for those looking to enter the tech industry as software engineers.
Check out Upskill
UX Beginner
UX Beginner offers resources aimed at teaching user experience design principles to beginners through articles, guides, and tutorials on UX research, design processes, and tools used in the industry today. Understanding UX design is crucial for software engineers who want to create user-friendly applications that meet user needs effectively.
Visit UX Beginner
UXPin
UXPin is a collaborative design platform that allows designers and developers to create wireframes and prototypes for web applications. It provides resources on UX design principles and best practices that can help aspiring software engineers understand the importance of user-centered design when developing applications or websites. Explore UXPin
VueJS.org
VueJS.org is the official website for Vue.js, a progressive JavaScript framework used for building user interfaces and single-page applications. The site includes documentation, tutorials, and examples that help developers learn how to use Vue effectively—essential knowledge for front-end developers in software engineering roles. Visit VueJS.org
W3Schools
W3Schools is an educational website that provides tutorials on web development technologies including HTML, CSS, JavaScript, PHP, SQL, and more through interactive lessons with examples and quizzes. This resource is great for beginners looking to learn the fundamentals of web development as part of their journey toward becoming a software engineer. Explore W3Schools
WPBeginner
WPBeginner is an online resource dedicated to helping beginners learn how to use WordPress effectively through tutorials covering everything from installation to advanced customization techniques using themes and plugins. Understanding WordPress is beneficial for software engineers interested in content management systems or freelance web development projects. Visit WPBeginner
WPMU DEV Your Startup Guide to SEO: A WordPress SEO Tutorial
This tutorial provides insights into search engine optimization (SEO) specifically tailored for WordPress users, covering best practices for optimizing websites for search engines effectively. Learning SEO principles can be advantageous for software engineers involved in web development projects as it enhances the visibility of the applications they build. Check out WPMU DEV SEO Guide
Watch & Code
Watch & Code is an online platform that focuses on teaching JavaScript and programming fundamentals through a project-based approach. The program emphasizes mastery of core concepts, providing personalized feedback and mentorship. This hands-on learning style helps aspiring software engineers build real-world applications and develop problem-solving skills essential for their careers.
Visit Watch & Code
WordPress.com Learn
WordPress.com Learn provides tutorials and courses focused on using WordPress to create websites and blogs. It covers topics such as site setup, customization, and plugin usage. Understanding WordPress is beneficial for software engineers interested in content management systems or web development projects involving WordPress.
Visit WordPress.com Learn
WordPress.tv
WordPress.tv is a platform that hosts videos related to WordPress development, including tutorials, conference talks, and community events. It serves as a valuable resource for learning about WordPress features, best practices, and community insights, which can help aspiring software engineers enhance their skills in building WordPress sites.
Check out WordPress.tv
learn-php.org
Learn-PHP.org is an interactive website that offers free tutorials on PHP programming language basics through hands-on exercises and examples. This resource is ideal for beginners looking to develop server-side scripting skills essential for web development as part of their journey toward becoming proficient software engineers.
Explore learn-php.org
tutorialspoint.com Ruby on Rails Tutorial
TutorialsPoint provides a comprehensive Ruby on Rails tutorial covering the framework’s features, installation process, and practical examples for building web applications. This resource is beneficial for aspiring software engineers who want to learn how to create dynamic web applications using one of the most popular frameworks in the industry.
Visit TutorialsPoint Ruby on Rails Tutorial
w3resource Ruby Tutorial
w3resource offers a detailed Ruby tutorial that covers various aspects of the Ruby programming language through examples and exercises. This resource helps beginners understand Ruby syntax and concepts essential for developing applications with Ruby on Rails or other Ruby frameworks—valuable knowledge for aspiring software engineers.
Check out w3resource Ruby Tutorial
w3schools
W3Schools is an extensive online learning platform that focuses on web development and programming. It provides tutorials, references, and interactive examples for various web technologies including HTML, CSS, JavaScript, Python and more. Visit w3schools