“How Covid-19 Vaccine works?” for Dummies, by Computer Scientist

In the following, I am going to try to tackle the most raised question nowadays in the simplest possible way using principles from the computer science world. No worry, also dummies in computer science should be able to follow up easily, since I am going to explain the principles as easy as pie first, before going to compare with the matter of the vaccine.

So, fill up your cup of coffee and let us start.

What is a hash function?

First of all, a hash function is, as the name says, a function! Yes, nothing other than just a mathematical function that takes an input, computes something and gives the output result.

Well, and what does the hash function take as input and what does it compute and give as output?

It takes any data as input and gives a number as output that can be used as a fingerprint for this data. Exactly like humans’ fingerprints, this output can be used to identify the given input from other inputs.

A function that takes “data” as input may sound a little bit strange in comparison to those typical mathematical functions that you supposedly already know from math classes in school days. Those functions usually used to take only numbers as inputs and produced numbers as outputs. Well, it suffices here to know that numbers and data are just two faces of one medal, i.e. texts, pictures, huge computer files … etc are at the end of the day nothing other than bunches of “data” and these bunches of data can be represented as numbers. So, for example, the text “hello” is numerically represented as: 072101108108111. A picture is also numerically represented as a number (this number representing a picture would be very long and fill some pages so for the sake of readability it will not be mentioned here). The transition from texts or other kinds of data into numbers (i.e. how the numerical representation of the text “hello” has been computed as 072101108108111) is out of our scope here. Everything you need to know is that any data can be represented as numbers.

By storing these numbers electronically on some electronic device, we get the magical thing that everyone knows: the file.

Thus, hash functions could take even files as input, since files are nothing other than numbers, as we have just learned. And the output is then called the hash value of the file. So, hash values of files are used as fingerprints for the files.

But why do we need fingerprints for the files?

Exactly as by humans, we use a small piece of information to distinguish the person from other persons. Alike, files could be huge and consequently the numerical representations of them could be numbers of milliards of digits, but hashes are much shorter. So, if we want to say, this exact file is harmful or that exact file is so and so, we could use only the hash of it and say the file with this hash value is harmful or the file with that hash value is so and so.

So, are these hash values unique, i.e. are there no two files that have the same hash value?

To be honest, no. They are not unique. Theoretically, there could be many files that lead to the same hash value, but hash functions have specific mathematical properties that make it very very hard to deliberately create another file that gives the same hash value as of another one. For this reason and for other reasons, they are used for the identification, as if they were unique, although they are, in fact, not unique.

How does the antivirus work?

There are many approaches for antiviruses but the main are:

  • The antivirus program gets from its developers (when doing updates) lists of hash values of files that have been analyzed by the developing company and classified as harmful. The antivirus scans the files on the device it is installed on continuously in the background, computes the hash values of the files and compares them to the lists that it got. If some suspicious file found (suspicious means its hash value is listed on one of these blacklists that the antivirus has), it deletes the file.
  • Advanced antiviruses don’t depend only on hash comparisons but observe the behavior of the files and try to detect files with suspicious behaviors. For example, if a file has the extension “.jpg” in its name but it does not contain the numerical representation of a picture as it is supposed to be. Instead, this file contains the numerical representation of a computer program (computer program is a list of instructions that shall be executed). Moreover, this file tries to insert itself in the list of programs that runs in background when the computer starts and tries to connect to the internet and works completely in the background (it doesn’t have a graphical window). The antivirus analysis could detect it as a suspicious file, even if its hash value is not on one of those blacklists that the antivirus gets per updates.

The antivirus may also add the hash value of this file to its blacklists so that it detects this file when seen somewhen somewhere else later.

  • More advanced antivirus could send the hash of these suspicious files to the developing company to help in the analysis. If in future many reports came from different devices with the same hash value, the company would then try to look at the matter, try to find this file, analyze it and may insert this hash value in its blacklists in the next update so that all antiviruses can immediately detect this file in future as a threat without the necessity of analyzing it.

