並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 5187件

新着順 人気順

railsの検索結果161 - 200 件 / 5187件

  • Railsは技術的負債である

    Railsを使うと、初速は早くなる。それは間違いないと思う。一方で、RailsはVierwからDBまで密結合したフレームワークなので、「段階的なアップグレード」とかがむずかしい。ヴァージョンをあげるときには一気にエイヤであげる必要が出てきがちである。さらに、プロダクトが巨大になってくると結局様々な工夫を凝らしてViewからDBまでの間を疎結合にしていくことになる。そうなってくると、「これRailsである意味あるんだっけ」となって、段階的なアップグレードのしにくさや気をぬくと密結合な設計になるという欠点が目立ってくる。 これは、まさに技術的負債そのものである。ここでわたしが「技術的負債」を「単なる悪いもの」として扱っているわけではないことに注意してほしい。Railsを使うというのは、そういう将来の負債を借り入れて、その借金を使って早くプロダクトを世の中に届けるという判断をしている、ということ

      Railsは技術的負債である
    • 動的計画法によるDVDのディスク分割の改善

      こんにちは。「家族アルバム みてね」の開発チームに所属している黒川と申します。今回は、その「みてね」の機能の1つで、写真や動画をDVDにして注文できる機能を動的計画法を使って改善した話をします。 「みてね」では家族の写真や動画をアップロードし、アプリ上で月ごとに振り返ることが可能になっています。一方、たとえば自宅のテレビやパソコンでまとめて振り返りたいという要望もあり、「みてね」では最長過去1年間の写真や動画をDVDにまとめて注文することができます。 このときに問題となるのがDVDのディスク分割です。1年分の写真や動画はともすると1枚のディスクに収まりきらず、複数のディスクに分割する必要があります。いままでは、動画を月ごとに分けて各ディスクに入れていく、というシンプルなアルゴリズムで分割を行っていました。しかし、ユーザーさんからは「1枚のディスクにすこしの動画しかないがどうなっているのか」

        動的計画法によるDVDのディスク分割の改善
      • マネジメントの極意は「自分のことは棚にあげる」こと, MacBook Pro M1 Max を 1 週間使ってみての感想 - HsbtDiary(2022-02-04)

        ■ マネジメントの極意は「自分のことは棚にあげる」こと タイトルは https://qiita.com/jnchito/items/0a0b46106681f41f2f0e のインスパイアです。 昔エンジニアなどをやっていた時に、マネージャや上司から何かコメントを受けると「とは言っても、このコードも書けないのにさあ」というような気持ちになった経験から、自分が実際にマネジメントをする立場になると、「は〜、React とかあまりわからんので方針とか出しにくいなあ」となって止まってしまうことがあります。 昨今のソフトウェアエンジニアリングは幅も深さも異次元のレベルまで広がっているので、全てのことをマネジメントが実践できるというのは正直無理な話です。自分ができることしかマネジメントできないなら、ソフトウェア開発の世界では何もできないのに等しいです。 そこで必要なことは「自分のことは棚にあげる」です

        • GraphQL Highway

          銀座Rails#40

            GraphQL Highway
          • ssig33: "最近最小限のReactアプリを作るのに使ってるもの についてとりあえずメモしとく。 ##..."

            新人声優 +81-9014502501 mail@ssig33.com 0088-7709-7529 it/it. my opinion may be not my own. but my fate is my own. 最近最小限のReactアプリを作るのに使ってるもの についてとりあえずメモしとく。 前提: デカいフレームワークは使わない next.js, Astro, Remixは使わない。next.jsとAstroは大好きなのだが、社内向けとか個人用とか小さいアプリに使うにはあきらかに恐竜であると思う。Remixは大好きではない。 前提: SSRしない SSRもSSGもISGもしない。CSRでいい。SSRしたいならReactをそもそもぶん投げたほうが(個人レベルなら)いいと思ってる。それがほしいならPHPやRails でええ。今更RailsでView書きたくないとか思うかもしれない

              ssig33: "最近最小限のReactアプリを作るのに使ってるもの についてとりあえずメモしとく。 ##..."
            • Rubyプログラマが何を考え、どうやってコードを書くのか、その過程を動画にしてみました - give IT a try

              はじめに:銀座Rails #12で登壇させてもらいました 去る2019年8月29日、銀座Rails #12で「プログラマがコードを書きながら考えること 」という発表をさせてもらいました。 ginza-rails.connpass.com この発表では「プログラマが書き上げたコード(=完成形)」ではなく、「そのコードをどうやって書いたのか?(=何を考え、どんなツールやテクニックを使って、どれくらいのスピードで書いたのかという点、すなわち、コードを書く過程)」をテーマにしました。 そして、その過程をわかりやすく伝えるために、スライドだけでなく、僕がガチンコでコードを書いていく様子を動画コンテンツとして会場のみなさんにお見せしました。 これまでいろんな勉強会やイベントで発表してきましたが、動画を事前に用意して発表で使ったのはこれが初めてです。 初めての試みなので、どうなるかちょっと不安でしたが、

                Rubyプログラマが何を考え、どうやってコードを書くのか、その過程を動画にしてみました - give IT a try
              • レイヤードアーキテクチャ - kawasima

                POSAでの定義 レイヤードアーキテクチャを、体系だって書いたのは「Pattern-Oriented Software Architecture, Volume 1, A System of Patterns」だろう。まずはその原典に立ち返って、レイヤードアーキテクチャとは何かをみてみる。 コンテキスト ソースコードの変更がシステム全体に波及させたくない。それが1つのコンポーネントに閉じられ、他に影響を与えないようにすべきだ。 インタフェースは安定している。標準化団体によって規定されている場合もある。 システムの一部は交換可能である。コンポーネントはシステムの他の部分に影響を与えることなく、実装を入れ替えることができる。 現在設計しているシステムと同様の下位レイヤの課題をもつ他のシステムを、将来構築することがあるかもしれない。 理解のしやすさと保守性のために同じ責務はグルーピングしておきた

                  レイヤードアーキテクチャ - kawasima
                • Webエンジニアとして個人的に大事だと思ってる、ノウハウ・心構えについて【前編】|Offers Tech Blog

                  はじめに こんにちは!Offers を運営している株式会社 overflow の バックエンドエンジニアの takkun7171 です。 エルデンリングをクリアして、Apex のランクを再開したところ、 初のソロダイヤを達成しますた。齢 40 過ぎのオッサンでも、やればできるんだから!!w さて、技術ブログなんですが、今回は技術というよりも Web エンジニアとして個人的に大事だと思ってる、ノウハウ・心構えについて 書いてみようかなと考えてます。 初心者向けというわけではないのですが、 4 月ですし、新人エンジニアの方も増えるということで 初心者の方にも読んで頂きたいです。 そこそこ分量があるので、前後編に分けて、 前編はハードスキル中心、後編はソフトスキル中心で書いてみます。 後編の記事 自分はマネージャーでも CTO でもなく一介のエンジニアでしかありませんが、 Web エンジニア歴は

                    Webエンジニアとして個人的に大事だと思ってる、ノウハウ・心構えについて【前編】|Offers Tech Blog
                  • 認証自作、 Rails 、 Devise - Diary

                    認証自作、 Rails 、 Devise https://ockeghem.pageful.app/post/item/uQFX4oRNbnax82V これを読んで思ったことなんですけど、 Ruby On Rails 界隈では「認証は自作すべきではない、デファクトスタンダードの Devise を使うべき」という考え方が一般にあるように思います。 ではその Devise なんですけど、ドキュメントに以下のようにあります。 Starting with Rails? If you are building your first Rails application, we recommend you do not use Devise. Devise requires a good understanding of the Rails Framework. In such cases, we ad

                    • 複数の言語で同じWebサービスを実装して技術特性の違いを見てみた - Hatena Developer Blog

                      開発合宿運営チームの id:yutailang0119 と id:maku693 です。はてなでは四半期に一度、技術グループ主導で開発合宿を開催しています(過去の合宿の様子は「開発合宿」カテゴリーにまとまっています)。 2023年4月に実施した開発合宿では、参加者が複数のチームに分かれ、それぞれ異なるプログラミング言語で同じお題のWebサービスを開発しました。言語ごとの特性を比較し、今後の技術選定に生かす取り組みです。 この記事ではその開催レポートをお届けします。 開発言語の特性を理解したい さまざまな技術要素を2日で実装できるお題に 参加チームやコミュニケーションでの工夫 順調に開発が進んだ合宿当日 技術勉強会で「成果物を見る会」を実施 開発合宿を終えて プログラミング言語ごとの使用ライブラリ TypeScript Go Ruby Scala 開発言語の特性を理解したい はてなではたくさ

                        複数の言語で同じWebサービスを実装して技術特性の違いを見てみた - Hatena Developer Blog
                      • 検索エンジン自作入門 Go Conference 2021 Spring

                        Go Conference 2021 Springの登壇資料です アウトライン 1. 検索エンジンとは ~ 一般的な検索エンジンの仕組みと構成要素 2. 自作した検索エンジンの紹介 ~ 具体的に自作した検索エンジンの構成要素と動作例 3. 自作した検索エンジンの実装 ~ アルゴリズムとデータ構造、ライブラリ 4. おわりに ~ 検索エンジンを自作した感想

                          検索エンジン自作入門 Go Conference 2021 Spring
                        • 個人開発のサービスをVPSからVercelとCloud Runに移行した話

                          最近以下のような記事で個人開発のコストの話をよく見かけて、ちょうど自分も個人サービスをコストカットのためにVPSからほぼ無料なスタックに移行していたので構成とかを書いてみる。 前提としてはこんな感じ。 仲間内で使ってるだけのWebアプリケーション。月イチくらいしか使わない 技術スタックは技術的な実験とか学習を兼ねているので多少オーバースペックになるのはいい お金はなるべくかけたくない 移行前のスタック フロントエンドはNuxt.js、Netlify バックエンドはRailsでgRPC、envoyを噛ませてフロントエンドからはgRPC-Webで呼んでる VPS上にバックエンドのアプリケーションとDB(postgres)を動かしてる バックエンドは普通のRailsアプリにしてHerokuにするのが一番楽でお金もかからないんだけど、gRPC-Webを試してみたくて、そうするとproxyが必要にな

                            個人開発のサービスをVPSからVercelとCloud Runに移行した話
                          • サヨナラHeroku 〜アプリケーションの知識だけで本番稼働を実現できる無料のプラットフォームを追い求めて〜

                            はじめに Herokuの無料枠がもうすぐ消滅する(2022/11/28)ので、ソフトウェアエンジニアリングを勉強中の初学者の方々は、ポートフォリオの置き場所に頭を抱えることが確定しています。本稿では、その代替手段として、お金をかけず、かつなるべくアプリケーションの知識だけで、ポートフォリオの本番稼働を実現できる最適なプラットフォームを決定し、具体的な導入方法までを説明したいと思います。 オルタナティブHeroku まず海外にはオルタナティブHerokuを謳っているプラットフォームはそれなりにあります。その中で無料枠があってポートフォリオを公開するのに適していそうなプラットフォームは以下の通りです。 Cyclic Deta Fly.io Koyeb Railway Render AWSやGCPなどのメジャーなクラウドベンダーの中にも、それに類するサービスは存在しますが、場合によってはコンテナ

                              サヨナラHeroku 〜アプリケーションの知識だけで本番稼働を実現できる無料のプラットフォームを追い求めて〜
                            • Ruby 3.0.0 リリース

                              Posted by naruse on 25 Dec 2020 Ruby 3.0系初のリリースである、Ruby 3.0.0 が公開されました。 これまで、Ruby3に向けてパフォーマンスの改善、並行処理、静的解析という3つの目標を掲げて、活発に開発が行われてきました。特にパフォーマンスの改善については、Ruby 3x3 として「Ruby3はRuby2の3倍速くする」ことを目指してきました。 Ruby 3.0では開発の指標の一つとしてきたOptcarrotベンチマークで3倍を達成するとともに、以下のような取り組みが行われています。 benchmark-driver.github.io/hardware.html に書かれている環境で計測されました。 8c510e4095 が Ruby 3.0 として使われています。環境やベンチマークによっては3倍にならないかもしれません。 Ruby 3 では

                              • 本格RPGでプログラミング学習! PC用「コードクロニクル」本日より無料公開開始

                                  本格RPGでプログラミング学習! PC用「コードクロニクル」本日より無料公開開始
                                • GitHub、Rails 6がリリースされてからわずか9日で移行を完了。短期間で問題なく移行できた理由とは?

                                  GitHub、Rails 6がリリースされてからわずか9日で移行を完了。短期間で問題なく移行できた理由とは? 2019年8月17日、Ruby言語によるWebアプリケーションフレームワークの「Rails 6」がリリースされました。 Rails 6は、Railsアプリケーションでのメールやリッチテキストなどを扱いやすくした新機能に加えて、マルチデータベース対応、パラレルテスト機能なども追加されています。 参考:Rails 6.0正式版がリリース。Action Textでリッチテキスト対応、Action Mailboxでメール処理、マルチデータベース、パラレルテストなど新機能 GitHubはRails 6の正式リリースから約9日で、同社の本番システムをRails 6に問題なくアップグレードしたことをブログ「Running GitHub on Rails 6.0」で報告しています。 On Augu

                                    GitHub、Rails 6がリリースされてからわずか9日で移行を完了。短期間で問題なく移行できた理由とは?
                                  • Pryはもう古い、時代はIRB - k0kubun's blog

                                    僕はRubyで開発をする時は毎回Pryを使うくらいの熱狂的Pryユーザーだったのだが、PryはGemfileに書いてないと binding.pry できなくて不便。任意のgemをdefault gem化するgem default コマンドも作ったのだが、これをやるのすら面倒だと思っていた。 ある日、nobuさんがRubyに binding.irb という機能をいれた。Pryがdefault gemになるのを待つよりPryで僕が使う機能をIRBに全部移植してしまった方が早いのではないかと思い、4年前からPryの機能の移植活動を始め、今日僕がよく使う機能を全て移植し終えた。 その記念に、この記事ではIRBのPry互換の機能を紹介する。昔 今更聞けないpryの使い方と便利プラグイン集 という記事を書いたんだけど、この中で僕が毎日のように使うコマンドは全てIRBに移植したので、それを紹介する本稿を

                                      Pryはもう古い、時代はIRB - k0kubun's blog
                                    • フロントエンドのディレクトリ設計思想

                                      App Router への移行は「改善」となり得るのか?/ Can migration to App Router be an improvement

                                        フロントエンドのディレクトリ設計思想
                                      • 【爆速】React+Amplify+AppSyncでリアルタイム掲示板アプリを15分で作り上げる 〜これが最高のDeveloper Experienceだ〜 - Qiita

                                        【爆速】React+Amplify+AppSyncでリアルタイム掲示板アプリを15分で作り上げる 〜これが最高のDeveloper Experienceだ〜JavaScriptAWSReactamplifyAppSync Railsを使って15分でブログアプリを作り上げる動画が一斉を風靡したのはもう何年前でしょうか。 私はまだその頃Developerですらいなかったですが、いまその動画を見ても感動してしまいますね。 Webのアーキテクチャは進化し、API非同期通信、フロントエンドとバックエンドの分離、仮想DOMによるフロントエンド描画、GraphQLバックエンドの台頭といった具合に圧倒的な進化を遂げてきました。 では、この技術スタックを使ってRailsを使ってブログアプリを作り上げることと同様のことがどれだけの開発効率で実装できるのでしょうか? 今回はAmplifyCLIとReactを使っ

                                          【爆速】React+Amplify+AppSyncでリアルタイム掲示板アプリを15分で作り上げる 〜これが最高のDeveloper Experienceだ〜 - Qiita
                                        • 0063 号 巻頭言

                                          DDD を理解したいあなたのための DDD 入門以前 Rubyist Magazine 63 号をお届けする。 突然のお知らせで恐縮だが、日本 Ruby の会の主たる事務所が東京から北海道に移転した。それもあってあまりまとまった時間がとれず、11 月のうちに書くはずだったのが気がつくと 12 月も半ばを過ぎていたので、今回は以前書きかけていた文章を発掘してお茶を濁したい。 Ruby とは直接関係がなくて恐縮だが、Ruby に限らずソフトウェア開発では現在でもちょくちょく話題になることがある、DDD についての話である。 ドメイン駆動設計こと DDD は 2020 年代のソフトウェア開発でもよく話題にされるが、率直に言うとストレートにポジティブな評価が行われているとは言い難い。 どちらかというと、ある種マニアックで、対象分野が制限されており、また初心者にはとっつきにくいところがある手法と思わ

                                          • Neovimを一瞬でVSCode並みに便利にする - k0kubun's blog

                                            去年8年ぶりに vimrc を書き直した時はLSPの体験があんまりよくなくてLSPなしでNeovimを使い続けていたのだが、様々な言語のOSSをメンテする都合で用途に応じてIntelliJとVSCodeとNeovimの三刀流で暮らしていた結果、可能ならNeovimに寄せたいけどそれならLSPを使いたいなということになり、今回LSPの所を真面目に設定し直して、かなり良い体験になっている。 正直Neovimの設定はVSCodeのそれに比べたら面倒なんじゃないかという印象がありサボっていた節があるが、実際にやってみるとVSCodeと同程度に簡単に済む方法もあったので紹介したい。 何故Neovimなのか LSPの話の前に、タイトルだけ見た人がそもそも単にVSCode使えばいいじゃんと言いそうなので、どうしてIntelliJやVSCodeではなくNeovimに揃えようと思ったのかについて書いておく。

                                              Neovimを一瞬でVSCode並みに便利にする - k0kubun's blog
                                            • 『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う

                                              『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う David Bryant Copelandの『Sustainable Web Development with Ruby on Rails』を読んでいますが、この本めちゃめちゃ面白いですね。 Railsの設計で悩んだことのある人なら絶対読んで損はないというか、共感したり反発したりにやにやしたりで楽しめると思います。RailsというかWebアプリ開発の歴戦の勇士(正直あまり若くなく、つらい経験を重ねてきた生き残り的な人)が語るベストプラクティス感があります。 本書の構成 大きく3部構成です。 Introduction その名の通り導入です。本書の目的、Railsのアーキテクチャの紹介と、ビジネスロジックの話など。 「Sustainable」とは何か? とい

                                                『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う
                                              • クックパッドって技術的に何がすごいの?

                                                以前から技術系のニュースで話題になることがあって 最近のリストラ騒動で「高い技術があるのにもったいない」みたいなブクマもちらほら見るんだけど クックパッドって実際にそんな高い技術使うようなサイトかね 本筋は決まってるから刺激的で新しいものをバンバン作ってるって感じでもないわけじゃん しかもRailsでしょ(バカにしてるわけではありません) だれかクックパッドの技術のすごさ教えて ーーー追加ーーー インフラの技術がすごいのはわかった 自分はdevopsガン無視してきたんでインフラをゼロから作ったことはないんで、たぶんすごいんだろうと思う タグ統合に関しては発想が良いよねって感じかな? 技術に時間を投資してくれる企業だからできることかな で、インフラに関してだけど、ニコニコとかはてなが褒められてるのは見たことないわけよ ニコニコなんか国内発の大規模動画投稿・試聴サイトで一時期はものすごーい勢い

                                                  クックパッドって技術的に何がすごいの?
                                                • 数十億のレコードを持つ 5年目サービスの 設計と障害解決

                                                  Kaigi on Rails 2023

                                                    数十億のレコードを持つ 5年目サービスの 設計と障害解決
                                                  • WebのフロントエンドでもDockerで開発環境を構築する理由。(余談としての脱node依存開発) - Qiita

                                                    1.数ヶ月ぶりにビルドしたらエラーになる 開発中は問題がないのですが、数カ月ぶりにWebpackなりをつかってビルドしてみるとエラーがでる。 フロントエンド開発者なら一度は経験したことがあるのではないでしょうか? いろんな原因があると思いますが、以下のような条件で起こることが多いのではないでしょうか? ・複数のプロジェクトを開発する端末に直接配置している。 ・nodeenvなどのバージョン切り替えツールをいれずグローバルでnodeを使っている。 ・ライブラリをプロジェクト内で限定せずグローバルでつかっている。 要は、手元のMacやWindows、Ubuntuなど開発端末上に直接、複数のプロジェクトを配置して開発しつつ、nodeを共有したり、安易にバージョンアップとかしているとビルドができないなどのエラーが発生したりします。 2.nodeをつかったフロントエンドのビルドの脆さ (1)特定の団

                                                      WebのフロントエンドでもDockerで開発環境を構築する理由。(余談としての脱node依存開発) - Qiita
                                                    • TypeScriptでWebサービス開発(Apollo Server/Prisma/Next.js etc...)

                                                      最近開発しているBtoB SaaSサービスの技術スタックを、RailsからNode.jsに移行した。 これにより、フロントエンドもバックエンドも全てをTypeScriptで統一することができた。 特にNode.jsのWebバックエンドの構成について、まだまだ世の中に知見が少ない気がしているので記事にしておく。 Webバックエンド - Node.js(TypeScript) Nexus/Apollo Server (Webサーバー) GraphQLサーバーとして、Apollo ServerのコードファーストなアプローチでのラッパーであるNexusを使っている。 Railsからの移行を決断できたのも、Apollo ServerとPrismaにより、外部との通信が型付きで、かつ開発体験よく書けるようになたから、というのが大きくある。 数年前の段階だと、素のexpressを使ってWebサーバーを立

                                                        TypeScriptでWebサービス開発(Apollo Server/Prisma/Next.js etc...)
                                                      • シングルスレッドやマルチプロセスなどの並行処理の話について、 すぐに忘れてしまいます。 どうしたらもっと知識が定着すると思いますか? 色んなライブラリーでAPIサーバーを立ててパフォーマンスの差などを見てみたりするのですが、結局よくわかりませんでした。 | mond

                                                        シングルスレッドやマルチプロセスなどの並行処理の話について、 すぐに忘れてしまいます。 どうしたらもっと知識が定着すると思いますか? 色んなライブラリーでAPIサーバーを立ててパフォーマンスの差などを見てみたりするのですが、結局よくわかりませんでした。 フレームワークに頼って実装していると、そのフレームワークが内部でどの様な仕組みで並列または並行処理しているのかが理解できず、ただ使っているだけの状態になり得ます。 フレームワークの設計者からすると、プログラマがそれらを気にしなくても利用できるというのがプロジェクトのゴールでもあるので、それはそれで正しいのですが「並列処理」や「並行処理」を理解したいというモチベーションでは逆にそれが邪魔をしてしまうかもしれません。 並行処理や並列処理を学ぶのであれば、API サーバ等といった物ではなく、コード片で学び始めるのが良いと思います。 例えば Rub

                                                          シングルスレッドやマルチプロセスなどの並行処理の話について、 すぐに忘れてしまいます。 どうしたらもっと知識が定着すると思いますか? 色んなライブラリーでAPIサーバーを立ててパフォーマンスの差などを見てみたりするのですが、結局よくわかりませんでした。 | mond
                                                        • とあるカンファレンスにでてきた「ソフトウェアはなにもしないと壊れる」という言葉に深くうなずく皆様「これは名言」「なににでも言える」

                                                          安川要平/Yohei Yasukawa @yasulab #RubyKaigi 2022 という国際カンファレンスのトークで出たお話しです!こういったトークも聞ける #RubyKaigi、2023年は松本で開催予定なのでぜひ遊びに来てください!!ね!!!💎✨ RubyKaigi 2022 rubykaigi.org/2022/ 2022-09-10 19:23:45

                                                            とあるカンファレンスにでてきた「ソフトウェアはなにもしないと壊れる」という言葉に深くうなずく皆様「これは名言」「なににでも言える」
                                                          • Zennのバックエンドを Google App Engine から Cloud Run へ移行しました(無停止!YES!)

                                                            Zennは、Next.js + Ruby on Rails(APIモード)を Google Cloud の App Engine へデプロイして稼働していました。最近、Rails の実行環境を App Engine Flexible から Cloud Run へ移行したので、その記録を残します。 ロードバランサーのバックエンドサービスを付け替えることで実現 最初に、どうやって移行したかです。Zennのバックエンドはもともとロードバランサーで構成されていました。以下の図のように、ロードバランサーの Backend Service より背後を切り替えることにより実現しています。Cloud Run とそこにアクセスするための Serverless NEG はあらかじめ稼働させておくことで、ダウンタイムなしで切り替えられました。 参考:負荷分散 | Google Cloud https://clo

                                                              Zennのバックエンドを Google App Engine から Cloud Run へ移行しました(無停止!YES!)
                                                            • Pythonが速度改善に本気出すと聞いたので恒例のたらい回しベンチをとってみたら、RubyがYJITですごく速くなっていて驚いた話 - Smalltalkのtは小文字です

                                                              2022-09-09改訂: gcc バージョンが古すぎたのと、C が内部計測でなかった点を改め計測しなおしました。結果、Rust は C より速くはなくなりました。紛らわしいことで、ごめんなさい。また、gcc のバージョンアップに伴い、Python および Ruby についてはビルドと計測をしなおしたので、これらも少し速い値に変わっています。この点もどうぞあしからず。 2022-09-10追記:ご要望のあった Python numba.njit 使用時と Go の結果を追加しました。PHP は JIT 有効化が面倒だったので断念しました^^; 2022-09-10追記2:C の計測で clock() を使うのはフェアではないという指摘がありましたので、念のため clock_gettime() を使用したコードに差し替えました。結果に大きな差はありません。 2022-09-10追記3:PHP

                                                                Pythonが速度改善に本気出すと聞いたので恒例のたらい回しベンチをとってみたら、RubyがYJITですごく速くなっていて驚いた話 - Smalltalkのtは小文字です
                                                              • Pythonは人気の言語です。しかし、その割にPythonが気軽に利用できるレンタルサーバーは少ない感じがします。何故、レンタルサーバーはPythonの利用に消極的なのですか?

                                                                回答 (9件中の1件目) そうですか? さくらのレンタルサーバーやXserverでは使えるし、レンタルサーバーでpythonだけ使えないっていうことに遭遇したことないです。共用レンタルサーバーならruby、perl、pythonはひと揃い入ってるものという印象なのですが。 私のレンタルサーバーのチョイスが偏ってるだけという可能性はなのは否定しませんが、ちなみに使えなかったのってどこの何プランでした?

                                                                  Pythonは人気の言語です。しかし、その割にPythonが気軽に利用できるレンタルサーバーは少ない感じがします。何故、レンタルサーバーはPythonの利用に消極的なのですか?
                                                                • 新規事業の決済機能としてStripeを導入する上で考えたこと全て - Timee Product Team Blog

                                                                  こんにちは、タイミーデリバリー開発チームの宮城です。 この記事はJP_Stripes Advent Calendar 2020の10日目の記事です。 タイミーデリバリーはデリバリーを頼みたい人が安い価格で注文でき、飲食店も安い利用料で注文を受けられるデリバリープラットフォームです。 その決済機能として今回はStripeを導入しました。 この記事では、決済基盤の技術選定/Stripeを活用したクレジットカード決済と各事業者への入金までの流れ/Railsでの具体的な実装内容 をそれぞれタイミーデリバリーでの活用事例として紹介します。 導入にあたった背景 決済基盤の技術選定基準 Stripeでできること PCI DSSについて 利用したStripeの機能 Custom Account Stripe SDKを利用したRails/Swiftでの実装内容 PaymentIntent Customer

                                                                    新規事業の決済機能としてStripeを導入する上で考えたこと全て - Timee Product Team Blog
                                                                  • 僕がDoorkeeperを売却した理由について

                                                                    This article is also available [in English](/articles/why-i-sold-doorkeeper). 2010年にローンチし、2013年に法人化、2016年に黒字化した[Doorkeeper](https://www.doorkeeper.jp)を売却しよう、と決意したタイミングを、僕ははっきりと覚えています。それは、ある金曜日の朝、40℃の熱で保育園から帰宅した2歳の息子の面倒を見ていた時でした。 子供の熱や病気はよくあることですが、その朝のPagerDutyのアラートもまさに同様で、DoorkeeperのKubernetesマスターの一つが正常に動作しておらず、注意を払う必要がありました。種類が異なる二人の「わが子」が、同時に僕の関心を必要としていて、今思えば笑える話ですが、その時はいっぱいいっぱいに感じました。 なんとかその日を乗

                                                                      僕がDoorkeeperを売却した理由について
                                                                    • エンジニアの強力な付加価値スキルとしての発信力 - An Epicurean

                                                                      エンジニアに限らず、BlogやTwitter、OSS、登壇など、対外発信力がキャリアにおける強力な付加価値になることは知られるようになりました。 英語力がそうであるように、発信力は必ずしも必須スキルではありません。英語ができなくても活躍しているエンジニアはいくらでもいます。同時に英語がそうであるように発信力が有力な付加価値をもたらすスキルであることは事実です。 私自身、発信力が強みになっている分バイアスがあるので、あまりそのスキルの価値を過大評価して他人に押し付けるようなことはしたくありません。それに、エンジニアだったら発信力などではなく、純粋な技術力で評価されたいよな、という青臭い気持ちもまだどこかにあります。 ですから、全員が発信すべきだとは考えません。ただ、対外発信に興味を持っている人は後押しはしたいし、そういう人が増えてほしいとは強く思っています。なぜならば、それが単純に楽しいから

                                                                        エンジニアの強力な付加価値スキルとしての発信力 - An Epicurean
                                                                      • DMMを退職しました - アジャイルSEの憂鬱

                                                                        退職エントリを書くつもりはあまり無かったけど、はてブに退職エントリが多くあがっていて書く気力が高まったので書いてみた。 DMMに入社した理由 去年の5月に入社しました。 大きな企業の便利な社内ツール・サービスを見たい 色んな種類のサービスの裏側を見たい Railsアプリをゼロから作る機会 仕事で rails new できる プロジェクト初期からレビューできる あたりに魅力を感じて内定を承諾した。 DMMでやっていたこと とあるサービスのリプレイス案件*1のサーバサイドエンジニアを担当していた。 既存のデプロイ方法の修正 AWSのアーキテクチャ設計 APIや管理画面をRailsで実装 RubyやRailsに関するレビュー(他メンバーがあまりRailsに慣れていなかった) Terraformを使ったインフラ業 死活監視の設定 タスク管理 この案件、入社して2ヶ月でデスマの気配を感じていた。 自

                                                                          DMMを退職しました - アジャイルSEの憂鬱
                                                                        • 真・プログラミングスクールに通うくらいならこの本を読め10選 - ニート向けソフトウェアエンジニアリング塾

                                                                          概要 前回の記事(プログラミングスクールに通うくらいならこの本を読め10選)は難しすぎたらしい プログラミング未経験者や子どもに教えるつもりで本を選んでみた さすがにこれらの本は自分で買って中身は読んでません… タイトルと目次を見て良さそうな本を紹介しています 初学者向けなんだからプログラミング言語絞れよという意見には反対です 初学者こそ複数のプログラミング言語に触れてみて、プログラミング言語の共通パターンや差異を理解していくほうが、一見遠回りに見えて近道だと思っているからです 初学者はとりあえずWebアプリ開発やっとけという意見にも反対です Web開発、ゲーム開発、アプリ開発などいろいろ触れてみて楽しいと思えたことを突き詰めていくのが良いように思います 第一位 スラスラ読める JavaScript ふりがなプログラミング https://amzn.to/3oi9TsO 選定理由 登場する

                                                                            真・プログラミングスクールに通うくらいならこの本を読め10選 - ニート向けソフトウェアエンジニアリング塾
                                                                          • Railsで秒間1000コミットを捌くにはどうすればいいのか (Kaigi on Railsのフリースペースより) - joker1007’s diary

                                                                            先日のKaigi on Rails中の雑談として @ima1zumi さんから、RDBに対して秒間1000コミットぐらいで処理が詰まってる場合ってどうするのが良いのか、という質問を受けまして、雑談の中で色々答えてたんですが、せっかくだから記事にまとめておこうと思います。 ちょっとしたKaigi Effectって感じですね。 今回のKaigi on Railsのトークの中では、 数十億のレコードを持つ5年目サービスの設計と障害解決 by KNR - Kaigi on Rails 2023 の話なんかは割と関連がありますね。ユーザーの行動履歴というのは、ユーザー数 * N * タイムスパンで増えていくレコードなので、書き込みとデータ量が爆発しがちです。トランザクションで堅牢に処理しなければいけないケースもそこまで多くないので、RDBだと書き込みに対する処理が過剰なケースが多い。実際のところこの

                                                                              Railsで秒間1000コミットを捌くにはどうすればいいのか (Kaigi on Railsのフリースペースより) - joker1007’s diary
                                                                            • SPA+SSR+APIで構成したWebアプリケーションのセッション管理 - Pepabo Tech Portal

                                                                              カラーミーショップ サービス基盤チームのkymmtです。この記事では、サーバサイドレンダリングするシングルページアプリケーションとAPIサーバからなるWebアプリケーションのセッション管理方法について紹介します。 アプリケーションの構成 構成の概要 今回は例としてEC事業部で提供するカラーミーリピートをとりあげます。構成としては、Railsで作られたAPIサーバ1と、Vue.jsで作られたシングルページアプリケーション(SPA)からなります。また、SPAはExpressが動くフロントエンドサーバでサーバサイドレンダリング(SSR)します。APIサーバはSPAかフロントエンドサーバだけが呼び出します。各ロールはサブドメインが異なります。 APIサーバでセッションIDを持つCookieを発行し、Redisを用いてセッション管理します。また、APIサーバへのセッションが有効なリクエストはフロント

                                                                                SPA+SSR+APIで構成したWebアプリケーションのセッション管理 - Pepabo Tech Portal
                                                                              • 【前編】開発内製化の5年の軌跡。「消耗戦の悪魔のループ」をどう乗り越えたのか - エス・エム・エス エンジニア テックブログ

                                                                                大手企業を筆頭に、エンジニア組織の外注依存から内製化にシフトしようとする企業の報道を目にすることが増えてきました。 一方で、実際にエンジニア組織の内製化を進めようとするには、事業構造、事業戦略、企業文化、人材などの所与の条件を踏まえて、最適な方法を実践することが求められる非常に難易度の高い取り組みです。 実際にケースとしても世の中に少ないことなどもあり、エンジニア組織の内製化に関する方法論について紹介されたコンテンツは少なく、各社が手探りの状態でこの内製化に取り組んでいると思われます。 そこで、まさにこれから内製化という難儀な仕事に向き合う技術組織の責任者の方の一助になればと思い、エス・エム・エスが2015年よりエンジニア組織の内製化に取り組んできたプロセスとそこで得られた反省と学びについてを共有したく、50人超のエンジニア組織で技術責任者を務める田辺に内製化の全貌を聞きました。 1. 簡

                                                                                  【前編】開発内製化の5年の軌跡。「消耗戦の悪魔のループ」をどう乗り越えたのか - エス・エム・エス エンジニア テックブログ
                                                                                • ひろゆきがRubyの父・まつもとゆきひろに聞く「弟子募集しないんですか?」 - エンジニアtype | 転職type

                                                                                  日々プロダクトに向き合うエンジニアのみなさんにヒントをお届けすべく、日本最大の電子掲示板『2ちゃんねる(現5ちゃんねる)』を立ち上げた、ひろゆきさんを迎えた本連載。国内外のプロダクトを、ひろゆきさんはどうみるのか? ひろゆきさんが開発者ならどこをブラッシュアップするのか?そんなことを、毎回話題のプロダクトを取り上げながらお届けすることでプロダクト開発で大切なことを探っていきます。 今回で3回目となるこちらの連載。1回目、2回目と若きエンジニアを論破してしまう回が続いたので「次回は論破しないひろゆきもみてみたい…」という気持ちに駆られてきた編集部一同。そこで、ひろゆきさんに聞いてみました。

                                                                                    ひろゆきがRubyの父・まつもとゆきひろに聞く「弟子募集しないんですか?」 - エンジニアtype | 転職type