`${name}さんの日報です。APIは漢字もちゃんと読んでくれるのですが、弊社のサービス名や略語など、例えばminne(ミンネ)やMTG(ミーティング)は正しく読めないので、日報を保存する前に@mickey19821さんが作ったRailsアプリに本文を送り、ちょっとだけ読みやすく置換したバージョンも保存して、読み上げにはこちらを使うようにしています。音声合成を手軽に使えるのはありがたいのですが、いささかWebサービスの中での使い所が難しいなと思います。上のコードを見るとわかるように、句点や改行を挟んだり涙ぐましい細かい調整をしています。やってもそれほど聴きやすい音声とは言えない印象です。すごいテクノロジーだとは思いますが、自然でなめらかな音声を期待するとアレっと感じると思います。実は開発初期はこの読み上げ機能をニポタマの目玉としていたのですが、いざ作ってみると開発陣としてもやや前衛的すぎるなと感じています。PostCSSニポタマのデザインとマークアップは@shikakunさんが担当しており、CSSはPostCSSを使って書かれています。利用しているプラグインは以下の通りです。}}所感CSSにはあまり明るくないので、Sassなどよりどのくらい書きやすいのかわかりませんが、こういう将来の仕様を先取りできるのはレガシー化を防ぐ上で重要かなと思っています。いつかはこのコードも古くなりますが、少なくとも今書き始めるならこうなのでは、という印象です。(書いてないくせに偉そうなこと言ってる。2.0に則ってyamlに書いており、そのyamlファイルをbootprintとbootprint-swaggerに与えて、APIドキュメントを生成しています。doc:deployを叩くと、手元でビルドしてその成果物がrsyncでデプロイされるようにしています。ドキュメントはBASIC認証だけかけて、どこからでも見れるようにしています。最初にえいやっと仕様だけ書いてしまえばドキュメント生成はライブラリに丸投げできるので、導入は楽だなと感じています。カスタマイズしたいようなときはそれなりに茨の道です。APIドキュメントについては最近考える機会があり、もうちょっとイケてる構成ができないかなぁと思っているので、この辺はまた後で何か書くと思います。インフラニポタマは、弊社のOpenStack環境Nyahの上で動いています。サーバの構成は踏み台サーバアプリケーションサーバDBサーバの3台です。ロールとしてはもっとあるのですが、アプリケーションサーバという名の1台にリバースプロキシ(nginx)、body、Goのgatewayが動いており、faceとAPIドキュメントの静的ファイルも置いてしまっています。api、docなど細かくサブドメインを切っていますが、バーチャルホストを設定して全てこの1台で受けています。Encryptにお世話になっています。DBのバックアップは主にオペミス対策として1日に1回取っていて、過去14日分だけ保持しています。役に立ったことはありません。元々はherokuからスタートして、その後クラウド便利だな〜くらいの感覚でNyahに普通な構成で移行してしまったのですが、時は2017年なので、例えばDockerで動かしたりするのもいいのかなと思っています。Elixir、node.js、Go、Rubyなどいろんな言語を使うようになってきている(次はPHPが入る予定)ので、本番環境よりむしろ開発環境でDockerを使うと何かと楽になりそうです。まとめざーっと書いてきましたが、改めていろいろと手を出してきたなという感じです。いえ実サービスではこんなにホイホイぶち込むこともできないので、これからも砂場として興味のあるものを試しながら運用していきたいなと思います。Redirectsおはようございます。SSLの終端はNginxで、その後ろにWebアプ...2016-08-28Gettextの使い方メモはいコンバンハ。Propertyが定義されていればそれを使い、定義されていなければデフォルト値を使うSassの変数pre-commitが便利Svelteコンポーネントをテストするときはテスト用コンポーネントを書くといい気がしたSvelteのstoreでバリデーションを実装するRenderでmonorepo管理されたアプリケーションを動かす月別アーカイブはてなブログをはじめよう!Joe_nohさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。