木木木

Swift / Ruby on Railsなどの学習メモ。


PSequel.app でcsv export

Macで Postgresql を使うとき、レコードのviewerとして PSequel.app を使ってます。 csvにカジュアルに書き出したいときにちょっと迷ったのでメモ。 PSequelでcsv書き出す手順 ① レコードを全て選択する ② 右クリックして「Export as CSV」を選択 ③ 新規ファ…

docker コマンド チートシート

自分用メモです。 コンテナ系 コンテナ一覧を表示 # 起動中のコンテナのみ $ docker ps # 停止中のコンテナも含む $ docker ps -a # コンテナIDだけ列挙 $ docker ps -q コンテナを起動 $ docker start <コンテナID or NAME> コンテナを停止 $ docker stop <…

Unityでの設計について考える

Unityでコーディングしてると、依存性解決のためにUnityのGUIエディタつかって手動でポチポチしたり、 シングルトンパターンが多発するみたいなことありがち。 あとScene初期化のたびにFindObjectでシーン上のGameObject探してきたりとか、 バグが混入しそう…

gitでリモートのブランチをローカルに持ってくる

git でリモートの他の人のブランチを持ってきて作業したい時ってありますよね。 今まで自分はこれやりたい時、ネットで検索して出てきた以下のコマンドでやってました。 $ git fetch $ git checkout -b branch_name origin/branch_name しかし、こんな長った…

【iOS】フェードで切り替わるContainer ViewController メモ

iOS (or macOS) でアプリを作る際、ログイン中なら普通の画面、未ログインの場合はログイン画面を表示、という処理は頻発すると思います。 モーダルでログイン画面を出すという方法もありますが、色々面倒なのでApple公式で「Container View Controller」と…

App Kitで自動フルスクリーン

