<?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>Forem: Miguel C</title>
    <description>The latest articles on Forem by Miguel C (@miguel_c).</description>
    <link>https://forem.com/miguel_c</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%2F1581607%2F5f134a7c-a87b-4014-bb26-c1af27847e28.jpeg</url>
      <title>Forem: Miguel C</title>
      <link>https://forem.com/miguel_c</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/miguel_c"/>
    <language>en</language>
    <item>
      <title>Key Tips on Freelancing as a developer</title>
      <dc:creator>Miguel C</dc:creator>
      <pubDate>Sun, 09 Jun 2024 02:03:26 +0000</pubDate>
      <link>https://forem.com/miguel_c/key-tips-on-freelancing-3p1j</link>
      <guid>https://forem.com/miguel_c/key-tips-on-freelancing-3p1j</guid>
      <description>&lt;p&gt;I've always wanted to start freelancing as a developer for a side business but had questions that needed answering before jumping into it.&lt;/p&gt;

&lt;p&gt;I had the opportunity to speak with Brian Jenney, the owner of the bootcamp Parsity and host of the Develop Yourself podcast, who helped me address my concerns before I proceeded down this path.&lt;/p&gt;

&lt;p&gt;I'd like to share what I've learned. These insights may work for some and not for others, and there may be differing opinions. Please feel free to comment and share your thoughts on any of these points.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Takeaways:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Understand Client Goals&lt;/strong&gt;&lt;br&gt;
Ask the client about the goal of the site.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set a Minimum Price&lt;/strong&gt;&lt;br&gt;
Establish a minimum price of $500.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Maintenance Plan&lt;/strong&gt;&lt;br&gt;
If you build a website from scratch, offer the first month of maintenance for free, and then charge $100 monthly thereafter. If maintenance becomes too demanding, inform the client that you can no longer continue. Also, pitch that you can fix any bugs within 24 hours.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Charge for Extras&lt;/strong&gt;&lt;br&gt;
Charge extra for tasks outside of coding, such as writing content or gathering images.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Milestone Payments&lt;/strong&gt;&lt;br&gt;
Typically, you will be paid by milestones. For a website build, milestones cover the entire project from start to finish. For existing codebases, milestones can differ based on the specific tasks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Client Communication&lt;/strong&gt;&lt;br&gt;
Avoid discussing technology with the client, as they generally only care about the final product. Use your preferred stack or third-party services, and choose the hosting provider you like.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seek Help When Needed&lt;/strong&gt;&lt;br&gt;
If you cannot accomplish a task or complete the job, reach out and hire another developer to help you. If you cannot find help, provide a refund and apologize.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set Clear Expectations&lt;/strong&gt;&lt;br&gt;
Set clear expectations with the client about timelines and deliverables to avoid misunderstandings. If they do not already have a website, inform them that they will need to pay for a domain name and monthly hosting. If their requirements include a third-party service with a recurring monthly fee, make sure they are aware of this cost upfront. All of these details should be communicated to the client from the beginning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Secure Payment Methods&lt;/strong&gt;&lt;br&gt;
Collect payment through Stripe, Venmo, or any other reliable platform.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Protect Your Work&lt;/strong&gt;&lt;br&gt;
A written contract or agreement won't always protect you, as people can still fail to pay. If you build a website for someone and they haven't paid you, ensure you retain access to everything so you can take it down until payment is made.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;I hope these takeaways have been helpful and given you some things to consider if you plan to pursue freelancing as a developer. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Summary of Key Takeaways:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understand Client Goals&lt;/li&gt;
&lt;li&gt;Set a Minimum Price&lt;/li&gt;
&lt;li&gt;Maintenance Plan&lt;/li&gt;
&lt;li&gt;Charge for Extras&lt;/li&gt;
&lt;li&gt;Milestone Payments&lt;/li&gt;
&lt;li&gt;Client Communication&lt;/li&gt;
&lt;li&gt;Seek Help When Needed&lt;/li&gt;
&lt;li&gt;Set Clear Expectations&lt;/li&gt;
&lt;li&gt;Secure Payment Methods&lt;/li&gt;
&lt;li&gt;Protect Your Work&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>freelance</category>
      <category>webdev</category>
      <category>developer</category>
      <category>development</category>
    </item>
    <item>
      <title>Four Fundamental JS Array Methods to Memorize</title>
      <dc:creator>Miguel C</dc:creator>
      <pubDate>Thu, 06 Jun 2024 19:21:37 +0000</pubDate>
      <link>https://forem.com/miguel_c/four-fundamental-js-array-methods-to-memorize-24k</link>
      <guid>https://forem.com/miguel_c/four-fundamental-js-array-methods-to-memorize-24k</guid>
      <description>&lt;p&gt;There are four basic array methods that every beginner should learn to start manipulating arrays. These methods are &lt;code&gt;push()&lt;/code&gt;, &lt;code&gt;pop()&lt;/code&gt;, &lt;code&gt;shift()&lt;/code&gt;, and &lt;code&gt;unshift()&lt;/code&gt;. In this guide, I will take you through each method so that you can start manipulating arrays effectively! &lt;/p&gt;

