Skip to content

Instantly share code, notes, and snippets.

View mike-neck's full-sized avatar
🏠
Working from home

mike_neck mike-neck

🏠
Working from home
View GitHub Profile
@mike-neck
mike-neck / generate-random-alnum-string.sh
Created May 23, 2024 22:42
ランダム文字列を生成するシェルスクリプト
#!/usr/bin/env bash
function generateRandomAlNumString() {
local chars=($(echo {a..z} {A..Z} {0..9}));
local string=()
local index
local loopIndex
for loopIndex in {1..16}; do
index="$(( RANDOM % 62 ))"
index="$(( index + 1 ))"
@mike-neck
mike-neck / gdp.groovy
Created February 22, 2024 05:35
日本国民の(一人当たりGDPの)偏差値は60を超えるのか確認するスクリプト
@Grab('org.jsoup:jsoup:1.17.2')
import org.jsoup.*
import groovy.transform.*
@ToString
@EqualsAndHashCode
@Sortable(includes = ['gdpPerPerson'], reversed = true)
class Gdp implements Iterable<Long> {
final int country
@mike-neck
mike-neck / test.md
Last active October 19, 2023 02:33

Test

test

2023-10-19T11:22:33

time

@mike-neck
mike-neck / bash-substitution.md
Last active March 18, 2023 00:42
bash わからん

bash の文字列置換

1.置換

  • / 演算子を使う。
  • "${variable/pattern/substitution}" の形で指定する
  • pattern の部分にマッチした一番最初の場所だけが書き換えられる
  • / の後に / が続く場合は、 pattern にマッチする部分が全て書き換えられる。
@mike-neck
mike-neck / dic.json
Created February 8, 2023 05:27
Voicepeak のファイルたち
[
{
"sur": "OutOfMemoryError",
"pron": "アウトオブメモリーエラー",
"pos": "Japanese_Koyuumeishi_ippan",
"priority": 5,
"accentType": 9,
"lang": "ja"
},
{
@mike-neck
mike-neck / virtual-thread.md
Last active July 12, 2022 12:10
ヴァーチャルスレッド

VirtualThread のコードについてメモ

  • JVM がスケジューリングする仮想スレッド VirtualThread が Java 19 にてプレビューリリースされます
  • ここでは、 VirtualThread でどのようにタスクは中断・再開されるのかを焦点にコードを読んだまとめです
  • OpenJDK のタグ jdk-19+25(すでに結構古い)の Java のコード、 C++ のコードを追いかけていきます
  • C++ 読んだことがない(文法もわからない)、 JVM の基本的な構造(frame など)を理解してないのでよくわからない箇所がいくつもあります

import {Context} from "./Context"; // API のリクエスト先が格納されているオブジェクト
import * as pako from "pako"; // zlib を使えるようにするライブラリー
// javap サービスへのリクエストが成功して返ってきた javap の結果(複数ある)が格納されるオブジェクトの型
export type JavapSuccess = {
contents: JavapOutput[],
};
// javap の結果 ファイル名とその内容
export type JavapOutput = {
@mike-neck
mike-neck / aop.groovy
Last active November 24, 2020 04:53
Spring AOP(MethodInterceptor)
@Grab('spring-aop')
@Grab('aspectjrt')
@Grab('aspectjtools')
@Grab('aspectjweaver')
import groovy.util.logging.Slf4j
import java.lang.annotation.Retention
import java.lang.annotation.Target
@mike-neck
mike-neck / kotlin-daisuki-suki-suki.md
Last active October 28, 2020 11:26
集まれKotlin好き!Kotlin愛好会 vol.25 @オンライン - https://love-kotlin.connpass.com/event/192472/

誰?

  • もちだ(mike-neck)
  • 株式会社クオカードで Kotlin と TypeScript と Terraform と YAML 書いてる
  • JJUG CCC 2020 Fall(2020/11/7) で jq の話する - https://jjug.doorkeeper.jp/events/112842
    • Java の話は一切しない

ktfmt と Spotless

@Grab(group='io.jsonwebtoken', module='jjwt-api', version='0.11.2')
@Grab(group='io.jsonwebtoken', module='jjwt-impl', version='0.11.2')
@Grab(group='io.jsonwebtoken', module='jjwt-jackson', version='0.11.2')
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.ExpiredJwtException;
import io.jsonwebtoken.Jws;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Keys;
import io.jsonwebtoken.security.SignatureException;