NSWindowのtoggleFullScreenメソッドを使う。 import Cocoa class ViewController: NSViewController { override func viewDidLoad() { super.viewDidLoad() } override func viewDidAppear() { super.viewDidAppear() view.window?.collectionBehavior = NS…

App Kit でバッテリーの状態を取得

WWDC 2018でiOS アプリをMacに移行できるようにする方針が発表されました。 Apple は AppKitをUIKitっぽく作り直して発表するはず、という噂はかなり前から囁かれていましたが、 UIKitがMacOSでも動くようにしてる、という理解が正しそうです。 おそらく、UI…

reduxのreselectについて調べた

reselectは主にreduxで利用される、計算結果のメモ化を担うライブラリ。 とはいえreduxに依存しているわけではないので、単体でも使える。 github.com 使い方はざっくりこんな感じ。 createSelector 関数で、メモ化selectorをつくる。 input-selectors の値…

iOS マルチディスプレイ Swift 4

iOSでマルチディスプレイする際のコードをswiftで書き直してみたメモ。 // 複数 window 対応 private func checkForExistingScreenAndInitializeIfPresent() { if UIScreen.screens.count > 1 { // 外付けディスプレイを表す画面オブジェクトを取得…

Unable to resolve module 'events' from /node_modules: Module does not exist in Haste module map

FeedMe とか xml2js とかをtypescript + React Native で使おうとしたら出たエラー。 解決方法は以下のライブラリを追加することだそうです。 npm install events buffer stream timers --save github.com

JSONスキーマからTypescriptのInterfaceを自動生成

便利そう。 github.com

iOS アプリ作る時に自分が見積ミスりがちな項目

最初の見積段階で忘れてて、無料稼働してしまうということがありました。 忘れないように自分用メモ。 開発期間中にXcode / iOS /Swift のバージョンが上がった際の対応 Xcodeのバージョン上げたらビルド通らなくなる事がよくあった。 理由としてはSwift の…

ActiveRecordの中間テーブルにupdated_atカラムは要らない場合が多い

ActiveRecordのマイグレーションファイルは、 自動で t.timestamps が追加され、created_at と updated_atカラムが追加されます。 中間テーブル自体がモデル同士の関連情報以外を持つ場合は別ですが、 モデル同士の関連情報 (user -- follow -- user とか) …

フリーランスプログラマ3年間の年収実績を公開してみる

近頃社会でフリーランスという働き方が注目されてきてるのを感じます。 プログラマーというのは中でもフリーランスになりやすい職種だと思います。 自分にはフリーになる前に 「実際フリーになったらいくらくらい稼げるのだろう?ちゃんと生活できるのか?」…

Connection to http://localhost:8081/debugger-proxy?role=client timed out. Are you running node proxy? If you are running on the device, check if you have the right IP address in `RCTWebSocketExecutor.m

React Nativeで実機確認しようとしたら出たエラー。 Stop Remote Debugすれば治ります。 実機では、開発メニューは、実機をシェイク(物理的に振る)すると、出てきます。

iPhone で何度も「サインインが必要です [mail] のパスワードを入力してください」と表示される

現在調査中。 考えられる理由の1つは、finishTransactionでちゃんと終了できていないtransactionが存在すること。 参考記事 swift – itunes store にサインイン画面が何度も表示される – まとまりのないブログ ただ、これは全部終了してるので問題なさそう。…

モダンなshell、fish を導入する

fishとは? 「shell はだいたいこういうカスタマイズするよね〜」というものがだいたい最初から整ってるshellって感じです。 zshなどに比べて導入やカスタマイズが容易。 zshやbashとカスタマイズ方法やPATHの通し方が異なっていたりするので、少し導入を躊…

iPhone実機でログ確認するライブラリDotzuが便利そう

https://github.com/remirobert/Dotzu

"Bearer Token" の Bearerの意味

メモ。 Bearer = 持参人 小切手を窓口に持ってきた人、の意。 その人が誰かを識別するのではなく、持ってきた小切手によって識別する、というニュアンス。 idmlab.eidentity.jp

Swift 4 codable導入前に読むべき記事

ざっくり使い方 techblog.timers-inc.com 懸念点 JSONDecoderのちょっぴり痒い所 | Tomorrow Never Comes. qiita.com qiita.com

Facebook messengerで送られてきた音声ファイルをダウンロードする

<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> 最近は仕事でFacebookメッセンジャーを使うこともしばしば。 ちょっとしたファイルの受け渡しにもよく利用させていただいてます。 zipなどはクリックしてダウンロードできるのですが、 音声ファイルはmessenger上で再生できるようになっており、 その代わり…

Android File Transfer + Android 6 でデバイスに接続できない時

PCとAndroidデバイスをUSBで接続します。 通知内の「USBを充電に使用」をタップ メディアデバイス(MTP)を選択

Unity + Androidで実機ビルドに失敗する 「問題が発生したため~~を終了します。」

ビルドしようとしているアプリが、実機にすでに入っている場合はアンインストールします。 すると、ビルドに成功するようになります。

Unity .NET4.6 でDateTime.NowがUTCの時刻を返すバグ (iOS / Android)

DateTime.Nowで正しい時刻が取れません。UTC時刻が返ってきます。 TimeZoneInfoでJSTを取得しようとしても駄目。 FileNotFoundException: Could not find file "/usr/share/zoneinfo/JST". System.IO.FileStream..ctor (System.String path, System.IO.FileM…

Non-WEBデザイナーのデザインをコーディングする際は工数が3倍かかる理由

何らかの理由によりWEBデザイナーではないデザイナーさん(グラフィック、プロダクト、エディトリアルとか) の作ったデザインをコーディングする、という仕事がごくたまにあります。 僕の場合は3年に一回くらい。 「わかりましたー」と適当に受けていると、後…

【React Native】error: PCH was compiled with module cache path

React Nativeやってて、ディレクトリごとプロジェクト移動したらエラーはくようになった。以下みたいなメッセージ。 error: PCH was compiled with module cache path 解決法 ios/build 以下を削除するとかいけつしました。

Hirb Error: PG::InvalidColumnReference: ERROR: SELECT DISTINCTではORDER BYの式はSELECTリスト内になければなりません

Railsで以下のエラーが出た。調査中。 Hirb Error: PG::InvalidColumnReference: ERROR: SELECT DISTINCTではORDER BYの式はSELECTリスト内になければなりません stackoverflow.com

Ruby(Rails) + AjaxでS3バケットにファイルをダイレクトアップロード

参考URL Uploading From Rails to AWS S3 With PreSigned URLs - Stuff… And Things… Qiitaの画像アップロード機能も簡単に実装できる。そう、S3ならね。 - Qiita 詳しくはあとで書きます

JS + canvasで画像アップロード前にファイル容量を落とす

iPhoneの画像回転問題なども吸収してくれるライブラリ github.com matz.hatenablog.jp iPhone / Android などで、ファイルの容量制限はあるか? iPhoneの場合 こちらのページによると、 Large canvas dimensions don't render on iOS Safari · Issue #476 · …

wordpress underscoresでcssファイルが読み込めなかったので対処

なぜかcssファイルが読み込めてませんでした。 バグ? functions.php内のXXX_scripts内の wp_enqueue_style で呼び出してるっぽかったので そこを書き換えました。ついでにキャッシュ対策もしました。 functions.php function hoge_scripts() { wp_enqueue_s…