怠慢プログラマーの備忘録

怠慢でナマケモノなプログラマーの備忘録です。

GAE Cron+Pub/Sub+Cloud FunctionsによるFirestoreのバックアップ定期実行

yutaabe200.hatenablog.com

こちらの記事でバックアップ自体はgcloudコマンドで実行できることがわかりました。

本記事はこれを定期実行する為の手順を説明します。

続きを読む

Firestoreのバックアップ(gcloud編)

Google Cloud SDKをインストール

$ brew cask install google-cloud-sdk

続きを読む

今更だけどCodableにハマったところ(備忘録)

※色々省略しています。

struct Hoge: EntityProtcol, Codable {
    
    let uid: String
    let hogeName: String
    let firstHoges1: [String: String?]
    let secondHoges1: [String: String?]  
    let thirdHoges1: [String: String?]
    
    init(uid: String,
         hogeName: String,
         firstHoges1: [String: String?],
         secondHoges1: [String: String?],
         thirdHoges1: [String: String?]) {
        
        self.uid = uid
        self.hogeName = hogeName
        self.firstHoges1 = firstHoges1
        self.secondHoges1 = secondHoges1
        self.thirdHoges1 = thirdHoges1
    }
    
    static func deserialize<T: EntityProtcol>(document: [String: Any]) -> T {
        let json = try! JSONSerialization.data(withJSONObject: document, options: [])
        let decoder = JSONDecoder()
        decoder.keyDecodingStrategy = .convertFromSnakeCase
        return try! decoder.decode(JSSchoolExamEntity.self, from: json) as! T
    }
}
続きを読む

ReactNative CLIのインストール時に何故かハマった事[備忘録]

f:id:ka0in:20190106030839p:plain npm install -g react-native-cli

/usr/local/Cellar/node/8.9.1/bin/react-native -> /usr/local/Cellar/node/8.9.1/lib/node_modules/react-native-cli/index.js + react-native-cli@2.0.1 updated 1 package in 0.755s

CLIのインストールまではできたが、 react-native init sampleApp

react-native: command not found と何故かない...

おそらくこれ。

stackoverflow.com

export PATH="/usr/local/Cellar/node/8.9.1/bin:$PATH" Pathが何故かズレてたので↑をすると完了。

2018年の思い出

タイトルを迷わず書いてみたら、小学生の文集かと自分でびっくりしました。

といいながらも仕事?プログラマー的?な話とワインの話しかしません。

続きを読む

とりあえず転職して1年が経とうとしている今の心境

新卒入社したシステム会社を退職して1年が経過し、創業間もない会社に転職して1年が経とうとしています。

折角の節目だし、もうすぐ四捨五入で30代の仲間入りするし、最近背中が痛いのと眼精疲労で吐き気がするので、中々触れなかった前職と今の会社の話を数年後の自分の備忘録になるように書き残しておきます。

続きを読む

【Kotlin】カメラ機能の画質が悪い時の改善法[備忘録]

カメラ機能を実装する際、以前の記事のように

yutaabe200.hatenablog.com

val intent = Intent(MediaStore.ACTION_IMAGE_CAPTURE).apply {
            addCategory(Intent.CATEGORY_DEFAULT)
        }

startActivityForResult(intent, CAMERA_REQUEST_CODE)

で暗黙的インテントを使用すると取得できるBitmapデータが圧縮された状態で取得され画質(解像度)が低い状態です。

続きを読む

技術書典で売り子さんやってきました

f:id:ka0in:20181009183956p:plain

今回初めて技術書典に参加してみました。

技術書典

幸いなことにnkznさんがブース出展&運営スタッフとして参加されてたので、そのおまけに売り子として参加させてもらいました。

続きを読む

【Kotlin】OutOfMemoryとの戦い方[備忘録]

アプリ内でイメージを取得して、それをFirebase Cloud Storageに保存しておき適宜取得するようなアプリを作っていましたら、

Failed to allocate a xxxxxx byte allocation with xxxxxx free bytes and 10MB until OOM

のエラーが発生しました。

続きを読む

【Kotlin】カメラ/アルバム機能[備忘録] (2020/06/19更新)

カメラ/アルバム機能をKotlinで実装した時の備忘録。

Environment.getExternalStoragePublicDirectoryAPIレベル29からdeprecatedになりましたので全体的に見直しました。 特に解決できていなかった「GalleryAppを開く」「端末によって画像のOrientationがおかしい時がある」事象の改善も含まれています。

続きを読む

iOSDC Japan 2018で登壇してきました

f:id:ka0in:20180902222736j:plain 8/31 ~ 9/2にiOSDC 2018にSpeakerとして参加してきました。

カンファレンスはブログを書くまでがカンファレンスなので忘れないうちに書いておこうと思います。 (なお全てのセッションは書ききれませんのであしからず)

続きを読む

【Golang】MacでGoの開発環境[備忘録]

開発環境

  • OS X 10.13.6
  • Homebrew 1.7.2

環境構築

  • $ sudo brew install go
  • $ go version -> go version go1.11 darwin/amd64

goquery取得

  • $ go get github.com/PuerkitoBio/goquery

github.com

hello.go

package main
import "fmt"

func main(){
    fmt.Printf("Hello, world\n")
}

実行

  • $ go run hello.go

Hello, worldとターミナルに表示されるはず。

スターティングGo言語

スターティングGo言語