Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

Akatsuki Hackers Labは株式会社アカツキが運営しています。

2015-01-01から1年間の記事一覧

急いで覚えるElixir: Enumerable編

ElixirのEnumerable 前回の記事から続いて、今回はElixirで利用する基本的な制御構文について学んでいきます。 Keyword list 多くの関数型プログラム言語では、2要素のtupleによって関連付けられたデータ構造を表現します。 Elixirでは、最初の要素がAtomで…

急いで覚えるElixir: 制御構文編

Elixirの基本制御構文 前回の記事から続いて、今回はElixirで利用する基本的な制御構文について学んでいきます。 if, unless/else 他のプログラミング言語で親しまれているif~elseは、Elixirでは以下のように記述します。

Electronで社内ツール作ってみた

はじめに アカツキにて内定者インターンをしているsachaosです。 この記事ではプロジェクトに配属され、少しの間アシスタントディレクター業を行っていた僕が、 エンジニアの端くれなりに社内ツールを作って業務プロセスの無駄な部分を自動化した話をします。

resize2fsコマンドの先でカーネルは何をしているのか

背景 前回の記事で、resize2fsコマンドがどのように1秒未満での容量拡張を実現しているかを知るために、resize2fsコマンドのソースを調査しました。その結果、メタデータの一つであるGlobal Descriptor Tables(GDT)をカーネル内で更新しているからではないか…

急いで学ぶElixir#3: 演算子編

Basic Operators 前回、Elixirは四則演算があることと、整数の商や余剰を得るためにdivやremがあることを学びました。今回はElixirの基本的な演算子を、Rubyと少し比較しながら学んでいきましょう。 Elixirでは、++や--を配列に対しても使うことが出来ます。

新規事業で Elixir, Phoenix, React を使う

エンジニアリング・アドバイザーの noto です。先月末から新規事業チームのエンジニアリングについてもお手伝いすることになりました。 アカツキでは今年 (2015 年) の夏より、従来のゲーム事業の枠を超えて、教育、ヘルスケア、「働く」などの領域を対象と…

急いで学ぶElixir#02

Elixirの基本型 以下の基本型があります。 - integer : 1, 0x1F - float : 1.0 - boolean : true, false - atom (symbol) : :atom - string : "Elixir" - list : [1, 2, 3] - tuple : {1, 2, 3}

急いで学ぶElixir#01

Motivation クラスメソッドさんがDevelopers.IOにとても良い記事を投稿されていたので、Elixir版も書きたくなりました。

勉強会でスピーカーが押さえるべき5つの極意について考えてみた

はじめに はじめまして。アカツキ2015年度入社の新卒1期生エンジニア、tomoです。私は技術力の底上げと経験のために、社内で毎週OpenGL ES勉強会を開催しています。この記事では、3ヶ月間勉強会を開いてみて感じた、勉強会のスピーカーが大切にしたい5つの極…

次世代の組織のあり方「ホラクラシー」

Delivering Happinessを会社の目的として掲げるZapposが、新しい組織構造としてホラクラシーを採用して以来、IT界隈でこの考え方が急速に注目を集めるようになりました。 ただ、日本語の情報がとても少なく、ホラクラシーについての誤解が飛び交うことが多い…

UnityとOculusを始めて3週間で街を走り回るゲームを作った話

はじめに アカツキは5周年を迎え、先日パーティーが開かれました。その時に展示物として披露したUnityとOculus Rift DK2を使ったゲームを作った話をしようと思います。 今回作ったものは隕石を避けながらコインを取って行ってゴールを目指す、レースゲームで…

アカツキのエンジニアの活動の紹介

はじめに アカツキにて内定者インターンをしているsachaosです。 今年の6月から内定者インターンとして働き始めてからまだ2ヶ月弱のアカツキ初心者ですが、この記事では、アカツキの中に入って初めて知ったアカツキのエンジニアの活動の一部を紹介させて頂き…

スマホゲーム開発最前線を支える技術

2015/05/19(火)に、レバレジーズさんが主催しているヒカラボで、以下3つの発表をしてきました。 RoRとAWSで100,000Req/Minを処理する RoRとAWSで100,000Req/Minを処理する from aktsk

LITALICO社と合同エンジニア勉強会を開催した話

合同勉強会を開催 6月25日(木)に、株式会社LITALICOさんと合同エンジニア勉強会を、アカツキのオフィスで開催しました!アカツキのエンジニアと合わせて約20名がこの勉強会に参加し、LT対抗戦+ビアバッシュを楽しみました。想定以上に話したがり屋さんが多か…

CloudWatch Logs + fluentdでモダンなアプリ監視をさくっと作ってみた話

背景 アカツキが提供しているサービスはリリース前に必ずテストを行っています。テストでバグが見つかったときにこれを切り分けるため、発生時のログを探すことがあります。「クライアントアプリで明らかに表示がおかしい」とか、そういったバグなら問題ない…

FactoryGirlのログからテストコストを計測してみた

背景 アカツキではサーバーサイドフレームワークとしてRuby on Railsを採用しており、またそのテスト環境としてRspec/FactoryGirlを使用しています。RoR環境下のテスト体制としてはデファクトスタンダードになっているこの組み合わせですが、主にFactoryGirl…

差分を管理してデータ更新を高速化する、seed_fu:expressのご紹介

背景 ゲームサーバーで扱うデータはとにかく多いです。 特にイベントなどをほぼ毎日運用する場合はサービス開始から1年でレコード数が無視できない量になり、それに伴って更新に要する時間が激増してしまいます。 以前執筆した9分43秒のデプロイを19秒にした…

Akatsuki ENGINEER INTERVIEW

アカツキエンジニア陣のインタビューを媒体別にまとめましたので、ぜひご覧ください。 (掲載順位は、新着順になります)

MySQLのINSERTを高速化するChange bufferingをソースコードから理解する

背景 アカツキで提供しているサービスでは、ほぼ全てにおいてAWSのRDS(MySQL5.6, InnoDB)を使用しております。 ソーシャルゲームでは多くのWriteがかかりますが、そのコストが気になったので調べてみました。