Skip to main content

Common

CAPTCHA - Completely Automated Public Turing test to tell Computers and Humans Apart

API - Application Programming Interface - A set of subroutine definitions, protocols, and tools for building application software

AJAX - Asynchronous JavaScript and XML - Web applications can send and retrieve data from a server asynchronously without interfering with the display and behavior of the existing page.

  • SCM - Source Control Management
  • FTU - First Time Use
  • SHA - Secure Hash
  • JSX - Javascript XML

Accessibility ARIA - Accessible Rich Internet Applications

Defines different front-end methodologies that make web content accessible for disabled people who access the web with Assistive Technologies (AT), such as screen readers.

BOM - Browser Object Model

A browser specific convention referring to all the objects exposed by the web browser. Unlike DOM, there is no standard for implementation and no strict definition, so browser vendors are free to implement the BOM in any way they wish.

CTA - Call-To-Action

A CTA is a message directed to users or prospective customers to take an immediate action.

DOM - Document Object Model

An API for HTML and XML documents, used by browsers to render these documents. The DOM specifies the logical structure of a document, and represents it as a node tree in which nodes are objects that represent different parts of the document.

MIME - Multipurpose Internet Mail Extensions

An Internet standard that extends the format of email to support:

  • Text in character sets other than ASCII
  • Non-text attachments: audio, video, images, application programs, etc.
  • Message bodies with multiple parts
  • Header information in non-ASCII character sets

ORM - Object-Relational Mapping

A technique that lets us query and manipulate data from a database using an object-oriented paradigm.

SOAP - Simple Object Access Protocol

A messaging protocol specification for exchanging structured information in the implementation of web services in computer networks. SOAP allows processes running on disparate operating systems (such as Windows and Linux) to communicate using XML. Since web protocols like HTTP are installed and running on all operating systems, SOAP allows clients to invoke web services and receive responses independent of language and platforms.

mebiByte / kibibyte / gibibyte

A mebibyte is a unit of data storage that equals 2 to the 20th power, or 1,048,576 bytes.

While a megabyte can be estimated as 10^6 or 1,000,000 bytes, a mebibyte is exactly 1,048,576 bytes. This is to avoid the ambiguity associated with the size of megabytes. A mebibyte is 1,024 kibibytes and precedes the gibibyte unit of measurement.

GB vs GiB: So What is the Difference? At its most basic level, one GB is defined as 1000³ (1,000,000,000) bytes and one GiB as 1024³ (1,073,741,824) bytes. That means one GB equals 0.93 GiB.

YK38 Problem

The Year 2038 problem(also called Y2038, Epochalypse, Y2k38, or Unix Y2K) relates to representing time in many digital systems as the number of seconds passed since 00:00:00 UTC on 1 January 1970 and storing it as a signed 32-bit integer. Such implementations cannot encode times after 03:14:07 UTC on 19 January 2038. Similar to the Y2K problem, the Year 2038 problem is caused by insufficient capacity used to represent time.

Epoch Time / Unix Time

Unix time(also known asEpoch time, POSIX time, seconds since the Epoch, orUNIX Epoch time) is a system for describing a point in time. It is the number of seconds that have elapsed since theUnix epoch, minus leap seconds; the Unix epoch is 00:00:00 UTC on 1 January 1970 (an arbitrary date); leap seconds are ignored, with a leap second having the same Unix time as the second before it, and every day is treated as if it contains exactly86400seconds.Due to this treatment Unix time is not a true representation of UTC.

It should also be pointed out that this point in time technically does not change no matter where you are located on the globe. This is very useful to computer systems for tracking and sorting dated information in dynamic and distributed applications both online and client side. The reason why Unix timestamps are used by many webmasters is because they can represent all time zones at once.

https://en.wikipedia.org/wiki/Unix_time

https://www.epochconverter.com

https://everytimezone.com

Time - ISO 8601

ISO 8601 Data elements and interchange formats -- Information interchange -- Representation of dates and times is an international standard covering the exchange of date- and time-related data. It was issued by the International Organization for Standardization (ISO) and was first published in 1988. The purpose of this standard is to provide an unambiguous and well-defined method of representing dates and times, so as to avoid misinterpretation of numeric representations of dates and times, particularly when data is transferred between countries with different conventions for writing numeric dates and times.

