Skip to content

Instantly share code, notes, and snippets.

View nonchris's full-sized avatar
👀
Why isn't it moving?

Chris G nonchris

👀
Why isn't it moving?
View GitHub Profile
@nonchris
nonchris / AI-Workshop-Konzept.md
Last active July 12, 2024 08:09
Konzept für einen viertägigen Workshop zum Thema AI-Tools (für Beginner)

Konzept für einen viertägigen Workshop zum Thema AI-Tools

Der Workshop richtet sich an Beginner:innen und geht nicht auf technische Deails ein. Er fokussiert sich auf die Nutzung und das Verständnis von AI-Tools

  • Ausgearbeitet für ein Alter 10-13 Jahre.
  • Pro Tag ca. 3h Arbietszeit
  • Der Workshop wurde als etwas zu schnell bewertet, was aber nicht zwingend am Stoff lag.

Meta:

Um schnell Logins, Aufgaben oder ähnliches gut lesbar an die Tafel zu werfen, kann eine online version von Screen Message genutzt werden. Eine Version davon ist z.B. sm.nomeata.de.

Eine Zusammenfassung der genutzten Tools plus kurze Anleitung wo notwendig befindet sich hier (für die Teilnehmer:innen als Zusammenfassung für Zuhause konzipiert)

@nonchris
nonchris / how-to-ai-tools-sk.md
Last active July 11, 2024 10:49
The tools we used during our workshop

You can find the latest version online in this gist.
(If you're already online, don't be confused, this is for offline copies).

BetterGPT

To use BetterGPT you need an API Key from OpenAI.
You can find a tutorial on how to create an API key here.
An API Key should be treated like a password, don't share it, don't put it in public code.

Note

You need a valid creditcard and pay upfront (at least $5 at the time of writing).

@nonchris
nonchris / text-to-speech-gui-openai.py
Last active July 11, 2024 10:36
Simple Text to Speech GUI for OpenAI's API written in Python
"""
This is a very unclean, quick hack for educational purposes.
It allows you to interact with open ai's TTS backend via the API.
You can choose between all their voices.
Note: This code has a few known bugs/ issues:
* It uses a deprecated function for writing the audio
* The filename field for the user is just ignored.
* The API key is hardcoded in the software and can be extracted easily
* You can't paste using right click (ctrl+v works though)
@nonchris
nonchris / format_execption.py
Created November 4, 2023 22:32
might be helpful for someone
# might be useful for someone - but traceback.format_exc() is honestly better
# but this version gives at least some understanding of whats happening
def exec_location_info():
exc_type, exc_value, exc_traceback = sys.exc_info()
traceback_details = tb.extract_tb(exc_traceback, limit=None)
last_call = traceback_details[-1]
rel_path = os.path.relpath(last_call.filename)
@nonchris
nonchris / enter_shikari_wallpaper.py
Last active March 27, 2024 04:26
a customizable script to create the logo of 'enter: shikari' as wallpaper using matplotlib (and python)
import matplotlib.pyplot as plt
import matplotlib.patches as patches
import numpy as np
file_name = "wallpaper" # base name of the file
dpi = 650 # resolution
edge_color = "#FF0050" # color of the logo
scale_factor = 1.55 # how large shall it be?
landscape = True # landscape or portrait mode?
@nonchris
nonchris / things_i_did.py
Last active August 18, 2023 11:43
things i did
"""
Things I did and always look up how I did it.
Feel free to suggest futher things you always forget :)
"""
# date format
f'{datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S")}'
# current directory
f"{os.getcwd()}/{file_name}"
@nonchris
nonchris / minecraft-python-installation.txt
Last active August 3, 2023 13:30
Installationsanweisungen für den "python mit minecraft" Workshop
- Python programmieren mit Minecraft:
Anleitung siehe https://jandahlhaus.de/python-programmieren-mit-minecraft/
Falls das installierte Java zu neu ist und nicht unterstützt wird, bitte JDK11 von hier installieren:
https://adoptium.net/de/temurin/archive
Angepasst von Christoph Geron, Jun 2022
Änderungen:
- Anweisungen für Pycharm (Community Edition) install hinzugefügt
- Installation der python pakete in venv
- Jupyter erfordert und Anleitung zum Install und Test hinzugefügt
@nonchris
nonchris / telegram-inline-bot.py
Created June 9, 2022 23:21
A very simple inline telegram bot as starting point (it tells you the time if you ask)
# pip3 install python-telegram-bot~=13.12
import datetime as dt
import os
from telegram import Bot, Update, CallbackQuery, InlineKeyboardMarkup, InlineKeyboardButton
from telegram.ext import Updater, CallbackQueryHandler, CallbackContext, MessageHandler, Filters
# inline keyboard sent with messages
main_menu = InlineKeyboardMarkup([[InlineKeyboardButton('time', callback_data='time'),
@nonchris
nonchris / reaction-role-fix.py
Created March 29, 2022 20:30
A quick d.py fix if your reaction role bot f*cked up
import discord
from discord.ext import commands
intents = discord.Intents.all()
bot = commands.Bot(command_prefix="!", intents=intents)
@bot.event
async def on_ready():
@nonchris
nonchris / extract-nb.sh
Last active January 5, 2023 17:37
Extract notebooks from nested zip-files
#!/usr/bin/env zsh
# tool to collect jupyter notebooks from the "download all zip from eCampus"
# options
# -z: zip folder with extracted content at the end
# -p: persitent -> unzipped folder not be deleted
# -t [file]: include full content of other zip in target folder (e.g. the tutor zip)
# positional arguments (needed to be positioned after optional ones)