タグ

ブックマーク / thinkit.co.jp (116)

  • 「Web制作者のためのCSS設計の教科書」を読んでみました

    Web制作仕事について デザイナーがデザインした画面を、マークアップエンジニアがコーディングをしてサイトを公開する。 Web制作という観点から見るとこれで完了かもしれませんが、Webサイトは「いったん完成すればそれで終わり」ではありません。サイト公開後にターゲットユーザーをそのサイトに集客し、サイトオーナーのビジネスを儲けさせるために、運用をしなくてはいけません。運用フェーズに入ると、様々な改修や、新規キャンペーンサイトなどが追加になるかと思います。もちろんサイト公開前にも、「ちょっとココの色変えて」など言われることもあるでしょう。CSSの設計が悪いと、サイト改修を重ねるうちに思わぬところで見た目が崩れて、その修正に余計に工数がかかることになります。皆さん一度はこのような経験をされているのではないでしょうか。 書は、これらの問題を解決するための思考を学ぶための書籍と言えるでしょう。10

    「Web制作者のためのCSS設計の教科書」を読んでみました
    yuiseki
    yuiseki 2014/08/20
  • RailsのテストフレームワークRSpecの基礎知識

    実践Ruby on Rails 4 現場のプロから学ぶ格Webプログラミング 顧客管理システムの構築を体験しながら、Railsアプリケーション開発のノウハウを習得! この記事は、書籍『実践Ruby on Rails 4 現場のプロから学ぶ格Webプログラミング』の内容を、Think IT向けに特別にオンラインで公開しているものです。詳しくは記事末尾の書籍紹介欄をご覧ください。 記事では、テストフレームワークとしてRSpecを採用します。RSpecをうまく活用すると、簡潔で読みやすいテストコードを書くことができ、Railsアプリケーションの保守性を高めることができます。 しかし、RSpecの用語法や表記法はやや独特で、慣れるまでには時間がかかります。読者の中にはとまどいを覚える方がいらっしゃるかもしれませんが、次章以降を読み進めるうえでの鍵となりますので、是非じっくりと読んで理解してく

    RailsのテストフレームワークRSpecの基礎知識
    yuiseki
    yuiseki 2014/07/09
  • Raspberry PiとNode.jsで作る独立稼働モバイルサーバ

    Raspberry Piを購入したきっかけ 筆者がRaspberry Piを購入したのは、3,500円程度でLinuxが動くという理由からでした。よく使用するArduino Uno※1が3,000円くらいでマイコンレベルなのに比べると、性能的にはるかに安かったのです。しかし、買った時点では特に何に使おうかは考えていませんでした。とりあえず起動して、安いのにXウィンドウ動いてスゴイな、という印象でした。ところがふとしたことから、次に取り上げるNode.jsが動くらしいという情報を得て、格的にいじり始めました。 まずはNode.jsをRaspberry Piにインストールして、チャットアプリを作成するところまでを説明していこうと思います。後半ではRaspberry PiでNode.jsを使ったプロトタイピングの例を紹介します。 ※1 Arduino Uno: プロトタイピングデバイスとも呼ば

    Raspberry PiとNode.jsで作る独立稼働モバイルサーバ
  • WEPから読み解く暗号と安全性

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • 暗号解読からわかる本当の安全・安心

    WEP完全解読への道 PTW攻撃は初期ベクトルIVに依存しない攻撃法で、かつARPインジェクション攻撃を併用すれば、4万パケットで104ビットWEP鍵を導出できる画期的な方法である。しかし、実際の無線LAN環境では、防御側がARPインジェクション攻撃からPTW攻撃を検知し、即座に防御を行うことや、事後に速やかにWEP鍵を再設定することが可能である。防御側にとってはIPS(ネットワーク侵入検知防御システム)等を導入することで対策を採ることができるのである。 PTW攻撃がARPパケットの収集に依存する原因はキーストリームの収集の困難性にあった。理論的な暗号解読においては、解読者にとっては最も好都合な状況、すなわち暗号運用者にとって最も困難な状況を仮定するのが常である。 ストリーム暗号で言えば、少なくともキーストリームが既知であることを仮定する。しかし、一般に盗聴が可能である環境でも、観測できる

  • WEPの解読方法を知る!

    無線LAN暗号化 先の2回において、暗号の意味、それを解読するということ、そして、その具体化としてストリーム暗号であるRC4とその安全性について解説した。今回は無線LANの暗号化方式として、IEEE 802.11bで規定されているWEPについて、特にその解読法について説明する。 IEEE 802.11は1997年に規定された、最初の無線LAN関係の規格である。当初は2Mbpsの規格であったが、その後すぐに11Mbpsに対応し、54Mbpsに高速化され、現在策定中のIEEE 802.11nでは300Mbpsへの拡張が予定されている。 無線LANの性質上、空間を伝搬している信号を誰にも気づかせることなく盗聴することが可能となる。無線は伝搬範囲を正確に制限することが難しく、利用を想定している範囲外(室外)に信号が伝搬することからその対策が必須となる。 しかし、信号電力を制御することや電波を遮へい

  • 暗号解読とストリーム暗号

    暗号を解読するということ 第1回(http://thinkit.jp/article/810/1/)では暗号の概要について述べた。今回は特に鍵の安全性と解読について解説し、ストリーム暗号の仕組みを紹介する。 なお、文中の計算式において、「_」は続く文字列を下付きに添えることを、「^」は文字列を上付きに添えることを表す。例えば、k_{c}はkに対してcという文字を下付きに添えることを表し、f^{-1}はfに対して-1を上付きに添えることを表し、つまりfの-1乗を示している。 暗号を解読するということ 第1回(http://thinkit.co.jp/article/810/1/)では暗号の概要について述べた。今回は特に鍵の安全性と解読について解説し、ストリーム暗号の仕組みを紹介する。 なお、文中の計算式において、「_」は続く文字列を下付きに添えることを、「^」は文字列を上付きに添えること

  • 暗号とは何か、何であるべきか

    WEPはもはや暗号ではない! 2008年10月、著者らは無線LANの標準暗号化方式であるWEP(Wired Equivalent Privacy)を解読した。以前より、WEPの脆弱(ぜいじゃく)性は報告されており、大量のパケットを盗聴したり、あるいは特殊なパケット(例えばARPパケット)を数多く収集できるという条件の下で解読が可能であった。 今回、特異な条件を持たない一般のIPパケットを3万パケット程度観測するだけで、104ビットWEP鍵を導出する方法を提案し、実証した。WEPはもはやデータの秘匿性をまったく保証できない方式であり、暗号としての体を成さなくなった。 暗号とは情報、特にその安全性を制御する技術である。情報の安全性は、大きく「情報の機密性」「情報の完全性」「情報の信頼性」に分けられるが、WEPは主に「情報の機密性」を保証する技術であった。事実上、情報通信ネットワークの上で形成さ

  • [ThinkIT] 第2回:情報の質を向上させる知識化とは(1/3)

    組織内だけでコミュニケーションを行っていると、どうしても組織間で情報の壁ができてしまい、必要な情報が共有されなくなる傾向がある。ある商品に関する情報は、例えば「ユーザ → 営業部門 → 製造部門 → 技術部門」というように流れることが望ましい場合があるが、組織の壁により伝わるべき情報が寸断されてしまうと、視点が組織内に固定化されてしまい、知識が生まれにくくなる。 そこで図1のように情報を作る立場と使う立場のコミュニケーションの場を提供することにより、組織間の垣根をなくして必要な情報を共有・発信させるようにすれば、様々な視点の情報がやり取りされ、質の高い情報が得られるようになる。 また組織間でのコミュニティが活性化されると、情報提供のメリットが肌で感じられるようになり、自然に情報共有意識も強くなるというメリットもあげられるだろう。 このような組織を超えたコミュニケーションの場は、最近では何か

    yuiseki
    yuiseki 2012/10/16
  • [ThinkIT] 第1回:ナレッジマネジメント導入ポイント (1/3)

    「ナレッジマネジメント」という言葉は、読者の皆さんもいろいろな場面で見聞きしているのではないかと思う。「ナレッジマネジメント」とは売上拡大やコストの削減など、企業が成長するための経営課題を知識資産の活用面から解決する施策であり、特に企業の持つ知識資産を共有して有効活用し、そこから新しい価値を創造する仕組みや手法である。 既存のナレッジマネジメントシステムは情報検索が先行したために、実際に導入したものの以下のような課題に直面してはいないだろうか。 ナレッジツールを導入したが、社員が活用していない 検索結果だけでは、知りたい情報が得られない 2007年問題に代表されるように、退職・移動する社員の担当業務ノウハウを、効率的に後任者へ引き継ぎができない

    yuiseki
    yuiseki 2012/10/16
  • プレイヤーの身体パーツを判別するKinectサンプル

    みなさんこんにちは。薬師寺国安@PROJECT KySSです。今回より14回にわたって、KINECTプログラミングの応用編のサンプルを紹介したいと思います。基編より一歩突っ込んだ面白いサンプルを紹介していきたいと思いますので、ご期待ください。 今回の応用編のサンプルは、このサンプルを使って何ができるのか、というより、Kinectセンサーを使うと、こんなこともできますよ!といったことを伝えたくて作ったサンプルです。大いに楽しんでいただければと思います。 第1回のサンプルはKinectセンサーでプレイヤーの頭、左手、右手、両手を判別させるサンプルです(1人が対象です)。やり方はいろいろありますが、一番簡単な方法を紹介します。図1と動画をご覧ください。 このように、Kinectセンサーには人間の各部位を判別する機能が備わっています。基編で紹介した「音声認識」と組み合わせて、音声で読み上げられ

  • [ThinkIT] 第1回:歴史とアーキテクチャを比較してみる (1/3)

    それぞれの歴史を比較する前に、まず3つのOSの基となったUNIXについて解説しておきましょう。もちろん、「そんなの知ってるよ」という方は読み飛ばしてかまいません。また、「過去なんてどうでもいいぜ、今が大切なんだよ」という方もお先にどうぞ。 さて、「UNIX」は開発当初は「Unics」と呼ばれ、「uni」と「cs」からなる造語でした。「Uni」はご存知のとおり「ひとつ」という意ですが、「cs」って何だよと思われるでしょう。それはひとまず置いておきまして、「Uni」の反対の「複数」という意の言葉、「Multi」を冠する「Multics」というシステムが遠い昔にありました。 Multics は「MULTiplexed Information and Computing Service」の略で、MIT、General Electric、AT&T ベル研究所によって開発されたマルチタスクのOSです。

    yuiseki
    yuiseki 2012/06/16
  • [ThinkIT] 第2回:ファイルシステムを比較してみる (1/3)

    ファイルシステムとは、ハードディスクなどの記憶装置にデータを記録する方式です。それぞれのOSでファイルシステムは異なり、それぞれに特徴があります。また、信頼性やパフォーマンスにも影響しますので、ここでじっくり比較してみましょう。 Solarisでのデフォルトファイルシステムは「UFS」(UNIX File System)です。これは4.3BSDで実装されたファイルシステムであり、ここでもSolarisがBSDの血を受け継いでいることがわかります。UFSについては後述の「BSDのファイルシステム」で説明しますので、ここではSolaris 10で採用される(アップデートリリースで対応)新しい「Solaris ZFS」(Zetta Bytes File System)について紹介しましょう。 ZFSの特徴としてまず挙げられるのが、128bitアドレッシングにより事実上無限のディスク容量を扱えるこ

    yuiseki
    yuiseki 2012/06/16
  • UNIX系OSを比較検討する~まとめ | Think IT(シンクイット)

    Solarisを比較検討する これまで様々なサーバーOSを比較してきました。最終回となる第5回では、UNIX系のサーバーOSについて比較検討していきます。 Solarisはサン・マイクロシステムズ(以下サン)が販売しているUNIXです。もともとUNIX System Vの流れをくむOSで、1990年代にはインターネット系のサーバーとしてその動作するハードSPARCとともに大きなシェアを持っていました。 もともとは商用のUNIXでしたが、2005年にサンがSolarisのソースコードをCommon Development and Distribution License(CDDL)というライセンスの元で公開し、以後オープンソースとなっています。OS体はOpenSolarisとして無償で利用できますが、パッチの入手やサポートが有償となっています。 SolarisはSPARCアーキテクチャ用と

    yuiseki
    yuiseki 2012/06/16
  • スマホアプリ開発にも役立つHTML5の8つの技術

    前回でお伝えしたように、シリコンバレーでは特に昨年あたりから「オープンなWebの技術でスマートフォン向けアプリを開発」という動きが強くなってきています。そして、オープンなWebの技術を語るときに欠かせない存在のひとつとしてHTML5が挙げられます。 今回はスマートフォン向けアプリケーション開発の観点からHTML5をおさらいしてみましょう。 1. HTML5の8つの特徴的な技術 HTML5には「セマンティックス」「オフライン&ストレージ」「デバイスアクセス」「コネクティビティ」「マルチメディア」「3D、グラフィックス、エフェクト」「パフォーマンス&インテグレーション」「CSS3」という8つの特徴的な技術があり、各技術を表すロゴも決められています。 以下では特に、これら8つの技術を使うとスマートフォン向けWebブラウザで何ができるのかについて、簡単に振り返ってみたいと思います。 1)セマンティ

    yuiseki
    yuiseki 2012/06/07
  • [ThinkIT] 第1回:NASAにも導入されたAlfrescoとは? (1/3)

    皆さんはECMという言葉をご存じでしょうか。ECMとは「Enterprise Content Management(企業向けコンテンツ管理システム)」の略で、そのまま解釈すれば「企業内のコンテンツの管理精度を向上させる仕組み」ということになります。 ではここでいう「コンテンツ」とは何でしょうか。ECMの世界でコンテンツというと「非定型のデータのすべて」という定義が一般的です。基幹システムのデータベースに格納されているような定型的なデータではなく、WordやExcelなどのフォーマットで企業内に蓄積されている情報のすべてがECMの対象となり得ます。 ECMはもともとPCで作成されるデータ・文書の管理精度を向上させるためのシステムという位置づけにあり、以前は「文書管理システム」や「電子的文書管理システム(Electric Document Management System)」と呼ばれていまし

    yuiseki
    yuiseki 2012/05/24
  • ソフトウエアエンジニアがUX/UIを考える上で読むべき4冊の良書と名言たち

    筑波大学  システム情報工学研究科  コンピュータサイエンス専攻  非数値アルゴリズム研究室(NPAL) 五十嵐 悠紀 2004年度下期、2005年度下期とIPA未踏ソフトに採択された、『天才プログラマー/スーパークリエータ』。筑波大学 システム情報工学研究科 コンピュータサイエンス専攻 非数値アルゴリズム研究室(NPAL)に在籍し、CGUIの研究・開発に従事する。プライベートでは二児の母でもある 何か製品を考える時、そのものがカタチのあるものであっても、はたまたコンピュータの中で動くソフトウエアだったとしても、「ユーザーインターフェース(以下、UI)」について考える必要があります。さらには、わたしたちが日常生活においてストレスなく過ごせている裏側には、さまざまな人によって考えられてきたUIデザインが隠されていたりもします。 わたしは滞在先のホテルで、洗面所に入ったものの出ようとした時に

  • ネイティブアプリで作る?Webアプリで作る?

    1. Walled Gardenからの脱却 筆者は2010年以降、シリコンバレーに数ヶ月単位で滞在しながらスマートフォン周りの最新動向を追いかけているのですが、2011年あたりからモバイルデベロッパーによる「Walled Gardenから自由になろう」という動きが強まってきたように思います。 Walled Gardenというのは直訳すると「塀で囲われた庭」ですが、ここではサービス事業者によるクローズドなアプリケーション開発・提供環境のことを指しています。具体的には、例えばiPhone/iPad向けアプリケーションを開発・提供する場合、デベロッパーはApple社独自の開発言語「Objective-C」を習得してアプリを開発し、App Storeの審査に通って初めてリリースとなりますが、販売は同社のApp Store上で行うことが義務づけられています。また、App Storeでの販売額のうち3

    yuiseki
    yuiseki 2012/05/24
  • ネットワーク設計/構築の最前線

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

    yuiseki
    yuiseki 2012/03/17
  • [Think IT] サーバが重いってどういうこと? (1/3)

    サーバが重いってどういうこと? 著者:ウノウ  尾藤 正人   2007/10/4 2007年10月の連載ランキング1位(一覧を見る) サーバ管理者だけではなく誰でも一度は経験したことがある「サーバが重い」という現象。一言で「重い」というのは簡単ですが、重いというのは具体的にどういうことなのでしょうか。 ここでいう重い・軽いは単一のベクトルで判断できるような簡単な代物ではなく、様々な要素によって発生する現象です。処理が重いからといって闇雲にハードウェアを増強するのは賢いやり方とはいえません。例えば、メモリ不足が高負荷の原因なのに、CPUを高速なものに変えても効果はほとんどないでしょう。 このような無駄な投資を避けるためにも、負荷の原因を特定して素早く対応策を講じるのはサーバ管理者にとって重要なスキルになります。記事ではサーバ負荷の特定の仕方と対策の仕方について、簡単な概要を説明します。

    yuiseki
    yuiseki 2011/11/05