概要 オブジェクト指向プログラミングでよく話題になる単語の一つとして、「デザインパターン」と呼ばれるものがあります。 これは有用な設計パターンに名前を付けて分類したもので、一般的にはGoFのデザインパターン23種を指します。 今となっては古い……というより言語仕様に吸収されてしまったパターンも多いですが、それでもこれについて学ぶことはソフトウェア設計を学ぶ上で重要だと思われます。 今回は、その中でもよく使われる一つである「Abstract Factoryパターン」について、適用前と適用後でどうコードが変わったのかについて具体例を交えつつ解説します。 Webスクレイピングについて軽く説明 Webスクレイピングとは、「Webページ・Webサイトを分析してデータを取り出す」手法のことです。具体的には、次のようなステップが踏まれることが多いです。 Webページ(大抵はHTML)をダウンロードする
AIテクノロジー、中国は世界をリードしていますよね。AIエンジニアも半端ない数いると思います。 日本と同様に、中国でも「今後AIが進化していくとたくさんの仕事が置き換わるよね」との報道がされています。先日とある記事がByteDanceの「今日头条」で話題になってましたので紹介します。翻訳形式で まずジャック・マーはこう言っています机器学知识更快, 机器的记忆比你好。它们可以快速计算,机器的计算比你快,机器永远不会生气、永远不会累,而且总是能比你做得更好。所以,如果将来你想与机器竞争,谁更有才能,你不可能会赢。……我们要改变我们的教育,如果我们还按照以前的方法进行教育,我们的孩子30年后将找不到工作! 「AIが学ぶスピードは速く、あなたよりも記憶力が良い。計算速度は速く、決して怒らず、決して疲れず、常にあなたよりも優秀だ。したがって、もし将来あなたがAIと戦うことになり、誰より才能があっても
と入れてみましょう。 「740」という値が返ってきています。 ここからウィンドウのサイズを変えてみましょう。狭めてみます。 自動実行されて返ってきている値が「556」に変わっているのが分かります。 こちらは名前の通りライブで自動実行し続けます。更新は250ms毎です。 さらに特徴としては、Live Expressionはページがリフレッシュしたり別ページに遷移しても自動実行してくれることです。 使用シーンとしては、例えばリダイレクトが絡む遷移でリファラを確認したい場合などで、都度「Console」なり「Snippets」に を書いて実行する手間を省くために、「Live Expression」で自動的に変化をみたい場合などです。 その他グローバルオブジェクトのプロパティの変化について見たい場合などでも、役に立つと思います。 ページの任意のiframe内で任意のJSのscriptを実行させてみ
今すぐアイデアを形にするたった1つの方法 アイデアを最速で実現するAWSの使い方 低コストでスケール可能なサービスを作る方法 2019年3月27日、AWS Startup Day 2019 Tokyoが開催されました。スタートアップ企業や数年以内の起業を検討している人を対象に、テクノロジーの最新情報を共有する本イベント。AWSで活躍するエンジニアや各分野の第一人が集い、生きた知識を共有します。プレゼンテーション「今すぐアイデアを形にするたった1つの方法」に登壇したのは、アマゾン ウェブ サービス ジャパン株式会社マネージャーでシニアソリューションアーキテクトの西谷圭介氏。時間や資金、人材など、さまざまなリソースが不足するスタートアップに向けて、AWSを用いた効率的な開発手法をデモを交えて解説します。 今すぐアイデアを形にするたった1つの方法 西谷圭介氏:みなさん、こんにちは。「今す
2019年3月19日、Data Engineering Meetupが主催するイベント「Data Engineering Meetup #1」が開催されました。データの収集や管理、処理、可視化など、データエンジニアリングに関する技術の情報を共有する本イベント。データエンジニアリングの最前線で活躍するエンジニアたちが集い、自身の知見を共有します。プレゼンテーション「Spark 2.4 & 3.0 - What's next? - 」に登壇したのは、株式会社エヌ・ティ・ティ・データの猿田浩輔氏。講演資料はこちら Accelerator Aware Scheduling 猿田浩輔氏(以下、猿田):Barrier Execution Modeのお話はここまでで、次はAccelerator Aware Schedulingですね。最近Project Hydrogenの中ではこの機能の議論が活発で、S
5周年の「World of Tanks Blitz」。WoTBの現状や未来について,開発陣にメールインタビュー 編集部:楽器 Wargamingのスマホゲーム「World of Tanks Blitz」(iOS / Android / PC / Mac。以下,WoTB)が,2019年6月にサービス5周年を迎えた。スマホゲーム界隈にはカジュアルからコアまでさまざまな戦車ゲームが存在するが,5年経った今でもWoTBの存在感は大きい。 これに際して,WoTBの現状や未来,さらに大きな変化を見せたアップデート6.0(掲載日時点ではアップデート6.1に)について聞くため,ベラルーシのミンスク本社にいる開発陣へのメールインタビューを行った。 話を聞けたのは,パブリッシング・プロダクト・ディレクターのNatallia Pershyts氏と,APACリージョナル・プロデューサーのChengxin Duan
今回はオープンソースでマルチプラットフォームのOCRエンジンであるTesseract OCRを使用し、読み取り精度を確認してみます。 UbuntuでOCR? 「日本語でOCR」と聞くと、プロプライエタリの牙城というか、高価なソフトを購入しないと実用に耐えないというイメージがあるかもしれません。あるいはないかもしれませんが、いずれにせよ日本語の文字は難しいのでOCRで高い精度を出すのはなかなか難しそうに思えます。 少なくとも筆者はそう考えていたので、OCRで高精度の結果を出すのは困難、ましてやオープンソースで……と考えていました。そんなところに、Tesseract OCRのバージョン4.0以降では日本語でもかなりの高精度で認識するという話を小耳に挟みました。実際に試してみると想定していた以上の結果だったので、ここで紹介することにします。 Tesseract OCRとgImageReader
日本から遠く離れた北欧の国,スウェーデン。ゲームの開発がボーダーレスになり,さまざまな国や地域で作品が作られるようになってきたが,その中でもスウェーデンはユニークな作品を数多く送り出していることで注目されている。今回は,大手のゲームデベロッパだけでなく,以前から活発な活動を続けてきたインディーズゲーム開発を中心に,スウェーデンのゲーム事情を紹介しよう。 Notch(ノッチ)の名で知られるMarkus Persson(マーカス・ペルソン)氏。彼の「Minecraft」は,β段階にして,すでに100万本以上のセールスを記録している。同作は現在,約12億円を稼いだとされており,Persson氏は一躍インディーズゲーム界の寵児になった スウェーデンに本拠地を置くゲーム企業と聞いて,読者の皆さんはどこを頭に浮かべるだろうか。筆者がパッと思いつくのは,Electronic Arts傘下で「Battle
語るに落ちる体たらく この度、セブン&アイ・ホールディングス傘下のスマホ決済システム、「7pay(セブンペイ)」が大規模な事故を起こした。ID(7iD)が乗っ取られ、約6000万円の被害が出たのである。 そもそも2段階認証がなく(これだけで十分に信じられない事態である)、生年月日(略すると2019年1月1日が自動設定)・電話番号・メールアドレスでパスワード変更が可能になることから、簡単に乗っ取られ、リンクしたクレジットカードやデビットカードから入金され勝手に使用されるという、もはや絶句するしかない状況である。 本件においては、運用者は金融業務を行う常識も責任感も欠如しているといわざるを得ない。なぜだろうか。筆者のように長く金融の世界にいた人間からすると、そもそも、このスマホ決済は日本でいう金融の範疇に入っていないように見える。 フィンテックの対象分野は一般的にリテール分野である。先日も「P
UIデザインにもあるバグ 今年の WWDC 2019 で印象に残っているセッションのひとつが「Introducing SwiftUI: Building Your First App 」。SwiftUI は開発がよりスマートにできるようになるだけでなく、デザインツールの新しい可能性を示しているように見えました。SwiftUI はとてもエキサイティングですが、個人的に刺さったのが上の写真。改めて意訳した図を作りました。 UI デザインは単に理想型を作れば良いのではなく、様々な状態(ステート, State)を考慮する必要があります。情報量に応じてどう見せるかだけでなく、様々な種類のエラーにどう対応するか考えなければいけません。How to fix a bad user interface で紹介されている UI Stacks のように、少なくとも 5 つのスクリーンデザインが必要になります。
大手コンビニエンスストア「セブン‐イレブン」で使えるモバイル決済「7pay」で、サービス開始直後に不正利用が発覚するという事件が起きました。現時点では不正アクセスの実態やサイバー犯罪者の正体などは不明で、7月4日時点では被害者数約900人、合計約5500万円の被害と発表されています。 現時点では事件の詳細は不明で、実際にどのようなサイバー攻撃が行われたのか、情報漏えいがあったのか、などは不透明なままです。とはいえ、現時点でも利用者側で学ぶべきポイントがたくさんあるインシデントだと感じています。そのポイントを筆者なりに解説していきたいと思います。 連載:ITりてらしぃのすゝめ 「身近な話題を例にITリテラシーを高めていこう」がコンセプト。さらっと読めて人に話せる、すぐに身につく。分かりやすさ重視で解説。小ネタも扱います。 (編集:ITmedia井上輝一) 「お金に絡むサービス」でパスワード使
昨日完全独立コミュニティのイベントと、会社が関係するコミュニティのイベントの connpass が両方空いたのは良いけど、同じことを外向けにも会社向けにも両方書く必要はないよなと思ったのでメモ。 思い出したら随時追記するかも。自明なこととかお金の話は書いてません。 登壇者系 接続端子の共有 基本的に最近だと HDMI / Type C をカバーしておけばトラブルが起こることはない 上記が揃っているならその旨を、その上でほかもカバーしている場合や、不足している場合はその情報も添えて共有しておくと良い セッション後の質疑応答の有無の共有・確認 質問タイムがあるかないかで実質登壇時間が変わってくるため セッションの間に 5 分休憩などがある場合、それが休憩なのか質問用バッファなのかがわからないので明確にする そもそも人によって質疑応答の有無は選択できたほうが良いので確認すると良い 自分が登壇者と
Modによって様々な変化を楽しむことができるJava版『マインクラフト(Minecraft)』ですが、海外ゲーマーのhodiltoNさんがいくつかのModによってリアルになりすぎた『マインクラフト』の最新プレイ映像を公開しました。 この映像では高解像度のフォトリアリスティックテクスチャ「Ultimate Immersion Textures」とレイトレーシングを実現するシェーダー「SEUS PTGI」を使用。カクカクとしたブロック感はオリジナルのままですが、光や影の表現はまるで実写のよう。技術の進化って凄いですね…。 これから先もまだまだ遊べそうな『マインクラフト』。hodiltoNさんのYouTubeチャンネルでは他にもModを利用したリアルな映像が公開されているので、興味がある方は訪れてみてはいかがでしょうか。 《RIKUSYO》
Googleは7月10日、オープンソースプロジェクトのドキュメント公開に向けたWebサイトテーマ「Docsy」を公開した。ドキュメントを公開するサイトを簡単に立ち上げて運用できるという。 Docsyは技術文書を公開するようなWebサイトのためのテーマで、Webサイト構築のためのフレームワーク「Hugo」をベースとする。Googleは2000以上のオープンソースプロジェクトを抱えており、ドキュメンテーション作成と公開のためのツールが必要だったことから構築したとのこと。技術文書向けのテンプレートとガイドを備えており、すでにKubeflow、Knative、Agonesなどのプロジェクトで利用しているという。 ナビゲーション、サイト構造などの機能を提供するほか、多言語にも対応する。ページの追加、ドキュメンテーションの構造化、コミュニティからの貢献などについてもガイドを提供するという。 Docsy
関連キーワード Amazon Web Services | システム構築 | アプリケーション開発 | 事例 | クラウドコンピューティング | PaaS 「PayPay」は2018年10月に開始したQR・バーコード決済サービスで、加盟店数は60万店以上、累計登録者数は700万人を超える。運営会社のPayPay社は、消費者向けには決済用のスマートフォンアプリケーションを、加盟店舗向けにはダッシュボード「PayPay for Business」を提供している。 PayPayの山本啓介氏 2019年12月にPayPay社が実施した「100億円あげちゃうキャンペーン」の第1弾は、10日間でキャンペーン原資を全て使い切るほどの反響を呼んだ。しかし大量のアクセスでシステムの稼働が不安定になり、キャンペーン中に数度のメンテナンスを実施する必要が生じたという。同社でPayPayのアプリケーション開発を担
大日本印刷(DNP)と建築雑誌出版のエー・アンド・ユー、新建築社の3社は7月10日、雑誌の原稿テキストと画像を入力すると、その内容や雑誌の持つブランドイメージにあった誌面レイアウトを、AIを使って自動生成する技術を開発した。27日発売の建築雑誌「a+u」(エー・アンド・ユー)のレイアウトに一部、新技術を活用。編集者が毎回レイアウトを一から検討して制作する必要がなくなり、業務効率改善が期待できるとしている。 「a+u」の過去15年分の誌面データをAIに学習させることで、“雑誌らしさ”をスコア化するモデルを開発。このモデルにテキストと画像のデータを入力することで、雑誌のブランドイメージに合った複数の誌面レイアウトを自動で提示できるようにした。 “雑誌らしさ”のスコア化時には、AIがどの部分に着目したかを色で表示するヒートマップとして提示。これを客観的指標として活用することで、制作するスタッフ間
こんにちは。 タイトルの通り、NEC通信システム株式会社を退職しました。 このエントリはいわゆる退職エントリというやつです。 否定的なことを多く書いているので、入社予定の人とか在籍している人は見ない方が良いと思います。 ちなみに、NEC通信システム株式会社の正式名称は日本電気通信システム株式会社です。 注意書き(2019年7月11日追記) 全て主観で書いています。経営層から見ると色々反論したい部分はあると思いますが、許してください。 辞めてから数年たってから書いているので一部記憶がおぼろげなところがあります。嘘は書いていないつもりです。 また、ここに書いたのはNEC本社ではなくNEC通信システムの話です。しかもNEC通信システム全体の話ではなく私個人の観測範囲の話です。 詳細な入社年月日と退社年月日は伏せますが、辞めたのは数年前です。 NEC通信システム株式会社について 特にエンドユーザ向
ITエンジニアのコミュニティサイトStackOverflowなどを運営するStackExchangeが、同社のサービスを支えているシステム構成の状況を知らせるWebサイトを公開しています。 同社のサービスは各国版のStack Overflowのほかにも、サーバ管理者のためのServer Fault、数学関係者のためのMathematicsなど多岐にわたっています。 これらを合わせた同社のサービスは月間5億6000万ページビュー。このページビューを、48GBのメモリを搭載した9台のWebサーバ。384GBのメモリを搭載しライブ/ホットスタンバイ構成にクラスタ化した2台のSQL Serverと、288GBのメモリを搭載した2台のSQL Serverによるもう1つのクラスタの合計4台のSQL Server。96GBのメモリを搭載し、マスター/スレーブ構成にした2台のRedis Serverなどで
『クラウドを支えるこれからの暗号技術』 本書は公開鍵暗号に続く、新しい暗号技術を紹介します。 対象読者 『暗号技術入門』(結城浩)を読んで最先端暗号理論はどうなってるのだろうと興味を持った方 「入門書に載っているRSA暗号は安全ではないので使ってはいけない」ということを知らない方 Hash(secret key||message)で認証してはいけない理由(SHA-2とSHA-3の違い)を知りたい方 楕円曲線暗号の楕円曲線を直感的に把握したい方 最近ちょいちょい聞く「準同型暗号」って何だろうと思っている方 楕円曲線といえばy2 = x3 + ax + bという式が唐突に出てくるけど何故なのと疑問に思った方 EdDSAって何? ECDSAの書き間違い?と思ったらEdwards曲線が出てきて、それ何だろうと思った方 暗号で使われる数学の話をきちんと理解したい方 などなど。 購入 秀和システム 正
トロピカル半環と呼ばれる代数構造上のトロピカル行列を利用すると動的計画法を使ってグラフの最短経路の距離を計算するという問題が単純な行列積で解けてしまうらしい。そんな噂12を聞きつけて我々はその謎を解き明かすべく南国(トロピカル)の奥地へと向かった。 トロピカルな世界に行くためにはまずは代数を知る必要がある。要するに群・環・体の話だ。しかしこの記事の目的は代数学入門ではないので詳しい話は他の記事3に譲るとし、さっそく半環という概念を導入する。それは 半環は以下の性質を満たす二つの二項演算、即ち加法(和)"$+$" と乗法(積)"$\cdot$" とを備えた集合$R$を言う $(R, +)$ は単位元 $0$ を持つ可換モノイドを成す: $(a + b) + c = a + (b + c)$ $0 + a = a + 0 = a$ $a + b = b + a$ $(R, \cdot)$ は単
もう、これ以上長いパスワードなんて覚えられない! セキュリティとプライバシーの問題は、個人にとっても企業にとっても、もはや抜き差しならない大問題になってしまっている。 あなたは、いくつぐらいのアカウントとパスワードを使っているだろう? よく、指導されるようにランダムな英数文字記号を組み合わせている人は? パスワードの使い回しはしていないだろうか? おそらく日常生活で使うサービスのために、何百というランダムな文字列を記憶できる人はいないだろう。異常といえる程の記憶力を持っている人でないと、そんなことは不可能だ。ITに詳しくない一般の人……というところで考えると、大半の人がパスワードを使い回しているだろうし、中には端末に付箋で貼っているような人も少なくはないだろう。 しかし、セキュリティの問題は、個人にとっても企業にとっても、もはや最重要課題。個人にとっては、穴があると財産を失ったり、個人情報
「気に入らないコード」をレビューする際にRed Hatのエンジニアはどうしているのか:10個のヒントとは? プロジェクトメンテナーの立場にあるとき、提出されたコードが何らかの理由で気に入らない場合はどうしたらよいだろうか。Red Hatのソフトウェアエンジニアが、コードレビューを行うに当たって念頭に置くべき10のヒントを解説した。 Red Hatでソフトウェアエンジニアを務めるデビッド・ロイド氏は2019年7月8日(米国時間)、コードレビューを行うに当たって念頭に置くべき10のヒントを同社の開発者向け公式ブログで解説した。プロジェクトメンテナーの立場にあるとき、提出されたコードが何らかの理由で気に入らない場合に役立つ指針だ。コントリビューター側としても参考になる。 これらのヒントは、客観的で的を射たレビューを行い、プロジェクトとその参加者を前進させるという観点からまとめられている。 (1)
世界で最初のトレーディングカードゲーム(TCG)である「マジック:ザ・ギャザリング」は全世界のプレイ人口が2000万人を超える人気ゲームです。元Apple社員でデータサイエンティストのマックス・ウールフ氏が公開している「Magic AI」は、そんなマジック:ザ・ギャザリングのカードを、非営利AI企業のOpenAIが開発した自然な文章を生成する言語モデル「GPT-2」を応用して自動生成してくれるサービスです。もちろんあくまで非公式ですが、名前やマナコストを打ち込むだけで、自分だけのカードを生成することが可能です。 AI-Generated Magic: The Gathering Cards with GPT-2 https://minimaxir.com/apps/gpt2-mtg/ Magic AIにアクセスするとこんな感じ。 左の入力欄に名前・カードのタイプ・カードのコストを入力し、「
どこが洪水にあいそうかを事前に予測するAIシステムを開発したり、3次元ディープラーニング(深層学習)技術を活用して肺がん診断AIを開発したり、AIを使って社会課題の解決に積極的に取り組んでいるグーグル。そうした取り組みを、日本でも強化していくようだ。 7月10日、グーグルは「Google AI for Japan」を発表した。このプログラムは、日本における次世代のAI人材の育成支援のほか、ビジネスや社会的な問題解決に向けたAI活用の促進、さらには国内のAI研究への貢献といった3つの活動を目的としたもの。 「日本には、長年に渡る優れた研究と教育の伝統があり、成長を続ける活発な機械学習コミュニティが存在する」とグーグル AI統括のジェフ ディーン (Jeff Dean) は語り、そのことが「Google AI for Japan」を始める理由にもなっているという。 6人の研究者に500万円相当
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く