Issue Summary

For our hackathon we were tasked with creating a web application that summarized a user’s GitHub commit history by authenticating a user via OAuth with GitHub’s API. As a team, our group’s relative unfamiliarity with OAuth and the authentication workflow presented challenges when debugging API errors. Ultimately, we were able to resolve our issues with OAuth by comparing our intended requests to the API and the actual requests that were being sent using debugging statements in the backend code. …

Today I will be explaining a commonly used question technical job interview, Whether you are applying for an engineer, developer, marketer, or DevOps.
It is always a good idea to have a good understanding of is going on behind the scenes when you type and URL on your web browser and how information is transferred via the Internet to other computers.
For this article, we are going to to use the following URL, as our example.

What happen when you type an url?

The best way to understand what happen when you type “” …

Python: Mutable, Immutable… everything is an object!

In Python, everything is an object, and everyone who wants to learn Python should understand from the beginning that objects in this programming language can be either mutable or immutable.

Since in Python an object or class can be assigned to a variable or passed as an argument to a function, they are divided between objects that can be changed (mutable) and objects that can’t be changed (immutable).
Almost everything has attributes and methods
For example, an integer in Python is an object, a large block of memory is assigned to be used by the interpreter

Objects and Values:


Not long ago, I wrote a detailed explanation of how to create and use static libraries, just in case you need a refresher, please check it in the link below:

Otherwise, I will start explaining how to create and use dynamic libraries.

“I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.” -Bill Gates

Before we go ahead and jump into the definition of dynamic libraries, I need to make clear the definition of a function, a function in C programming is an algorithm that does a specific…

The Shell prompt from the user intructuctions (commands) to communicate to the core of  system
The Shell prompt from the user intructuctions (commands) to communicate to the core of  system
The Shell prompt from the user intructions (commands) to communicate to the system kernel

The Shell is a user’s program that communicates with the system kernel through commands prompt from the user and then later interpreted in a way that system can understand it, so the commands that the user type in the Shell translates into instructions and system calls.

Systems calls are a native function of the kernel which one can manipulate important information and hardware of the computer as is shown in the following flow chart:

IOCCC (The International Obfuscated C Code Contest) is an annual programming contest with an obfuscated C code.

In 1986 at the IOCCC they had a winner in which the category was “worst abuse of the C preprocessor”. This winner was Jim Hague in which his code was exotic.

What is the obfuscated code?

It is basically a machine code that is deliberately written and can be hardly de understood by humans, is usually used for different purposes such as increasing the security of what you want to transmit.

Letter of award recognition of Worst abuse of the C preprocessor

Worst abuse of the C preprocessor
Jim Hague
University of Kent at Canterbury
Canterbury, Kent

Static libraries are always available when is need it !!!
Static libraries are always available when is need it !!!
A static library is always available when invoked by the program

A static library is always available when invoked by the program,
In this article, I will explain what static library is, how do they work, how to create one and how a computer program uses a static library.

Why do we need libraries:
The code of the software is made up of many functions; functions are kind of like mini-programs that can be called by another program to perform computation or modification of the input.

To explain above in C code, I will create a function called mult() to multiply two numbers together and stores the output in a variable…

Compiling chart flow

Firstly, let’s talk a little bit about C. This is a multipurpose programming language developed by Dennis Ritchie at the Bell Laboratories near the 70s, designed to create small and fast programs. This means that it is a language of a lower level compared to others, capable of creating code closer to what the machines understand.

The code that the machines understand is a binary flow from 1 to 0, so it is necessary to use a compiler that converts the C code into machine code. …

Difference between hard link and symbolic link references

Hard and symbolic links refer to a file in the same hard drive and those methods are part of any filesystem that organizes what it is in each file and where. A hard link is usually a synced copy of a file that refers directly to the inode of a file. Symbolic links, on the other hand, direct to the file which refers to the inode which is a shortcut.

What is an inode:

Here is where the fun begins, an inode is a small database that describes the file or directory characteristics such physical location or metadata on the same hard drive, This…

Screenshot taken from the comand line

When you first type the ls command it will list all the files in the current directory, awesome right?!, if you actually want to go a bit further and do a specific search in your current directory then ‘ls *.c’ command will print on your terminal all the files that end with with ‘type.c’ in your current directory, it becomes very handy when you need to search and sort files in your current directory to speed up the process of searching.

In case you were wondering the reason why the ‘ls *.c’ command has an ‘*’, well, the ‘*’ in…

Andres Pulido

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