Skip to content

Instantly share code, notes, and snippets.

View kengonakajima's full-sized avatar
🏠
Working from home

Kengo Nakajima kengonakajima

🏠
Working from home
View GitHub Profile
@StreetStrider
StreetStrider / codes.c
Last active April 2, 2020 02:37
libuv error codes
XX( -1, UNKNOWN, "unknown error") \
XX( 0, OK, "success") \
XX( 1, EOF, "end of file") \
XX( 2, EADDRINFO, "getaddrinfo error") \
XX( 3, EACCES, "permission denied") \
XX( 4, EAGAIN, "resource temporarily unavailable") \
XX( 5, EADDRINUSE, "address already in use") \
XX( 6, EADDRNOTAVAIL, "address not available") \
XX( 7, EAFNOSUPPORT, "address family not supported") \
XX( 8, EALREADY, "connection already in progress") \
@gszauer
gszauer / rle.c
Created February 28, 2014 17:50
/*
* rle.c -- by David Henry
* last modification: dec. 28, 2004
*
* this code is free.
*
* cc -Wall -ansi rle.c -o $@
*/
#include <stdio.h>
@graywolf336
graywolf336 / BukkitSerialization.java
Last active May 15, 2025 11:29
Serialize and deserialize the player's inventory, including armor and content.
/**
* Converts the player inventory to a String array of Base64 strings. First string is the content and second string is the armor.
*
* @param playerInventory to turn into an array of strings.
* @return Array of strings: [ main content, armor content ]
* @throws IllegalStateException
*/
public static String[] playerInventoryToBase64(PlayerInventory playerInventory) throws IllegalStateException {
//get the main content part, this doesn't return the armor
String content = toBase64(playerInventory);
@tune
tune / gist:8119307
Created December 25, 2013 01:09
githubの2段階認証を有効にし、http・https経由の操作でPersonal Access Tokenを使う
# 私が考える安全なプログラムを書くために必要なこと
今も昔も「入力によって挙動が大幅に変わるAPI」が世の中には多数存在していて、プログラマが本来意図した挙動と異なる動作を引き起こしている。
- ファイルを開こうとしたらコマンドを実行できてしまったり
- CSSセレクタを書いてるつもりがHTMLタグを生成してしまったり
- SELECT文を発行するつもりがDELETE文を発行できてしまったり
こういったときに
- 入力値検証をしないと危険になる
@willurd
willurd / web-servers.md
Last active July 26, 2025 02:21
Big list of http static server one-liners

Each of these commands will run an ad hoc http static server in your current (or specified) directory, available at http://localhost:8000. Use this power wisely.

Discussion on reddit.

Python 2.x

$ python -m SimpleHTTPServer 8000
@snatchev
snatchev / libuv-tcp-client.c
Created March 27, 2013 16:55
a libuv evented tcp client
#include <stdio.h>
#include <uv.h>
static void on_close(uv_handle_t* handle);
static void on_connect(uv_connect_t* req, int status);
static void on_write(uv_write_t* req, int status);
static uv_loop_t *loop;
static uv_buf_t alloc_cb(uv_handle_t* handle, size_t size) {
@kenn
kenn / gist:5228906
Last active February 15, 2016 07:16
DigitalOcean per-core pricing

CPU Price Performance: DigitalOcean vs Linode

On DigitalOcean, as you go up the plan, you get higher per-core price as well.

https://www.digitalocean.com/pricing

$5 1 core     - $5/core
$10 1 core - $10/core
@frsyuki
frsyuki / article.md
Last active June 23, 2020 12:02
MessagePack for Ruby version 5

MessagePack for Ruby version 5

Today, I released the new version of MessagePack for Ruby!

Even faster

I rewrote all the code and achieved significant performance improvement, especially for serialization. I compared the new version to the old version (v4) using ruby-serializers benchmark, and the new version is faster for all data sets including Twitter, Image, Integers, Geo and 3D model.

@Jxck
Jxck / README.md
Created December 16, 2012 09:16
libuv TCP server/client sample

how to compile

$ gcc -g -Wall -I /path/to/libuv/include /path/to/libuv/uv.a -framework CoreServices server.c -o server
$ gcc -g -Wall -I /path/to/libuv/include /path/to/libuv/uv.a -framework CoreServices client.c -o client