Home >Technology peripherals >It Industry >How to Teach Yourself Web Development
At the age of twelve, after discovering the “Save as Web Page” option in Microsoft Word, I started to teach myself web development. I learned HTML first, of course, and then CSS and JavaScript, and then bits and pieces of PHP and Rails. (These days, I’m quite fond of Meteor.)
Over the years that followed, I considered getting a formal education, and I could see the value in doing so, but in the end:
But it’s not like this was always an effortless process. I wasn’t just learning how to code for the web, after all. I was also learning how to learn, and that’s what we’re about to discuss.
Here are five steps for teaching yourself web development.
You can’t just “become a web developer” by reading a certain book or watching a certain number of videos. Web development is a big field and trying to be a jack-of-all-trades will likely leave you exhausted, frustrated, and only a little further ahead than when you first started.
Being a web developer is like being a scientist. There are foundational ideas that apply across disciplines but, ultimately, you need to specialize. You have to commit to something forever though — it’s easier to move to another area once you’ve mastered one — nor will you be limited by your choice. Someone who is intricately familiar with PHP can do a lot more than someone with a basic grasp of ten cutting-edge web technologies.
But at this point, there’s no right answer. As long as you have a grasp of HTML and CSS, you simply need to pick whatever seems interesting. Perhaps discover what your favorite websites are built with. You’ll find that Rails is all over the place but JavaScript frameworks are on the rise. I’m working with Meteor because I like its real-time features. Your reasons, however, don’t precisely matter. Just try to follow your own interests, since that’s the only way you’ll be able to maintain your motivation.
If nothing specifically excites you, stick with the most common technologies, like JavaScript and PHP. There’s so much training material available that you’ll at least get a thrill from the abundance of available support.
Seasoned web developers usually offer well-intentioned advice to beginners that is completely impractical to implement. This is because they:
Ask what language you should learn, for instance, and the debate that follows won’t be what’s best suited for you. It’ll be a debate based heavily on the biases the developers themselves have developed through their work.
Here’s how I see it:
Whether or not you start learning PHP or Rails or JavaScript, or whatever else, is irrelevant. Why? Because making the switch from one language to another is incredibly insignificant compared to making the leap from not being a web developer to then being a web developer.
There are experienced web developers with great advice but, when advice is offered, ask yourself: Is this truly the best way for a beginner to approach this process? Or is this simply how the developer had wished they’d learned?
After learning the basics of web development, try building something without following a book or tutorial. By far, this is the most effective way to:
It doesn’t matter what choose to build but keep the scope of the project as small as possible. If you can forsee yourself spending days on this project, it’s too big. Make it smaller. You don’t want it to drag-on.
Also make sure to define an end-point for the project. What features will it have when you can label it “done”? You want to know when you’re allowed to feel satisfied with what you’ve made. (And this doesn’t have to mean when the project is ready for the world since there’s no need to publish the creation.)
Depending on what area of web development you specialise in certain projects may be simpler to create but here’s a few ideas worth considering:
Basically, any sort of project that’s main purpose is to track some basic data is a good way to test your knowledge as a beginner.
When you’re getting started with web development, you’ll make quick progress in some areas, but there’ll come a time when your progress slows and this is where a lot of beginners throw up their hands in frustration, and give up.
This happens because beginners usually rely on achieving milestones to feel satisfied. Milestones aren’t predictable though. After getting a handle on the basics, you can go days or weeks without making significant leaps.
There is, however, an alternative approach:
Instead of focusing on achieving milestones, commit to learning and practicing web development for a specific amount of time every day. At least twenty minutes is a good starting point but there’s no precise limit or requirements. Just pick whatever length you can reasonably manage on a consistent basis.
The point in commiting to a time frame is that you’ll then allow youself to feel satisifaction for meeting that commitment. The milestones will continue to arrive, but as a pleasant by-product, rather than an unpredictable goal.
You may have seen the writing-focused video from Ira Glass where he suggests that people “do a lot of work.”
Ira Glass on Storytelling from David Shiyang Liu on Vimeo.
It’s a simple belief that leads to a state of skill, and the idea easily applies to web development. You have to write a lot of code if you want to be a developer but what a lot of people don’t realise is that the code doesn’t have to be your own. There’s an immense value in following along with the code from books and tutorials and video training material — like that covered on sites like SitePoint and in books and courses from sites like Learnable.
You do have to be engaged with the material — you should consider the purpose of each line of code as you’re writing it — but even though you’re “learning by rote”, you’re still learning.
Here’s what most people don’t consider:
The syntax isn’t the difficult part of web development. It’s a stumbling block for beginners but, afterward, the tricky part is determining how to think about how to solve certain problems. Here, the grand irony is that beginners often think of far more complex solutions than a professional would.
With this in mind, the benefit of following allow with an immense amount of training material is that:
When you’re ready to work on your own projects, this exposure to how problems can be solved will provide the mental tools required to:
You may not be able to recall any precise solutions, but that won’t matter. Most problems have been solved before, in some form or another, and half of the difficulty of “speaking in code” is understanding what you’re trying to say. Beyond that point, the syntax and details are far easier to grasp.
I’ve only shared a handful of “big picture” tips for teaching yourself web development, but they’re definitely things I wish someone had told me when I first got started.
If you’re already on your self-education journey, where did you begin? And how have your techniques for learning changed since first getting started?
To become a proficient web developer, you need to master several skills. First, you need to have a good understanding of HTML/CSS, the building blocks of web pages. JavaScript is another essential language that adds interactivity to your website. Knowledge of a server-side language like PHP, Ruby, Python, or .NET is also crucial. Additionally, you should understand how databases work and how to interact with them using SQL. Lastly, learning about version control systems like Git can help you manage your code effectively.
The time it takes to learn web development varies depending on your dedication, learning method, and prior experience. If you’re starting from scratch, it might take several months to a year to gain a solid understanding of the basics. However, remember that web development is a field where continuous learning is necessary due to the constant evolution of technologies.
Yes, there are numerous resources available online where you can learn web development for free. Websites like Codecademy, Mozilla Developer Network, and freeCodeCamp offer comprehensive tutorials and exercises on various web development topics. However, it’s important to supplement these resources with practical projects to apply what you’ve learned.
Front-end development involves creating the visual elements of a website that users interact with. This includes everything from layouts and buttons to forms and menus. On the other hand, back-end development deals with the server-side operations of a website, such as database interactions and server configuration.
While having a degree in computer science or a related field can be beneficial, it’s not a strict requirement to become a web developer. Many successful web developers are self-taught or have completed coding bootcamps. What matters most is your understanding of key web development concepts and your ability to demonstrate these skills through a portfolio of projects.
Responsive web design is an approach to web design that makes web pages render well on a variety of devices and window or screen sizes. It’s about designing and developing a website so that its layout, images, and functionalities respond and adapt to different devices.
The best way to practice your web development skills is by working on real projects. Start by building simple websites and gradually move on to more complex applications. Participating in coding challenges and contributing to open-source projects can also help you improve your skills.
A full-stack developer is a web developer who can handle both front-end and back-end development. They are proficient in HTML, CSS, JavaScript, and one or more back-end languages. They also understand databases and can work with version control systems.
Learning frameworks can significantly speed up your development process. They provide a structured way of developing applications and come with built-in functionalities that you would otherwise have to code from scratch. However, it’s important to first have a solid understanding of the underlying language before diving into a framework.
Some common challenges in web development include keeping up with the rapidly evolving technologies, ensuring website compatibility across different browsers and devices, optimizing website performance, and maintaining code quality. It’s also important to consider user experience and accessibility when developing websites.
The above is the detailed content of How to Teach Yourself Web Development. For more information, please follow other related articles on the PHP Chinese website!