タグ

ブックマーク / www.klab.com (12)

  • Rust+Webフロントの最前線!tauriを試してみた

    @Pctg_x8です。 Deno 1.0の登場でRustとWeb関連技術の繋がりがより高まっていく中で、Electronライクな新しいアプリケーションフレームワークである「tauri」を見つけましたのでちょっと触ってみようと思います。 tauriについて 公式サイト: https://tauri.studio/ ※この記事ではv0.9.2をベースに解説しています。 tauriはまだメジャーバージョンが1になっていないため、頻繁にAPIの変更が起こる可能性があります。 概要 フロントはElectronと同じくWebViewですが、ベースの起動プログラム(Main Process)をRustで書くことができるものです。 ElectronではMain ProcessもJavaScript(Node.js)なので、例えば大量のデータを並行してバッと読むとか解析するとかの処理をさせようとすると マル

    Rust+Webフロントの最前線!tauriを試してみた
  • AWS Athenaを使ってみよう

    KLab Advent Calendar 10日目の記事です。KLab分析基盤チームの高田です。 分析基盤チームでは、社内向けに各種KPIを提供している他、KG SDKのKPIレポートシステムを通じて、パートナー向けにシステムを提供しています。 今回は、先日re:Invent 2016で発表されたばかりのAWSの新サービスAthenaを試してみました。KLabの分析基盤システムでは、すでにRedshiftやEMRを使用していますが、Athenaには、これらを補うような役割(低コストで導入し、アドホックな分析や定型的なレポートの作成をサポートするといった用途)を期待しています。 Athenaとは? ひとことで言えば、Athenaとは、S3上に置いてあるデータを高速にSQLで集計・分析できるサービスです。内部はPrestoをベースとしつつ、独自の改修をくわえて使用しているようです。Athena

    AWS Athenaを使ってみよう
  • シンボリックリンク切り換えデプロイを行った際に起きるOPcacheの問題はnginx+php-fpm環境でのみ起きるのか?

    2016/11/30 シンボリックリンク切り換えデプロイを行った際に起きるOPcacheの問題はnginx+php-fpm環境でのみ起きるのか? PHP サーバーサイド はじめに こんにちは、@tsukimiyaです。シンボリックリンク切り換えによるホットデプロイ、したいですか?シンボリックリンク切り換えによるデプロイはアトミックなデプロイを低コストで実現する手段です。最近はDeployerやCapistranoなどシンボリックリンク切り換えによるデプロイ作業を簡単に行うためのツールも充実し、自分で頑張ってシェルスクリプトを書かずとも低コストでシンボリックリンク切り換えデプロイを行う事が可能です。 ただ、PHPでのシンボリックリンクの切り換えによるデプロイについてネット上を見ていると「nginx+php-fpm環境でOPcacheを有効にしているとシンボリックリンクを切り換えてもキャッシュ

    シンボリックリンク切り換えデプロイを行った際に起きるOPcacheの問題はnginx+php-fpm環境でのみ起きるのか?
  • PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳)

    2016/10/31 PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳) PHP サーバーサイド この文書は@julienPauliさんによる記事「realpath_cache」の日語翻訳です。元々は@gilbiteさんがKLab社内向けに翻訳したものでしたが、日語では見たことがない指摘を含んでおり今でも有用だと考えたため、@julienPauliさんの了解を取った上で@hnwが修正・追記して公開するものです。 はじめに PHP に realpath_cache_get(), realpath_cache_size() という関数があることをご存じでしょうか? また、php.ini に realpath_cache から始まる設定項目があることは? realpath cache は知っておきたい極めて重要な概念です。 特に、コードの

    PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳)
  • 新卒研修でGo研修を担当しました

    @tenntennです。 今年度の新卒研修でGo研修を担当しました。 スライドで100ページを超えるボリュームの資料を14時間かけて、じっくり網羅的に講義を行いました。 内容は今まで私が外部で発表したスライドをまとめて補足を足していった形になってます。 資料はSlide Shareに公開してあるので、ぜひチェックしてみてください。 また、資料中に扱っているソースコードもGithubで公開していますので、そちらも参考にしてください。 資料 ソースコード 研修をやってみて 新卒の反応は、普段触れない言語に触れて新鮮だったという反応やゴールーチンとチャネルが難しいなどさまざまでした。 スパルタ気味で進め方が少し早かったせいか、ついていくのが大変だったみたいです。 それでも、自主的にpingコマンドを作ってくる強者もいたり、いい刺激になったんじゃないかと思います。 裏話 実は最初はGoで簡易ゲーム

    新卒研修でGo研修を担当しました
  • ダレずに開発を走り切る為の習慣

    重要なのは、この「煩わしさ」は、「そのタスクを完了した際に、どれだけ体力と意欲を使い果たすか」 の指標であることです。 「技術的には難しくないから、経験の浅い人にまとめてやってもらおう」と、そうした「だるいタスク」を集中させてしまうと、あっという間に人員が疲弊して 最悪離職します 恥ずかしながらこういう経験があります。 「だるさ見積り」した => 予測工数の -5%〜+5% の前倒しor遅延 で済んだ 「だるさ見積り」しなかった => +20%〜40% も遅延した。 終わった後の生産性の低さも当にもう酷かった。 ごめんなさい。。。。 やろう!『だるさ』見積り!当に大事だよ! [見積もり編] 3. OKR を意識したバックログ 具体的には Github の issue サマリを記載していく事柄で実践します Objectives : この PullRequest で何ができてほしいのか サ

    ダレずに開発を走り切る為の習慣
  • 同時に実行するということ

    このエントリーは、KLab Advent Calendar 2015 の12/13の記事です。 KLabGames事業部のyasui-sです。よろしくお願いします。 目次 はじめに 一番の基形 サーバがコマンドを受け取ったことを返した後、実行する 方向性:実行時刻を送る サーバがコマンドの受け取り時刻を加えて返した後、実行する コマンドを実行したクライアント上では即時実行し、サーバがコマンドの受け取り時刻を加えて他のクライアントへ返した後、実行する コマンドを実行したクライアントでコマンドとクライアント基準の実行時刻を送り、サーバがコマンドを他のクライアントへ返した後実行する まとめ はじめに 最近、サーバとクライアントが常時接続状態で多数の端末を同期させるゲームが増えてきています。 その中で一番の核であり、キモである同時という部分についての考え方を書こうと思います。 蛇足ですが、今回の

    同時に実行するということ
  • Autotools三兄弟の末っ子Libtoolとは何者なのか

    このエントリーはKLab Advent Calendar 2015の9日目の記事です。 唐突なタイトルですが、稿ではLibtoolについて一般人目線での紹介をします。Libtoolは裏方のソフトウェアで、明示的に使ったことがある人はほとんどいないと思います。私自身、今まであまり意識していませんでしたが、改めて調べてみると実は身近な存在だということがわかりました。 AutoconfとAutomake 私が勝手にAutotools三兄弟と呼んでいるのはAutoconf、Automake、Libtoolの3つです。このうちAutoconfとAutomakeは知名度が高いソフトウェアだと言えるのではないでしょうか。これら2つは configure スクリプトと Makefile の生成を手伝ってくれるソフトウェアで、OSSプロジェクトで広く利用されています。 自作ソフトウェアでAutoconfと

    Autotools三兄弟の末っ子Libtoolとは何者なのか
  • 型推論のしくみ

    このエントリーは、KLab Advent Calendar 2015 の15日めの記事です。 こんにちは、めっきり Jenkins の介護士となった @kakkun61 です。 趣味では Haskell を書いているのですが、そこでお世話になっている「型推論」のしくみを少し知ることができたのでみなさんに紹介したいと思います。 初めにお断わりしておくと、これから紹介する内容は『型システム入門』に全て書かれてあることです。KLab では『型システム入門』輪講をしているのですが、一緒に勉強している同僚と社外から先生として来ていただいている方にこの場を借りて感謝の意を表します。ひとりだとここまで読めなかったと思います。 『型システム入門』 型推論の解説に入る前に少し『型システム入門』について書こうと思います。 『型システム入門』は原著名 “Types and Programming Languag

    型推論のしくみ
  • カーネル空間までコード追っていこう@Linux

    こんにちは。@kokukumaです。 これは、KLab Advent Calendar6日目の記事です。6番手も緊張しますね(棒読み)。 今日はLinuxでプログラムの挙動を追って行く時に、便利なコマンド達を紹介したいと思います。 コードを追っていく流れに合わせて、6つのパートに分けて紹介していきます。 ユーザ 計測する(ユーザ) コードを読む(ユーザ) 挙動を把握する(ユーザ) カーネル 計測する(カーネル) コードを読む(カーネル) 挙動を把握する(カーネル) 環境はdebian前提で話しています、あしからず。 ユーザ空間で計測する コードを追おうと思う人の目的は、「そのコードを速くしたい」がほとんどでしょう。 そんなとき、いきなりコード読んでも心が折れるだけなので、この辺のツールを使ってどこが遅いのか調べます。 time 誰でも知ってるtimeコマンド。とりあえず時間測って比較すると

    カーネル空間までコード追っていこう@Linux
  • git commitで使われるメールアドレスをスマートに切り替える方法

    読者の皆さまが普段使っているバージョン管理システムは何でしょうか?多くの会社さんと同様、KLabでは大多数のプロジェクトでGitを利用しています。 Gitでは全てのcommitについて名前とメールアドレスが記録されます。ところで、Git管理しているリポジトリ上で会社のメールアドレスと個人のメールアドレスが混ざることがありませんか? KLab社内では大半のプロジェクトGitHub Enterpriseを利用している一方、一部プロジェクトや公開用のリポジトリについてはgithub.comも併用しており、それぞれで登録メールアドレスが異なっていたりするため、間違いが起こりやすい状況になっています。 稿では、そんなときでもリポジトリごとに適切なメールアドレスでcommitできるような~/.gitconfigの書き方を紹介します。 具体的な手順 今回紹介する手順は、リポジトリをgit clone

    git commitで使われるメールアドレスをスマートに切り替える方法
  • KLab

    ご指定のページが見つかりませんでした URLの変更、もしくはページが削除された可能性があります。 お手数ですが、以下のリンクから目的のページをお探しください。

    KLab
  • 1