Skip to content

Instantly share code, notes, and snippets.

@takezoux2
takezoux2 / Advertisement.tsx
Last active July 21, 2022 08:07
Next.jsでLinkコンポーネントのPrefetchで画面遷移した際にも正常にATSが読み込まれるようにする
import Head from 'next/head';
import Script from 'next/script';
import React from 'react';
// Scriptコンポーネントで定義すると、Prefetchされても重複でloadされなくなる
// dangerouslySetInnerHTMLは、描画のたびに実行されるため、通常Render時もPrefetch時でも呼び出される
const Advertisement: React.FC = () => {
// 表示のたびにIDが代わるようにする
const scriptId = "adreset" + new Date().getTime()
return (
@takezoux2
takezoux2 / cant_decide_spec.scala
Last active March 20, 2022 06:12
ScalaMatsuri2022 第2回ひどいコード選手権
/**
* 通知設定を取得し、ユーザーに通知を送るかどうかを判断するプログラム
*/
object Main {
def main(args: Array[String]): Unit = {
// フラグ立ってるのが通知してOKなのかどうかがもはやわからない
getConfig("User1") match {
case Some(config) if config.flag => {
[
{
"PolicyName": "FMSServiceRolePolicy",
"Arn": "arn:aws:iam::aws:policy/aws-service-role/FMSServiceRolePolicy"
},
{
"PolicyName": "AmazonSQSFullAccess",
"Arn": "arn:aws:iam::aws:policy/AmazonSQSFullAccess"
},
{
@takezoux2
takezoux2 / DataflowLogs.txt
Created April 10, 2020 05:01
Dataflow Log for sample program
2020-04-10 13:40:22.901 JSTExecuting operation saveAsTextFile@{WordCount.scala:25}:1/WriteFiles/WriteUnshardedBundlesToTempFiles/GroupUnwritten/Create
2020-04-10 13:40:22.939 JSTExecuting operation saveAsTextFile@{WordCount.scala:25}:1/WriteFiles/FinalizeTempFileBundles/Reshuffle.ViaRandomKey/Reshuffle/GroupByKey/Create
2020-04-10 13:40:22.941 JSTStarting worker pool setup.
2020-04-10 13:40:22.975 JSTStarting 1 workers in us-central1-c...
2020-04-10 13:40:22.975 JSTExecuting operation countByValue@{WordCount.scala:23}:1/pApply:1/Combine.perKey(Count)/GroupByKey/Create
2020-04-10 13:40:23.025 JSTFinished operation saveAsTextFile@{WordCount.scala:25}:1/WriteFiles/WriteUnshardedBundlesToTempFiles/GroupUnwritten/Create
2020-04-10 13:40:23.041 JSTFinished operation countByValue@{WordCount.scala:23}:1/pApply:1/Combine.perKey(Count)/GroupByKey/Create
2020-04-10 13:40:23.041 JSTFinished operation saveAsTextFile@{WordCount.scala:25}:1/WriteFiles/FinalizeTempFileBundles/Reshuffle.ViaRandomKey/Reshuffle/GroupByKey/Crea
@takezoux2
takezoux2 / Main.scala
Last active February 1, 2019 09:33
Adのウォーターフォールとヘッダービディングでどれくらい収益性が変わるかのシミュレーター
import scala.util._
// ウォーターフォールとヘッダービディングの収益性の違いのシミュレーター
object Main {
def main(args: Array[String]): Unit = {
/*val r = new Random()
println((0 to 10000).count(i => Math.abs(r.nextGaussian()) < 1.96))*/
@takezoux2
takezoux2 / CallCacheMacro.scala
Created August 1, 2016 14:37
メソッドの呼び出し結果をキャッシュするMacro
import java.util.concurrent.ConcurrentHashMap
import scala.collection.JavaConverters._
import scala.concurrent.Future
import scala.reflect.macros.blackbox.Context
import scala.language.experimental.macros
/**
*
* メッソドの呼び出しをキャッシュし、一回しか実行されないようにする機能を提供するためのマクロ
メインキャラ数 声優
15 花澤香菜
14 M・A・O
13 佐倉綾音
13 沢城みゆき
12 小澤亜李
11 内田真礼
11 小松未可子
10 金元寿子
10 東山奈央
出演数 声優
30 M・A・O
25 堀江由衣
24 悠木碧
23 茅野愛衣
22 早見沙織
22 日笠陽子
22 村中知
21 沢城みゆき
20 上田麗奈
@takezoux2
takezoux2 / CaseClassExtractor.scala
Created September 18, 2013 07:24
Scala の case classのコンストラクターを取得して、デフォルト値とかをごにょごにょするサンプルです。 CaseClassExtractorが、汎用クラスで SimpleMapExtractorが、Map[String,Any]をcase classに変換しているサンプルです。
import scala.reflect.runtime.universe._
import scala.reflect._
/**
*
* User: takeshita
* DateTime: 13/09/18 11:39
*/
@takezoux2
takezoux2 / 選択オブジェクトをPNGで保存.js
Created August 22, 2013 06:10
Illustratorで、選択しているオブジェクトをPNG画像として保存するスクリプト。
var doc = app.activeDocument;
var sels = doc.selection;
function saveAsPNG( doc , filename){
var exportOptions = new ExportOptionsPNG24();
var type = ExportType.PNG24;
var fileSpec = new File(filename);