サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
CES 2025
blog.spicelife.jp
初めまして、心は永遠に新卒のエンジニア、undoです。 9月末、TMIXがrails5化(5.0系列最新の5.0.5化)されました。 そのときやったことやハマったことなどの覚え書きをしていこうと思います。 Rails5 歴史的経緯により、TMIXは複数のRailsアプリケーションが共通のRDBを参照しに行く構成になっています。 今回自分が行ったのは、そのうちtmix-webと呼ばれるアプリケーションで、ざっくりいえばお客様に直線触れていただくところがメインになります。 これ以外のTMIXに関連するアプリケーションは既にRails5へのアップデートが完了していましたが、一番大きなアプリケーションであり、複雑な箇所や他に依存している箇所が多いことで、Rails5化するまでに時間が掛かりました。 作業を始めたのは2017年8月某日、当時5.0系列で最新だった5.0.5にアップグレードする形にしま
おはようございます。一番よく使うemojiは 👀 (:eyes:) のうなすけです。 さて弊社では、最近社内Railsアプリをひとつ構築しました。それをECSで運用することにしたので、そこに至るまでの経緯、つまづき、これからの課題などなどを記事にしていこうと思います。上の図は現時点での簡単なAWS上での構成図です。 以下、見出しは時系列順でやったことを記録していきます。 社内Railsアプリ、一体どんなもの? ここで新規に構築することになった社内Railsアプリですが、特に凝ったことはしていない単純なRailsアプリです。初めからECSで運用することにしていたので、開発環境も全てDockerで構築しています。Railsのバージョンは5.1.0、Docker imageのFROMにはruby:2.4.1-silmを採用しています。 Docker imageのtagについて developm
こんにちは、CTOの赤松 aka ゆーけーです。 6月23日に開催された、DIST.16 「esa meetup in Tokyo〜情報共有Nightにて「サービス開発を加速させる情報共有」というタイトルで発表させて頂きました。 弊社では色々なesaの使い方をしていて、例えば私のesaの使い方とマーケティングチームやカスタムサポートチームでの使い方が結構違ったりします。 今回、DISTの沖さんから「サービス開発」というテーマを頂いていたので、私が今メインで携わっているSTEERSの開発でのesaの活用事例について話をしました。 DISTのイベントは初参加でしたが、沖さんの進行が上手で最後までスムーズでとてもよかったです。 本編も懇親会もたくさんの参加者がいらっしゃってとても楽しいイベントでした。今回登壇の機会を頂けたことをありがたく思います。 Tシャツを提供させて頂きました STEERSか
おはようございます。cronは「クーロン」と読むうなすけです。 実は2月頭からTMIX開発チームを離れ、インフラチームに所属しています。そして、インフラチームとしての初仕事として、AWS CloudWatch Eventsを用いたバッチ処理実行基盤の構築を行いました。 バッチ処理基盤の要件 Webサービスがある程度の規模に成長すると、一定の期間で定期的に実行するバッチ処理が必要になるでしょう。もちろんTMIXでもバッチ処理は必要で、それはアプリケーションサーバーのひとつにcronjobの実行を任せることで行っていました。 しかし、TMIXを将来Dockerで動かすことを考えると、いつ破棄されるか不明なコンテナでcronを実行させる訳にはいかず、この方法はいずれ使えなくなります。なにかしら別の方法を考える必要があります。 そして、次のような要件を定義しました。 処理自体は ECS Task
おはようございます。Style/TrailingCommaInArgumentsはconsistent_comma派のうなすけです。 さて、ちょっと前からspicelifeでは、TMIXとSTEERSの両方でrubocopを用いたLintのチェックをCIで実行するようになりました。 導入背景 そもそもrubocopによる文法の統一ですが、最近になってようやく導入したわけではありません。 STEERSでは2015年10月にrubocopをCI上で実行するPull Requestがmergeされています。 それ以降、STEERSでは継続してLintチェック、rubocop.yml更新が行われてきました。 さて一方のTMIXは、もともとが古いプロジェクトであること、関わってきた人数の数などもあり、コードの統一性は全くありませんし、そしてそのようなコードが大量に存在している状態です。 だからこそr
お久しぶりです。TMIXが主な活動拠点のうなすけです。 エンジニアの皆さんは、先輩の作業を見ていて「えっ、何だ今のコマンド?!」となった経験はありますか?また、ペアプログラミングなどをしていて、ちょっと相手のPCを借りて操作するときに「自分の環境と違いすぎて操作ができない……」となった経験はありませんか?僕はあります。 そんな千差万別と言える開発環境ですが、自分に対して最適化していくものとはいえ、他人の環境も気になってしまうものです。そこで、弊社開発部の開発環境を調査してみました。 五十嵐 担当 CTO 使用PC Macbook Pro 15inch JIS配列 ターミナル iTerm2とzsh エディタ Emacs よく使うalias pbc pbcopy reload source ~/.zshrc ghb hub brouse ec emacsclient -n pwdc pwd |
TMIXエンジニアのうなすけです。ここ半年間、TMIXで作ったオリジナルTシャツやパーカーを着ていない日はないのではないかという生活をしています。先日も、とあるイベントのスタッフパーカー(TMIX製)の下に自分のTwitterアイコンを配置したTシャツ(TMIX製)を着て参加しました。 Rails 4.2.5 さて、すっかりTMIXのRailsアップデート担当と化している僕ですが、やっぱりTMIXのRails 4.2.5アップデートも僕が行いました。 Rails 4.2.5のリリースは2015年11月12日です。だいたいその辺りから作業を始めました。途中で合宿を挟んだりして出すタイミングを見失っていましたが、年内にアップデートできて嬉しい気持ちです。 アップグレード手順 今までのアップグレードはsynvertに頼っていました。 blog.spicelife.jp blog.spicelif
こんにちは。spice life代表のヨシカワです。 オリジナルTシャツTMIX (ティーミックス)は11月5日にブランドイメージを一新しました。 今回はそのことについて書こうと思います。 TMIXは2009年1月19日に、 商品はTシャツ1種類 カラーは5色 前側のみプリント可能 というとても小さな形でローンチしました。 2015年11月のいまでは、 商品は45種類に 商品×カラーバリエーションとなると400種以上 前側だけでなく後ろ側もプリント可能 スマホからもデザイン可能 ショールームオープン と大きく変わっています。 このように7年弱にわたって運営していますが、サイトデザインの変更などは定期的にやっていたものの、大きくブランドイメージを変えずにここまでやってきています。もっと言えば、始めてからこれまで、TMIXのブランドイメージそのものについてあまり考えずに続けてきたのです。 なぜ
tmixエンジニアのid:ksssです。 今年の夏も暑いですね。 僕は最近tmixで作ったドライTシャツを着て、朝のランニングで体力づくりに取り組んでいます。 http://tmix.jp/designs/2052395 このTシャツには、プログラマー界での有名な言葉をもじって「ぐだぐだ言ってないで、走れ!」という意味を込めていて、なまけがちな自分をとっとと走りに行かせようと意識をたかめています。 今回はここに表示されている画像の裏側についてお話したいと思います。 動的画像変換 このTシャツ画像はリクエストを受けたときに指定のサイズの画像を生成して返しています。 動的画像変換を使うと、管理するファイルの削減や、事前処理の単純化、デザインへの柔軟対応などのメリットがあり、tmixでも様々なページで使われています。 動的画像変換には様々な実装がありますが、tmixではあまりがんばらない動的画像
いつもtmixをご利用いただき、ありがとうございます。tmixのRailsアップグレードを担当しているうなすけです。 4月にRailsのバージョンを4.0に上げた記事を書きましたが、その時点でRails 4.2がリリースされていたのはご存知かと思います。 時代に乗り遅れたくない!ということで、またまた僕がtmixのRails 4.1対応をすることにしました。 アップグレード作業 gemのバージョンを上げる まずはrails 4.1をインストールしないことには始まりません。 gem 'rails', '4.1.11' さて、この頃、世間ではbundlerのversion 1.10による新機能、BUNDLED WITHについて話題になっていました。ちょうどいいやという気持ちになり、おもむろに $ gem update bundler $ bundler -v Bundler version 1
こんにちは、id:ukstudioです。今回は弊社サービスの1つであるSPOTLIGHTSにVue.jsを採用した話をしようと思います。 SPOTLIGHTS自体は一般的なRailsアプリケーションといって問題ない作りになっているので、既存のRailsアプリケーションにどういった形でVue.jsを投入していったかを中心に書いていきます。 Vue.js採用前の状況 SPOTLIGHTS初期のJavaScriptはHTML/CSSと共に外注し納品してもらったものです。 フレームワークといった類はほぼ使っておらずjQueryに頼りきったコードでした。 当時は様々な事情によりこれはこれで妥当な判断だったと思うですが、今後社内でメンテナンスしていくうえで足かせになるであろうというのはなんとなく予想ができていました。jQueryのイベントハンドラやDOM操作がひとつのファイルにひたすら連なっているとい
はじめまして。今年度、新卒で入社したエンジニアのうなすけ(id:yu_suke1994)です。RubyもRailsも触り始めたばかりなのですが、なんと入社早々にRailsのバージョンを上げるという大役を任されたので、それについて書いていこうと思います。 tmixの経緯 tmixの歴史について、社内esaをさかのぼって調べてみました。するとわかったことが、ローンチは2009年で、つまり今年で6年が経過することになります(僕が高専に入学する前からあるのか……!)。このブログの過去の記事にもありますが、deployが自動化されたのは去年2014年と、息の長いサービスだけに、現状とそぐわなくなってきている部分も多くなってきています。 僕が入社した頃のRailsは3.2.21で、この時点でRails4.0.0のリリースから2年が経過しています。さすがにもう……ということで、僕にその役目がまわってきま
開発部部長の五十嵐(@igaiga555)です。沖縄リモートライフの日記以降、すっかり花粉症の人としてみなさんからお声かけいただくようになりました。 今日はリモートライフ第2弾で台湾へ行ったお話を書きます。 台湾は街の雰囲気が日本とすごく似ています。昨年、RubyConf台湾で初めて訪れたのですが、落ち着いた雰囲気とおいしいご飯がとても良かったので、花粉がない場所で、それなりの期間(約2週間)滞在する場所として適していると思い、台湾の首都の台北を滞在先に決めました。 沖縄の時はairbnbの宿をメインの仕事場所にしていましたが、今回の宿はwifiのスピードが遅く、プリペイドsimの携帯も3Gだったためビデオチャットは無理なレベル。今回は友人らが経営する5XRUBY社さんが声をかけてくださり、席を貸していただきここをメインの仕事場所にしました。Railsで受託開発をしている会社で、台北の中心
開発部部長の五十嵐(@igaiga555)です。今日は弊社の新しい制度リモートライフを紹介します。 2/19〜3/2までの約10日間、沖縄にてリモート勤務をしました。私は花粉症なのですが、スギ花粉の飛ばない場所で仕事ができないかという話を去年の花粉症シーズンに社長としたところ、社内制度として制定することになりました。遠隔地で1ヶ月以内を目安に勤務し、その渡航費や滞在費を会社が支援するというもので、最終的に花粉症である人だけでなく、全員を対象にした許可制の制度とすることになりました。今回はその第1号ケースとなります。 沖縄では本当に花粉が飛んでないようで、花粉症の症状はぴたりと止まりました。そして暖かいです。コートなしでパーカーだけで自転車に乗れる。海の風が心地よい。暖かい日は半袖でも良いほどでした。 成果はというと、東京にいるときの2倍から5倍のタスクを片付けることができました。花粉症がな
こんにちは。spice life代表のヨシカワです。 3月2日にtmixショールームをオープンしましたが、今回はその根底にあるこれからのトレンド、 ECネット企業のショールーム型ストアの取り組み(ECオムニチャネル)がいかにいままでの店舗と違い、これからの店舗づくりを変えていくか、について書こうと思います。 この話ってオムニチャネルの話でもあるんですが、リアル企業が取り組んでいるオムニチャネルと、ネット企業のオムニチャネルは中身が全然違うんですよね。リアル企業のオムニチャネルの話は新聞でもしょっちゅう出てくるほどになっていますが、このECネット企業のショールーム型ストアの取り組みは日本ではほとんど紹介されていません。 実はこの先進的な取り組みでアメリカのECスタートアップのいくつもが成功しだしています。 代表的にはアパレルのbonobos(ボノボス),メガネブランドのWarbyParker
皆様はじめまして、spicelifeエンジニア@yuki3738と申します。 あけましておめでとうございます。本年も弊社サービスのtmixと\SPOTLIGHTS/をよろしくお願い申し上げます。 さて年末のことではありますが、なんとわたくし皆様が大好きなあのフレームワーク、Ruby on Railsにコントリビュートをしました。 今回はエンジニア歴約半年の私がどんなインチキ経緯があってコントリビュートにまで至ったのか、またそれによってどんな学びがあったのかをお話ししたいと思います。 rails dbができない 事の発端は弊社プロダクトの一つであるtmixのdbの中を見ようとrails dbコマンドを叩いたことから始まります。 Railsエンジニアだったら確実にお世話になるであろうこのコマンド、なぜかわたしのtmixのリポジトリでは起動することができませんでした。 rails dbを入力する
前回に引き続き改めまして id:asonas です。 今日は私が普段開発運用している tmix の内側のお話をしていこうと思います そもそもtmixとは tmixはWebブラウザから欲しいTシャツやパーカの素地を選びエディタを起動して、ぽちぽち操作をすると自分だけのオリジナルTシャツやパーカをつくることができます。 商品によっては即日発送が可能であったり、色数によって代金がかわることもなく、表示されている価格以上にお金がかかることはありません。 tmixの昔と今 私がspice lifeに入社したのが約1年前で、tmixのチームにジョインしたのが今年の1月ごろです。 そのころからtmixを支える環境や技術がどのように変化していったのか、またどのように育てていったのかを幾つかのセクションにわけてお話してみます。 リポジトリ tmixにジョインしたころのリポジトリは社内のsvnサーバがあり、そ
このページを最初にブックマークしてみませんか?
『blog.spicelife.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く