エンジニアtypeは、各種エンジニアをはじめ「創る人たち」のキャリア形成に役立つ情報を発信する『@type』のコンテンツです。
はじめに こんにちは。皆さんはReact使われてますでしょうか? 今回はReactとFluxについて書きます。 MVCの問題点 詳しくはこちらに書いていますが、MVCでアプリを作った場合は、ModelとViewの間で双方向のデーターフローが作られる可能性があるので理解したりデバックするのが難しくなります。 React単体で使った場合の問題点 子のViewでなにかアクションを起こした結果、親のViewにも変更を伝えてなににかをする場合、子のViewに親のViewのコールバック関数を渡す必要があります。 子のViewの下にさらに、子のViewがあって、アクションが起こった時に親のViewに伝えようとするとコールバックが深くなって複雑になってしまいます。 Flux それを解決できる方法としてFluxです。 Fluxを使うとデーターフローが一方向になります。 やってることはObserverパターン
「今月の呼びかけ」一覧を見る 第15-17-342号 掲載日:2015年 11月 4日 独立行政法人情報処理推進機構 技術本部 セキュリティセンター (PDFはこちら) IPAに「友人からの友達リクエストと思しきメールが届いたので承認をしたら、自分の名義で同様の友達リクエストのメールがばらまかれたようだ」という相談が、5月以降寄せられるようになりました。同様の相談は8月以降増えはじめ、10月には52件と前月の5倍近くまで急増しました。(*1)また、JPCERTコーディネーションセンター(JPCERT/CC)によれば、自組織を称したメールが送信されているという被害について情報公開した組織も複数確認されています。(*2) 相談によると、この友達リクエストは海外SNSの招待メールであり、相談者のGoogleアカウントに登録されている連絡先に送られていました。その原因は、相談者が自分に届いた友達リ
最近、普段以上にChromeの開発者ツールを使うことに時間をかける機会がありました。その過程で、自分が今まで気づいていなかった機能をいくつか見つけました(少なくとも今までその機能を探す必要に迫られていなかった、とも言えるのですが。例えばブラックボックス化や非同期のスタックトレースなど)。そのため、開発者ツールでとても気に入っているいくつかの機能についてまとめてみたくなったのです。 小さな虫眼鏡ののアイコンは、特定の要素やCSSプロパティに対して、「どのCSSファイルに書かれているどのセレクタ/クラスが最終的なスタイルを決めているか」を示してくれます。例えば、どれかDOM要素に対して「要素を検証」を選び、右側の「Computed」というタブを選びます。確認したいCSSプロパティを見つけてその虫眼鏡アイコンをクリックすることで、すぐさま右側に正しいCSSファイル内のクラス/セレクタを表示してく
Mitigating DDoS Attacks nginx + ngx_mruby + http-dos-detector https://github.com/matsumoto-r/http-dos-detector Detect Huge Number of HTTP Requests on Apache and nginx using mruby code. http-dos-detector use same Ruby code between Apache(mod_mruby) and nginx(ngx_mruby). It seems, programmable DDoS firewall by mruby on nginx. This solution provides regulating the incoming HTTP/S traffic and controll
ISUCON 5が終わりました。 出題担当のtagomorisさん、kamipoさん、お疲れ様でした。非常に大変だったと思いますが、お手伝いさせてもらって刺激を受けましたし楽しかったし、良い経験になりました。ありがとうございます。 941さん、各言語の担当者の方々、参加者のみなさんも、お疲れ様でした。 来年もお手伝いしたいし、いや自分自身も参加もしたいし、迷うところです。 さて、ISUCON 5 決勝での天気予報APIを実装しましたので、APIの挙動や意図などを記しておきます(全体の講評は ISUCON5 本選問題の公開と講評 をご覧ください)。 zipcode クエリパラメータとして zipcode を渡していましたが、APIはこれを見ていません。ところがアプリ側はzipcodeを渡すようになっています。 アプリ側の実装の意図については把握していませんが、おそらくキャッシュをしにくくする
Pythonの高速化技法について一歩踏み込んだプロユースの解説書。ボトルネックの測定方法から、最適なデータ構造の使い分け、CythonやPyPyなどのコンパイラの比較、numpyなどのパッケージの使い方、マルチコアCPUの活用法、メモリ効率を劇的に改善するトライ構造や近似計算まで、シンプルな実例プログラムを用いながらわかりやすく説明します。高性能なプログラムの書き方だけでなく、高性能なシステムの作り方を総合的に学ぶことができるPythonエキスパート必携の一冊です。 翻訳者の相川氏のブログには、本書の追加情報や関連する技術情報が掲載されています。 訳者まえがき まえがき 1章 高性能なPythonを理解する 1.1 コンピュータシステムの基礎 1.1.1 演算装置 1.1.2 記憶装置 1.1.3 接続レイヤ 1.2 基本要素を統合する 1.2.1 理想計算とPython仮想マシン 1.3
10/24 発売の WEB+DB PRESS vol. 89 で『深層学習』というタイトルで特集記事を執筆させていただきました。 特集の概要 本特集は、機械学習に明るくないWEBエンジニアが深層学習へ入門する際のスタート地点になることを想定して執筆しました。 深層学習へつながる歴史、シンプルな構造のニューラルネットワーク、深層学習の困難さなどを、難しい数学を可能な限り使わずに解説しました。 さらに、実際にコードをいじって試せる題材として、GoogLeNet と waifu2x を採用し、Jupyter notebook 形式でサンプルコードをgithub 上で公開しています。mrkn/webdb_deep_learningをフォークして試してもらえると嬉しいです。 特集の構成 特集は5章構成になっています。 ニューラルネットワーク入門 [実践] ニューラルネットワーク 深層学習入門 [実践
Ansibleではinventoryに対象ホストを定義します。 適用したいインフラ構成が複数ある場合、playbook毎にグループ化してください。 グループ化した場合、変数はそれぞれのgroup varsに定義できます。 詳しくは、前回のエントリーを参照してください。 inventoryの構成方法には幾つかのパターンがあります。 対象とするシステムの規模や特徴にあわせて選択しましょう。 なお、パターンを整理するにあたって、Ansibleのインベントリファイルでステージを切り替えるを参考にしました。 ベーシックパターン 開発環境・検証環境・本番環境といった目的毎に環境を作る必要がなく、ひとつの環境(本番環境)のみの場合は、inventoryファイルもひとつで十分です。 hostsという名前のファイルを作成し、inventoryを定義しましょう。 構成は次のようになります。 . ├── gro
ここ最近、Elixirという言語がWebプログラマー界隈で話題になっています。 ElixirはErlangのVM上で動くRuby風味の関数型言語で、RailsコミッタのJose Valimさんが作ったプログラミング言語です。 この言語はErlangの並行性とRubyの開発生産性を持っています。 今回はこの言語が出てきた背景と文法の特徴について書こうと思います。 Elixirが注目されている理由 ここ数年、Webアプリケーションは以下の問題を抱えています。 C10K問題 10000以上のクライアントがサーバに同時接続すると、HWの性能は足りていてもOS、ソフトウェアの問題で処理が破綻する ムーアの法則の限界 CPUチップメーカーの製造するチップのクロックレートの成長に陰り。代わりにマルチコアアーキテクチャのCPUが開発されている リアルタイムWeb サーバ、クライアントが常時接続するアプリケ
娘が生まれて、今日で1251日目になる。 長いようで短い、短いようで長い。「早いよね」と感傷的になることもあれば「いやいやとんでもない」と苦労の日々に渋い顔をすることもある。 わたしのこの腹(今もまだ中に何か入ってるんじゃないかと思うほど立派なこの腹 )から、娘が「ギャオース」と生まれた日。その日から、育児に必要なさまざまなものを買い、使ってきた。そのほとんどがもう、押し入れの中でホコリをかぶっている。 これから綴るのは、それらのホコリを払ってよみがえった、わたしの記憶の中のむすめとの物語である。 6日目。 長い陣痛に耐え、無事に娘を産み落としたわたしを待っていたのは、24時間体制の娘との密着生活であった。 密着とはほんとうにその言葉のとおり、密着なのである。 赤子は「ベビーベッド」で寝るなどと聞いていたので産前より購入しておいたのだが、これがまあ寝ないのだ。なぜなら娘には “背中スイッチ
シヴィライゼーションがPS Vitaに登場
記事をすべてGithub Pagesに移行しました。 新しいURLはこちら: https://genkami.github.io/2015/11/04/twitter-shshi.html Twitterのふぁぼマークがハートになってしまったので、昔ながらの寿司アイコンに戻す方法を書いておきます。(Google Chromeのみ) 1. Stylebotをインストール StylebotというChromeの拡張機能をインストールします。 https://chrome.google.com/webstore/detail/stylebot/oiaejidbmkiecgbjeifoejpgmdaleoha 上のリンクをクリックし、「CHROMEに追加」ボタンを押します。 「Stylebot」を追加しますか? と聞かれるので、「拡張機能を追加」をクリックします。 インストール自体は数秒で完了すると
新しい特典が続々登場! ここでしか手に入らないオリジナルグッズや人気商品の詰め合わせなど楽しい特典が続々登場! マイルをつかって参加できる抽選型特典 豪華特典が抽選で当たるチャンス!落選してもオリジナル壁紙と交換できる! ためたマイルを社会貢献活動に 1マイル=1円相当、10マイル単位で支援団体のプロジェクトへ寄付できます。お買い物でためたマイルで笑顔を運んでみませんか? すべての特典を確認する ※ご覧いただく際にログインを求められる場合があります。 ログインにお困りの方はこちらをご覧ください。 ※上記掲載の特典は一例です。 ※画像はイメージです。 ※時期によって特典は異なります。 ※各特典は数に限りがあります。 ※抽選特典への参加にはマイルが必要な他、参加条件がございます。詳しくは抽選特典掲載期間中に詳細画面よりご確認ください。
特長 SiteGuard WP Pluginは、WordPressにインストールするだけで、セキュリティを向上させることができるセキュリティプラグインです。 管理ページとログインページの保護を中心とした日本語対応のシンプル・簡単プラグインで、以下の攻撃を防ぐことができます。 不正ログイン 管理ページ(/wp-admin/)への不正アクセス コメントスパム 重要なお知らせ このプラグインは、インストールして有効化すると、自動的にログインページのURLを変更します。 (WordPressのログインページ(wp-login.php)を「login_<5桁の乱数>」に変更します。) 管理画面の「SiteGuard」>「ログインページ変更」をクリックして、新しいログインページを確認してブックマークしてください。 また、新しいログインページのURLを管理者宛のメール(サブジェクト「WordPress:
現状入手できる最高スペックモデルをチェック こんにちはドリキンです。米サンフランシスコでソフトウェアエンジニアをしています。今回、日本に先立ってUSで10月26日(現地時間)に発売されたMicrosoftの最新ノートPC「Surface Book」を手に入れたので、早速レビューしたいと思います。 Surface Bookには、CPUとメモリ容量、SSDの容量、GPUの組み合わせで6つのプリセットモデルが用意されています。今回僕が入手したのは、スペックがCore i7で16Gバイトメモリ、512GバイトSSD、dGPU(外部GPU)という構成のモデルです。 この上に1TバイトSSDのモデルが用意されていますが、このモデルだけ出荷が2016年1月の予定なので、現状入手できる最もハイスペックなモデルとなっています。 価格は税別で2699米ドル。日本での価格がまだ発表されていないので、1ドル=12
埼玉化する日本 (イースト新書) 作者: 中沢明子出版社/メーカー: イースト・プレス発売日: 2014/12/10メディア: 新書この商品を含むブログを見る ちょうど一年ぐらい前に出版されたショッピングモール論、『埼玉化する日本』。 著者の中沢明子さんは東京生まれ・東京育ちの1969年生まれのライターで、出版ディレクターでもあるとのこと。巻末のプロフィールには「得意分野は消費、流行、小売、音楽」と書かれ、文中にも“消費バカ”を自称している箇所があり、消費個人主義には造詣の深い方と思われる。 この『埼玉化する日本』は、おもに首都圏近辺のショッピングモールを、個人消費のコンテキストから捉えている。商品金額の大小だけでなく、センスの良し悪しや「買って良い商品」「買ってはいけない商品」といった視点をまじえながら、これからのショッピングモール(とそこでの個人消費)を展望した書籍、と言えそうだ。 良
The cream of the season's Android crop is here—it's Google's own showstopping phablet, the Nexus 6P. In an historical first, this device comes to us via Chinese manufacturer Huawei—and since we've never had a Huawei offering on the teardown table, we're excited to get cracking! Will the cream rise to the top of the repairability bottle—or will the Nexus 6P give us sour milk face? Let's find out. T
Just last week we tore down the Surface Pro 4, the tablet that can allegedly replace your laptop. Today we've got the Surface Book, a laptop that can, ehrm, replace the tablet that replaced your laptop. It's the first ever notebook from Microsoft, and with its trick detachable display and pressure-sensitive Surface Pen, it defies categorization—but not teardownification. Join us as we dismantle th
「El Capitan」は、6月9日にWWDC2015の基調講演で発表されて、9月30日にリリースされました。 この記事では、「El Capitan」へクリーンインストールする方法について詳しくお伝えします。 「El Capitan」の特徴 Appleのサイトによると、グラフィックのコアテクノロジー「Metal」の採用によって、アップデートするだけでグラフィックスが格段に上がるとあります。これは期待できますよね。 ウェブページのレンタリングは最大40%高速に PDFののレンタリングは最大40%高速に ドローコールパフォーマンスが最大10倍 アプリケーションの起動は最大40%高速に アプリケーションの切り替えは最大2倍高速に 最初のEメールメッセージの表示は最大2倍高速に プレビューでPDFを開く時は最大4倍高速に 上書きインストールの動作は重い 「iMac 27 2011」は、元々Yo
AWS Lambda を開発する際には コードを書く Zip で固めてアップロードする サンプルイベントをインプットに Lambda 関数をテスト実行する CloudWatch Logs でログを確認してデバッグ というフローが発生します。 コード修正のたびにこのフローをたどるのはなかなか手間です。 そこで今回は python-lambda-local を使ってローカル環境で AWS Lambda Python の実行環境をエミュレートし、Lambda 関数を実行する方法について解説します。 以下のようにライブラリーパス(-l)、ハンドラー(-f)、タイムアウト(-t)、プログラム、(test.py)、入力イベント(events.json) を指定すると、Lambda 関数をローカル環境で実行できます。 $ python-lambda-local -l lib/ -f handler -t
ISUCON5出題を担当したtagomorisです。参加者のみなさん、楽しめましたか? 今回の出題も予選に引き続いて@kamipoさんと一緒に行いました。また各言語実装、ならびにAPIサーバ実装を@hydrakecatさん、@najeiraさん、@makingさん、@taroleoさん、そして本選からあらたに@hokacchaさんにもお手伝いいただきました。イベントがなんとか行えたのはこの方々のおかげです。また本選前の時期にISUCONの準備に集中させてくれた所属先のTreasure Dataの同僚にも感謝しています。 今年は例年よりさらにHTTPリクエストが各サーバ間を頻繁に行き来する問題でしたが、NHNテコラスさんに非常によい環境を用意していただきました。分散ベンチマーク環境も比較的快適な状態で使ってもらえたようで良かったと思います。 このエントリでは以下、今回の本選の問題がどのような
ブログ移転のお知らせ 『FiNC Developers Blog』を読んでくださっている皆様へ。いつもご愛読いただきありがとうございます。 この度、ブログを移転することになりました! こちらが、新たな弊社エンジニアブログとなります。 https://medium.com/finc-engineering 今後ともよろしくお願い致します。 FiNC 第1回インターンハッカソン はじめにあけましておめでとうございます。 FiNCでエンジニアインターンをしています安達です。 皆様、年末は何をして過ごされましたか? FiNCでは、FiNC史上初の試みとして第1回インターンハッカソンが開かれました! FiNCのエンジニアインターンは5期に突入し、現在約20人ものエンジニアインターン生が働いています。未経験からエンジニアインターンを始めたにもかかわらず、FiNCのコアサービスを1人で作りあげたインター
(※かなりの反応があったため、重要補足として記事を追加して書いています。そちらも併せてご覧いただければ幸いです。21:10) これがTERACOYA福岡のとあるパネルディスカッションに参加して思ったことです。 サイバー大学?のお偉い様と、コワーキングスペース運営の方とあと一方は忘れましたがその方々がスタートアップの事とかで登壇されていました。 その感想です。 別にその方々が間違ったことは言っていないし、むしろ正論をおっしゃっていることは理解できました。 内容はうまく伝えきれないんで書きませんが私が受け取った印象は、 起業できるやつはこういうやつで、こういうやつらはダメだ。みたいな口調。どんなにいいアイデアをもっていてもそれだけで起業したいといってるやつらはほとんどが行動しない。だから行動して自分でガンガンやるやつが起業して成功するといった感じ。 そしてどこぞの大学のお偉いさんに九大の学生が
女子中学生が自転車で夜道を塾通いするのが心配という方へ 女子中学生が夜遅くまで自転車で塾に通うことは、心配事が尽きません。 夜道を走る際の危険性、事故のリスク、そして犯罪被害に遭う可能性など、多くの問題が存在します。 しかし、塾通いが成績アップにつながるため、親御さんたちはどうしてもこの方法を選ばざるを得ない場合もあるかもしれません。 そこで本記事では、女子中学生が自転車で夜道を通う際の危険性と対策について解説します。 また、通塾なしでも成績アップができる方法をご紹介します。 この記事はこのような方へ向けて書かれています 女子中学生を持つ親御さん 塾に通っている女子中学生 これから塾に通うか考え中の方 自転車通学をしている中学生 青少年の安全に関心のある方 この記事を読むことで得られるメリット 女子中学生が自転車で夜道を通って塾に通うことが減れば、次のような多くのメリットが得られます。 交
こんな記事を読んだ。 本文中に指摘がある通り、ただ板書を丁寧にコピーアンドペーストしたところで、何かの役に立つとは到底思えない。 まあ、コメント欄にあるとおり、『とりあえず手を動かしておく』ことには、多少なりとも効果はあると思うが、最近の学生(私の時代も先駆的な学生が実践していたが・・・)は板書をスマホでぱしゃりとして済ませることが多いようなので、ますますもって残念な状況である。 学生時代から今までずっと、自分で自分のことを、『勉強ができる』と思ったことはほとんどないけれど、『ただ、板書をコピペしても、ダルいし意味ねーよなー』と思いつつ、自分なりにノートの取り方は工夫してきた。 いつか、何かのタイミングでまとめようと思っていたが、良い機会だと思うので、整理してみたい。 おことわり 本稿は、へっぽこITコンサル(見習)が、昔を懐かしんで『こんな風にしとってん』という思い出話をしたいだけであっ
「PHP 7」登場。10年ぶりのメジャーバージョンアップで実行速度はPHP 5の2倍以上に、PHPの生みの親が語る。PHPカンファレンス2015(前編) WordpressやFacebookなど、Webのさまざまなサービスで使われているPHP言語。約10年ぶりのメジャーバージョンアップとなる「PHP 7」がもうすぐ登場予定です。 PHP 7では互換性を維持しつつ、従来のPHP 5と比べて2倍以上の性能向上やメモリ使用量を低減するなど、大きな改善が実現されます。 そのPHPの生みの親であるRasmus Lerdorf氏が来日し、10月3日に都内で行われた「PHPカンファレンス2015」の基調講演「SPEEDING UP THE WEB WITH PHP 7」においてPHP7の新機能や性能について詳しく解説しました。 その内容をダイジェストで紹介しましょう。 SPEEDING UP THE W
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く