&lt;h2&gt;
  
  
  Method &lt;code&gt;push()&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;push()&lt;/code&gt; method adds an item to the end of an array. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const colorsArray = ["blue", "red", "green"]

colorsArray.push("purple")

console.log(colorsArray)
// Output: ["blue", "red", "green", "purple"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F59gs2lhsq1sa8yecn75r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F59gs2lhsq1sa8yecn75r.png" alt="Image description" width="687" height="192"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Method &lt;code&gt;pop()&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;pop()&lt;/code&gt; method removes the last item in an array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const colorsArray = ["blue", "red", "green"]

colorsArray.pop()

console.log(colorsArray)
// Output: ["blue", "red"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyukmw4s4i9lrkswgg1g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyukmw4s4i9lrkswgg1g.png" alt="Image description" width="696" height="193"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Method &lt;code&gt;unshift()&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;unshift()&lt;/code&gt; method adds an item to the beginning of the array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const colorsArray = ["blue", "red", "green"]

colorsArray.unshift("purple")

console.log(colorsArray)
// Output: ["purple", "blue", "red", "green"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fam2s4vyb2nedqao8exoc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fam2s4vyb2nedqao8exoc.png" alt="Image description" width="692" height="193"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Method &lt;code&gt;shift()&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;shift()&lt;/code&gt; method removes the first item in an array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const colorsArray = ["blue", "red", "green"]

colorsArray.shift()

console.log(colorsArray)
// Output: ["red", "green"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftsc6a5gtt0fe694lwm7s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftsc6a5gtt0fe694lwm7s.png" alt="Image description" width="694" height="197"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;These same methods will work just as well with objects in an array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const people = [
    {
        name: "Bob",
        age: 23
    },
    {
        name:"Joe",
        age: 55
    }
]

people.push({ name: "Blake", age: 32 }, { name: "Alex", age: 79 });

console.log(people);

// Output: [
//   { name: "Bob", age: 23 },
//   { name: "Joe", age: 55 },
//   { name: "Blake", age: 32 },
//   { name: "Alex", age: 79 }
// ]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fju2p4a3voxb4vbfb26nn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fju2p4a3voxb4vbfb26nn.png" alt="Image description" width="800" height="728"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;These are the four basic array methods that every beginner should learn to start manipulating arrays. Memorizing these methods is essential and will give you a better foundation as you begin your journey in development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;push()&lt;/code&gt;: Adds an item at the end of an array.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pop()&lt;/code&gt;: Removes the last item from an array.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;unshift()&lt;/code&gt;: Adds an item at the beginning of an array.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;shift()&lt;/code&gt;: Removes the first item from an array.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>javascript</category>
      <category>coding</category>
      <category>softwaredevelopment</category>
      <category>newbie</category>
    </item>
  </channel>
</rss>
