Works by

Ren's blog

@rennnosuke_rk 技術ブログです

2018-06-01から1ヶ月間の記事一覧

【NW】SMTP

SMTP SMTPとは、メール転送のための通信プロトコルです。 主にメールを管理するメールサーバーが他のメールサーバーにメールを転送するためにこのプロトコル用います。 メールサーバーとメール転送 SMTPの通信内容について説明する前に、そもそもメールがど…

【python】numpy配列の特定の条件を満たす要素のインデックスを取得する

メモ。 numpy.arrayオブジェクトの要素のうち、指定した条件を満たす要素は下記のように取得できる。 import numpy as np arr = np.array([[1,2,3],[4,5,6]]) # array([[1, 2, 3], # [4, 5, 6]]) # 特定の条件を満たす要素を取得 arr[arr > 3] # array([4, 5…

【Watson/python】IBM Watson Visual Recognitionを使って、pythonスクリプト上で画像分類を行う

IBM Watson Visual Recognition IBM Watson Visual Recognitionは、IBMが提供するDeep Learningを利用した画像認識サービスです。 www.ibm.com IBM Cloud上で利用することができ、APIやSDK経由で画像データの分類を行うことができます。 今回はpython用Watso…

【python】pipでファイル内に記述した複数モジュールを一括インストールする

メモ。 pip install -rで、ファイルに記述したモジュールを一括してインストールできる。 # インストールしたいモジュールを記述したファイル $ cat hoge.txt asn1crypto==0.23.0 bleach==1.5.0 certifi==2017.11.5 cffi==1.11.2 chardet==3.0.4 cryptograph…

【Watson】Watson Studio でMNIST手書き文字認識を行う②【モデル学習・推論】

前回までのあらすじ rennnosukesann.hatenablog.com 前回の記事では、Watson Studioのセットアップを行いました。 今回の記事では、実際にMNISTデータセットを使って手書き文字の学習とクラス分類を行います。 MNISTとは MNISTとは、パターン認識や機械学習…

【Java】Jacksonで任意形式のJSONをパースする

Jackson Jacksonについては以下の記事を参照。 rennnosukesann.hatenablog.com 多様なJSONの構造 前回の記事で、JSONをMapオブジェクトにする記事を書きました。 rennnosukesann.hatenablog.com JacksonではJSONファイルやStringオブジェクトとしてのJSONをJ…

【Java】JacksonでJson文字列をMapオブジェクトに変換する

Jackson Jacksonについてはこちら。 rennnosukesann.hatenablog.com JacksonはJavaのライブラリで、JavaオブジェクトをJSON形式にしたり、その逆のこともできます。もちろんJSONファイルへの読み書きも可能です。 JSONをMapオブジェクトに変換する Jacksonで…

【python】コマンドラインパーサclick

clickとは Welcome to the Click Documentation — Click Documentation (5.0) clickはpythonのコマンドライン解析用モジュールです。 pythonスクリプトをCLI上で実行したときに、コマンドライン引数のラベルを定義したり、ヘルプを表示するなどの機能を提供…

【python】argparserでコマンドライン引数を解析する

argparser 16.4. argparse — コマンドラインオプション、引数、サブコマンドのパーサー — Python 3.6.5 ドキュメント argparserはpython標準モジュールの一つで、pythonスクリプト実行時に受け取ったコマンドライン引数を解析するのに役立ちます。 例えば、l…

【Java】AdoptOpenJDK 11がLTSをサポート

Javaのサポートについて OracleのJavaへのサポート体制の変更が波紋を呼んでいます。 qiita.com www.orangeitems.com Oracle JDK 11の有償化 Oracle Java SE サポート・ロードマップ 事の発端は、OracleがJava 11の提供を有償化する声明を出したことでした。 …

【OAuth】Twitter OAuthでのWhite ListにCallback URLを登録する

Twitter 認証APIの仕様変更 6/12-13(?)ごろ、Twitter 認証用APIの仕様が変更され、パラメータとして指定されたcallback_urlがApplication Manager上で登録されていない場合、HTTP 403 エラーを返す仕様となりました。 これを受け、Tiwtter連携を扱うサービス…

【Watson】Watson Studio でMNIST手書き文字認識を行う①【Watson Studioセットアップ】

Watsonとは www.ibm.com IBM Watsonは、IBMが提供するAIサービスです。 主に自然言語処理系の機械学習を行うAIを提供しており、文章のカテゴライズや文章と音声間の変換などをサポートします。 また自然言語処理だけでなく、画像認識の機能の提供も行ってい…

【IBM Cloud】IBM Cloud ライト・アカウントを取得する

IBM Cloudとは www.ibm.com IBM Cloudとは、IBMが提供するビジネス用クラウドソーシングサービスです。 IaasからSaaSに渡るビジネス向けのサービスを多く取り揃えているのが特徴です。そのためAWSやAzuleのような個人デベロッパーやスタートアップによく使わ…

【React Native】Native Base でiOS/AndroidのUIを構築する

npm

Native Base nativebase.io NativeBaseはReact Nativeで使うことのできるプラットフォームUIコンポーネントです。 iOS/Androidそれぞれに適切なUIを提供します。 例えば、iOS用のヘッダーには下図のような平坦なデザインが多いのですが、Androidではマテリア…

【Yarn】Yarnをインストールする

npm

