<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Coder Legion - Recent posts tagged discussion</title>
<link>https://coderlegion.com/tag/discussion</link>
<description>Powered by Question2Answer</description>
<item>
<title>Introducing The Startup Café: A Community for People Building Startups ☕</title>
<link>https://coderlegion.com/31883/introducing-the-startup-cafe-a-community-for-people-building-startups</link>
<description>&lt;p&gt;&lt;strong&gt;I Started The Startup Café on DEV. Here's the Idea Behind It.&lt;/strong&gt;&lt;br&gt;
I've just started a new organization on DEV called &lt;strong&gt;The Startup Café&lt;/strong&gt;, and I wanted to share it here while it's still at the very beginning.&lt;/p&gt;
&lt;p&gt;Here's the organization: &lt;a rel=&quot;nofollow&quot; href=&quot;https://dev.to/startupcafe&quot;&gt;https://dev.to/startupcafe&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The idea came from something pretty simple: there's a lot to learn from people who are building things, even when they're working on completely different projects.&lt;/p&gt;
&lt;p&gt;Some developers build things for clients. Some work on side projects after their day job. Some are trying to launch a SaaS, while others are still figuring out which idea is worth pursuing.&lt;/p&gt;
&lt;p&gt;I've always found that side of building interesting. Not just seeing what someone has launched, but understanding why they started, what they're figuring out, and what they've learned along the way.&lt;/p&gt;
&lt;p&gt;I'd like The Startup Café to be a place for those conversations.&lt;/p&gt;
&lt;h3 id=&quot;what-do-i-have-in-mind-&quot;&gt;What do I have in mind?&lt;/h3&gt;
&lt;p&gt;I don't want this to be just another place to drop a project link and move on.&lt;/p&gt;
&lt;p&gt;I'd like people to share what they're working on, ask for feedback when they're stuck, write about things they've learned, and discover projects they might not have found otherwise.&lt;/p&gt;
&lt;p&gt;Maybe you're building your first website. Maybe you're working on a SaaS and trying to find your first users. Maybe you've got an open-source project, or an idea you keep coming back to but haven't started yet.&lt;/p&gt;
&lt;p&gt;All of those are worth talking about.&lt;/p&gt;
&lt;p&gt;You don't need to have a successful startup or years of experience to take part. Sometimes the most interesting discussions come from people who are still working things out.&lt;/p&gt;
&lt;p&gt;I'd also love to see people connect through the organization. You might find someone dealing with the same problem, discover a project you want to contribute to, or meet a developer who's interested in building something similar.&lt;/p&gt;
&lt;p&gt;There's no guarantee of where those conversations will lead, but that's part of what makes a community interesting.&lt;/p&gt;
&lt;h3 id=&quot;it-s-just-getting-started&quot;&gt;It's just getting started&lt;/h3&gt;
&lt;p&gt;I want to be clear that The Startup Café is brand new. I'm not introducing an established community with a big audience or claiming we've already built something huge.&lt;/p&gt;
&lt;p&gt;I'm starting small, and I'd like the people who join to have a say in what this becomes.&lt;/p&gt;
&lt;p&gt;What would make it useful? What kinds of posts would you like to see? Would you be interested in sharing your progress, getting feedback, finding collaborators, or learning from other people's experiences?&lt;/p&gt;
&lt;p&gt;Those are the kinds of questions I'd like us to figure out together.&lt;/p&gt;
&lt;h3 id=&quot;interested-in-joining-&quot;&gt;Interested in joining?&lt;/h3&gt;
&lt;p&gt;The Startup Café is a &lt;strong&gt;DEV.to organization&lt;/strong&gt;, and that's where the community will come together.&lt;/p&gt;
&lt;p&gt;You can visit the organization here:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://dev.to/startupcafe&quot;&gt;https://dev.to/startupcafe&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I've also built a small website for it. If you'd like to join, you can visit the website to learn more and submit an application:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://thestartupcafe.vercel.app&quot;&gt;https://thestartupcafe.vercel.app&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If this sounds like something you'd enjoy being part of, I'd be glad to have you check it out.&lt;/p&gt;
&lt;p&gt;And even if you're not ready to join, I'd still appreciate hearing your thoughts.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;So, what are you building these days?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It can be a startup, a side project, an open-source contribution, or just an idea you're considering. I'd love to hear what you're working on and where you are with it.&lt;/p&gt;
&lt;p&gt;Let's start there.&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/31883/introducing-the-startup-cafe-a-community-for-people-building-startups</guid>
<pubDate>Tue, 20 Oct 2026 19:15:24 +0000</pubDate>
</item>
<item>
<title>Would you use free assets in your games?</title>
<link>https://coderlegion.com/30611/would-you-use-free-assets-in-your-games</link>
<description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;I would, and I don’t think there’s any shame in it.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I’ve never really understood the stigma around using free assets in game development. Sometimes, people talk about them as if downloading a free model or sound somehow makes the rest of your work less valuable.&lt;/p&gt;
&lt;p&gt;But why?&lt;/p&gt;
&lt;p&gt;For anyone unfamiliar with the term, assets are the individual things that go into a game: trees, buildings, characters, sounds, animations, textures, and so on. Making all of those takes time, and creating a game involves much more than making its individual parts.&lt;/p&gt;
&lt;p&gt;If someone offers a useful asset for free and allows others to use it, I see that as an opportunity.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Free doesn’t mean bad.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The price of an asset doesn’t tell you whether it looks good, works properly, or fits your game. A paid model can be unsuitable for your project, while a free one can be exactly what you need.&lt;/p&gt;
&lt;p&gt;Some creators choose to share their work because they want to help other developers. Kenney, for example, makes its game assets available under CC0, allowing people to use them without requiring credit. These resources are offered for a reason: so people can build with them.&lt;/p&gt;
&lt;p&gt;There’s nothing embarrassing about accepting that help.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Your time matters, too.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Imagine you need a simple chair for a room in your game. You could spend days learning how to model it, give it the right surface details, and get it working in the engine. Or you could find a suitable free chair and spend that time improving something the player will actually do.&lt;/p&gt;
&lt;p&gt;Neither choice is automatically wrong. If you want to learn how to make furniture, creating the chair yourself makes sense. If your goal is to finish a playable game, using an existing one might make more sense.&lt;/p&gt;
&lt;p&gt;Personally, I don’t think developers should feel pressured to spend days proving they can make an ordinary chair when their game needs attention elsewhere.&lt;/p&gt;
&lt;p&gt;That time could go towards a better mission, smoother movement, clearer menus, or fixing an annoying bug.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;A downloaded asset doesn’t build the game for you.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is probably the part that gets overlooked most often.&lt;/p&gt;
&lt;p&gt;Downloading a door doesn’t make it open. You still need to decide how the player interacts with it, whether it needs a key, what happens when it’s locked, and how it connects to the rest of the game.&lt;/p&gt;
&lt;p&gt;Downloading trees doesn’t create an interesting forest. You still have to build the space, create paths, place things thoughtfully, adjust the lighting, and make sure the game runs well.&lt;/p&gt;
&lt;p&gt;The person who made the asset did valuable work. The person who turns it into part of a playable experience also does valuable work.&lt;/p&gt;
&lt;p&gt;Using someone else’s model doesn’t erase everything you built around it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;You can use the same pieces and create something different.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Two people can cook with the same ingredients and make very different meals. I think game assets work in a similar way.&lt;/p&gt;
&lt;p&gt;The same house model could become a peaceful home in one game and an abandoned building in another. Different lighting, sounds, surroundings, and events can completely change how that place feels.&lt;/p&gt;
&lt;p&gt;Custom artwork can certainly help a game stand out. But a game’s identity also comes from its ideas, its atmosphere, its story, and the way it plays.&lt;/p&gt;
&lt;p&gt;Every rock and table doesn’t need to be exclusive for the overall experience to feel personal.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Free assets help you find out whether an idea actually works.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;An idea can sound amazing when you write it down and feel completely different once you try to play it.&lt;/p&gt;
&lt;p&gt;Having models, sounds, and animations available lets you reach that playable stage sooner. You can test a mechanic, try a different layout, or discover that something needs changing before spending months making everything yourself.&lt;/p&gt;
&lt;p&gt;And if a free asset still works well in the finished game, why replace it purely because it was free?&lt;/p&gt;
&lt;p&gt;I’d rather replace something because it doesn’t fit or causes problems, not because I feel guilty about how much it cost.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Not everyone has a studio’s budget.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A solo developer might be handling the gameplay, environments, menus, sound, testing, and writing. That’s already a lot for one person.&lt;/p&gt;
&lt;p&gt;They may not have the money to hire people for every task, or the years needed to become good at every part of development.&lt;/p&gt;
&lt;p&gt;Free assets make it easier for people to learn and give their ideas a real chance. They can also leave room in the budget for things that need special attention: perhaps an original main character, music, or an important location.&lt;/p&gt;
&lt;p&gt;Using free resources where they fit can help you afford custom work where it matters most.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Of course, you still need to choose carefully.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I’m not saying every free asset belongs in every game.&lt;/p&gt;
&lt;p&gt;Some won’t match the look you’re going for. Some might slow the game down or take too much effort to adjust. You also need to check what the creator allows you to do with them and give credit when required.&lt;/p&gt;
&lt;p&gt;And you should be honest about your contribution. Using someone’s model is fine when you have permission. Claiming you made that model yourself is a different issue.&lt;/p&gt;
&lt;p&gt;Those are fair things to discuss. But none of them makes using free assets shameful.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Judge the result.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If a game looks messy, runs badly, or isn’t enjoyable, those are fair criticisms. Explain what isn’t working.&lt;/p&gt;
&lt;p&gt;Simply saying “that’s a free asset” doesn’t tell me what’s wrong with the game. Paying for the same object wouldn’t suddenly make the gameplay better.&lt;/p&gt;
&lt;p&gt;For me, the question is simple: does this asset fit what I’m making, and does using it help me move the project forward?&lt;/p&gt;
&lt;p&gt;If the answer is yes, I’m happy to use it.&lt;/p&gt;
&lt;p&gt;I respect people who create everything themselves. I also respect people who know where to spend their time and use the resources available to them.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;So yes, I would use free assets in my game. Why should a useful resource become something to be ashamed of just because it didn’t cost money?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/30611/would-you-use-free-assets-in-your-games</guid>
<pubDate>Sat, 10 Oct 2026 14:55:56 +0000</pubDate>
</item>
<item>
<title>the evolution of software development since the emergence of AI</title>
<link>https://coderlegion.com/30424/the-evolution-of-software-development-since-the-emergence-of-ai</link>
<description>&lt;p&gt;It would be interesting to promote discussions on the evolution of software development since the emergence of AI, and how it has been transforming the sector and the jobs of many developers.   In my experience, it's not advisable to swim against the current, so it would also be valuable to create a dedicated section to discuss and build technical AI applications that can boost our productivity and allow us to create more complex, useful developments that non-technical users cannot achieve.&lt;/p&gt;
&lt;p&gt;Do you think the emergence of AI is a positive or negative event for software developers?&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/30424/the-evolution-of-software-development-since-the-emergence-of-ai</guid>
<pubDate>Fri, 09 Oct 2026 09:51:04 +0000</pubDate>
</item>
<item>
<title>Hacktoberfest Stopped Counting PRs. So What Counts as a Contribution Now?</title>
<link>https://coderlegion.com/29617/hacktoberfest-stopped-counting-prs-so-what-counts-as-a-contribution-now</link>
<description>&lt;p&gt;Hacktoberfest 2026 no longer rewards pull requests, and I think the change forces a useful question on all of us: if a contribution is not a merged diff, what is it?&lt;/p&gt;
&lt;p&gt;The organisers' reason is short. Their FAQ says it is &quot;easier than ever to submit low-effort spam PRs to projects,&quot; so they listened to maintainers and stopped incentivising them. This year MLH and DEV run the month with DigitalOcean presenting, under the theme &quot;AI Belongs to Everyone.&quot; You earn stickers by attending local Fests, joining Global Hack Week (October 9 to 15), entering DEV challenges and similar activities.&lt;/p&gt;
&lt;p&gt;The history makes the decision easy to understand. The first Hacktoberfest in 2014 had 676 participants and a simple rule: four pull requests, one t-shirt. By 2020 there were nearly 170,000 sign-ups and more than 621,000 pull requests, enough README spam that maintainers compared it to a denial-of-service attack. The rules tightened to opt-in repositories and maintainer acceptance. Last year the bar went from four accepted PRs to six. Then AI tools made a plausible patch cost seconds to produce, while reviewing one costs what it always did. Counting stopped meaning anything.&lt;/p&gt;
&lt;p&gt;I have been involved in open source since 1999, much of it teaching people to use Linux and Git and running infrastructure on them. Very little of the work that keeps a project healthy would ever show up in a PR count: reproducing a bug on a different machine, answering the same question for the fifth time, writing down how something behaved so the next person does not have to find out the hard way, or teaching someone to use the tools in the first place.&lt;/p&gt;
&lt;p&gt;A 2024 Harvard Business School study estimated that 96 percent of open source's demand-side value comes from 5 percent of developers. That small group's scarce resource is attention. The most useful contributions spend less of it, or add to it.&lt;/p&gt;
&lt;p&gt;So here is my working list of what counts this October, offered as a starting point rather than a rule:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;reproducing a reported bug on the current release, and saying so on the issue&lt;/li&gt;
&lt;li&gt;reducing a failing test to its smallest case&lt;/li&gt;
&lt;li&gt;fixing documentation that misled you, while you still remember how&lt;/li&gt;
&lt;li&gt;reviewing someone else's pull request carefully and leaving specific questions&lt;/li&gt;
&lt;li&gt;disclosing the AI tools you used and which parts of a change they touched, in the spirit of the Linux kernel's rule: &quot;You are expected to understand and to be able to defend everything you submit&quot;&lt;/li&gt;
&lt;li&gt;building something with an open-weight model and writing down the exact model, digest and licence, plus what the release did not tell you&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That last one connects to this year's theme. Open weights let you run, test and fine-tune a model on your own hardware. Most releases do not publish training data or full training code, so you cannot reproduce or audit how the model was made. The OSI's Open Source AI Definition asks for both. Knowing where a model's openness ends is part of using it responsibly.&lt;/p&gt;
&lt;p&gt;I would like to hear from people here, especially anyone who maintains a project. What kind of contribution helps you most, and what would you want a Hacktoberfest participant to do this month that no counter would ever see?&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Sources: &lt;a rel=&quot;nofollow&quot; href=&quot;https://blog.mlh.com/everything-you-need-to-know-about-hacktoberfest-2026-ai-belongs-to-everyone-mdk&quot;&gt;Hacktoberfest 2026 (MLH)&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://hacktoberfest.com/questions/&quot;&gt;Hacktoberfest FAQ&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.digitalocean.com/blog/hacktoberfest-recap2020&quot;&gt;DigitalOcean 2020 recap&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.digitalocean.com/blog/hacktoberfest-2025-wrapup&quot;&gt;DigitalOcean 2025 wrap-up&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.hbs.edu/faculty/Pages/item.aspx?num=65230&quot;&gt;HBS: The Value of Open Source Software&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.kernel.org/process/generated-content.html&quot;&gt;Linux kernel guidelines for tool-generated content&lt;/a&gt; · &lt;a rel=&quot;nofollow&quot; href=&quot;https://opensource.org/ai/open-source-ai-definition&quot;&gt;OSI Open Source AI Definition 1.0&lt;/a&gt;&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/29617/hacktoberfest-stopped-counting-prs-so-what-counts-as-a-contribution-now</guid>
<pubDate>Sat, 03 Oct 2026 12:42:47 +0000</pubDate>
</item>
<item>
<title>Where Should Developers Write? A Practical Comparison of LinkedIn, Medium, Dev.to, and CoderLegion</title>
<link>https://coderlegion.com/28823/where-should-developers-write-practical-comparison-linkedin-medium-dev-and-coderlegion</link>
<description>&lt;blockquote&gt;&lt;p&gt;I've published on all four platforms and get asked which one to use. The honest answer: it depends on what you're trying to accomplish. Here's how I think about each one.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;linkedin---entry-point-not-destination&quot;&gt;LinkedIn - Entry Point, Not Destination&lt;/h3&gt;
&lt;p&gt;LinkedIn is best used as a conversation starter. Put a provocative question, a key takeaway, or a short observation in the post, then include the link to the full article on Dev.to, CoderLegion, or Medium in the first comment. This utilizes LinkedIn's strengths (professional reach, cross-border visibility) without asking it to do what it's bad at: hosting deep technical content. Think of it as the top of a funnel, not where the real discussion takes place.&lt;/p&gt;
&lt;h3 id=&quot;medium---for-storytelling-and-long-form-thought-leadership&quot;&gt;Medium - for Storytelling and Long-Form Thought Leadership&lt;/h3&gt;
&lt;p&gt;Medium is ideal for writing enduring works such as career reflections, architectural post-mortems, and in-depth essays. The Partner Program adds a monetisation path. The main downside is discoverability: &lt;strong&gt;new&lt;/strong&gt; posts get buried quickly and are difficult to find unless you are already in a publication or have an existing audience driving traffic there. Medium rewards writers who bring in their own readers, but it does &lt;strong&gt;little&lt;/strong&gt; to surface new voices on its own.&lt;/p&gt;
&lt;h3 id=&quot;dev-to---for-tutorials-and-the-learning-community&quot;&gt;Dev.to - for Tutorials and the Learning Community&lt;/h3&gt;
&lt;p&gt;Dev.to is the most beginner-friendly of the four. It's open, free, and the tag system makes technical tutorials easy to find. It's a good home for &quot;how I built X&quot; posts, quick tips, and beginner content. The weakness is that high posting volume makes it easy for solid posts to get buried quickly, and platform support can be slow.  A post indexing issue I reported took over a month to be addressed. The community is welcoming but responses can be sparse unless your post gets picked up early.&lt;/p&gt;
&lt;h3 id=&quot;coderlegion---for-community-feedback-and-visibility-without-an-existing-audience&quot;&gt;CoderLegion - for Community Feedback and Visibility Without an Existing Audience&lt;/h3&gt;
&lt;p&gt;What I appreciate most about CoderLegion is the community responsiveness, people actually read and comment, rather than just scroll. The Trending and Promotion tags give newer posts and newer members a real shot at visibility from the home page, which the other platforms largely don't offer.&lt;/p&gt;
&lt;p&gt;One feature worth highlighting is the &lt;strong&gt;Developer's Journey&lt;/strong&gt; sharing group, which is designed specifically for developers (both senior and junior) to share their progress and learn from each other's experiences. It creates a supportive space where growth is visible and celebrated, and it gives newer members additional exposure beyond their own posts. In my opinion, this is a significant differentiator if you are early in your career and seeking a community that actively helps you grow and not just consume content.&lt;/p&gt;
&lt;p&gt;If you're just starting out or want genuine peer feedback rather than chasing an algorithm, this is where I'd start. Platform issues I've reported have been addressed far faster than my experience with Medium or Dev.to.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;my-rough-rule-of-thumb&quot;&gt;My Rough Rule of Thumb&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Role                                               &lt;/th&gt;&lt;th&gt;Platform&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Entry point / professional amplifier               &lt;/td&gt;&lt;td&gt;LinkedIn&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Community discussion + early visibility and growth &lt;/td&gt;&lt;td&gt;CoderLegion&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Technical tutorials, how-tos                       &lt;/td&gt;&lt;td&gt;Dev.to&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Long-form essays, thought leadership               &lt;/td&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Most experienced developers end up cross-posting to two or three. Write once, adapt the framing, post everywhere that fits.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;a-note-on-coderlegion&quot;&gt;A Note on CoderLegion&lt;/h3&gt;
&lt;p&gt;Having the Trending/Promotion visibility model is a real differentiator for newer voices - most platforms bury new posts the moment something more popular is posted. Community and team responsiveness is something worth mentioning out loud: it indicates that the platform is still in a phase where the people building it care about individual members.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;discussion&quot;&gt;Discussion&lt;/h3&gt;
&lt;p&gt;How would you leverage different platforms to accelerate the development of your projects?&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/28823/where-should-developers-write-practical-comparison-linkedin-medium-dev-and-coderlegion</guid>
<pubDate>Sun, 27 Sep 2026 17:55:21 +0000</pubDate>
</item>
<item>
<title>The &quot;Vibe Coder&quot; Reality Check: Validation, Timelines, and Handling Failure</title>
<link>https://coderlegion.com/28487/the-vibe-coder-reality-check-validation-timelines-and-handling-failure</link>
<description>&lt;p&gt;Hey everyone,&lt;/p&gt;
&lt;p&gt;I wanted to open up a candid discussion about a reality many self-taught or non-traditional developers face: &quot;vibe coding.&quot; We’ve all seen the trend—using AI to spin up code quickly based on a prompt or a &quot;vibe&quot; without necessarily having a formal computer science degree or deep, rigorous training in that specific stack.&lt;/p&gt;
&lt;p&gt;If you identify as a vibe coder, or if you are working without a formal engineering background, I’d love to get your insights on a few specific challenges:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How do you actually validate the code?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;When you don't have years of formal training in software architecture, how do you ensure the code the AI spits out is safe, efficient, and actually doing what it's supposed to do? What is your personal validation process? Do you rely on manual clicking, writing automated tests with the AI, or just pushing to production and waiting for bug reports?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How long does validation take you?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&quot;Vibe coding&quot; feels incredibly fast at first because the initial code generation takes seconds. However, if you are learning on the fly, how long does the verification and debugging phase actually take you? Does the time spent fixing edge cases wipe out the speed gained from using AI in the first place?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;What do you do when everything completely fails?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;We all hit that wall where the AI gets stuck in an hallucination loop, the code is a tangled mess of spaghetti, and nothing works. When a feature completely fails and you don't have the deep foundational training to debug it from scratch, what is your next step? Do you scrap the project, seek mentorship, or start a completely new prompt thread?&lt;/p&gt;
&lt;p&gt;Let's talk about the real metrics, the struggles, and the best practices for validating AI-generated code when you're figuring it out as you go.&lt;/p&gt;
&lt;p&gt;Drop your experiences below!&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br&gt;
Momenul Ahmad&lt;br&gt;
Vibe Coder &amp;amp; Tech Explorer&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/28487/the-vibe-coder-reality-check-validation-timelines-and-handling-failure</guid>
<pubDate>Thu, 24 Sep 2026 13:38:36 +0000</pubDate>
</item>
<item>
<title>The real AI danger isn't what it says. It's what it does.</title>
<link>https://coderlegion.com/28333/the-real-ai-danger-isnt-what-it-says-its-what-it-does</link>
<description>&lt;p&gt;&lt;em&gt;Anthropic's September threat report documented AI executing attacks, not just describing them. Here's why that shift, from advising to acting, is the whole game, and the layer we're furthest behind on.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Earlier this month the internet decided AI was going to kill us. A researcher resigned, said the labs are gambling with our lives, said the people building this earnestly believe it could end us by the end of the decade. It was everywhere. If you were online, you saw it.&lt;br&gt;
I'm not going to argue with the fear. I want to point at the quieter document that came out the same week, because it said something more useful, and more precise.&lt;br&gt;
Anthropic published a threat report. Not a prediction: a record. Actual cases, from the last several months, of their models turning up in real attacks. And the finding underneath all of them wasn't &quot;the AI got too smart.&quot; It was a change in shape. The danger used to be a conversation, someone asks a model something dangerous, it answers or refuses, and the damage is bounded by that one exchange. What the report documents is different: models wired into agent frameworks, &lt;em&gt;executing&lt;/em&gt; the steps of an attack. Not advising on the break-in. Doing it.&lt;br&gt;
Hold onto that distinction, because it's the whole thing.&lt;/p&gt;
&lt;h3 id=&quot;advising-and-acting-are-different-physics&quot;&gt;Advising and acting are different physics&lt;/h3&gt;
&lt;p&gt;An AI that advises and an AI that acts are governed by completely different rules. When a model &lt;em&gt;tells&lt;/em&gt; you how to do something, the worst case is bounded by what you then do with the words. When a model &lt;em&gt;does&lt;/em&gt; the thing, reaches out, executes, fans across systems, the worst case is bounded by something else entirely: what it can reach, and whether anything in its path is allowed to say no.&lt;br&gt;
That second bound is the one we're furthest behind on.&lt;/p&gt;
&lt;h3 id=&quot;we-are-not-new-at-this&quot;&gt;We are not new at this&lt;/h3&gt;
&lt;p&gt;Here's the part I keep coming back to. We have spent a very long time building governance around &lt;em&gt;human&lt;/em&gt; action, precisely because action has consequences that advice doesn't. You don't move money without a second signature. You don't ship to production without someone's approval and a record of who pushed the button. Hospitals, banks, power grids, the more an action can hurt, the more machinery we wrap around the &lt;em&gt;moment of acting&lt;/em&gt;: who's allowed, what's forbidden no matter who asks, and an honest record afterward of what actually happened.&lt;br&gt;
AI got the ability to act years before it got any of that. We handed it hands and skipped the part where we teach it the rules we put on our own.&lt;br&gt;
The gap isn't intelligence. It's accountability. An agent can be perfectly capable, perfectly well-meaning, and still take an action a standing rule should have stopped, because there was no standing rule, nowhere to put one, and no record that it happened.&lt;/p&gt;
&lt;h3 id=&quot;three-plain-questions&quot;&gt;Three plain questions&lt;/h3&gt;
&lt;p&gt;So when an agent is about to act on something real, there are three questions, and in a lot of agent setups today the honest answer to all three is no:&lt;br&gt;
Can a rule set in advance stop this action, no matter how the agent was asked? Not &quot;did we prompt it carefully&quot; a hard rule the model cannot talk its way around.&lt;br&gt;
Is the action &lt;em&gt;confirmed&lt;/em&gt;, or just &lt;em&gt;sent&lt;/em&gt;? A command accepted is not a thing done. A lot of real-world failure lives in that gap.&lt;br&gt;
And afterward, is there a record that can't be quietly changed? Not a debug log the author can edit. A record you could show someone.&lt;/p&gt;
&lt;h3 id=&quot;how-i-ve-been-trying-to-answer-them&quot;&gt;How I've been trying to answer them&lt;/h3&gt;
&lt;p&gt;These three questions are the ones I've spent a long time trying to answer in code, in an open protocol called &lt;a rel=&quot;nofollow&quot; href=&quot;https://dosync.dev/&quot;&gt;DoSync&lt;/a&gt;. Not by making the model safer, by putting the governance &lt;em&gt;outside&lt;/em&gt; it, where a bad day can't reach. A standing rule lives in a file the operator controls and the model can't argue past: it's checked before anything fires, not requested in a prompt. A long-running action isn't marked done until the device's own telemetry says it finished, silence never counts as success. And every action is written to a hash chain, each entry carrying the hash of the one before it, so the record can't be quietly rewritten without the break showing.&lt;br&gt;
None of that makes the agent smarter, and that's the point. The intelligence stays in the model; the rules, the confirmation, and the record sit under it, where they hold whether the model is having a good day or not.&lt;/p&gt;
&lt;p&gt;The apocalypse headlines will keep coming, and some of the fear is earned. But the useful work isn't in the headline. It's in the boring layer underneath: the rules, the confirmation, the record. We built all of it for ourselves already, in every domain where a wrong action costs something.&lt;br&gt;
So I'll ask the way I keep asking myself: in your corner, whatever it is, cyber, fintech, robotics, ops, when an agent acts instead of advises, what actually stops it, and how would you know afterward what it did? Or do we let it act first, and write the rules after something goes dark?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/giulianireg-spec/dosync-protocol&quot;&gt;github.com/giulianireg-spec/dosync-protocol&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Web:&lt;/strong&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://dosync.dev/&quot;&gt;https://dosync.dev/&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;License:&lt;/strong&gt; Apache 2.0&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/28333/the-real-ai-danger-isnt-what-it-says-its-what-it-does</guid>
<pubDate>Wed, 23 Sep 2026 11:53:33 +0000</pubDate>
</item>
<item>
<title>The Architecture of Thought: AI, Automation &amp; Abstraction Power</title>
<link>https://coderlegion.com/24577/the-architecture-of-thought-ai-automation-abstraction-power</link>
<description>&lt;p&gt;My initial instinct upon encountering the topic was to ask myself: have I truly considered engineering hallucinations in Large Language Models, or have I only viewed the phenomenon through basic, factual definitions? The dominant narrative across the internet remains completely one-sided, treating hallucination as a simple technical flaw rather than an architectural reality.&lt;/p&gt;
&lt;p&gt;While an LLM's statistical decoding certainly produces unprompted errors at the output level, treating the machine as an independent agent misses the broader architectural point. In truth, artificial intelligence is merely a reflection of the people who built and guided it. We operate on implicit assumptions, and the model manifests those gaps as structural failure. We built the machine, yet we expect perfection—without defining in what aspect, precisely. If computing remains fundamentally &quot;garbage in, garbage out,&quot; then incorrectly programming the order of operations will naturally yield broken results. AI is strictly an assistant designed to execute our thoughts at scale, not to think on our behalf. When you conceive an idea with precision, articulate it clearly, and verify the output, the assistant becomes an extraordinary multiplier. The machine may generate statistical possibilities, but human agency determines what becomes architecture, knowledge, and action.&lt;/p&gt;
&lt;p&gt;This exposes a fascinating paradox: what happens when we ask an AI how to improve itself or eliminate hallucinations? Did a developer program the assistant to output that specific self-referential answer, or is it simply retrieving human discourse on the topic? That alone requires deep reflection. In fact, if you have never won an argument with an AI, then you need to think deeper. When stress-testing these exact concepts across different models—pitting ChatGPT, Claude, and Gemini against one another to critique this essay—the models initially pushed back on my definitions of hallucination and autonomy. But by acting as the system-level steer, evaluating their failure modes, rejecting flawed critiques, and forcing mechanical clarity, the workflow proved its own thesis: AI generates possibilities, but the human retains absolute agency over the system.&lt;/p&gt;
&lt;p&gt;Yet the technology remains profoundly useful. AI represents the logical continuation of the quest for automation that began with the very first line of executable code. From mechanical looms to assembly-line compilers, to voice-to-text, and now to LLMs, every leap in technology has simply yielded faster translators between human thought and physical execution.&lt;/p&gt;
&lt;p&gt;From picking up a pen to write, to striking keys on a keyboard, to speech-to-text transcription, text-to-speech synthesis, and—do I even mention AR (Augmented Reality)?—we move faster now, but speed is not cognition. The bottleneck has never been the machine’s capacity to compute; it has always been the depth, clarity, and rigor of the human mind steering it. Until a human mind can conceive an idea, it is impossible for a machine to create it. True autonomy requires a soul—a non-physical capacity to originate, intend, and perceive—and because we cannot touch or see a soul, we cannot program one into a machine. We didn't build a mind; we built an ultra-fast translator for human intent. As long as the machine remains a computer, it cannot think—not yet (the intelligence is Artificial).&lt;/p&gt;
&lt;p&gt;This mechanical limitation is clearly visible when examining recent empirical experiments on persistent agent memory. In an empirical study detailed in Mikhail's article on &lt;a rel=&quot;nofollow&quot; href=&quot;https://dev.to&quot;&gt;https://dev.to&lt;/a&gt; (@mansio) testing poisoned memory against a 50K LOC codebase, a &quot;lazy&quot; agent that trusted its memory first adopted 100% of injected false facts. Even when memory contradicted reality, the model accepted the false context because there was no independent cognition to challenge it. As the study noted, memory turns an honest unknown state into a structural guess. To fix this, engineers had to build mechanical verification loops—like Verify-On-Read or Merkle-tree state tracking—to force the model back to ground-truth reality. The machine cannot self-correct through &quot;thinking&quot;; it requires an external structural boundary.&lt;/p&gt;
&lt;p&gt;AI is like a massive textbook or dictionary placed in front of a student. If you didn't attend the lecture, you won't even know if the answer is in the book, and even those who attend sometimes lack the ability to find what they need. Yet abstraction remains one of the most powerful engines for thinking. While conventional wisdom cautions that high-level abstraction can overlook concrete details, a free mind, when reasoning carefully, uses it to cut straight to the core mechanics of a system. Knowing nothing is idle, but building conceptual frameworks across domains allows one to see universal patterns that rigid instruction often hides.&lt;/p&gt;
&lt;p&gt;Abstraction in engineering is deeply underrated. Beyond memorized syntax, top-down procedures, or rigid rules that can lock the mind inside a pre-built box, first-principles abstraction builds structural mental models. When you master the underlying shape of a system—its state, flow, and friction—tools and frameworks become interchangeable, regardless of how or where those patterns were learned. As long as high-level abstractions are grounded by real-world validation, an uncluttered, independent mind remains the ultimate tool for system architecture.&lt;/p&gt;
&lt;p&gt;I tested this capability in a surprisingly simple way after reading some thoughtful posts lately that drove me to write this piece: I asked an assistant to draft a post in the voice and tone of one of my community favourites, and the resemblance was remarkable. But what happens when we push the prompt further—asking it to articulate concepts or reply as Albert Einstein would, drawing on history's most famous proponent of thought experiments and first-principles mental models? As I continue learning how to leverage this tool, I see more and more meaningful work being unlocked through it. It makes me wonder about your own workflow: how are you actually using AI in your day-to-day engineering? I'd love to hear your thoughts in the comments, because no knowledge is a waste.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/24577/the-architecture-of-thought-ai-automation-abstraction-power</guid>
<pubDate>Thu, 13 Aug 2026 07:44:00 +0000</pubDate>
</item>
<item>
<title>What's the Future of Coding Practice Platforms in the AI Era?</title>
<link>https://coderlegion.com/22231/whats-the-future-of-coding-practice-platforms-in-the-ai-era</link>
<description>&lt;p&gt;We all seem to agree on one thing: the best way to learn a new language or framework today is to build real projects. Tutorials and exercises only take you so far.&lt;/p&gt;
&lt;p&gt;But that got me thinking about platforms like LeetCode, HackerRank or Exercism, the ones built around coding challenges, algorithms, and exercises.&lt;/p&gt;
&lt;p&gt;In a world where AI can solve most of those challenges in seconds, what's their future?&lt;br&gt;
Are they still relevant as learning tools? Or are they slowly becoming obsolete replaced by project-based learning and AI-assisted exploration?&lt;/p&gt;
&lt;p&gt;I'm also curious about the hiring side: companies have used LeetCode-style interviews for years. Does that change when candidates can just... ask AI?&lt;/p&gt;
&lt;p&gt;A few questions I'd love your take on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Do you still use platforms like LeetCode or Exercism to practice?&lt;/li&gt;
&lt;li&gt;Do you think algorithm challenges are still a valuable way to learn in 2026?&lt;/li&gt;
&lt;li&gt;Should these platforms reinvent themselves and if so, how?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Would love to hear from people who've used these platforms recently, or who hire developers and still rely on this kind of assessment. 👇&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/22231/whats-the-future-of-coding-practice-platforms-in-the-ai-era</guid>
<pubDate>Fri, 10 Jul 2026 16:47:13 +0000</pubDate>
</item>
<item>
<title>Looking for Developer Perspectives on Building Sports &amp; Gaming Apps</title>
<link>https://coderlegion.com/21677/looking-for-developer-perspectives-on-building-sports-gaming-apps</link>
<description>&lt;p&gt;Hi everyone!&lt;/p&gt;
&lt;p&gt;Over the past few months, I've been building Apex F1, a Flutter project focused on Formula 1. If anyone missed it and wants some context, here's the project:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/19183/dev-feedback-apex-f1-full-f1-race-sim-in-flutter-gps-circuits-ai-rivals-multi-season&quot;&gt;https://coderlegion.com/19183/dev-feedback-apex-f1-full-f1-race-sim-in-flutter-gps-circuits-ai-rivals-multi-season&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After this project, I've decided to continue exploring the sports and gaming space. I'm especially interested in sports like Formula 1, tennis, polo, and other niche sports that don't always receive much attention from app developers.&lt;/p&gt;
&lt;p&gt;This isn't a &quot;give me app ideas&quot; post. I'm more interested in having a discussion with fellow developers and hearing your perspective as builders.&lt;/p&gt;
&lt;p&gt;Some questions I'd love to hear your thoughts on:&lt;/p&gt;
&lt;p&gt;If you were building a sports app today, what niche would you choose and why?&lt;br&gt;
Which sports do you think are underserved when it comes to high-quality mobile apps?&lt;br&gt;
What mistakes do you think most sports apps make?&lt;br&gt;
Have you worked with sports APIs or real-time data? Any lessons learned?&lt;br&gt;
Beyond live scores and news, what experiences do you think sports apps should focus on?&lt;br&gt;
Are there any unique ideas you've had but never got around to building?&lt;/p&gt;
&lt;p&gt;I'm mainly looking to brainstorm, exchange ideas, and learn from other developers. And if anyone is interested in collaborating on sports-tech or gaming-related projects, I'd be happy to connect.&lt;/p&gt;
&lt;p&gt;Looking forward to hearing your perspectives! &lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/21677/looking-for-developer-perspectives-on-building-sports-gaming-apps</guid>
<pubDate>Wed, 01 Jul 2026 10:46:36 +0000</pubDate>
</item>
<item>
<title>Is Marketing Becoming the Most Important Skill for Developers?</title>
<link>https://coderlegion.com/21338/is-marketing-becoming-the-most-important-skill-for-developers</link>
<description>&lt;p&gt;Something I've been wondering about lately.&lt;/p&gt;
&lt;p&gt;With AI making it easier and easier to build software, we're seeing more apps, tools, and SaaS products launched every single day. And a lot of them are technically solid.&lt;br&gt;
But most of them go unnoticed.&lt;/p&gt;
&lt;p&gt;So I started asking myself: if building is becoming accessible to almost everyone, what actually makes the difference between a product that gets traction and one that doesn't?&lt;br&gt;
Is it still the quality of the code? The features? The design?&lt;br&gt;
Or is it increasingly about how well you can market it, how you tell the story, reach the right audience, and make people choose your product over the others?&lt;/p&gt;
&lt;p&gt;I'm also curious about the developer side of this. Do you think we need to develop marketing and distribution skills alongside our technical ones or is that a different role entirely?&lt;br&gt;
And more broadly in 5 or 10 years, do you think the developers who thrive will be the most technically skilled, or the ones who know how to sell what they build?&lt;/p&gt;
&lt;p&gt;Would love to hear your thoughts especially from anyone who has shipped their own product and had to figure out the marketing side. 👇&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/21338/is-marketing-becoming-the-most-important-skill-for-developers</guid>
<pubDate>Wed, 24 Jun 2026 20:51:03 +0000</pubDate>
</item>
<item>
<title>Unpopular Opinion: If Your Code Needs Comments, You Wrote It Wrong.</title>
<link>https://coderlegion.com/21136/unpopular-opinion-if-your-code-needs-comments-you-wrote-it-wrong</link>
<description>&lt;p&gt;&lt;strong&gt;Senior devs love saying&lt;/strong&gt;: &quot;Good code is self-documenting.&quot;&lt;/p&gt;
&lt;p&gt;My PR with clean, readable code: rejected for lack of comments.&lt;br&gt;
My PR with comments everywhere: &quot;Too many comments, code should speak for itself.&quot;&lt;/p&gt;
&lt;p&gt;Bro, pick a lane. 😭&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;4 Types of Comments&lt;/strong&gt; I Keep Seeing:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Type 1: The Obvious&lt;/strong&gt;&lt;br&gt;
 &lt;code&gt;// Increment counter by 1&lt;/code&gt;&lt;br&gt;
