A UX research case study.

Image for post
Image for post
Spotify’s logo

Putting ourselves in the designer’s shoes, we have done this two-week research in which we tried to solve common problems among users less experienced with technology and the popular streaming application: Spotify.

First of all, we will explore a little bit about what Spotify means.

Spotify is a digital music, podcast, and video streaming service of Swedish origin that gives access to millions of songs and other content from artists around the world. This platform in its user interface does not have great differences when used on different devices or operating systems such as Windows, Mac, Linux, Android, and iPhone.

Founded in 2006, it is operated by Spotify AB, which has been listed on the New York Stock Exchange since 2018 through Luxembourg-based holding company Spotify Technology SA, which is also part of the Russell 1000 index. …

Image for post
Image for post

In the era of immediacy where we are used to getting everything almost in real-time, surfing the internet is not the exception, we do it all the time and it is part of our lives, many of us find in the internet tools that help us in anything we do daily and being something so common, We do it basically because it is inherent to us and we never question what happens behind the simple act of typing in the search bar what we commonly know as “the address of a web page”, “the link”, “the name” of this one or what is really the URL (uniform resource locator) and then press enter. …

Image for post
Image for post

The internet of things, for many it may be a somewhat new and rare concept, throughout this blog we will talk about its concept, the way it works, a bit of its history that dates back a long time (although it is incredible) and how it influences and relates to many technological concepts that perhaps we think would have nothing to do with this topic.

What is the internet?

To put us a little in context, we will talk about the internet, as many of us know, it revolutionized the world and how we see it, in 1962 thanks to J.C.R. Licklider who conceived the idea of ​​the internet (Interconnected Networks) and is one of the forerunners of computer science, at that time worked at MIT (Massachusetts Institute of Technology) and it was when he thought and created what would be a “Galactic network” that would connect a group of computers to share data regardless of the physical location of any of them, (this is how the internet is described as a network of computers that are connected globally), after 3 years, successfully connected two Computers located in California and Massachusetts respectively through a telephone line Years later, the military project ARPANET was created, which aimed to connect more and more connection networks.
The internet over time grew and so did its infrastructure to successfully support and guarantee its operation to connect millions in the world, as it does today, for that reason, they created what we know as DNS or Domain Name System. …

Image for post
Image for post

Machine learning is a branch of artificial intelligence, a product of computer science and neuroscience, which is responsible for developing and creating systems or techniques that enable a computer or machine to have the ability to learn.

The machine or computer, together with an algorithm designed for learning, learns without being explicitly programmed, as explained by Arthur L. Samuel in 1959, who was a pioneer in demonstrating the concept of artificial intelligence in its early days.

To be a little clearer with this definition, through algorithms that are a sequence of instructions that lead to the solution of a problem, the machine or computer can make relevant discoveries about a group of millions of data that reviews by identifying and analyzing complicated patterns and with them can predict behavior after this action, as acceptable output values within a range that is given by the algorithm (general and specific tasks) being able to learn as a human would, leaving aside the need to depend on precisely a human to do by code or instructions by the machine. This implies that in the future the machine will also be able to improve autonomously without human intervention in its learning, this could be seen as if the machine develops “intelligence” in a certain way. …

Image for post
Image for post

First of all, let’s give a little review of some basic concepts that are needed to understand why everything is an object in Python, such as object-oriented programming.

What is object-oriented programming?

Object-Oriented Programming (OOP) is a programming paradigm (set of theories, standards, models and methods that allow organizing knowledge) that uses objects and their interactions to design applications and computer programs. It is a particular way of programming because it uses the analogy of how things behave in real life, the main element to explain this are the objects, because it is a unit that contains the characteristics, attributes and behaviors in itself, which makes it independent, but by relating to objects of the same class, you can define and visualize problems and implement their solution through the programming language, in this case, Python 3. …

In this blog we will talk about the differences between static and dynamic libraries, how they work, why they are used, how they are created and used, their advantages and disadvantages. Now let’s go a little deeper into this…

Image for post
Image for post

Let’s start from the deepest:

What’s a library?

It is a compilation of the prototypes of functions that we use in our programs, the functions in programming language C, are declared and stored in a library, to be used at the time we need them, without the need to be copying the code every time this happens. This saves a lot of time when executing a program according to its complexity, accelerating the compilation process, additionally when working in teams this allows easiness in the tasks that are developed, easy reading and better management of the code, here the importance of libraries is evident. …

This blog describes deeply the step by step of what happens when you type”ls -l” in your shell.

Image for post
Image for post
A Unix Shell poster from 1983

First of all, we’ll understand a little of what a shell is, you might wonder why: is the command line where the command ls -l will be executed, (also later we’ll look deeper into this command and how it works and how the shell influence in that).

What is a shell? (in a few words)

The shell is a command line interpreter (CLI) that is based on the user interface between the end user who accesses the services of the operating system (Kernel), to be able to easily run computer programs, there are graphics and text, the latter refers for example to the shell based on Unix (the first was created by Ken Thompson in 1971).
It is also a command language that through shell scripts controls the execution of the system.
This shell is formed by the promtp, which is the character or set of characters that is displayed on a command line to indicate that you are waiting for commands (in your terminal appears something like: “$” when you type the command “sh”).
To understand this in simpler words we will explain it this way: a person is used to what we know as GUI: graphical user interface (GUI) is a human-computer interface (i.e., a way for humans to interact with computers) that uses windows, icons and menus and which can be manipulated by a mouse (and often to a limited extent by a keyboard as well). …

Image for post
Image for post

In this blog we will talk a bit about why we should use libraries, how they work, are created and used. Also later we’ll look deeper into this…

Why should use static libraries?

Static libraries should be used because they are stored in specific functions, which will be organized in one place to be able to use and call them from a program and thus compile the files in C, also saves a lot of time because they are intended to solve specific problems of our code.

But ok, this is the purpose of static libraries, but what are they?

What are static libraries in C?

What happens when you type gcc main.c

What is the difference between a hard link and a symbolic link?


Marcela Sanchez Moreno

Software Engineer Student at Holberton School Colombia 💻 Enthusiastic weaver of macramé and crochet 🧶 Colombian Red Cross volunteer ❤

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