Skip to content

Instantly share code, notes, and snippets.

View debedb's full-sized avatar

Gregory Golberg debedb

View GitHub Profile
@debedb
debedb / ec2-memory-cloudwatch.sh
Last active April 5, 2024 23:52
cloudwatch-agent-sucks
#!/bin/bash
# set -x
inst_id=$(ec2metadata --instance-id)
while :
do
used_megs=$(free --mega | awk 'NR!=1 {print $3}' | head -1)
aws cloudwatch put-metric-data \
--region us-west-2 \
@debedb
debedb / subarrays_equal_sum.py
Created May 9, 2023 02:50
Find subarrays with equal sum
def findEqualParts(remArr, half, s, d=0):
for i in range(len(remArr)):
remArr2 = remArr[:]
diff = s - remArr2[i]
# print(f"Entering findEqualParts({remArr}, {half}, {s}; diff is {diff}, i is {i}, d is {d}")
if diff > 0:
half2 = half[:]
half2.append(remArr2[i])
s2 = s - remArr[i]
del remArr2[i]
@debedb
debedb / get-cloud-resources.sh
Created March 21, 2023 19:53
Primitive resource gathering from GCP
#!/bin/bash
# Parse the output and generate a Deployment Manager configuration file
echo "resources:" > config0.yaml
echo "outputs:" > outputs0.yaml
# List all Cloud Run services and their attributes
services=$(gcloud run services list --format="csv(NAME, REGION, IMAGE)" --quiet | tail -n+2)
@debedb
debedb / faafco.go
Last active November 25, 2022 21:26
Go: functions as first-class objects, variadic functions and generics
package main
import "fmt"
func plus[T int | float32](i1 T, i2 T) T {
return i1 + i2
}
func minus[T int | float32](i1 T, i2 T) T {
return i1 - i2
@debedb
debedb / channels.go
Last active November 25, 2022 21:05
Go: Goroutines and channels
package main
import (
"fmt"
"strconv"
"sync"
"sync/atomic"
)
// No deadlock on all sleeping, etc.
@debedb
debedb / context.go
Created November 25, 2022 20:32
Go: Contexts
package main
import (
"context"
"fmt"
"sync"
"time"
)
func withCancel() {
@debedb
debedb / slices.go
Last active November 25, 2022 09:57
Go: Arrays vs slices
package main
import (
"fmt"
)
func slices2() {
slice1 := []string{"Ferrari", "Honda", "Ford"}
slice2 := slice1[:]
fmt.Println("Slice1: ", slice1)
@debedb
debedb / ptrrecv.go
Created November 25, 2022 09:46
Go: Pointer receivers
package main
import "fmt"
type _struct struct {
field string
}
func (s *_struct) doStuff(msg string) {
s.field = msg
@debedb
debedb / Generic usage of Google Ads API using reflection
Created June 26, 2021 00:06
Generic usage of Google Ads API using reflection
import java.lang.reflect.AccessibleObject;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import com.google.ads.googleads.v6.services.GoogleAdsVersion;
import com.google.api.gax.core.BackgroundResource;
import com.google.protobuf.AbstractMessage;