Image for post
Image for post
Image Source

This short article will focus on the main characteristics of Virtual Desktop Infrastructure (VDI) as opposed to the traditional Terminal Services.

Using Terminal Services

Terminal Services are also known as Remote Desktop Services, whereby software and entire desktops are made available to remote client machines that support RDP (Remote Desktop Protocol). Thin clients are handled through shared sessions with the central server.

Characteristics of TS include:


Image for post
Image for post
Image Source

This article will explore what creational design patterns are, why we need them and what different variations exist.

The What & The Why

Creational design patterns are the mechanisms for object creation in software engineering. They control the way objects are created and hence, increase the flexibility of the system.

The main aim of these patterns is to separate the creation of objects from their usage, thereby improving the quality and re-usability of your code.

To understand this better, consider the following code that does not follow the basic creational design patterns:

public class Bird {
Beak beak;

public void eat() {
beak.eat();
}
public Bird() {
beak = new Beak();
}…


Image for post
Image for post
Source

In this short article, we will explore what the C4 model is, what its different levels are and how one can apply it in practice.

C4 is an abstraction-based model for a diagrammatic depiction of the software architecture.

It consists of four main levels (diagrams):

So, according to this model, any software system is deemed to:

Level 1 of the C4 model is the Context diagram. …


Image for post
Image for post
Image Source

Solution Architect Definition

The formal definition of solution architecture, as provided by Gartner (2013), is as follows:

A solution architecture (SA) is an architectural description of a specific solution. SAs [Solution Architects] combine guidance from different enterprise architecture viewpoints (business, information and technical), as well as from the enterprise solution architecture (ESA). (Source)

To put it into simple terms, solution architects transform business, information and technical requirements into a solution, and then describe that solution architecturally. In order to perform this job, solution architects need to be well-versed in both the context of the enterprise and the details of technical design & implementation.

So, these are the people who are in charge of describing and managing a technical vision on how to solve business problems. …


Image for post
Image for post
Image Source

“It’s the edges of the maps that fascinate …” — David Mitchell

Stuck on Mars …

Imagine you are Mark Watney stuck on Mars for five years with barely any food left to sustain your existence. You decide to start growing crops indoors without soil and sunlight (somehow) to have something to eat. Wouldn’t it be great if you had some sensors installed that could help you analyze and track the usage of water, the condition of the soil and crops? You could then determine the optimal harvest time and chemically intervene in case of deteriorating conditions. …


Image for post
Image for post
Image Source

In this article, we will explore what Terraform is, what its workflow looks like and how it can be applied in practice.

Terraform is …

A tool to manage your infrastructure as code, including:

The term infrastructure as code means that all the needed resources will be managed through files (i.e. code) instead of manual configurations through an interface. So, infrastructure “becomes” some code and can be versioned, which allows it to be easily re-used, changed and shared.

Specifically, Terraform will generate a plan on how to reach the desired state of the infrastructure for your project and will then execute it. …


Image for post
Image for post
Image Source

In this article, we will explore the key characteristics of different cloud service models and their limitations. Treat this article as a useful brief summary for those looking for a brief introduction to what types of cloud services exist and how they differ from one another.

SaaS (Software-as-a-Service)

Key characteristics of this cloud service model are:


Image for post
Image for post
Image Source

Unions make us strong — except that not all unions do (at least, in the programming world).

In this article, we will explore union types in C language. We will start with a brief introduction to union types and we will move on to such important concepts, as discriminated and free unions (as well as the disadvantages of using them).

Brief Intro to Union Types

Unions are used to store different types of data in the same memory region. This saves storage space in a way similar to time-sharing the only hard copy of “Freakonomics” available in the library. Time-sharing in this case is possible if two people do not read the same hard copy at the same time. …


“It was a brave old world.” — Mark A. Rayner

Image for post
Image for post
Image Source

DevOps is a philosophy, a culture, a new way of working, a digital transformation, a methodology, a strong collaborative end-to-end environment and so much more. DevOps is currently transforming the way digital (and not only) works, paving the way to even more innovation.

In the pre-DevOps era, there were usually two separate IT teams in any organization:


Image for post
Image for post
Image Source

The more I C, the less I see. — Unknown

Programming in C/C++ is generally deemed to be very flexible and powerful due to the existence of pointers (among other things we’re not going to cover here!).

Pointers are great — they provide you with access to memory, help to decrease the execution time of your program, are used to construct complex data structures (like trees, linked lists, etc.) and so on. Yet, not everything that shines is gold — pointers are in fact a dangerous “species” that can lead to such problems, as program crashes, data corruption, unnecessary code complexity (just have a look at the picture above!) and complicated debugging processes. …

About

Narmin Jamalova

Computer Science & Data Analytics Master Student @ADA & @GWU

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