タグ

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

  • find/grep/xargsコマンドを使いこなす 業務で楽するためのUNIXテクニック集「検索」編

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

    find/grep/xargsコマンドを使いこなす 業務で楽するためのUNIXテクニック集「検索」編
  • 動的SQLによる数独の超高速解法

    Pinskiさんの記事は、「SQLで数独を解ける」ことを示したという点で評価できます。しかしながら、そのためのコードと実行時間が共に長大であるため、「SQLは面倒で遅い」という誤解を読者に与えかねません。稿で紹介する方法で、誤解が払拭されることを期待します。 第1、2部と第3部の手法を簡単にまとめておきましょう。 第1、2部では、手続き的な記述、つまり、どうすれば数独の解が得られるかの具体的な記述によって数独を解いています。手続き的とは言っても、せっかく宣言型言語であるSQLを使うので、手順の各ステップはなるべく宣言的に記述するように心がけています。 第3部(稿)の方法の質はたった1行のSELECT文です。このSELECT文には「数独の解とはどういうものか」だけが記述してあり、その解を得るための具体的な方法はコンピュータが考えます。ただし、このSELECT文は人間が手で簡単に書けるよ

    動的SQLによる数独の超高速解法
  • CTOに訊く、「検索」でサービスの可能性を切り開く技術革新「Elasticsearch」

    FacebookやLinkedIn、GitHubといった著名企業が導入し、開発会社が昨年7000万ドルの資金調達をしたことでも注目を集めているオープンソースの全文検索エンジン「Elasticsearch(エラスティックサーチ)」。このソリューションの魅力はどこにあり、どこを目指しているのか。7月末に来日したElasticsearch社CTOのシャイ・バノン(Shay Banon)氏に、国内でElasticsearchを格的に活用した求人検索エンジン「スタンバイ」を展開しているビズリーチCTO 竹内真氏とともにインタビューした内容をお伝えする。 ビズリーチ 取締役CTO 竹内真氏(左)と、Elasticsearch社CTO シャイ・バノン氏(右) 必要なのは、ユーザーが欲しいデータをもっと簡単に取り出せること ――Elasticsearchという製品の特徴を教えてください。 シャイ・バノン

    CTOに訊く、「検索」でサービスの可能性を切り開く技術革新「Elasticsearch」
  • Log Parserでログを統合的に扱い運用保守に役立てる(基本編)

    はじめに 稼動中のシステムやサーバで予期せぬ障害を防ぐために、定期的にログを確認することは重要です。しかし、ログをチェックするために管理ツールを操作したり、ファイルを開く作業は思いのほか手間がかかります。そこで、稿ではMicrosoftが無償で提供しているログ取得ツール「Log Parser」を使ってログをチェックする方法を紹介します。Log Paserの使い方を理解すると、さまざまなリソースをまとめて監視し効率よく情報を集めることができます。 なお、前編にあたる稿では、Log Parserの基的な機能や、ログ抽出クエリの書き方などについて解説します。実用を意識した「グラフとHTMLの生成」「ログの自動監視」の仕組みについては、別稿の『LogParserでログを統合的に扱い運用保守に役立てる(実践編)』をご覧ください。 対象読者 WindowsWindows Serverで開発や運

    Log Parserでログを統合的に扱い運用保守に役立てる(基本編)
  • Pythonディープラーニングライブラリのツートップ「Pylearn2」「Caffe」とは~PyData Tokyo Meetup #1イベントレポート

    PyData Tokyoは「Python+Dataを通じて、世界のPyDataエクスパートと繋がれるコミュニティーを作る」ことを目的として設立されました。その達成に向けた活動の一つとして、月1回のペースで勉強会を開催しています。勉強会はゲスト講師による講演+ディスカッションという構成です。2014年10月に開催された第1回勉強会「PyData Tokyo Meetup #1 - Deep Learning」では、非常に活発な議論が行われ、今後の発展が期待できる内容となりました。 連載では、勉強会を含む活動を通じてPyData Tokyoが得た「Python+Data」の可能性やナレッジを、読者の方にお届けしていきます。機械学習や大規模データ解析など、幅広いテーマを取り扱っていく予定です。 データ解析に関心を持つ人たちのコミュニティ 「PyData Tokyo」の設立 こんにちは。PyDa

    Pythonディープラーニングライブラリのツートップ「Pylearn2」「Caffe」とは~PyData Tokyo Meetup #1イベントレポート
  • 楽々ERDレッスン 第1回:「お持ち帰りご注文用紙」編

    はじめに システム構築においてデータベース設計は不可欠です。そこで多くの方がデータベースの設計技法について書籍で学んだりするのですが、なかなか身についたと感じられないことも多いのではないかと感じます。 その理由は、実務で任せられる機会というのが少ないからというのが大きなものとして挙げられます。データベース設計というのは、やはり重要な箇所ですから自然と経験のある人に任せられることが多いのが実態です。しかもデータベース設計を担当するのはプロジェクト全体の中でもごく少数だけになりますから、なかなかチャンスが巡ってきません。 しかし、それを嘆いているばかりではスキルが身につかないのも道理です。そこで身近にあるものを何でも手当たり次第にデータベース設計のネタにしてしまうことで、コツコツと地力をつけていこうというのがこのシリーズの主旨です。 合言葉は、「表組みを見たらERDを描け!」 。では、張り切っ

    楽々ERDレッスン 第1回:「お持ち帰りご注文用紙」編
    ryskosn
    ryskosn 2014/10/21
  • ラムダ式でステップアップ! C#のプログラムから汎用的なアルゴリズムを切り出すことで、LINQについての理解を深めよう

    1. はじめに プログラミング言語 C#では、C# 3.0から「ラムダ式」と呼ばれるものが使えるようになり、プログラムをより簡潔に記述できるようになりました。そして、それにより、LINQ(Language INtegrated Query:統合言語クエリ)という機能が便利に使えるようになりました。 この記事では、基に立ち返って、どのようにしてアルゴリズムを記述し、それを利用するかを考えたいと思います。 汎用的なアルゴリズムをどのように記述すると良いのか、そしてそのアルゴリズムがどのように使われると良いのか、を述べます。その中で、なぜラムダ式が便利なのか、その理由が分かってもらえれば幸いです。 また、ラムダ式がどのような仕組みなのか、それについても解説します。 LINQの仕組みや意義についても同時に理解していただけることと思います。 次の記事の姉妹記事です。そちらでC++用に書かれた記事を

    ラムダ式でステップアップ! C#のプログラムから汎用的なアルゴリズムを切り出すことで、LINQについての理解を深めよう
  • 文字の位置を揃えたい! エディタのキーボードマクロによる整形テクニック(1/5):CodeZine

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

    文字の位置を揃えたい! エディタのキーボードマクロによる整形テクニック(1/5):CodeZine
  • AWKで一番の得意ワザ! シェルで文字列を自在に扱うための文字列関数

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

    AWKで一番の得意ワザ! シェルで文字列を自在に扱うための文字列関数
  • 新たな関数型言語「F#」

    はじめに F#とは、マイクロソフトリサーチが開発しているOcaml(Objective Caml)互換の関数型プログラミング言語(以降、関数型言語)です。他の.NET Framework対応言語と同じくVisual Studio(以降、VS)に統合される予定で、現在マイクロソフトから提供されているVS2010のベータ版にも搭載されています。 マルチコアプロセッサが主流になり、従来の科学やその他の学術研究分野に限らず、金融業、製造業など幅広い分野においてHPC(High Performance Computing)が普及してきました。それに伴い、並列処理や分散プログラミングを得意とし、高演算処理能力を発揮する関数型言語への期待は急速に高まりつつあります。関数型言語はその長所にもかかわらず、他言語との相互運用性の乏しさもあって長い間ごく限られた一部のデベロッパーにしか学習されていませんでした。

    新たな関数型言語「F#」
    ryskosn
    ryskosn 2014/06/20
    関数型言語についての理解が深まる
  • PHPアプリでGoogle Spreadsheetをデータベースとして利用しよう(1/4):CodeZine

    はじめに 連載では、PHP上で動作するアプリケーションフレームワーク「Zend Framework」と、Googleの提供するサービスを扱うための関数の集合体である「Google Data API」との連携について紹介します。Zend FrameworkのZend_Gdataというパッケージを使用することでGoogleカレンダーなどを利用したアプリケーションを開発することができます。 今回はGoogle Spreadsheet APIを使用してGoogle Spreadsheetサービスを使ってみましょう。ExcelCSVといったGoogleスプレッドシートに分類される文書をサーバ上で扱うことができます。直接編集するだけでなく、アプリケーションで使用するデータの保存場所としても利用できるので、今回はちょっとしたデータベースとして使用してみます。 対象読者 PHPの基構文は一通り理解し

    PHPアプリでGoogle Spreadsheetをデータベースとして利用しよう(1/4):CodeZine
  • メールでデータベースを更新するココロミ ~C++での即興実装

    今回のお題 先日引き受けた相談事は「メールを使ってデータベースにレコードを登録したい」とのこと。レコードを文としたメールを投げて、そいつがデータベースに格納されるカラクリが欲しいってんですね。例えば売上データやらアンケート結果やら、あちこちで収集したデータをメールでかき集めるのが目的なのでしょう。「そんなもん、どこぞにWeb-serviceをホストしておいてHTTPで投げればいぃんじゃね?」と答えたところ、できるだけチープに実現したく、サーバ立てるのは避けたいそうな。 なるほど、そう言うことなら納得です。テキトーなメールアカウントを1つ用意し、みんなが寄ってたかってそいつめがけてメールを投げつけ、小さなアプリケーションがメールを読んでデータベースに流し込むってスンポーですか。「登録したいレコードって定型なの? どれも同じフォーマットなら実装楽なんだけど」と訊くと依頼主曰く「いや、ゆくゆく

    メールでデータベースを更新するココロミ ~C++での即興実装
  • クラウドとサーバーを同期できる便利ツール「S3Sync」 ~Amazon EC2/S3環境構築のすべて~

    はじめに 前回は、「Amazon EC2」のバックアップまわりの話題として、「Amazon EBS」の概要や使い方を紹介しました。 今回は「Amazon EC2」を取り巻くデータバックアップの方法の付録として、「Amazon EC2」のデータを「Amazon S3」と同期するツール「S3Sync」を紹介します。 前提条件 今回も「Amazon EC2 Command-Line Tools」を利用した方法を紹介していきます。作業前提として、基的なセットアップが終了し、「Amazon EC2」インスタンス(仮想マシン)は起動しているものとします。セットアップや「Amazon EC2」でのインスタンス起動については、前回までの記事を参考にしてください。 また、今回紹介するツール「S3Sync」の利用には、別途Rubyが必要となります。「Amazon S3」への接続にHTTPSを利用している場合

    クラウドとサーバーを同期できる便利ツール「S3Sync」 ~Amazon EC2/S3環境構築のすべて~
  • VBAで正規表現を使う

    はじめに 改めて言うまでもないことですが、文字列処理で正規表現が使えると非常に便利です。VBAで正規表現を利用する方法を紹介したいと思います。 対象読者 VBAで正規表現を使用したい方 VBAで煩雑な文字列処理の行う必要のある方 なお、「正規表現についてよくわからない」という方は、以下のページの解説などを参考にしてください。 サルにもわかる正規表現入門 必要な環境 Windows VistaまたはWindows XP VBA開発環境 正規表現を使う前に VBAで文字列比較を行う場合、標準の機能としてStrComp関数やLike演算子があります。 特にLike演算子は、ワイルドカードなどによるパターンマッチングが行えます。正規表現よりも柔軟性は劣りますが、実現したい機能がLike演算子で済むのならば、無理に正規表現は使わずLike演算子を使った方がよいと思います。詳しくは、ヘルプにあるLik

    VBAで正規表現を使う
  • Djangoチュートリアル(前編)

    はじめに 近年、Webアプリケーション開発で用いるプログラミング言語として、Lightweight Language(以降LL)と呼ばれるスクリプト言語が人気を博しています。稿では、そのスクリプト言語の中からPythonとWebアプリケーションフレームワークのDjango(ジャンゴと読む)を紹介します。 Pythonの大きな特徴として、「言語仕様が小さくシンプルであり、簡潔で読みやすいアプリケーションを作れる」という点が挙げられます。DjangoPythonの簡潔さをうまく活かし、シンプルかつ格的な開発ができるWebアプリケーションフレームワークです。稿ではこのDjangoによるアプリケーション開発の基をチュートリアル形式で説明します。 対象読者 PythonによるWebアプリケーション開発に興味がある方 日頃、PerlRubyPHPJava、C#などPython以外のプロ

    Djangoチュートリアル(前編)
  • 今からでも遅くない これから始めるScala(前編)

    なぜ、いまScalaなのか? TwitterScalaを利用しているのは有名ですが、他にも位置情報を利用したfoursquareはScalaで構築されたLiftというWebフレームワークを利用していますし、GTDツールとして有名なRemember The MilkもScalaの利用を検討しているようです。 Scalaは、Java Virtual Machine(以下JVM)上で動くオブジェクト指向+関数型言語です。簡潔で柔軟な記述が可能であり、マルチコアを意識したライブラリがあり、JVMでのスケールメリットを享受できることが、これらの企業で採用に踏み切った理由であると考えられます。 Scalaは、非常にバランスの取れたプログラミング言語です。連載では、Scalaの基的な文法を解説しながら、オブジェクト指向と関数型言語を組み合わせたプログラミングスタイルについて、解説したいと思います。

    今からでも遅くない これから始めるScala(前編)
  • Google Apps ScriptでGoogleドキュメントのスプレッドシートを操作する

    はじめに 「Google Apps Script」は、Googleドキュメントのスプレッドシートに搭載されているスクリプト機能です。これは発表当初、Google Appsの有料版(プレミア版)のみで利用可能であったため、「無償版のユーザーは使えない」と思っていた人も多いのではないでしょうが。が、現在では、無料で利用できるGoogleドキュメントでもスクリプトが使えるようになっています。これを利用し、Googleドキュメントのスプレッドシートを操作することができます。いわば、Excelなどの「マクロ」と同じ機能を提供してくれるのです。 最近では、クラウド・アプリケーションとしてオフィスソフトが提供されるようになってきました。Googleの「Googleドキュメント」だけでなく、マイクロソフトが「Microsoft Office Web Apps」を公開するなど、格的にWebへの移行が進めら

    Google Apps ScriptでGoogleドキュメントのスプレッドシートを操作する
  • WEBシステムの様々な機能をSmartyを使って実装する

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

    WEBシステムの様々な機能をSmartyを使って実装する
  • C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」

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

    C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」
    ryskosn
    ryskosn 2010/10/21
  • 原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine

    はじめに MSDNライブラリには、マイクロソフトの技術情報が大量に掲載されていますが、英語版に比べ、日語版の内容は中途半端なのが実状です。 たとえば、スレッドの優先順位を設定する「SetThreadPriority」関数の説明を見ると、英語版には「Windows Server 2008およびWindows Vistaでは、スタートアップやレジストリのRUNから自動実行されたプログラムに対するスレッドの優先順位指定が、システム開始から60秒程度効かない」との注意書きがありますが、日語版にはありません。 また、仮想ディスクの情報を設定する「SetVirtualDiskInformation」関数を検索すると、英語版には説明がありますが、日語版には項目自体がありません。 そこで記事では、MSDNライブラリの英語版がスラスラ読めるように、とはいきませんが、英単語で引っかかることが少なくなる

    原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine