<?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: esmitt ramirez</title>
    <description>The latest articles on Forem by esmitt ramirez (@esmitt).</description>
    <link>https://forem.com/esmitt</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%2F434678%2F49632785-31be-479d-b0d4-ace99fd01548.png</url>
      <title>Forem: esmitt ramirez</title>
      <link>https://forem.com/esmitt</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/esmitt"/>
    <language>en</language>
    <item>
      <title>Cleaning a C# Form-based project using a .bat</title>
      <dc:creator>esmitt ramirez</dc:creator>
      <pubDate>Sun, 26 Jul 2020 01:05:00 +0000</pubDate>
      <link>https://forem.com/esmitt/cleaning-a-c-form-based-project-using-a-bat-2kj1</link>
      <guid>https://forem.com/esmitt/cleaning-a-c-form-based-project-using-a-bat-2kj1</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--g1zo9eJ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-2.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/richy-great-MAYEkmn7G6E-unsplash.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--g1zo9eJ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-2.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/richy-great-MAYEkmn7G6E-unsplash.jpg" alt="Cleaning a C# Form-based project using a .bat"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After creating a Windows Form App project using Visual Studio 2019, and try to push the code to a git repository, I realized there are still garbage files. My initial thought was executing the Clean Project option, however, it does not clean all files that I consider as garbage 😩 (at least on the default setting).&lt;/p&gt;

&lt;p&gt;My following thought was to change options into the  Setting of Visual Studio, but after a while, I finish adjusting the size of the font on the editor and trying different fonts...procrastination 🤡&lt;/p&gt;

&lt;p&gt;To replicate this, I started with a Windows Forms App (.NET Framework) option in my Visual Studio:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KMbp9Tae--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-4.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/form.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KMbp9Tae--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-4.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/form.jpg" alt="Cleaning a C# Form-based project using a .bat"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then, I started coding 🤓 and when before to upload the code to the git repository I clean the code with the following .bat:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;You can edit the .bat as you want, it works fine in Windows 10.&lt;/p&gt;

&lt;p&gt;Honestly, this is not mandatory at all, the &lt;strong&gt;habitual&lt;/strong&gt; way is adding the file extensions into the &lt;em&gt;.gitignore&lt;/em&gt; file and continue with your life, but I can't #sorryNotSorry 👻&lt;/p&gt;

&lt;p&gt;I hope that could help more developers who want &lt;em&gt;clean projects&lt;/em&gt; 😃&lt;/p&gt;

&lt;p&gt;&lt;em&gt;From a geek to geeks&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;--&lt;br&gt;
✍️ Originally published at &lt;a href="https://www.ecode.dev"&gt;https://www.ecode.dev&lt;/a&gt; on July 19, 2020. Check out &lt;a href="https://www.ecode.dev"&gt;my blog&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🦖 If you want to help me to buy my own dinosaur, you can do that in &lt;a href="https://www.buymeacoffee.com/ecodedev"&gt;buymeacoffee&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
      <category>csharp</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Understanding the Competitive Programming problems</title>
      <dc:creator>esmitt ramirez</dc:creator>
      <pubDate>Sun, 19 Jul 2020 15:55:45 +0000</pubDate>
      <link>https://forem.com/esmitt/understanding-the-competitive-programming-problems-44hb</link>
      <guid>https://forem.com/esmitt/understanding-the-competitive-programming-problems-44hb</guid>
      <description>&lt;p&gt;Before starting this article, I thought: &lt;em&gt;This would be easy! everything is on my head&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Actually, that's true at least for the basic part and from my perspective based on my experience. Nevertheless, I realized the complexity when I started to write it 🤡. Then, I google what is a competitive problem and the I'm feeling lucky got me the following definition on &lt;a href="https://en.wikipedia.org/wiki/Competitive_programming"&gt;Wikipedia&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;"Competitive programming is a mind sport usually held over the Internet or a local network..." &lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;What? mind sport? 🙀 it's true but I have been never realized that fact.  Then, I clicked on each link inside the Wikipedia page and, after a couple of hours of procrastination on Wikipedia, I decided to continue with the writing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YgB7vAD6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://imgs.xkcd.com/comics/the_problem_with_wikipedia.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YgB7vAD6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://imgs.xkcd.com/comics/the_problem_with_wikipedia.png" alt="A wider tree of options on Wikipedia when you start with a single search"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A long time ago, and sometimes using a diskette at my University, I started in the world of competitive programming. Why? Because it represented a huge challenge in a healthy competition with colleague classmates. The name of my team was &lt;strong&gt;root?destroy:0;&lt;/strong&gt; 🦾&lt;/p&gt;

