タグ

ブックマーク / codezine.jp (10)

  • IoTをかじってみよう(7) ~mbedを使って音声認識でデバイスを制御する

    最終回となる今回は、mbedで音声認識を試してみたいと思います。IoTでは、デバイスがネットワークにつながっています。このためデバイスでは処理が難しい高度な処理を、ネットワークで接続された別のコンピュータで行い、デバイス側ではその結果を利用するという処理形態が可能となります。これによりデバイスの見かけの能力を大幅に引き上げられます。 音声認識でデバイスを制御する Bluemixには、あらかじめさまざまなサービスが提供されており、これらを用いることで多様なアプリケーションを簡単に構築できます。今回はWatson Speech to Textというサービス(以降、WSTと呼びます)を用いて音声認識の機能を利用します(図1)。 図1 音声認識サービス mbedに対して音声で命令を伝えると、その動作を行ってくれるようにしてみましょう。今回は簡易的に「明るくして」という音声を認識したら、照明の替わり

    IoTをかじってみよう(7) ~mbedを使って音声認識でデバイスを制御する
    katsuren
    katsuren 2016/08/12
  • Rails開発者のDHH氏、Ruby on Rails開発の基本方針を「The Rails Doctrine」として文書化

    Ruby on Railsの開発者であるDavid Heinemeier Hansson(DHH)氏は、Ruby on Rails開発の基方針を「The Rails Doctrine」として1月19日(現地時間)に公開した。また、「The Rails Doctrine」の公開とともに、Ruby on RailsのWebサイトがリニューアルされたほか、ロゴも変更されている。 The Rails Doctrine 「The Rails Doctrine」は、Ruby on Railsにおけるもっとも重要な支柱となる、以下の8項目で構成される。 Optimize for programmer happiness Convention over Configuration The menu is omakase No one paradigm Exalt beautiful code Value

    Rails開発者のDHH氏、Ruby on Rails開発の基本方針を「The Rails Doctrine」として文書化
    katsuren
    katsuren 2016/01/20
  • 状態遷移図/表、すなわち設計をコードでテストする

    状態遷移表からひな型コードを生成する この状態遷移表からコードを起こすわけですが、状態遷移の実装については『StateパターンでCSVを読む』を書きました。デザイン・パターンの一つ:Stateによる実装です。今回の実装はC、継承も仮想関数も使えないという利き腕を封じられた条件なので戦術を大きく変えにゃならんです。 状態遷移の実装は要するに「(1)現状態 と (2)受理したイベント の組」に対応する「(3)アクション と (4)遷移先(新たな状態)」を引き当てることに他なりません。ならば上記(1)~(4)の並びをレコードとし、そのレコード列(=状態遷移表)から「(1)現状態 と (2)受理したイベント の組」に一致するレコードを探し出して「(3)アクション を実行して (4)新たな状態 に遷移」すればいい。 状態遷移表からひな型コードの生成には使い慣れた「T4-template」を用います。

    状態遷移図/表、すなわち設計をコードでテストする
    katsuren
    katsuren 2015/01/15
  • これだけ押さえておけばあらゆるAPIを呼び出せる! Google APIを使用するための基本

    対象読者 GoogleのサービスやAPIに興味のある方、悩んだことがある方 Google Cloud Platformに興味のある方 GoogleではないAPIの経験がある方(推奨) 必要な環境 Googleアカウント Webブラウザ サンプルコードを実行する場合は、Javaの開発環境 Google APIの基礎知識 Googleが提供する大抵のプラットフォームやサービスは、それらのリソースへアクセスするためのAPI(以下、Google API)を提供しています。まずは、Google APIを理解するための基礎となる事項を押さえておきましょう。 APIとの通信方式とDiscovery Document Google APIと通信する方式には次の2つがあります。 OAuth1でアクセス許可を得て、ATOM書式で通信する OAuth2でアクセス許可を得て、JSON書式でhttpsを使って通信す

    これだけ押さえておけばあらゆるAPIを呼び出せる! Google APIを使用するための基本
    katsuren
    katsuren 2014/08/19
  • 「JBehave」による振舞駆動開発(BDD)の実践

    対し、今回紹介するBDD(behavior driven development:振舞駆動開発)では、テスト対象の振る舞いに対してのテストを記述します。BDDでは、要求仕様にフォーカスし、よりWhatを意識したテストケースを作成できます。これにより、TDD以上に設計から実装へのトレーサビリティを確保できるようになります。 対象読者 Java開発者 必要な環境 JDK 7 Maven 3 JBehaveとは JBehaveを利用することにより、JavaでBDDを実践できるようになります。具体的には、storyファイルに記述した要求仕様をベースに検証ロジックを実装し、テストを行います。 事前準備 まずは、Mavenで空のJavaプロジェクトを作成します。以下のようにコマンドプロンプトでmvnコマンドを実行します。 <project xmlns="http://maven.apache.org/

    「JBehave」による振舞駆動開発(BDD)の実践
    katsuren
    katsuren 2014/01/31
  • 「Selenium2」のインストール手順と初めの一歩

    対象読者と環境 Webブラウザを使ったテストを自動化するOSSのツール「Selenium2(WebDriver)」のインストール手順と基的な使い方をご紹介します。想定読者は、テスト自動化に興味のあるプログラマーです。 SeleniumにはSelenium IDEというブラウザ操作を記録できるツールがあり、SeleneseというSelenium1に対応したコマンドをHTML形式で保存します。これによってノンコーディングでテストスクリプトを作成することができるのですが、WebDriverやプログラミングによる効率化の恩恵を受けることができません。記事はSelenium IDEを活用しながらWebDriver使ったテストスクリプトをJava(JUnit)形式で書いていくための手引きとなっています。 今回筆者が使用した環境は以下のとおりです。 OS:Windows 7 Java:1.7 Fir

    katsuren
    katsuren 2013/11/08
  • さよなら手作業・人海戦術! HTML5時代のツール「Selenium2」でWebシステムのテストを自動化

    シリーズは、WebブラウザをUIとして利用した業務システムやアプリケーション(以下、Webシステム、Webアプリケーション)のテストをテーマとして、Webブラウザを使ったテストを自動化するOSSのツール「Selenium2」を紹介します。業務システム開発の現場で適用してきたノウハウを元に、これまでSelenium2について知らなかった人から以前使った経験がある人まで、より実践的な「使える」内容を盛り込んでいきたいと思います。 シリーズのスコープと対象読者 シリーズはWebシステム・Webアプリケーションのテストの中でも「Webブラウザを操作して実施するテスト」をスコープにしています。開発工程としては、1モジュールとして単体テストに位置付けられる場合もあれば、複数のモジュールやシステムと連携して結合テストや総合テストに位置付けられる場合もあるでしょう。これらのテストのことを、シリーズ

    katsuren
    katsuren 2013/10/25
  • PDFを作成する (1/3):CodeZine

    はじめに PHPPDFを作成する場合にはPDFLibやmPDF、FDPDFなどさまざまな選択肢がありますが、ライセンス、パフォーマンスなどの点で問題がある場合に、Haruの利用を検討してみてはいかがでしょうか。 HaruはZLibやPNGと同様に、非常に緩いライセンス形態を取っているため、サービスの種類を問わず組み込みやすい点に特徴があります。 また、PHPのネイティブエクステンションとして提供されているため、PHPのライブラリとしてパフォーマンスが出ない場合にも利点があります。 とはいえ、サイト上にもあまり情報がなく、日語の利用に関して不安があるかもしれません。しかし最初にいくつか挙げたライブラリは、元々は海外発信のライブラリでした。対して、HaruはlibharuというCのライブラリのエクステンションであり、libharuは日が発信元となっていますので、日語に関しても安心して利

    PDFを作成する (1/3):CodeZine
    katsuren
    katsuren 2013/05/28
  • 分散環境でのPHPによるタスク管理 - Zend_Queue -

    連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介していきます。今回は分散アプリケーション間でのデータのやりとりを行うための方法の一つである「メッセージキュー」を利用するためのZend_Queueコンポーネントを紹介します。 はじめに 連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介していきます。今回は分散アプリケーション間でのデータのやりとりを行うための方法の一つである「メッセージキュー」を利用するためのZend_Queueコンポーネントを紹介します。 ユーザからデータを受け取り、それの処理をするようなサービスがあったとします。この処理に時間がかかるようであれば、例えばフロントエンドでは「データを受け付けました」とだけ表示し、バックエンドでデータを処理する仕組みが必要です。こ

    分散環境でのPHPによるタスク管理 - Zend_Queue -
  • HTML4から変化したHTML5のマークアップ ここが違う!サンプルで見るHTML5(2)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    HTML4から変化したHTML5のマークアップ ここが違う!サンプルで見るHTML5(2)
  • 1