タグ

ブックマーク / techracho.bpsinc.jp (21)

  • Rubyパーサーを一新するprism(旧YARP)プロジェクトの全容と将来(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Rewriting the Ruby parser | Rails at Scale 原文公開日: 2023/06/12 原著者: Kevin Newton サイト: Rails at Scale | The Ruby and Rails Infrastructure team at Shopify exists to help ensure that Ruby and Rails are 100-year tools that will continue to merit being our toolchain of choice. 日語タイトルは内容に即したものにしました。 なお、記事では「パーサー」(parser: 構文解析器)はカタカナで、lexer(字句解析器)は英ママで表記します。 参考: 構文解析 - Wikip

    Rubyパーサーを一新するprism(旧YARP)プロジェクトの全容と将来(翻訳)|TechRacho by BPS株式会社
  • 『Polished Ruby Programming』(Jeremy Evans著)を読みました|TechRacho by BPS株式会社

    こんにちは、hachi8833です。夏休み課題図書というわけではありませんが『Polished Ruby Programming』を2回読み、Webチーム内でも発表しました。 "Polished Ruby Programming" is now available for purchase! The book teaches design principles, best practices, and appropriate trade-offs to the intermediate Ruby programmer. I look forward to seeing what people think about the book. https://t.co/wFRn4yHbVC @PacktPub — Jeremy Evans (@jeremyevans0) July 9, 2021

    『Polished Ruby Programming』(Jeremy Evans著)を読みました|TechRacho by BPS株式会社
  • Webデザインについて勉強したこと|TechRacho by BPS株式会社

    ニシです。前振り長いので読み飛ばしてください。 こちらは初心者デザイナー・なんとなくデザインに興味ある人向けの記事です。 私は美大出身で、BPSに入る前は1〜2年ほどデザイン業務の経験がありました(他業務が多く、片手間程度だったのでガッツリ専門的なデザイナーではなかった)。 BPSへ入社してからは、Webデザイナーとして受託制作のデザイン業務に従事する様になりました。そこそこの経験があっても、受託でWebデザイン制作をするのはとても大変でした。 デザイナーに必要なものは、感覚・センス・発想力あたりが大きいと思うのですが、0から何かを生み出すのはかなり難しい。 しかしある程度は勉強・訓練でなんとかなったと思います。 記事では、個人的にデザイン力をあげるためにやってよかったことなど書きます。 ⚓ を読む まずはを読んで、基礎力と考え方を身に付けたのがよかったです。 読んでよかったは、1

    Webデザインについて勉強したこと|TechRacho by BPS株式会社
  • PostgreSQL: 「OR」を避けてパフォーマンスを向上させよう(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: avoid OR for better PostgreSQL query performance - Cybertec 原文公開日: 2018/05/07 著者: Laurenz Albe サイト: CYBERTEC -- データサイエンス分野でのPostgreSQLサポートやコンサルティングを行っている企業です ※挿絵は原著者自らによるものです。 生きるべきか『OR』死すべきか、それが問題だ」 「帰れ!」「非効率!」「同義反復!」 © Laurenz Albe 2018PostgreSQLクエリのチューニングは私たちCybertecの日常的な業務ですが、チューニング中にクエリにORを1つでも見つけた瞬間、恐ろしさに身の毛もよだつ思いがします。たいていの場合、ORはクエリのパフォーマンス低下の原因となるからです。 言うまでもないこ

    PostgreSQL: 「OR」を避けてパフォーマンスを向上させよう(翻訳)|TechRacho by BPS株式会社
  • V言語: Goのようにシンプルで、Rustのように小さいバイナリ|TechRacho by BPS株式会社

    こんにちは、hachi8833です。昨年夏に話題になったV言語を半年遅れで知って最近遊んでいます。「主観的には」かなり安定して動く印象です。 V is a high-performance and simple computer language with graphics, web and UI libraries and compiles itself in under a second. Where were you two decades ago?!https://t.co/tZCEgJaUTl — Carl Carrie (@🏠) (@carlcarrie) October 7, 2019 サイト: The V Programming Language Discordコミュニティ: https://discord.gg/vlang なお以下のベンチマークは、そういう結果もあるの

    V言語: Goのようにシンプルで、Rustのように小さいバイナリ|TechRacho by BPS株式会社
  • 乱数について本気出して考えてみる|TechRacho by BPS株式会社

    プログラミングをやっていると、様々な乱数に出会います。乱数に関しては大勢の研究者が色々な研究結果を出しているため、種類も増え、いったいどれを使えばいいのかと悩む原因にもなります。 大勢が研究し利用している分野ですから、私以外でも大勢が乱数に関する記事を書いているため、あえて新しい記事を書く価値は高くないかもしれません。まあ、既に理解している人はここで記事を閉じるか、暇つぶし程度の感覚で読んでいただくと良いかと思います。 真乱数と疑似乱数 プログラミングの世界の中でいわゆる "乱数" として扱われることが多いのは擬似乱数です。疑似、と付くからには、これは実のところ乱数ではないと言えます。とは言え、擬似乱数を乱数でないと言ってしまうと話が終わってしまうので、疑似乱数を含む乱数を広義の乱数とします。この記事で扱うのは広義の乱数です。逆に、狭義の乱数、物の乱数は真乱数と言います。 物と言いまし

    乱数について本気出して考えてみる|TechRacho by BPS株式会社
  • HTML5のLocal Storageを使ってはいけない(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Randall Degges - Please Stop Using Local Storage 原文公開日: 2018/01/26 著者: Randall Degges 日語タイトルは内容に即したものにしました。 画像は元記事からの引用です。 初版公開: 2019/10/19 追記更新: 2024/04/05 -- リンク情報を記事末尾に移動しました 気で申し上げます。local storageを使わないでください。 local storageにセッション情報を保存する開発者がこれほど多い理由について、私にはさっぱり見当がつきません。しかしどんな理由であれ、その手法は地上から消えてなくなってもらう必要がありますが、明らかに手に負えなくなりつつあります。 私は毎日のように、重要なユーザー情報をlocal storageに保存す

    HTML5のLocal Storageを使ってはいけない(翻訳)|TechRacho by BPS株式会社
  • iOS 13における必須対応について(更新版)|TechRacho by BPS株式会社

    更新情報 2019/08/28: 初版公開 2020/11/25: 各項目について現在の状況を追記 ⚓ はじめに こんにちは、主にiOSアプリの開発を担当している川島と申します。 iOS 13のリリースが間近に迫りつつあり、またWWDC2019ではSwiftUIを始めとした新しいツール等の発表、ARKit2やCombineフレームワークなどの発表などにより、昨今のiOS界隈が盛り上がりを見せています。 そうした新しいツールや技術が登場する反面、Appleはバッサリとした互換切りや新技術への対応を短期間で強いる傾向にあり、既存プロジェクトの保守などをしているiOSアプリエンジニアはこの時期に頭を悩ませる人が多いのではないでしょうか。 2年前のSafeArea対応なんかは記憶に新しいですね。 今年もそうした「〇〇対応が必須」のような情報はチラホラと聞きますが、断片的な情報が多い印象です。 この

    iOS 13における必須対応について(更新版)|TechRacho by BPS株式会社
  • 楕円曲線暗号アルゴリズムを理解する|TechRacho by BPS株式会社

    お久しぶりです。yoshiです。みなさん、夏を満喫していますか? 私は溶けそうです。日の夏はとってもあつい。 覚えている方がいるかどうかは分かりませんが、以前私はRSA公開鍵暗号アルゴリズムを理解するという記事を書きました。今回はその続編(?)です。 楕円曲線について 楕円曲線、という言葉を事前知識無しで見ると、 多分こんな画像が脳裏に浮かぶと思います。違います。 楕円曲線の楕円は楕円積分から現れた言葉で、楕円積分は文字通り楕円の弧長などを求める方法なので全くの無関係とは言えませんが、少なくとも楕円曲線と楕円は別の図形です。楕円のことは忘れましょう。 実際の楕円曲線は、例を示すと以下のような曲線です。 一般化すると (ただし または ) という式で表されるこのような曲線をワイエルシュトラス型楕円曲線と呼びます。ワイエルシュトラス型、と付いているのは他のパターンもあるからで、 こんな形の楕

    楕円曲線暗号アルゴリズムを理解する|TechRacho by BPS株式会社
  • 2019年前半の「JavaScriptをちゃんとやるための地図」(追記あり)|TechRacho by BPS株式会社

    こんにちは、hachi8833です。BPS社内勉強会の発表を元に、社内JavaScript勢の皆さまのお力を得て記事を書きました。 目的 JavaScriptをたまにしか使わない私ですが、それもあってなおさら書くときに迷いに迷います。 ネットの情報多すぎ、動き激しすぎ、選り分けるにしても指針が欲しい 古いコードや毒入りコードを拾ってあたりや、泥舟に乗って沈没するのを少しでも避けたい 最初の一歩をどこから踏み出すかの手がかりが欲しい そういったわけで、2019年前半と区切って、一度JavaScript世界について門外漢ならではの「大きな絵」が欲しかったのでした。ここに書いたことの中には来年には古くなっているものあるかもしれません。 ただ、社内のJS勢の話を総合すると、JavaScript世界は数年前に比べるとかなり落ち着きつつあるとのことです。この機会にということで、主に自分のために現在の

    2019年前半の「JavaScriptをちゃんとやるための地図」(追記あり)|TechRacho by BPS株式会社
  • Bash: .bashrcと.bash_profileの違いを今度こそ理解する|TechRacho by BPS株式会社

    こんにちは、hachi8833です。社内Slackで見かけたmorimorihogeさんの以下の書き込みで目から鱗が落ちました。 ~/.bashrcで何かを出力してしまうと、rsyncなどのsshパイプで問題が生じることがあるそうです。 参考: 知らないとrsyncでもハマるシェル初期化 - Qiita これをきっかけに、できるかぎり一次情報を元になるべく一般的になるようにまとめてみました。 シェルスクリプト(.bashrcや.bash_profileなども含む)はあまりに自由に書けてしまい、LinuxディストリビューションやmacOSによって作法がまちまちだったりするので、外してはいけないポイントがどこかを知りたかったのでした。 対象はbashとsh(Bourne Shell)に限定します。また、デスクトップGUIの設定ファイルについては最小限にとどめます。 bashのmanページ 元記

    Bash: .bashrcと.bash_profileの違いを今度こそ理解する|TechRacho by BPS株式会社
  • モダンな開発用ターミナル環境のためのツール紹介

    エンジニアのjhondaです。入社して1年が過ぎました。 ターミナル上での開発作業が好きなので開発を快適に進めるために常日頃から使っているツールやエディタを抜粋して紹介します。 この手のツールは組み合わせることで更に便利になるので、組み合わせを含めた紹介となります。 筆者の会社での開発環境はMacですが、プライベートマシンのLinux上でも同じものを使えています。 筆者のターミナル環境は Alacritty + tmux です。 Alacritty Rust製ターミナルエミュレータ。GPUを使うので描画が高速。 https://github.com/jwilm/alacritty 同リポジトリより Rust製だからという理由なので趣味です。でもたしかに速い気がします。 tmux 言わずとしれた仮想端末エミュレータ。 https://github.com/tmux/tmux たいして使いこな

    モダンな開発用ターミナル環境のためのツール紹介
  • Web開発環境をMacBook ProからWindows機に移行してみた話|TechRacho by BPS株式会社

    メイン著者記事としてはご無沙汰しておりますmorimorihogeです。 今年もTechRachoではアドベントカレンダー特集ということで、普段あまり記事を書く機会がなくて表に出ないメンバーにも記事を書いてもらえる運びとなりました。クリスマスまではアドベントカレンダー特集進行のTechRachoをお楽しみ下さい。 今回は最近メイン開発環境をMacからWindowsに移行したので、そのあたりの感想や設定の勘所などをまとめてみたいと思います。 なぜMacから移行するのか? 僕はOS XのIntel Macが出たころからのMacユーザー(当時はまだRosettaとかがありました)で、かれこれ10年以上Macを使い続けてきました。多分Webシステム開発用途でMacを使い始めたという人の中では古参の方なのではないでしょうか。 というわけで、なんで移行するの?という話からぽえみーに綴ってみようと思いま

    Web開発環境をMacBook ProからWindows機に移行してみた話|TechRacho by BPS株式会社
  • Rubyの内部文字コードはUTF-8ではない...だと...?!|TechRacho by BPS株式会社

    こんにちは、hachi8833です。 少し前に、babaさんから「Rubyの内部文字コードはUTF-8じゃないよ」とツッコミがありました。 (追記: 上は会話の途中から切り取りましたのでご了承ください) いきなりの展開にくらくらきましたが、babaさんはさらにたたみかけます。 こうしたことはとっくにご存じの方も多いと思いますが、「Rubyといえば2.0以来UTF-8完全対応なんじゃないの」と勝手に思い込んでた私は脳に掌底をらったような思いです。ああ、でもこういうことがあるから面白い。 ⚓ プログラミング言語と内部文字コードの関係 まず最初に押さえておきたい点です。プログラミング言語で文字コードに関連する部分は、「文字列」「正規表現」「入出力」「コード中の文字リテラル(""の中など)」「コード中の文字リテラル以外の要素(変数名など)」「ファイル名」などが中心になります。そして文字列に関連し

    Rubyの内部文字コードはUTF-8ではない...だと...?!|TechRacho by BPS株式会社
  • 開発会社におけるエンジニアスキル向上施策の過去と今|TechRacho by BPS株式会社

    morimorihoge@Webチーム部長です。ご無沙汰しています。ゴ魔乙はギルド戦が実装されてから拘束時間が多くなり、そろそろ見切りを付けようかとも思い始めた今日この頃です。とりあえずポケモンGOは始めました。 しばらくTechRachoに投稿できていなかったわけですが、別に遊んでいたわけではなく、むしろ開発会社としての業の方で一杯一杯でなかなか記事を書く気合を充填できていませんでした。 今回は、最近社内で(というか主に僕のいるWebチームで)取り組んでいる社内エンジニアのスキルアップへの取り組みについて、これまでの経過と近況を書こうと思います。長いです。 ※今年に入ってから弊社は事業拡大を目指して採用活動を強化しており、現在進行形でメンバの増強を行っています。新しい人が入ってくる中で古くからの人もいるという当たり前のことではありますが、過去にこういう取り組みをしていたんだよという記録

    開発会社におけるエンジニアスキル向上施策の過去と今|TechRacho by BPS株式会社
  • HTML + CSS + JavaScript で簡単に導入できるdatetimepicker の比較|TechRacho by BPS株式会社

    2014.10.15 HTML + CSS + JavaScript で簡単に導入できるdatetimepicker の比較 最近MBA 買ったんですけど、ずっとドザーだったので全然慣れないshibuso です。トラックパッド使うと指が痛くなって泣ける…。 さて、今回は無料で公開されているdatetimepicker についてまとめたいと思います。datetimepicker と聞いてピンと来ない人は、フォームをクリックするとカレンダーが表示されて、そこで日時を選ぶ機能と思ってもらえば大体合ってます。少し前までプルダウンで年月日を選ぶのが普通だったのに、色々と便利になってきています。 とはいえdatetimepicker はまだあまり選択肢が無いように感じます。私の検索の仕方が悪いのかもしれませんが、日付のみを選択できるdatepicker の方が多いかと。そんな中、今回はdatetime

    HTML + CSS + JavaScript で簡単に導入できるdatetimepicker の比較|TechRacho by BPS株式会社
  • 突然シリコンバレーのエンジニア2名から連絡をうけ日本で共同開発してみてわかったこと|TechRacho by BPS株式会社

    2ヶ月前、シリコンバレーでこれまで仕事していた2人組からMANGAREBORNに関わりたいと、FACEBOOK経由で連絡をうけました。FACEBOOKのFANPAGEは64万ほどLIKEされているのでいろんな人と繋がれてるんだなあと関心しつつも日語は話せなさそうなのでどうやって共同開発するか?ソースコードだけで採用可否を判断したことはあるけど言語も住む国も異なるとさすがに難しいので”日に来なよ”と連絡したらその翌月(先月)日に来た。定期的にFACEBOOKのスパムフォルダを見るのは大事ですね。 一人は大学の入学手続きをして学生というステータスと住むところと収入源をある程度確保していて、もう一人は住むところも給与も在留資格もなく海を越えて飛んできました。間違いなくいいやつだと確信しました。会った初日は延々とサービスを世界に広めるロードマップやそれぞれの夢について語りあいました。夢の話が

    突然シリコンバレーのエンジニア2名から連絡をうけ日本で共同開発してみてわかったこと|TechRacho by BPS株式会社
  • 社員数名の開発会社が20人採用したあと黒字をキープするためにやったこと|TechRacho by BPS株式会社

    2年前、役員と社員あわせてエンジニア5人だった弊社は1年間で20人のエンジニアを採用しました。採用前の当時の売上は約1億。採用のために使ったキャッシュは売上の10%程度の1000万円前後。社内の実働も含めると実質売上の15%以上です。それについては以前記事にしましたので興味があるかたはこちらをどうぞ。今回のその後についでです。そもそも何やってる会社だ?と興味もってくださった方はこの記事でも軽く紹介しますがもしよければ弊社HPをご覧ください。 採用の目的は事業拡大でした。時間の切り売りから商品の提供まで売り方は様々でしたが弊社売り物は技術です。だからエンジニア募集しました。そして自分たちの夢を一緒に追いかけてくれる人が20人も集まってくれました。数年間3~7人でやってきたのでまるで夢のような感覚でした。でも悪夢のような速度でお金が飛んでいきます。倒産しかけるって表現は人それぞれだと思いますが

    社員数名の開発会社が20人採用したあと黒字をキープするためにやったこと|TechRacho by BPS株式会社
  • 社員数名の開発会社がエンジニア20人採用するためにやってみたこと|TechRacho by BPS株式会社

    続編はこちらです:社員数名の開発会社が20人採用したあと黒字をキープするためにやったこと 約2年前の今頃、弊社はこんな状況でした。 学生アルバイトだけは今も昔も一杯いるけど、優秀な学生であっても仕事経験がないと戦力計算は難しい。一部の仕事デキル人たちがすべてを回していて、仕事は一杯あるんだけど仕事できる人が足りない状態でした。 というわけで、売上の10%程度である1000万くらいのキャッシュを投入して全力で採用活動してみました。社内人員の動きも含めると計15%かな?大事になパートナー探しですからね。しっかりやるとしっかり時間とられます。 試してみたこと+感想 社員に紹介をお願いしてみた 紹介で入社した場合のインセンティブを設定してみました。紹介したほうに20万円。紹介された方にも20万円。そもそも全員知り合いは片っ端から連れてきていたので紹介料を設定しても最初は意味はなかったですね。でも、

    社員数名の開発会社がエンジニア20人採用するためにやってみたこと|TechRacho by BPS株式会社
  • iOS 5.1 SDK環境で、iOS用OpenSSLをビルドする|TechRacho by BPS株式会社

    OpenSSL for iOS : https://github.com/ANNotunzdY/ios-openssl ios-opensslをフォークしてきて、iOS 5.1環境でビルドできるように修正してみました。 (といっても、build.sh内の「5.0」を「5.1」に置換しただけです) 以下の手順で、armv6 / armv7 / i386(Simulator)のUniversalバイナリのライブラリをビルドできます。 git clone git://github.com/ANNotunzdY/ios-openssl.git cd ios-openssl ./build.sh なお、実行にはCommandLine Tools for Xcodeが必要です。 うまくいかない場合は、以下の要領でシンボリックを作成してから試してみてください。 sudo ln -s "/Applicat

    iOS 5.1 SDK環境で、iOS用OpenSSLをビルドする|TechRacho by BPS株式会社