&lt;p&gt;Maybe it is possible to classify the competitions in short-term (1-5 hours) and long-term (2 days to few months). Here I will describe the short-term.&lt;/p&gt;

&lt;p&gt;The notable ones are the &lt;a href="https://icpc.global/"&gt;International Collegiate Programming Contest&lt;/a&gt; (ICPC), the &lt;a href="https://ioinformatics.org/"&gt;International Olympiad in Informatics&lt;/a&gt; (IOI), &lt;a href="https://ieeextreme.org/"&gt;IEEE Extreme&lt;/a&gt;, &lt;a href="https://codingcompetitions.withgoogle.com/codejam"&gt;Google CodeJam&lt;/a&gt;, and many others. Different tech companies run their own programming contest to discover new talents also to contribute to the community. Back to the ICPC, according to its official site:&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;The International Collegiate Programming Contest is an algorithmic programming contest for college students. Teams of three, representing their university, work to solve the most real-world problems, fostering collaboration, creativity, innovation, and the ability to perform under pressure. Through training and competition, teams challenge each other to raise the bar on the possible. Quite simply, it is the oldest,  largest, and most prestigious programming contest in the world.&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;Well, this was the kind of competition where I participate (besides the online ones). As a foundation you need to know several well-known algorithms and how to combine them to solve a problem...Uh-huh, but how do you achieve that? practice, practice, and practice. My first problem was the classic problem &lt;strong&gt;# 100 - &lt;a href="https://onlinejudge.org/index.php?option=com_onlinejudge&amp;amp;Itemid=8&amp;amp;category=3&amp;amp;page=show_problem&amp;amp;problem=36"&gt;The 3n + 1 problem&lt;/a&gt;&lt;/strong&gt; in the site of Valladolid University, Spain called &lt;a href="https://onlinejudge.org/"&gt;UVa Online Judge&lt;/a&gt;, which is referring to the Collatz conjecture.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/BmmfETghGOPrW/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/BmmfETghGOPrW/giphy.gif" alt="Guy thinking meanwhile math equations are floating"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Do not hesitate about it! The classic structure of this kind of problems is composed of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Description of the problem: what do you have to solve?, sometimes described as a story or explaining an hypothetical initial setup 👽 👾 🤖&lt;/li&gt;
&lt;li&gt;Input: description of how will be the expected input for the problem, specifying the range values or not (e.g. 32-bits integers, alphanumeric string)&lt;/li&gt;
&lt;li&gt;Output: the expected output for the problem, a number, a phrase, or just a True/False. Also, it could be something complex as an ASCII image!&lt;/li&gt;
&lt;li&gt;Limitations: whether memory and time limitations are limited to avoid brute-force approaches or classic ones 😧&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Generally, each competition has its own rules about who is the winner. Most of them consider the winner who solves more problems in less time. Of course, everyone receives a problemset each one has to submit its solution to be evaluated. The solution is marked as accepted (AC), wrong answer (WA), time limit exceed (TLE), among others. As I mentioned, this depends on each competition 👩🏻‍💻 👨🏻‍💻&lt;/p&gt;

