タグ

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

  • gihyo.jp、15年ぶりの大幅リニューアル! | gihyo.jp

    Webメディア「gihyo.jp」のリニューアル 技術評論社のエンジニア向け情報サイト「gihyo.jp」は2022年7月11日、2007年のサイトオープン以来の大幅なリニューアルを行いました。またgihyo.jpの編集長として、私、高橋和道が就任する運びになりました。 Webメディアとしてのgihyo.jpはこれまでよりも独立性を持たせ、記事を読みやすくなるようにデザインを変更しました。対象読者も従来のエンジニアやデザイナーに加えて、ビジネスシーンを含めITを活用している人への記事を増やしていきます。 また、サイトオープン以来、さまざまな形でご協力いただいてきた各種コミュニティの関連技術記事はもちろん、gihyo.jpの特色の1つであったイベントレポートも掲載していければと考えています。 技術記事などのご寄稿は随時受け付けていますので、ご興味のある方はお問い合わせください。 なお、技術

    gihyo.jp、15年ぶりの大幅リニューアル! | gihyo.jp
    chris4403
    chris4403 2022/07/12
  • 第7回 Google App Engineで位置情報サービスを作ってみよう | gihyo.jp

    連載の最終回となる今回は、これまでの内容のおさらいとして、Google App Engineで自分の位置情報を記録するサイトを作ってみます。 アプリケーションの内容 今回作成するアプリケーションは、簡単な位置情報サービスということで、以下のようなサイトにしたいと思います。 Goelocation APIに対応したブラウザでトップページを開いていると、測位された位置が変わるごとにサーバへ緯度経度をPOSTし、Geohashに変換してGoogle App Engineのデータストアに保存する。 履歴ページ(/history)へアクセスすると、地図を表示し、それまでに記録されている位置を線でつないで地図上に表示する。 今回必要となる技術要素は以下のようになります。 トップページ: Google Maps JavaScript APIを利用した地図の表示 JavaScriptによる位置情報の取得

    第7回 Google App Engineで位置情報サービスを作ってみよう | gihyo.jp
    chris4403
    chris4403 2011/01/25
    位置情報連載の最終回が公開されました。最後はGoogle App EngineでブラウザからPOSTされた緯度経度をGeohashにして保存する、みたいなことを解説しています。
  • 第6回 位置情報を保存しよう(後編) | gihyo.jp

    その他の言語のライブラリについては、http://en.wikipedia.org/wiki/GeohashのExternal Linkの項を参照してください。 例えば、perlのCPANモジュール Geo::Hashを利用して、Goehashをencode/decodeする方法は、以下のようになります。 encode my $geohash = Geo::Hash->new; my $hash = $geohash->encode( $lat, $lon ); decode my $geohash = Geo::Hash->new; my ($lat, $lon) = $geohash->encode( $hash ); Geohashが注目された理由 Geohashが注目されたのは、Google App EngineのDatastoreでの「検索のクエリで絞り込み条件が指定できるカラム

    第6回 位置情報を保存しよう(後編) | gihyo.jp
    chris4403
    chris4403 2010/12/28
    位置情報の連載第6回が公開されました。次回が最終回になります。
  • 第2回 TitaniumでTwitterクライアント | gihyo.jp

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

    第2回 TitaniumでTwitterクライアント | gihyo.jp
    chris4403
    chris4403 2010/12/14
  • 第5回 位置情報を保存しよう(前編):位置情報サービスのはじめ方|gihyo.jp … 技術評論社

    今回から2回に分けて、位置情報をDatastoreに格納する方法をいくつか紹介します[1]⁠。 数値型で保存する 緯度経度の情報をデータベースへ格納するときに、もっとも簡単な方法が数値型として保存する方法です。緯度経度がとりうる値の範囲は、以下の通りですので、システムに必要な小数点以下の数字を考慮して型を決めましょう。 はてなフォトライフでは、写真に緯度経度のメタ情報を設定することができますが、高精度な緯度経度情報は必要ないので、型を以下のように指定しています。 latitude decimal(7,4) longitude decimal(7,4) decimal(7,4)という指定は、10進数で7桁のデータで、小数点以下は4桁まで格納するというものです。 あるオブジェクトの緯度経度を保存し、表示するだけならこれだけで十分ですが、位置情報を中心に扱うサービスになると、格納したデータを緯度

    第5回 位置情報を保存しよう(前編):位置情報サービスのはじめ方|gihyo.jp … 技術評論社
    chris4403
    chris4403 2010/12/01
    連載第5回が公開されました。今回は緯度経度をDBに格納するところのおはなしです。
  • 第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
    chris4403
    chris4403 2010/11/30
    r_kurainによるTitaniumの連載が始まりました
  • 第4回 位置情報を表示してみよう | gihyo.jp

    今回は、前回、前々回で取得した位置情報を元に、地図を表示する方法を解説します。 Google Maps JavaScript APIで動的な地図を表示する Webサイトで地図を表示する方法と言えば、多くの方がGoogle MapsのAPIを思い浮かべるのではないでしょうか。APIの公開後、現在も頻繁にアップデートがあり、いくつもの新機能が追加されています。ここでは、Google Maps JavaScript APIの基的な使い方を解説しつつ、最新のversion 3で追加されたいくつかの面白い新機能を紹介したいと思います。 シンプルな地図の表示 まずは、オーソドックスに地図を表示してみましょう。 以下のようなHTMLを記述するだけで、ページ上に、マウス操作で自由自在に操作できる地図が表示できます。 https://github.com/chris4403/geolocation/blo

    第4回 位置情報を表示してみよう | gihyo.jp
    chris4403
    chris4403 2010/11/12
    連載第4回が公開されました。Google Maps APIのことを書いてます。
  • 第3回 位置情報を取得してみよう(後編) | gihyo.jp

    連載第3回目の今回は、JavaScriptを利用した位置情報の取得方法を解説します。 Geolocation APIを利用する Geolocation APIとは、JavaScriptで位置情報を取得するAPIのことで、現在W3Cで仕様を策定中ではありますが、Firefox 3.5やGoogle Chrome 5、Safari 5など、いくつかのモダンなブラウザではすでに利用できます。 ただし、プラグインや設定などによって利用できるかどうかは変わってくるため、コードの中で利用可否の判定を行う場合は、ブラウザ名とバージョンで判定するのではなく、geolocationオブジェクトが利用可能かどうかで判定するのが一般的です。 位置情報を取り扱うgeolocationオブジェクトは、window.navigatorから取得することができます。window.navigator.geolocation

    第3回 位置情報を取得してみよう(後編) | gihyo.jp
    chris4403
    chris4403 2010/10/29
    連載第3回目は、JavaSriptで位置情報を取得する内容になっています。
  • 第2回 位置情報を取得してみよう(前編) | gihyo.jp

    連載第2回目の今回は、最初に位置情報の基的な内容を確認して、実際のデバイスから位置情報を取得してみます。 位置情報の基 位置情報は地球上のある地点を指し示す情報で、主に「緯度」「⁠経度」で表現することができます。 「緯度」は、ある地点の赤道面との角度のことです。赤道上を0度として、北極点、南極点でそれぞれ北緯90度、南緯90度となります。英語では、latitudeとなり、省略されるときはlatとなります。 「緯度」は、ある地点のグリニッジ子午線からの角度のことです。子午線上を0度として、グリニッジから東を東経、西を西経と呼びます。英語では、longitudeとなり、省略されるときは、lonやlngとなります。 緯度も経度も、35°40⁠’19.31⁠”のように度分秒、もしくは35.672031のように度のみで表現されます。度分秒から度の表記には、以下のように変換できます。 35 + (

    第2回 位置情報を取得してみよう(前編) | gihyo.jp
    chris4403
    chris4403 2010/10/14
    位置情報連載第2回。今回はガラケーでの位置情報取得についてまとめました。
  • 第1回 今、位置情報が熱い! | gihyo.jp

    こんにちは。株式会社はてなで位置情報サービス「はてなココ」のディレクターを担当しているはてなの栗栖(id:chris4403)です。今回から数回にわたり、Webサービスで位置情報を取り扱うにあたっての技術的な解説(位置情報の取得の仕方、保存の方法、表示の方法など)をしていきたいと思います。 連載の内容を一通り理解すると、位置情報サービスが実装できるようになっているところを目指します。連載の中では、実際に運営している位置情報サービス「はてなココ」での、具体的な事例も紹介していきます。 位置情報サービスって何? 第1回目の今回は、そもそも「⁠『⁠位置情報サービス』って何?」「⁠それおもしろいの?」という方のために、「⁠位置情報サービスとは何か」そして「なぜ今位置情報サービスが熱いのか」について解説します。 まず最初に、連載での「位置情報サービス」という言葉を「ユーザーの位置情報をWebサーバ

    第1回 今、位置情報が熱い! | gihyo.jp
    chris4403
    chris4403 2010/09/30
    gihyo.jpで連載始まりました。
  • 第2回 JSDeferredを用いたアプリケーション開発(その1) | gihyo.jp

    JSDeferredの基的な読みかた JSDeferredを使ったコードを読むときには、next() という関数がキーになっています。 リスト1 // next() のチェイン Deferred.next(function () { // 最初の next は Deferred.next alert(1); }). next(function () { // これは Deferred.prototype.next alert(2); }). next(function () { alert(3); }); 前回すこしばかり例を出しましたが、このように next を繋げていくことで処理の流れを表現します。 Deferred.next() と Deferred オブジェクトのメソッドとしての next() があることに注意してください。Deferred オブジェクトのメソッドとしての nex

    第2回 JSDeferredを用いたアプリケーション開発(その1) | gihyo.jp
  • 第1回 JSDeferredによる簡単非同期処理 | gihyo.jp

    どうもはじめまして、株式会社はてなのid:cho45です。これから数回に渡り、拙作のJavaScriptのライブラリであるJSDeferredの紹介と、それに関係するJavaScriptにおける非同期の技術に関して解説させていただきます。 JavaSciptにおける非同期処理 非同期処理とは まずは確認程度に、非同期処理がどういうものかを解説しておきます。先に乱暴にまとめてしまうと、以下の事柄が大切なところです。 非同期とは「あとで」という意味 同期処理はコードの見た目順に実行される/非同期ではそうならない JavaScript の非同期処理は絶対に同期処理にすることができない JavaScriptにおける非同期処理をいくつか例に出すと、以下のようなものが挙げられます。 リスト1 // XMLHttpRequest の例 var req = new XMLHttpRequest(); re

    第1回 JSDeferredによる簡単非同期処理 | gihyo.jp
  • 第6回 Jaxerのセキュリティ・パフォーマンスについて | gihyo.jp

    前回までは、Jaxerの紹介や、サンプルアプリの作成、そしてAmazon EC2での公開の手順を解説してきました。 最終回となる今回は、Jaxerのセキュリティとパフォーマンスについて、そしてJaxerの今後のロードマップについて解説したいと思います。 Jaxerのセキュリティ 近年、アプリケーションに対するセキュリティ要件はますます高くなっています。セキュリティ、といっても様々な切り口があります。 Jaxerのセキュリティについては、公式サイトにその見解がまとめられています。 その内容を簡単に解説します(フレームワークとして当たり前のことも書かれていますが、その点は「当たり前のことがちゃんとできている」というふうに読みとってください⁠)⁠。 複雑な処理のラッピング Jaxerは、クライアントとサーバ間の通信をフレームワークでうまくラッピングしています。クライアントから送信したものと、サー

    第6回 Jaxerのセキュリティ・パフォーマンスについて | gihyo.jp
  • 第2回 新機能の詳細と使い方の紹介 | gihyo.jp

    バージョン0.6からは、システム管理者がプロジェクト全体の設定を行う場合はトップメニューの「管理」から変更を実施し、プロジェクト管理者によるプロジェクト毎の設定はタブメニューの「設定」から変更を実施するようになっています[1]⁠。 トップページのデザイン 新機能の使い方紹介 それでは早速、前回に紹介した新機能の使い方を解説していきます。 「問題」の登録と変更 「問題」の登録方法が以前のバージョン(0.5.1)から変更されていますので、その使い方をはじめに解説します。 サイドエリアの新しい問題の下部にプルダウン形式の「トラッカー」があります(図:トップページのデザイン参照⁠)⁠。そこで登録する問題の「トラッカー」を選択することで、新しい「問題」の登録画面へ遷移します。新しい問題の登録の画面に遷移したら、以前の登録方法と同じように担当者や題名、説明等を入力します。 バージョン0.5.1と比較す

    第2回 新機能の詳細と使い方の紹介 | gihyo.jp
    chris4403
    chris4403 2008/03/31
  • 第5回 Amazon EC2でJaxerを動かす! | gihyo.jp

    Jaxerアプリケーションの公開 前回までで、簡単なJaxerアプリケーションを作成するところまでを解説しました。 さて、せっかくアプリケーションを作ったのなら、公開してみたくなるものです。とはいえ、日のレンタルサーバは、Javaが利用できなかったり、PerlPHPPythonには対応していても、バージョンが古かったり、CGIモードでしか動作しなかったり、プラグインが自由に利用できなかったりと、不自由な点が多く、Jaxerのような新しいプロダクトを利用できる環境はなかなか見つかりません。 自分でサーバを構築して運営する 第1回目の連載の中で、Linux版の対応がまだと書きましたが、先日ついにLinux版のJaxerが公開されました。そしてそれに併せて、Amazon EC2でJaxerを動かす方法も公開されています。 Amazon EC2とは、米Amazonが展開するWeb Servi

    第5回 Amazon EC2でJaxerを動かす! | gihyo.jp
  • Redmineを運用するためのイロハを身につけよう:第1回 新機能の紹介と最新版が利用できるまで|gihyo.jp … 技術評論社

    はじめに Redmineは、Ruby on Railsで実装された、最近注目を集めているプロジェクト管理ツールです。 オープンソースソフトウェアのため、使用する際のソフトウェア費用はかからず、無償で利用すること可能です。なお、ライセンスはGPL(GNU General Public License)となっています。 主な機能は、バグトラッキング、ガントチャートや工数集計といったプロジェクト進捗管理、Wikiやニュースによる情報共有、バージョン管理システムであるSubversionとの連携など、非常に多機能なツールです。 連載では、Redmineプロジェクト内で開発環境等に導入し、実際に手を動かしてメンテナンスを実施するような運用担当者を想定し、最新バージョン(0.6.3)までに追加された新機能や運用管理機能の紹介から、インストール/バージョンアップ方法やカスタマイズ、軽量Webサーバや

    Redmineを運用するためのイロハを身につけよう:第1回 新機能の紹介と最新版が利用できるまで|gihyo.jp … 技術評論社
  • Redmineを運用するためのイロハを身につけよう 記事一覧 | gihyo.jp

    第6回よりよいパフォーマンスを求めて ~WEBrickからlighttpdへ~ 安達輝雄,並河祐貴 2008-05-26

    Redmineを運用するためのイロハを身につけよう 記事一覧 | gihyo.jp
  • 第1回 無料でFlash作りに挑戦!Flex 3 SDKを導入してみよう | gihyo.jp

    Flashを作るには何万円もする専用ソフトが必要…、デザイナーが使うものだから敷居が高い…。そう考えてる方も多いのではないでしょうか。実はそんなことはありません。 Adobe社が無料で提供している開発環境「Flex 3 SDK」を利用すれば、ActionScript 3.0というプログラミング言語でFlashを作成できます。ActionScript 3.0はECMAScriptに準拠しているため、プログラマの方にとってもなじみやすい言語といえます。 この連載ではプログラマの方に向けて、サンプルを交えながら、ActionScriptでFlashを作る手法を解説していきます。 ActionScript 3.0でHello World! いきなりですが、ActionScript 3.0のサンプルコードを見てみましょう。定番のHello World!です。 package{ import flas

    第1回 無料でFlash作りに挑戦!Flex 3 SDKを導入してみよう | gihyo.jp
    chris4403
    chris4403 2008/03/14
  • 第4回 サンプルアプリ(タスク管理アプリ)の作成 -タスクの編集・削除/入力値チェックの共有- | gihyo.jp

    タスクの編集・削除 前回からJaxerのアプリケーション作成に着手し、タスク管理アプリのタスクの登録ができるようになりました。 今回は、タスクの編集・削除と、Jaxerのウリの一つである「サーバサイドとクライアントサイドでの入力値チェックの共有」というところを実装します。 まず、タスクの編集・削除を実際にDBに対して実行する関数を以下のように定義しましょう。 定義する場所は、getAllTask()、add()が定義してあるrunat属性がserver-proxyのscriptタグの中です。 function update(id,text){ try{ text = decodeURIComponent(text); Jaxer.DB.execute("UPDATE memo set contents = ? where id = ? ",[text,id]); return true;

    第4回 サンプルアプリ(タスク管理アプリ)の作成 -タスクの編集・削除/入力値チェックの共有- | gihyo.jp
  • 第3回 サンプルアプリ(タスク管理アプリ)の作成 -タスクの登録・表示- | gihyo.jp

    Jaxerアプリケーションの作成 前回は、Jaxerの環境構築、およびサンプルアプリの解説をしました。今回から、いよいよJaxerアプリケーションのプログラミングに取り掛かります。 今回作成するサンプルアプリケーションは、タスク管理アプリです。画面イメージは以下のようになります。 実装する機能は、次のものになります。 テキスト入力欄にタスクを入力し、Enterキーを押すと、タスクが登録できる。 登録したタスクは、即時画面上に反映される。 既存のタスクをクリックすると、テキスト入力欄になり、タスクの内容を編集できる。 ×をクリックすると、タスクを削除できる。 それでは、前回インストールしているAptana Studioを起動しましょう。 起動後、以下の手順で、まずは「task」プロジェクトを作成します。 project viewで右クリック→New→Projectを選択する。 New Pro

    第3回 サンプルアプリ(タスク管理アプリ)の作成 -タスクの登録・表示- | gihyo.jp