Skip to content

Instantly share code, notes, and snippets.

View AloofBuddha's full-sized avatar

Benjamin Cohen AloofBuddha

View GitHub Profile
@AloofBuddha
AloofBuddha / associations.md
Last active February 27, 2024 08:25
Sequelize Relationships: hasOne vs belongsTo
@AloofBuddha
AloofBuddha / useEffect.jsx
Created August 2, 2023 19:11
useEffect for video-store-pt-3
useEffect(() => {
async function omdbAPIRequest() {
const requests = inventory.map((inventoryItem) => {
return axios.get(
`http://www.omdbapi.com/?i=${inventoryItem.id}&apikey=7f539340`
);
});
const responses = await Promise.allSettled(requests);
const responseDatas = responses.map((response) => response.value.data);
@AloofBuddha
AloofBuddha / sequelize-cheat-sheet.md
Created September 26, 2016 14:28
Sequelize cheat sheet

Note: $> means command line input

Dependencies

Dependencies to use Sequelize $> npm install --save sequelize pg pg-hstore

Setup

Must create the DB first $> createdb my-music

@AloofBuddha
AloofBuddha / 1-pass-by-value.js
Last active June 7, 2023 16:17
Pass by value vs reference in JS
// primitives are 'passed by value' in JS
// meaning the value of the variable is copied over into a new local variable in the function
let n = 1;
function addOne(x) {
x += 1;
return x;
}

Sure, here's a programming assignment for teaching the basics of regular expressions in Javascript:

Programming Assignment: Regular Expressions in Javascript

In this assignment, you will be using regular expressions to validate and manipulate strings in Javascript.

Task 1: Validate Email Addresses

Create a function validateEmail(email) that takes an email address as input and returns true if the email address is valid and false otherwise. An email address is considered valid if it meets the following criteria:

@AloofBuddha
AloofBuddha / perms.js
Created December 16, 2022 16:44
Permutations in JavaScript
/**
* The main thing to see here is the 'optimal substructure' i.e.
* perms([1, 2, 3]) could benefit from first knowing the result of
* perms([1, 2]), which in turn could use perms([1]) as a starting point
* and our basest of cases would be perms([]) at which point we have a
* trivial problem (so was perms([1]) but I like to accoutn for empty).
*
* This points us to a helper function we are going to need, spread.
* spread will 'spread' a single value into all possible array positions
* at the previous level. So our logic is something like:
@AloofBuddha
AloofBuddha / markup-as-an-idea.md
Last active October 20, 2022 15:37
Markup as an idea

Markup as an idea

What is markup

markup is just the general idea that you can represent information as 'code' using a data structure.

so for example, JSON counts as a markup language:

{
@AloofBuddha
AloofBuddha / permutations.hs
Last active July 4, 2022 03:31
This program defines a functions "perms" in a number of different (but functionally equivalent) ways. "perms" takes as input a list (of *any* kind) and as output, returns a list of all possible permutations of that list.
import Data.List (inits, tails)
main :: IO ()
main = do
print $ perms [1..4]
print $ perms' "abcd"
print $ perms'' [Nothing, Just 1, Just 2, Just 3]
perms, perms', perms'' :: [a] -> [[a]]
@AloofBuddha
AloofBuddha / sequelize-belongs-to-example.js
Created September 29, 2016 15:15
An explanation of how to define a One-to-One relationship in Sequelize and different ways of create the linked objects
// Product Model definition, called 'product' and associated with table 'products'
var Product = this.sequelize.define('product', {
title: Sequelize.STRING
});
// User Model definition, called 'user' and associated with table 'users'
var User = this.sequelize.define('user', {
first_name: Sequelize.STRING,
last_name: Sequelize.STRING
});
@AloofBuddha
AloofBuddha / closure-tutorial.md
Last active September 18, 2018 18:55
Closure tutorial

Global Scope, Inner Scope and Closures

This tutorial aims to cover the topics of

  • Global Scope
  • Inner Scope (or sometimes called Function Scope)
  • and Closures

in the JavaScript language.