Lento con forza

大学生気分のIT系エンジニアが色々書いてく何か。ブログ名決めました。

SlackでクイズができるSlack Appsを作った

こんばんは! id:kouki_dan です! この記事は、はてなエンジニア Advent Calendar 2019の8日目の記事です。 昨日は id:hokkai7go さんのはてなSREチームにおけるスクラムの実践というタイトルでJuly Tech Festa2019に登壇しますでした。July Tech Festa2019…

GolangはテストのためにInterfaceで公開しない

最近は趣味でGolangとTypeScriptを書いています。Golangのドキュメントを見ていると気になる記述を見つけたのでブログに書き残します。 ここに書いてあることです。 github.com あるモジュールをテストしたい時に、モックのためにインターフェースで公開する…

GitHub Actionsを使ってFirebase App Distributionへ配布する

iOS

FirebaseとGitHub Actionsがマイブームの id:kouki_dan です。 つい先日Firebase App Distributionがリリースされましたね! firebase.google.com FirebaseはFabricの機能を順次Firebaseで扱えるようにしていますが、App Distributionは今までFabric Betaで…

GitHub Actionsをクリックして発行できるGitHub Appsを作った

GitHub Actionsがマイブームです。とても便利なGitHub Actionsですが、「ボタンを押してデプロイ」のようなことができないのが不便でした。 GitHub Actionsをトリガーするボタンを作るサービスを作りたいって思ってるけどこれあと5分待てば公式から出るでし…

Google Apps Scriptを使って無料でSlackにApp Storeレビューを流そう!

Google Apps Scriptにハマっています。 id:kouki_dan です。 Google Apps ScriptはGoogleスプレッドシート上でJavaScriptを実行できるもの、という認識が強いかもしれませんが、G Suite Developer Hubにより、もっと手軽に、様々な自作スクリプトを実行する…

.appという画期的でセキュアなgTLDについて

.appというgTLDをご存知でしょうか。gTLDはgeneric top-level domainの略後で、ICANNが管理しているトップレベルドメインのことです。 有名どころでは.comや.net等があります。このブログのURLは https://kouki.hatenadiary.com ですが、この.comの部分がト…

SwiftのUndoManagerの使い方

Undoを実装したいと思ったのでSwiftのUndoManagerを軽く調べてみました。 developer.apple.com このクラスにはregisterUndoはあるのですが、registerRedoが存在しません。これによってundoが実現できるのことはわかるのですが、どのようにredoが実装されてい…

MacBookにBoot CampしてeGPUを繋ぐのは諦めて自作パソコンを作りました

以前こんな記事を書きました。 kouki.hatenadiary.com このあとOculus Riftが届き、いろいろ試したのですが、少なくとも僕の構成だとVRをやるのは厳しいという結論に至りました。 厳しいと思った理由はいろいろありますが、一番大きいのは CPUが100%に張り付…

MacBookにBoot CampしてeGPUを繋ごう

VRブーム、来てますね。SAOのような世界に行ってみたいものです。 そんなVR環境の現状ですが、カジュアルVRから本格的VRまで様々なものがあります。 カジュアルなVRはハコスコのように、スマートフォンを箱に入れて使うようなものから もうちょっと進歩して…

Firebase Realtime DatabaseをRedux-Sagaでリアルタイムに更新する

この記事はFirebase Advent Calendar 2017 8日目の記事です。 昨日は @yamacraft さんの Firebaseプロジェクトのデプロイについて でした。アプリ開発のノウハウはたくさんあふれていますが、デプロイについては後回しにされてしまうことが多いですよね。 デ…

gitのリモートブランチをチェックアウトしたい時

Gitのremote checkoutのおはなし Gitのリモートブランチをローカルにチェックアウトしたい時、ありますよね。 しかもそのローカルブランチにはトラッキングブランチを指定したいですよね。 僕は今まで git checkout -b branch_name origin/branch_name とい…

Arukasが最高だった

Arukasというサービスをご存知でしょうか。 ちょっと前にSRE Tech Talk に行った時にさくらインターネットの方が発表していて知ったのですが、とても良いサービスだったので紹介します。 ちなみにこの勉強会のプレゼンはとても良かったのでおすすめです。ス…

コートとジャケット

この記事は、苫小牧高専 Advent Calendar 2016 - Adventar 8日目の記事です。 なぜ書くことになったのか なぜ書くことになったのでしょう。僕は苫小牧高専生ではありません。苫小牧に生まれ育ちましたが、苫小牧高専に知り合いが多かっただけのただの高校生…

Slackで将棋を動かしてみる

土曜日の夜のことです。ふと友達とslackで話していて将棋がやりたいね。という話になりました。 当然将棋をやるためには、将棋盤と駒が必要で、それらを動かし、更にその状態を最低2者間で共有する必要があります。手軽に無料でこれらの事がどのような環境で…

FirefoxTVのアプリケーション開発1 〜Hello world編〜

最近、と言っても3ヶ月くらい前にテレビを買ったんですが、選ぶときに「面白そうなOSがが入っている」という選定基準を掲げていました。 僕の中での面白そうなOSとは、開発ができそうなOS、カスタマイズ可能なOSです。 テレビを買った時の記事はこれです。結…

