1def factorial(n):
 2    """
 3    Calculate the factorial of a non-negative integer.
 4    """
 5    if n == 0:
 6        return 1
 7    else:
 8        return n * factorial(n-1)
 9
10# Example usage:
11# print(factorial(5))

This Python function factorial(n) calculates the factorial of a given non-negative integer n recursively.

  • Base Case: If n is 0, it returns 1 (since 0! = 1).
  • Recursive Step: If n is greater than 0, it returns n multiplied by the factorial of n-1.

The example usage shows how to call the function with factorial(5), which would return 120.

Interval:
Knowledge:
Due:
Queue:

JavaScript: debounce helper

 1const debounce = (fn, wait) => {
 2  let t;
 3  return (...args) => {
 4    clearTimeout(t);
 5    t = setTimeout(() => fn(...args), wait);
 6  };
 7};
Interval:
Knowledge:
Due:
Queue:

Rust: read file

 1use std::fs;
 2fn main() {
 3    let text = fs::read_to_string("notes.txt").expect("read");
 4    println!("{}", text);
 5}
Interval:
Knowledge:
Due:
Queue:

Swift: map values

 1let values = [1,2,3]
 2let labels = values.map { n in
 3    "Item #\(n)"
 4}
 5print(labels)
Interval:
Knowledge:
Due:
Queue:

Ruby: inject sum

 1nums = [1, 2, 3]
 2sum = nums.inject(0) { |memo, n| memo + n }
 3puts sum
Interval:
Knowledge:
Due:
Queue:

Go: tiny HTTP server

 1http.HandleFunc("/", func(w, r) {
 2    w.Write([]byte("hi"))
 3})
 4log.Fatal(http.ListenAndServe(":8080", nil))
Interval:
Knowledge:
Due:
Queue:

PHP: named args

 1function greet(string $name, string $punct = !) {
 2    echo "Hello {$name}{$punct}";
 3}
 4
 5greet(punct: ?, name: Devs);
Interval:
Knowledge:
Due:
Queue:

Kotlin: null-safe length

 1val maybe: String? = System.getenv("USER")
 2val len = maybe?.length ?: 0
 3println("len = $len")
Interval:
Knowledge:
Due:
Queue:

C#: using declaration

 1using var client = new HttpClient();
 2var json = await client.GetStringAsync("/ping");
 3Console.WriteLine(json);
Interval:
Knowledge:
Due:
Queue:

Bash: loop args

 1#!/usr/bin/env bash
 2for arg in "$@"; do
 3  printf "arg=%s\n" "$arg"
 4done
Interval:
Knowledge:
Due:
Queue:

What is TDD?

Test-Driven Development

Interval:
Knowledge:
Due:
Queue:

What is Alpine.js?

A lightweight JavaScript framework

Interval:
Knowledge:
Due:
Queue:

What is Tailwind CSS?

A utility-first CSS framework

Interval:
Knowledge:
Due:
Queue:

What is SQLite?

A lightweight file-based database

Interval:
Knowledge:
Due:
Queue:

How to import in Python?

 1from this import that
Interval:
Knowledge:
Due:
Queue:

Python: reverse a list

 1data = [1, 2, 3]
 2for value in reversed(data):
 3    print(value)
Interval:
Knowledge:
Due:
Queue:

What is PHP?

A server-side scripting language

Interval:
Knowledge:
Due:
Queue:
selected