- Published on
How to start a new project
- Authors
- Name
- Cookie
A few weeks ago, I began a part-time job to develop a website for a marketing event. Although the site itself was relatively simple, I was asked to build it using WordPress, a platform with which I was unfamiliar. I had heard about WordPress and its extensive plugin ecosystem, and initially, I thought I could complete the work using existing plugins. However, as the requirements grew more complex, the limitations of the plugins became apparent, and selecting the appropriate plugin from the vast array available in WordPress proved to be time-consuming.
The entire process was challenging, and I experienced significant time pressure and inefficient communication. Nevertheless, I persevered, and there are several lessons I learned along the way that I wish I had known earlier when starting something new.
1. Prioritize tasks before starting the work
A significant issue during the development process was the lack of efficient communication. I began with some Figma designs, but the client frequently changed their mind, and I didn't stay up-to-date with their revisions. This led to a situation where I had to continuously modify my code to accommodate new requirements. By requesting updates more frequently, I could have saved time.
2. Focus on features when learning a new system
Diving into a new ecosystem can be overwhelming, with numerous unfamiliar terms appearing constantly. While attempting to learn and understand these concepts, I found myself in a never-ending loop of looking up new terms and their explanations, often ending up far from my original destination. Especially with long-standing platforms like WordPress, documentation can sometimes be more confusing than helpful. However, I learned several advantages of focusing on features when learning a new stack:
- Features introduce the main concepts of a system and provide a good overview of its capabilities.
- When unsure about a particular aspect, reviewing feature introductions can help remind you of better ways to leverage the system's functionality to solve problems.
- Features can be seen as the design guide for the entire system, which can remind you of the rationale behind certain design decisions.
3. Experiment with code rather than solely relying on documentation
In my opinion, WordPress's documentation is quite poor. Sometimes, I had to rely on comments from others to find the information I needed. I attempted to read the source code and understand what was happening, but that was time-consuming. Instead of focusing solely on the documentation, I should have run the code with different parameters and logged any uncertainties to gain a quicker understanding of the functions.