B-Teck!

お仕事からゲームまで幅広く

【GAM/Python】Google Ad ManagerのAPIをPythonで叩く

サービスアカウント作成と連携 サービスアカウント作成 Google Ad Managerとサービスアカウントの連携 Google Ad Manager APIを利用する Python用ライブラリを読み込む サービスアカウント作成と連携 Google Ad Manager APIを利用するためにはOAuth2認証が必…

【Python】ResponderのQuickStartをやった

仕事で Responderを使うことになったのでQuick Startをやった。 合間に自分用のメモを書きつつ実装したので、メモがてら残しておく。 Responder導入 前の記事 でPoetryを導入しているので、下記コマンドを実行して導入した。 $ poetry add responder 実装 # …

【Python】pyenv + Poetry + IntelliJでPythonの開発環境を構築する

pyenvインストール Poetryインストール IntelliJでPoetryを使う Mac向けです。 brewはインストール済みの前提で進めます。 pyenvインストール macOS Catalina zsh環境でpyenvを使ってPython 3.9.0をインストール コマンド - Poetry documentation (日本語訳)…

【Kotlin/PDFBox】Kotlinを使ってPDFBoxでPDFを編集する

前置き ライブラリ読み込み PDFを操作する 既存のPDFを読み込む 新しいPDFを生成する 保存する ページを複製する PDFを編集する 文字を書く フォントを指定する 文字列の高さ・幅を取得する 左寄せで文字を書く 折返しのある文字を書く 右寄せで文字を書く …

【Kotlin】画像をリサイズしたり切り抜いたりする

仕事で、URLから画像を取得していい感じにリサイズする要件があったため調べました。 備忘のためメモを書いておきます。 URLから画像の取得 画像の加工 BufferedImageへ変換 画像のリサイズ 画像の切り抜き 画像の保存 (おまけ)画像をいい感じにリサイズして…

【Go】Goに入門してる話

背景 何回か書いてるけど、1月から3ヶ月間業務上の都合でGoを書いている。 付け焼き刃でもいいからサラッと知識を入れる必要があり、色々調べたり聞いて回ったりした。 その記録をまとめておく 参照したもの A Tour of Go A Tour of Go 定番のやつ。 公式の…

【Go】interfaceのダックタイピング難しかった

背景 調べた内容 ダックタイピングとは Goのinterfaceがなんでわからなかったか なんとなくわかったのでコードを書いてみる 感想 参考資料 背景 最近Goに入門したんだけれど、JavaやKotlinなどを主に書いていた自分にとってGoのinterfaceはなかなかしっくり…

【雑記】思考の限界になるとお粥のようなコンテンツしか摂取できなくなる

年が明けてから、従来の業務に加えてJavaのAPIをGo+Lambdaに移植するお仕事をしています。 GoもLambdaも未経験で何もわからんと思いながらやってますが、なんやかんやで3週間で12APIくらい移植できたので頑張ったなと思います。 昨年の年始と違って、フォロ…

【Lambda】SAMのテンプレートに複数のHTTPメソッドを書く

前置き 1つのLambdaでGET、PUT、POST、DELETEを扱いたい要件があったけど何もわからなかったので。 実装 この辺りを参考に、Events配下に対応するMethodのEventを追加してやればよかった。 AWS SAMテンプレートでREST APIの複数メソッドをひとつのLambdaに統…

【雑記】2020年振り返り

大晦日なので2020年の振り返りです。 初めての挫折 外部記憶サービスの変遷 メモアプリの変更 クラウドブックマークの変更 生活リズムの変化 身体機能の衰え 将来への不安 設計への興味 ブログのPV おわりに 初めての挫折 今年の1月から5月頃まで、普段携わ…

【GAS】Drive上のファイルの共有リンクを取得し、ダイアログからダウンロードさせる

前回の続きです blog.beatdjam.com ファイルの共有リンクを取得する ファイルオブジェクトを取得する 共有リンクを取得する アクセストークンをつける(任意) HTMLテンプレートを利用してDL用のダイアログを作る メニューに処理起動メニューを追加する Templa…

【Android】syntheticsのサポートが終了するのでViewBindingを使ってみた

なぜViewBindingの導入をしたか Syntheticsがなぜ非推奨になったのか ViewBindingの利点 導入 参考にしたサイト なぜViewBindingの導入をしたか Kotlin Android ExtentionのSyntheticsなどが非推奨になったため。 Kotlin Android Extensions の未来 Syntheti…

緩い完了条件と開始時間を決めると習慣化に成功する(かも)

習慣を続けるのは難しい とことん低い目標を立てる やり始める時間を決める 続けるために 習慣を続けるのは難しい 英語を勉強する、毎日運動をする、机の周りを片付ける… この記事を読んでいる方にもいろいろな習慣があると思います。 こういう習慣、きちん…

【Notion】無理やりトグルできるタグフィルタを作ってる

Notionを使い始めました。 意気揚々と情報を集約してるんですけど、 NotionのSortやFilterってViewに紐づく概念で、検索結果を絞り込みたい〜みたいな用途で使うものではなさそうなんですよね。 でも、自分の用途的には特定のジャンルに絞り込んで一覧を眺め…

【Maven】WebDAVで構築されたMaven Repositoryへのデプロイメモ

WebDAVとは? ライブラリをWebDAVにデプロイする wagon-webdav デプロイするリポジトリを設定する WebDAVとは? mavenのプライベートリポジトリを構築するのによく使われていたっぽいプロトコル。 Webサーバーでファイル共有と編集ができる技術や機能のこと…

【雑記】ネットサービスと機械によって生かされるタスク管理

