Photo by Alexandre Debiève on Unsplash


“The Main Memory System: Challenges and Opportunities” by Mutlu, Meza, and Subramanian provides an overview of the latest advances in research for the memory system as well as the ongoing challenges that researchers face when coming up with technological innovations needed to keep up with current demands. The article focuses on three various aspects of the design of a main memory system: improving DRAM technology, implementing emerging memory technologies within main memory, and providing predictable application performance. The article also addresses the scaling difficulties of DRAM as well as flash memory.

Dynamic Random Access Memory

Dynamic RAM, also known…

Photo by Markus Spiske on Unsplash

Stryker Mutator is a software testing tool that performs mutation testing. Mutation testing is a form of white-box testing that changes certain statements of the product’s code and tests whether or not the test cases can find the errors within the code. The changes to the code are meant to be small so that the overall objective of the software remains the same. The goal of mutation testing is to check the quality of the test cases, which should be strong enough to detect failures due to the mutant code.


Stryker Mutator provides mutation testing for different environments: JavaScript, TypeScript…

Photo by Element5 Digital on Unsplash

Modern direct-recording electronic voting machines were first used in the United States during the 1990s. This innovation was initially considered to be beneficial for elections because “there is no paper ballot involved at any stage” [Dunn, 2018]. However, the technology started facing much controversy and further speculation soon after the beginning of its usage in elections. There are two primary factors that make direct-recording electronic (DRE) voting machines’ architecture vulnerable to exploitation: the substantial reliance on the hardware and software.

Insecure software on DRE voting machines can be exploited due to the machines’ heavy dependence on its hardware architecture. Initially…

Photo by Morning Brew on Unsplash

Spotify is a music-streaming platform with currently 217 million users worldwide [Porter, 2019]. Although primarily streaming songs, the company also streams podcasts and videos.

After reviewing Spotify’s privacy policy, I took note of two specific issues regarding privacy: freedom from surveillance and control of information about oneself [Baase 2012]. In Section 5 of Spotify’s Privacy Policy, it states that personal data collected during use of the app includes “…cookie data, your IP address… network connection type… and provider…” [Spotify Privacy Policy, 2018].

Collection of the previously mentioned data can be interpreted as a violation of the freedom from surveillance, as…

Photo by Afif Kusuma on Unsplash

Artificial intelligence (AI) refers to algorithms that learn to complete tasks by identifying statistical patterns in data, rather than simply following instructions provided by humans.

AI software learns data patterns and insights to mimic human intelligence. AI software largely focuses on three main aspects of human intelligence: learning, logic, and self-correction.

The learning aspect of AI software focuses on collecting data and creating algorithms for turning the data into practical, useful information. Algorithms are essentially rules that give computers step-by-step instructions for how to complete a particular task.

The logical aspect of AI software focuses on choosing the correct algorithm…

Photo by Mathew Schwartz on Unsplash

A traditional computer manipulates bits, which are signals that represent discrete values that are either zero or one. On the other hand, a quantum computer uses quantum bits.

A quantum bit is a type of signal that represents both zero and one into two distinct quantum states, enabling a quantum bit to even be both zero and one simultaneously. By using quantum bits instead of bits, quantum computers can solve problems that traditional computers struggle with.

There are two main aspects of quantum computing: superposition and entanglement. These two concepts are unique because they are phenomena that are not noticed…

Photo by Ilya Pavlov on Unsplash


A naive attempt at multiplying two polynomials of the same degree

Technologies used: PHP, HTML, MySQL, phpMyAdmin, Windows 10

While working at EyeRadar for the past couple months, one of the coolest skills I learned was creating my own search engine from scratch. Since every price comparison website needs a search engine to get the user’s favorite products and brands, I learned how to build a search engine that runs through a MySQL database and extracts the desired content. In this tutorial, I’m gonna show you how to create a simple search engine for a database. To check out this project on GitHub, click here.

For the sake of simplicity, I…

Riyo Aloshyas

Computer Science major at UT Dallas. Interested in data science, business intelligence and programming.

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