About OTC CatchUp
OTC CatchUps are weekly informal sessions involving project showcases and technical discussions. They are held every Saturday from 10:30 PM IST. Join in!. For all summaries, please visit catchup.ourtech.community/summary. |
OTC CatchUp #164
Date: 30-12-2023
Duration: 3 hrs 50 mins
Topics Discussed
-
Harsh Kapadia shared Most 16-year-olds don’t have servers in their rooms, which is a blog by a 16-year old who set up a Dell server, created and self-hosted a clone of Replit for his projects on the server, created and self-hosted a social media platform on the server with real users and a bunch of other projects.
-
Harsh Kapadia shared a few videos from Gamers Nexus, a hardware review channel he really likes.
-
Harsh Kapadia shared What is the difference between clang (and LLVM) and gcc/g++?
-
Buffer Overflow, Segmentation Faults and Exceptions
-
Kartik Soneji explained what a Buffer Overflow is and why every Buffer Overflow does not cause a Segmentation Fault.
-
A Buffer Overflow is essentially writing more data into a buffer than it was allocated for, leading to over-writing the data after the buffer in the program’s memory.
-
A Segmentation Fault is an Exception generated when a program tries to access a memory address that is outside the memory segment (process address space) allocated to it by the Operating System or when it does not have the permission to access that particular memory location.
-
A Buffer Overflow writes data beyond a buffer’s allocated memory and this can cause a Segmentation Fault (Segfault) if the buffer is located near the end of the memory space allocated to the process and the overflow tries to write to an address beyond the address space allocated to the process.
-
-
More information and examples for Buffer Overflow and Segmentation Faults.
-
-
Aditya Oberai shared his blog Embracing Aloneness, which goes into the difference between 'aloneness' and 'loneliness', and talks about learning to enjoy 'me, myself and I'.
-
Endianness
-
Aditya Oberai told us how the terms 'little-endian' and 'big-endian' originated from the famous Gulliver’s Travels story. This has been coined and explained in the original 137th Internet Engineering Note (IEN 137).
-
We talked about how it is important to know a system’s Endianness, because answers can differ based on the byte storage order, especially with pointer truncation and bitwise operations.
-
-
Kartik Soneji shared Fast Inverse Square Root — A Quake III Algorithm and Ramyak Mehra shared The Truth about the Fast Inverse Square Root on the N64.
-
Kartik Soneji told us the story of creation of MariaDB by forking MySQL just before Oracle acquired it.
-
Kartik Soneji told us how the C programming language got a Boolean datatype and the story behind the need for
stdbool.h
.-
C did not have a Boolean datatype till the C99 standard. It was added in C99, but was named as
_Bool
instead of the standardbool
to not break millions of existing C programs, because a lot of C programs had already made custom definitions forbool
in their programs and so addingbool
as a datatype would break those#define
declarations. -
To make
bool
available for newer programs, a header filestdbool.h
was created, that essentially definedbool
and_Bool
and thus allowed newer programs to usebool
as a datatype.
-
Meet Screenshot
For all summaries, please visit catchup.ourtech.community/summary. |
Want to improve the content of this page?
Want to get more involved? Learn how to contribute.
We rise by lifting others.
Kindness always wins.
Alone we can do so little; together we can do so much.