ブックマーク / trap.jp (23)

  • 1文字でSQLを200倍遅くする方法

    こんにちは、19のSysAd班の翠(sappi_red)です。普段はtraQのフロントエンドの保守を行ったりしています。 こんばんは、19のSysAd班のtemmaです。普段は普段どおりのことをしています。この記事の面白い部分はすべて僕が書いています。面白くないところは翠君が書いています。 この記事では、日々パフォーマンスに頭を悩ませる開発者の方のために、ワンタッチで劇遅SQLを200倍高速でキュートなSQLに劇的ビフォーアフターする方法を紹介します。 「おいおいおい、遅くしたくて記事を読み始めたのに話が違うじゃないか💢」と思ってるそこのあなた👈 早くできるということは遅くもできるんですね。 TL;DR ここにテーブルがあります。 CREATE TABLE messages ( id CHAR(36) NOT NULL PRIMARY KEY, text TEXT COLLATE ut

    1文字でSQLを200倍遅くする方法
    tohu-soy
    tohu-soy 2022/05/19
  • ICTSC予選「ダイエットしようぜ!」で極限ダイエットする (2) 【AdC2020 12日目】

    この記事はtraPアドベントカレンダー2020の 12日目(11/25) の記事です。 19の翠(sappi_red)です。普段はSysAd班で部内サービスを触ってます。 この記事は先週の(1)に引き続き、イメージサイズを減らしていく話をします。 先週の記事では327kBまで減らしました。ここからさらに削っていきます。 32bit vs 64bit 今、既にコンテナ内にあるのはgoのバイナリだけです。つまり、サイズを減らすにはバイナリを削らないといけません。そこでポインタの長さを削るために64bitではなく32bitとしてビルドするようにします。goでは環境変数のGOARCHを指定することで変更することができます。 FROM golang:1.7 AS builder ADD . /work WORKDIR /work RUN GOARCH=386 CGO_ENABLED=0 go bui

    ICTSC予選「ダイエットしようぜ!」で極限ダイエットする (2) 【AdC2020 12日目】
    tohu-soy
    tohu-soy 2020/11/25
  • 今年もQSoC終わりました。

    こんにちは、SysAd班のtemmaです。 今年度は新歓イベントから入部まで全てオンラインで実施されたtraPの新歓ですが、実はその後の講習会などもオンラインで行われています。 今回は、入部後の導入として行った取り組みについて紹介します! traQ Spring of Code 「traQ Spring of Code」略してQSoCは、「Google Summer of Code」をtraPでもやろうというコンセプトで、traQを中心としたtraPの運用するサービスにコントリビュートしてもらうと言う企画です。 実施内容 メインの6/9から6/29までの20日間、そこから延長した7/13までの14日間、合計34日間実施しました。 最終的に、計35名が参加し、15のissueが解決されました🎉 流れとしては単純で、Gitの概要をハンズオン形式で解説した後、好きなissueを選んでメンターか

    今年もQSoC終わりました。
    tohu-soy
    tohu-soy 2020/07/23
  • 爆☆誕 traQ-S【新歓ブログリレー2020 54日目】

    こちらの記事にもありますが、traQの現行バージョン(traQ-R)はUIの拡張性の低さと保守性の低さが問題となっていました。具体的には、もう機能を置けるスペースが存在しなかったり、JavaScriptで書かれたコードベースの変更が難しかったり、などです。 これらに対処するため、UIデザインを刷新し、技術スタックを新たにしてフルスクラッチでクライアントを作り直し、サーバーサイドにも新機能を追加していくプロジェクトがtraQ-Sです。 通知レベルの導入ここからは新機能を見ていきます!まずは新しい概念である「通知レベル」についてです。 traQ-Rまでは、チャンネルに対する通知設定は「ON」か「OFF」の二択でした。しかしチャンネルが増えいろいろな活動がされるにつれ、「このチャンネル気になるけど通知を受け取りたくはない、でも新規メッセージは見たい」といった需要が増えてきました(ここについてはt

    爆☆誕 traQ-S【新歓ブログリレー2020 54日目】
  • 部内製チャットサービス「traQ」UIのこれから 【AdC2019 53日目】

    この記事は東京工業大学デジタル創作同好会traP アドベントカレンダー2019の53日目の記事で、traQのUI記事シリーズの後編です。 traQって何?という人は、前編にあたる『部内製チャットサービス「traQ」UIのこれまで』から読むといいかもしれません。 こんにちは、sigma (twitter:@unipota) と申します。 traPではSysAd班とグラフィック班に所属しています。 SysAd班はサークル内サービスの開発・運用を行っているチームで、自分はtraP独自のコミュニケーションサービス「traQ」のフロントエンド開発に参加しています。 UIやデザインを考えるのが大好きなので見えるところをガンガンよくしていくとテンションが上がる人間です。 traPのサークルロゴやSysAd班のチームロゴを作ったりもしてます。 この記事ではtraQ開発プロジェクトの今後について、実際に採用

    部内製チャットサービス「traQ」UIのこれから 【AdC2019 53日目】
  • 部内製チャットサービス「traQ」UIのこれまで 【AdC2019 35日目】

    この記事は東京工業大学デジタル創作同好会traP アドベントカレンダー2019の35日目の記事で、traQのUI記事シリーズの前編です。 後編はこちら: 部内製チャットサービス「traQ」UIのこれから 【AdC2019 53日目】 こんにちは、@spa (Twitter: @__spaspa__)です。traPではSysAd班・グラフィック班です。 今日は香風智乃ちゃんの誕生日ですね。おめでとうございます! チノちゃんの可愛さについて記事を書きたい所なのですが、スペースの都合で今回は別のものを書きたいと思います。 日12月4日はチマメ隊の一員で、ラビットハウスで働くしっかり者の一人娘、チノのお誕生日です♪今年はレトロなレコードプレイヤー特製ケーキでお祝いします! チノ、お誕生日おめでとう☆ #gochiusa pic.twitter.com/rILTODlHRM — TVアニメ『ご注文

    部内製チャットサービス「traQ」UIのこれまで 【AdC2019 35日目】
    tohu-soy
    tohu-soy 2019/12/05
  • 部内製チャットサービス「traQ」とPaaS基盤「Showcase」の障害対応の話【AdC2019 25日目】

    この記事は東京工業大学デジタル創作同好会traP アドベントカレンダー2019の25日目の記事です。 とーふとふです。 traPのブログで記事を書くのは久しぶりな気がします。 現在私はSysAd班という、WikiやtraQ(部内製チャットサービス)など部内向けのサービスの開発・運用を行っているチームのリーダーをしています。 今回のアドベントカレンダーではSysAd班の活動の中から、個人的に面白いなと思った障害とその原因究明、対応について書きたいと思います。 前提 traQとShowcaseについて 今回の障害で関わる2つのtraP SysAd班製サービスであるtraQとShowcaseについて簡単に説明します。 traQ traPの部内向けチャットサービスです。 300人以上いるメンバーがtimesなどの雑談含め様々なやり取りをすると、大体週に9000メッセージほどが投稿されます。 こうい

    部内製チャットサービス「traQ」とPaaS基盤「Showcase」の障害対応の話【AdC2019 25日目】
    tohu-soy
    tohu-soy 2019/11/26
  • traQのmarkdownのパースをWeb Workerでやるようにした話【AdC2019 3日目】

    この記事はtraPアドベントカレンダー2019の 3日目(11/2) の記事です。 19のSysAd班のsappi_redです。 今回は部内サービスに行った改善について話したいと思います。 遅い、遅い、遅すぎる traQという部内SNS[1]ではメッセージ中でmarkdown記法を利用できます。 また、このサークルの性質上プログラムのソースコードが投稿されることが多くあります。GitHubのwebhookによって投稿されるメッセージもかなり多くあります。これらにはソースコードが含まれていることが多いです。 markdownのパースが重いチャンネルを開くとタブがフリーズして操作を受け付けなくなるということが発生していました。特にシンタックスハイライトがめちゃくそ重かったので、長いコードが投稿されているチャンネルが遅かったです。 off-the-main-thread そこで、この問題を解決す

    tohu-soy
    tohu-soy 2019/11/02
  • あっ!!!PCをつけたら…

    なんて事、あると思います。(ない) こういった時、新しいPCを買ったり、OSを再インストールしたりしますが、 まっさらな状態から、色々なソフトを入れたりする時間って楽しいですよね!! というわけでいつか書きたいと思っていた、「PCを買って最初に入れるソフトウェア」の話です。ちなみにMacは持っていないのでWindows限定です。 自己紹介が遅れましたが、Dekaです。 去年、一昨年のAdCではIllustratorでリアルなモノを描きましたが、非常に誰得感があったので、今回は†実用的な記事†を書いてみました。 ブラウザ まず何をするにも必要ですよね。これについてだけでも記事が生成されそうなものですが、今回は軽く紹介する程度です。 Microsoft Edge Windows10に最初から入っていて、Microsoftが推奨しているブラウザです。 ですが、 こんな扱いを受けてしまう事が多い不

    あっ!!!PCをつけたら…
    tohu-soy
    tohu-soy 2017/11/19
  • あたらしいWebAssemblyのはなし【新歓ブログリレー2017 9日目】

    この記事は新歓ブログリレー2017 9日目の記事です。 はじめに こんにちは。 情報工学系16のDouble_oxygeNです。 traPでは,プログラミングとサウンドの2つで主に活動しています。 4月になり,新入生が増えるとなんだか新鮮な感じがしますが, 今回は,こちらも新しい技術であるWebAssemblyについて紹介しようと思います。 (ちなみにこの記事のタイトルには元ネタがあります。念のため。) 今回紹介するコードのデモはこちらにまとめてあります。 http://wasmdemo.double_oxygen.trap.show/ WebAssemblyとは? WebAssembly(略称: wasm)とは,ブラウザ上で動かせる低級なバイナリのことです。 1995年からWebブラウザで使われるようになったJavaScript。時代を経るにつれて,処理は複雑化・大規模化し,その速度が問

    あたらしいWebAssemblyのはなし【新歓ブログリレー2017 9日目】
    tohu-soy
    tohu-soy 2017/04/12
  • Prologの動作原理と自然言語処理

    Prologの動作原理と自然言語処理 この記事はtraP Advent Calendar 2016の23日目の記事です。当日の朝に書くとかウッソだろお前! Hello, Everybody. Davidです。この記事ではあまり聞きなれないPrologというプログラミング言語について書きます。PrologはいいぞHaskellはもっといいぞ 事前知識 述語論理に関して多少の知見があれば良いという程度です。 Prologはいわゆる論理型言語というプログラミング言語の一種ですが、論理のことが分かっていないと書けないわけではありません。Prologの動作原理に関するところではん?となるかもしれませんが筋では無いのであまり気にしなくて良いでしょう。一応参考となる論理学のを2冊ほど挙げておきます。 https://www.amazon.co.jp/情報科学における論理-情報数学セミナー-小野-寛晰

    Prologの動作原理と自然言語処理
    tohu-soy
    tohu-soy 2016/12/23
  • blenderでキャラ作り

    記事は traP Advent Calendar 2016 の20日目の記事でございます。 1,始めに こんにちは。普段、traP内で3Dモデリングをやらせていただいております nao と申します。 この記事では、わたくしめの普段の活動、3Dモデル作成…特に3Dキャラの作り方について書かせていただきます。 この作り方については、あくまでわたくしめのやりやすいと感じたやり方ですので、ご了承ください。 2,準備 現在多くの3Dモデルの制作ソフトが公開されておりますが、今回はBlenderというとても使いやすい…とわたしが感じた、世間に無料で公開されているフリーソフトを使ってモデルを作ろうと思います。 また、今回作るモデルは同じtraP内の神絵師、KNJさんからいただいたキャラ絵を元にしています。 3,制作 制作手順としては 「下絵の設定」「頭部の作成」「胴体部の作成」「全体の形状の調整」「色

    blenderでキャラ作り
    tohu-soy
    tohu-soy 2016/12/20
  • マリオメーカーで学ぶステージ作り考察

    アドベントカレンダー5日目ですね!dermasと申します。 ゲーム制作の工程の一つであるマップデザインについて考えていきたいと思います。 マリオメーカー単体で「こんなコースを作るといいよ!」という記事はネット上に114514件ほどありますが、 私はマリオメーカーのステージ作りから学んだ「2Dアクションゲーム」に通ずるようなポイントを挙げていこうと思います。 何せ既出の記事の数が多いので被りも多いと思いますが、ご容赦ください。 この記事の目指すコースづくりの目的は「プレイヤーが面白いと思える」コースづくりです。 「制作者側が面白いと思う事」と「プレイヤーが面白いと思う事」は結構ズレてたりするので気を付けましょう。 あと、ここで考察するのはいわゆる「鬼畜ゲーム」と呼ばれる、やられる事自体に楽しみを求めるゲームでないということにもお気を付けください。 大まかに テーマを明確にして活かしたい仕組み

    マリオメーカーで学ぶステージ作り考察
    tohu-soy
    tohu-soy 2016/12/19
  • Illustratorでリアルな🍣を描いてみる

    tohu-soy
    tohu-soy 2016/12/07
  • Clojure, Elixir でプロセス間通信 〜TCP通信でBF & UDS通信でなんでも掲示板〜

    Clojure,Elixirは,ともに2000年以降に登場した比較的新しい言語です。 たまたま私はClojureを勉強し,それに続いてElixirも勉強し始めましたが,この2つは上表に示すように似通った特徴が散見されます。 もし新たにこれら2つの言語を勉強しようと思うのであれば,学びながら比較してみると理解も早いのではないかと思います(※個人の感想です)。 その際,表に挙げたビルドツールを使うとストレスも少なく開発が進められますので,是非使ってみてください。 Clojure/Elixirはいいぞ。 TCP通信でBF これから2つの制作物を紹介しますが,どちらもClojureやElixirを用いてプロセス間通信(IPC)をしてみたという点で共通しています。 このような言語を紹介する時は大抵,immutable(不変)なデータ構造や特徴的な並行処理技法をよく引き合いに出されます。 その実践例と

    Clojure, Elixir でプロセス間通信 〜TCP通信でBF & UDS通信でなんでも掲示板〜
    tohu-soy
    tohu-soy 2016/12/07
  • Amazon Prime Musicおすすめ5選 & minimalなプログラミング言語「miniscript」の紹介

    tohu-soy
    tohu-soy 2016/12/05
  • 神ゲーの作り方

    今日はチノちゃんの誕生日!!!!!!!!!!!! (※編とは何の関係もありません) どうも、traPの音ゲーやってない担当及び女の子担当の飯島ゆんです。この記事はtraP AdventCalendar2016の4日目の記事です。今回のカレンダーでは技術系のお話が多くなると思いますので、ここではちょっと趣向を変えて、神がかったゲームを生み出すための思考法について書いていきたいと思います。 ## 1.神ゲーの作り方 早速ですが、神ゲーを作るにはどうすればいいのでしょうか?それはとてもかんたんなことです。神がかったゲーム案と潤沢な資金を用意して、神絵師や神音屋、神モデラーに神プログラマー等々を集めて、圧倒的クオリティのゲームを作った後に評判が伸びるように天に祈るだけです。ねっ、簡単でしょう? はい、つまり、絶対に成功する神ゲーの作り方などありません。これで終わります。 嘘です。ここからが題で

    神ゲーの作り方
    tohu-soy
    tohu-soy 2016/12/04
  • クイボの投げ方倒し方

    tohu-soy
    tohu-soy 2016/12/03
  • Steam Controllerでお絵描き

    tohu-soy
    tohu-soy 2016/12/02
  • 機械学習初心者がBash on UbuntuでTensorflowのcifar10を改造して自分用の画像分類機を作るまで

    この記事はtraP Advent Calendar2016 1日目の記事です みなさん、こんばんはとーふとふ(@to_hutohu)です。 ついに始まりましたね!traP Advent Calendar2016 一年前に、受験生として去年のアドベントカレンダーを見ていた自分が、今こうして書く側になっていると思うとなんだか感慨深いですね。 今年は、部員も増えて一人一記事ずつ書いても一日2記事ずつの更新になります。 ぜひ楽しんでくださいね!!! この記事でわかること Windows10でTensorflowを始める方法 サンプルプログラムCifar10を動かしてみる方法 Cifar10を改造して自分用の画像分類機を作る方法 この記事を書いた人 とーふとふ 大学一年生で機械学習は11月に入ってから初めて触りました。 プログラミング自体も格的に始めたのは大学に入ってからです。 この記事の目標 T

    機械学習初心者がBash on UbuntuでTensorflowのcifar10を改造して自分用の画像分類機を作るまで
    tohu-soy
    tohu-soy 2016/12/01
    機械学習について結構頑張って書いた