タグ

2016年12月17日のブックマーク (32件)

  • Testable Swift、あるいは僕らがテストを書かない理由 - Qiita

    この記事は、「Speee Advent Calendar 2016」の6日目です。 iosアプリエンジニアはテスト1を書かない? TDDやテストコードを書く重要性が叫ばれて久しいですが 日々業務でiosアプリ2のコードを書いていると中々テストを書く機会がありません。 また、社外のエンジニアの方とお話させて頂いても、あまり積極的にテストを書くプロジェクトは少ないように感じます。 この記事ではiosアプリでテストを書かない(書きづらい)理由と、それを突破してテストを書くにはどうすればいいかを考えてみます。 UIのテスト XcodeにはUIテストツールが含まれています。 コードベースで動作を指定して画面操作をシミュレートすることが可能ですが あまり有効に活用できている現場は無いように感じます。 おそらく問題点は2つあって 一つ目はシミュレータの動作の遅延などによって再現性の低いバグを引き起こすこ

    Testable Swift、あるいは僕らがテストを書かない理由 - Qiita
  • DeepLearning研究 2016年のまとめ - Qiita

    DeepLearning Advent Calendar 2016の17日目の記事です。 はじめに はじめまして。 Liaroという会社でエンジニアをしている@eve_ykと申します。 今年もあと僅かとなりました。 ここらで、今年のDeepLearningの主要な成果を振り返ってみましょう。 この記事は、2016年に発表されたDeepLearning関係の研究を広く浅くまとめたものです。今年のDeepLearningの研究の進歩を俯瞰するのに役立てば幸いです。 それぞれの内容について、その要点や感想なんかを簡単にまとめられたらと思います。 特に重要だと思った研究には★マークをつけておきます。 非常に長くなってしまったため、興味のある分野だけ読んでいただければと思います。 言い訳とお願い 見つけたものはコードへのリンクも示すので、プログラミングに関係ある記事ということで… 分野的にかなり偏っ

    DeepLearning研究 2016年のまとめ - Qiita
  • pybind11を使ってPythonからC++コードを実行する方法 - MyEnigma

    新・明解C言語 入門編 (明解シリーズ)posted with カエレバ柴田 望洋 SBクリエイティブ 2014-08-09 Amazonで探す楽天市場で探すYahooショッピングで探す 目次 目次 はじめに pybind11とは? シンプルなサンプルコードの実行方法 1. pybind11をDL 2. c++のコードを書く 3. pybind11のバインドc++コードを書く。 4. C++コードをコンパイルする。 Macの場合 ubuntuの場合 5. pythonコードで読み込ませる デフォルト引数 C++コードの変数をpython側で利用する C++クラスのバインディング 継承 関数のオーバーロード Enum STLのコンテナのやり取り pybind11がサポートしているコンパイラ サンプルコード より詳しいPythonとCコードの連携方法を学びたい人は 参考資料 MyEnigma

    pybind11を使ってPythonからC++コードを実行する方法 - MyEnigma
  • BPF を使って HTTP/2 フレームをダンプする - Qiita

    最近は BPF に興味があって色々調べたりしています。先日、その流れで BPF Compiler Collection (BCC) を眺めていたら、sslsnif というツールが含まれているのに気が付きました。これは OpenSSL や GnuTLS の関数呼び出しをキャプチャして、TLS 通信の内容をダンプして表示するものです。 この sslsnif の仕組みを応用すれば、プログラムに一切の変更を加えることなく、様々なサーバーやクライアントで HTTP/2 フレームをダンプできるのではと考えました。そこで今回は BPF を使って HTTP/2 フレームをダンプできるかを検証します。 セットアップ 今回は Ubuntu 16.04 上に BCC をインストールし、Python を使って HTTP/2 フレームをダンプするツールを実装します。Pythonフロントエンドに選択したのは、高品

    BPF を使って HTTP/2 フレームをダンプする - Qiita
  • iOSでライブラリに頼らず、URLSessionを使ってHTTP通信する - Qiita

    これは Swift Advent Calendar 2016 16日目の投稿です。 昨日15日目は@_ha1fさんのPhotos.frameworkのサンプルを読むでした。 TL;DR Multipart頻発したり、大きなデータのダウンロードがメインのアプリではなく、単純なGet, Postのみなら、URLSessionで問題ない 背景 今までiOSでの通信処理といえば、当たり前にAFNetworkingかAlamofire (その他のライブラリも触ったことはありますが) を使っており、お恥ずかしながら、標準APIでの処理を書いたことがありませんでした。「Swift 通信」で検索すると1番目にAlamofireを使った記事がヒットすることからも、自分のような人は意外と多いのではないでしょうか? また、mono0926さんのiOS 10が正式リリースされた今、そろそろ既存アプリのiOS 8サ

    iOSでライブラリに頼らず、URLSessionを使ってHTTP通信する - Qiita
  • 常にキャッチアップしよう!iOSヒューマンインターフェイスガイドライン

    この投稿は、 UI Design Advent Calendar 2016の14日目の記事です。 OSのアップデートに伴い新機能が追加されているため、改めて見返すとiOSのヒューマンインターフェイスガイドライン(以下HIG)も一部変更が加えられています。 過去に読んだことはあっても常にキャッチアップしなければ、デバイスに適した設計からずれてしまい、ユーザーの期待する体験を提供できなくなってしまうのではないでしょうか。 今回は、アプリデザインをする際に改めて意識すべきHIGをおさらいしつつ、以前と変わった部分などをピックアップしながらご紹介したいと思います。 iOSのUIデザイン基3原則おさらいの第一歩として、原則を改めて見てみましょう。 他のプラットフォームとの区別にもなり、品質と機能性を高めるためにも必要なUIデザインの基3大原則があります。 実はこの原則、iOS9まではDefere

    常にキャッチアップしよう!iOSヒューマンインターフェイスガイドライン
  • 空間とプラットフォームの狭間で - Unityの座標変換にまつわるお話 -

    はじめに はじめまして、ドリコムでエンジニアをやっているイシカワと申します。 普段はネイティブアプリケーション向けに共通ライブラリの開発を担当していて、最近はUnity開発にも関わっています。 今年からUnityを日常的に使うようになり、これまで敷居が高かった3Dアプリ開発が自分にとってぐっと身近な存在になりました。 エディタを起動すれば、すぐさま開発に集中できる環境を用意できます。ゲーム開発の民主化、万歳。 しかし、カッコイイ視覚表現を追求しようといざグラフィックスまわりのコードを書き始めると、そこにはマルチプラットフォーム対応によって生まれた落とし穴が潜んでいます。 この記事では、3Dプログラミングの基礎である「座標変換」において、Unity開発者がつまずきやすい問題を紹介します。 数ヶ月前の自分をふりかえり「こんなまとめ記事が欲しかった・・・」という視点で書いてみました。 テーマの都

    空間とプラットフォームの狭間で - Unityの座標変換にまつわるお話 -
  • 【Unity開発】uGUIのScrollbarの使い方【ひよこエッセンス】 - Unity(C#)初心者・入門者向けチュートリアル ひよこのたまご

    Unity5.1.1f1 Personal(2015年7月) ひよこエッセンスの時間です〜 今回はuGUIの中でもScrollbarについてまとめていきたいと思います〜 uGUIのScrollbarまとめ ①テキストをスクロールさせてみる Scrollbarといったらまず最初に想像するのがこれだと思います〜 Scrollbarの例 それでは順を追って作っていきましょう〜 まずはHierarchyビューからCreate > UI > Panelを選択します〜 PanelのAchor Presetsをmiddle-centerにし、Widthを300、Heightを100にします〜 PanelのRect Transform設定 こんな感じ 続いてPanelの子オブジェクトとして、Textを作成します〜 TextはAnchor Presetsをstretch-stretchにし、PivotをX:

    【Unity開発】uGUIのScrollbarの使い方【ひよこエッセンス】 - Unity(C#)初心者・入門者向けチュートリアル ひよこのたまご
  • 闇PHP勉強会に参加してきました - uzullaがブログ

    第七回闇PHP勉強会 〜あなたが闇だとおもったらそれは闇です yamiphp.connpass.com に参加してきました! 闇とは 以下転載 闇PHP勉強会について 闇PHP勉強会はPHPの内部構造や拡張モジュールなど、PHPのC言語レイヤの話題が多めの勉強会です。ふつうのPHP勉強会に比べると若干マニアックな集まりだと思います。 この勉強会の名前は「普段は光が当たらない場所に光を当てるPHP勉強会」という意味です。他の闇を期待された方はごめんなさい。 ということです。 ひらたくいえば、PHPといいつつPHPの中身や、CでかかれたPHP拡張などのお話がメインの勉強会です。大変に興味深いお話が多い。 トーク内容について @hnwさん「realpath cacheとOPcacheの面倒すぎる関係」 (20〜30分) d.hatena.ne.jp 最近話題のrealpath_cacheのお話と

    闇PHP勉強会に参加してきました - uzullaがブログ
    s_ryuuki
    s_ryuuki 2016/12/17
  • [Unity]加算と半透明を1パスにするP-MAPブレンド実用例 - Qiita

    この記事は、Unity 2 Advent Calendar 2016 の11日目になります。 10日目の記事は@kaiware007さんのAppendStructuredBuffer/ConsumeStructuredBufferを使ったGPUパーティクルのサンプルです。 CEDEC2015においてP-MAPブレンドによる加算合成のアプローチの講演、およびサンプルプロジェクトが公開されました。 http://cedec.cesa.or.jp/2015/session/ENG/1024.html http://www.slideshare.net/toshiyasumiyabe/cedec2015pmap 今回はそのうちのテクスチャをあらかじめ準備しておく手法を用いた このSpriteRendererのメダルの後光の加算部分での最適化事例をご紹介します。 目的 現在開発中のゲームではこのメダ

    [Unity]加算と半透明を1パスにするP-MAPブレンド実用例 - Qiita
  • C# で高精度で時間経過を測定したい時 - 強火で進め

    StopWatch クラス一択みたいです。 C# 経過時間取得,タイマー: pidoの隠れ家 http://pido.seesaa.net/article/196113384.html より高い精度で時間を計測する: .NET Tips: C#, VB.NET http://dobon.net/vb/dotnet/system/stopwatch.html

    C# で高精度で時間経過を測定したい時 - 強火で進め
    s_ryuuki
    s_ryuuki 2016/12/17
  • SaaSなしでもインフラCIを!GitLab CI + Docker + Ansible + serverspecでインフラCIを試す - Qiita

    SaaSなしでもインフラCIを!GitLab CI + Docker + Ansible + serverspecでインフラCIを試すGitLabDockerserverspecAnsibleGitLab-CI インフラ技術週間も最終日となりました。今週の1週間の記事を振り返ると実はすべてがDocker絡み。 何をやるにしてもDockerを中心としたコンテナベースで考えることが当たり前になってきている感じですね。 ということで最終日もDockerを絡めてGitLabを使ったインフラCIについて紹介します。 この記事を読むと何ができるようになる? 記事全文は長くなるので要点だけ書くと。 この記事ではGitLab(GitHubのようなGitを管理するOSS)を使ってAnsible(構成管理ツール)やserverspec(インフラテストツール)のコードをGit管理。Docker上のコンテナを使っ

    SaaSなしでもインフラCIを!GitLab CI + Docker + Ansible + serverspecでインフラCIを試す - Qiita
  • Swift のビルドを高速化する (30秒→4秒に) - Qiita

    Classi Advent Calendar 2016 17日目です! Swift ファイル数 80 ほどの開発中盤段階のプロジェクトですが、ビルドに時間がかかり開発効率が落ちていたため 2 日ほどかけて高速化を行いました。 ローカルビルドが30秒から4秒ほどになり、 CircleCI のビルド〜テスト完了までの時間を10分から4分になりましたので、 実施内容を書いていきます。 3行でいうと Build Target の設定を見直し CocoaPods から Carthage に移行しソース管理に含める ソースコードを改善 マシンスペック 一世代前の MacBook Pro で、 CPU は増してないです。 MacBook Pro (Retina 13-inch、Early 2015) プロセッサ: 2.7 GHz Intel Core i5 メモリ: 16 GB 1867 MHz DDR

    Swift のビルドを高速化する (30秒→4秒に) - Qiita
  • フロントエンドPodcastはじめました - Hatena Developer Blog

    こんにちは! id:amagitakayosi です。 はてなブログチームで JavaScriptPerl を書いています。 最近はてなでは Frontend Lunch Podcast を配信しています。 iTunes: https://itunes.apple.com/jp/podcast/frontend-lunch/id1174199369 RSS: https://hatena.github.io/frontend-lunch/feed.xml (2017-02-07 15:38 追記) Podcast配信サイトを移転したので、配信URLを変更しました。 この記事では、Podcast を始めた経緯を通じて、はてなフロントエンド会の取り組みを紹介したいと思います。 目次 フロントエンド会の発足 フロントエンドMTG フロントエンドランチ Frontend Lunch Pod

    フロントエンドPodcastはじめました - Hatena Developer Blog
  • AWS利用時に最初にやっておくべき5つのこと(ShanonAdventCalendar2016 - 16日目)

    # この記事は、ShanonAdventCalendar2016 16日目の記事です。 最近はQAの活動ではなく開発の生産性をあげる為の活動に多く取り組んでいます。 今現在は開発チームで使用しているAWSのコスト削減を行っています。 AWSはとても便利ですが、何も考えずに利用しているとちりつもで、いつのまにか結構な課金額になっていて顔が真っ青になることがあります。 世の中には既にAWSを便利に使うためのノウハウがたくさんありますので、ここではAWSを利用する際に最初にやっておくべき5つのことをお伝えできればと思います!

    AWS利用時に最初にやっておくべき5つのこと(ShanonAdventCalendar2016 - 16日目)
  • MySQLのMyRocksストレージエンジンの話を中の人から聞いた - Qiita

    この記事はfreee Engineers Advent Calendar 2016の...っと、もう空きがないじゃないか! というわけで、急遽MySQL Casual Advent Calendar 2016の16日目としてお送りします。 MySQLエキスパートであるところのFacebook 松信嘉範さんによるMyRocks紹介プレゼンを聞く機会に恵まれたので、人の許可を得てその内容を公開します。 経緯 松信さんと自分は以前に同じ会社で働いていた元同僚で、彼のデビュー作「現場で使える MySQL」の元となったDBマガジンの連載時にちょっとお手伝いした縁もあり、その後も交流が続いております。 今回は松信さんがちょいと日に寄るというので事に誘ったのですが、ついでなので私の現職 freee株式会社のオフィス見学に来てもらい、「せっかくだから何かしゃべって」という図々しいお願いをしたところ、

    MySQLのMyRocksストレージエンジンの話を中の人から聞いた - Qiita
  • phpDocumentorでドキュメント自動生成してみた | Wedding Park CREATORS Blog

    こんにちは、エンジニアの榎です。 チーム開発において、ファイル数やクラスが増えてくると、新しいメンバーに説明をする際など、ドキュメントがないと説明が難しくなってくることがあります しかし実際のところ、ドキュメントを作成する工数を確保できず、せっかく作ったドキュメントがあってもどんどん陳腐化している現場も多いのではないでしょうか そのため、今回は phpDocumentor を用いて PHP のコードから自動でドキュメントを生成する方法を紹介したいと思います 作業環境 CentOS 7.2 PHP 7.0.12 Composer 1.2.2 phpDocumentor のインストール まずは新規にディレクトリを作成し、Composer で phpDocumentor をインストールします $ mkdir dev $ cd dev $ composer require --dev phpdo

    phpDocumentorでドキュメント自動生成してみた | Wedding Park CREATORS Blog
  • 「ジェネラリスト」よりも「スペシャリスト」になるべき5つの理由 | Forbes JAPAN 公式サイト(フォーブス ジャパン)

    ジェネラリストか、スペシャリストか。 新たなベンチャーやキャリアを進むときによく浮上するのがこの問題だ。そして、答えはだいたい同じだ。企業であれ個人であれ、スペシャリストになることが利益の最大化につながる––。 多くのスタートアップ企業はスペシャリストとして事業を始める。アップルのスティーブ・ジョブズやスティーブ・ウォズニアック、イーベイのピエール・オミダイヤなどの例を考えてみるといい。こうした起業家の中で、幅広いソリューションや全ての人が無条件に必要とするものを考案した人はいない。 彼らは市場のニーズを認識し、それに基づいて何か特殊性のあるものを考案し、その1つのソリューションを基に事業を築いたのだ。幸運なことに、買い手は特定の具体的な問題を解決してくれるビジネスに傾く傾向がある。 事業をするのなら、スペシャリストになることを考えるべきだ。その主な5つの理由は、以下のとおりだ。 1. ス

    「ジェネラリスト」よりも「スペシャリスト」になるべき5つの理由 | Forbes JAPAN 公式サイト(フォーブス ジャパン)
  • キャリア・アンカー―自分のほんとうの価値を発見しよう: 本: エドガー・H. シャイン,Edgar H. Schein,金井 寿宏

    キャリア・アンカー―自分のほんとうの価値を発見しよう: 本: エドガー・H. シャイン,Edgar H. Schein,金井 寿宏
  • エンジニアがはてなでマネージャーをやるということ - An Epicurean

    このエントリーははてなディレクターアドベントカレンダー2016の15日目の記事です。また、このエントリは先日の はてなエンジニアセミナー #7 でお話したことを、書き起こしたものでもあります。 Mackerel というサーバー監視・管理SaaSの開発チームのディレクターを務めている id:Songmu です。はてなのチーフエンジニアも兼務しています。 これまでの経歴としては、中国ITベンチャーの立ち上げに関わったり、その後語学学校で営業兼システム担当、SIer、Web企業でソーシャルゲームのリードエンジニアなどの経験を経て、2年ほど前にはてなに入社しました。 現在兼務している、ディレクターとチーフエンジニアという職位は、一般の企業では両方共課長格くらいで、W課長みたいな社内では珍しい立ち位置です。 Mackerelのディレクターとしては、プロダクトマネージャーとスクラムマスター的なことを

    エンジニアがはてなでマネージャーをやるということ - An Epicurean
  • Electron アプリをつくる時に便利なパッケージ - はやくプログラムになりたい

    この記事は Electron アドベントカレンダー2016 の13日目の記事です. 記事では,僕が Electron アプリをつくる上で便利だったり,ほしかったのでつくったりしたパッケージを7つほど紹介します. electron-about-window electron-dl electron-in-page-search electron-window-state menubar node-auto-launch electron-mocha electron-about-window electron-about-window は 'このアプリについて' ウィンドウを簡単にクロスプラットフォームにつくるためのパッケージです.下記のように関数を1つインポートして呼び出すだけで「このアプリについて」ウィンドウを生成することができます.(example) import openAbout

    Electron アプリをつくる時に便利なパッケージ - はやくプログラムになりたい
  • Go言語でExcel操作ライブラリを書いてみた - Qiita

    excl ライブラリ なぜそんなもの書いたのか Go言語にはExcel作成用のライブラリ xlsx がすでに存在します。 xlsxライブラリは強力で、普通に使用する場合このライブラリが一番だと思います。 ただ、xlsxライブラリを調査していると今回作成するものの仕様に耐えられない部分がありました。 xlsxライブラリの利点欠点 xlsxライブラリにできること ・Excelファイルの書き込み・読み込み・新規作成 ・セルの書式設定 ・Excelファイルを解凍せずに扱える ・OpenXMLの仕様に基づいた開発 xlsxライブラリの問題 ・既存のExcelファイルを使用するといろいろなものが消える ・チャートが消える ・画像が消える ・図形が消える ・マクロの存在するファイルの場合はマクロも消える ・メモリ使用量が異常に高くなる ・数十メガバイトのデータでも使用メモリがギガを超える exclライブ

    Go言語でExcel操作ライブラリを書いてみた - Qiita
  • 質問は恥ではないし役に立つ - Qiita

    一年半SEとして働いてきた中で、私自身が苦手だと思っており、他人からもそのように評価されていたのが「質問の仕方」でした。 それが先日、他人から「質問の仕方がうまいね」と褒められることがあり、ようやく一人前の質問の仕方ができるようになってきたので、どのようにして克服できたのか紹介したいと思います。 質問の基形 私が入社したばかりの頃は、わからないことがあればすぐに先輩に質問していました。 そのときにしていた質問の内容はだいたいこんな感じです。 「環境構築を手順書通りにやったんですけど、○○のコマンドでエラーがでてしまいます!なんとかなりませんか?」 このような質問を受け取ったら、先輩は暇ならばエラーメッセージを見てくれ、エラーメッセージに書かれていることに対して調査してくれるかもしれませんが、忙しいときにはそんなことはしてもらえません。 こんな質問を繰り返しているうちに先輩からは「技術系メ

    質問は恥ではないし役に立つ - Qiita
  • Visual Studio Code の PHP 言語サポート vscode-php-intellisense | hiromasa.another :o)

    記事の 2017 年版を記載しましたのでご参照ください。 https://another.maple4ever.net/archives/2321/ Visual Studio Code Advent Calendar 2016 の 12日目です! ここのところずっとウォッチしていました、Visual Studio Code(vscode)で利用可能な PHP サポート拡張になります “vscode-php-intellisense” が完成度をあげ、かなり良い感じになっています。 🙂 https://github.com/felixfbecker/vscode-php-intellisense Advanced PHP IntelliSense for Visual Studio Code. In opposite to the included PHP IntelliSense a

    Visual Studio Code の PHP 言語サポート vscode-php-intellisense | hiromasa.another :o)
  • pythonのパフォーマンス調査で使えるライブラリの紹介 - Qiita

    pythonアプリケーションのパフォーマンス改善をする機会があったので、 その時の調査で役に立ったライブラリの使い方を、なるべく簡単に説明したいと思います。 今回紹介するのは、この3つです。 line_profiler・・・実行速度を計測するライブラリ memory_profiler・・・メモリ使用量を計測するライブラリ pdb・・・プログラムのデバッガ 全てIPythonのコンソールで使えるライブラリなので、コンソールで使い方を説明してきたいと思います。 line_profilerの使い方 line_profilerをインストールします。

    pythonのパフォーマンス調査で使えるライブラリの紹介 - Qiita
  • CloudFrontのここがつらい - Qiita

    はじめに みんな大好きCloudFrontですが、格的なCDNが手軽に使える分、けっこう落とし穴があります。そこで、個人的にはまったポイントを書いてみました。 Originに転送できないリクエストヘッダーがある http://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html#forward-custom-headers-blacklist Cache-ControlやContent-Lengthが転送できないのは、CloudFrontがリクエストボディを書き換えるから、Originに転送する意味がないためだろう。If-*関連のヘッダーが転送されないのはちょっと不便、、 Rangeヘッダーを書き換える Rangeヘッダを付けずにCloudFrontへmp4

    CloudFrontのここがつらい - Qiita
  • Swift3時代のErrorとNSErrorに関するいくつかの実験 - Qiita

    はじめに Xcodeのバージョンも 8になり、社内プロジェクトの方も Swift3化を進めているのですが、色々とトラブっています。特に困っているのが Objective-Cと Swiftが混在する環境でのエラーオブジェクト(NSError、Error)の扱いです。 時間がなくてちゃんと体系的にまとめきれていないのですが、自分自身の問題整理と覚書も兼ねて、現状でわかっていることをまとめてみました。 SwiftErrorと、Objective-Cの NSError 少し前提を話します。 まず、Swiftの世界ではエラーは Error という抽象的な型(プロトコル)で扱います。このプロトコルは Swift2までは ErrorTypeという名前でしたが、Swift3で Error に名称が変更されました。より一般的な名前が与えられたということですので、役割が昇格したと言えます。 一方、Objec

    Swift3時代のErrorとNSErrorに関するいくつかの実験 - Qiita
  • AWS Lambdaのソースコードを覗いて動作原理を知る試み - misc.tech.notes

    この記事は、Serverless Advent Calendar 2016の14日目の記事です。 qiita.com 昨日は工藤さん(level69)による、「Serverless Meetup Sapporoで話てきた」でした。 工藤さんは元々北海道出身という縁もあることから、先日のServerless Meetup Sapporoに自腹で遠征してくれました。当にありがとうございます。 serverless.connpass.com 題 さて、題ですが、最近はApache (元IBM) Openwiskを筆頭に、IronFunctionsなど、OSSなFaaS実装が増えてきていますが、ふと「Lambdaはどうなってんだろーなー。あ、ていうかLambdaPythonなら、スクリプト言語だからある程度まではソースコード読めるんでは?」と思い立ったので、じゃあやってみましょうという試み

    AWS Lambdaのソースコードを覗いて動作原理を知る試み - misc.tech.notes
  • GoでAPIサーバーの開発からデプロイまで - Qiita

    はじめに この記事はGo Advent Calendar 2016 の14日目の記事です。 最近Ergodoxを購入したGopherです。 今年の3月からGoを使用してサービスの開発をしています。 Goを使用したのは初めてで、色々と調べながら開発環境の作り方、開発からデプロイまで一通りやってきたので、まとめて書き出したいと思います。 作ったもの REST APIを作りました。フロントエンドはriot.jsを使用したSPAで、そのアプリケーションから呼び出されています。 サーバー構成 環境はAWSです。前段にELBを置き、GoのアプリケーションはEC2上で動作します。EC2はAuto Scalingグループに属し、CodeDeployによりアプリケーションがデプロイされます。Auto ScalingとCodeDeployの連携が絶妙で、スケールアウト時にはCodeDeployが最新のアプリケ

    GoでAPIサーバーの開発からデプロイまで - Qiita
  • 安定なオフィス無線LAN運用のススメ - Qiita

    最近の無線機器はお互いの無線アクセスポイントが連携して、自動的に利用チャンネルを選択する機能がありますが、これを利用すると意図せず重なってしまうことがあるため、明確なチャネル設計が必要になっている現状です。 2.4GHz帯は近隣の利用帯域から外す 2.4GHz帯は、到着範囲が広いため、上下左右の建物の電波も届いてしまいます。 InSSIDerなどのソフトウェアを利用し、他の電波の強さを測る必要があります。 5GHz帯は各種レーダーの影響から外す 5GHz帯は選べるチャネルも多いため、2.4GHz帯と比べ、同一エリアに設置できるアクセスポイント数が多くできます。さらに、最新製品では1.7Gbpsというスピードを出せるという魅力的なチャンネルです。 しかしながら、5GHzを使うにおいて見過ごせない特徴(弊害)があります。 それは、チャンネル数を広げたため、気象レーダーや空港レーダーが利用する周

    安定なオフィス無線LAN運用のススメ - Qiita
  • お手軽Linuxカーネル開発/自動テスト - Qiita

    はじめに これはLinux Advent Calendar 2016 14日目の記事です。 記事では、ワンコマンドでお手軽にlinuxカーネル開発/自動テスト環境を構築する方法を紹介します。その後開発、自動テストの流れについてもチュートリアル形式で紹介します。記事ではelkdat(以下、ツール)というツールを使用します。記事の対象読者はバリバリのカーネル開発者だけでなく、自分のカーネルやカーネルモジュールを一度作ってみたかった人、開発には興味がないけれどカーネルのテスト(たとえばカーネルのバグの原因となったコミットを突き止めたい)には興味のある人も含みます。 記事に記載されているコードを実際に試すためには、仮想化機能を持つCPUを搭載したPCにインストールされたUbuntu16.04が必要です。CPUの仮想化機能を持っているどうかは、shellから以下のプログラムを実行すればわか

    お手軽Linuxカーネル開発/自動テスト - Qiita
  • 安全な脆弱性の作り方 - 葉っぱ日記

    この記事は 「脆弱性"&'<<>\ Advent Calendar 2016」16日目の記事です。具体的な脆弱性の話でなくてすみません。いろいろコードを書いていると、安全に脆弱性を発生させたくなるときがあります。って書くとさっぱり意味がわからないと思いますが、セキュリティの講義のための演習環境とかそういうやつです。 受講生自身の手でWebアプリケーションの脆弱性を探してもらうような演習では、検査対象となる脆弱性を含むWebアプリケーションを用意する必要があります。こういった「脆弱なWebアプリケーション」は例えば Broken Web Applications Project のようなものを代表にいくつかのものがありますが、これらはUI英語であったり、あまりにもメジャーすぎて受講生も触っている可能性があったりと、場合によっては利用が難しいことがあります。特に、単一のWebサーバに対して複

    安全な脆弱性の作り方 - 葉っぱ日記