&lt;p&gt;During the competition, it is possible that you need to define:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Strategy to use: cooperative strategy with your team&lt;/li&gt;
&lt;li&gt;Identification of the problem: the problem fits in any previous problem that I solved? can I classify it as easy/medium/hard? can I describe some techniques to solve the problem?&lt;/li&gt;
&lt;li&gt;Analysis of the solution: time complexity vs. memory complexity&lt;/li&gt;
&lt;li&gt;Check the extremes cases: verify carefully the border problems according to the input/output.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By experience, many problems will fit into a knowing solution for you/your team in different categories: math, dynamic programming, graphs, sorting, searching, string processing, ad-hoc. Then, after writing your code, just try to break your code! Remember that your code will be evaluated by an automatic system that compares an input (several cases including which push the limits) with the expected output, then your code has to run properly and get the right answer 🐵 🙈 🙉&lt;/p&gt;

&lt;p&gt;There are several websites where you can practice such as HackerRank, CodeChef, Codeforces, TopCoder, Coderbyte, Project Euler, Exercism.io, Codewars, SPOJ, CodinGame, and others. Eventually, you will evolve into a master of coding with skills as abstraction, faster typing, addiction to munchies (snack food), work under pressure, and others.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/13HgwGsXF0aiGY/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/13HgwGsXF0aiGY/giphy.gif" alt="Programmer typing into computer with fire around!"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, in my opinion, this could be risky for the (probably) lack of knowledge in frameworks used in real-life projects. However, why so many companies used this kind of approach in interviews? I am wrong on my thought? Not totally, a &lt;em&gt;profile&lt;/em&gt; of this kind of software has several characteristics very useful into the industry. There are several tech companies that use competitive problems to select possible candidates. We are clear that coding skill is only one skill besides team-working, creativity, resilience, and more. Well, this might be a long discussion about it.&lt;/p&gt;

&lt;p&gt;In any case, you will learn practical skills that become you into an excellent candidate for your dream job into the baptized as &lt;a href="https://en.wikipedia.org/wiki/Big_Tech"&gt;GAFAM / FAANG / BigFour&lt;/a&gt; or any other dream company for you.&lt;/p&gt;

&lt;p&gt;Finally, let me share a video that I recorded this year in how I attack the first problem that appears in LeetCode for starters/beginners.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=QpZ__VUQyoc"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Gv23vXrK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://img.youtube.com/vi/QpZ__VUQyoc/0.jpg" alt="Youtube video explaining how to approach a competitive programming problem"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is a way to face the problem by myself into an explanatory perspective. Do not expect to be a master coder with that (?) 🖖 It is a long video (~30 minutes).&lt;/p&gt;

&lt;p&gt;Well, this post is a long reading to be a short story. Oh, btw, I did not become in a ninja master saiyajin coder, just a regular one who enjoys the challenges and loves the competitive programming problems 🤓. Thanks for reading.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;From a geek to geeks&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;--&lt;br&gt;
✍️ Originally published at &lt;a href="https://www.ecode.dev"&gt;https://www.ecode.dev&lt;/a&gt; on July 19, 2020. Check out &lt;a href="https://www.ecode.dev"&gt;my blog&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🦖 If you want to help me to buy my own dinosaur, you can do that in &lt;a href="https://www.buymeacoffee.com/ecodedev"&gt;buymeacoffee&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programmingcontest</category>
      <category>beginners</category>
      <category>codenewbie</category>
      <category>leetcode</category>
    </item>
    <item>
      <title>The Github Archive Program is not frozen!</title>
      <dc:creator>esmitt ramirez</dc:creator>
      <pubDate>Sat, 18 Jul 2020 08:43:08 +0000</pubDate>
      <link>https://forem.com/esmitt/the-github-archive-program-is-not-frozen-2do4</link>
      <guid>https://forem.com/esmitt/the-github-archive-program-is-not-frozen-2do4</guid>
      <description>&lt;p&gt;Yesterday, I read a tweet about a developer who had a badge on its Github's profile. Obviously, curiosity kills the cat and I checked my profile and boom! I see this 😮:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8UPmqNPh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-2.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/badge.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8UPmqNPh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-2.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/badge.jpg" alt="screenshot of my badge on my github'profile"&gt;&lt;/a&gt;&lt;br&gt;
