Sign in

My biggest passions are learning and improving each day, in what I do and why I do it.

A guide from top to bottom of what is networking and how it works in terms of the TCP/IP and OSI models.

The networking world is quite a fascinating subject if you ask me, it allows connecting every kind of computing device such as smartphones, TVs, computers, IoT, cars, gaming consoles, and many more to each other.

This is actually what the internet is all about, connecting endpoints together and achieving connectivity between each one to give the online experience we have today like watching Netflix, going on a run with Spotify, and again many more…

In the past, I…


In this part of the series, we’re going to see what is the best solution for building an image in a fast and elegant way.

If we go a little back to part 1 of these series, we remember that if we wanted to create an image we needed to download an image, run a container out of it, do a docker commit with all the details, and the result would be an image to use.

Right now we’re going to see how to configure a Dockerfile which is a simple text file.

You can think of Dockerfile as a…


In the previous posts, we’ve seen what are Images & Containers.

This post would discuss how can we connect to our containers, share files with it, make him share files with us, and also limit to read-only permissions.

As we discussed understood so far, Docker is an interface for managing namespaces in our OS.

In addition to local files and configurations, we can also configure network interfaces to the container and also allow files to be accessed from our OS and from the container itself, so it’s basically letting container mount sectors of our file system.

Networking of Containers

A container is usually…


In this docker series we’re going to understand what Docker actually is, what can we do with it, and deployments techniques that can be used along with it.

If you want, there’s a post I’ve done in the past about Docker but I think it wasn’t detailed as much as these series, but I do recommend checking it out for a starter.

Docker today is being used from the smallest and to the biggest scaling for many applications as of today, and I wished to make a series of it that will allow understanding of how to use it well…


From the rise of the Internet itself until today, the entire human race has this amazing gadget which is our smartphone. The smartphone is one of many great inventions of our time which gives us the ability to play games, see videos on Netflix, write mean tweets on tweeter, and make phone calls to another destination on earth and many more…

Isn’t that amazing? Well yes kind of, almost everyone has a smartphone today. …


A few months ago if you’ve asked me what GStreamer is I would’ve said that I don’t know anything about it, or maybe knew what it is in a very high level.

I’ve had the opportunity to work on a project which demanded a very deep understanding of GStreamer, and it’s inner parts, and it still something I’m in the progress of learning because it’s like learning a programming language.

Something that I’ve did experienced in using it is that it isn’t that easy to understand GStreamer unless you go deep regarding the thing you’re trying to build, and also…


This part of our Go series will be on the amazing Go concurrency model, and the way we can communicate between the threads.

I remember when I’ve started to learn Go, the first thing that everyone talked about is the concurrency model Go has.

For those who don’t know what concurrency is then here a brief summary for you :)

Concurrency is actually executing multiple execution units in parallel, which could share some states of data together and talk to each other, and today in programming languages in order to achieve concurrency we do that using Threads.

This is at…


In this Go part 2 series, we’re going to focus on OOP and a cool feature Go has which is the defer keyword and use-cases of it.

If we start saying it straight from the start — Go isn’t an OOP language.

That implies that Go doesn’t have objects, inheritance, polymorphism, and the entire toolset of cool features coming with OOP.

The reason for that as far as I’ve understood from the Go community and from Go itself is again for having simplicity.

OOP in itself is an art if you ask me.
I saw many people and myself implementing cool…


For the last year, a good friend of mine was working with Go and I’ve heard a lot of good things about it, so I had to check what the fuss is all about.

Go has a top-notch concurrency model that allows us to write concurrent programs with a very high throughput, which is kind of awesome regarding the development of backend applications and utilizing our cloud machine to its best.

From what I’ve so far experienced, Go tries to bring the best of worlds from programming in C and Python, which both of them I love because each one…


The web is a place that is full of security vulnerabilities, which are investigated by many companies to find new vulnerabilities each day.

Of course there are many techniques/attacks but XSS(Cross-Site Scripting) is of them.
Actually not that only it’s one of them, it’s one of the most critical ones out there.

XSS allows an attacker to alternate our web application in ways that allows him to benefit from it, in any way that he wishes.

Sounds quite frightening right?
Yeah pretty much, and in my own personal opinion, it should be known to everyone who develops a web application, because…

Ido Magor

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