Photo by Green Chameleon on Unsplash

The Go Project

When was Go conceived?
In September 2007.

Who created Go?
Robert Griesemer, Rob Pike, and Ken Thompson.

Where did the creators work?
They worked at Google.

When was Go publicly announced?
November 2009.

The Go Language

Go is specially well-suited for what types of systems?
Networked servers, tools and systems for developers.

Go is syntactically similar to what other language?
C.

How does Go manages memory?
Go is a garbage collected language.

Go is a general purpose language. What does it mean?


Photo by Lenny Kuhne on Unsplash

Simplest Definition

A way to free your class from having to create the objects it depends on.

Now the rest of this article explains the Abstract Factory pattern in 2 parts: The Problem and The Solution.

The Problem

It is less motivating to study something if we don’t understand why that thing is important. That is why before getting into the what, let’s first understand the why. So the question to be answered first is: Why should a developer care about the Abstract Factory pattern?

Let’s say we are writing an application that will have to download an open-source component named “A” to run…


Sometimes in our dev lives all we want is a single and straightforward way to solve a problem. Specially when we are hard pressed to deliver a new feature or to solve a bug.

However, as curious developers, we love to learn and get to know how computers and programs work. And so, most of the time we really want to know all the different ways we can resolve a problem.

In this post we will explore a few different ways to read files using Elixir. The end goal is to expand and deepen our understanding of Elixir and programming…


The “Quest” app is evolving, slowly but steady. And in this post I am going to share the things I have been learning regarding the manipulation of lines from files in C#.

Getting a list of lines

To be able to manipulated the lines of a file, I am using the “ReadAllLines” method from the File class, which is in the System.IO namespace. Here is an example of how I am using it:

As the C# documentation describes, the “ReadAllLines” method:

Opens a text file, reads all lines of the file into a string array, and then closes the file.

In my example above…


Quest began as an idea to have a CLI app that would help developers quickly create notes or to-dos directly from the terminal where they already spend a lot of time running all sorts of commands such as “dotnet run”, “go build”, “git commit”, “ng s”, “cargo run”, etc. As a developer, one thing that really bothers me is having to go search for a directory, file, or app just to save a note or to-do, I would love to be able to do that from the terminal.

Contribute or Create?

After a quick search, I found that there were already some CLI…


This post is the first of a series that will be a journal of learnings as the Quest app is developed.

Quest is a CLI app for developers to quickly create to-dos through the command-line. This is the GitHub repo:
https://github.com/RWillup/quest

Reading Command-Line Arguments in C#

Initially Quest will have to be able to receive the following arguments:
- a command: new, complete, delete, etc.
- a text: this is the to-do text, e.g.: “refactor class x”
- a date-time: this will be the time of the reminder.

Creating the “command” argument

This is the very first draft of how the “new” command is being read:

On line…

Robson William

Software developer. C# and Go. Enthusiast for gRPC and IoT. Also husband, father and believer in Christ. https://robwillup.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store