Three Programming Languages That are Difficult to Learn

While many people have been reporting the world’s easiest programming languages to learn, there is another part of languages that can drive you nuts. We all started to program by writing codes in languages such as C++, C, Java, etc. Our seniors used languages such as COBOL, Fortran, and Pascal which are considered a little bit more difficult. Today, I will discuss three programming languages that can push your brain to the limit.
Brainfuck
As the name suggests, this language is very difficult. It was invented in 1993 by Urban Müller, in an attempt to make a programming language that could be used to write the smallest compiler for the Amiga OS, version 2.0. It runs on an array of memory cells, each at first set to zero. The language has only eight commands.
COW
This programming language was made with the bovine in mind. Since a cow has limited vocabulary skills, it is natural to include only the words it knows in the language. Therefore, all instructions are just variations of “moo,” the only word it seems to understand. Any other symbol or word that isn’t an instruction is entirely ignored.
Whitespace
Whitespace was released on 1 April 2003 and people believed it was an April fool’s joke. In this language, only tabs, linefeeds and spaces have a meaning. The language interpreter ignores all non-whitespace characters.
References
https://www.techworm.net/2016/05/worlds-five-difficult-progamming-languages-learn.html

Coding Theory

Coding theory is the study of codes properties and their respective fitness for particular applications. Codes are mainly used for cryptography, data compression, networking, and error-correction. Codes are studied by many scientific disciplines —such as computer science, mathematics, and electrical engineering—for the purpose of creating reliable and efficient data transmission methods. Typically, this involves redundancy removal and the detection and correction of errors in the transmitted data.
There are four types of coding. These are source coding (or data compression), channel coding (or error correction), cryptographic coding and line coding. Source coding attempts to compress data to transmit it efficiently. For instance, data files are compressed by zipping data to reduce internet traffic.
Error correction increases data bits to make data transmission more robust to disturbances available on the transmission channel. Many users may not be aware of numerous applications that use error correction. A music CD has the Reed-Solomon code that corrects for dust and scratches. The transmission channel in this application is the CD itself. Also, cell phones employ coding techniques to correct for high-frequency radio transmission. Telephone transmission, NASA, data modems all use channel coding techniques to have the bits through.
References
http://mathworld.wolfram.com/CodingTheory.html
https://www.tcs.ifi.lmu.de/teaching/ws-2016-17/code

Python Programming

Created by Guido van Rossum, Python is a high-level and object-oriented programming language. It has easy easy-to-use syntax and therefore, the perfect language for people trying to learn computer programming. It is also a general-purpose language with a range of applications from Web development scientific and mathematical computing to desktop graphical user Interfaces.

You should use Python because programming in it is fun. It is easier to write and understand Python code since it has a simple syntax. Even if a person have never programmed before, he/she can easily learn how to use this language.

In Python, you are not required to define the types of variables. Furthermore, you don’t need to add a semicolon at the end of the statement. It enforces students to follow good practices. For beginners, these small things make learning much easier.

Python programming language has a large supporting community. There are many active forums online which can assist if you are stuck. These forums include Python Questions – Stack Overflow, Learn Python subreddit and Google Forum for Python.

If you want to learn computer programming, Python is an amazing choice. Once you know the basics of Python, you will be amazed how much you can do.

References

https://www.programiz.com/python-programming

https://www.python.org/about/gettingstarted/

Learning Computer Science

To learn computer science, students should be encouraged to break down the learning process into three hierarchical forms of learning. Many guides do not focus on these forms. To properly learn computer science, learning objectives should be broken into strategies, tactics, and tool acquisition.

Strategies are all-encompassing principles in the study of computer science. Strategies cover the necessary infrastructure for learning. They involve topics like how to set up an environment for learning, how to ask questions, how to seek help, and how to debug.

Tactics are ways of tackling computer science problems. A problem has an ambiguous presentation. One may come across a problem but not know how to solve it. Learning tactics involves building tools to help you tackle new problems. Study of computer science is filled with challenging problems. To deal with new challenges, therefore, computer science students should have their favorite methods.

When most people think about computer science, tools are kind of things that come in their mind. Knowing “How to design greedy algorithms” and “Knowing Ruby” are some of the things we consider to be tools. In computer science, tools help us to do things. Tools entail data structures, syntax of languages, and anything that gives a concrete understanding of something.

References

https://www.jamesmaa.com/2013/08/26/a-beginners-guide-to-computer-science/

https://sites.google.com/site/mazooscomputersciencehelp/home/beginners-guide-to-computer-sciences

Characteristics of Good Math Students

Many students think that doing well in mathematics is an inborn skill. However, the truth is any person can be successful in math. Any person can do well in math whether they’re just looking to brush on some basics or in high math at school. The key to being a good student in math include:

Showing up for class

When students miss class, they have to learn math concepts either from their textbooks or from classmates. Learning from texts or friends does not give students a good overview of math concepts. Therefore, students must practise going to class on time. Good students only skip classes if they are sick.

Work along with your tutors

If your teachers work problems in front of the class, work along with them in your book. Ensure your notes are not only clear but also easy to read. Writing down the problems and anything that tutor says increases the understanding of the concepts.

Do your homework

Good students start to do their homework as soon as it is assigned. When students do their homework the same day as it is assigned, they are likely to perform well because the concepts are fresh on their mind. If you cannot finish your homework the same day, make sure it is completed before you go to class.

References

https://www.education.com/magazine/article/10-tips-maximize-performance-math/

http://www.wikihow.com/Learn-Math

Mathematicians and Their Role

Mathematics is of the most fundamental and oldest sciences. Mathematicians are people who use mathematical theory, algorithms, computational techniques, and computer technology to solve scientific, business, engineering, and economic problems. Mathematicians’ work falls into two major classes: theoretical mathematics and applied mathematics.

