The BLM Strategy - A Personal Journey Shared
In the ever-changing world of coding, growth is a journey that each developer embarks upon individually. The BLM strategy - Build, Learn, Monetize - is a way of life, "Wu Wei" as the Chinese may say, a reflection of a personal journey, one that I've traversed and found valuable. Today, I'm sharing it because I believe it might serve as a guiding light for others and I recently decided to share more of my coding journey and thoughts even though I am typically a private person.
This strategy, comprised of three pillars - Building, Learning, and Monetizing, is a testament to the realization that true mastery in coding emerges not just from theory but from hands-on experience and the pursuit of knowledge.
Key Takeaways:
Building: It is the cornerstone of the BLM strategy, emphasizing the significance of continuous building, the importance of choosing the right projects, and the value of resources for efficient learning.
Learning: Continuous learning is the heart of the journey, transitioning from small to large projects, and the pivotal role of your portfolio in showcasing your skills.
Monetizing: This phase explores the various ways to monetize your skills, including freelancing, traditional employment, entrepreneurship, and content creation. The overarching theme is that your portfolio remains your silent advocate throughout these monetization paths, instilling trust and showcasing your capabilities.
The BLM strategy is a compass through the intricate terrain of tech, a path of incremental improvement that I'm walking and wish to share.
Building - The Foundation of Learning
Building is the cornerstone of the BLM strategy, and it's where your journey as a developer begins. This section explores the critical aspects of building projects and how it serves as the fastest way to learn and grow in the world of coding. In my opinion, courses are often redundant in practice and offer little help other than basic general theory, though there may be rare cases where courses can be more impactful. The BLM strategy assumes basic general knowledge for a given language e.g understanding what variables and functions are, but relies on the hands-on process of continuous building for in-depth learning. It supports use by beginners as basic prerequisite knowledge can be learned on the fly using resources that will be disccused later on.
1. Choose the Right Project
The first step in this process is selecting the right project. Think of this as laying the groundwork for your learning journey. Pick a small project that strikes a balance between challenging you and being achievable. Depending on your experience you may opt to start with a more challenging project.
Your choice of project should allow you to not only practice coding but also learn the ins and outs of an important framework or the fundamentals of a language. For instance, if you're planning on learning JavaScript, pick a project that allows you to apply JavaScript fundamentals like array methods e.g array.filter()
, to a framework like Node.js
or React.js
.
2. Resources
Building your project isn't a solitary endeavor. You'll need a variety of tools and resources to aid your learning journey. These can include:
Documentation: The official documentation for the language or framework you're using is a goldmine of information. It provides insights into syntax, functions, and best practices.
Github: The hub for open-source code. A place where you can explore open-source projects to study code, best practices, and collaborative development techniques.You can also follow repositories and users to stay updated on projects and discover educational resources.
ChatGPT: AI-powered language models like ChatGPT can be immensely helpful. You can seek answers to your queries, clarify doubts, or even brainstorm ideas with AI.
Search Engines: Google is your friend - don't hesitate to explore the vast ocean of knowledge on the internet. Search for tutorials, guides, and code snippets related to your project.
YouTube: Visual learners can turn to YouTube for video tutorials that walk you through the entire development process.
Forums: Platforms like Reddit and Stack Overflow are invaluable for addressing specific problems or questions you encounter during your project.
It's important to use these resources judiciously, depending on the difficulty and significance of the topic you're learning and how it applies to your project. Each resource has its own strengths, and combining them wisely can optimize your learning process. For example, for any project you could use ChatGPT to build an outline and structure to follow and use that as your starting point. In this way, it is not necessary to have extensive knowledge on topics that the project may depend on, as you can learn on the go by QA sequences with ChatGPT coupled with use of the mentioned resources through the duration of a project. That being said, ChatGPT though useful, tends to hallucinate under different circumstances and is a good of example of why no single resource should be used in isolation especially AI chatbots!
3. Practice Makes Perfect
As you progress through multiple projects, you'll find that practice makes perfect. Beyond just acquiring knowledge, you'll become proficient at debugging. In many ways, this practical experience in debugging is even more crucial than theoretical knowledge, especially when considering the abundance of resources mentioned above.
Constantly learning new skills is a hallmark of a developer's life, and as technology stacks evolve, debugging remains a fundamental skill. By integrating good coding practices and workflows into your projects, you'll refine your debugging skills, making you a more competent coder.
In the next section, we'll explore how your journey evolves from this foundation of building and learning to advancing your skills and creating a strong portfolio.
Learning - The Power of Continuous Building
Building is not merely a means to an end, it's the heart of learning and skill development in the world of coding. As a developer, the process of continuously building projects is where the magic happens.
1. Scaling Up: The Journey of Continuous Learning
The transition from small to large projects is not a distant goal, it's a series of steps in your ongoing learning process. With each project, you're not just accumulating code; you're growing your skills, expanding your horizons, and gradually acquiring the expertise required to tackle substantial, complex endeavors.
Imagine the path where you seamlessly build and maintain applications using the MERN stack or any tech stack of your choice. This isn't an "eventually" moment, it's an evolving journey where you learn by doing, one project at a time. The essence of continuous building is that you never stop learning.
2. Portfolio Building: The Witness to Your Journey
Your portfolio isn't a static document but a living testament to your continuous learning. With each project you complete, your portfolio becomes more dynamic and diverse. It tells a story of how you've applied your knowledge in real-world scenarios, marking your progress.
It's not just a showcase of what you've learned; it's a reflection of how you've grown as a developer. Your portfolio becomes your silent advocate, speaking volumes about your skills even before you utter a word. It's your evolving CV, a testament to the journey of continuous building and learning.
In the next section, we'll explore various avenues through which you can leverage your expertise and evolving portfolio to monetize your skills in the tech industry.
Monetizing - Leveraging Your Skills
With a solid foundation cemented through continuous building and portfolio growth, you're now equipped to explore the ways in which you can leverage your expertise and evolving portfolio to monetize your skills in the tech industry. This section provides insight into paths and opportunities for developers, all of which link back to the importance of your portfolio and .
1. Freelancing: Unlocking Your Portfolio's Potential
Freelancing offers a dynamic way to monetize your skills. Two distinct approaches await you on this journey:
- Approach 1: "Small Tasks, Many Clients"
In this approach, your portfolio becomes your secret weapon to build trust and attract clients. You can take on a multitude of smaller freelance projects, using your knowledge and experience to swiftly deliver results. This is a straightforward way to start your freelancing career and maintain it. Your portfolio, enriched by continuous building, will often contain template code that enables you to complete freelance work efficiently. While competition can be high, with the power of your portfolio, you can capture a significant share of the market, leading to earnings that range from moderate to substantial.
- Approach 2: "Big Projects, Few Clients"
This approach represents a more complex but potentially more rewarding path. By taking on large projects, you can secure longer contractual agreements, translating into substantial, steady and secure income over an extended period. Surprisingly, this approach involves less hassle and presents a more relaxed experience, assuming your skills and portfolio meet the requirements of the client's task. Freelance jobs with this approach are often B2B solutions. Competition here is generally moderate, but it can be substantial in an expansive industry or popular niche. The earnings tend to be in the medium to large range, often skewed towards the larger end.
The portfolio you've cultivated through continuous building serves as the bedrock of your freelancing journey, instilling trust and showcasing your capabilities. A combination of both approaches could be used to deal with edge cases.
2. Traditional Employment: Your Portfolio's Silent Advocate
Traditional employment becomes more accessible with a well-structured portfolio. Employers are seeking developers who can deliver real-world results, and your portfolio proves your mettle. It enhances your candidacy, streamlining the job application process and opening doors to exciting opportunities. In this path, your portfolio is your silent advocate, speaking for your skills even before you utter a word.
3. Unleashing Your Potential: Building Your Own App - The Portfolio of Innovation
If you've ever harboured the dream of creating your own app, now might be the perfect moment to transform that dream into reality. Building your app is a path that might be challenging, but it carries the potential for substantial rewards. Your skills, honed through continuous learning and reflected in your portfolio, will be the foundation upon which you construct your own digital masterpiece.
4. Sharing Knowledge and Products: Content Creation and Sales - Portfolio as Your Creative Arsenal
Your portfolio isn't just a testament to your learning journey; it's also a wellspring of opportunity. Leverage your portfolio to create content and products. For instance, you can begin a YouTube channel to share tutorials, insights, and your coding adventure. Alternatively, you can monetize your projects by selling them on third-party marketplaces or creating digital products like plugins, templates, or themes. Your portfolio serves as your creative arsenal, providing the assets you need to fuel your content creation and sales ventures.
In conclusion, the 'BLM - Build Learn Monetize' strategy is more than a linear path, it's a dynamic and evolving journey. It empowers developers to grow, learn, and turn their skills into opportunities for financial gain. Your continuous building and learning, reflected in your portfolio, are at the core of this strategy, fueling your career in the ever-evolving world of technology. It's important to remember that the BLM strategy is not a one-size-fits-all approach. It's a flexible framework that can be tailored to your unique journey, allowing you to adapt and progress at your own pace.
Top comments (9)
Hello! Welcome to the DEV community.
Very interesting content! So far, which of the monetize methods you tried and which has brought greater results to you?
At the start I tried small task many clients, which wasn't bad but it just didn't fit my character and tolerance levels. So as of now I'm more so focused on "big tasks few clients", making content and Pershing ventures with my own apps. I'm still finding which works best for me.
Haha, I get you, recently I had been doing that. Doing small projects for clients but is just not working that much honestly. I have plans to create more content very soon, just today I started an Obsidian vault to keep a knowledge base of the content I would like to write or videos I would like to produce.
What about you? Starting a YouTube channel any time soon? If so, send me a link! I could watch some of your content and maybe leave a comment.
I keep a knowledge base too. It can definitely be a valuable asset. Ive definitely considered making a YouTube channel but Its not a priority. Primarily going to focus on article writing for now and providing useful vs code extensions and template code.
Ooooh great, I hope you can make it bro. I have over a year here in DEV, if I can give you an advice here, is, be nice to everyone, keep writing, make some good contacts, and when you have a few badges, apply to be a Trusted Member here in the DEV community, hope this helps you. Hopefully we'll keep in touch!
Funny acronym, my guy! Hahaha! But I'm here for it. I'm still on the first chapter of your idealism. I think though, that build should be switched with learn. Although the two sort of go hand in hand. I just mean, first you must acquire the knowledge in order to successfully create anything. Although I think that might be what it all funnels down to?
Either way, there's clearly some reflection built into the learning aspect. As one has to reflect upon what they've built long run otherwise they'll never improve. While still going through the motions of the first part, it was nice to read up on the last part. Especially where you comment about the freelance work. As I had never thought of creating sort of...a micro-service to be used by many versus something macro.
Good food for thought all together!
Loool i knew someone was going to mention the name. The reason why build comes first is because you learn as you build, which is the backbone of the concept of BLM. Reads coding books and doimg courses are helpful to degree but building gets straight to the point and allows for in-dept active learning.
Nice content
Much appreciated