Unyablog.

のにれんのブログ

2016-01-01から1年間の記事一覧

Mackerel Agent for Android

この記事は Mackerel アドベントカレンダー 21 日目の記事です。 qiita.com Mackerel について Mackerel とはサーバーを監視するサービスで、Slack などとの連携が便利だったりグラフが美しかったりと良いサービスです。 Mackerel にデータを送るためのサー…

軽い Shell を作った

↓の記事を読んで自分でもサクッと作れそうなので作ってみた。 brennan.io 名前は nsh (nonylene shell の略)。記事を参考にコードを書いていたら大体同じようなものになってしまった。 github.com 記事では C で書いているけど、nsh では Python3 で書いてみ…

サーバーを ConoHa に移行した

サーバーを家の Raspberry Pi から ConoHa に移行しました。 理由は単純に Raspberry Pi ではいろいろするのに辛くなってきたのと、最近謎のエラー*1により SEGV することが多くなって悲しくなってきたためです。カーネルの Early Memtest 使って軽くメモリ…

Android Studio をビルドする

この記事は KMC アドベントカレンダー 4日目の記事です。自分は5日目だと思っていてのんびりしてました… :bow: :bow: www.adventar.org 昨日は id:nojima718 さんの nojima.hatenablog.com でした! 本題 今回は Android Studio をビルドしてみます。 大体こ…

curl: (60) SSL certificate problem: certificate is not yet valid

対処 時刻がおかしいので ntp とか入れる 経緯とか 久しぶりに VirtualBox で入れていた Arch Linux を起動して、 bundler が入っていなかったので gem install bundler を打つと、 certificate verify failed とのエラーが *1。 確かに curl https://rubyge…

Kotlin の String#split で正規表現を用いる

Kotlin の String#split は、 String を引数に取った場合 Regex を使用しません。 正規表現を用いて split を行うには、Regex を引数に取る必要があります。 例 java "hogehoge piyo foo".split("\\s+") // => ["hogehoge", "piyo", "foo"] kotlin Bad "hoge…

Android の df コマンドについて

最近 Android 用の mackerel-agent を作ろうとしていて、Android の /proc/meminfo を読んだりしていたのですが、 filesystem の metrics は df -P コマンドを使っていました。*1 Android にも df コマンドは存在していたのでパースしようとしたのですが、バ…

cookpad のインターンに行ってきた話

8/10 から今日まで一ヶ月間、恵比寿にあるクックパッドにインターンに行っていました。忘れないうちにヒュヒュっと書きます。 インターンについて 僕が行ったインターンは技術インターンシップです。 このインターンは前半一週間と後半二週間に分かれており…

RecyclerView で Drag と Swipe をサクッと実装

