Skip to content

Instantly share code, notes, and snippets.

@cookie-s
cookie-s / bq2json.rb
Last active April 15, 2022 17:54
BigQueryのschemaが少しわかりやすくなるくん
# ruby bq2json.rb <(bq show --format json 'project:dataset.table') | gron
require 'json'
schema = JSON.parse(IO.binread(ARGV.shift))['schema']
def dfs obj
res = {}
obj['fields'].map do |obj|
case obj['type']
require 'curses'
progs = [
'-.+',
'----[---->+<]>--.',
'--[--->+<]>.++++.------.-[--->+<]>--.+++++[->+++<]>.-.---------.+++++++++++++..---.+++.[-->+<]>++++.+[-->+<]>+++.[--->++<]>.+++.------------.--.--[--->+<]>-.-----------.',
'++++++.-.[----->++<]>++.+[--->+<]>+++.++++++++++.-------------.+.+++[->+++<]>++.-[--->++<]>-.----[->+++<]>-.++++++++++++..----.[-->+<]>++.-----------..-[--->++<]>--.',
'-------------.++++++++++++.++++.++[->+++<]>.[--->+<]>----.+.++[->+++<]>.+++++++.+++++.[----->++<]>++.--[-->+++++<]>.---------.[--->+<]>---.[++>---<]>+.-[--->++<]>--.++[++>---<]>+.',
'---[->++<]>....+[--->+++++<]>.[--->++<]>---.++++.+[--->+<]>.+++++++++++.------------.-[--->+<]>-.--------.--------.+++++++++.++++++.[++>---<]>.--[--->+<]>-.++++++++++++..----.--.----.',
'+[--->+<]>.--.---[->++++<]>-.-.++++[->+++<]>+.[--->++<]>-----.-[->++<]>.[-->+<]>+.',
FROM alpine:3.12.1
RUN apk update && \
apk upgrade && \
apk add --no-cache \
curl \
git \
neovim \
&& \
rm -rf /var/cache/apk/*
@cookie-s
cookie-s / 01_mega.rb
Last active December 6, 2019 10:54
CTFZone 2019 Quals writeup - M394Dr1V3 cr4cKM3 https://cookies.hatenablog.jp/entry/2019/12/03/041650
require 'awesome_print'
puts <<EOS
from z3 import *
s = Solver()
EOS
newv = ->{
ctr=0
->{
// https://api.twitter.com/1.1/search/universal.json?q=tweenq
{
"metadata": {
"cursor": "TWEET-170606166982930432-299822566774808577"
},
"modules": [
{
"status": {
"data": {
"contributors": null,
@cookie-s
cookie-s / rk-f.c
Created May 14, 2018 19:13
Runge-Kutta-Fehlberg
#include <stdio.h>
#include <math.h>
double f(double t, double x, double y, double ix) {
const double k = 1.0;
const double a = 1.0;
const double c = 2.0;
const double D = 0.5;
return k * (a*x / (1 + a*x + c*ix)) - D * y;
}
#include<stdio.h>
#include<math.h>
double f_ddy(double x, double y, double dy) {
return -3.0 * dy - 2.0 * y + cos(x);
}
double f_dy(double x, double y, double dy) {
return dy;
}
#![feature(rustc_private)]
extern crate rand;
use rand::Rng;
use std::ops::{Add, Sub};
#[derive(Clone, Copy, Debug)]
struct Pt {
x : f64,
y : f64,

Keybase proof

I hereby claim:

  • I am cookie-s on github.
  • I am kcz146 (https://keybase.io/kcz146) on keybase.
  • I have a public key ASDm9xycQonpoHta2bepn5lRu7YD1gFK0PzJulxDVvayVgo

To claim this, I am signing this object:

@cookie-s
cookie-s / .lvimrc
Last active December 14, 2016 14:29
testasm
let g:quickrun_config['asm'] = {
\ 'exec' : './testasm.sh %s'
\ }