Introduction to Databases and How We Store Information in Computers

This article is just a small introduction to databases that hopefully will help you in getting familiar with the topic. It is deliberately simple and intends to provide an overview of the domain. A database is an organized collection of data, generally stored and accessed electronically from a computer system. The databases that are more…

How to write clean code by Uncle Bob (Robert Cecil Martin)

This is a collection of videos by Uncle Bob (Robert Cecil Martin) on how to write clean code. He is an American software engineer, instructor, and best-selling author. He developed several software design principles and co-founded the Agile Manifesto. There is more to object oriented programming. If you want to be able to write code…

Front End Development, Back End Development, and Full Stack Developers

Developing software is more and more a collaborative activity where multiple experts interact for delivering a particular solution. Strictly talking about development and without including supporting activities, we can divide programmers as specialized in front-end development or back-end development. Let’s try to define these activities. We can define front-end-development as the practice of converting data…

The Present, the Past, and the Future of Programming Languages: A Historical Perspective

What language should I learn? Would you like to understand the future of programming languages? Let’s start from the beginning: We can define computer programming as the process of developing and implementing various sets of instructions to enable a computer to do a certain task. Programming is a language and is subject, like any other…

Anaconda: Integrated Development Environment (IDE)

How to Debug in Anaconda and Spyder: Save Time and Energy!

A proper debug in Anaconda (or Spyder) is perhaps one of the most appealing functionality of an Integrated Developing Environment (IDE). In the case you are wondering what is the meaning of debug you can refer to the following: Debug refers to the process of identifying and removing errors from computer hardware or software. Definition…

Best practices on how to write comments in your code

Should I really care and learn about how to write comments? Really!? I do not have time for these things. How many times did you thought something like that? Well you are not alone. However: Have you ever tried to solve a very important problem doing some programming but found stacked because you can not…

How to Design a Good API: Advanced Object Oriented Programming

Design a good API takes both engineering and artistic skills and is a well know challenge among experts of object oriented programming (OOP). This is a relatively advanced topic. Therefore, If you are unfamiliar with the concepts this article will give you the basic of OOP. An Application Program Interface (API in short) refers to…

Eclipse: Integrated Development Environment (IDE)

Integrated Development Environment (IDE): why you need one

Let’s talk about Integrated Development Environment and why you need one for your studies. I realized that many non engineering oriented studies teach some coding oriented classes and promote some programming activities among students. However, most of the activities tend to be very basic and the code required for delivering the foreseen assignment(s) is relatively…