これは pepabo Advent Calendar 2016 - Qiita の14日目の記事です。 昨日は id:Fendo181 さんの 日報サービス「DuPo」を作った話でした! それは、今からちょうど半年前のこと。 海の香りと共に暑い夏がやってくる ... 甘酸っぱい青春が再び来るのではないかと予感させる ... そんな季節でした。 開発チーム内で行っていたスプリントレトロスペクティブの時間に、チームメンバーから「そろそろコードレビューをやってみよう!」と提案があり、それから本格的にコードレビューをやり始めることになりました。 早いもので、あれから半年が過ぎました。 今宵は年の瀬ということもあり、ふりかえりを目的として半年間コードレビューを積み重ねたことで僕の中で起きた考えの変化や感じたことについて 10 個書き出してみることにしました。 教育関連に興味がある方や組織の成長を考え
私が以前Haskellで作成した(割と自己満足な)kazura-queueという比較的高速なキューのライブラリがあります。 このライブラリを作るときに考えたアレコレを書いてみたいと思います。 前提 ここでいうキューって何? データ構造としてのキュー(Sequenceみたいな)や分散処理用のキュー?(RabbitMQみたいな)ではなく、並行処理のためにスレッド間の部品として使うようなキュー(Chan(やTQueueやTChan)みたいな)を意図しています。 ここではChanが持っているキューとしての性質をざっと書き出してみましょう。 キューに入るデータの型は任意 Chan aという型で表現できる範囲で好きなデータを入れることができる。 FIFO キューなのだから当たり前といえば当たり前かもしれませんが一応。 スレッドセーフ 複数のスレッドが同時に書き込もうとしても問題が起きない。1 複数のス
今年のZabbix Advent Calendarもあと少し。 20日目はZabbixの機能を拡張するためにGolangを使ってみようというお話です。 実は個人的に今年はGo言語を使って何かツールとか作ってみようと目標を立て、1月から少しずつ勉強して触ってました。 一応、簡単ではありますが、こんな感じのものを公開中です。 zaws (ZabbixによるAWS監視ツール) Zabbix Anomaly Detector plugin(Zabbix監視結果を用いた変化点スコア監視ツール) Golang JobScheduler API library(OSSのジョブ管理ツールJobSchedulerのAPIライブラリ) コードは公開していないですが、他にもElasticsearchと連携するGolang製のツール作ったり、GoでLINE Botと連携するツール作ったりちょこちょこ作れた気がしま
Erlangのノード間通信を理解するために,Erlangの分散プロトコルを実装してErlangノードと通信してみました.(Erlang Advent Calendar用のネタを思いつかなかったので大分前に職場で話した内容です...) やりたかったこと: Erlang Distribution Protocolについての理解を深める Rubyから gen_server:call/2 や rpc:call/4 してみる Erlang + Ruby + Sinatraで何か作る Erlangのノード間通信に必要なもの Erlangノードに接続してメッセージを送受信するためには以下のものが必要です. EPMD (Erlang Port Mapper Daemon) : DNS的なやつ Erlang Distribution Protocol : ハンドシェイクとメッセージ送受信のプロトコル Ext
はじめに リクルートライフスタイル Advent Calendar 2016の2日目の記事ではELB経由のfluentd Aggregatorを安定化するためにやった3つの対策について書きました。 前記事で書いたようにAggregatorクラスタの数が増えて手動で行っていたデプロイが大変になってきました。また開発メンバーが増えたときに、デプロイ方法を共有してミスなく行えるようにするのも大変です。 そこでfluentd Aggregatorのローリングアップデートを自動化したくなり、CloudWatchEvents + Lambda + SQSで仕組みを作りました。 fluentdのデプロイ時に気をつけること fluentdはローカル上にバッファを持っているため、それを出力し終える前にインスタンスを落としてしまうと、ログのロストが発生します。 それを防ぐためにはバッファがなくなるまで待って、
Lisp Advent Calendar 2016参加記事 ここ数年ディープラーニングの出現をきっかけにAIが再び盛り上がっているので、いよいよLispの復権があるかと思いきや、ないので(泣)、多少なりともLispに興味を持ってもらえるように、LispとAIの関係について私見を述べておこうと思う。Lispといっても色々あるが、この記事では主にCommon Lispの話になる。 Lispというとどうしても過去の記号処理的AIと結びつけられてしまい、機械学習を駆使するような現代のAIでは役に立たないように思われがちなのだが、これは大体誤解である。少なくともCommon Lispは現代的なAI開発に適した特徴を備えている。まず、AI実装のためのプログラミング言語に必要とされる特徴は何なのかを明らかにするために、AIの歴史から考えてみたい。 AIの歴史 初期の記号処理的AI(以降は記号AIと呼ぶ)
こんにちわ、メルカリアッテでFront-end Developerをしている@t32kです。 メルカリではセミナー参加補助制度があり、それを利用して海外カンファレンスに参加してきました。今回は11/30 ~ 12/01、オーストラリア・メルボルンで開催されたCSS/JSConf Australia 2016に行ってきたので、そのレポートを書きたいと思います。 今回はその中でも、CSSConfでのBarak Chamo氏が講演した内容が非常に興味深かったので紹介します。 Hey presto, CSS! 今日はお話する内容は魔法についてです。どのように自分が定義したCSSをブラウザ上で利用可能にするのかという魔法です。 その前に、魔法ではないこれまでのCSSについて振り返ってみましょう。日本には『珍道具』と呼ばれるものがあります。とても素晴らしい技術ですが、ちょっとオーバーエンジニアリングに
Robert Chang氏によるYou don't (may not) need Lodash/Underscoreを和訳しました。 意訳が含まれるため、誤りやより良い表現などがあればご指摘頂けると助かります。 原文:https://github.com/cht8687/You-Dont-Need-Lodash-Underscore LodashとUnderscoreは必要ない(かも) LodashとUnderscoreは素晴らしいモダンなJavaScriptユーティリティライブラリであり、フロントエンド開発者に広く使われています。しかしながら、モダンブラウザがターゲットとなる場合、ES5やES6のおかげでネイティブにサポートされたメソッドが多くあることに気づくでしょう。プロジェクトの依存関係を減らし、ターゲットブラウザが明確になっているのであれば、LodashとUnderscoreは必要
はじめに こんにちは、CTOの今村です。 先日弊社のiQONが3年連続でGoogle Play「2016年ベストアプリ」に選ばれました。また、今回ベストイノベーティブ部門の大賞を受賞しました。 イノベーティブ部門ということなので、Androidアプリの品質だけでなく、アプリの中にある様々な機能の技術的な取り組みも評価してもらった背景があるのかなと個人的には感じています。 さて、ちょうど先日Minami Aoyama Night #1にて、弊社のデータまわりのアーキテクチャについてお話させていただく機会がありました。 今回は2016年12月時点での、機械学習とデータ分析を支えるAWSとGCPを利用したマルチクラウドアーキテクチャについて紹介したいと思います。 最近のデータまわりの取り組み 今年になってからVASILYは過去のテックブログでも紹介したように、データまわりの取り組みを一層強化して
この記事は 「脆弱性"&'<<>\ Advent Calendar 2016」16日目の記事です。具体的な脆弱性の話でなくてすみません。いろいろコードを書いていると、安全に脆弱性を発生させたくなるときがあります。って書くとさっぱり意味がわからないと思いますが、セキュリティの講義のための演習環境とかそういうやつです。 受講生自身の手でWebアプリケーションの脆弱性を探してもらうような演習では、検査対象となる脆弱性を含むWebアプリケーションを用意する必要があります。こういった「脆弱なWebアプリケーション」は例えば Broken Web Applications Project のようなものを代表にいくつかのものがありますが、これらはUIが英語であったり、あまりにもメジャーすぎて受講生も触っている可能性があったりと、場合によっては利用が難しいことがあります。特に、単一のWebサーバに対して複
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く