Why You Need to Think Like a Mathematician

If you want to be a mathematician, you should think like one. The persistent habits of thinking like a mathematician change the way people analyze things. Regardless of your mathematical skill level, thinking like a mathematician will help you to:
Prioritize reason over passion
Mathematical proof depends on a bulletproof and clear set of steps that lead an individual from what is well-known to what is unfamiliar. In areas like economics, individuals fight about conclusions and scientists reverse findings. By contrast, mathematicians rarely reverse a result. This fact-based and dispassionate reasoning helps in politics and business but individuals have to start by knowing that they may reach a conclusion they don’t like.
Know that reasoning depends on assumptions
While scientists seek the truth, mathematicians seek truth relative to preliminary assumptions. They know that a triangle angles add up to 180 degrees only on assumption that one is on a flat plane. When people are reasoning about the world, they should question the starting assumptions.
Value ideas and intuition
People think mathematicians focus on logic. They don’t. They have big ideas that inspire what they research. There is no contradiction between locked-down reasoning and powerful ideas— individuals need the ideas to motivate them, and the reasoning to show they are right.
References
https://withoutbullshit.com/blog/benefits-thinking-like-mathematician
http://www.kevinhouston.net/pdf/10ways.pdf

Tips on How to Learn Programming Faster

Learning to program is not something an individual can do in a few hours. However, it does not have to be your life’s work. There are many things you can do to make learning to program faster. The following tips will help you to get most out of learning how to code.
Before moving on, get it right
Don’t move fast through any part of the course. Ensure you have a strong grasp of fundamentals. At the same time, ensure you are making progress—you can go too fast as well as too slow. Don’t avoid a topic because you have mastered something in it. To cement your grasp on the basics, you need to face more challenging ideas.
Looking at the example code
If you’re learning how to program for the first time, ensure you look at, and attempt to understand, all examples. Before you read the text, read the code examples. And try to understand what the programmer did.
Run the code after reading it
When reading a programming book (or tutorial), it is easy to look at example code and say “I have understood it.” Of course, it is possible you’re getting it, but you don’t know it. To find out if you are learning, do something with that code.
References
http://www.cprogramming.com/how_to_learn_to_program.html
http://www.codingdojo.com/blog/7-tips-learn-programming-faster/

Mathematics of Patterns

Patterns are consistent and recurring sequences and can be found in sets of numbers, events, shapes, nature and almost everyplace you care to look. Examples of patterns include seeds in a sunflower, geometric designs on quilts, and the number sequence 0;3;6;9;12;….
In a number pattern, the following notation should be used:
The 1st term in a sequence is T1
The 5th term in a sequence is T5.
The 9th term in a sequence is T9.
The general term, nth, is written as Tn. If a sequence follows a pattern, you can calculate any term by using the general formulae. Therefore, if you can find the relationship between the term’s position and its value, you will be able to describe the pattern and discover any term in the sequence.
Some sequences have a constant difference between two successive terms. This phenomenon is referred to as a common difference. The common difference is often denoted by d. For example, in sequence 10; 7; 4; 1;…, the common difference is 3. To find the common difference, the difference between two successive two must be known (d=T2-T1)
The difference between Tn and n should be noted. N is like place holder that indicates the position of the term in a given sequence. On the other hand, Tn is the value of the place that is held by n.
References
https://www.siyavula.com/maths/grade-10/04-number-patterns/04-number-patterns-01.cnxmlplus
https://www.learner.org/teacherslab/math/patterns/number.html

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