Data Structures underlie everything we do in computer science: understanding them is critical to writing rigorous software and effective algorithms.

Photo by Alina Grubnyak on Unsplash

There are two general ways of looking at data structures: concept and implementation. Ideally, they should serve you the sense in selecting an effective data structure for a given problem. Fundamental data structures manifest themselves naturally in most situations. The problem usually demands a certain data structure, while others could be represented in different ways. An effective data structure should simplify the problem. But that is only half of the story since a data structure must also ensure computational efficiency…


The Story of Leibniz, his notations and ideas

Gottfried Wilhelm Leibniz. Image source: https://bityl.co/4FKD

Gottfried Wilhelm Leibniz was a prominent German polymath of the 17th century. He made contributions not only in the field of mathematics, which his most prominent discoveries on the language of symbolic logic, and calculus were established, but also in philosophy, which he formally studied, and theology where he argued a rational stance for the existence of God. While Leibniz works in different fields were found to be foundational he was involved in controversies that although he was a member of the Royal Society and the Berlin Academy of Science, his grave went unmarked for 50 years.

This is the…


features, groups, and modes of searching and evaluating algorithms — forests to the trees.

Algorithms can be a very difficult subject to understand. They come in varying logic expressed in varying languages, implemented in different syntax for varying purposes. Indeed, there are algorithms that are said to be different but works pretty much the same: the distinction can be drawn upon many parameters, one that is common is the nature of how the logic is implemented and how efficient it is based on some constraints usually determined by time and memory it needs — more generally with respect to finite resources.

In this article, we shall take a general perspective and build our understanding…


When everything seems to fail, remember to be accountable

“I don’t know what I did. It opened a bunch of pop-ups and crashed the program. I don’t ever want to use it again; it’s frustrating”

Humans are not immune to errors. In fact, to err is to be human[2]. Systems should, therefore, account for the events of errors. It should have a feedback mechanism that allows the user to have brief information about the series of actions that are rendered inside the system upon request. Whenever an error has occurred the feedback has to be concise and actionable.

Before we delve a bit further into our discussion, it is…


Scientific Inquiry is an art of interrogatives, reasoning, and logic

While doing research, it was advised to follow a methodological approach that another author had used for their investigation. There are laboratory standards and protocols one has to follow in doing science. Working for weeks in the Philippine Textile Research Institute with my colleagues investigating the plausibility of Green Chemistry for developing nanotechnology, we spent a ton amount of time, money, and effort on doing something wrong. Apparently, some research upon which we laid the foundations of our methods did not agree with the actual result we had developed in the lab. …


Understanding human psychology provides insights into the human-centered design: made by people for the people.

Without the right technical knowledge, we find ourselves alienated with technology. It need not be complicated; we don’t have to feel frustrated in dealing with the complexity of technology. Often times we are not at fault here, we may just simply be interacting with a poorly designed product. Before we delve into the topic further, I should clarify the use-case of the term product of which I intend to refer as a substitute for an abstract object made by the human mind. More elaborately, it is an artificial product of the mind.

Designed products tell a story, it reveals itself…


The design should not only be concerned with beauty, but it should also be functional.

A mock ups for web design
A mock ups for web design
Photo by Hal Gatewood on Unsplash

General Design Principles

Good design is actually a lot harder to notice than poor design, in part because good designs fit our needs so well that the design is invisible, serving us without drawing attention to itself. Bad design, on the other hand, screams out its inadequacies, making itself very noticeable (The Design of Everyday Things, 2013).

The American professor and author, Don Norman noted that combination of good observation skills and good design principles are important and can benefit us all because we are all designers in the sense that all of us deliberately design our lives, our rooms, and the way…


Probably the most applied mathematical concept and anyone can learn it. With great power comes with greater responsibility. Let us remember our philosophical grounds before we begin our scientific journey.

Photo by The New York Public Library on Unsplash

Most people use statistics like a drunk man uses a lamppost; more for support than illumination.

— Andrew Lang

There is a 1/6 chance of getting 6 when you roll a die. Eating Chocolate (given X, Y, Z) can reduce up to 10% of your body fat. Brand X is statistically proven to have a significant effect on Y. Are these forms of headlines familiar to you? What do we…


Lessons from the hype of AI research. From theory to production, the AI community has a long history of becoming the next big thing.

In this article, we will talk about the hype and the financial setbacks that the AI community has faced over the years. The challenges and limitations of logic-based AI (Symbolic AI), and probabilistic models (Neural Networks).

image source: https://bit.ly/3fXz4x8

Promises of AI

The hype in AI research has ever been fuelled by intense optimism so much so that it had overlooked substantial constraints and obstacles that had caused a couple of setbacks to which the field had almost been abandoned by major investors.


Let’s talk about measure and change for a bit.

Photo by Shubham Sharan on Unsplash

This article is part of my series in Foundations of Understanding Through Mathematics where I layout and presents an overview of some of the most important concepts in Mathematics [with links to learning resources] that are held with strong relevance to Artificial Intelligence and Computer Science.

For this article, we will have to take a look at the theory of Infinitesimal Calculus — the study of continuous change.

“ The calculus was the first achievement of modern mathematics and it is difficult to overestimate its importance. I think it defines more unequivocally than anything else the inception of modern mathematics…

Dave Amiana

Hi, I’m Dave. I love writing about science & technology — to make sense of what I’m reading. I believe that some ideas are worth sharing.

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