メモ2ブログ

メモtoウェブログ。旧ブログはこちら。 http://sakebook.blogspot.jp/

2022年を振り返って

毎度年を跨いでからになってます。 目標とか 英語 細々と続けています。周りでもDuolingoを始めている人が増えてきていてちょっと嬉しいです。 割とDuolingoのファンなので、イベントにも参加しました。 /「おかしな英語 美術館」開催のお知らせ\日本全国…

HomebrewをM1Macに移行する

最近メインPCをM1 Macに移行しました。移行アシスタントで移行しました。 support.apple.com その関係で、M1 Macで正しく動かせないものなどがあります。 Homebrewもその一つでした。 そのまま実行すると次のようなエラーになります。 Error: Cannot install…

2021年を振り返って

目標とか 英語 Duolingoは継続しています。毎日やらなくても継続日数をキープしてくれるアイテムなどもあるのですが、今は500日を超えました。全部のスキルレベルを5にあげると息巻いていたのですが、去年も触れたように破壊的な変更があり、色々更新されて…

スマホのキャプチャを扱いやすくするCLI「pbssc」を作った

久しぶりの更新です。 コードレビューや動作確認などでスマホ画面のキャプチャを貼り付けたくなることがあります。 そういう時に、シュッとキャプチャをとってClipboardに貼り付けられるツールを作りました。 github.com インストールはHomebrew経由で行えま…

2020年を振り返って

目標とか 英語 年始は本を読んだり洋書(絵本)に手を出してたのですが、わりと早い段階で途切れてしまっていました。しかしTwitterで知り合いが英語をコツコツ継続して勉強してるのを見て、自分もやらねば!と復活しました。 Duolingoというアプリで英語を…

Kotlin/JSでHeadless Chromeを使って画面をキャプチャしてSlackに投稿する

ちょっと利用したくなったのでKotlin 1.4のキャッチアップも兼ねて作りました。 環境は Kotlin 1.4.21 dukat 0.5.8-rc.3 Node 12 です こんな感じで任意のURLのキャプチャがSlackに投稿されるものです。 前回触った記事はこちら sakebook.hatenablog.com kot…

pub.dev用にcredentials.jsonを再取得する

pub.devにpackageを上げる際にはpub.devの認可が必要です。まだであればpublishする際にブラウザが立ち上がり、ローカルにcredentials.jsonが保持されます。 CIなどに組み込みたい場合、このcredentials.jsonを環境変数に渡します。そして、有効期限が切れた…

Flutter製AndroidアプリできちんとSplashを設定する

Pluginのマイグレーション作業をしてたら気になって調べたのでまとめます。 情報はFlutter v1.17.5のものです。 Splash Androidのときにまとめましたが、Flutterでも同じです。 sakebook.hatenablog.com Flutterの場合、公式にドキュメントが用意されており…

電動式昇降デスクを設置する上でのTips

