Skip to content

Instantly share code, notes, and snippets.

View o0101's full-sized avatar
🏖️
Netscaping

Cris o0101

🏖️
Netscaping
View GitHub Profile
to check if the server works - https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice
stun:
stun.l.google.com:19302,
stun1.l.google.com:19302,
stun2.l.google.com:19302,
stun3.l.google.com:19302,
stun4.l.google.com:19302,
stun.ekiga.net,
stun.ideasip.com,
@o0101
o0101 / README.md
Last active November 10, 2023 09:37
Implementing Protected Members in JavaScript by Hacking Symbols and Private Fields

Implementing Protected Members in JavaScript Classes

Introduction

In many object-oriented languages, the concept of protected members allows properties and methods to be accessible within the class they are defined, as well as by subclasses. JavaScript, however, does not natively support protected members. This article introduces a novel approach to simulate protected access in JavaScript classes using symbols and private fields.

The Challenge

JavaScript provides private fields, but they are not accessible to any derived classes. This limitation means that developers cannot use private fields to directly implement protected members, which are a staple in many other object-oriented languages.

One Solution

The solution involves using symbols as keys for protected properties and methods, ensuring that only the class and its subclasses have access to them. This is achieved by:

@o0101
o0101 / base.js
Last active November 10, 2023 09:37
Simple Custom Element Base Class With Neat Implicit Templating
{
const $ = Symbol(`[[state]]`);
class Base extends HTMLElement {
static get observedAttributes() {
return ['state'];
}
constructor(state) {
super(state);
@o0101
o0101 / !WITH_LOCK.md
Last active November 10, 2023 09:37
with_lock: A simple Bash decorator function for concurrency control

with_lock

Simplify Bash Locking: Your Decorator for Safe Scripting

Hey, scripter! Need to make your Bash functions play nice in the concurrency sandbox? You're in luck!

with_lock is your go-to decorator. It ensures specified functions run one at a time, even across multiple script instances. 🤖

Caveats

  • It's mostly FIFO (first in, first out), but occasionally things get a bit mixed. 🤷‍♀️
@o0101
o0101 / IDEA.md
Last active September 16, 2023 04:19
Adaptive Dynamic Prompt - a prompt that creates its own prompt for the next conversation you use it in

Use a templated prompt, and get ChatGPT to rewrite the prompt over time to include summaries of its aggregated knowledge. So the prompt includes the instruction to, and the conclusion fo the session, rewrite the prompt using the latest knowledge.

For example, the templated prompt includes a growing list of key entities relevant to the topic at and: for instance, key people you encountered in your day to day. As more entities are added, their detail summaries will have to be more condensed. It's possible that a model would even invent a representation to get around the limits of human language.

So it's an adaptive dynamic prompt that aims to capture the best of ChatGPT's intellignece.

We call it: smart context.

Perhaps it can even be used on dumber models to boost their perforamnce. The idea is like recursive improvement, and should converge in the limit to the optimum intelligence output of the system.

@o0101
o0101 / win98.html
Created January 24, 2023 16:19 — forked from camthesaxman/win98.html
Windows 98 Simulator
<html>
<head>
<title>Windows 98</title>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://unpkg.com/98.css">
<style>
/* Disable image filtering */
img {
image-rendering: optimizeSpeed; /* STOP SMOOTHING, GIVE ME SPEED */
@o0101
o0101 / web_htop.sh
Created January 3, 2023 04:23 — forked from stefanocudini/web_htop.sh
web colored interface for htop
#!/bin/bash
# requirements: apt install nmap htop aha
# (aha is ANSI color to HTML converter)
ncat -k -l -p 9999 -c "echo 'HTTP/1.1 200 OK\nContent-type: text/html\nconnection: close\\n'; echo q | htop | aha --black --line-fix"
@o0101
o0101 / LICENSE.md
Created December 30, 2022 10:01 — forked from sj26/LICENSE.md
Bash retry function

This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit

@o0101
o0101 / typeclass-poc.js
Last active March 24, 2022 15:22
Very simple JavaScript type signatures and checking with pseudo-decorator syntax using tagged-template literals and computed property names
const Table = {};
let Id = 0;
class TypeClass {
constructor() {
const funcs = Object.getOwnPropertyNames(this.__proto__);
for( const funcName of funcs ) {
if (typeof this[funcName] === 'function' ) {
const typeSignature = Table[funcName];
@o0101
o0101 / proxy-wss.js
Last active March 1, 2022 03:32
Simple proxy for a Websocket endpoint
// requires
// npm i --save express cookie-parser ws
// node built-in imports
import fs from 'fs';
import os from 'os';
import path from 'path';
import https from 'https';
import crypto from 'crypto';
// 3rd-party NPM imports