General Principles

  • Date and time values are ordered from the largest to smallest unit of time: year, month (or week), day, hour, minute, second, and fraction of second. The lexicographical order of the representation thus corresponds to chronological order, except for date representations involving negative years or time offset. This allows dates to be naturally sorted by, for example, file systems.
  • Each date and time value has a fixed number of digits that must be padded with leading zeros.
  • Representations can be done in one of two formats-- a basic format with a minimal number of separators or an extended format with separators added to enhance human readability.The standard notes that "The basic format should be avoided in plain text."The separator used between date values (year, month, week, and day) is the hyphen, while the colon is used as the separator between time values (hours, minutes, and seconds). For example, the 6th day of the 1st month of the year 2009 may be written as"2009-01-06"in the extended format or simply as "20090106" in the basic format without ambiguity.
  • For reduced precision, any number of values may be dropped from any of the date and time representations, but in the order from the least to the most significant. For example, "2004-05" is a valid ISO 8601 date, which indicates May (the fifth month) 2004. This format will never represent the 5th day of an unspecified month in 2004, nor will it represent a time-span extending from 2004 into 2005.
  • If necessary for a particular application, the standard supports the addition of a decimal fraction to the smallest time value in the representation.

https://en.wikipedia.org/wiki/ISO_8601

IEC Prefixes

FactorNameSymbolOriginDerivation
2^10^kibiKikilobinary: (2^10^)^1^kilo: (10^3^)^1^
2^20^mebiMimegabinary: (2^10^)^2^mega: (10^3^)^2^
2^30^gibiGigigabinary: (2^10^)^3^giga: (10^3^)^3^
2^40^tebiTiterabinary: (2^10^)^4^tera: (10^3^)^4^
2^50^pebiPipetabinary: (2^10^)^5^peta: (10^3^)^5^
2^60^exbiEiexabinary: (2^10^)^6^exa: (10^3^)^6^

https://physics.nist.gov/cuu/Units/binary.html

shim in computing means application compatibility workaround

IMP Coding Snippets

Sweep Line Algorithm (Find intersection of two lines) - Using 1d range search - smarty

Parameterization - https://www.toptal.com/python/python-parameterized-design-patterns

https://slate.com/technology/2019/10/consequential-computer-code-software-history.html

https://medium.com/the-atlantic/the-coming-software-apocalypse-4ffb43f3b288$1

https://github.com/RockstarLang/rockstar

The Art of Code - Dylan Beattie

MongoDB Database Skills (Sia Cheap Thrills Parody) - YouTube

https://blog.codinghorror.com/new-programming-jargon

Typosquatting

https://medium.com/@williambengtson/python-typosquatting-for-fun-not-profit-99869579c35d

Three-way comparison Operator (SpaceShip Operator < = >)

In computer science, a three-way comparison takes two values A and B belonging to a type with a total order and determines whether A < B, A = B, or A > B in a single operation, in accordance with the mathematical law of trichotomy.

https://en.wikipedia.org/wiki/Three-way_comparison

FP64, FP32, FP16, BFloat16, TF32 (Floating Points)

https://medium.com/@moocaholic/fp64-fp32-fp16-bfloat16-tf32-and-other-members-of-the-zoo-a1ca7897d407

Valid Emails

Can You Validate These Emails? - YouTube

Zawinski's Law

"Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can." (related:Greenspun's tenth rule - "any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.")

Moore's Law

The observation that the number of transistors in a dense integrated circuit doubles approximately every two years.

Eroom's Law

Eroom's law is the observation that drug discovery is becoming slower and more expensive over time, despite improvements in technology (such as high-throughput screening, biotechnology, combinatorial chemistry, and computational drug design), a trend first observed in the 1980s. The cost of developing a new drug roughly doubles every nine years (inflation-adjusted).In order to highlight the contrast with the exponential advancements of other forms of technology (such as transistors) over time, the law was deliberately spelled as Moore's law spelled backwards.

Software also getting slower with improved processors because developers are writing inefficient code.

Haitz's law

Haitz's law is an observation and forecast about the steady improvement, over many years, of light-emitting diodes (LEDs).

It claims that every decade, the cost per lumen (unit of useful light emitted) falls by a factor of 10, and the amount of light generated per LED package increases by a factor of 20, for a given wavelength (color) of light. It is considered the LED counterpart to Moore's law, which states that the number of transistors in a given integrated circuit doubles every 18 to 24 months. Both laws rely on the process optimization of the production of semiconductor devices.

Haitz's law - Wikipedia

Dennard scaling

In semiconductor electronicsDennard scaling, also known as MOSFET scaling, is a scaling law which states roughly that, as transistors get smaller, their power density stays constant, so that the power use stays in proportion with area; both voltage and current scale (downward) with length. The law, originally formulated for MOSFETs, is based on a 1974 paper co-authored by Robert H. Dennard, after whom it is named.

Dennard scaling - Wikipedia

Metcalfe's Law

The value of a telecommunications network is proportional to the square of the number of connected users of the system...Within the context of social networks, many, including Metcalfe himself, have proposed modified models using (n× logn) proportionality rather than n^2 proportionality.

Clarke's Third Law

Any sufficiently advanced technology is indistinguishable from magic.