きょこみのーと

技術に関係ないほうのブログ

clusterのserverについて(入門編)

これはcluster Advent Calendar 2019 17日目の記事です。 今回は、clusterでは実際どういう通信が行われているのかをいくつかピックアップして紹介していきたいと思います。

AnnictのAndroidアプリを久しぶりに機能追加などした(技術編)

だいぶ間が空いてしまったが、前回の続きで技術的な話を書いていきます。 Android開発久しぶりなのでリハビリって感じです。 kyokomi.hatenablog.com ライブラリ更新 久しぶりだったのでライブラリ等を全部最新にupdateしました com.android.support -> andr…

AnnictのAndroidアプリを久しぶりに機能追加などした

約2年くらい前につくって、作りっぱなしだったAnnictterを長い時を経て改修しました。 技術的なことやアプリの内容についてなど結構色々話したいこともあり長くなりそうなので、技術的な話は別記事をあとで書きます。

goa v3をそろそろ検証してみる

はじめに github.com 今回は以下について とりあえず触ってみた & 感想 Middlewareについて調査 Panic時の挙動とPanicをMiddlewareでハンドリングする とりあえずGetting Startedを参考に触ってみた https://goa.design/learn/getting-started/ 見ながらやっ…

Go言語による並行処理

Go言語による並行処理作者: Katherine Cox-Buday,山口能迪出版社/メーカー: オライリージャパン発売日: 2018/10/26メディア: 単行本(ソフトカバー)この商品を含むブログを見る 感想だけシュッと書きます。 今までなんとなく使ってたgoroutineやcontextのCa…

monorepoでCircleCIを使ってherokuへのdeployをする

はじめに かなり特殊な構成なので自分以外には役に立たないかもしれませんが... 個人開発のプロジェクトをmonorepoで開発しているのですが、apiサーバーがherokuなので単純にmasterをそのままherokuにpushするとめちゃ不要なファイルなどが含まれてしまうと…

ISUCON9予選にk02で参加して完全敗北しました #isucon

いつものメンバーでISUCONに参加して完全敗北...! いつもどおりGo書く人を担当。 最大スコアは3,120で、最終結果は fail 。 以下メンバーの感想。 alligatorswamp.hatenablog.com 事前にやったこと scrapboxに色々使いそうな記事をまとめたり ISUCON8予選の…

ISUCON8予選を突破しました!!!!!!!

k02というチームでISUCON8予選に参加し、予選を無事通過して本戦出場が確定しました。 感想と色々と良かった点や反省点をまとめようと思います。 やったこと 主にgolangの実装を改修を担当してた。 githubやgitまわりの設定 N+1の対応を何箇所か対応 reserva…

alfred-esa-workflowに検索結果から正規表現で文字列を抽出するコマンドを追加した

github.com 昔作ったこれに久しぶりに機能を追加しました。 何故作ったか? 日報に 良かったこと/悪かったこと/所感 などを毎日書いていて、2週間ごとの振り返りで漁ったりしてたんですが、いい感じに抽出したいな〜というモチベーションから機能追加しまし…

なんとなくEthereum入門してERC20トークンをテストネットに作成するまでやった雑メモ

ちょっと調査する機会があったので、自分メモ的な感じで残しておく。 ブロックチェーンやEthereumについての概要 堅牢なスマートコントラクト開発のためのブロックチェーン[技術]入門作者: 田篭照博出版社/メーカー: 技術評論社発売日: 2017/10/27メディア: …

AnnictのAndroidアプリをKotlinでつくった

Kotlinの入門がてら作ったのですが、リリースに至るまでの流れとか利用してるライブラリとかの話しをしようかなと思います。 play.google.com ざっくり以下の話しをしようと思います。 作ったものについて 開発期間について Kotlinについて 利用したライブラ…

2017年振り返り(技術編)

2018年を振り返るとき用にメモ書きを残すことにした。 Go 大体goaを使っていた swagger生成やController周りのコード生成が便利すぎ GAE/Goでやるときはechoとかを使ってた goaでもいいんだけど一人で開発してるので、別にswaggerが必要でもなかった なんか…

2017年を振り返る

今年もTwitterを遡って振り返ってる。そのため、いろいろなイベントを取りこぼしてるはず。 1月〜5月 ひたすらcluster.のロンチに向けて仕事してた気がする 5月にロンチしたが、初回のイベント人多すぎて爆死した panora.tokyo 6〜7月 SRPGをUnityで開発して…

毎週テキサス・ホールデムをやってエンジニア力を鍛える弊社の紹介

これはCluster,Inc. Advent Calendar 2017の第10日目の記事です。 弊社の会社紹介しようかなと思います。 弊社VRの会社なんですが、社内では毎週テキサス・ホールデムのポーカーをやっています。(全然VR関係ないです ) IVSのピッチコンテストLaunch Padと…

現場で役立つシステム設計の原則を読んだ

ざっくり説明すると、DDDの文脈にあるドメインモデルやドメインオブジェクトとかを意識してプログラミングとかやっていきましょうという感じ。 エリック・エヴァンスのDDD本は概念的な話やユビキタス言語とかをちゃんと定義してドメインモデルを作っていって…

goa勉強会 in 六本木一丁目でLTしてきましたので内容の補足など

