Skip to content

Instantly share code, notes, and snippets.

@firstspring1845
firstspring1845 / mandel.py
Created September 22, 2015 15:10
draw Mandelbrot set / requires PIL
import itertools
from PIL import Image
#def mandel(z, c):
# return z ** 2 + c
result = Image.new("L", (400, 400))
for r, i in itertools.product(xrange(400), repeat=2):
@firstspring1845
firstspring1845 / dd_progress.py
Last active August 29, 2015 14:27
ddの進捗表示してくれるやつ
import time, subprocess
args = ['dd', 'if=/mnt/hd/2015-05-05-raspbian-wheezy.img', 'of=/dev/sdf', 'bs=1M']
p = subprocess.Popen(args)
time.sleep(0.1)
while p.poll() == None:
time.sleep(0.1)
p.send_signal(10) #SIGUSR1
package net.firsp.sandbox;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
public class Sandbox {
public static <T> List<T> mergeList(List<T> a, List<T> b, Comparator<? super T> cmp) {
List<T> m = new ArrayList(a.size() + b.size());
int ap = 0;
@firstspring1845
firstspring1845 / quicksort.js
Created July 13, 2015 13:26
クイックソートです
function quicksort(arr){
if(arr.length < 2) return arr
var pivot = arr[Math.random() * arr.length >> 0]
var low = [], high = []
for(var i = 0; i < arr.length; i += 1){
if(arr[i] <= pivot) low.push(arr[i])
else high.push(arr[i])
}
if([low.length, high.length].indexOf(0) !== -1){
var ret = low.concat(high)
@firstspring1845
firstspring1845 / makemodule.md
Last active August 29, 2015 14:24
SLAXモジュール作成メモ
  • 適当なディレクトリ作る(AUFSの影響下だとマウントに失敗するのでいらないパーティション消すかイメージをloopマウントしておく、AUFSの仕様上のアレで最大容量による振り分けをするので数GB必要)
mount -t aufs -o remount,prepend:"さっき作った適当なディレクトリ",create=mfs aufs /

を実行(create=mfsの部分で最大容量依存振り分け指定、appendでブランチリストの末尾に追加)

  • モジュール化したいアッピのインストール
  • 必要ない変化を避けるためreboot -fで強制再起動
  • ディレクトリから必要のないファイルを削除しmksquashfsでモジュール化
@firstspring1845
firstspring1845 / base64.js
Last active August 29, 2015 14:22
Base64ライブラリ
function btoa(bin){
//Base64テーブル
//英(大|小)文字&数字&記号二種(+/)
var table = 'ABCDEFGHJIKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
var res = ''
while(bin.length !== 0){
//24bitごとに区切る
var chunk = bin.slice(0, 3)
var bits = 0
for(var i = 0; i < chunk.length; i += 1){
package net.firsp.twit
import com.sun.javafx.application.LauncherImpl
import com.sun.javafx.scene.control.skin.VirtualFlow
import javafx.application.Application
import javafx.application.Platform
import javafx.collections.FXCollections
import javafx.scene.Scene
import javafx.scene.control.IndexedCell
import javafx.scene.control.ListView
@firstspring1845
firstspring1845 / gist:09f2a5757527fdb10a76
Created April 10, 2015 12:17
status/453165414617321472みたいな引用をmikutterで開けるようになります
Message::Entity.addlinkrule(:status_quote, /status\/[0-9]*/){|s|
::Gtk::TimeLine.openurl("https://twitter.com/sex/" + s[:url])
}
package net.firsp.lib.packet;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import io.netty.buffer.ByteBuf;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import java.io.ByteArrayInputStream;
public class NBTMessage implements IMessage {
@firstspring1845
firstspring1845 / ChainableTag.java
Created January 29, 2015 14:46
メソッドチェーンできるNBTTagCompoundラッパー
package net.firsp.lib;
import net.minecraft.nbt.NBTBase;
import net.minecraft.nbt.NBTTagCompound;
public class ChainableTag {
NBTTagCompound nbt;
public ChainableTag(NBTTagCompound nbt) {