<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: CamiloEderson</title>
    <description>The latest articles on DEV Community by CamiloEderson (@camiloederson).</description>
    <link>https://dev.to/camiloederson</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3602086%2F1b8638d8-640b-493b-b647-6d9ec9f4fed5.webp</url>
      <title>DEV Community: CamiloEderson</title>
      <link>https://dev.to/camiloederson</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/camiloederson"/>
    <language>en</language>
    <item>
      <title>GitPhase Kicked In</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Fri, 02 Jan 2026 23:13:57 +0000</pubDate>
      <link>https://dev.to/camiloederson/gitphase-kicked-in-153</link>
      <guid>https://dev.to/camiloederson/gitphase-kicked-in-153</guid>
      <description>&lt;p&gt;Solving conflicts through PowerShell is not always easy for me, but it’s giving me solid foundations to apply in my projects. Another brick in the wall! 🧱&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The Liskov Substitution Principle, A Model for Parenting</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Thu, 18 Dec 2025 00:03:36 +0000</pubDate>
      <link>https://dev.to/camiloederson/the-liskov-substitution-principle-explained-through-parenting-4ime</link>
      <guid>https://dev.to/camiloederson/the-liskov-substitution-principle-explained-through-parenting-4ime</guid>
      <description>&lt;h2&gt;
  
  
  Maybe it’s just me, but most software principles sound abstract until you realize they already exist in real life 🌱
&lt;/h2&gt;

&lt;p&gt;While studying the &lt;strong&gt;SOLID principles&lt;/strong&gt;, I noticed that one of the clearest examples is the &lt;strong&gt;Liskov Substitution Principle (LSP)&lt;/strong&gt; — a core concept in object-oriented design — which maps surprisingly well to &lt;strong&gt;parenting and family expectations&lt;/strong&gt; 👨‍👩‍👧‍👦&lt;/p&gt;

&lt;h3&gt;
  
  
  🔍 What LSP Says (in simple terms)
&lt;/h3&gt;

&lt;p&gt;In software, LSP states:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;If a class B is a subtype of class A, objects of type A should be replaceable with objects of type B without breaking the behavior expected by the client.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In plain terms:&lt;br&gt;&lt;br&gt;
If you make a promise at a higher level, every specific case must be able to honor it 🤝&lt;/p&gt;

&lt;p&gt;Now replace:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;class → child&lt;/strong&gt; 👶
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;client → family&lt;/strong&gt; 🏠
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Suddenly, the principle becomes very human.&lt;/p&gt;

&lt;h3&gt;
  
  
  👪 Parents, Promises, and Abstractions
&lt;/h3&gt;

&lt;p&gt;In software, a base class defines expectations.&lt;br&gt;&lt;br&gt;
In a family, parents define rules and responsibilities.&lt;/p&gt;

&lt;p&gt;Problems arise when a parent says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“All my children must do X.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;…but not all children are actually capable of doing X.&lt;/p&gt;

&lt;p&gt;When that happens, the child isn’t the problem.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;The expectation is.&lt;/strong&gt; ⚠️&lt;/p&gt;

&lt;p&gt;That’s exactly what happens in software when a base class defines behavior that not all subclasses can safely support.&lt;/p&gt;

&lt;h3&gt;
  
  
  🤥 When the Parent Is “Lying”
&lt;/h3&gt;

&lt;p&gt;In programming, we say an abstraction is &lt;em&gt;lying&lt;/em&gt; when it promises behavior that isn’t universally valid.&lt;/p&gt;

&lt;p&gt;In families, this looks like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Expecting every child to succeed in the same way 🎯
&lt;/li&gt;
&lt;li&gt;Assigning the same responsibilities regardless of age or ability 🧱
&lt;/li&gt;
&lt;li&gt;Punishing children for expectations that never fit them 🚫
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In software, the result is broken behavior.&lt;br&gt;&lt;br&gt;
In families, it’s frustration, resentment, and constant conflict 💥&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 The Shared Lesson
&lt;/h3&gt;

&lt;p&gt;Whether you’re designing software or raising a family:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;If someone constantly has to say “I can’t do that,” the promise was probably wrong.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;LSP teaches developers to look &lt;strong&gt;upward&lt;/strong&gt;, not downward — to fix the contract instead of blaming the implementation 🔄&lt;/p&gt;