istyle.connpass.com LTしてきました。色々学びあって楽しかったです。 会場提供のistyleさんありがとうございました。 少しだけ補足説明とexampleコードを書いたので紹介しようと思います。 LTした資料 speakerdeck.com 注意点 goとgoaについてすでにある程…

gormのCallbackをつかってexplain結果をログ出力する

はじめに explainは基本的に実装時に自分で叩いてると思いますが、dev環境とかそこそこデータとか利用頻度が高い環境で雑に垂れ流したいなーと思ってgormのDebug実装を眺めていたらCallbackという仕組みがあったので、それを使ってみました。 作ったもの git…

esaのAlfred WorkflowをGoで作りました

作ったもの github.com とりあえずtokenとチーム名を登録して記事を検索できるだけです。 注意点 ちなみに、esaのAPIは利用制限があるので検索しすぎにご注意ください https://docs.esa.io/posts/102#2-3-0 現時点では、ユーザ毎に15分間に75リクエストまで…

昔作ったgaego-initをglide対応した

github.com gaego-initとは以下のように、GAE/Goの開発環境をコマンド一発でgenerateするやつです。 $ gaego-init -app hoge-app $ tree hoge-app/ hoge-app/ ├── Makefile ├── README.md ├── appengine │ ├── app.yaml │ └── init.go └── circle.yml 1 dire…

Arukasを使って無料でGo製のslackbotを運用する

はじめに SlackbotをHerokuで一日中動かすと課金が発生するので色々ハックが必要となったりするので、なんとかしたくArukasに出会いました。 今回は、自分が作ったgo製のslackbotを元につくったbotをgithubにpushしてWercker経由でdockerImageを作ってArukas…

2016年振り返り

主にTwitterの全ツイート履歴を見て振り返る。 振り返り 半分くらいは業務コードと思われる. 開発合宿とかPC持っていく旅行 1月: おんやど恵 kyokomi.hatenablog.com 2月: 足湯しながら開発 足湯しながら開発するぞい pic.twitter.com/DT9Vvbiepo— きょこみ@…

werckerでprivate repositoryを含むglide installする方法

手順 glide.ymlでsshのURLを指定する wercker上でApplication Environmentか Organization settings Environmentで + Generate SSH Keys してssh keyを環境変数に登録する 「2.」で登録したssh keyをgithub上の Settingsの SSH keys で登録する wercker.yml…

Webラジオのm3u8をdownloadしてffmpegでmp3に変換するツールをGoで書いた

2016/12/15 23:06 追記: ちなみにffmpegでm3u8 -> mp3変換はできますが、実行時間が20分以上かかって待ってられなかったのでBulkDownloadが含まれてます。 あとm3u8のURLが推測難しく、いちいちブラウザ開いてplaylistをダウンロードして中身のmedia playlis…

Amazon Lambdaにデフォルトでインストールされているライブラリを最新にして使う方法の1つ

業務でAmazonLambda上でPDFを画像に分割処理を実装したのですが、その時ghostscriptのVersionが古くて、 特定のPDF変換でエラーになるという現象でハマったのでその時調べたことと、 対応策を紹介したいと思います。 前提 Apex (Go)で動かしてます ImageMagi…

Lambda x Apexで、Goで書いたラムダ関数を楽に動かす

業務でAmazonLambdaを使う機会があり、Apex(Go)を試していい感じだったのでその紹介とハマりポイントを幾つか紹介しようかと。 github.com 導入 すごく簡単で、 https://github.com/apex/apex#installation に書いてある通りインストールして apex init で…

ISUCON6本戦初出場で敗退しました @ご注文はpoyoですか?

ISUCON参加は今年で3回目。毎年運営の方々はお疲れ様です。 今年は初の本戦出場が出来て本当に楽しかったです。 仕事とかでバタバタしてて、ブログ書くのが遅くなってしまった... チームメンバーと役割 過去2年はk02というチームで出ていたのですが、メンバ…

ひきこもりを加速するクラスター株式会社に入社しました!!!

2016年7月一杯で約1年半働いた株式会社Gunosyを退職し、2ヶ月ほどフリーランスという形で数社のお仕事を手伝っていました。 クラスター株式会社はその中の一社であり、Founder & CEOの加藤さんとは4年ほど?前にCocos2d-xで個人ゲーム開発をしていたときにTw…

おふろcafe utataneで格安開発合宿をした

また合宿してました。もう今年5〜6回は合宿してる気がする。 一泊する合宿では最安値。移動とか食事とかビールとか込みで、トータル1万円くらい

GoAccess+Nginxでアクセスログを計測

こちらの記事が、GoAccessのバージョンが古くてformatでハマったのでメモがてら書いておきます。 qiita.com 環境 CentoOS 7 GoAccess - 0.9.8. nginx/1.10.1 nginx.ltsv 一応Qiitaの記事との比較もあわせて記載してます。 goaccess + nginxのやつ http://qii…

CircleCI上でdynamodb-localを使ったgo testを実行する

はじめに 本当は、dynamodbを呼び出す箇所をinterface化してgolang/mockとかでmockしてtestするほうが良い思います。 ただ、そうもいかない状況とかもあるのでdynamodb-localでtest用のregionを使ってtestする方法を紹介したいと思います。 例)とあるテーブ…