RecyclerView で並び換えや項目の消去をする UI を作成するには、ItemTouchHelper を用いると非常に楽です。 これを使うと、 長押しからの移動で並び替え スワイプで消去をする といった処理を行えます。 Kotlin での実装 val helper = ItemTouchHelper(obje…

Android Layout XML の名前空間はルート要素に定義する

たまに DataBinding を使うのですが、例えば TextView に tools:text を指定してレイアウトのプレビューを試みても上手くできないことがあって困っていました。 例えば、適当に <layout> </layout>

画像取得ライブラリの Glide 使ってみた

Android で画像を表示する際、 URL からいい感じにキャッシュしていい感じに表示してくれるライブラリはいくつかあります。 有名所だと Picasso Square のライブラリ Glide 元BumpTech のライブラリ (Google のプロダクトでも使われているらしい) Fresco*1 F…

SQLクエリチューニングメモ

SQL

table: "table_name" A B "a" 1 "a" 2 "a" 4 "b" 1 "b" 4 "c" 1 "c" 3 のようなデータが 100k レコードほど存在するデータベースにおいて、指定のB (b_list) が存在するA を ランダムに一つ抽出 する。 例: blist: [1] -> mathced A: ["a", "b", "c"] -> ラ…

norifyDataSetChanged でアニメーションする in RecyclerView

stackoverflow.com RecyclerView.Adapter#getItemId() でユニークな ID を返す RecyclerView.Adapter#setHasStableIds(true) を行う これだけで RecyclerView.Adapter#notifyDataSetChanged() のみでもいい感じにアニメーションしてくれます。 パフォーマン…

Haskell入門 14日目

十四日目 VBoxHeadlessTray を入れてみた。これだと一々 VM 起動してること気にしなくてよさそう。 SICP 読まないとなあとか思ってるこの頃。 Haskell, monad ぐらいまでやろうかなあとか思って目次見たけど一番最後だった。 すごいHaskellたのしく学ぼう!作…

Haskell入門 13日目

十三日目 時間が開いてしまってやることを忘れたのでまずここのログを読みなおした。メモ残すこと大事だなって思いました() Windows で Haskell しようかと思って Stack いれたけど cmd 使うこと考えると嫌になってすぐアンインストールしました*1。 7.9 …

Android Studioでのビルドをクラウドで行い開発を高速化する

こんにちは。学校も始まり最近は健康な時間に起きています*1。 今回は 手元の Android Studio からビルドのみをクラウドで行う ことによって快適な生活を手に入れる話です。 概要 ビルドを移譲できる Android Sutudio のプラグインを書きました これを使って…

Raspberry pi に GitWeb を入れた

昔 Raspberry Pi に GitLab を入れた記事を書きました。 nonylene.hatenablog.jp この時、重い重い言いながら運用していました*1が、ニヶ月ほど前にSDカードが壊れる事件が起きて、再構築した時に入れるのがめんどくさくて*2入れてませんでした。そもそもSD…

クラウドの Linux 上で Android Studio をリモート操作するネタ

※実用性はほぼありません。 Andorid のビルドが最近遅くて、ブラウザで動画流しながら StackOverflow 調べながら twitter 流しながら…とやっているとすぐに mac がファンファンなりだして音声は途切れるわ熱くなるわという状態になります メモリ 8GB だし、…

iOS / Android アプリ作成入門スライドを公開しました

自分の所属している京大マイコンクラブ (KMC) では毎年3月に春合宿を行っており、60分ほど講座を行います。 今年は iOSアプリ作成入門 を行いました。 speakerdeck.com また、書いたけど没になった Android 編も公開しました。 speakerdeck.com

iOS で Slack に投稿するアプリを作り実機にインストール

iOS チュートリアルが一通り終わったので、Slack に投稿するアプリを作ってみることにしました。 レポジトリは以下。 元々 Android 版をシュッと作っていたので、iOS 版という位置づけでやってみます。 アプリの機能は非常に単純で、webhook の URL を入力し…

iOS 入門 3日目

iOSのチュートリアル自体は今回で終わりです。 今回は画面遷移の実装、データの編集、データの永続化あたりです。 画面遷移 どうやら iOS における Intent は Segue と言うらしい。 段々マウスクリックして伸ばすのが面倒になってきた。 Segue にもいろんな…

iOS 入門 2日目

1日目の記事はこちらです。 さて今日は二日目です。果たしてサークルの合宿に間に合うのか… 今日はモデルを定義して TableView を作成しました。 TableView での感想 Androidでいう ListView と RecyclerView の中間っぽい。 recycle がつよい ListView とい…

iOS 入門 1日目

春休みなので iOS 学んでみることにしました。*1 目標 作りたいアプリは特になくて、ただ iOS / Swift 学びたいなあという気持ちがあるという感じです。Swift で書かれた iOS のコード理解できるようになりたい。 当方ほぼ初心者です。(夏に Hello World ぐ…

CircleCI で Android Library Project を GitHub Pages にデプロイ

こんにちは。最近 build.gradle をゴニョゴニョするのに慣れてきました。 ここ数日、 PhotoLinkViewer をモジュール分けしたいなーと思って一部分を切り離しました。 切り離したものは他のアプリでも使いたいので、プロジェクトとして独立させることにしてい…