タグ

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

  • アジリティの高いソフトウェアに求められる品質とは何か――和田卓人氏が解説【デブサミ2021夏】

    和田卓人氏 事業のコアになったIT ITがビジネスの現場で使われ始めた当初は、「あると便利」程度のものでした。IT部門が主導する、一部がちょっと便利になる道具としてのIT。それがいつしか不可欠なものとなり、今ではITをコアに据えたビジネスが一般的になってきています。特に最近ではDX(Digital Transformation)の波が押し寄せ、ITの事業コア化の動きは加速しています。 「このDXには大きく分けて2つのDXが存在します」。ところてんさんの言葉を引用しながら、和田さんはそう解説します。守りのIT、SoR(Systems of Record)的なDX。そして攻めのIT、SoE(System of Engagement)的なDX。事業のコアとなるDXは後者であり、この講演ではそこに焦点が当てられています。 「あると便利」から「必要不可欠」を経て「事業のコア」に変化していったIT

    アジリティの高いソフトウェアに求められる品質とは何か――和田卓人氏が解説【デブサミ2021夏】
    k1LoW
    k1LoW 2021/10/15
  • PostgreSQL 9.2の同期レプリケーションを利用する際の勘所

    DBMSの可用性とPostgreSQLのレプリケーション 勤怠管理やERPなど会社内の業務に欠かせないシステムはもちろんのこと、SNSやECサイトなど個人で利用するシステムでも、何かしらのDBMSを利用をするのが一般的です。 もしDBMSで障害が発生した場合、データの参照・更新が滞り、システム全体として役割を果たすことができなくなります。そのためユーザが利用したいときにシステムを利用可能にするためにはDBMSが継続的に稼働していることがとても重要です。 世の中にはDBMSは多数存在し、またDBMSの可用性を上げる機能やツールなどもさまざまに存在します。OSSの代表的なDBMSの一つであるPostgreSQLには可用性向上機能の一つであるレプリケーションが用意されています。 今回は最新バージョンであるPostgreSQL 9.2のレプリケーションについて、機能の紹介、利用時の注意点、設定によ

    PostgreSQL 9.2の同期レプリケーションを利用する際の勘所
    k1LoW
    k1LoW 2019/10/03
  • 「エンジニアは初見の敵にやられてはいけない」DBエンジニアのミックさんが語るデータベースとSQLの学び方

    IT業界において数十年もの間、大きな仕様変更がなく主流の技術であり続けているのがリレーショナルデータベースとSQLです。『SQL 第2版 ゼロからはじめるデータベース操作』の著者でデータベースエンジニアのミックさんは、SQLを学べば長く役立つものの、データベースの魅力はそれ自体の面白さだとおっしゃいます。今回、ミックさんにデータベースの役割や魅力、そしてSQLの学び方についてうかがいました。 いろいろなシステムを見ることができるのが面白い ――ミックさんは『SQL 第2版 ゼロからはじめるデータベース操作』のほかにも、翔泳社から多数出版されています。データベースとSQLの書籍が主ですが、普段はどういった仕事をされているのでしょうか。 ミック:私はSIerに勤めていて、システム開発というよりは、システム開発でトラブルが起きたとき支援を行なうチームに所属しています。パフォーマンスを高めることが

    「エンジニアは初見の敵にやられてはいけない」DBエンジニアのミックさんが語るデータベースとSQLの学び方
    k1LoW
    k1LoW 2016/06/27
    “初見の敵に対応できる人とできない人”
  • Fluentdで始めるリアルタイムでのログ有効活用

    はじめに Fluentdは、ログを収集し格納するためのログ収集基盤ソフトウェアです。Fluentdにインプットされた、すべてのログをJSONに変換し、アウトプットします。インプットとアウトプットはモジュール化されており、モジュールを追加することでインプット元とアウトプット先を追加できるようになっています。 Fluentdは急速に知名度を高め、多くのWebサービス会社で実際に使用されるようになりました。従来のログが抱えていた問題も、Fluentdが適切な解決策となっていると認知され、かつ簡単に導入・スモールスタートできるミドルウェアであったことが大きかったと思います。 稿では、Fluentdの簡単な仕組みと導入方法、シンプルな動作事例について紹介します。 対象読者 システム管理者 データサイエンティスト 必要な環境 UNIX系OS Ruby 1.9 ログを出力する理由 システム運用を始める

    Fluentdで始めるリアルタイムでのログ有効活用
  • クラウドとサーバーを同期できる便利ツール「S3Sync」 ~Amazon EC2/S3環境構築のすべて~

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

    クラウドとサーバーを同期できる便利ツール「S3Sync」 ~Amazon EC2/S3環境構築のすべて~
  • 原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine

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

    原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine
  • 今からでも遅くない これから始めるScala(前編)

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

    今からでも遅くない これから始めるScala(前編)
    k1LoW
    k1LoW 2010/06/22
  • PHPで行う動画変換(前編)

    はじめに オープンソースの動画変換ソフトフェアの一つにffmpegがあります。ffmpegはさまざまな形式の動画、音声データの変換に対応していて、コマンドラインから操作でき、PHPJavaなどで作成したアプリケーション内から呼び出すこともできます。 ffmpegの機能の一部をPHPで使えるようにしたエクステンションにphp-ffmpegがあります。php-ffmpegを利用するとPHP内でffmpegの機能を容易に呼び出せます。またphp-ffmpegとは別にPHPのみでffmpegの機能を使えるライブラリ FFMPEG-PHP Classが公開されています。 記事ではphp-ffmpegFFMPEG-PHP Classを使用して動画のプロパティ取得、flv(注1)への動画変換、Youtubeから動画をダウンロードして3gp(注2)への動画変換を実装する方法を2回にわたって説明します

    PHPで行う動画変換(前編)
  • 文章の中のはてなキーワードをハイライトさせる

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

    文章の中のはてなキーワードをハイライトさせる
  • PHPでOracle Databaseを使う(導入編)

    はじめに 昨今PHPによるWebシステム開発は増加の一途をたどり、Javaと並ぶ大きな流れとして、さまざまなシステムで利用されるようになってきました。 稿では、Oracle DatabasePHPを組み合わせる上で最も基となる、導入方法について説明します。 PHPOracleを組み合わせる利点 PHPは、コンパイルなしで即時利用ができるインタプリタ/サーバーサイドスクリプト言語であり、テキストエディタでも開発が可能で、開発速度が速いのが特徴です。データベース・アクセスを初めとするさまざまな機能が利用でき、最新の技術を取り入れながら発展を続けています。また、パフォーマンスが良い点も挙げられます。 昨今のシステム開発のニーズとして、企業のビジネススタイルの変化に合わせたアイデアの即時具現化や要望への早期対応などが挙げられますが、PHPは追従できうる言語と認識されております。 Oracl

    PHPでOracle Databaseを使う(導入編)
  • テンプレートから学ぶ 受注する開発者のためのテスト仕様書

    1. はじめに ソフトウェア開発プロジェクトにおいてテストは極めてストレスに満ちています。「テストとは作った成果物に誤りがあるかどうかを見つける作業だ」という質的に不愉快な活動であることに加えて、プロジェクトの終わりにさしかかって時間も逼迫しているのに仕様変更を受けて再テストなどという、体力的にも精神的にもきつい作業であるからです。 稿では、さまざまなストレスを受ける立場の開発者が少しでも楽に「きちんとテストしました」と言うために、テスト仕様書のテンプレートを紹介します。このテンプレートは発注者に報告するための文書だけでなく、さまざまなテスト技法の紹介も含まれていて、いつどういうテストをすればよいのかという手引きにもなっています。 さて、はじめに、ソフトウェア開発プロジェクトと品質・生産性・納期の関係を見てみましょう(図1)。 お客様(発注者)はプロジェクトを起案する際、何を作るかを「

    テンプレートから学ぶ 受注する開発者のためのテスト仕様書
    k1LoW
    k1LoW 2009/07/14
  • Selenium AESチュートリアル一覧

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

    Selenium AESチュートリアル一覧
  • Selenium AES入門

    Selenium Auto Exec Server(Selenium AES)は、Seleniumによる継続的なリグレッションテストを行うことを目的としたツールです。記事では、Selenium AESの入門として、Selenium AESで提供する機能の概要から、インストール、サンプルの実行までを説明していきます。 はじめに Selenium Auto Exec Server(以降、Selenium AES)は、Seleniumによる継続的なリグレッションテストを行うことを目的としたツールです。 Selenium Auto Exec Server (AES) 記事では、Selenium AESの入門として、Selenium AESで提供する機能の概要からインストール、サンプルの実行までを説明していきます。 対象読者 Webアプリケーションの開発者を対象としています。 Selenium

    Selenium AES入門
  • IEでもJavaScriptをデバッグできるDebugBar 5.2

    Microsoft Internet ExplorerでFirebugのようにJavaScriptをデバッグできるプラグイン「DebugBar」が23日、新しいバージョンアップ5.2が公開された。DOM解析や、JavaScriptのデバックといった従来の機能のほか、IETesterでURLを表示させることもできるようになった。 JavaScriptはブラウザさえあればどこでも実行できる手軽なプログラミング言語だが、いざ格的なアプリケーションを開発しようとするときに、デバッガやIDEといったプログラミング環境が十分ではないようだ。けっきょくブラウザで実行することから、Firefoxのアドオン「Firebug」がよく使われている。また最近では、Google ChromeやSafari 4のように、オフィシャルで開発環境が用意されているブラウザも登場している。 そんな中で最大の難関となるのが、

    IEでもJavaScriptをデバッグできるDebugBar 5.2
  • エンタープライズ環境におけるSubversionの複製アーキテクチャ

    はじめに Subversionはこれまでで最も人気のあるオープンソースのバージョン管理システムであり、実際、その評価は当然と言えます。最小単位でのコミット(アトミックコミット)、高速なブランチ/タグ作成、効率的なバイナリファイル処理、HTTPおよびWebDAVでのアクセスなど、数々の強力な機能を備えており、多くの組織にとって利用価値の高い選択肢となっています。また、Subversion 1.5に搭載されている、より高度な機能、特にマージ追跡機能などは、このバージョン管理システムの価値を一層高めています。 優れたバージョン管理システムは、ソフトウェア開発を行う組織にとって戦略的に重要な意味を持ちます。開発者なら誰でも知っているように、ソースコードはIT組織のまさに「血液」です。従って、ソースコードを適切に管理することはビジネス的に意義のあることで、ソースコードリポジトリを使用する主なメリット

    エンタープライズ環境におけるSubversionの複製アーキテクチャ
    k1LoW
    k1LoW 2008/12/03
    svnsync
  • 「実現したいことを計算機の問題に置き換えることが『技術力』」、伊藤CTOが“はてな流”大規模データ処理の極意を語る:CodeZine

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

    「実現したいことを計算機の問題に置き換えることが『技術力』」、伊藤CTOが“はてな流”大規模データ処理の極意を語る:CodeZine
  • 正規表現エンジンを作ろう一覧

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

    正規表現エンジンを作ろう一覧
    k1LoW
    k1LoW 2008/11/20
    regexp
  • JavaScriptでつくるSchemeインタプリタの基礎の基礎

    はじめに 現存するプログラミング言語の中で2番目に古いのがLispです。生まれは古くても、いまだに使われ続け、また、Rubyなどの新しい言語にも影響を与えています。そのLispの派生であり、シンプルさが売りなのがSchemeです。 ここではSchemeの簡単なインタプリタをJavaScriptで作ってみます。 対象読者 稿はLispやSchemeは少し触ったことはあるけど、インタプリタは書いたことがないという方を読者対象としています。また、JavaScriptの文法や、簡単なデータ構造についての知識を前提とし、説明は省きます。 必要な環境 テキストエディタと、JavaScriptが動くWebブラウザがあれば十分です。他に特に用意するものはありません。 概要 作成するインタプリタについて インタプリタのコードはJavaScriptで書き、HTMLのフォームを使って、Schemeのプログラム

    JavaScriptでつくるSchemeインタプリタの基礎の基礎
  • フリーのEclipse用AIRプラグイン「AIR GEAR 1.0.0」リリース、WYSIWYGでAIR開発OK!:CodeZine

    Eclipse用AIRアプリケーション開発支援プラグイン「AIR GEAR 1.0.0」が2日にリリースされた。オープンソースで公開されており、Eclipse Public License 1.0内で自由に使用することができる。「GUIを使った開発」「ActionScript/MXMLを使ったAIR開発」「簡単にできるパッケージ作成」など、AIR開発を強力に支援するプラグインとなっている。 ソースはSourceForgeにて公開されている。jarファイルをダウンロードできるので、これをeclipse/pluginsフォルダ内に配置してEclipseを起動するだけでよい。

  • CodeZine:NIOの非ブロック接続を利用した多重IOの実装(SocketChannel,...

    はじめに 『Javaによる簡易HTTPサーバーの作成』第4回目の今回は、クライアントとの通信に、これまで利用してきたSocketではなく、NIOで提供されるSocketChannelを利用します。 Socketでは、実際の入出力にはStreamを利用します。この時、例えばInputStream#readを呼び出すと、データが読み込み可能になるか例外になるまではreadメソッドから制御が戻りません。そのため、同時に複数のクライアントからの要求を処理するためには、クライアントごとにスレッドを利用する必要がありました。 これに対して、SocketChannelを非ブロックモードで利用すると、まだデータが到達していない、あるいはシステムの送信用バッファがフルになっているなどの理由でデータを転送できない時には、制御が呼び出し側に戻されます(これをJ2SEのAPIドキュメントでは「非ブロック接続」と呼

    k1LoW
    k1LoW 2008/02/29
  • 1