Category: Uncategorized


Quantum Computing

Assuming you read the tech news weekly, I’m sure you have at least heard about the nearing end of Moore’s Law. Moore’s Law states that the speed of computers doubles every 18 months with transistors getting smaller each year. Well, there is a certain limit as to how small we can get a transistor to exist in the Central Processing Unit (CPU)  because of heating issues. By cutting the size of transistors to be atoms thick, we are face quantum mechanic issues where electrons flow from one transistor to another causing a shortage. To counter those issues, researchers and scientists all over the world are investigating possible alternatives to conventional computers, such as quantum computers, biological computers, chemical computers, and more.

Today, I’m here to talk to you about quantum computers. Though today’s topic does not relate to the realm of programming directly, I want to share with you why I feel the general public should learn more about quantum computing.

First off, quantum computing is a highly complicated process that uses and shapes individual atoms to store and compute data. It is a relatively new field that has gained much support globally and has stirred great interest in the future of computers. Quantum computers are based on quantum bits which are known as units of information held/stored on individual atoms. The special thing about quantum bits, also known as qubits, is that it can represent any value from 0 to 1, or both simultaneously. By both simultaneously, I mean qubits can be both 1 and 0 by means of superposition of two quantum states of 0 and 1.

Therefore, the ability of data (qubits) to be infinitely capable, with space of just one atom, raises hope for the future of computing as we are nearing the maximum speeds of conventional computers. Quantum computers will be able to compute at speeds millions of times faster than supercomputers today because they can store and manipulate data at the same time, while conventional computers have to do them separately. Conventional computers today also use bits that have a storage capacity of 1 million atoms. To reduce that number to just a single atom for quantum computing means quantum computers will be super efficient and powerful. I encourage you today to do more research on quantum computing. Thanks for reading.

Last week, I introduced the concept of hardware and software working together to create functional programs and useful products. We learned about key terms related to computer hardware including computer architecture, machine language, hardware components, and more. Well, this week I’m here to explain about the actual programming of hardware! For instance, after we built a computer based on the required components and infrastructure, how do we program it to act like a phone or game station or other computer? Let’s dive in.

To start, there is a system software that coordinates the computer system and acts as a link between application software and computer hardware. Such a system software is known as the operating system. It is the chief manager of the computer system that assigns, schedules, and monitors computer system activities and resources. However, you’re probably wondering how programmers wrote the operating system software in the first place. Well, let’s dig deeper.

Next, there is a language translation and utility software that translate high-level language programs written in programming languages into machine language, one that computers can understand and execute. When programmers write operating system software and other high-level language programs, they are writing the source code in which a compiler translates to machine code, also known as object code. Then, the computer is able to acknowledge the instructions and executes them one at a time by accessing the required primary storage data and other parts of the computer system. In simpler terms, the computer understands your code once you convert it to object code that is already defined in its primary storage, and then executes it in the CPU (Central Processing Unit).

In all, once an established operating system exists for a given computer system, programmers are able to create application software that can run on the existing operating system. That is why we have different operating  systems for different products and hardware–each operating system has its own set of application software that can be made specifically for that system. For instance, phones and PCs have different software, which is beneficial for the user. I hope you enjoyed the read and look forward to next week’s blog, thank you!

Let’s Program

Is this you? Are you lacking comfort  and experience with computers and the new trend in programming? Don’t worry we can change that!

Ever wonder why programmers love programming so much? Well, why don’t you give it a try and find out for yourself! Today, I will help you dive into the endless world of coding.

To begin, Codecademy has an awesome interactive website designed to help you learn. The majority of the process involves following directions and learning the syntax of coding to familiarize yourself with basic concepts of programming. Boring? Well, luckily for you, they made it all about you so you can enjoy making your own programs and have fun. For instance, when they ask you for your name and for simple arithmetic, they’re taking basic ideas and incorporating it with complex ideas of programming, so you can be the center of attention and learn at the same time. Isn’t that great? It’s not about the professor or teacher anymore, but it’s about what you: what you decide to make, how much time and effort you want to put into a project, and how you want to design/implement it. On a tangent, this is why hackers love programming so much. They love the attention they inherit when harming others for recognition and demonstration of power. However, in no way am I encouraging you to hack; I only want to emphasize the complete authority you have over your own education in coding.

Code School is another free, interactive website you can utilize in improving your programming skills. They have courses and paths you may take to develop code in areas of your interest, such as HTML for websites, iOS for Apple apps, and JavaScript for games and online applications. Many other resources such as these are available online, and more children are beginning to practice programming at a young age. So don’t fall behind, improve your qualifications and capabilities today by coding at your own pace and time.

Thanks for reading, and I hope you plan on programming soon!

Why Programming Rules

Honestly, I believe programming should be incorporated into the educational system as it is vital to our learning environment. Why is it vital? Well, Mitch Resnick, in his TED Talk “Let’s Teach Kids to Code,” explains clearly how programming teaches not only the aspects of coding itself, but also useful applications of design and logic.

