タグ

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

  • @IT:rpmコマンドでパッケージをダウングレードするには

    プログラムをアップデートしたら、うまく動作しなかったり新しいバグが見つかったりして、前のバージョンに戻す必要が生じることがある。しかし、rpmコマンドで古いバージョンをインストールしようとすると、エラーが発生してしまう。 rpmコマンドでパッケージをダウングレードするには、--oldpackageオプションを使用する。例えば、Fedora Core 4では、xorg-x11-*.FC4.48.i386.rpmへのアップデートによって一部のPCでX Window Systemが起動しなくなるという不具合が発生した。正常に動作するバージョンをダウンロードしたら、

  • 機械学習/Deep Learningの仕事が増える2017年、ソフトウェアエンジニアがFPGAを学ぶべき理由

    ソフトウェアエンジニアFPGA(field-programmable gate array)を使うハードルがさらに下がってきている。クラウドサービスでFPGAを活用できたり、Pythonで記述したニューラルネットワークをFPGAに高位合成できる研究成果が出てきたりしているのだ。 ソフトウェア開発者の立場でFPGAに取り組むイベント「FPGAエクストリーム・コンピューティング」を主宰する佐藤一憲氏、FPGAの高位合成によるディープラーニングについて研究している東京工業大学の中原啓貴氏(中原研究室)、そしてFPGAベンダーであるザイリンクスの神保直弘氏が、急激に常識が変わりつつあるFPGAの動向を語り合った。 稿では座談会の中から、ソフトウェアエンジニアFPGAや高位合成が求められる現状、そして、今後どのようなツールを使うべきか、ソフトウェアエンジニアFPGAに取り組む際の課題などにつ

    機械学習/Deep Learningの仕事が増える2017年、ソフトウェアエンジニアがFPGAを学ぶべき理由
  • Windowsの「net user」コマンドでユーザーアカウントをコマンドラインから管理する (1/2):Tech TIPS - @IT

    Windows OSでユーザーアカウントを管理するには、ローカルなら[コンピューターの管理]、Active Directoryなら[Active Directory ユーザーとコンピューター]といったGUIベースの管理ツールを利用する。 しかしそれだけではなく、コマンドプロンプト上で「net user」というコマンドを利用することも可能だ。アカウントの作成/削除、設定内容の確認、有効/無効の変更、パスワードの設定といった簡単な操作なら、コマンドプロンプト上で行えば素早く作業できる。バッチファイルで一連の設定作業を自動化することも可能だ。 ここでは、このnet userコマンドの使い方について、簡単にまとめておく。 以下で説明している操作を行う場合は、基的には管理者権限のあるアカウントでサインインした上で、管理者権限のあるコマンドプロンプトを開いて実行する必要がある。さもないと、権限の問題

    Windowsの「net user」コマンドでユーザーアカウントをコマンドラインから管理する (1/2):Tech TIPS - @IT
  • SMBに乗り換えたMac――WindowsとMacのファイル共有のいま(後編)

    SMBに乗り換えたMac――WindowsMacのファイル共有のいま(後編):その知識、ホントに正しい? Windowsにまつわる都市伝説(27)(1/2 ページ) 前回はWindowsMacのファイル共有について、最新のOS X 10.10 Yosemiteの状況について調査しました。今回は、以前のOS Xと絡めて、変更点や互換性問題を説明します。 連載目次 以前のMac OS XのSMBクライアント機能は“NT LM 0.12だけ”で会話する 前回、Macが「Samba」からアップル独自のSMB(Server Message Block)実装に切り替えたというお話をしました。これはSMBサーバー機能の話であり、MacのSMBクライアント機能とは別の話です。ただし、新しいバージョンのSMBへの対応やIPv6(Internet Protocol version 6)対応がSMBサーバー

    SMBに乗り換えたMac――WindowsとMacのファイル共有のいま(後編)
  • あなたの知らないAndroid SDKの便利tools、14選まとめ

    あなたの知らないAndroid SDKの便利tools、14選まとめ:Androidで動く携帯Javaアプリ作成入門(50)(1/3 ページ) SDKに含まれている便利なツールを、デバッガー/プロファイラー、コード解析/難読化、画像ファイル最適化、アプリ外部のデータリソース操作の4種類に分けて紹介。

    あなたの知らないAndroid SDKの便利tools、14選まとめ
  • テスト駆動開発/振る舞い駆動開発を始めるための基礎知識

    連載目次 2000年代初期に開発手法として確立された「テスト駆動開発」(Test Driven Development、以下「TDD」)は、その後10年もの間で普及が進み、今や珍しくない開発スタイルの1つとなっています。国内でも「アジャイルアカデミー」「TDD Boot Camp」などによる推進・普及活動が各地で活発化し、認知が広がってきました。 なおTDDは誕生からこれまでの間に、さまざまな工夫や実践上のノウハウが提唱されてきました。またTDDの普及に影響を受け、他のさまざまな「テストファースト」手法も台頭してきています。 稿では、そうしたTDDの発展や、振る舞い駆動開発(Behavior Driven Development、以下「BDD」)など他のテストファースト手法への展開についても解説します。 ※編集部注:ソフトウェアの「テスト」そのものの概要や種類について知りたい方は記事「J

    テスト駆動開発/振る舞い駆動開発を始めるための基礎知識
  • NTP増幅攻撃で“史上最大規模”を上回るDDoS攻撃発生

    米国時間の2014年2月10日、Network Time Protocol(NTP)の脆弱性を悪用した大規模なDDoS攻撃が確認された。米国のセキュリティ企業、CloudFlareCEOを務めるマシュー・プリンス氏のツイートによると、2013年3月に観測された“史上最大規模”のDDoS攻撃を上回り、トラフィックがほぼ400Gbpsに達する規模だったという。 NTPは、システムの内部時計を正しい時間に同期させるためのプロトコルで、インターネットを形作るネットワーク機器やサーバー、デスクトップマシンなどで幅広く使われている。 ntpdなどNTPの実装の一部には、NTPサーバーの動作モニタリングのために「monlist」機能を備えているものがある。この機能が「攻撃者にとって理想的なDDoSツール」(CloudFlareのブログ)になっているという(関連記事:増幅攻撃はDNSだけではない――NT

    NTP増幅攻撃で“史上最大規模”を上回るDDoS攻撃発生
  • 図とコマンドで分かる! git-flowによる開発の流れと使い方

    図とコマンドで分かる! git-flowによる開発の流れと使い方:Gitランチを使いこなすgit-flowGitHub Flow入門(3)(1/2 ページ) 数回にわたってgit-flowGitHub Flowを使ったGitの活用テクニックを紹介します。今回は、git-flowの代表的なコマンドと、git-flowによるブランチ利用の流れを図とともに紹介します。

    図とコマンドで分かる! git-flowによる開発の流れと使い方
  • @IT:適当な名前のファイルやディレクトリを作成するには

    プログラムの出力をファイルに書き出す場合などに、適当な名前のファイルやディレクトリを作成しなければならないことがある。そのようなときには、mktempコマンドを使用するといい。mktempコマンドは、ファイル名に「XXXXXX」のように大文字の「X」を6つ連続して指定すると、その部分にランダムな文字や数字を充ててファイルを作成する。 $ mktemp tmp.XXXXXX tmp.BdE4E9 $ mktemp tmp.XXXXXX tmp.ilM4hd $ ls tmp.BdE4E9 tmp.ilM4hd ←2つのファイルが作成された

  • ‘愛’で学ぶ文字コードと文字化けの常識 (1/4) - @IT

    連載は、Java言語やその文法は一通り理解しているが、「プログラマー」としては初心者、という方を対象とします。Javaコアパッケージを掘り下げることにより「プログラマーの常識」を身に付けられるように話を進めていきます。今回は、文字コードや文字化けについて。OSや携帯電話の機種の違い、メール、Webブラウザ、DB入出力、国の違いなどさまざま原因で起きる文字化けを徹底解説! 文字コードや文字化けの知識はプログラマーの常識 今回は、文字コードや文字化けなどの文字に関する常識をJavaを通して身に付けていきます。 私たちプログラマーにとって、文字や文字列を扱うことはとてもありふれたことです。ほとんどのプログラムにおいて、何らかの形で文字や文字列を扱っていることでしょう。 インターネット時代には必須の知識 コンピュータ1台で動作するプログラムを扱っている範囲では、皆さんは特に何の困難に出合うことも

    ‘愛’で学ぶ文字コードと文字化けの常識 (1/4) - @IT
  • 減り続けるメモリ残量! 果たしてその原因は!?

    物理メモリ使用状況の把握には何を使う? では、ストレージとの同期情報まで加味したメモリの使用状況監視を行うには、どうすればよいのでしょうか? 実は現在(注2)のところ、「これで完ぺき」という方法はありません。ただ、それでは困るので、ここでは次善の策としてActiveとInactiveを監視する方法を挙げます。 ActiveとInactiveはvmstat -aやcat /proc/meminfoなどと入力することで取得できます(図5)。 Activeはページキャッシュや無名ページ(注3)のうち、最近利用したり、まだストレージとの同期が取れていない「捨てられない」ページです。Inactiveは、同じくページキャッシュや無名ページのうち、最後にアクセスされてからある程度時間がたち、ストレージとの同期も完了していて、すぐに捨てられるページです。よって、/proc/meminfoの出力でいうところ

    減り続けるメモリ残量! 果たしてその原因は!?
  • さっくり理解するPHP 5.5の言語仕様と「いい感じ」の使い方

    PHP 5.5.0が公開されました。オペコードキャッシュやジェネレータなど、言語仕様としても実行エンジンとしても挑戦的な内容が含まれています。 「PHP 5.5.0」が、2013年6月20日に公開されました。2012年3月1日に公開された「PHP 5.4.0」から数えて1年3カ月ぶりのメジャーバージョンアップになります。これまでのメジャーバージョンアップの例に漏れず、言語仕様としても実行エンジンとしても挑戦的な内容が含まれています。なお2013年7月18日にはバグ修正版の「PHP 5.5.1」が公開されており、稿のサンプルコードは同バージョンで動作を確認しました。 PHP 5.5系列が公開されたことに伴い、PHP 5.3系はメンテナンスモードに入りました。同年7月11日に公開された「PHP 5.3.27」が5.3系列の通常の最後のバージョンとなり、これ以降はセキュリティ修正のみの対応とな

    さっくり理解するPHP 5.5の言語仕様と「いい感じ」の使い方
  • インフラストラクチャ自動化フレームワーク「Chef」の基本

    DevOpsというキーワードに関連して、「Chef」というツールの名前を聞いたことのある人も多いのではないでしょうか。この記事では、インフラにおける構成管理、展開作業を自動化するChefの構造および基的な使い方について解説します。 インフラストラクチャ自動化フレームワーク「Chef」 Chefは、物理、仮想、クラウドといったさまざまな大きさのインフラに対して、サーバやアプリケーションの展開を容易にするための自動化フレームワークです。 Chefの重要な要素の1つに「Infrastructure as Code」という概念があります。インフラをどのように構築し、維持するべきかという定義はRubyの文法で記述され、ソースコードのように扱うことができます。つまり、あたかもRubyでプログラミングをするように、インフラの構成管理をコードによって行えることがChefの利点の1つです。 自然言語による

    インフラストラクチャ自動化フレームワーク「Chef」の基本
  • Androidアプリのビルド/テストはCIでここまで変わる

    Androidアプリのビルド/テストはCIでここまで変わる:グリーはいかにしてJenkinsを導入したのか(3)(1/2 ページ) グリーのサービス開発における継続的インテグレーションと、CIツールであるJenkinsの導入について、CI導入のモチベーション、進め方のポイントを中心に説明します。今回は、apkの作成までの自動化を手始めに、徐々に自動化の資産を積み上げていくことで開発ワークフローを改善していく過程を紹介します。 前回の「JenkinsでCIすればiOSアプリのビルドは、もう面倒くさくない」に続き、今回はAndroidアプリ開発とJenkinsについて紹介します。 Androidアプリのビルド Android開発の継続的インテグレーションの第一歩として、まずはAndroidアプリをJenkinsでビルドしてapkファイルを作成してみましょう。あらかじめJenkins、Andro

    Androidアプリのビルド/テストはCIでここまで変わる
  • Webサイト高速化のプロセスだって自動化したい

    サーバ側にmod_spdyをインストールし、Google Chromeで、HTTP2.0でベースとなるSPDYのデモが行われた「Chrome Tech Talk Night #5」をレポートする。 Webサイト高速化のプロセス自動化と最高のパフォーマンス計測ツール 1月31日、Google 東京オフィスで開催された「Chrome Tech Talk Night #5」の模様をレポートします。Chrome Developer AdvocateのIlya Grigorik(イルヤ・グリゴリック)氏を迎え、SPDY導入方法を含むWebアプリケーションの高速化や、パフォーマンス向上の手法について説明されました。 イベント自体は「Making the Web Fast with PageSpeed」、「Wait, Chrome DevTools can do THAT?」の2部構成でしたが、このレポ

    Webサイト高速化のプロセスだって自動化したい
  • 多彩な表現力のWebGLを扱いやすくする「Three.js」

    多彩な表現力のWebGLを扱いやすくする「Three.js」:Webグラフィックをハックする(5)(1/5 ページ) Three.jsはWebGLの冗長な仕様をうまくラップし、扱いやすいインターフェイスで提供するライブラリだ。サンプルコードと見比べながら、効率良く学習しよう Three.jsの基礎 連載も5回目を迎え、いよいよ佳境に入ります。今回の題材は、Webブラウザ上で3次元グラフィックを実現する「WebGL」です。ただし、これまでと違ってAPIを直接は触れず、「Three.js」を利用します。Three.jsはWebGLの冗長な仕様をうまくラップし、扱いやすいインターフェイスで提供するライブラリです。Mr.Doob氏を中心にオープンソースで開発が進められており、WebGL界隈ではデファクトスタンダードに近い地位を築いています。 Three.jp公式サイト WebGLはこれまで解説し

    多彩な表現力のWebGLを扱いやすくする「Three.js」
  • Node.js、Socket.IO、MongoDBでリアルタイムWeb

    Node.js+Socket.IO+MongoDB こんにちは! 著者は、マインドフリーという会社でNode.jsを使ってWebアプリなどを作成している。この連載では、最新Webテクノロジを使った研究開発の事例や実績を発信する弊社のサイト“Tech Release”のリニューアルで培ったNode.jsに関する知識を分かりやすくお伝えする。 Tech Releaseは一見、普通のブログに見えるが、実は記事の更新内容がリアルタイムにView画面に反映されている。管理者が、記事の文章(データ)に変更を加えると、その記事を見ている人にもページをリロードせずに、リアルタイムに文章(データ)が変化していく。 このUXを実現するために開発したシステムが、REALTIME BLOG ENGINE「REABLO」というエンジンだ。「REABLO」はNode.jsとSocket.IO、MongoDBを使用して

    Node.js、Socket.IO、MongoDBでリアルタイムWeb
  • SAXによるXML文書の操作

    連載 XMLツールでプログラミング(3) SAXによるXML文書の操作 DOMとSAXは、XML文書を操作するもっともポピュラーなAPIだ。前回紹介したDOMはDOMツリーを柔軟に操作可能な一方で、SAXは大規模なXML文書を高速に処理できる特長がある。目的に合わせてこの2つを使い分けるべきだが、今回はそのSAXについて解説する。 赤木伸 日オラクル株式会社 2000/10/5 前回はXML ParserのDOM APIを利用して下記の「Book.xml」から特定の要素の内容を取り出す方法について説明した。今回はXML文書を操作するためのもうひとつのAPIであるSAXについて説明する。 SAXでは、DOMのようにXML文書をまるごとメモリに読み込んだあと処理するのではなく、XML文書の先頭から一行ずつ順番に処理をして行く。そのため、どんなに大きなXML文書を処理するときでも、メモリの使用

  • RFCとなった「OAuth 2.0」――その要点は?

    RFCとなった「OAuth 2.0」――その要点は?:デジタル・アイデンティティ技術最新動向(2)(1/2 ページ) いまWebの世界では、さまざまなWebサービスが提供するプラットフォームと、サー ドパーティが提供するアプリケーションがAPIを中心に結び付き、一種の「APIエコノミー」を形成しています。この連載では、そこで重要な役割を果たす「デジタル・アイデンティティ」について理解を深めていきます。 再び、デジタル・アイデンティティの世界へようこそ 前回「『OAuth』の基動作を知る」ではOAuthの仕様がどういうものかについて説明しました。今回は引き続き、 OAuth 1.0とOAuth 2.0の違い OAuth 2.0をセキュアに使うために知っておくべきこと について述べていきます。 OAuth 1.0とOAuth 2.0の違い クライアントタイプの定義 OAuth 2.0では、O

    RFCとなった「OAuth 2.0」――その要点は?
  • スマホ技術者も知らないと損する「O2O」の基礎知識

    スマホ技術者も知らないと損する「O2O」の基礎知識:Androidで使えるO2O技術まとめ解説(1)(1/5 ページ) O2Oを4つのパターンで整理し、今注目される理由や事例、パーソナル情報との関連性、O2OクライアントとしてAndroidアプリを作成する際に必要な技術などを徹底解説します マーケターじゃなくても「O2O」の範囲ぐらい知っておこう 連載では、今注目の「O2O」で使われる技術をスマートフォン(特に、Android)のアプリとして実装し、具体的に「O2O」を活用していく方法を解説していきます。 「O2O」こと「オンラインtoオフライン」は、バズワードとしてすっかりおなじみになった感があります。多くの場合、「O2O」の意味は「オンラインとオフラインが融合し相互に影響を及ぼす購買活動」と説明されますが、これだと範囲が広すぎ、話の論点がぼけてしまいます。 そこで連載初回としては、ま

    スマホ技術者も知らないと損する「O2O」の基礎知識