タグ

ブックマーク / atmarkit.itmedia.co.jp (23)

  • 我慢していればいいの?――仕事が「つまんない」本当の理由

    我慢していればいいの?――仕事が「つまんない」当の理由:仕事が「つまんない」ままでいいの?(4)(1/2 ページ) 仕事の不満や悩みを解消するヒントをお届けする連載。今回は「仕事がつまんない」と感じたときに、モヤモヤを晴らし、気持ちを切り替える方法を考えます。仕事がつまんない、面白くない……こんな気持ちを抱いたことはありませんか? 連載目次 あるIT企業で働いているエンジニアのAさんは、「最近マネジメントの仕事が増えてつまんない」と思っていたそうです。「当はずっとエンジニア仕事をしたい。けれども、年齢的にこの仕事をやるのは自分しかいない」……そんな、モヤモヤした気持ちを持ちつつ、お金とスタッフを管理する仕事をしていました。 仕事がつまんない、面白くない……このように感じたことは誰もが一度や二度はあるでしょう。 インターネットで「仕事 つまんない」と検索すると、いろいろな悩みとそれに

    我慢していればいいの?――仕事が「つまんない」本当の理由
    takeo1031
    takeo1031 2015/04/27
  • Node.jsのStream APIで大量プッシュ通知を高速化するテクニック

    連載目次 プッシュ通知を秒間1万4000ほど送るには 前回の「大量データ処理時に知っておきたいAmazonDyamoDB活用テクニック4選」では、Pusna-RSのデータ永続化に使っているDynamoDBの活用テクニックについて解説しました。今回は、そのDynamoDBからAPNs/GCMへのデータ送信までを高速化させた方法を紹介します。 Pusna-RSの配信機能とは 連載第1回「プッシュ通知の基礎知識&秒間1万を超えるプッシュ通知基盤のアーキテクチャと仕組みとは」の際に概要をお伝えしましたが、配信機能はPusna-RSの中で実際にプッシュ通知を行うための機能で、以下の【3】に当たる箇所です。 Pusna-RSではこの一連の流れを最適化させるためにNode.jsのStream APIを活用しています。今回は、このStream APIの活用について紹介していきます。 あらためてNode.j

    Node.jsのStream APIで大量プッシュ通知を高速化するテクニック
    takeo1031
    takeo1031 2015/02/13
  • EclipseでScalaプログラミングを始めるための基礎知識

    EclipseでScalaプログラミングを始めるための基礎知識:スケーラブルで関数型でオブジェクト指向なScala入門(1)(1/3 ページ) 人気の「Scala」を一から学ぼう 最近、私の周りでもScalaに関する話題が増えてきました。Twitterやブログ、技術系のニュースサイトでは毎日のようにScalaに関連する話を見かけます。 また、筆者が現在携わっているプロジェクトでも実際にScalaを用いて開発しています。いままではJavaで開発をすることが多かったのですが、それよりも簡潔で柔軟性のある記述が可能であり、Scalaでの開発は非常に生産性が高いと感じています。 連載は、Scalaの特徴を紹介し、基構文や関数、クラスなど、Scalaの基的な機能について解説していきます。何らかのプログラミング言語を学んだことがあり、プログラミングの基的なことが分かる人を対象としています。特に

    EclipseでScalaプログラミングを始めるための基礎知識
  • あなたのWeb開発人生を変えるYeoman、Bower、Yoのインストールと使い方

    連載目次 前回記事「Gruntで独自タスクを定義し、独自プラグインをnpmモジュールとして作成・公開するには」では、Gruntを使っていろいろな手法でタスクを定義する手法や、独自プラグインを作成してnpmで公開する方法について解説しました。 今回は少し角度を変えて、Gruntを自身の機能として利用しており、快適な開発ワークフローを提供してくれるツール、「Yeoman」について解説します。 3つのツールを統合したワークフローを提供する「Yeoman」 Yeomanとは、公式サイトいわく、「The web's scaffolding tool for modern webapps」とのことです。 訳すと、「今風のWebアプリのための土台/基盤を作ってくれるツール」といったところでしょうか。「scaffolding」はRuby on Railsの主要機能として有名になった言葉で、コマンドを打つだ

    あなたのWeb開発人生を変えるYeoman、Bower、Yoのインストールと使い方
  • Ruby1.9は継続と“Fiber”をサポート ― @IT

    2007/06/12 RubyKaigi2007レポート(前編)に続いて、RubyKaigi2007で明らかになった技術的な内容についてもお伝えしよう。 次世代のRuby処理系「Ruby1.9」開発の中心人物である笹田耕一氏は、「Ruby1.9実装の現状と今後」と題して講演し、「Ruby1.9は、今年(2007年)12月に出る」とスケジュールを改めて確認した。過去のRuby処理系のリリースは予定通りに出ないことが通例だったが、この「2007年12月」というスケジュールは、2006年8月に開催された軽量言語に関するイベント「Lightweight Language Ring」の場で公表されて以来、何回か強調されている。開発メンバーたちが自分自身に言い聞かせるための念押しなのかもしれない。「ちょっと品質が悪くても、1.9.1を2007年12月25日にリリースする」(笹田氏)。バグが取れた処理系

  • Railsのコントローラをテストする

    前回はインテグレーションテストとしてCucumberでテストを作成しました。今回はユニットテストとして、RSpecを使ってコントローラのテストを作成します 前回はインテグレーションテストとしてCucumberでテストを作成しました。今回はユニットテストとしてRSpecを使ってコントローラのテスト(RSpecのテストコードは“スペック”と呼ばれるので、以降はスペックと呼びます)を作成します。稿で紹介するスペックの全文はGitHub上にあります。 最初に、コードレビューの回で述べたコントローラの役割についてもう一度おさらいしてみましょう。 コントローラは外部から来たリクエストを受け付け、レスポンスを返すのが役割です。具体的には以下の3つの動作をおこないます。 適切なオブジェクトをとってくる オブジェクトに対する何らかの操作を指示する 操作が成功した際と失敗した際のビューの振る舞いを指定する

    Railsのコントローラをテストする
  • 検索技術を使うなら知ってないと損する6つのこと~クックパッド、グリー、ぐるなび、CROOZは検索技術をどう使っているのか(1/2) - @IT

    クックパッド、グリー、ぐるなび、CROOZは検索技術を どう使っているのか 有限会社オングス 杉山貴章 2012/2/9 2012年1月26日、CROOZ主催の勉強会「モーショノロジー2012 #1」が開催された。今回のテーマは「全文検索」。検索技術の開発や活用に携わる6名の発表者によって、検索エンジンの実装やプロダクトの活用事例などが紹介された。 全文検索の歴史とgroongaの索引構築の実装 ソーシャル連携などに広がるECサイトでの全文検索 KVSの膨大なKeyを見つけるための全文検索 groongaのRuby実装「rroonga」による検索サービス モバイルに欠かせない位置情報検索で使うgroonga レシピ検索のプロトタイピングにApache Solrを使う そもそも、「モーショノロジー」って何? そもそも、「モーショノロジー」とは何だろうか。総合司会を務めたCROOZの小俣泰明氏

  • GitHubをもっとソーシャルに使いこなすための7つ道具

    新サービスが続々登場してアツい! 「GitHub」とは 皆さんは「GitHub」を活用しているでしょうか? 「GitHub」(ギットハブ)はソースコード管理用の分散型バージョン管理システム「Git」を使ったホスティングサービスです。 Gitの特徴は、作業用として自分のコンピュータ上にあるローカルリポジトリがあれば、ネットワークに接続できない状態だったとしても、ソースコードの更新や、履歴を調べたりできる点にあります。その特徴はGitHubにも生かされていて、オープンソースとして公開中の既存のコードを分岐(fork)して、新しいプロジェクトとして開発できます。 また、自分が手元のローカル環境でバグ修正したり、拡張したソースコードを家のオープンソースプロジェクトに取り込んで(pull)もらうことも手軽にお願いできます。 さらに、READMEテキストファイル(README.md)などを独特のマー

    GitHubをもっとソーシャルに使いこなすための7つ道具
    takeo1031
    takeo1031 2012/01/24
  • Android開発で泣かないための「テスト」の重要性(1/2) - @IT

    8月6日、日Androidの会テスト部(以下、テスト部)主催によるイベント「第1回Androidテスト祭り」が都内で開催された。テスト部は、Androidプラットフォームでの開発において、特にソフトウェア検証テストに関する情報共有や問題解決を目的とした組織だ。2010年9月に発足し、イベント開催時点では276名のメンバーがいるという。 今回のイベントは、その自由度の高さや多様性ゆえに課題を抱えるAndroidアプリ開発のテストについて、開発者同士やコミュニティでの情報交換を目的に開催された。テスト部では、すでに日Androidの会の総合イベント「Android Bazaar and Conference」での講演をはじめ、さまざまな活動を行っているが、単独イベントは今回が初だ。

  • 無償仮想化ソフトVMware ESXiを30分以内で使う

    無償仮想化ソフトVMware ESXiを30分以内で使う:超簡単! VMware ESXiを試してみよう(1/3 ページ) ヴイエムウェアのサーバ仮想化製品は、2009年春に「VMware vSphere 4」という新バージョンに進化した。この製品を支えているハイパーバイザがVMware ESX 4.0だ。連載では、無償で提供されているVMware ESXi 4.0を気軽に体験するため、インストールと利用方法を紹介する。連載の後半では中小企業でも利用しやすい有償版のVMware vSphere Essentialsにも触れる VMware ESXiは、ヴイエムウェアが無償で提供しているハイパーバイザです。サーバ機のうえに直接インストールし、このうえでさまざまなOSを動かすことができます。稼働できるOSはゲストOSの互換性ガイド(http://www.vmware.com/pdf/Gues

    無償仮想化ソフトVMware ESXiを30分以内で使う
  • httpd.confによるWebサーバの最適化

    KeepAliveの設定 HTTPはステートレスプロトコルです。クライアント/サーバ間のTCP接続を永続させず、要求に応じて接続の開始/切断を行います。しかし、Webページは通常HTMLドキュメントや画像など、複数のファイルで構成されています。クライアントが1つのWebページを取得する間に、ファイルごとにTCP接続の開始/切断を行うのは大変非効率的です。そこで、KeepAliveを利用して1つの接続を使い回し、複数のリクエストに応えられるようにします。 KeepAliveの動作にかかわる重要なパラメータが以下に挙げる3つのディレクティブです。 KeepAlive 「On」にすることで、KeepAliveを有効にします。 現在使用されているWebブラウザはApacheのKeepAliveに完全に対応しているため問題はありませんが、マイナーなクライアントや古いバージョンのWebブラウザではAp

    httpd.confによるWebサーバの最適化
  • Javaパフォーマンスチューニングのルール

    記事は、HP-UX Developer Edgeに掲載された記事を株式会社アットマーク・アイティおよび記事の筆者が独自の判断のもとに加筆・修正したものです。 この連載では、Javaアプリケーションのパフォーマンスチューニングについて、さまざまなテクニックやツールの使い方を紹介していきます。連載の第1回では、パフォーマンスチューニングにおける基的ルールや、HPが提供する各種のJavaパフォーマンス・ツールの使い方を説明します。なお、今後の連載では、JVMレベルにとどまらず、OSのカーネル・パラメータやネットワーク・パラメータのレベルでのチューニング方法も解説します。また、より高度なチューニング技法として、JVMのガベージ・コレクションやスレッド競合に注目する方法も紹介する予定です。 連載予定 第1回 Javaパフォーマンスチューニングのルール 第2回 Javaのガベージ・コレクション

    Javaパフォーマンスチューニングのルール
  • Linux Square全記事インデックス

    Linux Squareフォーラムに掲載されている全記事にアクセスできるインデックスです。このページを見れば、Linux Squareフォーラムのすべてが分かります。また、インデックスは記事の追加とともに拡充していきます。

  • 隠されていたSQLインジェクション ― @IT

    サブクエリによって引き起こされるSQLインジェクションの被害 星野君 「へぇ~……」 星野君は、「なるほど」と感心した。しかし、少し考えた後で「これを悪用できるのだろうか?」という疑問がわいた。 星野君 「けど、結局のところ、メールアドレスが判別できるっていうだけの被害じゃないですか?条件文を追加したら登録情報が全件見えちゃった、とかいうわけでもないですし……」 赤坂さん 「えー。SQLインジェクションの被害って、そんな単純なのじゃないよ。この状態で、データベースの中の情報抜けちゃうって」 星野君 「え?マジっすか??」 赤坂さん 「例えば最初に、テーブル名の1文字目を判別する条件式を付けて……」 前述のように、追加するSQL文が「' and '1' = '1」などのような単純なものの場合は特に問題にならない。しかし、この条件文にはサブクエリのような複雑なものを入れることが可能なのである(

    隠されていたSQLインジェクション ― @IT
  • Eclipseからビルドツール「Ant」を使う

    これまで、Eclipseの基的な使い方について連載「Eclipseを使おう!」で3回にわたり解説してきました。今回からは、「Eclipse徹底活用」というタイトルで、Eclipseのより実践的な使い方について、Antの利用、EJB開発、UMLによるモデリング、プロファイラによるボトルネック解析、GUIアプリケーション作成、プラグイン開発などにポイントを置いて解説していきたいと思います。 なお、この新連載ではEclipseの最新バージョンEclipse 2.1をベースに解説します。Eclipse 2.1の新機能については、「プロダクトレビュー:完成度を高め商用ツールの機能に迫るEclipse 2.1」をご覧ください。 今回は、JavaのビルドツールであるAntをEclipseで使う方法をご紹介します。Ant自体の解説については、連載「現場に活かすJakarta Project」の第2回「A

    Eclipseからビルドツール「Ant」を使う
  • Javaのタスクを定期的に実行する

    Javaのメソッドとして実装されたタスクがあり、そのタスクを定期的(一定間隔)に実行したい場合は、java.util.TimerTaskクラスとjava.util.Timerクラスを使用すると便利です。これらのクラスの利用方法は、以下のようになります。 java.util.TimerTaskを継承したクラス(例えばTask1)を作成し、タスクとして実行したい処理をrunメソッドとして実装する java.util.Timerクラスのオブジェクトを作成し、Task1クラスのオブジェクトと、実行開始時刻や実行間隔をscheduleメソッドの引数として渡す これらの処理により、Task1クラスのrunメソッドが定期的に実行されます。その際、必ず前回のタスクの処理が終了してから、次のタスクが実行されます。タスク処理を中断する場合は、java.util.Timer#cancelメソッドを呼び出します。

    Javaのタスクを定期的に実行する
  • 軽量なUMLプラグインAmaterasUML

    まずは、クラス図を作成してみよう まずは、AmaterasUMLを使ってクラス図を作成してみます。AmaterasUMLでは、プロジェクト上のクラスを図にしたり、逆にクラス図上のクラスモデルからソースコードを出力できます。 クラス図の新規作成 [ファイル]→[新規作成]→[その他]→[AmaterasUML]→[クラス図]を選択して新しいクラス図を作成します。クラス図の拡張子は*.cld(Class Diagram)となっていますが、中身はJavaオブジェクトをXMLによってシリアライズしたものになっています。拡張子が*.cldであれば、ファイル名は任意の名前を付けられます。 クラス図エディタの基機能 パレットからクラス、またはインターフェイスを選択してクラス図の上をクリックしてください。指定したクラスやインターフェイスが作成されます。配置されたクラスやインターフェイスの名前を変更するに

    軽量なUMLプラグインAmaterasUML
  • APサーバのチューニング項目を知る

    (3)JDBCコネクションプール JDBCコネクションプールに関するチューニングポイント コネクションプーリング機能とは、アプリケーション・サーバ起動時などに、あらかじめデータベースとのコネクション(接続)をプールしておき、再利用する技術です。 通常データベースからSQL文を使ってデータを抽出する際には、まずデータベースとのコネクション(接続)を確立し、その後SQL文を発行し、データを抽出、最後にデータベースをクローズします。しかしデータベースのコネクション(接続)の確立やクローズはとても重い処理です。リクエストがあるたびにこのような手順を踏むことは非効率であり、ますますデータベースとのやりとりがボトルネックになってしまう可能性があります。それを回避するため、コネクションプーリングを使用します。 アプリケーション・サーバがWLS61で、データベースがOracleである場合、WLS61にOr

    APサーバのチューニング項目を知る
    takeo1031
    takeo1031 2008/04/10
  • 連載記事 「Strutsを使うWebアプリケーション構築術」

    Strutsプログラミングの準備 Strtusを使うWebアプリケーション構築術(1) ステップ・バイ・ステップの解説で誰にも分かるStruts講座。効率の高いWebアプリケーション開発をマスターしよう

  • @IT:Webアプリケーションに潜むセキュリティホール(1)

    ※ご注意 他社および他組織のWebサイトなどへのポートスキャンおよびデータの取得などの行為で得た情報を侵入などに悪用するか、または同じ目的を持つ第三者に提供した時点で違法となります。ご注意ください。 稿の内容を検証する場合は、必ず影響を及ぼさない限られた環境下で行って下さい。 また、稿を利用した行為による問題に関しましては、筆者および株式会社アットマーク・アイティは一切責任を負いかねます。ご了承ください。 最近Webアプリケーションに存在するセキュリティホールが注目を浴びている。その中でも「クロスサイトスクリプティング(XSS)」と呼ばれる脆弱性が有名で、「特集 クロスサイトスクリプティング対策の基」という記事で詳細に解説した。しかし、Webアプリケーションに潜む脆弱性はXSSだけではなく、XSSよりもはるかに危険性の高いセキュリティーホールが存在する。 稿では、Webアプリケーシ

    @IT:Webアプリケーションに潜むセキュリティホール(1)
    takeo1031
    takeo1031 2008/02/20