タグ

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

  • 見た目のデザインから意味のデザインへ――はてなのデザイナーがプロダクトの価値を高めるためにやっていること

    はてなのプロダクト開発の裏側をお伝えするリレー連載の第3回では、デザイナーの村田智さんに、ユーザーに喜んでもらう価値を提供するため、デザイナーとして何を考え、どうデザインしているかについて紹介いただきます。また、職種をこえたコミュニケーションのヒントも併せてお伝えします。(編集部) デザインの重要性はますます増している Webプロダクトは世の中にあふれ、機能や品質が十分なプロダクトは、望めばすぐ手に入るような時代です。その中で人々に自分たちのプロダクトを選んでもらうためには、機能や品質を超えたなんらかの価値や意味が必要になってくるのではないでしょうか。これはわたしが所属する株式会社はてなで開発をしているプロダクトにとっても例外ではありません。 わたしははてな仕事の中で、このようなプロダクトの価値づくりにデザインが貢献できることをなんども経験してきています。「デザイン」という言葉にはさまざ

    見た目のデザインから意味のデザインへ――はてなのデザイナーがプロダクトの価値を高めるためにやっていること
    ghostbass
    ghostbass 2020/07/10
    魔法の…Iランド…だと……??
  • ソフトウェア開発の「品質vs.スピード」、本当は何を犠牲にしているのか【デブサミ2020】

    デブサミ2020の1日目、「質とスピード」というセッションが人気を集めた。2019年10月に開催されたEngineering Organization Festival 2019で評価の高かったセッションをアップデートして再演したものだ。登壇したのは、テスト駆動開発者として有名な、タワーズ・クエストの和田卓人氏。ライオンのアスキーアートといっしょに紹介されることが多いという。プロジェクトマネジメントにはQCD(Quality:品質、Cost:コスト、Delivery:納期)という概念があり、トレードオフの関係になると言われている。確かに開発の現場でも、「いまは大事な時期だから、品質を犠牲にしてスピードを優先しよう」といった判断が行われることは少なくない。しかし、和田氏は、ソフトウェア開発の文脈において、逆の効果をもたらすことを、多くの資料を引用して再構築してみせた。 タワーズ・クエスト株式

    ソフトウェア開発の「品質vs.スピード」、本当は何を犠牲にしているのか【デブサミ2020】
    ghostbass
    ghostbass 2020/07/06
  • Microsoft、ソースコード解析ツール「Microsoft Application Inspector」をオープンソースで公開

    Microsoft Application Inspector」は、ソースコードにおける暗号化やリモートのエンティティへの接続、実行されるプラットフォームといった挙動を見つけられるツールで、複雑なプログラミング手法の検出や、人間では見つけにくいプログラムの挙動を特定できる。 大規模なプログラムの解析も可能で、複数の異なるプログラミング言語によって構成された、数百万行にも及ぶソースコードの解析にも対応している。 「Microsoft Application Inspector」を使用すれば、コンポーネントのバージョン間での機能変更も識別できるため、バックドアの検出に役立つ。さらに、リスクの高いコンポーネントや、追加の精査が必要なコンポーネントの特定にも使える。 検査結果は、JSONやインタラクティブHTMLを含む複数の形式でレポートを生成可能で、ソースコードから特定された機能が一覧表示され

    Microsoft、ソースコード解析ツール「Microsoft Application Inspector」をオープンソースで公開
    ghostbass
    ghostbass 2020/01/22
  • オブジェクト指向がわからない! そんなあなたの脳味噌をオブジェクト脳にする準備体操

    オブジェクト指向で挫折しないために オブジェクト指向のプログラミング言語は当たり前の存在になり、たしかに目新しさはなくなりました。業務でオブジェクト指向のプログラミング言語が使っている方も多いと思います。 だとすれば、そもそもオブジェクト指向とはどういうもので、実際のプログラミングでどう役立つのか、特別に学ばなければならないようなものなのでしょうか。 考えてみてください。たとえRubyJavaを使えているとしても、オブジェクト指向プログラミングができているとは限らないのです。Rubyを学び、Railsを読んで自動生成されるコードを書き換えることはできても、自分でクラスを追加することができない方もいるかもしれません。 RubyJavaPythonといった個別の言語を学習すると、どうしてもその言語の特徴や機能を中心に学ぶことになります。オブジェクト指向は技術書を読む前提知識として扱わ

    オブジェクト指向がわからない! そんなあなたの脳味噌をオブジェクト脳にする準備体操
    ghostbass
    ghostbass 2018/12/17
    「オブジェクト指向は初期の関数型言語であるLispの影響を強く受けていて」?
  • GitHub製エディタ「Atom」で日本語を扱いやすくするために必要な設定

    記事は、技術同人誌サークルDevLOVE Pubの同人誌『Far East Developer Review デブサミ2015特別号』から、編集部員が寄稿した記事を加筆修正したものです。編集部員の近藤が普段編集作業で使用している、GitHub製エディタの「Atom」で、日語を扱うために必要な設定をご紹介します。(編集部) はじめに みなさん、エディタは何を使っていますか? プログラミング用途では情報が豊富なテキストエディタですが、筆者は文章の執筆・編集用途で使いたかったため、ほしい情報があまりまとまっておらず、何を使えば効率よく作業ができるか、しばし悩んでいました。稿では、IT技術記事の新人編集者である筆者が、比較的新しめのエディタ「Atom」で、日語を執筆・編集するために行った環境構築について解説します。日語をエディタで快適に扱いたいというエンジニアの方にお役に立てるものと

    GitHub製エディタ「Atom」で日本語を扱いやすくするために必要な設定
    ghostbass
    ghostbass 2015/08/05
    日本語関係、sublimeならIMESupportとConvertUTF8 でほぼ十分。
  • PHP 7のパフォーマンスが高い理由

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

    PHP 7のパフォーマンスが高い理由
  • Chefで3分クッキング! Webサーバ構築のレシピをRubyで書いてみよう

    連載は、SI業界に入ったばかりの新米業務アプリケーション開発者や、SI業界を目指す学生さんを対象とした、インフラ構成管理ツールを使ってコードでインフラを構築するための講座です。また、インフラエンジニア/システムオペレータで、物理環境でのインフラ構築/運用管理は経験があるけど、プログラミングが苦手という方にも読み進めていただけるように、文法などの解説を入れながら説明します。今回は、Chefというツールのご紹介と、Chefを使ってWebサーバを構築する方法について説明します。 はじめに 前回は、コードでインフラ構成を行う第一歩としてVagrantを使ってローカルPCに仮想環境を構築する手順をご紹介しました。 今回は、Chefというツールのご紹介と、Chefを使ってWebアプリケーションの開発環境にWebサーバであるApache httpdやPHPの実行環境などをインストールする方法について説

    Chefで3分クッキング! Webサーバ構築のレシピをRubyで書いてみよう
  • 日立ソリューションズ、.NETアプリケーション開発用フレームワーク「Open棟梁」をOSSで公開

    日立ソリューションズは、.NET Frameworkをベースにしたアプリケーション開発に必要な各種機能を提供するフレームワーク「Open棟梁」を、オープンソース・ソフトウェア(OSS)として23日に公開した。また、同社を中心に、OSSコンソーシアムに「Open棟梁」普及に向けたコミュニティとして、「.NET開発基盤部会(仮称)」を7月初旬に発足する。 「Open棟梁」は、アプリケーション全体のアーキテクチャを統一する標準アーキテクチャ、入出力処理やデータベースアクセスなどの定型的な機能、開発ツール、テンプレートなどを提供し、高品質なアプリケーション開発環境を実現している。 日立ソリューションズでは、「Open棟梁」を受託開発やプロダクト開発、小規模部門システムから大規模基幹システムまで約70件の開発案件に適用しており、これらの実績によって蓄積したノウハウを集約した。 異種透過性を実現した通

    日立ソリューションズ、.NETアプリケーション開発用フレームワーク「Open棟梁」をOSSで公開
    ghostbass
    ghostbass 2014/04/23
    あとでソース見てみる/オレオレFWの宿命、「なんでアレを使わない!」をどこまで回避できる?/今ならT4とかで生成するよね…そういえばグレンダイザーで甲児が乗ってたのティーフォーだったね
  • さよなら手作業・人海戦術! HTML5時代のツール「Selenium2」でWebシステムのテストを自動化

    シリーズは、WebブラウザをUIとして利用した業務システムやアプリケーション(以下、Webシステム、Webアプリケーション)のテストをテーマとして、Webブラウザを使ったテストを自動化するOSSのツール「Selenium2」を紹介します。業務システム開発の現場で適用してきたノウハウを元に、これまでSelenium2について知らなかった人から以前使った経験がある人まで、より実践的な「使える」内容を盛り込んでいきたいと思います。 シリーズのスコープと対象読者 シリーズはWebシステム・Webアプリケーションのテストの中でも「Webブラウザを操作して実施するテスト」をスコープにしています。開発工程としては、1モジュールとして単体テストに位置付けられる場合もあれば、複数のモジュールやシステムと連携して結合テストや総合テストに位置付けられる場合もあるでしょう。これらのテストのことを、シリーズ

    ghostbass
    ghostbass 2013/10/26
    SeliniumIDEがこいつに対応すればかなり使える。
  • Cloud SQLとHTML5のWeb Storageで高速仕訳入力

    サンプルシステムの構成 図1は今回サンプルのシステム構成で、クライアント側では前回もそうでしたがHTMLのタグ記述をHTML5の書式で行い、サーバ側ではサーブレットとビーンズの構成でCloud SQLからRDBMySQLにアクセスするようになっています。この構成でアプリケーションとしては仕訳入力を行うプログラムを作成していきますが、今回Cloud SQLと組み合わせて使用するWeb Storageについて最初に見ていきます。 HTML5ではHTMLのタグ仕様だけでなくJavaScriptから呼び出されるAPIの仕様も策定し、Webブラウザによる動作の差異をなくそうという方向性と、Webアプリケーションを作成する上でWebクライアントとして不足していた機能を補うAPIを補充・追加するという方向性が見られます。 このような趣旨・目的から策定されたAPIの一つがWeb Storageで、Web

    Cloud SQLとHTML5のWeb Storageで高速仕訳入力
  • Androidアプリ開発者なら押さえておきたい Javaセキュアコーディングの意味と効果

    連載では、セキュアコーディングスタンダード「CERT Oracle Secure Coding Standard for Java」の内容をベースに、Android特有の情報を交えつつ、堅牢なプログラムを開発するためのノウハウを具体的な事例とともに紹介していきます。第1回では、セキュアコーディングの意味と、その効果について解説します。 はじめに 昨年、C/C++に関してセキュアコーディングの連載があったことを御存じの方もいるかもしれません。今回始まる「Javaセキュアコーディング入門」は、Javaのプログラミングにおいて、入力値検査、引数の安全な渡し方、例外処理、整数演算といったソフトウェアの脆弱性に直結する問題に対して、コーディング上の注意点や脆弱性を作り込まない作法を解説するものです。具体的には、演算処理、文字列処理、ファイル操作などトピックごとに、よりセキュアなコーディングスタイル

    Androidアプリ開発者なら押さえておきたい Javaセキュアコーディングの意味と効果
    ghostbass
    ghostbass 2011/11/24
    追ってみるかな
  • 「ソートも、サーチも、あるんだよ」 ~標準C++ライブラリにみるアルゴリズムの面白さ

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

    「ソートも、サーチも、あるんだよ」 ~標準C++ライブラリにみるアルゴリズムの面白さ
    ghostbass
    ghostbass 2011/07/27
    ここも汚染されてしまった
  • 例外処理とロギングのベストプラクティス

    はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです。理由は次のとおりです

    例外処理とロギングのベストプラクティス
    ghostbass
    ghostbass 2011/07/20
    メッセージコード?どこかに定数化するの?レベルって「エラーの重大度」じゃないの?
  • C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第2回「デスクトップアプリケーション」

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

    C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第2回「デスクトップアプリケーション」
    ghostbass
    ghostbass 2011/06/13
    ここにもQBに汚染された記事が
  • OracleのSQLのアンチパターンの問題集1

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

    OracleのSQLのアンチパターンの問題集1
    ghostbass
    ghostbass 2011/05/19
    このクエリーどこかで見たことある
  • Visual Studioで作る単体テスト、いろいろな実行方法

    はじめに Visual Studioは2005の時から単体テスト機能を搭載するようになりました。Visual Studio 2008以降のバージョンでは一般的な開発者が利用するProfessional Editionにもこの機能が搭載され、ますます使いやすい環境が整ってきています。連載では主に単体テスト機能にフォーカスしますが、開発者の利用シーンをキーワードとしていくつかのシナリオを想定し、その時々の使い方を取り扱っていきます。 今回はいろいろな方法でテストを実行する方法を覚えましょう。 対象読者 .NET Frameworkを利用した開発プロジェクトに携わっている方 Visual Studioの単体テスト機能に興味がある方 必要な環境と準備 稿で解説する内容を実際に試す場合には以下のいずれかのソフトウェアが必要になります。 Visual Studio 2010 Professiona

    ghostbass
    ghostbass 2011/05/19
    ネタステートメントが "target.Add(x,y)"だった時点で見るのをやめた。/ああ、自動生成してAssert入れただけだとこうなるのか。それにしても気持ち悪い
  • DAOパターンのデメリットを補う「DataAccessMethodパターン」

    DAOパターンは、企業向けシステム開発で利用される非常に優れたデザインパターンですが、多くのクラスやインターフェイスを定義する必要があるというデメリットがあります。そこで稿では、GoFのTemplateMethodパターンをベースしたDataAccessMethodパターンを紹介します。これを用いると、通常のDAOパターンに比べてクラス数が激減します。 はじめに CJ2EEのDataAccessObjectパターンは、企業向けシステム開発で利用される非常に優れたデザインパターンです。これを利用することにより、柔軟なシステムを構築することが可能となります。有名なパターンなので、多くの方はこのパターンを使った設計/開発に携わった経験があるのではないかと思います。 しかし、DataAccessObjectパターンを使った開発は多くのクラスやインターフェイスを定義する必要があります。これは、Da

    DAOパターンのデメリットを補う「DataAccessMethodパターン」
    ghostbass
    ghostbass 2010/11/11
    DB実装が変更されることはビジネスロジックとは何の関係もない。にもかかわらず継承によってDB実装を分けると言うのはどういうことなのか。
  • C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」

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

    C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」
    ghostbass
    ghostbass 2010/10/21
    C#たん出番少なすぎ/ CシャープじゃなくCトリプルスラッシュなら こういう本「はじめてのC///」になるか
  • Javaで軽快に使える「軽量フレームワーク」特集 ~クールなGUIをシンプルなスクリプトで作成するZK(3)

    はじめに 今回は、これまで紹介したコンポーネント以外の機能から、重要なものをいくつかピックアップして補足していくことにしましょう。ZKは、基的にプレゼンテーション層のフレームワークであり、コンポーネントによるページの作成を第一に考えられています。しかし、Webページを作る上で、コンポーネント以外にも必要となる機能はいろいろと考えられますし、コンポーネントを活用する上で理解しておきたい機能というのもまたあります。 例えば、GUI関連の機能としては「ドラッグ&ドロップ」や「メニュー」、「マルチウインドウ」といったものがあげられます。またWebアプリケーションでデータを扱う際に多用される「セッション」の利用方法も重要ですし、「データベース・アクセス」はWebアプリケーション開発では外すことのできない機能でしょう。今回は、これら「コンポーネント以外の機能」について説明していきます。 対象読者 J

    Javaで軽快に使える「軽量フレームワーク」特集 ~クールなGUIをシンプルなスクリプトで作成するZK(3)
  • 猫プログラミング 目次

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

    猫プログラミング 目次
    ghostbass
    ghostbass 2010/09/07
    ねこにプログラムを作らせるお話