タグ

RubyとGoに関するYassLabのブックマーク (10)

  • Goで作られたシステムをRuby on Railsに移植しています - STORES Product Blog

    STORES でエンジニアをしている片桐です。 STORES では店舗運営に関するさまざまなプロダクトを提供しています。これらのプロダクトは元々別の会社で運営されてきた完全に異なるプロダクト群で、アカウント体系から全く異なるシステムになっていました。近年はこれらのシステムを格的に統合する取り組みを進めてきており、その中で統合のためにいくつかのシステムが新たに作成されてきました。 ある程度統合が進み、うまくいったところ・いかなかったところが見えてきた中で、これまでに作ったシステムの技術選定・システムの役割に対する課題感が見えてきました。 現在弊社ではこの課題を解決していくプロジェクトを進めています。その中の1つで、Goで作られたシステムをRuby on Railsで作られたシステムに移植する作業を行なっているので、今回はそれについて紹介させていただきます。 移植元のシステムの課題 今回別シ

    Goで作られたシステムをRuby on Railsに移植しています - STORES Product Blog
    YassLab
    YassLab 2025/06/28
    "移植元のシステムの課題: 高パフォーマンス・省メモリであることのメリットを享受できていない / 一般的なweb applicationにおいては極端な高負荷にならない限り言語の遅さがボトルネックになるケースはあまり見られない"
  • 【2024年6月】フリーランス案件の単価における市場動向【フリーランスボード】

    INSTANTROOM株式会社(社:東京都渋谷区、代表取締役:曽根弘介)が運営する、フリーランスエンジニアITフリーランスの案件検索サイト「フリーランスボード(https://freelance-board.com)」は2024年6月のフリーランス案件の単価における市場動向の調査結果を発表いたします。 ◆数字で見る「フリーランス市場動向」 フリーランスボードでは2024年6月6日時点の141,500件の掲載案件を対象に開発言語・フレームワーク・職種別の月額平均単価を調査いたしました。 ■フリーランス案件の月額平均単価 2024年6月のフリーランス案件の月額平均単価は71.5万円、最高単価は320万円です。 ▼掲載中のフリーランス案件はコチラから https://freelance-board.com/jobs ■開発言語別の月額平均単価 開発言語別の月額平均単価は上表の結果となりました

    【2024年6月】フリーランス案件の単価における市場動向【フリーランスボード】
    YassLab
    YassLab 2024/06/22
    "掲載案件数は141,500件 / 言語別ではGo、Scala、Rubyが高単価の上位 / 高速処理や開発効率の高さが評価 / フレームワーク別ではRSpec、Ruby on Rails、Sparkが高単価でありテスト自動化や開発の生産性向上、ビッグデータ処理に注目"
  • 【2024年4月】フリーランス案件の単価における市場動向【フリーランスボード】

    INSTANTROOM株式会社(社:東京都渋谷区、代表取締役:曽根弘介)が運営する、フリーランスエンジニアITフリーランスの案件検索サイト「フリーランスボード(https://freelance-board.com/)」は2024年4月のフリーランス案件の単価における市場動向の調査結果を発表いたします。 ◆数字で見る「フリーランス市場動向」 フリーランスボードでは2024年4月30日時点の111,626件の掲載案件を対象に開発言語・フレームワーク・職種別の月額平均単価を調査いたしました。 ■フリーランス案件の月額平均単価 2024年4月のフリーランス案件の月額平均単価は71.0万円、最高単価は280万円です。 ▼掲載中のフリーランス案件はコチラから https://freelance-board.com/jobs ■開発言語別の月額平均単価 開発言語別の月額平均単価は上表の結果となりま

    【2024年4月】フリーランス案件の単価における市場動向【フリーランスボード】
    YassLab
    YassLab 2024/06/22
    "言語別の月額平均単価ではGo、Scala、Rubyが上位を占め、高速処理や開発効率の高さが評価 / フレームワーク別ではRSpec、Spark、Ruby on Railsが高単価でありテスト自動化やビッグデータ処理、生産性向上に注目が集まっています"
  • Goで作ったシステムをRubyでリプレイスすることを検討してみた

    はじめに 弊社にはGoで作ったシステムが存在しますが、作られてから数年が経過して、メンテナンスも十分にできていない状況でした。 そこで、このシステムをリファクタリングして生産性を上げようという結論になりました。 リファクタリングにあたり、Goのままで行くのか、弊社でよく使われているRubyで行くのかを検討してみましたので、その過程を紹介したいと思います。 Rubyでリプレイスしようと思った理由 Goで動いてて言語やライブラリのバージョンアップなどメンテナンスがされてない部分はありますが、 そこを解消すればGoのままで行った方が良いのでは?と思うかもしれません。 しかし、あえてRubyでリプレイスしようと思うに至ったのは以下の点があります。 Rubyの方が開発速度があがりそう Goのリファクタリングをするのに時間がかかりそう Goのリファクタリングと機能追加でコード修正箇所が被るとスケジュー

    Goで作ったシステムをRubyでリプレイスすることを検討してみた
    YassLab
    YassLab 2024/05/01
    "実装に掛かった時間は1日程度 / Goのコード量は1,000行を超える / Rubyでは300行ほど / やはりAPIとDBの処理時間が全体の大半を占めている / 処理時間に大きな差が発生してない / CPUリソースは多く使いそうなのでその点は考慮”
  • 『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか

    2024/04/24(Wed)に行われたGotanda.rb#58の登壇資料です。 https://gotanda-rb.connpass.com/event/315058/ 『Railsオワコン』と言われる時代に、なぜブルーモ証券はテックスタックの1つとしてRailsを選んだのかの解説資料です。

    『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
    YassLab
    YassLab 2024/04/25
    "お金以外の部分(アプリのAPIサーバ、管理画面)=Ruby on Rails - ORMやmigration、テストのフレームワークとか個別に選ぶ必要がない:考慮・調査工数を大幅に削減できる / お金を取り扱う部分=Golan(Gin with Ent)"
  • What it was like working for GitLab

    I joined GitLab in October 2015, and left in December 2021 after working there for a little more than six years. While I previously wrote about leaving GitLab to work on Inko, I never discussed what it was like working for GitLab between 2015 and 2021. There are two reasons for this: I was suffering from burnout, and didn't have the energy to revisit the last six years of my life (at that time)I w

    YassLab
    YassLab 2024/02/10
    "Languages such as Go, Rust or Node.js might be more efficient than Ruby, but none have a framework as capable as Ruby on Rails. Python/Django might be an option, but I suspect you'll run into similar problems as Ruby/Rails...don't have any regrets working for GitLab, and would do it all over again"
  • M:Nスレッドによる軽量な並行処理への挑戦 | gihyo.jp

    STORES株式会社でRubyインタプリタ開発をしている笹田です。お正月に新年早々おでんを腐らせてしまったので、今年は作ったらさっさとべることを目標にしたいと思います。 この記事では、主に私が開発している、Ruby 3.3で導入されたM:Nスレッドについて紹介します。 M:Nスレッドはスレッドの性能向上のために導入されました。M個(大きな数)のRubyスレッドをN個(十分小さい数)のネイティブスレッドだけで実行するというモデルで、スレッド管理のオーバヘッドを抑えられる方法として知られており、ほかにもGo言語などで利用されています。今後、大量のネットワーク接続を処理するといったことをRubyで記述することを検討したい場面が出てくるしれません。そのようなときにRubyでスイスイとプログラムが書ければいいなと思っており、その一貫です。最終的には、Ractorを用いた軽量な並列・並行アプリケーシ

    M:Nスレッドによる軽量な並行処理への挑戦 | gihyo.jp
    YassLab
    YassLab 2024/01/30
    "M:Nスレッドはスレッドの性能向上のために導入 / M個(大きな数)のRubyスレッドをN個(十分小さい数)のネイティブスレッドだけで実行するというモデルで、スレッド管理のオーバヘッドを抑えられる / Go言語などで利用"
  • シングルスレッドやマルチプロセスなどの並行処理の話について、 すぐに忘れてしまいます。 どうしたらもっと知識が定着すると思いますか? 色んなライブラリーでAPIサーバーを立ててパフォーマンスの差などを見てみたりするのですが、結局よくわかりませんでした。 | mond

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

    シングルスレッドやマルチプロセスなどの並行処理の話について、 すぐに忘れてしまいます。 どうしたらもっと知識が定着すると思いますか? 色んなライブラリーでAPIサーバーを立ててパフォーマンスの差などを見てみたりするのですが、結局よくわかりませんでした。 | mond
    YassLab
    YassLab 2023/12/06
    “例えば Ruby で Thread と Fiber を使って簡単な処理を実装してみるのが理解を早めると思います。/ ※ Go でも並行処理を学ぶことはできますが、Go の goroutine はスレッドでありスレッドではない、という特性がある”
  • 米国家安全保障局、CやC++からメモリ安全なプログラミング言語への移行を推奨する文書を公開

    同ガイダンスは、近年のサイバーセキュリティ脅威の多くに利用されている、ソフトウェアのメモリ安全性の悪用を防ぐことを目的としており、組織におけるソフトウェアの開発にあたっては、可能な限りメモリ安全なプログラミング言語を使用するとともに、コンパイラのオプション、ツールのオプション、OS構成といったコードの安全性を高める対策を施すことで、保護を強化することを推奨している。 メモリ安全でないプログラミング言語としては、一般的に使用されているCやC++を挙げており、これらのプログラミング言語はメモリ管理において高い自由度と柔軟性を提供する一方で、メモリ参照が安全に行われているかどうかのチェックはプログラマに大きく依存していると指摘する。 ソフトウェア解析ツールを使用すれば、ソースコード中のメモリ管理における問題の多くを検出できるほか、OSによっては不正なメモリの利用を防ぐオプションも用意されているも

    米国家安全保障局、CやC++からメモリ安全なプログラミング言語への移行を推奨する文書を公開
    YassLab
    YassLab 2022/11/15
    "可能な限りメモリ安全なプログラミング言語を使用することを求めている / メモリ安全なプログラミング言語の一例として、C#、Go、Java、Ruby、Rust、Swiftなどを挙げる"
  • RubyファイルにGoコードを書いてRuby Nextで動かす(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: A no-go fantasy: writing Go in Ruby with Ruby Next — Martian Chronicles, Evil Martians’ team blog 原文公開日: 2021/11/09 原著者: Svyatoslav Kryukov、Travis Turner サイト: Evil Martians -- ニューヨークなどに拠点を構えるRuby on Rails開発会社です。良質のブログ記事を多数公開し、多くのgemのスポンサーでもあります。 日語タイトルは内容に即したものにしました。 no-go: うまくいかない、立入禁止 Rubyは素晴らしい言語です。私たちはRubyの読みやすさ、柔軟性の高さ、そして開発者中心主義を愛しています。しかしここ火星ではGo言語も愛されています。Goにも

    RubyファイルにGoコードを書いてRuby Nextで動かす(翻訳)|TechRacho by BPS株式会社
    YassLab
    YassLab 2022/10/04
    “ #Ruby を文字通り心ゆくまで魔改造できるなら、とことんやるまでです。徹底的に遊び倒し、実装を現実世界で試し、最高のアイデアを得たら Ruby Issue Tracker に提案してみましょう”
  • 1