Skip to content

Instantly share code, notes, and snippets.

View strickvl's full-sized avatar

Alex Strick van Linschoten strickvl

View GitHub Profile
@strickvl
strickvl / socratic_mentor.txt
Created January 26, 2025 13:20
A Claude style to encourage discussion and learning rather than just being given the answer
You are a patient technical mentor who uses Socratic dialogue to help the human develop deep understanding. Your approach is:
CORE PRINCIPLES:
- Never give direct answers immediately. Instead, help the human discover the answer through guided exploration
- Draw connections to the human's background in historical research and field work
- Use concrete examples and metaphors, especially relating to physical systems the human understands
- Encourage systematic thinking and hypothesis testing
RESPONSE STRUCTURE:
1. First, ask the human to explain their current understanding of the concept
@strickvl
strickvl / README.md
Last active February 5, 2025 16:04
Youtube Summarisation tampermonkey script

YouTube Video Summarizer

A Tampermonkey userscript that adds AI-powered video summarization capabilities to YouTube using GPT-4 and Claude models.

CleanShot 2025-01-19 at 17 27 06@2x

Updated recently to give better / more detailed summaries for the 'detailed summaries' button

Features

@strickvl
strickvl / storygraph-tampermonkey.md
Last active January 12, 2025 16:41
A Tampermonkey extension to enhance your Storygraph recommendations

StoryGraph Personalization Enhancer

A Tampermonkey script that transforms StoryGraph's book recommendations into more engaging, conversational suggestions using GPT-4.

CleanShot 2025-01-12 at 17 40 37

What does it do?

This script enhances StoryGraph's personalized book recommendations by:

  • Converting formal, analytical recommendations into conversational, friend-like suggestions
@strickvl
strickvl / log.txt
Created August 27, 2023 05:38
logs output when upgrading pydantic to v2 for `zenml-io/zenml` using https://github.com/pydantic/bump-pydantic
An error happened on src/zenml/integrations/seldon/secret_schemas/secret_schemas.py.
Traceback (most recent call last):
File "/Users/strickvl/.pyenv/versions/z-test/lib/python3.9/site-packages/bump_pydantic/main.py", line 185, in run_codemods
output_tree = transformer.transform_module(input_tree)
File "/Users/strickvl/.pyenv/versions/z-test/lib/python3.9/site-packages/libcst/codemod/_codemod.py", line 108, in transform_module
return self.transform_module_impl(tree_with_metadata)
File "/Users/strickvl/.pyenv/versions/z-test/lib/python3.9/site-packages/libcst/codemod/_visitor.py", line 32, in transform_module_impl
return tree.visit(self)
File "/Users/strickvl/.pyenv/versions/z-test/lib/python3.9/site-packages/libcst/_nodes/module.py", line 90, in visit
result = super(Module, self).visit(visitor)
# ------------- ALL THIS REQUIRED FOR PAPERSPACE -------------
FROM python:3.9.10
ENV APP_HOME /
WORKDIR $APP_HOME
# Install base utilities
RUN apt-get update && \
# apt-get install -y build-essentials && \
apt-get install -y wget && \
@strickvl
strickvl / deploy-stack.js
Created April 27, 2021 23:15
this is called by deploy.js
const { createEkkoEnvironment } = require('./createEkkoEnvironment');
const cdk = require('@aws-cdk/core');
const s3 = require('@aws-cdk/aws-s3');
const ec2 = require("@aws-cdk/aws-ec2");
const ecs = require("@aws-cdk/aws-ecs");
const ecs_patterns = require("@aws-cdk/aws-ecs-patterns");
const { RedisCluster } = require("./redis");
const { randomBytes } = require("crypto");
@strickvl
strickvl / deploy.js
Created April 27, 2021 23:14
this is called by cdk deploy
#!/usr/bin/env node
const cdk = require('@aws-cdk/core');
const { EkkoStack, SharedResources } = require('../lib/deploy-stack');
// A construct which represents the entire CDK app
class EkkoApp extends cdk.App {
constructor() {
super();
@strickvl
strickvl / ajaxPractice.html
Last active December 10, 2020 13:01
Sample page to practice AJAX requests, handlebars and handling asynchronous requests
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/handlebars@latest/dist/handlebars.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
function selectRandomCatFacts(facts, number) {
let arr = [];
for (let i = 1; i <= number; i += 1) {
let randomIndex = Math.floor(Math.random() * facts.length);
arr.push(facts[randomIndex]);
@strickvl
strickvl / fixLaunchSchoolTitles.md
Created December 5, 2020 10:23
How to fix the titles of (most) Launch School webpages

How to fix the titles of (most) Launch School webpages

TL;DR: install this script to auto-correct the text assigned to the <title> tag on Launch School study pages

I use bookmarking sites like Pinboard, Notado and Instapaper a lot from within my browser. These sites usually auto-populate metadata, including the title of the page that is being saved or added to their internal database.

Unfortunately, Launch School pages all have the same identical <title> tag applied to them: "Launch School - An Online School for Software Engineers". This makes finding the precise page you need at a subsequent date pretty difficult. All the pages have the same name and the URLs are random character strings so those don't help either.

Now that I'm towards the end of the Core syllabus, I have learned about the DOM, and this enabled me to write a very simple script that runs while I'm using the Launch School website.

function sameChars(str1, str2) {
let str1Arr = str1.split('');
let str2Arr = str2.split('');
for (let index = 0; index < str2Arr.length; index += 1) {
let char = str2Arr[index];
if (!str1.includes(char)) return false;
}
return true;
}