Yarnとは YarnはFacebookが開発したパッケージマネージャです。Yarnは、Nodel.js上で用いられるパッケージマネージャであるnpmを代替します。 yarnpkg.com 前回の記事でも触れましたが、npmは昨今のWeb開発では頻繁に用いられています。一方で、npmはパッケ…

【Java】JAX-WSでJSON Body Parameterをサーバ側でMapとして受け取る

JAX-WSとは JAX-WSはJavaのサーバサイドフレームワークであり、JavaクラスとAPIの構造をマッピングする機能を持ちます。 クラスやメソッドに対してアノテーションを付加することで、簡単にマッピングすることができます。 例えば、APIサーバがapi/hoge/getGE…

【Node.js】nodebrewでNode.jsを管理する

npm

nodebrewとは github.com nodebrewは、Node.jsのバージョンを管理するためのツールです。 nodebrewを使うことで、一つの環境に複数のバージョンのNode.jsを導入することができます。 Web開発でNode.jsが頻繁に使われる昨今、特にnpmのバージョン互換性が問題…

【Slack】Slack Helperを抹消してPCに平和をもたらす

Slackのデスクトップアプリは重い 皆さんは、Slackのデスクトップアプリを起動してPC全体が「重い!」と感じたことはないでしょうか? ただ一言メッセージを投稿したいだけなのに、Slackの起動も遅いし、ブラウザもスクロールできなくなるし、散々です。 な…

【Shell】shellの標準出力をクリップボードに貼り付ける

メモ。 pbcopyコマンドで入力をクリップボードに貼り付けられます。 便利。 $ cat hoge.txt | pbcopy 但しMacのみ。

【React Native】Camera UIコンポーネントで撮影した写真を保存する

React Native + Expoを使ったカメラ機能実装を前回の記事で行いました。 rennnosukesann.hatenablog.com 今回は撮影した写真を端末に保存する処理を追加します。 Source 端末のフォルダに写真を保存するには、CameraRoll.saveToCameraRoll()を利用します。 i…

【React Native】アプリ内でカメラロールを開く

前回の記事ではネイティブのカメラ機能を使ったので、今度はカメラロール機能を実装してみました。 rennnosukesann.hatenablog.com Usage 環境は Mac OS X High Sierra / iOS 11(iPhone X)です。 カメラロール機能はreact-nativeパッケージで利用できる他、E…

【React Native】React Nativeでカメラアプリを実装する

npm

ここ最近、React Nativeを使ってネイティブアプリで使いそうな機能を一通り試すことが多くなってきました。 rennnosukesann.hatenablog.com rennnosukesann.hatenablog.com 今回もネイティブ実装でよく使われる機能であるカメラ機能を試してみました。 実行…

【React Native】Googleマップを利用する(Android)

rennnosukesann.hatenablog.com 前回の記事では、iOS上でGoogle MapアプリをReact Native+Expoで作成しました。 今回はAndroid verを作成してみたいと思います。 Usage 環境構築環境は Mac OS X High Sierraです。 プロジェクトの作成 例によってcreate-reac…

【React Native】Googleマップを利用する(iOS)

React NativeでGoogleマップを使いたい場合、 プレーンなreact-native initからのプロジェクトだと導入が大変でした。 一方、Expoをサポートするcreate-react-native-appでプロジェクトを作成したところ googleマップの導入がスムーズにできたのでメモしてお…

【React Native】Expoで加速度センサを使う

Accelerometer React Nativeでの加速度実装ですが、ネイティブで標準実装できる範囲内なので特別なパッケージを入れずとも実装できます。 Expoパッケージの加速度計測モジュールが簡単だったので、今回はこちらを紹介します。 Accelerometer - Expo Document…

【React Native】react-native-modalboxでネイティブアプリ上のモーダルを利用する

npm

react-native-modalbox github.com react-native-modalboxはアニメーション付きモーダル表示を手軽に実装できるUIコンポーネントです。 モーダルは使えるシーンが多いので、表示の仕方でユーザー体験を向上させたいときに使うと良いかもしれません。 (細か…

【AngularJS】$injectプロパティを利用して依存性注入を行う

メモ。 AngularJSではコントローラやサービスの定義をDI(依存性注入)によって初期化します。 具体的には、['サービス名1','サービス名2'...,'コントローラ関数']のように、サービス名とコントローラの挙動を定義する関数オブジェクトの配列を作り、AnguraJ…

【React Native】react-native-textinput-affectsを使ってリッチなTextInputを実装する

npm

react-native-textinput-affects github.com react-native-textinput-effectsはReact Nativeアプリ上で使用できるTextInput UIコンポーネントです。 豊富な種類の入力フォームが用意されており、デモを見るだけでも楽しめます。 普通のTextInputと同様のプロ…

【React Native】TextInputがキーボードで隠れてしまうのを防ぐ

TextInputがキーボードで隠れてしまう問題 スマホ画面でブラウザ・ネイティブの入力フォームをクリックすると、入力フォームが隠れてしまうことがあります。 import React from 'react'; import { StyleSheet, View, ScrollView, TextInput } from 'react-na…

はじめてのVSCode環境構築メモ

エディタを乗り換えよう 今までatomを雑に使っていたのですが、 重い プラグインがやけにバグる Code Completeが雑 などの理由から、新しくVSCodeに乗り換えてみました。 今回の記事は、自分用のVSCode乗り換え時のセットアップメモになります。 適宜更新し…