Then, I remember that I tweeted about the Github Artic Code Vault which is the core of all this project called Github Archive Program.&lt;br&gt;
&lt;/p&gt;
&lt;blockquote class="ltag__twitter-tweet"&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--vMY8H_m1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/1280551266767306759/0MiwyeNn_normal.jpg" alt="esmitt profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        esmitt
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @ecodedev
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P4t6ys1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-f95605061196010f91e64806688390eb1a4dbc9e913682e043eb8b1e06ca484f.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      Github Artic Code Vault&lt;br&gt;&lt;a href="https://t.co/lnEjpu02YE"&gt;youtu.be/fzI9FNjXQ0o&lt;/a&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      19:56 PM - 31 Mar 2020
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1245077490529456129" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WwRENZp4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-reply-action-238fe0a37991706a6880ed13941c3efd6b371e4aefe288fe8e0db85250708bc4.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1245077490529456129" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PFD0MJBa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-retweet-action-632c83532a4e7de573c5c08dbb090ee18b348b13e2793175fea914827bc42046.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/like?tweet_id=1245077490529456129" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6wx1BHu3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-like-action-1ea89f4b87c7d37465b0eb78d51fcb7fe6c03a089805d7ea014ba71365be5171.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;
&lt;br&gt;
 To be short, the mission of the project is:

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;...to preserve open source software for future generations by storing your code in an archive built to last a thousand years...&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;p&gt;That's it, a time capsule for the code on Github. A modern and high-tech capsule stored in the Arctic World Archive (AWA), a very-long-term archival facility 250 meters deep in the permafrost of an Arctic mountain. This is located in a decommissioned coal mine in the Svalbard archipelago (spoiler, near from Mr. &amp;amp; Mrs. Klaus) 🎅 🤶&lt;/p&gt;

&lt;p&gt;One motivation is to learn from past experiences, specifically speaking I refer to the Library of Alexandria. If you do not know about what happened, I recommended you &lt;a href="https://www.youtube.com/watch?v=jvWncVbXfJ0"&gt;a short lesson&lt;/a&gt; (less than 5 minutes) on Youtube made by TED-Ed's.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--svwF6R4n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-5.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/maxresdefault.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--svwF6R4n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res-5.cloudinary.com/hok9n4wen/image/upload/q_auto/v1/ghost-blog-images/maxresdefault.jpg" alt="artic code vault image of the frozen mountains"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github worked on this in conjunction with the Long Now Foundation, the Internet Archive, the Software Heritage  Foundation, Arctic World Archive, Microsoft Research, the Bodleian Library, and Stanford Libraries to ensure the long-term preservation of the world's open source software.&lt;/p&gt;

&lt;p&gt;On February 2, 2020, Github took a snapshot of all active public repositories archive in the vault. This is about 21TB of data stored in 186 reels of digital photosensitive archival film 📽️&lt;/p&gt;

&lt;p&gt;Is this a big step for humankind? For further information such as the description of the program and an official explanatory video, please go to &lt;a href="https://github.com/github/archive-program"&gt;The GitHub Archive Program &amp;amp; Arctic Code Vault&lt;/a&gt; written on... wait for it, on Github 😆&lt;/p&gt;

&lt;p&gt;Do you already verify if some of your repositories are in the Github's vault? In fact, if you have active public repositories, and commits between 11/13/2019 and 02/02/2020, and at least 1 star and any commits from the year before the snapshot (02/03/2019 - 02/02/2020), then you have the distinction! If your repository has at least 250 stars is also included.&lt;/p&gt;

&lt;p&gt;Well, if you have the badge then enjoy it and share it! Congratulation. Otherwise, don't worry and enjoy this amazing project 👨‍🏫 👩‍🏫&lt;/p&gt;

&lt;p&gt;&lt;em&gt;From a geek to geeks&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Originally published at &lt;a href="https://www.ecode.dev"&gt;https://www.ecode.dev&lt;/a&gt; on July 18, 2020.&lt;/p&gt;

</description>
      <category>github</category>
      <category>news</category>
      <category>archive</category>
      <category>code</category>
    </item>
  </channel>
</rss>