&lt;h3&gt;
  
  
  🌟 Final Thought
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Strong systems — technical or human — are built on clear expectations, honest promises, and respect for differences.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
When abstractions are truthful, substitution becomes safe.&lt;br&gt;&lt;br&gt;
When expectations are fair, relationships become healthy 💚&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>architecture</category>
      <category>beginners</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>SOLID Principles + Design Patterns</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Sun, 14 Dec 2025 20:30:53 +0000</pubDate>
      <link>https://dev.to/camiloederson/solid-principles-design-patterns-eji</link>
      <guid>https://dev.to/camiloederson/solid-principles-design-patterns-eji</guid>
      <description>&lt;p&gt;Today we begin simple but not easy: the Single Responsibility Principle (SRP). Every class should have one reason to change—one clear responsibility. It may sound simple, but it’s the cornerstone of maintainable code&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>design</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>#Day14 Completed!!</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Wed, 10 Dec 2025 02:51:22 +0000</pubDate>
      <link>https://dev.to/camiloederson/day14-completed-jc6</link>
      <guid>https://dev.to/camiloederson/day14-completed-jc6</guid>
      <description>&lt;p&gt;Tomorrow I’m starting my Music Analyzer, a full console application built in Java. The goal is simple: put into practice everything I’ve learned so far—file handling, text processing, collections, custom exceptions, CSV generation, and clean architecture.&lt;/p&gt;

&lt;p&gt;It’s going to be a Console App, but one strong enough to be part of my portfolio. The program will read multiple song lyrics, analyze word frequency, generate statistics, search keywords, and export reports.&lt;/p&gt;

&lt;p&gt;I’m excited to build something after some days just learning conceptos and new topics!! &lt;/p&gt;

&lt;p&gt;Go ahead bro!!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>#Day12: Struggling with Enums</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Tue, 09 Dec 2025 21:02:05 +0000</pubDate>
      <link>https://dev.to/camiloederson/day12-struggling-with-enums-3601</link>
      <guid>https://dev.to/camiloederson/day12-struggling-with-enums-3601</guid>
      <description>&lt;p&gt;Learning advanced enums in java today diving into concepts like polymorphism constructors abstract methods and more. &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Day11: Java Exceptions 🎲</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Thu, 27 Nov 2025 04:38:33 +0000</pubDate>
      <link>https://dev.to/camiloederson/day11-java-exceptions-3644</link>
      <guid>https://dev.to/camiloederson/day11-java-exceptions-3644</guid>
      <description>&lt;p&gt;**Today I learned about Java exceptions.&lt;/p&gt;

&lt;p&gt;Checked vs Unchecked&lt;/p&gt;

&lt;p&gt;Custom Exceptions&lt;/p&gt;

&lt;p&gt;Exception Chaining&lt;/p&gt;

&lt;p&gt;Try-with-Resources&lt;/p&gt;

&lt;p&gt;Try–Catch–Finally Structure&lt;/p&gt;

&lt;p&gt;Good practices using exceptions**&lt;/p&gt;

&lt;p&gt;It’s been difficult because I have used exceptions before, but going deep into the basics is not always easy.&lt;br&gt;
But here we go.&lt;/p&gt;

&lt;p&gt;Let’s move on to Day 11: Advanced Enums.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Lists &amp; Sets 📋</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Mon, 10 Nov 2025 01:07:06 +0000</pubDate>
      <link>https://dev.to/camiloederson/lists-sets-2o8h</link>
      <guid>https://dev.to/camiloederson/lists-sets-2o8h</guid>
      <description>&lt;h1&gt;
  
  
  128DaysOfModernJavaDeveloper
&lt;/h1&gt;

&lt;p&gt;Learning about Lists(ArrayList, LinkedList)&lt;br&gt;
... and Sets (HashSet, LinkedHashSet and TreeSet).&lt;/p&gt;

</description>
      <category>java</category>
      <category>learning</category>
      <category>collections</category>
    </item>
    <item>
      <title>128DaysToStretchMyself!! 🚵‍♂️</title>
      <dc:creator>CamiloEderson</dc:creator>
      <pubDate>Sat, 08 Nov 2025 03:40:19 +0000</pubDate>
      <link>https://dev.to/camiloederson/128daystostretchmyself-4ipa</link>
      <guid>https://dev.to/camiloederson/128daystostretchmyself-4ipa</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;I’m writing this for my future self — to remember the days when I was focused on building the things that, perhaps, I’ll be living someday.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I’m still at the beginning. Just five days into my 128-day challenge — my ChatGPT BootCamp to become a Modern Java Developer.&lt;/p&gt;

&lt;p&gt;Some days, I feel the weight of not being where I want to be yet. But that’s also what keeps me moving.&lt;/p&gt;

&lt;p&gt;I just want a better future for me and my family. That thought has turned into discipline — writing code, studying English, and learning to be consistent even when motivation fades.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feoubinrh0z2eiwd37cll.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feoubinrh0z2eiwd37cll.png" alt=" " width="695" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It’s not easy, but something’s changing inside me. The fear is still there, but smaller. Knowledge is replacing it, slowly but surely.&lt;/p&gt;

&lt;p&gt;I’m not there yet — but I can finally see the path.&lt;br&gt;
This is me, walking it. Day by day.&lt;/p&gt;

</description>
      <category>java</category>
      <category>care</category>
      <category>chatg</category>
      <category>motivation</category>
    </item>
  </channel>
</rss>
