Cryptographic hashing

Cryptographic hashing is used for storing passwords due to its one-way transformation, meaning there is no way to reverse the enciphering. Passwords are disguised and can’t be reversed to their original form.

When hashing, the output is usually 32 characters or more in length, no matter how long the original input is.

Hashing maintains privacy by allowing us to compare if two inputs are the same without knowing the content of the original inputs (the same input will always generate the same output).

The avalanche effect means that the slightest change in the input generates a totally different output. For example, even if a one letter change the resulting hash will be unrecognizable from the original.

There are different types of cryptographic hashing such as SHA-1 and MD5 (not safe anymore), the output length and the method of transformation being the primary way hash functions differ. SHA-256 or bcrypt are more secure.

Securing written communication, hiding words and providing secrecy are the mainly goals of cryptography.

Humanism – Homo deus

The only source for artistic creation and aesthetic value  is human feeling. If it feels good do it.

Art is anything people think is art and beauty is in the eye of the beholder – Duchamp’s fountain – an important milestone in the modern humanist world.

In a free market the customer is always right.

In education, the students should think for themselves.

Medieval Europe:  Knowledge = Scriptures x Logic;

Scientific Revolution: Empirical Data x Mathematics;

Humanism: Experiences (sensations, emotions, thoughts) x Sensitivity.

You can’t experience something if you don’t have the necessary sensitivity and you cannot develop your sensitivity without undergoing a lot of experiences.

Humanism sees life as a gradual process of inner change – develop your knowledge through a wide variety of intellectual, emotional and physical experiences.

Science and humanism – yang and yin. The yang provides us with power while the yin provides us with meaning and ethical judgements.

 

Cryptography

Cryptography is the science of writing in secret code. It transforms plain text into disguised text and only the intended recipient can decipher it because he knows the key to the cipher.

Cryptography has been used for thousands of years but the computers reinvented it and led to strong encryption.

Caesar cipher (the shift cipher)

Atbash cipher (monoalphabetic substitution cipher)

Polybius square (translates letters into numbers)

 

 

 

Hacking

Hacking is about seeking vulnerabilities in software, searching for security holes. The reasons why a person would want to be a hacker are various including curiosity, personal challenge or stealing data.

The intentions choose the type of hacker a person want to be:

White-hat (ethical)

A white hacker acts in the legal zone and he has to follow the following steps:

  • get the permission of the owner of the system
  • hack the system
  • tell the owner about the vulnerabilities

White-hat hackers help keeping businesses, society and software that affects every life safe.

Black-hat (cracker)

A black hacker has malicious intentions and many people consider him as the classic  definition of hackers.

No matter what the intentions are hacking a system without getting the permission is illegal.  Hacking is just a tool. It is everyone’s responsibility to decide what to use it for.

 

Service Level Agreement

SLA defines Microsoft’s commitment for uptime and connectivity and what the customer is entitled to if Microsoft does not meet the commitment.

SLA is specific to each resource in Azure.

SLA also defines under what conditions Microsoft will make the guarantee.

Identify each resource you use, which resources have dependencies on other resources and figure out the expected time up percentage.

Question to ask yourself: Do you need to do better? Will the value of downtime affect your business? How much revenue could i lose?

 

Azure Functions C#

An Azure Function is a way to create a function that can run in the cloud and can handle/respond to different events that can happen in Azure. For example,  something was changed in a BLOB.

The developper doesn’t need to care about Virtual Machines or any infrastructure. You create the function, you deploy and you run it.

Azure Functions allows the developer to create serverless applications.

Azure Functions support triggers which is a way to start the execution of the code.

What can you do with Azure Functions?

  • building APIs and microservices
  • working with internet of things
  • task to run on a schedule (image/order processing, file maintenance)

Notes about clean code

Bad code can bring the company down.

Wading through bad code because we think that sometimes a working mess is better than nothing. Wrong!

Say the truth, most managers want good code. It’s a developer job to defend the code.

 

Azure multi-region deployments

The customers demand the highest performance in availability and their expectation is that the application will run even if even a data center may be down.

We can deploy publish the application into a second region that can be even on another continent.

Azure Traffic Manager will route clients to the one of the region where we deployed. It can be configured:

  • to route the clients to the lowest latency region for that specific customer
  • use geographic routing, for example, a customer from Europe will use a data center from Europe.
  • add a standby region –  route clients to the standby region where it is something wrong with the primary region.

Geo-replication for our data – Azure SQL and Document DB replicate data around the world. For example, you can have a primary database in the first region and a secondary database in the second region. All the operations committed to the primary database will be replicated (asynchronously) to the second database.

Aristotle’s philosophy

  • What makes people happy? – the table of virtues and vices
  • What are friends for?
    • friends – the interest in pleasure and the opportunity of the moment
    • friends as strategic acquintances
    • true friend –  someone not like you but about whom you care as much as you care about yourself.
  • How can ideas cut through in a busy world?
    • soothe people’s fears
    • see the emotional part of the issue

How to raise mentally tough children

  • Don’t condone a victim mentality – it is OK that sometimes bad things happen, that people won’t treat you fairly – he can choose to try again
  • Don’t prevent them to make mistakes – to make mistakes is OK, you have to learn him how to bounce back – How do we deal with that mistake? How can we do better next time? Learn from mistakes
  • Let them assume responsibility