サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
techblog.raksul.com
先日、社内のSlackでpixivさんのブログ記事 今日から簡単!Webpacker 完全脱出ガイド がシェアされてて、『あっ、これは...弊社でもやったやつではないか。』とおもいました。Webpackerは便利なんですけどね。 本記事はこのpixivさんのポストを受けて WebpackManifest というgemを紹介します。 ラクスルでのWebpackerを辞めた経緯 もともとWebpackerを使った管理画面プロジェクトがあった そこにECサイトも乗せるようなった package.jsonは管理画面、ECサイトで分けて管理したかった Webpackerは1個のpackage.json、1個のwebpackコマンド、1個のmanifest.json前提の作りなので、package.json分けて複数のwebpackビルド処理系を作りたいラクスルの用途に合わなかった => 脱Webpa
エンジニアの二串です。 ラクスルのRailsのプロジェクトではデータベースとして Amazon Aurora(MySQL) を採用しています。そしてO/Rマッパーとして当然ActiveRecordを使っています。 さて、ActiveRecordを使っていて悩むのが複数DBの接続ですがみなさんはどうしていますか? ActiveRecordは標準では1つのデータベースにしか接続できないので、複数の異なるデータベースサーバや、マスター・リードレプリカの接続を切り替えるには工夫が必要です。しかし、世の中には素晴らしい方々がいて複数DB切り替えを可能にするgemが提供されています。 今回はそれらgemの中からSwitchPointを採用し、運用中のRailsプロジェクトになめらかに導入したときの経緯と方針、さらに具体設定を紹介します。 確認したバージョンは以下のとおりです Rails 5.1.5 R
こんにちは!ラクスルでプロダクトマネージャー(以下、PM)をしています平光です。 17卒の新卒として入社し、1年とちょっとが経過しました。 今日はこれまでの振り返りと学びを紹介しようと思います。 ラクスルにおけるPMの役割とは ラクスルでは、要件定義からストーリー分解、スプリント / 長期の開発計画、受け入れテスト、サービスのリリースまでをPMが担います。 チームによっては、システムの設計にPMが入って議論したり、ワイヤーやデザインをPMが行うこともあります。開発チームによって求められる役割が異なりますが、チームに足りない部分を自分がカバーするかもしくはリソースを調達することで、サービスのリリースまで進めます。 役割が異なることによって幅広い業務に関われることはPMをやっていて楽しいですね。 課題設定が甘く優先順位が付けられない 入社してまず関わったのがラクスルのカスタマーサポート(以下、
ラクスルでサーバサイドエンジニアをやっている小林です。 最近の業務では、主に Ruby を書いています。 さて、Ruby の組み込みライブラリにはいろいろな便利メソッドがありますが、 みなさん推しメソッドはありますか? 個人的推しメソッドは Array#zip と Hash#transform_values です。 Hash#transform_values について少し紹介すると、 もともと Rails4.2 の ActiveSupport で実装され、 Ruby2.4 で組み込みライブラリに移植されました。 移植の際は、名前をどうするかという議論でとても盛り上がったようです。 また、Ruby2.5 からは姉妹メソッドとも言える Hash#transform_keys が実装されました。 Hash#transform_values の話はこの辺にして、今回は Array#zip の推しポ
こんにちは。エンジニアの二串です。普段はサーバサイドの開発をしていますが、今日は最近仕事で取り組んだフロントよりの話になっています。 iframe を使って複数の管理画面サイトをあたかも1つの統一されたサイトとして見せるパターンをまとめます。 iframe を使って別サイトをはめ込むことは簡単ですが、実際複数ページあるサイトをはめ込もうとすると、ただ iframe を使うだけでは力不足です。例えばiframe内でのページ遷移、高さ調整、パーマリンク等で問題を感じます。 今回紹介する tips のいくつかはインターネット上で見つけられますが、今回の複数管理画面を1つにマージするという視点でまとまった記事は見つけられなかったので、まとめたら便利なのではとおもい記事にまとめました。 コードスニペットを以下で掲載していますが、より詳しくはデモアプリも併せて見ていただければとおもいます。 背景 移行
10月からラクスルにジョインさせていただいた水島です。 新参者ですが、宜しくお願いいたします。 さて、入社して間もなくCTOの肝いりでスタートした 「Raksul Platform Project」 のプロマネを拝命したため、今日はその全体感の話をしたいと思います。 なにをするのか 「スタートアップあるある」だなんて言わないでください。 ラクスルをフルスクラッチで作り直そうとしています。 でもそれはあくまで手段です。 目的は、 技術負債と思われている部分を根本的に解消して開発しやすい状態にする(エンジニアを幸せに) システムに柔軟性を持たせて経営戦略の選択肢が増えている状態にする(経営を幸せに) の大きく2つです。 特に前者の「エンジニアを幸せに」という目的に対する経営陣の温度感が不思議と高いのはポジティブに感じています。短期的な投資対効果とかではなく、「ものづくり」を大切にする会社になる
ラクスルに入ってはや2年を迎えたおっさんCTOの泉です。ラクスルに入ってから 6kg 体重が増え、ますますおっさんとしての安定感が増してきました。次の2年で 6kg 減らす予定です。 さて、今回のお題はエンジニアなら誰しも知っている有名な開発プラクティスであるTDDを実践する上でのTIPSです。 TDDはなかなか実践に至らなかったり、実践してみてもなかなかうまく行かず、挫折してきたエンジニアも多いのではないでしょうか。 ラクスルではXPでTDDを実践しはじめてからかれこれ1年近く経ちますが、なぜ今までTDDはうまくいかなかったのか、いままでとは何が決定的に違うのか、というのをそれとなく考えてみたところ、「バックログをBDD形式で書きはじめた」ことがTDDの実践に大きく影響を与えているのでは、と思うようになりました。 テストに入りやすいストーリーの書き方とは? いざTDDでやってみよう、と思
こんにちは。もうすっかり老害になったインフラエンジニアの渡邉です。 ようやく朝方涼しくなってきましたね。犬の散歩が捗ります。 突然ですが、みなさん脆弱性対応ってしてますか? 今に始まったことではないですが、特にインフラエンジニアにとっては脆弱性対応はとても面倒で手間がかかる頭の痛いタスクになっています。 というわけで今回は、弊社のraksul.com/hacobell.com環境に巷で話題の脆弱性スキャナ「vuls」を導入した話をしたいと思います。 経緯 日を追うごとに管理するEC2インスタンス数や導入しているpackageが増えてきたこともあり、それぞれのCVEを追いかけるのが辛くなってきました。 エンジニアにとっては非常に面倒な監査用のレポーティングもそろそろ必要だろうという機運が 高まってきたところで、ちょうどとある勉強会でvulsのことを知ったので、とりあえずこのビッグウェーブに乗
ラクスルでデザインを担当している中村です。 ラクスルに入社してはや半年が経ちました。 ラクスルでは、ここ最近は主にUCD(ユーザー中心設計)などを取り入れたUX活動やUI設計・プロトタイピングなどをしています。 さて、今日は先日実践した「ペアデザイン」についてお話ししたいと思います。 ペアデザインとは 「ペアプログラミング」はデベロッパーやエンジニア界隈ではよく耳にされることも多いかと思います。 私自身もデザイナーとしてエンジニアとペアを組み、一緒にデザインを実装するということを、ラクスルでのプロジェクトや以前勤めていた会社で経験しました。 その経験から ・ひとり作業による属人化を防ぐことができる ・ひとりよりもふたりのときのほうが集中力が増し、生産性もあがる ・ペアを組んだ相手から技術・手法を学び、吸収する機会が増える といったメリットがあると感じ取りました。 そこで、もしデザイナー同士
ハコベルの開発をしている吉岡です。 入社してからずっと印刷ECの開発をしていましたが、 今年の5月からハコベルチームに移って開発してます。 ハコベルはインターネットを使って簡単に荷物の配送を手配できる 運送のマッチングサービスです。 もっと詳しく知りたい人はこの辺とかをぜひ見てみてください。 ちなみに、先日「Ruby biz Grand prix 2016」でハコベルがグランプリを受賞しました。 興味のある方は是非こちらもご覧ください。 https://www.wantedly.com/companies/raksul/post_articles/46184 それでは開発の話へ。 開発の背景 Railsにようやく慣れてきた頃に「ドライバー向けのデスクトップアプリの開発をしよう!」 という話があがり、幸運にも担当させてもらうことになりました。 そもそも開発に至った理由として、一般貨物を扱うド
昨年の10月にラクスルに入社し、3月よりCTOに就任した新米エンジニアの泉です。 最近スタートアップ界隈のビジネスパーソン、飲食を経営されている方など、何気なく出会った人に「あ!ラクスルさんなんですね!実は私も(チラシ|名刺)刷ってます!」と突然「お客様」に遭遇してヘコヘコしてしまうことがありますw。嬉しい限りです。 CMなどもガッツリ力をいれているのもあって、ようやくエンジニアの方でも最近「CMで見ました」「名前は聞いたことはあります」と言っていただくことはあるのですが、さすがに個人でチラシを100部印刷したいといったニーズはなかなか訪れず、比較的サービスに触れる機会は少ないためか、よく「え?ラクスルってそんなに技術に力入れてるんですか?」とか「ラクスルのシステム部って何開発してるの?」と聞かれます。 というわけで、そもそも「ラクスルのエンジニアが何をやっているのか」というお題で少しご紹
待望のPHP 7.0.0がついに2015/12/03にリリースされました。 っというわけでサクッと検証してみました。 スペック 使ったサーバー: IDCF 500円サーバー x2台 OS: CentOS 7.1 PHP 7.0 インストール rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm yum install php70w php70w-opcache でたー。 PHP 5.6 インストール rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm yum install
AWSがt2.microよりさらに小さいt2.nanoをリリースしました。 サービスの詳細に関しては EC2アップデートー T2.Nanoインスタンスが利用可能に を 参照してください。スペック的には下記の通りです。 Instance Type CPU Memory 価格($/時) 価格($/月) 価格(¥/月) t2.nano 1 0.5GB $0.01 $07.3 ¥0,891 t2.micro 1 1.0GB $0.02 $14.6 ¥1,781 t2.small 1 2.0GB $0.04 $29.2 ¥3,562 t2.medium 2 4.0GB $0.08 $58.4 ¥7,125 ($1.00 = ¥122で計算 2015/12/18時点) インスタンスを立ち上げる AWSの画面からインスタンスの作成を選択 Amazon Linuxで今回は検証します t2.nanoが選択で
エンジニアの大嶋です。 先日、吉岡がブログでGoogle Mapsを使ったアプリケーションの作り方を紹介しましたが、 今回は同じAPI でも Yhaoo GeoCoding API についてご紹介したいと思います。 ラクスルのポスティングのシステムの裏側ではGoogle Maps APIだけではなく、 ケースによってはYhaoo APIを利用しています。 利用しているAPIは↓こちら Yahoo!ジオコーダAPI 最低限必要な情報は以下の通りです。 リクエストURL: http://geo.search.olp.yahooapis.jp/OpenLocalPlatform/V1/geoCoder リクエストパラメータ:「api_id」、「query」 ここで、「query」に渡す情報は上記では「虎ノ門1-17-1」のような住所の情報になります。 するとAPIが「虎ノ門1-17-1」に対する
12月に入社した @okapon_pon です。 ラクスルには8人目の開発メンバーとしてジョインしました。(インターン生1人を含む) 現在ラクスルではサービスの機能拡充と合わせて、開発環境改善プロジェクトというものに着手しつつあります。 私が入社した当時の開発環境は、弊社大嶋が以前書いた「ラクスルの開発フローについて」 にある通りGithub、skype、redmineを利用しており、加えてmediawiki、Gyazo-client、cacooといったツールを利用しています。 これらのツールは今でも利用しているのですが、私が入社してからの3ヶ月ほどで開発環境・開発体制も変わってきましたので紹介したいと思います。 コードレビュー体制 コードレビューにはGitHubを使っています。今どきの開発では珍しくないと思います。 ですが、これまでは少人数のスピード重視で開発していたということもあり、
11月入社のAです。 前職はソシャゲの会社でPerlを中心に開発しており、php歴は約2ヶ月ほどです。 sublime text3で開発する場合は、デフォルトで十分開発できるのですが、 いくつか小技的なものの紹介させて頂きます。 sshfsでサーバーをマウントしてsublコマンドを使う ラクスルではIDCFクラウド上のサーバーにsshでログインして開発しているので、 sshfsでリモートサーバーをローカルにマウントしています。 sublimeにはsublコマンドが付属しており、このコマンドを使うとターミナルからファイルを開くことができ非常に便利なのですが、リモートのファイルに対しては当たり前ですが使うことができません。 sshfsでマウントすれば、ターミナルからマウント先に移動できるので ローカルファイルと変わらず使うことができます。 DocBlockerを入れて、phpdocコメントを書
あけましておめでとうございます! ラクスルの淵野です。 2015年も始まりましたね。 本日が仕事始めの方も多いかと存じますが、 いかがお過ごしでしょうか? 昨年の7月に開始したこのラクスルtechブログも、 半年で26もの記事を投稿させていただきました。 エンジニアが書く技術系の記事もあれば、 ディレクター/マーケターによる記事、 はては、これtechか?と思われる怪しい記事まで、 ラクスルのメンバーの多様性を体現するかのような本ブログ。 今回はその中でも人気の高かった、2014年の記事BEST5を発表いたします! 5位:ラクスルの開発フローについて(8/4) ラクスルの開発フローで利用しているツールと利用方法についてのこの記事。 GitHub、Redmine、Skypeなど、 社内で使用しているツールの一部の事例についてご紹介しています。 やっぱりこういう記事は人気がありますねー。 te
めぐろLT 2024 をふりかえる こんにちは、ラクスル星野です。 めぐろLT参加者のみなさん、アドベントカレンダー参加者のみなさん、おつかれさまでした。 本記事は、めぐろLTアドベントカレンダー2024の最終日の記事です。 締めくくりとして2024年のめぐろLTをテーマを振り返り総括などしたいと思います。 本文 めぐろLTは connpass の概要にもある通り 月一開催 各社持ち回りで、開催場所が変わる という運用で「LTをする」以外はあまりルールを設けず各社に開催していもらっている集まりです。 2024 年の開催を振り返ると 開催日 開催場所 テーマ 2024/01/30(火) ペライチ@御徒町 2024年の抱負 2024/02/28(水) ラクーンホールディングス@日本橋 おすすめ書籍紹介LT 2024/03/12(火) ラクスル@目黒 これからエンジニアになる人へ贈ることば 20
エンジニアの生産性をどうやって高めるかの議論は はてブからTwitter まで議論が尽きませんが、 ノンエンジニアの立ち振る舞いで相当は変わってきます。 幸い当社では、社内のコミュニケーションを重視した結果、 ここ1年で倍以上に生産性があがったので、その7つの秘訣をまとめてみました。 [1]自社で使っているプログラミング言語/フレームワーク/データベースを名前だけでも把握している 自社で使っているデータベース、プログラミング言語およびその上のフレームワークを知っていますか? 立ち上げ期→成長期のベンチャーにおいて、社員紹介は最重要の採用ルートです。 特に前職もテック系企業の場合、前職で縁のあった方が採用候補になる事が多々あります。 ふと前職の人と飲んだ時にノンエンジニアの方から 「そのスキルうちで生きるかもしれないんだけど、よければ話だけでも聞きにこない?」と アプローチ出来るかが会社の採
こんにちは。ラクスルエンジニアインターンのカンです。 食欲の秋になり、ランチがどんどんボリューム系に傾いている傾向を見せる中、 今回はGoogle Docs SpreadSheet APIを利用して新しいデータを追加する方法について書きたいと思います。 PHPでGoogle Docsをいじるときは基本的にはZend FrameworkのGdata APIを利用しますが、 ラクスルでは諸事情のため、使うことができませんでした。 従って、以下ではCURLを利用してProtocolを使ってデータを追加してみようと思います。 1.認証 SpreadSheetにアクセスためには、まずGoogleAccountで認証を行う必要があります。 今回はClientLoginを利用することにします。 ※注意 昔書いたコードであるためClientLoginを使用していますが、2015年5月27日から廃止になりま
新しいIDCFクラウド IDCフロンティアが今日「IDCFクラウド」を公開しました。 ・クラウドWatch | IDCフロンティア、セルフサービス型IaaSをリニューアル ・CNET | DCフロンティア、よりパワフルな新クラウドサービス「IDCFクラウド」を提供開始 ・マイナビ | IDCフロンティア、月額500円からの新クラウドサービスを発表 ・日経新聞 | ヤフー系、格安クラウド アマゾンの4分の1 月額500円ならクラウドなんて怖くない!っということで「IDCFクラウド」に登録してみました。 新規登録 ログイン情報 IDCFクラウド 新規登録から新規会員登録できます。 IDCFクラウド 新規会員登録 電話認証 IVR認証が必要なので携帯電話番号を入力して、電話してもらうかSMSを送ってもらいます。 IDCFクラウド 電話認証 電話は面倒なので「SMS確認」を選びました。 IDCFク
ラクスルのWebシステムの開発・運用を行っている大嶋です。 今回はラクスルの開発フローで利用しているツールと利用方法についてご紹介します。 1. GitHub GitHubとはGitリポジトリを利用した、プロジェクトやソースコードの管理を行うためのホスティングサービスです。 ラクスルではざっくり以下のような流れでGitHubを運用しています。 1. 機能単位でブランチを切る 2. 開発完了後にプルリクエスト 3. レビュー 4. 問題なければmasterブランチへのマージ 5. マージ後に機能ブランチを破棄 2. Redmine Redmineとはオープンソースのプロジェクト管理ツールです。 ラクスルではエンジニアだけではなく事業系、管理系の部署メンバーも含め社内全体でRedmineを利用しています。 特にエンジニアによる開発が伴うチケットの場合には、上述したようにGithub上で新規ブラ
ラクスルの利根川です。 ラクスルでは メール・カレンダー・ドキュメントにGoogle Apps for Business を利用しています。その中でも、Google Apps Script を活用するとさらに業務の効率化が可能ですので、 今回はその活用例を紹介します。 この処理を開始した背景 ラクスルでは各社員のメール以外にもカスタマーサポートの際に印刷をご注文のお客様とメールのやりとりもしばしば発生します。 > ラクスルの注文の流れ 2年前のサービス開始当初はカスタマーサポートも数名だったので Gmail のメーリングリストに届くメールに対応していればよかったのですが、 カスタマーサポートチームのメンバーも増え(現在も絶賛採用中です! ラクスル採用サイト )、 担当の割り振りをしたい/対応漏れを予防しなくては/メール業務だけGmailだと非効率 等々の理由で その他のカスタマーサポート業
こんにちは。ラクスルのWebシステムの開発・運用を行っている吉岡です。 今回はラクスルの価格表ページでも使われている「pjax」についてお話します。 pjaxとは pjaxとは、pushStateとAjaxの技術を組み合わせたjQeuryのプラグインのことを指します。 そもそもpushStateとか、Ajaxって何ぞや?という方にそれぞれを簡単に説明します。 ■ pushState pushStateとは、HTML5で導入されたHistoryAPIの機能を使い、 ブラウザの履歴情報をページ遷移せずに変更するメソッドのことです。 ■ Ajax Ajaxは「Asynchronous JavaScript + XML」の略で (はじめて知った…)、 非同期通信でサーバーからデータをやりとりする技術です。 Google Mapsで使われて一躍有名になりました。 ■ pjax pjaxとは、これらの
ラクスルの利根川です。 ラクスルも最近の多くのテック系企業のようにソースコードの管理にgithubを使っています。 ラクスルがgithubに来るまで raksul.com をオープンして間もない2011年10月からソースコードの管理をgitにて行っておりましたが、2013年12月に「コードレビューとかプルリク運用とかそろそろしたいよね」とgitlabを使用していました。 ただ、過去の1万以上のcommitのせいか、当社だとgitlabの挙動が正直安定していなかった(が、その修正にpull requestを送る程の余力は無い)のもあり、当社でもgithubにてソースコードを管理することになりました。 githubへ移行する時 1.Sign UPする githubの価格表に記載がありますが、当社の場合は10 private repositories で足りるので、bronzeをsign upし
このページを最初にブックマークしてみませんか?
『RAKSUL TechBlog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く