Mongo Shell By Example

Start the mongo shell

Start the mongo shell by running mongo

Note: this will connect using the default port 27017. Use -p for specifying a different port.

You should get an output similar to the following

MongoDB shell version v4.0.3
connecting to: mongodb://127.0.0.1:27017
Implicit session: session { "id" : UUID("2323-8as8-23aa-8fsa") }
MongoDB server version: 4.0.3
>

From this moment on, everything you’ll type will be executed in the mongo shell.

Continue reading “Mongo Shell By Example”

Docker: how to speed up your development

Docker has been with us many years now and quickly became a dominant technology.

In this post, we will explain the benefits of using Docker and how it can speed up your development.

This post will be divided into three main topics:

  1. What is Docker? – a quick introduction to Docker and the problem it solved.
  2. Why should we use Docker? – concrete reasons why you would benefit from using Docker in your day-to-day work.
  3. Usage example:
    • Setting up a Postgres database in seconds
    • Setting up (and accessing) a CentOS machine in seconds

Continue reading “Docker: how to speed up your development”

OpenStack: Testing Upgrades with Tobiko

What is Tobiko?

Tobiko is an OpenStack upgrade testing framework. It aims to provide tooling and methods for easily developing upgrade type tests.

Note: At this moment it also provides you with several built-in networking tests.

If you are familiar with OpenStack you might wonder why the current OpenStack testing framework (Tempest) is not used for that purpose.

Continue reading “OpenStack: Testing Upgrades with Tobiko”

Team lead – is it really what you are looking for?

I’ve had many talks over the years with friends / team members about their career path and what they should focus on in order to achieve their next career milestone.

In this post, I will focus specifically on the “Team lead” position and what are the common expectations of a Team Lead.
My hope is that it will give you, the reader, the information you were looking for and help you decide if this is indeed the right career path for you.

Lets begin with what a Team Lead is doing as part of his day-to-day work.

Continue reading “Team lead – is it really what you are looking for?”

Jenkins: building a CI/CD system – part1

This first post will cover the basics of how to connect Jenkins with Github and how to configure both to auto trigger a build upon a pull request (PR) and post back results to GitHub.
While we chose Jenkins and Github, all of the concepts you are going to read here are quite similar between the different tools (bitbucket, TeamCity, GitLab, etc), we only chose Jenkins as it is still being used by most users out there.

Let’s jump right in! Continue reading “Jenkins: building a CI/CD system – part1”

Algorithms: Basic Exercises – Part 1

In this post, you’ll find a collection of basic exercises for you to practice ‘Algorithms’ which is a fundamental topic in Computer Science. Each exercise includes a solution but for the absolute beginners, I recommend to try and solve the questions by yourself, without peeking at the solution. This is the best way to master algorithms over time. Enjoy!

Index equal to the value

Given a sorted array T of integers, write an algorithm (using pseudocode) that searches for T[i] = i

In case of success, it will return the value of i, otherwise, it will return -1.

Continue reading “Algorithms: Basic Exercises – Part 1”

jQuery Datatable Ajax: Change cell’s HTML after data is processed

The Problem

You generated a table using jQuery Datatable without loading the page, using Ajax. You wish to change the HTML of cells in a certain column after the data is processed. How to do it?

For the sake of this example, we’ll say we want to switch the data in the first column of the table into a hyperlink.

Continue reading “jQuery Datatable Ajax: Change cell’s HTML after data is processed”