電動式昇降デスクを導入しました。これまではIKEAのデスクを部屋に置いていました。 知ってる人はもう少ないかもですが、昔あったLivlisというあげたいものと欲しい人をつなげるサービスで頂いた思い出のあるものです(新卒で上京してきたときに頂いてそこか…

Gradleタスクでadbを実行してアプリを起動する

ちょいちょいターミナルからビルドしてアプリを立ち上げたりとかしたくなるときがあり、都度一発でできてなくて面倒なところがありました。 そうすればいいのかーって思ったのでメモと、ちょっと汎用的にしたものを共有。 こちら見かけたやつです app/build.…

Kotlin/JSでLINE Botを動かす

Kotlin/JSを扱う題材としてCloud FunctionsでLINE Botを動かしてみたのですが、前回の記事がモリモリになってしまうので導入と実践を分けました。今回が実践編です。 前回の記事はこちら sakebook.hatenablog.com 環境は次のとおりです Kotlin v1.3.72 dukat…

Kotlin/JSでCloud Functionsを動かす

最近Kotlin/JSを触ってます。 実はCloud FunctionsがまだJavaをサポートしていないのでKotlinでCloud Functionsを動かそうと思ったらJSに変換する必要があります。 DartでもJSに変換してCloud Functionsを動かしたことがあったので、同じ用に動かせるのでは…

dukatでKotlin/JSを快適にする

前回、Kotlinで気持ちよくJSのライブラリを利用するには、モジュールを作成してあげる必要があると書きました。 sakebook.hatenablog.com しかしこれをちゃんとやろうとすると、結構な手間になります。 定義して使い回しできるようにしている人がチラホラい…

Kotlin/JSことはじめ

なんでもKotlinで解決したいと思いがちの筆者です。 Kotlin/JSを触ってみたので動かし方などまとめます。 環境は Kotlin 1.3.61 Node 13.3.0 です Setup Gradle Plugin kotlin js プラグインを使います。 build.gradle.kts plugins { kotlin("js") version "…

dartdocでAPIドキュメントを作成する

Dartで書かれたプロジェクトであれば、 dartdoc でドキュメントが自動生成できます。 $ dartdoc 自分が作りたかった理由はPluginのscoreを上げたかったからなのですが、ローカルで試すに当たり、Dart自体の、Pluginには不要なドキュメントが生成されてしまい…

2019年を振り返って

目標とか ジム通い 1月から通い始めていたのですが、目標週2ペースで行きたかったのですが、結果的には週1ペースでした。 体調崩したり旅行に行っていたことを考えると、継続できていたのかなと思います。 競プロ AtCoderを取り組んでたのですが、継続できま…

Flutter for WebのプロジェクトをGitHub ActionsでFirebase Hostingにデプロイする

タイトルのまんまです。 FlutterとFirebaseのバージョンは次のとおりです。 $ flutter --version Flutter 1.10.14 • channel dev • https://github.com/flutter/flutter.git Framework • revision 1946fc4da0 (12 days ago) • 2019-10-07 15:23:31 -0700 Eng…

GitHub ActionsでFlutterのPluginをリリースできるActionをMarketplaceに公開した

FlutterでPluginを作りたいと思ったらPubに登録するのが一般的です。 もともとGitHub Actionsでリリースできるようにしていたのですが、Pluginに依らずやることは同じなのでAction化してMarketplaceに公開しました。 github.com Marketplaceに公開までにあた…

パッケージが統合されたFlutter for Webへのアップグレード

Flutter for Webのパッケージがflutterに統合されました。それに伴い既存のFlutter for Webのプロジェクトでアップグレードが必要になったのでその記録です。 Upgrading まだstableには来てないのでdevに向けて、webを有効にします。 $ flutter channel dev …

技術書典7にFitbit本の続編を出した

先日開催された技術書典7にサークル参加しました。サークル参加としては2回目で、技術書典5以来なので1年ぶりの参加でした。 前回の参加記事はこちら sakebook.hatenablog.com 事前準備(執筆編) 1年ぶりで、結構色々忘れていました。 次の記事を参考に環境を…

DartでCloud Functions for Firebaseを動かす

最近FlutterでDartを触っているので、Dartでなにかできればなと思いました。 ちょっとした処理をしたくなって、Cloud Functions for Firebaseが使えればなと思い調べたところ、DartをJavascriptにトランスパイルしてCloud Functionsで利用できるようにするPl…

Flutterで秘匿情報を扱う

最近Flutterを触ってます。 Gitなどに載せたくない情報の扱い方についてのメモ。2つの方法を取り上げます。 .env + flutter_dotenv flutter_dotenvを使います。pubspec.ymlに以下を追加して pubspec.yml dependencies: .. flutter_dotenv: ^2.0.1 .. flutter…

DockerHubでAutomated Buildsを使った時にDocker Tagがうまく設定できない

OpenSSLでファイルの暗号化/復号化をしたくてAlpineベースのDockerイメージを作成しました。 github.com ググったら同じようなものがあったのですが、OpenSSLのバージョンやCA証明書が古かったりで使いにくかったので作成しました。 どのバージョンのOpenSSL…

2018年を振り返って

すでに2019年が10%以上過ぎてますが、2018年の振り返りをまとめてなかったのでまとめておきます。 はじめに目標としてたことに対して振り返ります。 目標としてたこと 自炊の回数を増やす 12月から自炊を再開しました。相変わらずパスタ一辺倒です。振り返っ…

Node.jsを使ったアプリケーションのサンプル集にlernaを使うと便利だった

先日参加した技術書典でFitbitのClock Faceの作り方に関する本を出しました。サンプルコードを添えたのですが、そこで使ったlernaが今回のようなケースと相性が良いと感じたので紹介します。 今回のケース 1つのリポジトリに複数のNode.jsのアプリケーション…

技術書典5でFitbit本を出すまで

技術書典5にサークルとして初参加しました。やったことや思ったことをつらつらと書きます。 参加の経緯や意気込みはこちらです。 sakebook.hatenablog.com 執筆の流れ スケジュール感などはこちらの記事を参考にしました。 執筆はRe:VIEWで行いました。と言…

技術書典5にサークル(う14)として参加してFitbitのClock Faceに関する本を出します

タイトルの通りです。 2018/10/08に開催される技術書典5に、サークルとして参加します。 サークル概要 サークル名は「sakebook」で、配置は「う14」です。 内容は「FitbitのClock Faceの作り方について」です。 techbookfest.org どうして参加したのか 前回…

2017年を振り返って

2017年の目標 ブログを20回以上更新 未達 GoとかPythonとかでWeb APIみたいなの作ってアプリに組み込み 未達 ライブラリにPRを送る 未達 設計力を高める 未達 やばいですね。。 ブログを20回以上更新 記事数は12本でした。間隔が空いてる期間がありますが、…

続続・Androidアプリ開発を学生に教えた話

今までと同じく、TRUNKから講師の依頼があったので講師をしてきました。 過去の話はこちらです sakebook.hatenablog.com sakebook.hatenablog.com 進め方 週一で、一回あたり2~3時間の全8回のコースで、全体を通すとおよそ2ヶ月のコースとなり、今までで最長…

Kotlinの可変長引数とフォーマット

Kotlinの可変長引数とフォーマットを利用した置き換えで詰まったのでメモ 可変長引数 メソッドの引数として定義するときは vararg を付けます。 fun someMethod(vararg args: String) { args.forEach { println(it) } } someMethod("one") // ok someMethod(…