すべてのタスクをTodoistに集約する タスク化のフロー Google Calendarとの連携 すべての行動をTogglで計測する Chrome拡張 アプリ(Android) すべての場面で通知する おわりに 突然ですが、私はとてつもなく怠惰です。 やらなければならないことをやろうとす…

【Vim】vimtutorを終わらせたので内容を自分用にメモ

Vim

基本操作 カーソルの移動はhjkl(左下上右)で行う vimの起動は vim {ファイル名} vimの終了 変更を破棄 :q! 変更を保存 :wq テキストの追加 i/I 挿入モード/行末から挿入モード a/A 追加モード/行頭から追加モード o/O 下の行を追加して挿入モード/上の業を追…

【Kotlin】範囲同士の重なりの有無を判定する

2つの期間が重なり合うかどうかを判定する。 - こせきの技術日記 によると、 始点2 <= 終点1 && 始点1 <= 終点2 で網羅できるらしい。 雑にいくつかテスト書いてみたけどたしかに大丈夫だった。すごい。 以下余談。 雑に書いたコードをコミットして適当にブ…

【ゲーム】バイオショックインフィニット 1999モード攻略メモ

バイオショックインフィニットのトロコンのために、1999モードのダラービル縛りプレイをした。 今更プレイする人も少ないと思うけど、備忘も込めて記録しておく。 基本的にプレイ済み前提です。 基本戦略 前提 装備 武器 ビガー ギア 帽子 上着 パンツ ブー…

【Firebase】Realtime DatabaseとCloud Firestoreの料金体系などを調べた

アプリ上でリアルタイム情報を取り扱う要件があり、手頃な選択肢としてRealtime DatabaseとCloud Firestoreが上がったので、検討のため料金体系や制限を調べてみた。 前提知識がほぼなかったこともあり、散らばっていたドキュメントを追いかけるのが大変だっ…

【雑記】知識を得ることと世界への認知の解像度を上げること

唐突ですが、私の趣味は情報収集です。 常になんらかの情報をインプットしていたいし、なにかをしていて気になることがあればすぐに調べて、そのアウトラインを知りたい。 ある種「情報中毒」とでも言うべき欲求が根底に流れていて、認知するあらゆるものに…

【GAS】SpreadSheetの表をjsonに変換し、ZIPで固めてGoogleDriveに配置する

静的なjsonを作成して配信する必要があり、メンテの楽なスプレッドシートの表から作れないかと思ってやってみたメモです。 JSONを作る Zipに圧縮する blobsをつくる ZIPをつくる Driveに配置する フォルダを取得する ファイルを作成する まとめ JSONを作る G…

【Kotlin/MySQL】MyBatisでレコードを取得するメモ

Kotlin + MyBatisを利用してMySQLに接続し、レコードの情報を取得するまでのメモです。 CRUD一通りとか動的クエリとかは別で書きます。 環境 ディレクトリ構成 ライブラリ読み込み MyBatisの設定ファイルを作成します SQLを定義する 実装 取得するエンティテ…

【Android/Kotlin】端末内に保存されたQRコードから情報を読み取る

下記の記事の続きです blog.beatdjam.com 端末内の画像一覧から任意の画像を取得するためのIntentを作成 取得したUrlからBitmap形式でファイルを取得 Bitmapファイルを入力としてQRコードの情報を読み取る 端末組み込みの画像一覧からQRコードの画像を取得し…

【Java/Kotlin】resourcesディレクトリにあるファイルを読む

ルートからの絶対パスで指定したリソースファイルを取得するスニペット。 IOExceptionはそのまま外に投げているので必要があればcatchしてリカバリーまで書くこと。 Java Kotlin Java import java.io.BufferedReader; import java.io.IOException; import ja…

【タスク管理】Todoist、Kanbanist、(+Toggl)を利用して快適にタスク管理をする

※Todoistの有料プランで利用できる機能を前提とした記事です。 私は基本的に日常のタスクをTodoistで管理しています。 Todoistは一覧性の高さがある一方で、タスクの状態管理が難しいという問題がありました。 とはいえ、Trello等複数のツールを並行利用する…

【雑記】30歳になりました。

前置き 去年の誕生日の記事(【雑記】29歳になりました。 - B-Teck!) を踏襲して適当に書こうと思います。 30代に突入しました。 この文章を書いているのはまだ前日なのでタイトルはある意味嘘なんですが。 ひとまずのところ30代を無事に迎えることができてい…

【雑記】だめでした

近況 4~6月期の目標立てるような状態でもないのですが、なんか投げっぱなしもあれなのでとりあえず現状報告の記事を書きました。 うちの会社も世間の流れに漏れず在宅勤務になっているんですが、通勤の辛さがなくなるのはいいですね。 仕事の辛さは無くなり…

【MySQL/Docker】docker-composeでMySQL5.7のイメージを作成して接続する備忘録

参考にした記事 環境 最終的なプロジェクトのディレクトリ構成例(MySQLの場合) インストール Dockerfileを作成する docker-compose.ymlを作成する my.cnf(MySQLの設定ファイル)を作成する initdb.d配下配置したスクリプトでDBの初期化を行う 初期化処理でテ…

【本/DDD】 わかる! ドメイン駆動設計~もちこちゃんの大冒険~読書メモ

booth.pm こちらの本を読みました。 ストーリー仕立てでドメイン駆動設計の戦略的な部分を平易に説明してくれる良本で、DDDの用語にとっつきづらさを感じていた自分にはちょうどよい内容でした。 戦術的な部分については一切書かれていないので注意。 次は「…