0の0乗から教育実習を振り返りたくなった

はてブで0の0乗が話題になっていました。 0の0乗の正解がネット検索しても見つからないので作成した。 | 子育ての達人 | 妊娠・出産・育児・子育ての毎日を楽しく 去年教育実習に行った時に、ちょうどここら辺を教えていました。指数法則を拡張する流れで…

AppleTVを買った

2,3週間前ですが、AppleTVを買いました。テレビと一緒に。 買ったテレビはPanasonicのビエラです。 地上・BS・110度CSデジタルハイビジョン液晶テレビ TH-40CX700 詳細(スペック) | テレビ/シアター | Panasonic どんなテレビを買うかは相当悩んだ…

Webサービスのアジャイル論

と、まぁ、こんな大仰なタイトルを付けてしまって申し訳ないですが、僕はアジャイラーなわけでもないです。思ったことを書きなぐってみました。 アジャイル? アジャイル、アジャイル、と結構もてはやされている気がします。僕が「アジャイル」と言う言葉を…

毎日コードを書いていきたい。

毎日コードを書いていきたいものだ。 最近のGithubはひどい。 なんていうか、2月くらいからどうしたんだ自分。 緑でまっ緑にすることを目指して頑張って行きたい。

UIDocumentInteractionControllerでクラッシュ

Swiftが熱いですね! Objective-Cなんてもう忘れ去れるくらい最近Swiftしか書いてないです。 ということで、Swiftを使ってちょっとハマった事をメモ。 外部アプリにファイル転送 外部アプリにファイルを転送するときに便利なものに、UIDocumentInteractionCo…

cocos2d-xで尋常じゃない数の線を引きたい時

最近cocos2d-x v3.3でゲーム作ってます。 ゲームの実装で、タッチの動きに合わせて線を引きたかったのですが、素直に実装したらとんでもないことになりました。 DrawNodeで実装 まず最初は、タッチ位置が移動する度にDrawNodeのdrawSegumentを呼び出す方法で…

WebStormをVim化できない?

なんかWebStorm学生無料になってるじゃないですか!! 全然知りませんでした。 とりあえず、インストールして、Vimキーバインドを適用しようとしたんですが。 Browse repositoriesからインストールできない。 Browse repositoriesから、IdeaVimを検索して、…

Swiftでのユニットテストでクラスが見えない問題

XcodeでProjectを作った時にデフォルトで作られるテストケースでのユニットテストで、少し(だいぶ)はまったのでメモして起きます。 Testsファイルから自作クラスが見えない? Testsファイルから、自作クラスをインスタンス化しようとすると このように、ク…

Swiftで簡易APIクライアント

AFNetworkingを使った簡易クライアントをSwiftで書いてみました。 Objective-CのライブラリをSwiftで利用 Cocoa Podsかなんかで適当にAFNetworkingを入れておきます。 SwiftでCocoaPodsを使う - Qiita SwiftでCocoaPodsを使う - Qiita APIClientを作成 AFHTT…

僕が各種サービスにサボテンを植えたわけ。

— こーき (@dangiruba) 2014, 10月 17 サボテン植え師です、こんばんは。 色んなサービスにサボテンを植えてます。 まぁサボテンを植えたのにも理由があります。 Unicode Unicode6.0で絵文字が追加されて久しいですね。 utf-8の4バイトエリアに絵文字が追加…

Swiftでの引数有りSelector

最近はSwift書いたりPython書いたりしてます。 Scalaも書きたい。勉強だけはしてます。 結構つまらない所でしばらく引っかかったので書いておきます。 環境 Swift Xcode Bata6 Selectorで呼び出すメソッドに引数をつけるとrun-time error? このようなコード…

財布とリスクマネジメント

ちょっと財布とリスクマネジメントの話でもしようと思います。 なんでこんな事をいきなり言い出すのかというと、財布を落としたからです。 はい、財布を落としたからです。 財布を落としたのに気づいたのは、今日の朝今日の朝大学に行くために財布を探してい…

SQLAlchemyでsqlite3の外部キー制約を有効にする方法

ここ最近ずっとSQLAlchemyを使ってます。 ORM使っても、結局SQL考えながら書くし、今までSQL使ってた人に取っては、「SQLだったらこう書くのにORMだとわからん!!!:ってのが多発してすごく大変です。 まぁ、そんなことはどうでもいいので本題へ! SQLite3…

SQLAlchemyのオブジェクトモデルを辞書型で取得する方法

今僕は、SQLAlchemyとTornadoを使ったアプリケーションを書いています。 declarative_baseを使ってデータモデルを作っているのですが、templateに直接SQLAlchemyのオブジェクトを流し込んだら、以下のようなエラーになってしまいました。 TypeError: 'YourOb…

毎日コードを書くこと

こんばんは!ゴールデンウィークも終わっていよいよあれですね!あれですよ! 僕はもうすぐ教育実習なのでその準備だりなんだりで忙しいです。 教科は数学なので、高校の数学総復習しながら技術書を読み、コードを書いて楽器を弾くような日々を送っています…