The role of theoretical mathematicians is to advance mathematical knowledge by coming up with new principles and identifying unknown relationships between mathematics principles. Without necessarily considering the practical use of mathematical knowledge, these mathematicians seek to increase basic knowledge. However, such abstract and pure knowledge has been instrumental in furthering or producing many engineering and scientific achievements. Almost all theoretical mathematicians work in universities, dividing their time between conducting research and teaching.

Applied mathematicians use techniques and theories, such as computational methods and mathematical modelling, to formulate and solve problems in life, social sciences, business, engineering, and governments. For instance, they may analyse the safety and effects of new drugs, the most effective way to schedule airline courses between cities, the cost-effectiveness of alternative manufacturing processes, or the aerodynamic features of an experimental automobile.

Generally, Mathematicians work in comfortable offices. They are part of interdisciplinary teams that include computer scientists, engineers, economists, technicians, physicist, and others.

References

https://www.studentscholarships.org/salary/484/mathematicians.php

http://www.ams.org/profession/career-info/math-work/math-work

Three Most Dangerous Computer Viruses

A computer virus is a program that affects various areas of the computer system, making it function abnormally .Computer viruses can cause great damage to a computer. They affect the performance of a computer and lead to loss of data. Here are three most harmful viruses:

Melissa

Melissa was the 1st mass-mailing virus for the new age of e-mailing. The virus became popular in the1990s. Created by David L and based on a Microsoft Word macro, the virus was spread in an email attachment form by the name “list.doc.” Clicking the attachment allowed the virus to replicates itself and looks for the Microsoft Outlook address book. It then e-mailed itself to at least 50 names on the list.

ILOVEYOU

ILOVEYOU was perhaps one of the most dangerous computer virus ever made. It was a standalone program that used to replicate itself. Initially, the virus traveled the internet via e-mail and succeeded in crashing thousands of computers all across the world.

Sasser

Sasser was discovered in 2004 and its main target was the windows operating system. Unlike other viruses, it did not spread through email. Once it attacked a computer, the virus looked for other susceptible systems. It contacted such systems, instructing them to download the virus.

Reference

https://www.techworm.net/2016/02/5-most-dangerous-computer-viruses-of-all-time.html

http://www.hongkiat.com/blog/famous-malicious-computer-viruses/

Justification for Mathematics Standards

For mathematics education to become substantially focused and coherent, mathematics standards are needed. These standards are basically meant to improve mathematics education. They provide clarity and specificity.

Instead of very wide statements without explanation, the standards ensure that learners grasp not just the conceptual key ideas but also the organizing principles. This is done by repeatedly referring to the organizing principles in the learning process. These principles include place value and laws of arithmetic. Through explanation and continuous reference to the principles, learners are able to understand mathematics.

The standards also ensure that there is a sequence of topics and performances. The sequence followed is based on research-based learning progressions that determine how the learner’s knowledge, skill, and understanding of mathematics develop over time. It is important that the sequence is maintained so that the learners can understand the concepts.

To test the understanding of learners, the teacher can ask them to justify why given statements are true or to explain why a given mathematics rule is applied in a given mathematics problem. The standards ensure the learners begin with simpler concepts in kindergarten. The concepts progressively get more detailed as the learner advance education.

Reference

http://www.corestandards.org/Math/

Online Math Resources

Most of the students do not like math because they have the perception that it is one of those boring subjects. Technology has come into play, to help out such students. The internet provides a wide range of math resources that can be used to make the subject interesting. The following are some of the resources.

Yummy Math

This resource brings out the application of math in real life situations, making it interesting and understandable. It makes use of videos, images, and real-life challenges. It shows practical application of math in life.

 Mathsframe

This website has a large number of math games that are interesting. It has various types of math types and different levels. The games offered by the website include Maths Invaders, Mine Mayhem, among others.

PBS Learning Media

This resource enables individuals to view math from a different perspective, hence enabling them to understand it. It makes use of videos and interactive resources including Math Magic and Money. All this site needs is for one to create an account with them and be able to access their services fast and free.

d)  Multiplication.com

Multiplication.com provides both free and paid material that aids children understand math.

The free resources include a Fact navigator which enables children to memorize the multiplication tables. It also enables them tackle quizzes and takes part in a number of games aimed at making them understand math. The games include Math ModelsPirates II, and Monster Multiplication.

References

http://www.edudemic.com/top-10-free-math-resources-web/

http://www.studentguide.org/a-complete-list-of-online-math-resources/

Importance of Computer Science in the Society

While growing up, most of us look forward to being of benefit to society by pursuing careers in fields such as medicine and law. Although computer science is deemed by most people as not being directly helpful to society, it is one of the best careers for people who really want to change the world.

Computer Science should be recognized as beneficial to the society, just like the other careers. It is of great importance to the society in the following ways:

It has improved communication up to an extent that the world is commonly referred to as a global village. People can now send emails through their phones, and video conference to people in other parts of the world.

It has aided modern education whereby people can learn, research and submit assignments online.

It has come up with solutions for various problems by coming up with various software and by even improving the solutions by making services like ‘Uber’ be easily accessible.

It has enabled secure protection for people and organizations through offering digital protection. It also offers protection to the people by digital verification of fingerprints.

The above examples are just a few examples that show the importance of computer science to the society. We can’t deny it — computer science can be applied extensively to transform the world.

Reference

http://www.rasmussen.edu/degrees/technology/blog/ways-computer-science-benefits-society/

https://www.ukessays.com/essays/information-technology/importance-of-computers-in-society-information-technology-essay.php