タグ

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

  • 「創業当時は良い選択だった」――マネーフォワードのアーキテクチャ変遷、クラウドネイティブに変革した理由

    「創業当時は良い選択だった」――マネーフォワードのアーキテクチャ変遷、クラウドネイティブに変革した理由:「拡大していく組織を支えるには、適切な責務分担とスモールチームが大切」 2022年3月10~11日に開催された「ITmedia Cloud Native Week 2022春」の基調講演に、マネーフォワードの取締役執行役員 D&I担当 CTO(最高技術責任者)中出匠哉氏が登壇。「40を超えるサービスを“素早く継続して”生み出し続ける、クラウドネイティブな秘訣(ひけつ)」と題して、マネーフォワードにおけるクラウドネイティブ技術活用のポイントやサービスを迅速提供するための秘訣を紹介した。

    「創業当時は良い選択だった」――マネーフォワードのアーキテクチャ変遷、クラウドネイティブに変革した理由
    luccafort
    luccafort 2022/04/19
    “「我ら生まれた日は違えども、死す時は同じ日同じ時を願わん」になぞらえ「桃園の誓い問題」と呼んでいるという。”いつも思うけどこのネーミングセンス、とっても好き。
  • 機械学習/Deep Learningの仕事が増える2017年、ソフトウェアエンジニアがFPGAを学ぶべき理由

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

    機械学習/Deep Learningの仕事が増える2017年、ソフトウェアエンジニアがFPGAを学ぶべき理由
  • 「コーディングがはかどる」BGMがあるそうです

    「コーディングがはかどる」かもしれないプログラマーの皆さん向けの音楽サイトがあるそうです。ちょっと試してみました。 今、BGMは流れていますか? 家で、電車で、会社で──。「NO MUSIC, NO LIFE」までではないにしても、“ながら音楽”の習慣がある人は多いでしょう。特に論理的な思考を必要とするプログラマーの皆さんは、良いコードを効率よく書くためにどんな環境が必要か、どんな音楽だとはかどるか、それぞれ自身の方法論を持っていると思います。 例えば、アマゾンの定額制音楽配信サービス「Prime Music」には、「~~のための音楽」といった、あるテーマに沿った楽曲を集めたプレイリストがたくさん登録されています。「ドライブに最適なJ-POP」「お休み前に聴くピアノソロ」「恋がしたくなるJ-POP」などの他に、「仕事がはかどるジャズ」「残業を乗り越えるサントラ」「満員電車でイライラしないポ

    「コーディングがはかどる」BGMがあるそうです
    luccafort
    luccafort 2016/02/27
    クロノトリガーとクロノクロスのサントラをプレイリストに突っ込んでループさせるのがぼくの大正義。 流していて邪魔されないけど心地よさを感じる。 BGMイラネ派の人はむしろノイズなんだろうけど。
  • 5分で絶対に分かるAPI設計の考え方とポイント

    API設計を学ぶべき背景と前提知識、外部APIと内部API、エンドポイント、レスポンスデータの設計やHTTPリクエストを送る際のポイントについて解説する。おまけでAPIドキュメント作成ツール4選も。 【0分】API設計を学ぶべき背景 APIの公開が増えている 最近、自社で保有するデータや、システム、アプリケーション、Webサービスの機能を「API(Application Programming Interface)」として公開する企業が、増えてきています。これに伴い、「API経済圏(APIエコノミー)」という新たなビジネスモデルが確立されつつあります(参考:5分で絶対に分かるAPIマネジメント、API経済圏)。 「ProgrammableWeb」というAPIに関するニュースサイトや、さまざまな企業が提供するAPIのリンクがまとまったサイトもあり、APIの普及はものすごいスピードで進んでいる

    5分で絶対に分かるAPI設計の考え方とポイント
    luccafort
    luccafort 2015/11/18
    多分これ読むならWebAPI Good Parts読んだ方がいい。
  • 作業は丸投げ、支払いは?――元請けvs.下請け裁判の行方

    連載目次 IT訴訟事例を例にとり、トラブルの予防策と対処法を解説する連載。前回までは、「ユーザーが資料をくれないのは、ベンダーの責任です」「締結5日前にユーザーが白紙撤回! 契約は成立? 不成立?」など、「ユーザーvs.ベンダー」という構図で判例の紹介をすることが多かったが、今回は少し趣向を変えて「元請けvs.下請け」のお話をする。 私の調停や裁判での経験からすると、この両者の力関係は、ある意味ユーザーとベンダー以上で、元請けは下請けにかなり危険な状況で作業を着手させることがある。 具体的には、元請けが(最終顧客である)ユーザーから正式な発注を受けていないのに下請けに作業をさせる、その契約が締結に至らなくても下請けに費用を支払わない、元請けが勝手に機能を追加してそのまま下請けに行わせる、といったことがよく見られる。そして、こうした無理難題を断り切れる下請けは少ない。むしろ「そういうところ

    作業は丸投げ、支払いは?――元請けvs.下請け裁判の行方
    luccafort
    luccafort 2015/05/15
    これ読んで意地悪な判決だとは欠片も思えんのだけども。『委託契約(請負契約)であっても、「注文をしたら後は成果物を待つだけ」という姿勢は許されない。』ごく当たり前の話だと思うけど筆者は違うのだろうか
  • あのホストまでの経路や通信ボトルネックを調べるには? tracerouteコマンド

    あのホストまでの経路や通信ボトルネックを調べるには? tracerouteコマンド:ネットワーク管理の基Tips 目的のホストまでIPパケットがどのような経路で転送されていくかを確認したい場合や、通信経路に問題がないかどうかを調べたい場合は、「traceroute」コマンドが役立ちます。tracerouteはTCP/IPネットワークのトラブルシューティングにおける基ツールの一つです。 連載バックナンバー 連載では、ネットワーク管理の基コマンドを順を追って紹介していきます。基書式と用法、主要なオプション、用例サンプルを示しますので、manやhelp代わりに通読し、各コマンドでできることを順次おさらいしてみてください。今回はIPネットワークの経路情報を確認する際に利用する基コマンド「traceroute」を見ていきます。 なお、連載では、執筆時点の最新版Red Hat Enter

    あのホストまでの経路や通信ボトルネックを調べるには? tracerouteコマンド
  • Android SDK標準の何でもテストツールuiautomatorの基本的な使い方

    uiautomatorは、Android SDKに標準で含まれているテスト自動化ツールです。Apache License, Version 2.0のライセンスで提供されています。 uiautomatorの主な特徴は以下の通りです。 Android 4.1以上で実行できる(端末の回転およびスクリーンショット撮影には、Android 4.2以上が必要) テストスクリプトはJava言語で記述 他者の署名した(Google Play Storeからダウンロードしたものも含む)アプリもテストできる すなわち、テスト対象の端末上にインストールされ、動作しているアプリであれば、何でもテストできる 特に、最後に挙げた特徴はuiautomator最大のセールスポイントといえます。一連のテストで、テスト対象アプリでないものを操作したいケース(例えば、設定アプリでBluetoothやWiFiをON/OFFするな

    Android SDK標準の何でもテストツールuiautomatorの基本的な使い方
  • 「バブル期の日本」と「シリコンバレーなう」の共通点

    「バブル期の日」と「シリコンバレーなう」の共通点:プログラマ社長のコラム「エンジニア起業のススメ」(10)(1/2 ページ) シリコンバレーでは今、二流エンジニアたちがオフィスの卓球台の周りで多忙ぶりを嘆き合っている。その姿はまるで、バブル時代のニッポンのサラリーマンのようだ。 連載目次 私が初めて日に来たのは、1980年台後半のバブル全盛期だった。 誰も彼もがジュリアナで踊り、「『NO』と言える日人」が話題だった。日車や日製の電化製品が世界市場を席巻し、西側諸国は日の労働市場に羨望(せんぼう)のまなざしを向けていた。日人従業員は教育レベルが高く、規律正しく、信じられないほどの働き者として有名だった。 労働現場の実態 その勤勉な国で働くことになり、私がどんなに困惑したか、あなたに想像できるだろうか? 私が働いていたのは、日の大手IT企業だった。同僚たちは9時の定時前に全員

    「バブル期の日本」と「シリコンバレーなう」の共通点
    luccafort
    luccafort 2014/08/07
    なんとなく最強の軍隊というジョークを思い出した、一兵卒としては日本的な場合のほうが優秀なのかもしれん。それが良いのか悪いのかは正直よくわからん。ただそれだけの職人抱えてても評価されない日本ヤバい。
  • システムテスト自動化の基礎知識とMonkeyTalkの使い方

    連載目次 システムテストの自動化とは テスト自動化ツールの紹介に先立って、連載で扱う「システムテスト」の位置付け、またシステムテストのうち、どのテスト(テストタイプ)を自動化していくのかについて説明します。 システムテストの定義 システムテストとは、ユニット(単体)テスト、統合(結合)テストをパスしたアプリを対象として実施するテストレベルであり、スマートフォンアプリでは以下の位置付けで行われるテストに当たります。 ビルドされたipa/apkファイルをシミュレーターもしくは実機にインストールしてUIを操作する サーバーと通信するアプリの場合、ステージングもしくはプロダクション環境に接続する 組織のQA担当者(独立したテストチーム)が実施する システム(アプリ)の基設計に基づき、その要件を満たしていることを実証する テストレベルの概念や、より一般的なシステムテストの位置付け、またそれを自動

    システムテスト自動化の基礎知識とMonkeyTalkの使い方
    luccafort
    luccafort 2014/07/17
    あとで読もう。
  • あなたの知らないAndroid SDKの便利tools、14選まとめ

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

    あなたの知らないAndroid SDKの便利tools、14選まとめ
  • 知らないと働けないPHPの基本文法/構文と注意点

    オープンソースのWeb開発向けスクリプト言語「PHP」の文法を一から学ぶための入門連載「Web業界で働くためのPHP入門」。前回の「初心者がPHPプログラミングを始めるための基礎知識とXAMPPのインストール」では、PHPの概要や特徴を紹介し、環境構築や「Hello World!」までの手順などを解説しました。 今回からは環境がセットアップできている前提で進めますので、まだの方は前回を参照して準備をしておきましょう。 PHPタグでPHPのコードを埋め込む PHPでは、テキストファイルにコードを書けば、それをそのまま実行できます。このような言語は、他にPythonRubyPerlJavaScriptなどがあります。ただ、PHPの場合はテキストファイルに一定の形式で書くことが必要です。 それは、コードは「<?php」と「?>」というPHPタグの間に書かなくてはならない、ということです。例

    知らないと働けないPHPの基本文法/構文と注意点
    luccafort
    luccafort 2014/03/14
    本当にプログラムとか触ったことありません、パソコンはネットサーフィン専用です!っていうくらいの初心者というか未経験者ならいいのかもしれない?でも基本というならせめて配列まではいって欲しかった感ある。
  • ブラックなWeb開発現場の救世主、Gruntのインストールと使い方

    連載目次 一昔前であれば、HTMLJavaScriptCSSを使用してWebアプリを作成する場合、(筆者の経験では)所定の位置にファイルを置くだけでした。最近はHTMLJavaScriptCSS関連の技術も複雑化/多様化し、いろいろなことを考慮しなければなりません。 例えばJavaScriptファイルの場合は、以下の作業を行うこともあるでしょう。 minify(圧縮)や結合 単体テストの実行 JSLint(構文チェック)の実行 さらに、CoffeeScriptやTypeScriptを使用している場合にはコンパイル(JavaScript変換)を行う必要もあります。 また、SCSS(Sass)やLESSなどのCSS拡張メタ言語を使用している場合にも、コンパイル(CSS変換)作業が必要です。 ファイルを修正してビルドするたびに、これらの作業をいちいち手作業で行っていては非常に面倒でしょう

    ブラックなWeb開発現場の救世主、Gruntのインストールと使い方
  • 重要! まずは「オリジン」を理解しよう

    連載目次 皆さんこんにちは。ネットエージェントのはせがわようすけです。今回から、HTML5やJavaScriptに関連したセキュリティの話題について連載することになりました。よろしくお願いします。 もう読みましたか? HTML5のWebアプリセキュリティに関する報告書 皆さんすでにご存じかと思いますが、2013年10月30日にJPCERTコーディネーションセンター(以下、JPCERT/CC)から「HTML5 を利用したWebアプリケーションのセキュリティ問題に関する調査報告書」が公開されました。 この報告書の調査の一部は、弊社が行いました。また、JavaScriptセキュリティ上の問題について次々と鋭い指摘を行っているmalaさんにもさまざまな技術的アドバイスを頂いた上、日常的にWebアプリケーションのセキュリティ検査や構築を実際の業務として行っておられる専門家の方々にも査読をお願いして

    重要! まずは「オリジン」を理解しよう
  • OWASP Japan、Webアプリの一般的なセキュリティ要件をまとめた文書公開

    OWASP Japan、Webアプリの一般的なセキュリティ要件をまとめた文書公開:開発者にも、そして発注者にも安全なWebアプリの要件定義を OWASP Japanは2013年11月1日、Webシステム/Webアプリの開発において一般的に盛り込むべきと考えられるセキュリティ要件をまとめた「Webシステム/Webアプリケーションセキュリティ要件書」を公開した。 OWASP Japanは2013年11月1日、「Webシステム/Webアプリケーションセキュリティ要件書」を公開した。安全なWebアプリケーションを実現するため、開発を依頼する発注者側と、実際に開発を担う受注者側の双方が留意すべき要件についてまとめている。 The Open Web Application Security Project(OWASP)は、Webアプリケーションのセキュリティ改善に向けた啓発、研究活動を行う非営利団体だ

    OWASP Japan、Webアプリの一般的なセキュリティ要件をまとめた文書公開
  • さっくり理解する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の言語仕様と「いい感じ」の使い方
    luccafort
    luccafort 2013/08/21
    最初のジェネレータの説明が若干わかりにくくないか?と思ったがそのあとの説明できちんと説明してるから問題なかったでござる。
  • 「Vagrant」って何ぞ?(・o・)

    「Vagrant」って何ぞ?(・o・):Vagrant開発者 Mitchell Hashimoto氏に聞いた 仮想の開発環境作成ツールとして人気が高まっている「Vagrant(ベイグラント)」。その開発者であるMitchell Hashimoto(ミッチェル ハシモト)氏が来日するとの情報を聞き、2013年7月12日、VOYAGE GROUPで行われたミートアップに駆け付けた。 「Vagrant」とは Vagrantとは、違う環境に移行可能な開発環境を簡単に構築・管理し、配布することができる開発環境作成ツール。「ほんの数行書くだけで開発用の仮想マシンを構築できる」という優れものだ。 Vagrantのビジョンは、「開発者とシステム管理者にとって最高の『開発フロー』を提供すること」。Vagrantをダウンロードして「vagrant up」と入力し、実行するだけでそれが可能となる。 システム管理

    「Vagrant」って何ぞ?(・o・)
    luccafort
    luccafort 2013/07/23
    ヴェイグラントって読むのか、ヴァグラントって呼んでたでおじゃる。
  • インフラストラクチャ自動化フレームワーク「Chef」の基本

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

    インフラストラクチャ自動化フレームワーク「Chef」の基本
    luccafort
    luccafort 2013/07/04
    非常にわかりやすかった。Chefすごいな、今までドキュメント作ってーとかやってたのがアホらしいレベル。
  • 5分で分かるフラットデザイン

    iOS 7やWindows 8も採用した「フラットデザイン」。実際にフラットデザインを実現するにはどうすればいいのだろうか。 1分-フラットデザインとは何なのか アップルの開発者向け年次イベント「Worldwide Developers Conference(WWDC)」が米国時間6月10日に開幕し、基調講演で同社モバイルOSの次期版「iOS 7」が発表された。見た目の印象が従来版からガラリと変わっている。これは「フラットデザイン」という手法を採用したからだ。 フラットデザインとは、簡単にいうと、グラデーションを利用しない非常にのっぺりとしたデザインのことだ。

    5分で分かるフラットデザイン
    luccafort
    luccafort 2013/06/13
    フラットデザインが駄目とか単純にはやってるというよりはフラットUIに求められるバランスの良さとデザインセンスが非常に高次元で求められるということが抵抗あるんじゃねえの?つい最近も林檎さんがアレなデザイン
  • 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でここまで変わる
  • 「演算子のインジェクション」と「SSJI」

    「演算子のインジェクション」と「SSJI」:NoSQLを使うなら知っておきたいセキュリティの話(1)(1/2 ページ) ここ数年、大量データ処理時の高速性やデータ構造の柔軟性などから、「NoSQL」が注目を集めています。それと同時に、NoSQLを使うアプリケーションに対する攻撃手法も研究されるようになりました。この記事では、NoSQLを使ったアプリケーションの脆弱性と対策について解説します。 注目集める「NoSQL」 ここ数年、NoSQLと呼ばれる種類のデータベースが注目を集めています。NoSQLSQL言語を使用しないデータベースの総称で、大量データ処理時の高速性やデータ構造の柔軟性などのメリットがあるため、従来のリレーショナルデータベース(RDB)を補完・代替するものとして、大規模なWebアプリケーションなどにおいてNoSQLを採用する事例が増えています。 このような新しい技術が普及し

    「演算子のインジェクション」と「SSJI」