What is the Scheduler?

How computers do the magic that they do?

The magic they do is nothing other than executing programs. A program does not necessarily mean a typical program that you know with an icon that you click on to run it. Even when you do things that you don’t see explicitly as programs, such as doing copy and paste or resizing a window or connecting to a Wi-Fi network for example, these all are behind the scenes nothing other than small programs that are being executed.

Well, and what do programs consist of?

Programs are nothing other than lists of instructions that are stored in the memory of the computer. Again, the numerical representations of the instructions are stored, because electronic memories understand only numbers and store only numbers.

Computers contain processors which are complex electric circuits that read these lists of instructions, understand the numbers and execute them one after another.

In the old days, a computer contained only one processor and only one program stored in the memory. By connecting electricity to the processor, the electronic circuit worked and did the only thing it was built to do, namely reading the numbers from the memory and executing the instructions.

But things don’t stay so simple 😊 Computer scientists wanted to get crazier!

So, advanced principles came. We wanted to have not only one static program on the memory, but many programs, and we wanted to enable the user to select which one he would like to execute. We wanted to have computers not only with one processor but with multiple processors to execute many programs at the same time. We wanted to use the same memory to store programs and data (texts, pictures, … etc). Thus, the idea of files came out and every bunch of numbers that are related to each other is packed together in one unit that is called a file and the memory is so organized that every file has a specific address in the memory. By doing this, we achieved some kind of organization in the memory and we were able to store every program in a file.

Well, by doing that, we got a computer that has multiple processors, memories organized in files and store multiple programs. So, we had the musical instruments but how can musicians start playing? We needed an organizer: A main program that runs to enable the user to select which programs to run when and based on these wishes it knows where each program is stored in the memory and decides which program shall now by which processor be read and executed. This good guy is called the operating system. If you probably use Windows, then your clever guy is called Windows. Windows is this clever guy that delivers your wishes to the processor and tells him which program it shall execute to fulfill your wishes.

To be specific, the operating system has many other jobs, it manages many different things and helps even in things like creating new files or deleting files and many other things, but the part that is responsible for the matter of which program is given to which processor is called the “scheduler”.

What is a virus?

A virus is a program (stored in a file as we have just learned) that causes harmful things in the computer when executed.

What is a batch script?

A batch script is a file that contains a list of instructions.

So, it is a program, isn’t it?


And why are you calling it by this strange name and don’t you simply say a program?

Hmmm, it is actually a special kind of programs and we, in the computer science, like to be precise. The difference between this kind of programs and the “real” programs is that the batch script does not contain instructions that can be read and executed directly by the processor as we described above. It contains some instructions that tell the operating system to do things like creating some files, deleting some files, executing some programs, ending some programs, shutting down the PC … etc. In other words, it contains what we called the wishes of the user but here are they written as a list of instructions instead of being given to the operating system in form of mouse clicks directly by the user.

Now let’s imagine the following scenario:

We have a known virus which spreads from a computer to another and causes harmful things when executed.

We wrote a batch script that tells the operating system to create some new files.

As we already learned, files are nothing other than bunches of numbers which represent either data (a picture, a text, a video … etc) or a program (a list of instructions).

These files that our batch script tells the operating system to create have two special properties:

  • They contain programs that behave a little bit suspiciously.
  • The numerical representation of the file is deliberately manipulated so that its hash value is equal to the hash value of the virus file.

We succeeded in injecting this batch script to the schedular of the operating system.

What happens?

The scheduler decides somewhen to execute the batch script. When executed, these new files are created. Somewhen the antivirus comes to scan them as it always does. Their hashes are not previously known to him. It analyses them and detects something suspicious in them and decides that they are threats. It computes their hash values and add them to its blacklists for the future.

Somewhen the real virus arrives this computer somehow. The antivirus comes to scan it. It detects it immediately because it already knows its hash value so no need to waste time in analyzing. It decides immediately to delete it.

