ブックマーク / gihyo.jp (26)

  • 良いウェブサービスを支える「利用規約」の作り方

    2013年3月19日紙版発売 2013年3月19日電子版発売 雨宮美季,片岡玄一,橋詰卓司 著 A5判/240ページ 定価2,508円(体2,280円+税10%) ISBN 978-4-7741-5594-4 ただいま弊社在庫はございません。 →書の新版が発行されています。 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 「利用規約なんてどうせ読まれないし」 「まるごとパクればいいんじゃないの」 「免責しとけばなんとかなるよ」 と思ってませんか? 書は,多くのベンチャー企業の支援を通じてウェブサービスに関するリーガルサポートを数多く手がけている弁護士と,スタートアップ企業から上場企業までさまざまな規模・業態の企業でウェブサービスの運営をサポートしてきた法務担当者2人が,その経験をもとに,「ウェブサービスを安全に・円滑に運営するために当に気を配る必要のあ

    良いウェブサービスを支える「利用規約」の作り方
    r_kurain
    r_kurain 2013/03/01
  • 第4回 サーバー上のCalibreから、Kindleへニュースを自動プッシュする | gihyo.jp

    みなさんはこの夏休みどちらかへでかけましたか? 僕はちょっと温泉へ行ってきました。「⁠ちょっと行ってきました」と言ってもこの温泉、北アルプスのど真ん中で周りに車の入る道がなく、どの方向から歩いて行っても山小屋泊やキャンプ泊で2日間以上かかる(つまり往復に最低4日間必要。僕は5日間かけて行きました⁠)⁠、と言う大変な苦労をしてゆかなければならないと言う所。日ごろそれほど歩かない僕としては、足がもげてしまうかもしれない!と言うほどの苦労をして温泉につかって来ました。 この温泉行はテントを持ってキャンプしながら行ったのですが、荷物を減らすために結構苦労をしました。その荷物減らしに役に立ったのがKindle。1日歩いた後は暇な時間も多いので、などを持ってゆくのが良いのですが、って数冊になると結構重いのですよね。Kindleだと文庫1冊程度の重さで大量のを内蔵できるため、非常に軽く済ませられ

    第4回 サーバー上のCalibreから、Kindleへニュースを自動プッシュする | gihyo.jp
    r_kurain
    r_kurain 2013/02/27
    知らなかった!
  • Mobageを支える技術 ~ソーシャルゲームの舞台裏~

    このの概要 書は大規模Webサービスの構築・運用ノウハウを詰め込んで一冊にまとめた書籍です。急激に成長する巨大システム『Mobage』がどのように開発され,運用されているのか?その舞台裏を「ソーシャルゲーム(フィーチャーフォン/スマートフォン)」「大規模Webインフラ」「プラットフォーム」「ビッグデータ分析」といったテーマに分け,DeNAの実践的ノウハウを解説しています。 こんな方におすすめ Webサービスの構築・運用のテクニックを知りたい方 著者プロフィール 城戸忠之(きどただゆき) 1989年NTTソフトウェア入社。1999年南場社長がDeNA立ち上げの際に出向,ビッダーズのプロジェクトマネジメントに携わる。自分たちで事業を作ることが楽しくなり,2000年DeNA入社。「みんなのウェディング」「エアーリンク」など,DeNAの数々のプロジェクトに携わる。QualityAssuranc

    Mobageを支える技術 ~ソーシャルゲームの舞台裏~
    r_kurain
    r_kurain 2012/05/31
    これは読みたい
  • 第22回 TitaniumでiPadアプリ | gihyo.jp

    今まで、iPhone/iPodやAndroidを対象としたアプリ制作について解説してきましたが、今回はiPadアプリの作成について解説します。 すでに対応してるかも? Titanium Studioを利用するようになったTitanium Mobile 1.7から、iPhoneアプリiPadでも動くUniversal Binaryに対応しています。普通に新プロジェクトを作成するとiPadでも起動するようになっていて、Titanium Studioの左ペインにあるシミュレータ起動ボタンから、iPad Simulatorを選ぶだけでiPadでの動作が確認できます。 古いバージョンで作成しているプロジェクトをUniversal Binaryに対応させるには、まずtiapp.xmlのDeployment TargetsにあるiPadのチェックボックスがonになっていることを確認します。そのあと、p

    第22回 TitaniumでiPadアプリ | gihyo.jp
    r_kurain
    r_kurain 2011/09/27
    最終回を書きました。長い間お付き合いいただきありがとうございました!
  • 第16回 Titanium Studioの導入 | gihyo.jp

    Titanium Mobile SDK 1.7.0と統合開発環境Titanium Studioがリリースになったニュースは前回の記事でお伝えできたのですが、同時にTitanium Developer(旧開発環境)の配布が終了した点についてはお伝えすることができませんでした。いままでTitanium Developerを使っていれば自動でダイアログが出ていたSDKのアップデートも、現在のTitanium Developerでは手動でSDKをアップデートする必要があります。これからTitanium Mobileの開発を行う人にとっても、また1.7.0にアップデートしたい人にもTitanium Studioでの開発が必須になりつつあるので、今回はTitanium Studioの導入について解説します。また、1.7.0からAndroidでのデザインの指定が変更になっているのでこちらについても簡単に

    第16回 Titanium Studioの導入 | gihyo.jp
    r_kurain
    r_kurain 2011/07/05
    Titanium Studio について書きました。16回目だけどこれから 始める人もどうぞ。
  • 第15回 端末ごとにデザインを変更する | gihyo.jp

    最近のTitanium つい先日(6月13日)にTitanium Mobile 1.7がリリースされ、Android開発に便利な機能がいくつか増えました。特にFastdev for Androidという、コードの変更を高速にエミュレータに反映する機能はAndroid開発をかなり加速してくれそうです。この機能については今回の記事の後半で解説します。また今回は解説しませんが、Titanium Stduioという統合開発環境も正式版が発表になり、今後はTitainum Developerからこちらに移行されていくことが表明されています。 デバイスごとのUIデザイン さて、前回の記事でなんとかAndroidでもTwitter Clientが動作するようになりました。HVGAの解像度を指定してエミュレーター実行すると調度よいデザインで表示されます。しかしWVGA800やWVGA854といった解像度で

    第15回 端末ごとにデザインを変更する | gihyo.jp
    r_kurain
    r_kurain 2011/06/21
    FastDev で Android アプリ開発が超加速するよという話を後半に書きました。
  • 第14回 iPhoneサンプルアプリをAndroidに対応させる | gihyo.jp

    今回は実際に今まで作成してきたiPhone向けのTwitterクライアントを、Androidでも動作するように変更していきます。同時にiPhoneAndroid向けのアプリが同じコードで生成できるるようにしてみます。今回はエレガントな解法ではないのですが、OSごとに表示を分ける必要がある部分ではif文で分岐させることで対応させていきます。 TwitterAPIを対応させる では早速コードの変更を行っていきましょう。まずはTwitter APIを呼び出すコードをAndroidに対応させます。TwitterのOAuthインターフェースは最近HTMLが変更になっていて、古いHTMLを対象にしたコードでは動作しません。Androidに対応すると同時にこのHTMLの変更についても追従します。と、偉そうに書きましたが、いままでのサンプルで利用しているtm_twitter_apiを作成されている@mo

    第14回 iPhoneサンプルアプリをAndroidに対応させる | gihyo.jp
    r_kurain
    r_kurain 2011/06/07
    今回のAndroid対応は色々つらかった...
  • 第10回 データベースの使用 | gihyo.jp

    データベースを使ってみる 前回の記事ではTitanium.App.Propertiesやファイル入出力を利用したデータの永続化について解説しましたが、今回はRDBMSを利用したデータの扱い方について解説します。具体的には、自分のホーム画面のタイムラインを取得保存し、前回起動時に取得した分のタイムラインも閲覧できたり、タイムラインの内容を検索できるようにしてみます。 タイムラインの取得 この実装のために今までのサンプルコードを一部改変します。最初の画面で自分の発言だけでなく、フォローしている人も含めたタイムラインが閲覧できるようにtable_view.jsのタイムライン取得部分に次のような変更を加えています。 Ti.include("lib/twitter_api.js"); Ti.include("twitter_settings.js"); Ti.include("tweet_db.js

    第10回 データベースの使用 | gihyo.jp
    r_kurain
    r_kurain 2011/04/07
    TitaniumでSQLiteはかなり便利という話を書いたのでした。
  • 第7回 TitaniumでTwitterクライアント──カメラの使用 | gihyo.jp

    カメラを使ってみよう 前回はiPhoneらしい機能として、GPSとマップ表示の利用法について解説しましたが、今回はカメラの利用方法について解説します。また、既に撮影してある写真からも選択できるように、写真の選択方法をOption Dialogで選べるように実装してみます。また、TwitPicへの投稿方法も簡単に解説します。 ImageViewを準備 選択した写真をプレビューできるように、写真を表示するViewを用意しておきます。表示する部分は前回、地図を表示した部分と同じところにします。 前回実装を追加したmessage_window.jsに次のコードを追加します。 var imageView = Titanium.UI.createImageView( { width: 'auto', height: 240, top: 220 } ); imageView.hide(); win.ad

    第7回 TitaniumでTwitterクライアント──カメラの使用 | gihyo.jp
    r_kurain
    r_kurain 2011/02/22
    Titaniumからカメラを呼び出す記事を書きました。OAuth Echo でTwitPic に投稿する方法も。
  • 第13回 AnyEvent:イベント駆動モジュールの方言を吸収する | gihyo.jp

    イベントループを持つモジュールが抱える問題点 イベントループを持つモジュールの一例として、前回はPOEを取り上げましたが、もちろん同じようなループを持つモジュールはほかにもあります。 たとえば1995年に故ニック・イング・シモンズ(Nick Ing-Simmons)氏が始めたPerl/Tkや、POE誕生前夜の1997年から開発が行われているGtk(のちのGtk-Perl⁠)⁠、その後継にあたるGtk2/GlibのPerlバインディング(2003年)など、GUIアプリケーション関連のツールがそうですし、IO::Poll(1997年)やIO::Async(2007年)のようなモジュールにもイベントを監視するためのループが使われています。また、Event(1997年)やlibeventのラッパであるEvent::Lib(2004年⁠)⁠、EV(2007年)のように、イベントループそのものを実装す

    第13回 AnyEvent:イベント駆動モジュールの方言を吸収する | gihyo.jp
    r_kurain
    r_kurain 2011/02/21
  • ニコニコ生放送に見る Redis 活用ノウハウ 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    ニコニコ生放送に見る Redis 活用ノウハウ 記事一覧 | gihyo.jp
    r_kurain
    r_kurain 2011/02/11
  • 第6回 TitaniumでTwitterクライアント──GPSとMap | gihyo.jp

    スマートフォンらしい機能を 前回まではアプリ作成に必要なTitaniumの基的な機能について解説してきましたが、今回からは、GPSやカメラなどスマートフォンらしい機能の解説をしていきます。GPS,カメラそして加速度センサなどが簡単に利用でき、またiPhoneAndroidで共通のコードで扱うことができるというのはTitaniumの大きな利点です。 GPS情報とMap Twitterには位置情報を投稿する機能もあるので、今回はこの投稿部分を拡張してくことにします。前々回に作った投稿画面のコードを拡張して、投稿画面を次のような形に変更します。 左側のLocationボタンをタップすると、画面下側に地図が表示され現在位置が表示されます。テキストエリアにコメントを入れてPostボタンを押すと現在位置付きでPostされます。Twitter側の設定で位置情報を受け付ける設定にしないと、投稿しても無

    第6回 TitaniumでTwitterクライアント──GPSとMap | gihyo.jp
    r_kurain
    r_kurain 2011/02/08
    今回はGPS とか Map利用が超簡単という話を書きました。
  • 第5回 TitaniumでTwitterクライアント──windowの遷移 | gihyo.jp

    前回の記事でTwitterに投稿するところまで実装ができましたが、投稿したあとのwindowの遷移が起きないままになっていますので今回は画面遷移について解説していきます。また、今までのコードをgithubにて公開しましたので必要に応じて参照してみてください。各連載時のコミットにタグをつけてあるので連載にあわせてタグを選択すると便利です。 windowの遷移 windowを閉じる Twitterに投稿したあとに、メッセージを書いていたwindowを閉じるようにしてみます。 以下のコードを追加します。 postButton.addEventListener( 'click', function () { if ( textArea.value ) { tweet( textArea.value ); win.close(); //この行を追加 } } ); これで 投稿が完了すると、メッセージ

    第5回 TitaniumでTwitterクライアント──windowの遷移 | gihyo.jp
    r_kurain
    r_kurain 2011/01/25
    連載5回目 Titaniumでwindowを遷移していくときの実装について解説ました
  • 具体例で学ぶ!情報可視化のテクニック 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    具体例で学ぶ!情報可視化のテクニック 記事一覧 | gihyo.jp
    r_kurain
    r_kurain 2011/01/21
  • 第3回 TitaniumでTwitterクライアント──レイアウトの調整 | gihyo.jp

    前回の記事が公開された直後からTitaniumには大きなバージョンアップがあったので、今回はTwitterクライアントの続きを始める前に、そのお知らせから始めます。 Titanium Moble 1.5.1 リリース 前回までの記事は Titanium Mobile 1.4.2 で動作確認を行いながら執筆していたのですが、この度新バージョンの 1.5.1 がリリースされました。開発元のAppceleratorによると、この1.5系列によってAndroidでの開発はベータ版から正式版になったという扱いのようです。連載ではまだAndroid開発について説明していませんが、Intent、Activity、Menuボタンからのメニュー表示といったAndroidらしい機能が使えるようになったので、Androidでの開発もいよいよ面白くなってきたと言えるでしょう。Android SDKのインストール

    第3回 TitaniumでTwitterクライアント──レイアウトの調整 | gihyo.jp
    r_kurain
    r_kurain 2010/12/28
    連載3回目!
  • 第2回 TitaniumでTwitterクライアント | gihyo.jp

    前回の記事で環境構築と土台となるプロジェクとの作成ができたので、今回から実用的なアプリの制作に入ります。数回にわけてTwitterクライアントを作成しますので、ネットワーク周りや画像の取り扱いまでTitaniumの簡便さを体験していただければと思います。 どんなものを作るか まずは、実際に作るアプリのイメージを固めましょう。TwitterアプリはiPhoneアプリの中でも優れたアプリが多く激戦区となっているジャンルです。一方でTwitterを使い込んでいくと自分のよく使うWebサービスと連携させたくなり、自分の使い方にカスタマイズしたアプリも欲しくなるものです。ということで、Twitterのひと通りの機能を実装しつつ拡張しやすいシンプルなアプリを目指しましょう。 図1 画面イメージ 画面構成としてはこのようなアプリをイメージしておきましょう。 まずはTableView Twitterアプリ

    第2回 TitaniumでTwitterクライアント | gihyo.jp
    r_kurain
    r_kurain 2010/12/14
    連載第2回が掲載されましたー。TableViewの使い方と、HTTPを使ったネットワーク越しの情報取得について書きました!
  • 第1回 まずはTitaniumを体験してみよう | gihyo.jp

    はじめまして、株式会社はてなでアプリケーションエンジニアをしている倉井龍太郎(id:r_kurain)と申します。この連載では、今もっとも注目集めているスマートフォンアプリ開発環境であるTitanium Mobile(以下Titaniumと省略)を使ったiPhone及びAndroidアプリケーションの開発方法について解説していきます。 Titaniumとは TitaniumはAppceleratorが開発しているスマートフォンアプリ開発環境です。iPhone/iPod/iPad であればObjectice-Cを使用して、AndoridであればJavaを用いて作成するネイティブアプリケーションが、どちらの環境でもJavascriptのみで開発できるようになるものです。Titanuiumは無料で利用することができます。サポートを受けるにはAppceleratorの有料プランに入会する必要が

    第1回 まずはTitaniumを体験してみよう | gihyo.jp
    r_kurain
    r_kurain 2010/11/30
    gihyo.jp で連載が始まりました!皆様よろしくお願いいたします!
  • 第2回 memcachedのセキュリティと脆弱性 | gihyo.jp

    memcachedを安全に運用するポイント 2010年8月10日のスラッシュドット・ジャパンにて「Memcached に潜むセキュリティホール」としてmemcachedの脆弱性に関する記事が上げられました。記事の内容をまとめると以下の2点となります。 bit.ly や Globworld、Gowalla といったサイトではインターネットから memcached へのアクセスが可能であった アクセスしたmemcached上にユーザーのログイン ID / パスワードが格納されており参照可能だった http://slashdot.jp/security/article.pl?sid=10/08/10/0052240 ここには2つの問題があったと考えます。1つ目はmemcachedをインターネットから接続可能な状態で設置してしまったこと、もう1つはキャッシュ上に置かれている必要はなさそうなパスワー

    第2回 memcachedのセキュリティと脆弱性 | gihyo.jp
    r_kurain
    r_kurain 2010/11/10
  • 第32回 Reactorで非同期処理をやってみよう(2) | gihyo.jp

    おさらい 第29回では、非同期処理を実現する方法としてReactorパターンを紹介しました。 一般的に非同期処理として使われているスレッド処理と違い、Reactorパターンはシングルスレッドで動作し、スレッド間のデータの共有に悩む必要はありません。しかしReactorパターンはコードが直感的ではなく、慣れていない人には取っつきにくいものであることも確かです。 そのため、Reactorパターンを意識せずに非同期処理を実現するためのライブラリがRubyにはたくさん用意されています。 今回は、その中でもよく使われているEventMachineについて簡単に説明します。 EventMachineとは EventMachineとは、Reactorパターンを利用して非同期処理を実現し、高レベルなネットワークインターフェースを提供するライブラリです。 複雑なReactorパターンによる処理はブラックボッ

    第32回 Reactorで非同期処理をやってみよう(2) | gihyo.jp
  • 第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp

    「締め切りを守ること」の大切さ 今までたくさんの日米のエンジニア仕事をしてきた。その中には私よりも明らかに「賢いエンジニア」もいたし、ものすごい生産性でプログラムを作ってくれる「馬力(ばりき)のあるエンジニア」もいた。しかし、そんな中でも、私がものを作るうえで最も大切だと考えている「あること」をキチンとこなせる人は100人に1人もいなかった。その「あること」とは、「⁠常に締め切りを守れるように仕事をすること」である。 チームで仕事をする場合、どうしてもお互いが担当するタスク(=作業)の間に依存関係が生じる。そんなときに、どれか一つのタスクの完了の遅れが、ほかのタスクの完了に波及し、それがタスク間の競合を引き起こして全体のスケジュールがさらに遅れる、という事態はソフトウェア開発の現場ではよく見られる。そんな状況をできるだけ回避するには、プロジェクトに関わる人全員が、自分に割り当てられたタス

    第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp
    r_kurain
    r_kurain 2010/07/21