タグ

ブックマーク / kray.jp (9)

  • 【検証】React.FC と React.VFC はべつに使わなくていい説

    こんにちは、クレイの正岡です。 コロナ禍が始まってから小学生時代以来のゲーム生活を送っています。ゲームボーイと呼んでください。 さて、今回は React × Typescript でコードを書いている人/書こうとしている人に向けて、Reactコンポーネントの型定義について頭の片隅に置いておいて欲しい情報を共有したいと思います。 寝ながら使えてしまうReactコンポーネントの3つの型 () => JSX.Element 型 interface Props { text: string } const Hoge = ({ text }: Props) => { return ( <p>{ text }</p> ) } 上記のように返り値の型を特に指定していない場合、 このコンポーネントは JSX.Element型 を返す関数( () => JSX.Element )として返ります。 React

    【検証】React.FC と React.VFC はべつに使わなくていい説
    tuki0918
    tuki0918 2022/04/12
  • DocBaseの同時編集機能を実現しているアルゴリズム – KRAY Inc.

    はじめに 皆さんはGoogleドキュメントやHackMDを使ったことはあるでしょうか。これらのツールは「ネット越しに同時に複数の人で1つのドキュメントを編集できる」という特徴を持っています。お互いの編集がリアルタイムに反映されるので、相手が何を書くのかを意識することなく、簡単にドキュメントを複数人で編集することができます。これを実現するためには、同時編集に参加しているユーザ全員の編集内容がネットワークの延滞に影響されることなく、それぞれの編集内容をうまい具合にマージして反映してくれるような賢いアルゴリズムが必要になります。今回はこのアルゴリズムに関して書きます。 編集内容のマージとは 編集内容をうまい具合にマージしなければいけないケースを考えてみます。 AさんとBさんが次のドキュメントを同時編集するとします。最初は、お互いブラウザ上では次のように見えています。当然、この状態ではお互いに見え

    DocBaseの同時編集機能を実現しているアルゴリズム – KRAY Inc.
    tuki0918
    tuki0918 2017/11/16
  • DockerコンテナをCapistranoでデプロイ

    開発環境と運用環境の差異 Railsアプリの開発をMacでしている人は多いと思います。しかし番では大抵Linuxマシンで運用するため、実行環境の違いから問題が発生することがあります。特にサードパーティ製ライブラリやツールを使う場合、MacLinuxで同じ動作をする保証はどこにもありません。また、開発にLinuxマシンを使っていたとしても、番と全く同じ構成で開発するのは難しいでしょう。 Dockerを使うと開発から運用まで同じ環境を使え、しかもハードウェア仮想化よりも遥かに軽量です。そこで、私が今KRAYで担当しているプロジェクトでは開発から番まで全ての環境でDockerを使えるようにしました。 それぞれの環境で解決すべき課題がありましたが、今日は番環境にデプロイする仕組みを紹介します(KRAYでインテグレーション環境と呼ばれる環境についてはDockerホストプロジェクトや権限で

    DockerコンテナをCapistranoでデプロイ
    tuki0918
    tuki0918 2016/04/02
  • 【PeerJS】HTMLファイルだけでリアルタイムなビデオチャットを作る

    こんにちは。クレイの浅海です。 皆さんはブラウザを使用するビデオチャットサービスを利用しているでしょうか。 弊社では毎朝ビデオチャットを使用して「朝会」というものをプロジェクト毎に行っています。 そのため、ビデオチャットサービスは無くてはならない存在です。 ビデオチャットサービスに関する情報には敏感なのですが、先日、下の記事が目につきました。 【プラグイン不要】 ブラウザだけでビデオチャットができるサービスまとめ http://www.ideaxidea.com/archives/2014/03/video_chat.html これを見て「こんなにたくさんビデオチャットサービスが出ていたのかー」と思うと同時に、エンジニアとしてある一つの仮説が心の中に生まれました。 「あれ、もしかしてビデオチャットサービス作るのって簡単なんじゃね?」と。 作ってみた 結論を先に書きますと、多:多でのビデオチ

    【PeerJS】HTMLファイルだけでリアルタイムなビデオチャットを作る
    tuki0918
    tuki0918 2014/06/22
  • 1時間でツイッターサービスを作ろう!

    はじめに どうもKRAYの芳賀です。 今日はツイッターサービスをスピーディーかつ無料で作るお話です。 僕は日頃趣味でツイッターサービスを作っているのですが、アイデアを着想したその日のうちにプロトタイプを作って動かすことができるくらいにノウハウが溜まってきました。 仕事が終わってからのプライベートな時間だけでも、1週間から1か月もあれば1つサービスがリリースできる感覚がつかめたので、必要最低限の機能を備えたサービスを短時間で作れないだろうか?と時間を計測しつつ実践してみたところ、なんと1時間で完成できたので、その手順を紹介します。 開発の流れ まずは開発の流れを説明します。 ツイッターアカウントの用意 まずツイッターのアカウントが必要になるので、まだ持っていなければ取得しましょう。サービス用に改めて取得してもいいですね。 サーバの用意 作成したウェブアプリを設置するサーバを準備します。PHP

    1時間でツイッターサービスを作ろう!
    tuki0918
    tuki0918 2014/05/26
  • 開発のお手伝いボット Hubot で定期処理を自動化しよう!

    はじめに ダニーです。2年ぶりの登場です。 今回はHubotについて書きます。 Hubotとは 絵はisshie作です。 githubが作ってるbotフレームワークです。 http://hubot.github.com 何ができるのか HipChat, Skype, IRC, その他チャット系のツールでbot用のユーザーを作成して、Hubotがそのユーザーとしてチャットにログインします。 そのユーザーにコマンドを話しかけると、Hubotがそのコマンドに応じた処理をして結果をbot用のユーザーがチャットで発言することで返してくれます。botなので定期的になにか発言したり、呼びかけに対してなにか自動で答えるというようなことができます。 何が嬉しいのか 普段の開発で定期的にやることなどをコマンドとして作成しておくと、そのコマンドをチャットで話しかけることでHubotが自動で処理してくれるようにな

    開発のお手伝いボット Hubot で定期処理を自動化しよう!
    tuki0918
    tuki0918 2014/05/23
  • Rails3でどう書けばいいかわからない時、参考になる7つのURL

    はじめに Rails3.0.0がリリースされて、2ヶ月(2010年10月末現在)。皆さんRails3ライフを満喫していますか? Rails3がはじめてという方、マニュアルやリファレンス探しに苦労されていませんか? Rails3でコードを書いていると、どうかけばいいのかな?ということもしばしばあって、自分なりに参照するサイトなどがまとまってきたので、今日は自分が参照する順番に、URLを晒していきます。少しでも参考になれば幸いです。 もくじ Rails Searchable API Doc Google – Search by date Rails 3 Ropes Course Railscasts – rails-3.0 episodes Ruby on Rails Guides Github – Search: rails3 example O’REILLY – Rails3 in a N

    Rails3でどう書けばいいかわからない時、参考になる7つのURL
  • JavaScriptのみ!Meteorで作る簡単リアルタイムWebアプリ

    こんにちは。 この春に無事大学を卒業したので、KRAYアルバイトから社員に転職しました、浅海です。 最近、JavascriptのリアルタイムWebアプリケーションフレームワークのMeteorで遊びました。 リアルタイムWebアプリケーションを簡単に作ることができますので「最近流行りのリアルタイムWeb、一度やってみたいなー、でも難しそうだなー」と思っている方におすすめです! この記事ではグーグルマップ上で会話できるリアルタイムチャットの作り方を解説します。 完成品はこちら 目次 注意事項 Meteorを始める リアルタイムチャットの作成 Googleマップとの連携 作ったアプリケーションを公開する 宣伝 注意事項 ・この記事を執筆時点のMeteorのバージョンは0.42です。 ・「コマンド一発でインストール!!」とか書きましたが、これは自分が使っているMacでの話です。 windowsのc

    JavaScriptのみ!Meteorで作る簡単リアルタイムWebアプリ
  • JavaScript 3DレンダリングエンジンのThree.jsを試す

    こんにちは。 KRAYアルバイトの浅海です。 今回は、最近ちまたで噂のThree.jsで遊んでみようとおもいます。 http://github.com/mrdoob/three.js webgl対応のブラウザで見ている方は、右上に3Dのボックスが表示されていると思います。 Three.jsを使えば、このようなことを簡単にJavascriptで実現できるのです。 半信半疑で使ってみたところ、たしかにThree.jsでは、3D特有の行列計算や数学的思考をせずとも、3Dを表示、操作することができました。 「ちょっとのプログラムで3Dができる。」 この面白さを皆さんに届けたいです。 目次 立方体を表示する 光をあてる テスクチャを貼り付ける マウスで回転させる マウスで移動させる クリック判定する Three.js web上には、HTML5のcanvasを利用した様々なサンプルページやアプリケーシ

    JavaScript 3DレンダリングエンジンのThree.jsを試す
  • 1