FINAL FANTASY Record Keeper用に作ったツールのGolang実装についていろいろ。
FINAL FANTASY Record Keeper用に作ったツールのGolang実装についていろいろ。
はじめまして!DF Plus開発チーム エンジニアの いのうえ と申します。 少し前にはなるのですが、表題のテーマで社内勉強会にて発表をしたので、その資料をこちらでも公開したいと思います。 弊社での主な開発言語はRubyで、またプラットフォームも CentOS の専用サーバだったり、AWS EC2だったり、なのですが、私が前職で Google App Engine(以下 appengine)メインの仕事をしていたことと、その appengine で使える言語であり、最近異様な盛り上がりを見せてきている言語である、ということで、 『Go言語』 と 『appengine』 のふたつをいっきに、私の勉強会のテーマとして取り上げさせて頂きました。(弊社では採用技術ではないものを社内勉強会のテーマとして取り上げたりすることもよくあります^^) と、いう理由は言わば建前で...。 好きなんです!僕は!
仕事柄、GoogleのIaaSであるGoogle Compute Engine (GCE)を使ったり、またはガッツリ使っている人の話を聞いたりすることが多いので、これまで感じたり耳にしたりしたGCEの良い所・そうでもない所をまとめておく。 まずは、あんまりイケてない点。 ここがイケてない! データセンターが東京ではなさそう Googleは今年4月にアジア地域にGoogle Cloud Platform (GCP)のデータセンターを開設しており、ここが日本からは最寄りのDCということになる。実際、ゾーンとして「asia-east1-a」等を指定して作成したインスタンスを作成し、pingを打ってみると、おおよそ40msくらいの距離にあることが分かる。東京ではなさそうだ。なので、この遅延がユーザー・エクスペリエンスに影響するようなシビアなリアルタイム性の要求される用途には向いていない。 GCEの
はじめに Twitterを見ているとなぜかいつもすぐ埋まるhbstudyに空きがでているとのこと。 ということで急遽申込をして行ってきました。 2時間、 Google Computing Platform(GCP)どっぷりでした。 GoogleのKazunori Sato さんがとても面白くわかりやすく説明してくれました。この話を聞いた後に、実はこの方がブログに書いている内容がほぼ講演内容だったということがわかりましたので、こちらより引用しつつ話を進めます。 注意点としては、クラスメソッドに入社してからAWS原理主義者になりつつある私のバイアスがかかっているかもしれません。 ちなみにgmailヘビーユーザーではありますが、GCPにはログインしたこともないので、そりゃ違うだろというところもあるかもしれません。随時訂正しますので御指摘ください。あ、あと$500のスタートアップクーポンをくれる親
What is Glide? Glide makes it incredibly easy to develop apps that harness the power of Google App Engine for Java using expressiveness of Groovy and sweetness of Gaelyk's syntactic sugar. At it's core, Glide is a Gradle plugin that reduces all the boilerplate required with typical Java web applications
こんにちは。開発担当の渡部です。 普段の業務では Web のフロントエンド・サーバーサイドをやりつつ、オフの時は Oculus Rift を触っており Developers Summit 2014 などのイベント等にも多数参加していますが、 本日はジワジワと伸びているプログラミング言語についてのお話です。 つい先月、このブログでも取り上げた Objective-C 後継として開発中の Apple Swift や、 JavaScript を置き換えるものとして作られている Google の Dart や Microsoft の TypeScript などのように、既存の言語に限界を感じて新しい言語を作るというケースは非常に多いです。 今回はその中から、ハードウェアレベルからアプリケーションまで扱えるシステムプログラミング言語として不動の地位を築いているC言語の後継という大きな目標を掲げて開発
RUNNING IN STYLE Optimize your form to run faster and cooler. Athletes‘ performance improvement starts here. Improving performance for endurance athletes starts with improving their form A fastest way to improving your performance is improving your form. Improving your form helps you run more efficiently. If you can run efficiently, you can run with less energy. Then, if you can run with less ener
ビジョンラダー:ブランドパーパスとプロフィットを両立し、理想を現実に変えるためのフレームワークブランドパーパスブランディングビジョンラダー ビジョンは組織の共有する目標であり、人々を束ね、活気づけるものです。ビジネスの理想の形の定義であると同時に、持続的な成長の原動力にもなり得ます。この貴重な資源を最大限に... 続きを読む 逆境のいまこそ見直したい、ブランドの「設計図」とは?:ブランドホロタイプ・モデルの基本ブランドホロタイプ・モデルブランディング この異常な状況の下で、多くの人が通常どおりの広告に多少ながらの違和感を感じていると思う。パンデミックによって私たちの環境は劇的に変化し、広告の大半がその文脈から外れてし... 続きを読む パーセプションフロー・モデルとは?10年以上の経験に基づくナレッジパーセプションフロー・モデル マーケティングは複雑なチームプレーを要する企業活動であり、個
横並びは複雑化の第一歩 Webサイトの設計をする際、必ずといっていいほど縦にコンテンツを並べて構成を考えるようにしています。どのような人が、何を求めて Web サイトに訪れているのかというシナリオを基に構成を考えていくわけです。詳細なレイアウトを考えるのではなく、情報の流れが適切であるかどうかを判断するための工程にしています。 パソコン向けの Web サイトデザインの悪い癖のひとつに、「同じくらい重要だったら、横に並べる」というのがあります。広いスペースがあったパソコンが主流の時代ならではのアプローチですが、今は状況が大きく異なります。配信者側にとっての『重要』を出すことは間違っていません。しかし、あれこれ重要だからという理由で隣り合わせにしてしまうと、様々なデメリットが生まれます。 訪問者に迷いが生じる 直接関係のないコンテンツが横に並ぶことで視点の動きが多くなる可能性があります。また、
MySQL 5.6 の検証中に MySQL 5.5 とは違うタイプのレプリケーション遅延を見つけたので紹介します。 MySQL のレプリケーションのおさらい MySQL のレプリケーションは次のような仕組みで動作しています。 マスターの更新トランザクションが binlog を書く スレーブの I/O スレッドがマスターに接続し、 binlog を取得し、 relaylog を書く. マスター側はスレーブからの接続を受け付けると(dump スレッド)、指定された場所から最新までの binlog を転送する binlog が追記されるのを待ってさらにスレーブに送る スレーブのSQLスレッドが relaylog を再生する MySQL 5.5 でよくあったレプリケーション遅延 マスターは並列してトランザクションを処理して、最終的にコミットした順で反映されれば問題ないようになっています。 一方、ス
We are pleased to announce today the initial release of Transit. Transit is a format and set of libraries for conveying values between applications written in different programming languages. The key objectives of Transit are to support: Sending values between applications written in different programming languages without requiring schemas/contexti.e., to be self-describing at the bottom with ext
MySQL5.5をまだまだ絶賛利用中な私です。 サービスを運用しているとINDEX追加やカラム追加を行いたい要望が多々発生します。 それも無停止で。 MySQL5.6からは無停止でINDEX追加やカラム追加ができるオンラインDDLが実装されました。 カラム追加はまだ色々制約があるみたいですが…。 http://dev.mysql.com/doc/refman/5.6/en/innodb-create-index-overview.html pt-online-schema-change MySQL5.5でも似たようなことをやりたいので、 有名な「Percona-Toolkit」に同梱されているpt-online-schema-changeを利用しています。 http://www.percona.com/software/percona-toolkit 通常はロックが掛かってしまうALTER
Since Swift is very strict about types, it can be a hassle working with JSON because it’s naturally implicit about types. SwiftyJSON is an open source library that helps you use JSON in Swift without tearing your hair out. Before getting started, let’s take a closer look at just how painful handling JSON in Swift can be. The Problem with JSON in Swift Take the Twitter API for example. Retrieving a
// An example class in a framework target. public class ListItem: NSObject { public var text: String public var isComplete: Bool // Readable throughout the module, but only writeable from // within this file. private(set) var UUID: NSUUID public init(text: String, completed: Bool, UUID: NSUUID) { self.text = text self.isComplete = completed self.UUID = UUID } func refreshIdentity() { self.UUID = N
AppleがWWDC2014にてSwiftを発表してから2ヶ月近くが経ちました。OS X/iOSのアプリ開発に存在するObjective-Cの壁は取り払われ、より多くの人に馴染みやすい言語として現れたSwiftはコミュニティへの新たな開発者の流入を促し既存の開発者にもより安全でモダンなスタイルでの開発を可能にした点でとても歓迎されています。 既に沢山の入門文献や言語の特徴的な振る舞いを解説した文章が日本語で世に出回っていることは承知の上でありますが、最近のbeta 3で変更になった部分やこの2ヶ月で溜まってきたナレッジをもとにあらためて言語からアプリ開発まで一貫した解説記事を残したいと思いました。 本記事の構成はまず速習Swiftで文法の基礎的なところを話し、その後Todoアプリの作成を通じてクラスや構造体、UIKitを用いたアプリ制作の具体的な話をしていきます。読者は他言語を多少触ったこ
MacBook Air sails through work and play — and the M3 chip brings even greater capabilities to the world’s most popular laptop. With up to 18 hours of battery life,1 you can take the superportable MacBook Air anywhere and blaze through whatever you’re into. And it’s built for Apple Intelligence, coming in beta this fall.2 New MacBook Air with M3 ** MacBook Air with M2 ** Lean. Mean. M3 machine. Mac
Goを一目見た時、糞だと思った。何もクールでなく、挑戦もしておらず、学ぶ価値のない言語だと思った。 この点でRustは違ったし魅力的に見えた。 今も、Goから学ぶことは何一つないと思ってるし、実際そうだと思うが、チュートリアルを終えてGoは私の中で、今一番この言語で仕事をしたい言語となった。Goを書きたい。あらゆるところでGoは糞だと吐き捨てていたので不愉快に思ってたGo関係者のみなさまにこの場で謝罪して手のひら返しをしたい。 Goは、CとPythonが基本的に分かっているならば簡単に理解出来る言語だ。Cの知識も要らないかも知れない。メモリをいじることもないし、ポインタという概念もあってないようなものだ。つまり、プログラマだったら誰でも書ける。それでいて、これらのむちゃくちゃ使われてる言語に対する不満を、絶妙なバランスで黙らせることが出来る。Goは、OSSの世界で成功することにもっとも力点
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く