Well, the batch script is the Pfizer/BioNTech Covid-19 vaccine! 😉


مراحل تطور اللسان الإعلامي للنظام

سابقاً كان لسان الدعاية الإعلامية للنظام أنو نحن كويسين وكل يلي عم ينحكى عننا كذب.
بعدين صار أنو ترا هناك بعض الأخطاء ورح نصلحها بس اصبروا.
بعدين صار أنو ترا والله نحن زبالة بس ماعندكن حل أفضل لأنو إذا رحنا فجايتكن داعش وشلون ما كان فزبالتنا أهون من داعش.
بعدين صار أنو خيو عينك عينك وبكل وضوح نحن أصنص الزبالة ومارح نصلح شي ومافي داعش مستنيتكن إذا رحنا وبدكن تقبلوا فينا هيك بالزور!

تقبّل ≠ احترام ≠ اقتناع

ضمن هالعجقة عم حس في خلط غريب بين تقبّل المختلف وبين احترامو وبين الاقتناع بوجهة نظرو.
المقصود بالاختلاف هون اختلاف بأسلوب الحياة أو بالآراء أو بالمواقف أو … الخ
تقبل المختلف يعني عدم الدعوة لقتلو أو التنكيل فيه مثلاً وهو الحد الأدنى المطلوب بمعظم حالات الاختلاف. الاحترام بيجي درجة أعلى منها وهي احترام هالمختلف والشي يلي هوي مقتنع فيه وعم يمارسو لكن أنا مو مقتنع فيه ولا بمارسو. الاقتناع بقى هي الدرجة الأخيرة ويلي فيها أصلاً ماضل مكان للحكي عن اختلاف وإنما صرنا على جبهة وحدة.
فبيت القصيد، كوني بتقبّل حدا مختلف فهذا لا يعني أبداً ومو مطلوب مني أبداً أني أحترمو!! عدم الدعوة لأذيتو شي وأني أحترم الشي يلي عم يعملو شي تاني خالص!! عادي لا بل وطبيعي ومافيها شي أني كون ما بحترمو!!
وبالمثل، كوني بحترم حدا مختلف عني بشي فهذا لا يعني أبداً أني أطلع عالدرجة يلي بعدها وأتبنى هالرأي أو الموقف أو السلوك تبعو أنا كمان!
كتير دارجة هلا موضة أنو لحتى تفرجي أنك متحضر وتقدمّي فأنت مطالب أنك ما توقف عند التقبّل وإنما مطلوب منك تظهر احترامك كمان! وبغير مواقف لازم مو بس تظهر احترامك وإنما تصير تحترم لدرجة أنك تتبنى هالوجهة النظر يلي مختلف معها!!

عزيزي الذكر، كن يقظاً

يا معشر الذكور، تتبع بعض الإناث أحياناً نفس تكتيك الأنظمة الشمولية للوصول إلى تحقيق بعض المآرب التي لا توافق عليها أنت لو طُرحت عليك بشكل مباشر.
التكتيك هو التدريج. لنقل أنك لا تتقبل أمراً ما (وليكن الأمر x) ولا بأي شكل من الأشكال وتعتبره خطاً أحمر. فلن تقوم هي بالأمر x. لكنها ستبدأ بالمفاوضة على أمر آخر y بحيث أن y أخف وطأةً جداً من x. أخف وطأة لدرجة أنك ستبدو سخيفاً إن رفضته (وهنا تماماً يكمن الفخ). بعد أن تتقبل حضرتك الأمر y بفترة ستبدأ هي بأمرٍ آخر z بحيث أنه أشدّ من y لكنه ما زال أخف من x. ربما ستحاول أنت في البداية أن تعترض من مبدأ أنك صحيح تقبلت y لكن هذا لا يعني أن تتقبل z أيضاً، لكنها ستتمكن هنا بسهولة من إقناعك لأنك مسبقاً وافقت على y! فالأمر برمّته بقي مجرد خطوة واحدة صغيرة فقط بعد y. وهكذا حتى الوصول إلى الأمر x.
أي يتم تقليص عملية الإقناع إلى عمليات إقناع أصغر محصلتها بالنهاية تفضي إلى الإقناع بالأمر الأساسي الكبير (أي ما يدعى في المعلوماتية بأسلوب Divide-and-conquer).
فلذلك عليك أن تكون يقظاً تماماً ولا تفكر فقط في الأمر الذي تتم مناقشته ومحاولة إقناعك به حالياً في هذه اللحظة وإنما عليك أن تضرب نظرةً ثاقبة وتحاول استنباط الأهداف الأخرى التي قد تتبع لاحقاً