One aspect Mitch talks about is that programming can help kids learn about meaningful concepts in a motivating and contextual way. In other words, he defines it as kids being able to apply what they learned into their own game or project that they are programming, with the help of Scratch software allowing kids without much knowledge to code. He goes on to indicate how children will also learn about the process of design when coding; they learn how to: experiment with new ideas, take complex ideas and break them down into simpler parts, and collaborate with other people on projects, find and fix bugs when things go wrong, and persevere in the face of frustration.

All these things that kids learn when they program are amazing skill sets to have in the real world. For instance, when they eventually find job opportunities, they’ll be able to apply skills they obtained from programming to real-world projects that affect more than just themselves. They’ll be amazing problem-solvers who can persevere, constantly troubleshoot, and find the source of the issue without having to rely on others for any of these components.

The main reason why Mitch decided to talk about this proposal is it is possible now. Before, programming required an extensive background in various languages and computer architecture, but, now, with the help of Mitch’s “Scratch,” kids are able to interactively create programs with pictures and blocks. I believe this is an amazing opportunity for children to take advantage of as it is both fun and educational.

Overall, if I didn’t persuade you enough to start programming, you should definitely watch the video. He does an amazing job of explaining why we should teach kids to code and I can’t agree more. Programming is more than just words and learning a new language. It is about teaching you how to think that gets applied to real-life projects. I hope you enjoyed this read and can give some feedback below if interested. Thanks.

How Programmers Think

Often, it is interesting to examine how professionals and experts in their own special fields think, and how the way they think aids them in their specialization. So, today, I just want to explore the minds of programmers–how they think and how that aids them in the process of programming.

Programmers like to think outside the box. When they encounter an issue, they don’t just focus on the problem itself, but they like to dig deeper to identify the source of the problem and possible relations with other working solutions. Justin James explains further on this concept, as he explains, “Too many people fail to look outside of the immediate problem when writing code; they are so focused upon the trees, they do not see the forest,” (“How to Think Like a Programmer: Part 1“). In the brains of programmers, such big thinking is common. They like to analyze an issue as part of something bigger, or more general, that caused the issue in the first place.

To provide a personal testimony to this concept, when I’m writing a program, I have a general picture or idea of how I’m going to write the actual program. So I create the basic structure and design of the program first, before implementing each part of the program. Basically, I form the backbone of the code first and then go back to fill the bones with meat; and, when I encounter an issue, I like to observe why I wrote the specific line of code with the error in the first place before trying to fix it.

The more obvious mindset found in programmers is that they are logical and resourceful thinkers. Justin explains further on this concept, concluding how great programmers come from a background of physics, mathematics, or “other similar scientific fields.” In context, programmers would use their physics and mathematics backgrounds to instruct the computer to construct data, equations, and other useful tasks needed for certain programs.

Overall, programmers are the problem-solving maniacs who think outside the box and use what they are given to complete a task logically. As boring as they sound, programmers are proven to handle situations very effectively with much thinking. So, find yourself a programmer and let them solve all your problems!

If you have any questions, please leave a comment and I will respond as soon as possible. Thank you for reading!

Professional Starcraft

The Starcraft progaming scene of South Korea

Learning Android Development

1st Year CPE trying to learn Android

The Art of Video Games

Your daily dose of the world of virtual reality.

Technological Wonders

Discussing the latest technological innovations.

the7seconds

English 149 Blog

Simple Motors

Applications to electrical engineering

Inside the Automobile

It began as a technical writing project...

Bill Mak - Computer Parts

Going Past Numbers

Digitally Savvy

The latest on modern digital technology

All About the Environment

new and exciting environmental updates

mjloweblog

A Window Into My World

Techno Magic

Taking the mystery out of your electronics.

Where are the Gears?!

A Mechanical Engineer Plays With Circuits

What's New in Computing

An attempt to keep both you and me up to date in the ever changing world of computers

rlhbc

Richard Liu's blog

Coding the Matrix

Computer science's application in video game development

Defense Company Profiler

Giving Detailed Information on the Major Defense Companies

Ryan Lee - Puppies

All about different dog breeds

An Introduction to Electrical Engineering

Useful Information For EE Students

Crazy Technology

Technological advances that will blow your mind

Soccer Ball Design History

This WordPress.com site is the cat’s pajamas

ENGINES AND SYSTEMS

Mechanical-Aerospace-Electrical

This week in Baja

Learn by braking

The Tech Tree

keep up with the latest tech news

Lost in Translation

A look into language translation and voice recognition software.

Engineering at Home

a collection of homebrew projects

Architecture of Aggression

Dynamics of Firearms

Incredible Aeronautical Inventions

Great examples of impressive human ingenuity .

Biomedical Engineering Advancements

Learn about new technology and products in the biomedical industry

Jeslin James

Exploring jobs in the CPE field

Biomedical Companies

Learn more about potential companies to work for as a biomedical engineer

Above The Stratosphere

A tab on current innovations in the aerospace community.

Kyle Koon - English 149

My thoughts on the latest in innovation and technology

Modern Environmentalism

Today's Environmental Issues, Products, and Solutions

jalemus

The Latest Technology

U.S. Navy Technology

ENG 149 Blog by James Pilkington

Tech Bytes

What is going on with technology in the world today.

English149

Exploring blogging as a form of technical communication

Becoming a Programmer

ENGL 149 Tech Writing