TL;DR cypressとnyc, CircleCI, codecovでの環境構築を行うステップと、CircleCIのconfig.ymlの共有と解説を行います。 これでe2eテストをCIで実行し、テストカバレッジをプルリク上で確認できより高品質なコードを保てるようになるかと思います。 前提 すで…
HerokuにてRailsアプリケーションを公開したは良いのですが、海外からのアクセスが多すぎてdynoが耐えきれず response timeout が大量発生してしまいました。 そこで今回はdynoに負荷をかけずに海外からのアクセス制限をした方法について書きます。 はじめに…
以前作成したAndroidアプリのORMとしてActiveAndroidを使用していたのですが、Android 8.0からreceiver上でactive android経由でデータベースにアクセスすると下記のようなエラーが発生するようになりました。 java.lang.RuntimeException: at android.app.A…
Android開発をしたことがある方は、Activity, FragmentなどでgetApplication を使いApplicationを呼び出しCustomApplicationにCastしたkことがあるのではないかと思います。 そのときなんでApplicationをCustomApplicationにCastしたときjava.lang.ClassCast…
ViewPagerを使ってフラグメントを表示するときに普通 FragmentPagerAdapter を継承したカスタムのAdapterにFragmentManagerを引数として渡すと思いますが、ViewPagerが入れ子構造をしている場合、子のフラグメントのViewが表示されない問題が発生してしまい…
今回は2012年に自然言語のトップカンファレンスであるACLに投稿されたCombining Textual Entailment and Argumentation Theory for Supporting Online Debates Interactionsについての概要を説明し、考察してみようと思います。 ACL | Association for Compu…
2012年にACMというカンファレンスに出された「Predicting Quality Flaws in User-generated Content: The Case of Wikipedia」という論文を読み考察をしました。 www.acm.org [原文] http://www.uni-weimar.de/medien/webis/publications/papers/stein_2012i…
今回は今買収されそうで話題なTwitter社のFabricを紹介したいと思います。 Fabricとは、開発者の方々がより良いアプリケーションをつくるために便利なモジュール形式のモバイルプラットフォームです。 FabricをAndroidに導入することで、Web上のサイトからク…
今回は神Jake Wharton 氏が作成したPicassoという画像のダウンロードやらキャッシュをやってくれるライブラリーについて紹介したいと思います。 使い方 使い方は至って簡単!! Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView)…
Androidは多くの言語が搭載されており、開発者にとってアプリケーションの多言語化は切っても切れない関係です。 単言語化で最も気をつけなければならないことは、あるフレーズを別の言語に置き換えたときに、テキストの長さが変わってしまいデザインが崩れ…
転職や就職などをして、既存のサービスの開発に携わることがある人はコードとViewの対応関係を調べるのに苦戦した経験があるのではないのでしょうか? プロジェクトのコードを読んでいちいち対応関係を見るのは場合によっては非常に効率が悪いです。 そこで…
コンピューターシステムの動作が遅くなることはよくあることです。 その原因として、ウィルスやスパイウェアがPCに入り込んでいるのが考えられます。 Macは他のPCに比べてこのあたりしっかりしていますが、それでも動作が遅くなってしまうことがあります。 …
今回はAndroidアプリの強制アップデートの方法について説明したいと思います。 現在リリースされているアプリケーションで致命的なバグを見つけた時、すぐにでもそのバグを取り除きたいですよね? でも、Androidで自動アップデートを設定していない人だと、…
今回はFacebookのようなボタンお実装方法について説明します。 使用するのはShineButtonというライブラリーです。 github.com 使用方法 使用方法はとても簡単です。 まずはxmlに
皆さんWantedlyについてご存知ですか? www.wantedly.com Wantedlyとは 運命のチームや仕事に出会えたり、人脈を広げ、ビジネスの情報収集に使えるビジネスSNSです と公式には書いてあります。 実際にWantedlyに登録しておくと自社の募集を出せたり、また自…
今回はPythonでスクレイピングをするやり方について説明しようと思います。 まだpythonを始めたばかりスクレイピングって難しそうだけどどうやってやるの?と苦しんでいる読者を想定しています。 Scrapingでできること 店舗一覧、商品一覧を抽出する ・ニュ…
Android Studioで開発をしている場合、デフォルトのLayout Viewerや最近実装されたConstraint Layoutでだいぶデザインの調整がしやすくなっているのですが、いかんせんアプリを動かしてみると想定外のバグが発生してしまします。 そこで、アプリを起動しなが…
今回はAndroidでテレビ電話を実装する方法を説明したいと思います。 使用するのはNTT Communicationsさんが提供しているSkywayというライブラリーです。 SkywayはWebRtcを使って、テレビ電話を実現したもので通信処理などの煩わしい部分をこのライブラリーが…
今日はRetrofit2を使ってAndroidのHttpレスポンスの実装方法を紹介したいと思います。 Retrofit2って? Retrofit2はSquare(Jake 神)が開発しているネットワークアクセスライブラリです。 特徴的なのはサーバ側のAPIをインタフェースとして定義することで、…
前置き 今回はランダムフォレストという手法で機械学習を行い文章の分類を行おうと思います。 例えばこのような生物医療に使われるデータベースがあったとします。 name of enzyme alkaline phosphatases comment Comparison with alkaline phosphatases and…
先日RSSをキーワード入力から登録できるアプリケーションを開発しリリースしました。 ところが。。。 なんとポリシー違反ということでアプリが停止されてしましました。 露骨な性表現を含むコンテンツに関するポリシーに違反だったのですが、どうやら検索キ…
Jackツールチェーン 今回はAndroidでJava8を使う方法を紹介したいと思います。 以前までretrolambdaというライブラリーが主流でしたが、Android StudioがアップデートしJackツールチェーンというAndroid StudioでJava8が有効にできる素晴らしいツールが使え…
Minimum Edit Distance 今回は文字間の距離を計算するMinimum Edit Distanceについて説明したいと思います。普通に暮らしていたらMinimum Edit Distanceは使わないでしょうね笑それでも説明します。 まずは具体的な例としてintentionとexecutionという文字間…
ButterKnifeとは Android界で神と崇められているJake Warton氏が作成したView Injectionライブラリー。 普段AndroidではViewをbindするときに TextView text = (TextView) findById(R.id.text_view); としていたがButterKnifeを使えばこのようなコードを書か…
Rubyでスクレイピングをしてみよう! Scrapingでできること ・店舗一覧、商品一覧を抽出する ・ニュースサイトからヘッドライン一覧を抽出する ・ページのURLを全て抽出する などなど今まで煩わしかったことが解消できます! Rubyの開発環境 すでにRubyをイ…
今回は以前紹介したルーチンワーク管理アプリの、広告、課金収益、インストール数を公開したいと思います。 インストール数 だいたい現在の時点でインストール数は2200くらいです。 1日40~50インストール増えている感じです。 2ヶ月前にリリースしたので月1…
日頃このようなことで悩んでいませんか? 「毎週やっていることなのに忘れていた!!」 「毎週やることに新しい習慣を取り入れたい!!」 「今日やるべきことをすぐに確認して安心したい!!」 そんな時に使ってほしい、ルーチンタスクを管理するアプリを作…
UNIXシェルとは UNIXオペレーティングシステムおよびUnix系システムの従来からのユーザインタフェースを提供するコマンドラインインタプリタまたはシェルである。 です。コマンドを覚えてターミナルマスターになりましょう。 コマンド一覧 シェルコマンド コ…
公式では推奨されていませんが、私的にこういう挙動が好きという方は是非参考にして実装してみてください。 アクティビティ JAVA mDrawerToggle = new ActionBarDrawerToggle(this, drawer, R.string.app_name, R.string.app_name) { @Override public void …
DNS(Domain Name System)とは インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名とIPアドレスの対応関係を管理するシステム。企業などの組織内ネットワークの内部でのみ運用されるドメイン名を管理するシステムも存在するが、一般的にはイ…