Immer wieder diskutiert Deutschland das, was in den anderen Ländern schon seit Jahren diskutiert worden war und seither bei denen sogar ein Standardfall geworden ist!

Der liebe Sebastian lebt anscheinend immer noch im letzten Jahrhundert! Hat noch nicht von Two-Factor-Authentication und intelligenten Algorithmen zur automatischen Erkennung von potenziellen Betrügen … etc gehört und führt dummerweise das Argument ein, dass Kartenzahlung heutzutage in Deutschland nicht überall weit und breit verfügbar ist, als Argument dagegen, diese genaue Situation zu ändern!!

Meine Meinung:

– Alle Geschäfte sollen gesetzgeberisch verpflichtet werden, den Kunden immer Karten- bzw. Mobilzahlung zu ermöglichen.

– Einen Maxbetrag (zwischen 500 und 1000 Euro) für Barzahlungen soll es geben.

– Bargeld soll nicht komplett abgeschafft werden; Für anonyme Zahlungen oder damit die Kinder mit Bargeld umgehen lernen, aber mehr als der Maxbetrag soll es überhaupt nicht möglich sein, anonym oder von den Kindern ausgegeben zu werden.


رتابة الديكتاتور

بحس بشار الأسد عديم المشاعر حتى تجاه حالو؛ أنو هالحالة من السبات والسكوت والرتابة القاتلة يلي كان ممشي البلد عليها ما كانت مملّة بالنسبة إلو طيب!؟
أنو صح عايش على أنه الرئيس القائد المفدى الأعلى المظفر السيد الواحد الأوحد يلي طامس ولاغي أي شكل من أشكال الاختلاف أو التنوع أو الأخد والعطى أو التفاعل بالبلد على كل المستويات وبكل المجالات، طيب خيو مو مشاننا بس من منطلق اجتماعي وسيكولوجي بحت أين المتعة بهيك وضع بالنسبة إلك!؟
ألم يكن مملاً بحق الجحيم؟
اي والله الواحد إذا كان عم يلعب لعبة رح يمل إذا كان دائماً دائماً دائماً هوي الربحان! الخسارة بتعطي معنى ونكهة للربح ومتعة للعبة!

Being too abstract is boring

Abstract wishes, opinions and promises are very boring and totally meaningless.

For example, a Syrian who just keeps telling his wishes of peace for Syria and stops at that point. He wishes peace, just peace as an abstract concept, and stops at that point and omits all the details and the evolutions of the situation in Syria! Well, everyone claims to seek peace, no one would say I’m against the peace!

Or that one who keeps talking about equality among all humans so in general as an abstract concept and omits all the social, cultural, biological and mental diversities between people! Well, of course people are equal in the basics, but they are not the same! People are different and societies are different!

Therefore, being so general tends to be quite equal to say nothing! Expressing wishes and opinions in such an abstract level is too loose exactly as if nothing has been expressed at all!


نعم لاستثناء المدخنين من التأمين الصحي الأساسي

