Skip to content

Instantly share code, notes, and snippets.

View TianyiShi2001's full-sized avatar
🔬

Tianyi Shi TianyiShi2001

🔬
View GitHub Profile
@TianyiShi2001
TianyiShi2001 / lyrics-163.sh
Created March 13, 2021 22:16
Download .lrc lyrics from NetEase Music
USAGE="USAGE: ${0##*/} music_id [output_file] "
[[ $# -lt 1 || $1 == '-h' || $1 == '--help' ]] && echo $USAGE && exit 1
ID=$1
OUT=${2:-_lyric.lrc}
curl http://music.163.com/api/song/media?id=${ID} |
jq -r '.lyric' |
sed 's/\\n/\n/g' |
sed 's/\\"/"/g' >${OUT}
@TianyiShi2001
TianyiShi2001 / fail.sh
Created October 24, 2020 12:16
quasar-electron failure
quasar create foo # with default options + npm
cd foo
quasar mode add electron
npm i node-id3
echo "import * as NodeID3 from 'node-id3'
export function logId3 (buffer) {
console.log(NodeID3.read(buffer))
}" > src/utils.js
@TianyiShi2001
TianyiShi2001 / first-time.sh
Last active October 17, 2020 10:32
Sync all PDB files
# setting up directories
mkdir pdb && cd pdb && mkdir zipped unzipped && cd zipped
# download all compressed PDB files (this takes a long time!)
wget ftp://ftp.wwpdb.org/pub/pdb/data/structures/all/pdb/*
# unzip all PDB files
cd .. && find . -name "*.gz" | xargs -I{} -n1 bash -c '
src={}; dst=unzipped/${basename ${src%*.gz}}
[ -f $dst ] && echo "skip" || (gzcat -cv $src > $dst)'
@TianyiShi2001
TianyiShi2001 / naive_matrix_benchmark.rs
Created September 18, 2020 17:22
Performance of naive matrices in rust
#![feature(test)]
extern crate test;
use test::Bencher;
#[bench]
fn bench_vec_of_vec(b: &mut Bencher) {
let (m, n) = (10000, 10000);
let mut matrix = vec![vec![0u8; n]; m];
import timeit
from Bio import Align
seq1 = "ATCTAACTATTCCCTGTGCCTTATGGGGGCCTGCGCTATCTGCCTGT\
CGAACCATAGGACTCGCGCCAGCGCGCAGGCTTGGATCGAGGTGAAATCTCCGGGGCCTAAGACCACGAGCGTCTGGCG\
TCTTGGCTAACCCCCCTACATGCTGTTATAGACAATCAGTGGAAACCCGGTGCCAGGGGGTGGAGTGACCTTAAGTCAG\
GGACGATATTAATCGGAAGGAGTATTCAACGCAATGAAGCCGCAGGGTTGGCGTGGGAATGGTGCTTCTGTCCAAGCAG\
GTAAGGGCATGAGGCCGCAACCGTCCCCCAAGCGTACAGGGTGCACTTTGCAACGATTTCGGAGTCCGGAGACTCGCTG\
TTTTCGAAATTTGCGCTCAAGGGCGGGTATTGAACCAGGCTTACGCCCAAGAACGTAGCAAGGTGACTCAAACAAGGTA\
CATCTTGCCCGCGTTTCACACGAATCAAGTTGGAGGTTATGGAGCATAGTAACACGTGGGCGGCCAGTGGTCGGTTGCT\