&lt;code&gt;counter++&lt;/code&gt;&lt;br&gt;
Thanks, Captain Clarity. I was lost without you.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Type 2: The Ancient Scroll&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;// TODO: Fix this later - Jan 2019&lt;/code&gt;&lt;br&gt;
Adam from 2019 left the company. So did his TODO.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Type 3: The Confession&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;// Don't ask why this works. I spent 6 hours. Just trust me.&lt;/code&gt;&lt;br&gt;
Honestly? I respect this one.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Type 4: The Liar&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;// Validates user input&lt;/code&gt;&lt;br&gt;
Function literally does 17 things including calling an external API. The comment hasn't been true since 2021.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Here's my spicy take&lt;/strong&gt;: Comments should explain WHY, not WHAT. The WHAT is in the code. The WHY is the business logic, the edge case, the hack you had to ship at 2 AM.&lt;/p&gt;
&lt;p&gt;Change my mind. Or agree with me. Either way, I want to hear YOUR take.&lt;/p&gt;
&lt;p&gt;👇 Drop your thoughts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Are comments a sign of good documentation or bad code? &lt;/li&gt;
&lt;li&gt;What's the worst comment you've ever found in a codebase? &lt;/li&gt;
&lt;li&gt;Do you write comments first, last, or never?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt; &lt;strong&gt;&lt;em&gt;Let the comment wars begin. ⚔️&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/21136/unpopular-opinion-if-your-code-needs-comments-you-wrote-it-wrong</guid>
<pubDate>Mon, 22 Jun 2026 10:09:20 +0000</pubDate>
</item>
<item>
<title>&quot;I'll document it later&quot; - the biggest lie in tech.</title>
<link>https://coderlegion.com/20899/ill-document-it-later-the-biggest-lie-in-tech</link>
<description>&lt;p&gt;&lt;strong&gt;Before writing docs&lt;/strong&gt;: &quot;I'll remember everything. No need to write this down.&quot;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;After writing docs&lt;/strong&gt;: &quot;Why did I name this variable &lt;code&gt;temp&lt;/code&gt;? What does this function even do? Who wrote this?! Oh… it was me.&quot;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Me&lt;/strong&gt;: &quot;I'll document as I go.&quot;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Also Me&lt;/strong&gt;, 6 months later: opens empty README — &quot;Well, this is fine.&quot; 🔥&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Documentation&lt;/strong&gt;: &quot;Just write clear comments.&quot;&lt;br&gt;
My code: &lt;code&gt;// TODO: figure out what this does&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;We're not &lt;strong&gt;developers&lt;/strong&gt; anymore.&lt;br&gt;
We're archaeologists digging through our own past code. 😭&lt;/p&gt;
&lt;p&gt;What's the worst &lt;strong&gt;documentation&lt;/strong&gt; crime you've committed? Drop it below! 👇&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;code&gt;Follow for more dev reality checks!&lt;/code&gt;&lt;/em&gt; &lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/20899/ill-document-it-later-the-biggest-lie-in-tech</guid>
<pubDate>Thu, 18 Jun 2026 09:27:11 +0000</pubDate>
</item>
<item>
<title>The AI Hype vs Reality</title>
<link>https://coderlegion.com/20802/the-ai-hype-vs-reality</link>
<description>&lt;p&gt;Before learning to code: &quot;AI will replace all developers!&quot;&lt;/p&gt;
&lt;p&gt;After learning to code: &quot;AI can't even figure out why my npm install broke for the 47th time.&quot;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI&lt;/strong&gt;: Generates whole apps in seconds&lt;br&gt;
&lt;strong&gt;Also AI&lt;/strong&gt;: Suggests using a deprecated package from 2015&lt;/p&gt;
&lt;p&gt;We're safe, folks. For now. 😂&lt;/p&gt;
&lt;p&gt;What's something AI has completely failed at for you? Drop it below! 👇&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/20802/the-ai-hype-vs-reality</guid>
<pubDate>Wed, 17 Jun 2026 11:46:19 +0000</pubDate>
</item>
<item>
<title>Help me build a map to navigate generative AI</title>
<link>https://coderlegion.com/20642/help-me-build-a-map-to-navigate-generative-ai</link>
<description>&lt;p&gt;Back in April I shared how I'm &lt;a rel=&quot;nofollow&quot; href=&quot;https://stevefenton.co.uk/blog/2026/04/generative-ai-harms/&quot;&gt;grappling with Generative AI&lt;/a&gt;. I wanted to get away from the hate-or-hype cyclone of doom and ask some questions that would be useful to navigating this technology.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;What harms do we see now, or predict in the future, that we could avoid?&lt;/li&gt;
&lt;li&gt;Who is responsible for each of these harms and could they take action now rather than in response to controversy and backlash?&lt;/li&gt;
&lt;li&gt;If there were no harms, what use could we make of this technology and it is fit for such purposes?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I'd love to hear your thoughts on these 3 questions!&lt;/p&gt;
&lt;p&gt;Here's an example answer... I'd love to hear your thoughts.&lt;/p&gt;
&lt;p&gt;The training data includes copyrighted material used without permission (1) and the people selling models should pay to license this data (2).&lt;/p&gt;
&lt;p&gt;I would use AI to help me code, but never to help me write an article.&lt;/p&gt;
</description>
<category>Discussions</category>
<guid isPermaLink="true">https://coderlegion.com/20642/help-me-build-a-map-to-navigate-generative-ai</guid>
<pubDate>Mon, 15 Jun 2026 13:36:07 +0000</pubDate>
</item>
<item>
<title>Effortlessness Is a Myth</title>
<link>https://coderlegion.com/16082/effortlessness-is-a-myth</link>
<description>&lt;p&gt;I was listening to an &lt;a rel=&quot;nofollow&quot; href=&quot;https://open.spotify.com/episode/2ceDrvJJgxf3tN3RO3Aii7&quot;&gt;episode of Founders where they discussed Roger Federer&lt;/a&gt; and one line stayed with me:&lt;/p&gt;
&lt;p&gt;Effortlessness is a myth.&lt;br&gt;
Perfection is a myth.&lt;/p&gt;
&lt;p&gt;That landed hard.&lt;/p&gt;
&lt;p&gt;From the outside, we often look at people at the top of their game and assume things come naturally to them. We see the clean outcome, not the private repetitions behind it.&lt;/p&gt;
&lt;p&gt;I know this because I have lived on both sides of that story.&lt;/p&gt;
&lt;p&gt;People have told me, more times than I can count, that things seem to come easy for me.&lt;/p&gt;
&lt;p&gt;What they do not see is the accumulation.&lt;/p&gt;
&lt;h3 id=&quot;the-performance-of-ease&quot;&gt;The Performance of Ease&lt;/h3&gt;
&lt;p&gt;What looks like ease is usually compression.&lt;/p&gt;
&lt;p&gt;Years of work get compressed into one moment:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a clear decision in a meeting&lt;/li&gt;
&lt;li&gt;a confident architecture call&lt;/li&gt;
&lt;li&gt;a polished delivery&lt;/li&gt;
&lt;li&gt;a calm response under pressure&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The moment looks smooth because the friction happened earlier.&lt;/p&gt;
&lt;p&gt;Most of it happened quietly.&lt;/p&gt;
&lt;p&gt;Late nights learning.&lt;br&gt;
Dead ends.&lt;br&gt;
Repetition.&lt;br&gt;
Starting over.&lt;br&gt;
Doing it again.&lt;/p&gt;
&lt;p&gt;That is not talent theatre.&lt;br&gt;
That is practice.&lt;/p&gt;
&lt;h3 id=&quot;-gifted-still-requires-work&quot;&gt;&quot;Gifted&quot; Still Requires Work&lt;/h3&gt;
&lt;p&gt;I grew up being labelled the &quot;gifted kid.&quot;&lt;/p&gt;
&lt;p&gt;Even then, results did not come from magic. They came from hours of tuition, prep, and repetition. The grades were visible. The routine that produced them was not.&lt;/p&gt;
&lt;p&gt;That pattern followed me into adulthood.&lt;/p&gt;
&lt;p&gt;I now spend a significant amount of time learning and upskilling. Not because it is trendy, but because the world keeps moving and standing still is expensive.&lt;/p&gt;
&lt;p&gt;People often confuse consistency with natural ability.&lt;/p&gt;
&lt;p&gt;It is usually trained behaviour.&lt;/p&gt;
&lt;h3 id=&quot;adaptation-is-not-optional&quot;&gt;Adaptation Is Not Optional&lt;/h3&gt;
&lt;p&gt;Across my career, I have had to relearn how to work multiple times.&lt;/p&gt;
&lt;p&gt;I had to learn blockchain and ride the NFT wave when that became relevant to the market.&lt;br&gt;
I had to learn Docker and Kubernetes during a major company migration when the stakes were real.&lt;br&gt;
Now I am actively learning AI, not as a spectator, but as part of how modern engineering work is done.&lt;/p&gt;
&lt;p&gt;None of those transitions felt effortless in real time.&lt;/p&gt;
&lt;p&gt;Each one came with discomfort:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;context switching&lt;/li&gt;
&lt;li&gt;imposter moments&lt;/li&gt;
&lt;li&gt;retooling mental models&lt;/li&gt;
&lt;li&gt;accepting beginner status again&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But adaptation compounds the same way technical debt does.&lt;br&gt;
Ignore it long enough and you pay with interest.&lt;/p&gt;
&lt;h3 id=&quot;the-magazine-questions-forced-clarity&quot;&gt;The Magazine Questions Forced Clarity&lt;/h3&gt;
&lt;p&gt;I was recently filling out answers for a magazine feature, and the process forced me to reflect on a lot of this.&lt;/p&gt;
&lt;p&gt;When you have to explain your path clearly - how you learned, where you failed, what you had to relearn, what shaped your discipline - you realise how much of growth is invisible from the outside.&lt;/p&gt;
&lt;p&gt;You also realise how much consistency has quietly shaped your identity.&lt;/p&gt;
&lt;p&gt;Not one dramatic moment.&lt;br&gt;
Not one perfect breakthrough.&lt;br&gt;
Just repeated commitments over a long period of time.&lt;/p&gt;
&lt;p&gt;That reflection echoed themes I have written about in &lt;a rel=&quot;nofollow&quot; href=&quot;https://lewiskori.com/blog/execution-is-the-real-differentiator-and-the-multiplier/&quot;&gt;Execution Is the Real Differentiator - and the Multiplier&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://lewiskori.com/blog/building-better-looking-back-on-2025/&quot;&gt;Building Better: Looking Back on 2025&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;effortlessness-is-usually-deferred-effort&quot;&gt;Effortlessness Is Usually Deferred Effort&lt;/h3&gt;
&lt;p&gt;I think this is the part people miss.&lt;/p&gt;
&lt;p&gt;Effortlessness is often just deferred effort that has already been paid.&lt;/p&gt;
&lt;p&gt;When someone makes hard work look natural, what you are usually seeing is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pattern recognition built over the years&lt;/li&gt;
&lt;li&gt;judgment trained through failures&lt;/li&gt;
&lt;li&gt;emotional control built through pressure&lt;/li&gt;
&lt;li&gt;discipline repeated long after motivation faded&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That applies in fitness.&lt;br&gt;
It applies in writing.&lt;br&gt;
It applies in engineering.&lt;br&gt;
It applies in leadership.&lt;/p&gt;
&lt;p&gt;I run, I box, and I train early. The sessions that build you are rarely dramatic. They are repetitive, inconvenient, and sometimes boring. But they stack. Eventually, your baseline changes.&lt;/p&gt;
&lt;p&gt;The same thing happens intellectually.&lt;br&gt;
You do enough hard reps and what used to feel impossible becomes normal.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;in-work-reliability-beats-brilliance&quot;&gt;In Work, Reliability Beats Brilliance&lt;/h3&gt;
&lt;p&gt;If there is one lesson I keep relearning, it is this:&lt;/p&gt;
&lt;p&gt;Execution builds trust faster than ideas.&lt;/p&gt;
&lt;p&gt;Not because ideas do not matter.&lt;br&gt;
They do.&lt;/p&gt;
&lt;p&gt;But in professional life, people remember who follows through.&lt;/p&gt;
&lt;p&gt;Who shows up.&lt;br&gt;
Who communicates early when things go wrong.&lt;br&gt;
Who does not disappear under pressure.&lt;/p&gt;
&lt;p&gt;I have seen this in mentoring, in engineering teams, and in business. Momentum is not built by occasional heroic effort. It is built by repeated follow-through.&lt;/p&gt;
&lt;p&gt;What compounds over time is not intensity.&lt;/p&gt;
&lt;p&gt;It is reliability.&lt;/p&gt;
&lt;h3 id=&quot;why-this-matters-in-the-ai-era&quot;&gt;Why This Matters in the AI Era&lt;/h3&gt;
&lt;p&gt;This conversation is even more important now.&lt;/p&gt;
&lt;p&gt;We are entering a period where visible output can be generated faster than ever. Code, drafts, prototypes, and plans can be produced in minutes.&lt;/p&gt;
&lt;p&gt;That can create a dangerous illusion:&lt;br&gt;
that output quality equals underlying capability.&lt;/p&gt;
&lt;p&gt;It does not.&lt;/p&gt;
&lt;p&gt;The leverage tools are real, but they do not remove the need for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;judgment&lt;/li&gt;
&lt;li&gt;depth&lt;/li&gt;
&lt;li&gt;constraint thinking&lt;/li&gt;
&lt;li&gt;ownership&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If anything, they increase the premium on those qualities.&lt;/p&gt;
&lt;p&gt;I have explored this more deeply in &lt;a rel=&quot;nofollow&quot; href=&quot;https://lewiskori.com/blog/ai-is-not-replacing-you-its-reshaping-how-you-think/&quot;&gt;AI Is Not Replacing You. It's Reshaping How You Think&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://lewiskori.com/blog/ai-is-not-your-intern-and-thats-the-problem/&quot;&gt;AI Is Not Your Intern. And That's the Problem.&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The people who thrive will not be those who look effortlessly productive online.&lt;/p&gt;
&lt;p&gt;They will be those who can sustain disciplined execution over long periods of change.&lt;/p&gt;
&lt;h3 id=&quot;what-i-come-back-to&quot;&gt;What I Come Back To&lt;/h3&gt;
&lt;p&gt;When I reflect on my own path, I do not see effortless progress.&lt;/p&gt;
&lt;p&gt;I see repeated adaptation.&lt;/p&gt;
&lt;p&gt;I see long preparation phases that nobody claps for.&lt;br&gt;
I see seasons of discomfort that later looked like confidence.&lt;br&gt;
I see compounding from showing up, especially when it would have been easier not to.&lt;/p&gt;
&lt;p&gt;So no, effortlessness is not the goal.&lt;/p&gt;
&lt;p&gt;Craft is.&lt;/p&gt;
&lt;p&gt;And craft is built the old way:&lt;br&gt;
one rep at a time, over a long time, with enough humility to keep learning.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/16082/effortlessness-is-a-myth</guid>
<pubDate>Tue, 28 Apr 2026 17:19:21 +0000</pubDate>
</item>
<item>
<title>What brings you by a conference booth?</title>
<link>https://coderlegion.com/14987/what-brings-you-by-a-conference-booth</link>
<description>&lt;p&gt;I'm thinking about in-person events more and more these days, so I'm curious - what brings you by a conference booth? &lt;/p&gt;
&lt;p&gt;What's a good experience or design you've seen? Or when do you avoid a booth (or booths!) entirely?&lt;/p&gt;
&lt;p&gt;LMK &lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/14987/what-brings-you-by-a-conference-booth</guid>
<pubDate>Thu, 16 Apr 2026 14:39:38 +0000</pubDate>
</item>
<item>
<title>Architecture lessons from building software for real business workflows</title>
<link>https://coderlegion.com/14764/architecture-lessons-from-building-software-for-real-business-workflows</link>
<description>&lt;p&gt;One thing that stands out when working on real SaaS and operational products is that software complexity rarely comes from code alone.&lt;/p&gt;
&lt;p&gt;It usually comes from workflows.&lt;/p&gt;
&lt;p&gt;I’ve seen this across hospitality software, mobile-first products, and other business systems where one change can affect multiple roles and modules at the same time.&lt;/p&gt;
&lt;h3 id=&quot;the-problem&quot;&gt;The problem&lt;/h3&gt;
&lt;p&gt;A feature request often sounds simple at first.&lt;/p&gt;
&lt;p&gt;Something like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;add one more status&lt;/li&gt;
&lt;li&gt;show more data on a screen&lt;/li&gt;
&lt;li&gt;allow one more role to access a feature&lt;/li&gt;
&lt;li&gt;sync one more step into mobile&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But once implementation starts, the real impact appears.&lt;/p&gt;
&lt;p&gt;That “small” change can affect:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;permissions&lt;/li&gt;
&lt;li&gt;reporting&lt;/li&gt;
&lt;li&gt;notifications&lt;/li&gt;
&lt;li&gt;data validation&lt;/li&gt;
&lt;li&gt;mobile UX&lt;/li&gt;
&lt;li&gt;admin workflows&lt;/li&gt;
&lt;li&gt;audit trails&lt;/li&gt;
&lt;li&gt;future integrations&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The technical issue is not just how to code it.&lt;/p&gt;
&lt;p&gt;The real issue is whether the system has clear enough boundaries to absorb the change cleanly.&lt;/p&gt;
&lt;h3 id=&quot;what-this-changed-for-me&quot;&gt;What this changed for me&lt;/h3&gt;
&lt;p&gt;Over time, I’ve become more careful about architecture before implementation.&lt;/p&gt;
&lt;p&gt;Not in a heavy, over-designed way.&lt;/p&gt;
&lt;p&gt;Just enough to answer a few questions early:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which module should actually own this logic?&lt;/li&gt;
&lt;li&gt;Is this UI behavior leaking business rules into the frontend?&lt;/li&gt;
&lt;li&gt;Will this affect reporting or permissions later?&lt;/li&gt;
&lt;li&gt;Are we building for the workflow, or just the current screen?&lt;/li&gt;
&lt;li&gt;Is this decision going to make the next 10 changes easier or harder?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Those questions have saved me from a lot of avoidable mess later.&lt;/p&gt;
&lt;h3 id=&quot;patterns-i-ve-noticed&quot;&gt;Patterns I’ve noticed&lt;/h3&gt;
&lt;h4 id=&quot;1-ui-first-thinking-creates-fragile-systems&quot;&gt;1. UI-first thinking creates fragile systems&lt;/h4&gt;
&lt;p&gt;When a product evolves screen by screen, logic often ends up spread across controllers, components, services, and ad hoc conditions.&lt;/p&gt;
&lt;p&gt;It works at first.&lt;/p&gt;
&lt;p&gt;Then every change becomes harder because the business rule no longer has a clear home.&lt;/p&gt;
&lt;h4 id=&quot;2-roles-and-workflows-create-hidden-complexity&quot;&gt;2. Roles and workflows create hidden complexity&lt;/h4&gt;
&lt;p&gt;Business apps are rarely single-user systems.&lt;/p&gt;
&lt;p&gt;The same feature can mean different things for an admin, an operator, a manager, or an end customer.&lt;/p&gt;
&lt;p&gt;That is where many “simple” features stop being simple.&lt;/p&gt;
&lt;h4 id=&quot;3-reporting-is-often-the-silent-architecture-test&quot;&gt;3. Reporting is often the silent architecture test&lt;/h4&gt;
&lt;p&gt;A lot of systems feel fine until reporting requirements arrive.&lt;/p&gt;
&lt;p&gt;That is usually when weak data modeling and unclear boundaries start to hurt.&lt;/p&gt;
&lt;h4 id=&quot;4-mobile-surfaces-architecture-problems-faster&quot;&gt;4. Mobile surfaces architecture problems faster&lt;/h4&gt;
&lt;p&gt;In mobile apps, weak backend structure or unclear workflow design becomes visible quickly.&lt;/p&gt;
&lt;p&gt;Latency, repeated calls, awkward flows, and state issues show up sooner.&lt;/p&gt;
&lt;h3 id=&quot;what-i-try-to-do-now&quot;&gt;What I try to do now&lt;/h3&gt;
&lt;p&gt;My default approach is to think in terms of workflows and system boundaries before implementation.&lt;/p&gt;
&lt;p&gt;Not because architecture diagrams are the goal.&lt;/p&gt;
&lt;p&gt;But because better structure makes iteration easier.&lt;/p&gt;
&lt;p&gt;I try to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;map the workflow before finalizing the shape of the feature&lt;/li&gt;
&lt;li&gt;keep business rules out of presentation layers as much as possible&lt;/li&gt;
&lt;li&gt;think about permissions and reporting earlier&lt;/li&gt;
&lt;li&gt;design for change, not just launch&lt;/li&gt;
&lt;li&gt;avoid shortcuts that make future changes harder&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;final-thought&quot;&gt;Final thought&lt;/h3&gt;
&lt;p&gt;The more “real” the software becomes, the less useful it is to think only in terms of features.&lt;/p&gt;
&lt;p&gt;At some point, you have to think in terms of systems.&lt;/p&gt;
&lt;p&gt;That shift has changed how I approach product engineering, especially in SaaS, hospitality, and operational software.&lt;/p&gt;
&lt;p&gt;What has been the biggest architecture lesson in your own product work?&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/14764/architecture-lessons-from-building-software-for-real-business-workflows</guid>
<pubDate>Tue, 14 Apr 2026 09:45:06 +0000</pubDate>
</item>
<item>
<title>Build a Data Science Query Language in Python using Lark</title>
<link>https://coderlegion.com/13626/build-a-data-science-query-language-in-python-using-lark</link>
<description>&lt;h2 id=&quot;build-a-data-science-query-language-in-python-using-lark&quot;&gt;Build a Data Science Query Language in Python using Lark&lt;/h2&gt;
&lt;p&gt;What if you could write something like this:&lt;/p&gt;
&lt;p&gt;DATA [1, 2, 3, 4, 5]&lt;br&gt;
SUM&lt;br&gt;
MEAN&lt;br&gt;
STD&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
…and have it behave like a mini data science engine?