هلا دائماً كل أنواع الضمانات والتأمينات الأساسية بتكون ما عدا سوء الاستعمال .. أنو إذا سيارة فيها كفالة بس خربت لأنو أنا تركت فريم الإيد عالي وسقتها أو عبيتها ديزل بدل بنزين مثلاً فالشركة مو مسؤولة عن هالشي! إذا عامل تأمين أساسي على بيت ورحت أنا بإيدي جبت بلدوزر وهديتو فالتأمين ما رح يدفعلي شي! إذا عامل تأمين على كمبيوتر وأنا بإيدي وصلتلو كهربا 500 فولت بدل 220 فالتأمين ما بيشمل هالحكي!
طيب على هالمبدأ، ليش المدخنين مشمولين بالتأمين الصحي الأساسي!؟
حدا هوي بإيدو عم يأذي حالو وبعدين المطلوب من المجتمع أنو يداويه بنفس الأولوية تبع إذا حدا تاني فعلاً لسبب خارجي مرض!

كرة قدم

وضع كرة القدم معي متل وضع أفلام الكرتون لما كنت صغير .. من فترة لتانية بقرر أطبّع حالي (من الفعل “يطبّع”، أي يجعله طبيعياً) وأعمل متل هالعالم وأقعد أحضر، بس والله مافي أي إحساس بالانفعال أو الاندماج أو التشويق وأكتر من عشر دقايق مابقدر أتحمل!

يعني الواحد لما يحضر برنامج أو فلم أو مسلسل بيكون عم يحضر ليشوف يلي رح ينحكى أو يصير، في شعور انتظار لأحداث القصة يلي عم يعرضها المسلسل أو الفلم أو شعور الانتظار للي رح ينحكى بالبرنامج .. بينما بالمباراة مافي! هني هالعشرين شخص عم يركضوا ورا هالدائرة ليحطوها بهالمستطيل! وهي هية منذ فجر التاريخ ولهلا كل مرة نفس العملية الروتينية المملة ماغيرها! أنو معروفة أحداثها مافي أي شي يدعو للترقّب! أنو وين المتعة بحضور نفس القصة ألف مرة بدون لا كلل ولا ملل!!
متل إذا في مسلسل دائماً فيه شخصيتين، واحد منن ممكن يدق التاني قتلة وممكن لاء، وبينزل منو ألف جزء، بكل جزء بس بيعطوا الشخصيتين أسماء جديدة وممكن تتغير طريقة القتلة! بس القصة نفسها ومارح تتغير! ما المغزى من متابعة المسلسل للجزء الألف، لا وبكل شوق وحماس كمان !!

(ملاحظة: كونان يستثنى طبعاً من الحديث عن أفلام الكرتون)

مخبر الانترنت

في سوريا كان عنا بالجامعة ما يسمى بمخبر الانترنت وهو عبارة عن غرفة فيها كمبيوترات موصولة بالانترنت لمن يرغب من الطلاب باعتبار أن الانترنت غير موصول إلى كل الكمبيوترات في المخابر الأخرى وباعتبار أن المخابر الأخرى أصلاً مقفلة وغير مسموح للطلاب الدخول إليها واستعمالها دائماً. طبعاً عدا عن وجوب تسجيل اسم الطالب ورقمه الجامعي والتوقيت والحاسب الذي استعمله عندما يستعمل أحد حواسيب مخبر الانترنت، كانت أيضاً إحدى مهام المهندس المدعو “مدير الشبكة” في الجامعة الدخول من وقت لآخر باستعمال برامج مراقبة سطح المكتب والتلصص على نشاط المستخدم على الشبكة! (نعم عزيزي القارئ، فهمت صحيح، أنت قاعد بأمان الله عم تقرا شي أو عم تنزل شي أو عم تكتب رسالة أو عم تحكي مع حدا عالانترنت وفي حدا بالغرفة يلي جنبك فاتح كمبيوترو وسطح المكتب تبعك طالع عندو وعم يتفرج عليه)
(هذا الفعل عقوبته السجن قطعاً في أي دولة نصف محترمة)
المضحك أن المهندس نفسه يعمل حالياً في أحد مواقع المسؤولية في “الإدارة الذاتية” ويحاضر عن حريات الشعوب!