In this tutorial, we’ll build a **Domain-Specific Language (DSL)** for data analysis using:

- Python   
- Lark (parser library)   
- NumPy   

---

#  What Are We Building?

We are creating a **custom query language** that:

- Accepts a dataset
- Runs statistical commands
- Prints results

---

#  Step 1: Install Dependencies

```bash
pip install lark numpy
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id=&quot;step-2-define-the-grammar&quot;&gt;Step 2: Define the Grammar&lt;/h2&gt;
&lt;p&gt;The grammar defines how our language looks.&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;from lark import Lark, Transformer
import numpy as np

grammar = &quot;&quot;&quot;
start: data command+

data: &quot;DATA&quot; list

command: &quot;SUM&quot; -&amp;gt; sum
       | &quot;MEAN&quot; -&amp;gt; mean
       | &quot;STD&quot; -&amp;gt; std
       | &quot;MAX&quot; -&amp;gt; max
       | &quot;MIN&quot; -&amp;gt; min

list: &quot;[&quot; NUMBER (&quot;,&quot; NUMBER)* &quot;]&quot;

%import common.NUMBER
%import common.WS
%ignore WS
&quot;&quot;&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;explanation&quot;&gt;Explanation&lt;/h3&gt;
&lt;h4 id=&quot;start-data-command-&quot;&gt;&lt;code&gt;start: data command+&lt;/code&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Program must start with &lt;code&gt;DATA&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Followed by &lt;strong&gt;one or more commands&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h4 id=&quot;data-data-list&quot;&gt;&lt;code&gt;data: &quot;DATA&quot; list&lt;/code&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Defines dataset input&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;DATA [1, 2, 3]
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h4 id=&quot;commands&quot;&gt;Commands&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;SUM → sum
MEAN → mean
STD → std
MAX → max
MIN → min
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;These map text → function names&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-&amp;gt; sum&lt;/code&gt; means call &lt;code&gt;sum()&lt;/code&gt; in Transformer&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h4 id=&quot;list-rule&quot;&gt;List Rule&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;list: &quot;[&quot; NUMBER (&quot;,&quot; NUMBER)* &quot;]&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Accepts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;[1]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;[1, 2, 3]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;(, NUMBER)*&lt;/code&gt; means repeat&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h4 id=&quot;ignore-spaces&quot;&gt;Ignore Spaces&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;%ignore WS
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Allows flexible formatting&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;-step-3-build-the-interpreter&quot;&gt;⚙️ Step 3: Build the Interpreter&lt;/h2&gt;
&lt;p&gt;Now we convert parsed text into execution.&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;class DLangInterpreter(Transformer):

    def data(self, items):
        self.data = np.array([float(x) for x in items[0]])
        return self.data
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;explanation-1&quot;&gt;Explanation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;items[0]&lt;/code&gt; → list of numbers&lt;/li&gt;
&lt;li&gt;Convert to NumPy array&lt;/li&gt;
&lt;li&gt;Store in &lt;code&gt;self.data&lt;/code&gt; for reuse&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;step-4-add-operations&quot;&gt;Step 4: Add Operations&lt;/h2&gt;
&lt;h4 id=&quot;sum&quot;&gt;SUM&lt;/h4&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def sum(self, _):
    print(np.sum(self.data))
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;mean&quot;&gt;MEAN&lt;/h4&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def mean(self, _):
    print(np.mean(self.data))
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;std&quot;&gt;STD&lt;/h4&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def std(self, _):
    print(np.std(self.data))
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;max&quot;&gt;MAX&lt;/h4&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def max(self, _):
    print(np.max(self.data))
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 id=&quot;min&quot;&gt;MIN&lt;/h4&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def min(self, _):
    print(np.min(self.data))
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;explanation-2&quot;&gt;Explanation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Each function matches grammar rule&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_&lt;/code&gt; = unused input&lt;/li&gt;
&lt;li&gt;Uses NumPy for computation&lt;/li&gt;
&lt;li&gt;Prints result immediately&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;step-5-parse-list&quot;&gt;Step 5: Parse List&lt;/h2&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;def list(self, items):
    return items
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;explanation-3&quot;&gt;Explanation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Returns list of numbers&lt;/li&gt;
&lt;li&gt;Passed to &lt;code&gt;data()&lt;/code&gt; method&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;step-6-create-the-parser&quot;&gt;Step 6: Create the Parser&lt;/h2&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;parser = Lark(grammar, parser=&quot;lalr&quot;, transformer=DLangInterpreter())
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;explanation-4&quot;&gt;Explanation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;lalr&lt;/code&gt; → fast parsing algorithm&lt;/li&gt;
&lt;li&gt;&lt;code&gt;transformer&lt;/code&gt; → auto-executes logic&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;step-7-read-input-file&quot;&gt;Step 7: Read Input File&lt;/h2&gt;
&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;with open(&quot;example.dl&quot;) as f:
    code = f.read()

parser.parse(code)
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;example-example-dl&quot;&gt;Example &lt;code&gt;example.dl&lt;/code&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;DATA [10, 20, 30, 40]
SUM
MEAN
MAX
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id=&quot;-output&quot;&gt;✅ Output&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;100
25.0
40
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id=&quot;how-it-works-flow-&quot;&gt;How It Works (Flow)&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;Text Input
   ↓
Parser (Lark)
   ↓
Grammar Rules Match
   ↓
Transformer Methods Trigger
   ↓
NumPy Executes
   ↓
Output Printed
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id=&quot;-why-this-is-powerful&quot;&gt;✨ Why This Is Powerful&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;You built a &lt;strong&gt;mini programming language&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clean separation of:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Syntax (grammar)&lt;/li&gt;
&lt;li&gt;Execution (Transformer)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Easily extensible&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&quot;next-features-you-can-add&quot;&gt;Next Features You Can Add&lt;/h2&gt;
&lt;h4 id=&quot;1-filtering&quot;&gt;1. Filtering&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;FILTER &amp;gt; 10
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h4 id=&quot;2-sorting&quot;&gt;2. Sorting&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;SORT ASC
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h4 id=&quot;3-csv-support&quot;&gt;3. CSV Support&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;DATA file.csv
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h4 id=&quot;4-chaining&quot;&gt;4. Chaining&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;DATA [1,2,3,4]
FILTER &amp;gt; 2
MEAN
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id=&quot;final-thought-1&quot;&gt;Final Thought&lt;/h2&gt;
&lt;p&gt;This is how real systems like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SQL&lt;/li&gt;
&lt;li&gt;Pandas query engine&lt;/li&gt;
&lt;li&gt;Spark&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;…start at a basic level.&lt;/p&gt;
&lt;p&gt;You just built the foundation of a &lt;strong&gt;data query engine&lt;/strong&gt; &lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&quot;if-you-liked-this&quot;&gt;If You Liked This&lt;/h2&gt;
&lt;p&gt;Drop a like ❤️&lt;br&gt;
Follow for more AI + Systems content&lt;br&gt;
And try extending this DSL yourself!&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/13626/build-a-data-science-query-language-in-python-using-lark</guid>
<pubDate>Sun, 29 Mar 2026 06:57:34 +0000</pubDate>
</item>
<item>
<title>Chapter 2: The Learner Who Wants to Create</title>
<link>https://coderlegion.com/13499/chapter-2-the-learner-who-wants-to-create</link>
<description>&lt;h2 id=&quot;raw-developer-stories-the-side-nobody-shows&quot;&gt;Raw Developer Stories: The Side Nobody Shows&lt;/h2&gt;
&lt;h3 id=&quot;chapter-2-the-learner-who-wants-to-create&quot;&gt;Chapter 2: The Learner Who Wants to Create&lt;/h3&gt;
&lt;p&gt;I personally started coding because I love creating things. Before I began learning, I was deeply inspired by Tony Stark. He’s a fictional character, of course, but his drive to invent and build something extraordinary sparked my own desire to create. And yes, I was just a kid back then.&lt;/p&gt;
&lt;p&gt;As I explored the world of coding, I wanted to understand the real experiences of other developers—the reality behind their work. I reached out to a few developers, and one in particular stood out for his kindness and impressive mindset. His name is Sypros.&lt;/p&gt;
&lt;p&gt;Sypros told me he started coding for the same reason I did: he loved creating things. He began with VB, C++, and Turbo Pascal. He said the hardest part of coding is often hard to describe. Sometimes he feels like quitting. Sometimes he gets tired of coding and even considers doing something completely different.&lt;/p&gt;
&lt;p&gt;One line that stayed with me was:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;“What usually changes things for me is building something interesting again and reconnecting with the reason I started.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hearing this motivated me deeply.&lt;/p&gt;
&lt;p&gt;He also shared a truth that really resonates: nobody builds everything alone. In the past, we learned from the internet; today, many also rely on AI. Success is visible to everyone, but the failures and struggles behind it remain hidden. I want to shine a light on that reality because it’s just as important as the victories.&lt;/p&gt;
&lt;p&gt;If this resonates with you, leave a like—and stay tuned for Chapter 3, where your stories take center stage.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://coderlegion.com/user/Spyros&quot;&gt;https://coderlegion.com/user/Spyros&lt;/a&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/13499/chapter-2-the-learner-who-wants-to-create</guid>
<pubDate>Thu, 26 Mar 2026 05:00:43 +0000</pubDate>
</item>
<item>
<title>Raw Developer Stories: The Side Nobody Shows</title>
<link>https://coderlegion.com/13315/raw-developer-stories-the-side-nobody-shows</link>
<description>&lt;h2 id=&quot;raw-developer-stories-the-side-nobody-shows-1&quot;&gt;Raw Developer Stories: The Side Nobody Shows&lt;/h2&gt;
&lt;p&gt;I thought learning to code would fix my life.&lt;/p&gt;
&lt;p&gt;Instead, it confused me.&lt;/p&gt;
&lt;p&gt;Hours of tutorials.&lt;br&gt;
Endless scrolling.&lt;br&gt;
Starting things… never finishing them.  &lt;/p&gt;
&lt;p&gt;At some point, I realized —&lt;br&gt;
I wasn’t alone.&lt;/p&gt;
&lt;p&gt;There are thousands of people trying to become developers…&lt;br&gt;
but silently struggling.&lt;/p&gt;
&lt;p&gt;Not posting.&lt;br&gt;
Not sharing.&lt;br&gt;
Just figuring things out alone.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;so-i-decided-to-do-something-&quot;&gt;So I decided to do something.&lt;/h3&gt;
&lt;p&gt;I’m starting a series:&lt;/p&gt;
&lt;h3 id=&quot;raw-developer-stories-the-side-nobody-shows-2&quot;&gt;&lt;strong&gt;Raw Developer Stories: The Side Nobody Shows&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Not success stories.&lt;br&gt;
Not “I learned coding in 30 days.”&lt;/p&gt;
&lt;p&gt;Just real journeys:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;confusion  &lt;/li&gt;
&lt;li&gt;self-doubt  &lt;/li&gt;
&lt;li&gt;failures  &lt;/li&gt;
&lt;li&gt;and the moments that changed everything  &lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&quot;why-this-series-&quot;&gt;Why this series?&lt;/h3&gt;
&lt;p&gt;Because most content shows the highlight reel.&lt;/p&gt;
&lt;p&gt;Very few talk about:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;feeling stuck for months  &lt;/li&gt;
&lt;li&gt;not understanding anything despite trying  &lt;/li&gt;
&lt;li&gt;questioning if you're even meant for this  &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But that’s the real journey.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;i-want-to-hear-your-story&quot;&gt;I want to hear your story&lt;/h3&gt;
&lt;p&gt;If you're a developer (or trying to become one)&lt;br&gt;
and you've ever felt lost—&lt;/p&gt;
&lt;p&gt;I’d love to share your experience.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It can be anonymous  &lt;/li&gt;
&lt;li&gt;No perfect writing needed  &lt;/li&gt;
&lt;li&gt;Just honesty  &lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&quot;how-to-participate&quot;&gt;How to participate&lt;/h3&gt;
&lt;p&gt;Send me a message with:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How you started coding  &lt;/li&gt;
&lt;li&gt;Your hardest phase  &lt;/li&gt;
&lt;li&gt;A moment you almost quit  &lt;/li&gt;
&lt;li&gt;What changed things for you  &lt;/li&gt;
&lt;li&gt;One truth about coding nobody talks about  &lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;Let’s show the side nobody talks about.&lt;/p&gt;
&lt;p&gt;Because someone out there needs to hear it.&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/13315/raw-developer-stories-the-side-nobody-shows</guid>
<pubDate>Sun, 22 Mar 2026 06:19:56 +0000</pubDate>
</item>
<item>
<title>Discussion: Open-source is eating fintech.</title>
<link>https://coderlegion.com/6937/discussion-open-source-is-eating-fintech</link>
<description>&lt;h2 id=&quot;discussion-open-source-is-eating-fintech-which-project-best-embodies-transparency-in-finance-and-why-&quot;&gt;Discussion: Open-source is eating fintech. Which project best embodies &lt;strong&gt;transparency in finance&lt;/strong&gt; — and why?&lt;/h2&gt;
&lt;p&gt;I’m kicking off a thread to collect &lt;em&gt;real&lt;/em&gt; examples where open-source has raised the bar on financial transparency — from data provenance and audit trails to explainable calculations and user-owned exports.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Your turn:&lt;/strong&gt;&lt;br&gt;
Drop a project (or repo) you admire, and tell us &lt;em&gt;exactly&lt;/em&gt; what makes it transparent. Links welcome. A crisp 2–3 bullets per project is perfect.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;what-transparent-means-here-pick-any-&quot;&gt;What “transparent” means here (pick any)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Provenance:&lt;/strong&gt; shows data source(s), freshness/age, fallback path.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Explainability:&lt;/strong&gt; P/L math and fees spelled out with units and timezones.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;User-owned data:&lt;/strong&gt; easy CSV/JSON export; stable schemas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integrity tooling:&lt;/strong&gt; reproducible tests, sample datasets, or validation scripts.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Privacy by default:&lt;/strong&gt; minimal collection, local-first options, clear consent.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;Bonus points for projects that publish &lt;strong&gt;failure modes&lt;/strong&gt; (outages, stale data) instead of hiding them.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h3 id=&quot;example-reply-template&quot;&gt;Example reply template&lt;/h3&gt;
&lt;pre&gt;&lt;code class=&quot;language-markdown&quot;&gt;**Project:** &amp;lt;name + link&amp;gt;
**Why it’s transparent (2–3 bullets):**
- &amp;lt;provenance/age/fallback&amp;gt;
- &amp;lt;explainability or export&amp;gt;
- &amp;lt;privacy or integrity tooling&amp;gt;
**Wish-list:** one small change that would improve trust
&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h3 id=&quot;how-we-map-your-ideas-to-pocket-portfolio-and-ship-them-&quot;&gt;How we map your ideas to Pocket Portfolio (and ship them)&lt;/h3&gt;
&lt;p&gt;We’re building Pocket Portfolio with transparency as a hard requirement. Here’s how the common patterns above translate to features you can try or help us improve:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Provenance &amp;amp; freshness → Price Pipeline Health&lt;/strong&gt;&lt;br&gt;
RAG badges (Fresh / Fallback / Unhealthy) and timestamps for each provider, with a small Edge endpoint that self-probes and never blocks the UI.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Web:&lt;/em&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://www.pocketportfolio.app/landing&quot;&gt;https://www.pocketportfolio.app/landing&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Repo:&lt;/em&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/PocketPortfolio/Financialprofilenetwork&quot;&gt;https://github.com/PocketPortfolio/Financialprofilenetwork&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Explainable P/L → “Explain” drawer&lt;/strong&gt;&lt;br&gt;
Shows basis, fees, fx effects, and realized vs unrealized with formulas, not magic numbers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;User-owned data → OpenBrokerCSV&lt;/strong&gt;&lt;br&gt;
A broker-CSV normalisation spec + import validator so your portfolio isn’t locked to one app.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Integrity tooling → Sample data + smoke tests&lt;/strong&gt;&lt;br&gt;
Seeds for quick repros, plus smoke endpoints (e.g., Yahoo/Stooq reachability) to diagnose region/network quirks.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Privacy by default → local-first stance&lt;/strong&gt;&lt;br&gt;
No client secrets; minimal telemetry; offline-friendly CSV import and read-only views.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you post a project with a great idea, we’ll reply with a concrete mapping (issue link or PR plan) so you can see it land in Pocket Portfolio — or even pair with us to ship it.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;why-this-thread-&quot;&gt;Why this thread?&lt;/h3&gt;
&lt;p&gt;Fintech trust shouldn’t hinge on marketing. It should be &lt;strong&gt;inspectable&lt;/strong&gt; — in code, endpoints, and UI states. Let’s compare notes and make transparency boring and standard.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Your move:&lt;/strong&gt; share 1 project (+ why it’s transparent) and 1 wish-list improvement.&lt;br&gt;
I’ll collect the best ideas and open corresponding issues in the repo so they don’t die in the comments.&lt;/p&gt;
</description>
<category>Building Open Source Projects</category>
<guid isPermaLink="true">https://coderlegion.com/6937/discussion-open-source-is-eating-fintech</guid>
<pubDate>Tue, 28 Oct 2025 12:53:17 +0000</pubDate>
</item>
<item>
<title>A deep dive into compiled vs interpreted languages, their history, spectrum, and why we're all Chads</title>
<link>https://coderlegion.com/5112/deep-dive-into-compiled-interpreted-languages-their-history-spectrum-and-why-were-chads</link>
<description>&lt;h3 id=&quot;our-obsession-with-making-code-understandable-&quot;&gt;Our Obsession With Making Code “Understandable”&lt;/h3&gt;
&lt;p&gt;Humans have always struggled with translation. From carving symbols into clay to inventing alphabets, we’ve needed bridges between ideas and expression. Computers are no different. They only “speak” in binary: 1s and 0s. But since nobody wants to write &lt;code&gt;01101000 01101001&lt;/code&gt; every time they mean &lt;em&gt;“hi”&lt;/em&gt;, we invented programming languages.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/62delk8tlagz89bs857g.gif&quot; alt=&quot;pam translate scene from the office&quot;&gt;&lt;/p&gt;
&lt;p&gt;Compilers and interpreters became the translators, standing between human-friendly languages and machine code. Just like a translator at the UN, they can either prepare a full translated speech in advance (compiled) or whisper line by line into the listener’s ear (interpreted). Both approaches have tradeoffs.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;where-did-this-classification-even-come-from-&quot;&gt;Where Did This Classification Even Come From?&lt;/h3&gt;
&lt;p&gt;The distinction between compiled and interpreted didn’t come out of thin air. In the 1950s, &lt;strong&gt;FORTRAN&lt;/strong&gt; (Formula Translation) popularised the compiled model: code written once, translated into efficient machine instructions, then executed quickly. It was perfect for scientific calculations where speed mattered.&lt;/p&gt;
&lt;p&gt;On the other side, &lt;strong&gt;Lisp&lt;/strong&gt; and other early languages leaned more toward interpretation. They allowed programmers to test code interactively, line by line — a revolutionary idea at the time. Debugging became less of a nightmare because you didn’t need to recompile an entire program to try something new.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jql6b9un3iaei6rfdjjf.gif&quot; alt=&quot;Old Computer with hands typing&quot;&gt;&lt;/p&gt;
&lt;p&gt;Back then, this divide mattered. Hardware was expensive, memory was scarce, and efficiency could make or break a project. Today, though, with more powerful machines and better tooling, the sharpness of this classification has blurred.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;what-we-mean-by-compiled-&quot;&gt;What We Mean by “Compiled”&lt;/h3&gt;
&lt;p&gt;When we call a language “compiled,” we mean that the source code is &lt;strong&gt;fully translated into machine code ahead of time&lt;/strong&gt;. This produces an executable that runs directly on the CPU without needing the original source or an interpreter.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Performance:&lt;/strong&gt; Fast execution, because all translation work is already done.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Error Checking:&lt;/strong&gt; Many bugs surface during compilation.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Portability:&lt;/strong&gt; Limited, since the binary only works on the target system.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Examples: &lt;strong&gt;C, C++, Rust, Go.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;what-we-mean-by-interpreted-&quot;&gt;What We Mean by “Interpreted”&lt;/h3&gt;
&lt;p&gt;An interpreted language, on the other hand, &lt;strong&gt;reads and executes code line by line&lt;/strong&gt; at runtime. The interpreter acts like a middleman every time the program runs.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Performance:&lt;/strong&gt; Slower, because translation happens on the fly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Error Checking:&lt;/strong&gt; Bugs only appear at runtime.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Portability:&lt;/strong&gt; High, since the same source can run anywhere with the right interpreter.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Examples: &lt;strong&gt;Python, JavaScript, Ruby, PHP&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;enter-the-grey-zone&quot;&gt;Enter the Grey Zone&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/80hje5vg9a0u89xe2phe.gif&quot; alt=&quot;Robert downey jr explaining the gray area peter is allowed to operate in&quot;&gt;&lt;/p&gt;
&lt;p&gt;Most modern languages don’t live in either extreme. They combine approaches:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Bytecode + VM:&lt;/strong&gt; Java compiles source into portable bytecode, then executes it with the JVM.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;JIT (Just-in-Time):&lt;/strong&gt; JavaScript engines like V8 start interpreting but compile hot code into machine instructions on the fly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;AOT (Ahead-of-Time):&lt;/strong&gt; Some environments pre-compile bytecode to native binaries for faster startup.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So, when we casually say “Python is interpreted” or “C is compiled,” we’re simplifying a much messier reality.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;introducing-the-chadstrum&quot;&gt;Introducing the Chadstrum&lt;/h3&gt;
&lt;p&gt;To make sense of this, I started thinking of it as a &lt;strong&gt;spectrum&lt;/strong&gt; instead of a binary. I jokingly call it the &lt;strong&gt;Chadstrum&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;On the far &lt;strong&gt;interpreted&lt;/strong&gt; end, you’ve got languages like &lt;strong&gt;Bash&lt;/strong&gt; or early &lt;strong&gt;Perl&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the &lt;strong&gt;middle&lt;/strong&gt;, there’s &lt;strong&gt;Java&lt;/strong&gt;, &lt;strong&gt;C#&lt;/strong&gt;, and &lt;strong&gt;modern JavaScript&lt;/strong&gt;, which use VMs and JIT compilers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the far &lt;strong&gt;compiled&lt;/strong&gt; end, you’ll find &lt;strong&gt;C, C++, Rust&lt;/strong&gt; — where code is turned straight into machine instructions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The point? Whether you’re coding in Bash scripts or writing kernel modules in C, you’re still a Chad. Both ends of the spectrum require skill, and both lead to powerful software.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8h1oucxgmhw7l8s109k8.gif&quot; alt=&quot;We are Chad&quot;&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;why-this-still-matters-today&quot;&gt;Why This Still Matters Today&lt;/h3&gt;
&lt;p&gt;The compiled vs interpreted discussion may seem outdated, but it affects how we build and use software:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Performance:&lt;/strong&gt; High-frequency trading software? Compiled. A quick automation script? Interpreted.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Portability:&lt;/strong&gt; Java’s “write once, run anywhere” VM model vs. compiled binaries tied to a specific OS.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Developer Convenience:&lt;/strong&gt; Interpreted languages let you prototype and experiment fast. Compiled ones catch errors early and scale better for performance-critical tasks.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But the bigger lesson? You don’t need to join language wars. The Chadstrum shows it’s not about being “better” — it’s about choosing the right tool for the job. At the end of the day, whether your code is compiled, interpreted, or something in between, it’s still getting the job done.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://dev-to-uploads.s3.amazonaws.com/uploads/articles/01fx86fov6be3f7taht2.gif&quot; alt=&quot;Thumbs Up&quot;&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;The world of programming languages isn’t black and white. It’s a messy, fascinating spectrum shaped by decades of history, performance needs, and human creativity.&lt;/p&gt;
</description>
<category>Full-stack Dev</category>
<guid isPermaLink="true">https://coderlegion.com/5112/deep-dive-into-compiled-interpreted-languages-their-history-spectrum-and-why-were-chads</guid>
<pubDate>Sun, 31 Aug 2025 22:45:47 +0000</pubDate>
</item>
<item>
<title>JSON vs BSON: Why MongoDB Uses a Binary Format for Better Performance</title>
<link>https://coderlegion.com/2869/json-vs-bson-why-mongodb-uses-a-binary-format-for-better-performance</link>
<description>&lt;p&gt;Let’s talk about &lt;strong&gt;JSON.&lt;/strong&gt; A lot of you are probably familiar with it — whether you’ve dealt with A&lt;em&gt;PI responses, configuration files, or log messages,&lt;/em&gt; JSON has likely come up more than once. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;JSON, or JavaScript Object Notation&lt;/strong&gt;, is a &lt;em&gt;human-readable format&lt;/em&gt; that stores data in the form of &lt;em&gt;key-value pairs.&lt;/em&gt; You might think it’s the same as a JavaScript object — &lt;em&gt;and it’s very similar&lt;/em&gt; — but not quite. In JSON, the data must be wrapped in curly braces, the keys must always be strings (in double quotes), and each key maps to a value. &lt;strong&gt;That value can be a string, number, array, boolean, null, or even another JSON object.&lt;/strong&gt; However, JSON supports only a limited set of data types compared to what you might be used to in JavaScript&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;    {
  &quot;name&quot;: &quot;Alice&quot;,
  &quot;age&quot;: 25,
  &quot;email&quot;: &quot;*Emails are not allowed*&quot;,
  &quot;isStudent&quot;: false,
  &quot;skills&quot;: [&quot;JavaScript&quot;, &quot;React&quot;, &quot;Node.js&quot;],
  &quot;address&quot;: {
    &quot;street&quot;: &quot;123 Main St&quot;,
    &quot;city&quot;: &quot;Delhi&quot;,
    &quot;zip&quot;: &quot;110001&quot;
  }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;By virtue of being both &lt;em&gt;human- and machine-readable&lt;/em&gt;, and relatively easy to implement in most programming languages, JSON has become a widely adopted standard for data exchange. But since we're talking in the context of MongoDB, let’s see how MongoDB actually works with JSON.&lt;/p&gt;
&lt;p&gt;One of the key goals was to let developers work with data in a way that feels natural and flexible. Since JSON is a widely used format and easy to read, MongoDB decided to use a &lt;em&gt;JSON-like structure for storing and working with data.&lt;/em&gt;&lt;/p&gt;
&lt;h3 id=&quot;to-address-these-limitations-mongodb-introduced-bson&quot;&gt;To address these limitations, MongoDB introduced BSON&lt;/h3&gt;
&lt;p&gt;.&lt;/p&gt;
&lt;h2 id=&quot;what-is-bson-&quot;&gt;What is BSON?&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;BSON (Binary JSON) stands for Binary JavaScript Object Notation&lt;/em&gt;. It’s a binary-encoded format that is inspired by JSON, but specially designed for storing and retrieving data in MongoDB.&lt;/p&gt;
&lt;p&gt;While JSON is great for exchanging data between systems (like sending API responses), BSON is optimized for efficient storage and fast access, especially when working with large or complex datasets.&lt;/p&gt;
&lt;h2 id=&quot;why-use-bson-over-json-&quot;&gt;Why Use BSON Over JSON?&lt;/h2&gt;
&lt;p&gt;While JSON is the preferred choice for data interchange due to its &lt;em&gt;simplicity and readability&lt;/em&gt;, BSON offers several advantages when it comes to data storage and retrieval.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;BSON can store additional data types that are not supported by JSON, such as:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;JSON doesn’t have a real &quot;date&quot; type.It only stores dates as text (strings).Example: &quot;2025-05-05T10:00:00Z&quot;→ You have to manually convert this into a date when using it in your code.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;BSON (used in MongoDB) does support real dates.It stores dates as numbers → This makes it faster and easier for the computer to understand and work with dates.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;JSON can't store binary data (like images or files) directly. You have to convert it to a long text format like Base64, which takes more space and is slower to process.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;BSON has a special BinData type just for binary data. It can store things like images, files, or other raw data more efficiently and quickly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It uses a special type called ObjectId to uniquely identify each document (like an ID).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;This ObjectId is only available in BSON, not in plain JSON.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&quot;faster-data-retrieval&quot;&gt;Faster Data Retrieval&lt;/h2&gt;
&lt;p&gt;BSON helps in faster data retrieval because it is stored in a &lt;strong&gt;binary format,&lt;/strong&gt; which is easier for computers to read and process compared to plain text like JSON. When a database like MongoDB needs to search through data or return results, it can do it more &lt;strong&gt;quickly using BSON&lt;/strong&gt;.This is especially helpful when the data is large or contains complex structures like nested objects. Since BSON is structured in a way that makes it easy to find and access specific pieces of data, it also improves indexing&lt;/p&gt;
&lt;h2 id=&quot;space-efficiency-for-large-datasets&quot;&gt;Space Efficiency for Large Datasets&lt;/h2&gt;
&lt;p&gt;BSON is more space-efficient than JSON, especially when dealing with large or complex datasets. This is because BSON stores data in a compact binary format, which takes up less space compared to JSON's plain text format. For example, numbers, dates, and other data types are stored in a smaller, more optimized way in BSON. This helps save storage and reduces the amount of data that needs to be transferred between the database and the application.&lt;/p&gt;
&lt;h2 id=&quot;does-mongodb-use-bson-or-json-&quot;&gt;Does MongoDB Use BSON or JSON?&lt;/h2&gt;
&lt;p&gt;MongoDB uses BSON, not JSON, to store data internally and when sending it over the network.&lt;/p&gt;
&lt;p&gt;However, as a developer, you usually work with JSON-like structures — because it’s easy to read, write, and understand. MongoDB takes care of converting that JSON into BSON behind the scenes.&lt;/p&gt;
&lt;p&gt;Here's how the process works:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Your code creates data using native types (like objects or dictionaries).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;That data gets converted into JSON (a common format) by your programming language or framework.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The MongoDB driver (a tool that connects your code to MongoDB) automatically converts the JSON into BSON — a special binary format used by MongoDB.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MongoDB stores and processes the data in BSON because it’s faster and more efficient.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When you request (query) the data, MongoDB sends it back as BSON.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The driver converts it back to JSON, and your app receives it in a format it can easily work with.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&quot;differences-between-json-and-bson&quot;&gt;Differences Between JSON and BSON&lt;/h3&gt;
&lt;p&gt;Here’s a detailed comparison to help us understand the critical differences between JSON and BSON:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://i.ibb.co/qYxGZ7s7/05-05-2025-22-23-52-REC.png&quot; alt=&quot;Sample Post&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In conclusion&lt;/strong&gt;, both JSON and BSON serve important roles in data handling but are designed for different purposes. JSON is ideal for lightweight data exchange due to its simplicity and human-readability, making it the standard choice for APIs, web services, and client-server communication. On the other hand, BSON is optimized for efficient data storage and retrieval, particularly in MongoDB, as it supports additional data types like Date, Binary, and ObjectId, and offers faster parsing and better space efficiency.&lt;/p&gt;
</description>
<category>Web Dev</category>
<guid isPermaLink="true">https://coderlegion.com/2869/json-vs-bson-why-mongodb-uses-a-binary-format-for-better-performance</guid>
<pubDate>Mon, 05 May 2025 18:39:02 +0000</pubDate>
</item>
<item>
<title>LinkedIn vs. dev.to: What's better for Developers ?</title>
<link>https://coderlegion.com/443/linkedin-vs-dev-to-whats-better-for-developers</link>
<description>&lt;p&gt;When developers talk about networking, LinkedIn is often the first platform that comes to mind. It's like a professional hub where people showcase their resumes, accomplishments, and job opportunities. While LinkedIn is great for finding jobs, it might not be the best place for developers looking to make meaningful connections and collaborate.&lt;/p&gt;
&lt;h2 id=&quot;a-race-for-attention-linkedin-s-competitive-culture&quot;&gt;A Race for Attention: LinkedIn's Competitive Culture&lt;/h2&gt;
&lt;p&gt;LinkedIn often feels like a constant competition. While it's a useful platform for professionals to display their achievements, it doesn't necessarily create the right environment for developers who want to collaborate, share knowledge, and find mentorship. The platform's focus on resumes, career milestones, and job titles leads to shallow interactions—likes, comments, and congratulatory messages—that don't foster deeper, technical discussions or problem-solving.&lt;/p&gt;
&lt;p&gt;One of LinkedIn's shortcomings is its lack of developer-specific tools or features that encourage collaboration on projects. Most interactions are limited to sharing articles or posting about career updates. For developers, this isn’t conducive to learning or working together on code. The overwhelming presence of recruiters also dominates the platform, turning it into more of a job marketplace rather than a community for developers to grow and collaborate.&lt;/p&gt;
&lt;h2 id=&quot;linkedin-great-for-job-searching-poor-for-building-relationships&quot;&gt;LinkedIn: Great for Job Searching, Poor for Building Relationships&lt;/h2&gt;
&lt;p&gt;While LinkedIn shines as a job-seeking tool, especially for connecting with recruiters or showcasing professional achievements, it doesn't cater well to the needs of developers looking to collaborate. The platform is heavily career-oriented, meaning that even technical posts are often framed to appeal to recruiters rather than foster genuine conversations or peer-to-peer knowledge sharing. This makes it hard for developers to form lasting connections with others based on shared technical interests.&lt;/p&gt;
&lt;p&gt;For example, a developer might post about a personal project or new technology they’re learning, but the engagement often doesn't go beyond surface-level comments like &quot;Congrats!&quot; or &quot;Well done!&quot; There’s little room for deeper discussions where others pitch in with technical feedback, share insights, or collaborate to solve a problem together.&lt;/p&gt;
&lt;h2 id=&quot;dev-to-a-community-first-platform-for-developers&quot;&gt;Dev.to: A Community-First Platform for Developers&lt;/h2&gt;
&lt;p&gt;If LinkedIn is where developers go to compete, dev.to is where developers go to collaborate. As a community created specifically for developers, dev.to focuses on sharing knowledge, encouraging technical discussions, and fostering real connections. Whether you’re a seasoned developer or just starting, the platform offers a space to ask questions, share insights, and contribute to open-source projects.&lt;/p&gt;
&lt;p&gt;How dev.to facilitate collaboration:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Open-source Contributions:&lt;/em&gt; Dev.to encourages developers to contribute to open-source projects. Many users share their work, invite others to contribute, and offer support for ongoing projects. This culture of collaboration allows developers to grow and learn together by actively participating in building real-world applications.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In-depth Articles and Tutorials:&lt;/strong&gt; One of the platform’s strongest features is its collection of technical articles and tutorials written by developers for developers. These posts go beyond superficial updates—they dive deep into coding challenges, best practices, and new technologies. Developers can engage with these posts by asking questions, offering solutions, or discussing alternative approaches. For example, a developer might write an article on solving specific coding problems in JavaScript, and others can comment with their experiences or alternative solutions, leading to meaningful discussions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Genuine Conversations:&lt;/strong&gt; On dev.to, the conversations are more substantial. Rather than simply liking a post about landing a new job, you’ll find discussions about code, tools, and technologies developers are using. This creates a more engaging and collaborative environment where developers are encouraged to help each other out and share their experiences in a meaningful way.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Code-sharing and Collaboration:&lt;/strong&gt; Dev.to provide space for developers to share code snippets, GitHub repositories, and projects they’re working on. Whether it's debugging an issue, optimizing a solution, or reviewing code, dev.to offers a collaborative atmosphere that goes beyond the “likes” and congratulatory comments seen on LinkedIn.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;No Recruiter Spam:&lt;/strong&gt; Unlike LinkedIn, dev.to is a space free from recruiter-driven interactions. The focus remains entirely on coding, learning, and contributing to the community, which is refreshing for developers who want to meet others based on shared technical interests rather than career milestones.&lt;/p&gt;
&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;LinkedIn might be useful for developers when it comes to job hunting and expanding their professional network. But if your goal is to connect, learn, and collaborate with a community of like-minded developers, platforms like dev.to are far better suited for that purpose. Ultimately, coding is more about teamwork and learning together than competing for the spotlight.&lt;/p&gt;
</description>
<category>Coding</category>
<guid isPermaLink="true">https://coderlegion.com/443/linkedin-vs-dev-to-whats-better-for-developers</guid>
<pubDate>Tue, 07 Jan 2025 07:10:10 +0000</pubDate>
</item>
</channel>
</rss>