並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 506件

新着順 人気順

コンパイラの検索結果1 - 40 件 / 506件

  • エンジニアが給料を12倍にする方法 - k0kubun's blog

    はてブの人気エントリーに日本のエンジニア達は海外に出なければいけないという記事があった。 カナダ在住で経験年数4年のソフトウェアエンジニアで年収1600万円の方らしく、 日本より海外の方がソフトウェアエンジニアの給料が一般に高いので海外に行くべきという話が書かれている。 実際僕も居住地域による給与差を利用すべく渡米し、先月の記事 では新卒から数えて8年で年収が12倍になっていた話も紹介した。 一方、年収1600万円であれば海外に出なくても稼げると思っているので、 国内にいてもできそうなものも含め、ソフトウェアエンジニアとして給料を上げる上で過去に活用したハックを紹介していきたい。 昇給履歴 新卒入社 僕が新卒で入社した会社の当時の初年度給与は450万円だった (公開情報)。 大学の4年間はずっとアルバイトとしてソフトウェアエンジニアをやっていて、 3社を渡り歩いて時給は800〜1350円と

      エンジニアが給料を12倍にする方法 - k0kubun's blog
    • 大学で読んだ情報科学関連の教科書 - ジョイジョイジョイ

      先日、博士(情報学)になりました。学部と大学院をあわせた 9 年間で読んだ情報科学関連の教科書・専門書を思い出を振り返りつつここにまとめます。私は授業はあまり聞かずに独学するタイプだったので、ここに挙げた書籍を通読すれば、大学に通わなくてもおおよそ情報学博士ほどの知識は身につくものと思われます。ただし、特に大学院で重要となる論文を読み書きすることについては本稿には含めておりません。それらについては論文読みの日課についてや論文の書き方などを参考にしてください。 joisino.hatenablog.com 凡例:(半端)とは、数章だけ読んだ場合か、最後まで読んだものの理解が浅く、今となっては薄ぼんやりとしか覚えていないことを指します。☆は特におすすめなことを表します。 学部一年 寺田 文行『線形代数 増訂版』 黒田 成俊『微分積分』 河野 敬雄『確率概論』 東京大学教養学部統計学教室『統計学

        大学で読んだ情報科学関連の教科書 - ジョイジョイジョイ
      • 発達障害者向けAIサポートツールgoblin.toolsを紹介|パトル | AI x Biz

        こんにちは、パトルです。 今回は、米国で話題になったgoblin.toolsを紹介します。 goblin.toolsは、主にニューロダイバーシティ(神経多様性)のある人々が苦労するタスクを手助けするためにデザインされたツールです。フリーランスのソフトウェアエンジニアであるBram De Buyserによって作成・管理されています。 ツール自体は英語ですが、日本語入力すれば日本語でも対応できます。シンプルなツールなので英語が読めなくても使うことはできます。 goblin.toolsの概要goblin.toolsには、6種類のツールがあります。簡単に概要を記載します。 マジックTODO・・・やりたいことを細かいタスクに分割してくれる フォーマライザー・・・伝えたいことを適切な表現に変えてくれる ザ・ジャッジ・・・文章に含まれる感情を説明してくれる エスティメーター・・・タスクにかかる時間を算出

          発達障害者向けAIサポートツールgoblin.toolsを紹介|パトル | AI x Biz
        • 「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita

          TL;DR Shift_JISにしただけでコンパイラが通らなくなる恐ろしい事件とその回避法について。 \ (¥)のASCIIコードは0x5c 表、能は良くない UTF-8は神 2023/12/06追記 誤りがあったので訂正します。こんな読まれると思ってなかったので正直ちょっとびっくりしていますが、いろいろコメントありがとうございました。(ツイート等全て拝見しました。) Shift_JISが悪いわけではない(デフォルトのエンコーディング設定の問題)→追記しました UTF-8にはUTF-FSSという仕様でこの問題が回避されている→マジでタメになる知識ありがとうございます OSによってデフォルトのエンコーディング設定が異なるせいで、デフォルト環境での動作がOSにより異なる→なるほど?(調査中) CRLFとLF問題では→なるほど?(調査中) そんな問題何を今更→UTF-8が出てから生まれたからです

            「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita
          • 堀江貴文氏が考える、いま起業するならこの分野「ITなんかもう超絶レッドオーシャン」:朝日新聞GLOBE+

            堀江貴文さんとアニス・ウッザマンさんの対談の様子 堀江さんは7月6日、京都大学で開かれたスタートアップの世界的なピッチコンテスト「スタートアップワールドカップ2023」の国内予選にゲストとして登壇。主催するアメリカのベンチャーキャピタル「ペガサス・テック・ベンチャーズ」代表、アニス・ウッザマン氏と対談した。 テーマは「日本のベンチャー企業が世界で輝くために」で、堀江さんは自身の起業経験や、今後、世界市場でも競争力がある分野について語った。対談の主な内容は次のとおり。(以下、敬称略) 対談した堀江貴文さん(右)とアニス・ウッザマンさん=7月6日、京都大、関根和弘撮影 ウッザマン 堀江さんはこれまで色んな企業を作ってきました。大学にいたときにも作ったと思うんですが、起業したきっかけや、そのときどんな挑戦があって、どう乗り越えたのか、聞かせて下さい。 堀江 僕は東京大学の在学中に会社を作ったんで

              堀江貴文氏が考える、いま起業するならこの分野「ITなんかもう超絶レッドオーシャン」:朝日新聞GLOBE+
            • 技術に興味がなくて何が悪い? - Qiita

              TL;DR 技術に興味がなくても、エンジニアとして生きていくことはできる。 対象読者 自分を技術に興味がない側の人間だと思う方 筆者について Webアプリケーションの開発エンジニア。主な仕事はプログラム詳細設計、画面設計、コーディング。 技術にあまり興味がない。 初めに エンジニア界隈では、以下のような主張がしばしば見られる。 休日に勉強するべきである。 最新の技術動向は常にチェックするべきである。 技術イベントには参加するべきである。 毎日コードを書くべきである。 レガシーな技術ではなく、モダンな技術を習得するべきである。 etc... そしてこれらの"べき論"がさらに加速すると、 「技術に興味がない人はエンジニアに向いていない」 という主張すら出現し、それに同調する声も少なくない。 最近、とあるSNSで以下のようなやり取りを見かけた。 駆け出しエンジニアの質問 休日に勉強するべきですか

                技術に興味がなくて何が悪い? - Qiita
              • 個人開発のアプリ「暗記メーカー」が100万ダウンロードされるまで|ymdkit

                そうして「メモ帳」「天気予報」「パズルゲーム」... など色々アプリを作っている中で「自分のテスト勉強のためのアプリが欲しい」となり、自作の単語帳アプリを開発した。これが「暗記メーカー」の原型となっている。 また、書籍にアプリのリリース方法についても記載されていたこともあり、この頃からPlayStoreへのアプリの公開を始めた。 今でこそPlayStoreでは「20人のテスターを集めて14日間テストする」「開発者の身元確認」といったアプリを出すまでの工数がかかるものとなっている。ただ、当時は(確か)そういった制限は存在せず$25の登録料を払えばリリースし放題だったので、アプリが完成したらとりあえずストアに公開していた。 基本的に出したアプリは鳴かず飛ばずだったが、その中で「暗記メーカー」だけは定期的にダウンロードが発生していたため、ユーザからのフィードバック等を参考にアップデートを続けるよ

                  個人開発のアプリ「暗記メーカー」が100万ダウンロードされるまで|ymdkit
                • ブラウザの仕組み  |  Articles  |  web.dev

                  序文 WebKit と Gecko の内部オペレーションに関するこの包括的な入門情報は、イスラエルのデベロッパー Tali Garsiel 氏による多くの研究の成果です。数年にわたり、ブラウザ内部に関するすべての公開データを確認し、ウェブブラウザのソースコードを読むことに多くの時間を費やしました。彼女は次のように書いています。 ウェブ デベロッパーは、ブラウザ操作の内部構造を学ぶことで、より的確な意思決定を行い、開発のベスト プラクティスの背後にある理由を知ることができます。これはかなり長いドキュメントですが、時間をかけてじっくり読むことをおすすめします。やったら嬉しいよ。 Chrome デベロッパー リレーションズ、Paul Irish はじめに ウェブブラウザは、最も広く使用されているソフトウェアです。この入門編では その仕組みを解説しますアドレスバーに「google.com」と入力し

                  • スレッドとプロセスの違いを完全に理解する

                    はじめに こんにちは、FarStep です。 プログラミングを学ぶ中で、「プロセス」と「スレッド」という言葉を耳にしたことがある方は多いと思います。 しかし、これらの違いを明確に説明できる自信がない方も多いのではないでしょうか。 本記事では、プロセスとスレッドの違いについて、エッセンスを抽出して 解説します。 説明を簡潔にしましたので、本記事は 5 分程度で読み終えることができます。 本記事の内容を自分の言葉で説明できるようになれば、プロセスとスレッドの違いの理解は十分でしょう。 それでは、始めます 🚀 プログラムとは プロセスとスレッドの違いを理解する前に、まずは「プログラム」について理解しましょう。 プログラムとは、プログラミング言語で書かれた一連の命令 のことです。 プログラミング言語の例としては、以下のようなものがあります。 C 言語 Java Python Ruby JavaS

                      スレッドとプロセスの違いを完全に理解する
                    • キャリアハックの奇行 - Software Transactional Memo

                      エンジニアの奇行 嚢中の錐という言葉がある。有能な人物は自ずと傑出していくという意味だが、有能さとは例えば学歴の高さとは一致しない。 たとえMIT卒であろうとも大成するとは限らないし、ましてや入試の点数などで見れる人間の側面は限定的である。 企業などで採用する側からしてみたら当然ながら採用後の活躍を期待して雇用するのであり、入社をゴールとしてそれ以降働かなくなる人は望ましくないし、学歴や入試の点数によってそういう人かどうか判定する事はできない。 活躍という観点で言うと長いキャリアにおいてより重要となるのはキャリア開始時での能力の高さよりも、険しく長い道のりを自己メンテナンスしながら歩み続けられる根気の強さが重要とされている。その根気の源泉は執着だったり崇拝だったり妄信だったりトラウマだったり原体験だったり人によって様々だが、ここではひっくるめて「やる気」と簡略化して呼ぶことにする。 さて「

                        キャリアハックの奇行 - Software Transactional Memo
                      • 自作PC2023: Ryzenをやめた - k0kubun's blog

                        Ryzenはゲーム用CPUとしては特に問題ないのだが、 ソフトウェア開発においてはIntelのCPUに比べて不便なポイントがいくつかある。 日々業務で使っていてあまりにもストレスが溜まるので、CPUをIntel Core i7に変更した。 このマシンは8年前に組んだ自作PC なのだが、使っていて不便を感じたパーツを差し替え続けた結果、 今回のアップデートで全てのパーツが当時とは違うものに変わったため、 それぞれ古い方のパーツで不便だったポイントなどを紹介したい。 仕事で使う自作PC 社内のサービスをいじる時は会社から貸与されているM1 MacBook Proを使うのだが、このマシンは不便である。 Rubyのビルドは自分のLinuxのマシンに比べ2倍以上遅いし、Reverse Debuggingができるデバッガが存在しないし、 慣れたツールであるLinux perfも使えないし、Podman

                          自作PC2023: Ryzenをやめた - k0kubun's blog
                        • 2023 年に読んでよかった本

                          2023 年に読んでよかった本 2023.12.30 年末なので 2023 年のまとめっぽい記事を書きたくなりました。今年は 1 年間でおおよそ 300 冊の本をよんだようです(そのうち 3 割ほどはラノベなのですが...)。その中でも特に印象に残った本を紹介します。 年末なので 2023 年のまとめっぽい記事を書きたくなりました。 今年は 1 年間でおおよそ 300 冊の本をよんだようです(そのうち 3 割ほどはラノベなのですが...)。その中でも特に印象に残った本を紹介します。 忘れる読書 この本では「本は忘れるために読んでいます」と語られています。というわけでこの本の内容もあまり覚えておりません(?)。 本を読むときには一字一句正確に覚えるような読み方をしていると、「覚えなきゃ」という気持ちが芽生えてしまい、本を読むことが苦痛になってしまうことがあります。そうではなくて、パラパラとペ

                            2023 年に読んでよかった本
                          • TypeScript 本体のコードを読んでみよう

                            みんなお世話になっている TypeScript のコードを読みたいと思ったことはないだろうか。読んだ。 一週間ぐらいかかった。完全に読み切ったとは言えないが、概要は掴んだ。 なかなかに複雑でドメイン知識を得るのが難しかったので、これから読む人向けに、登場人物や概念を整理して紹介したい。 読んだのは 2023/6/8 時点で git clone したコード。 最初に: 自分のゴール設定 複数ファイルにまたがった参照を、 TypeScript の Language Service が提供する findReferences() や findRenameLocations(), goToDefinitions() を使って、インクリメンタルに書き換えたかった。 Terser を使うと、今触ってるオブジェクトが何で、何のメンバを書き換えたかの情報が残らない。これを TypeScript のレイヤーで

                              TypeScript 本体のコードを読んでみよう
                            • Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ

                              はじめに この記事では、個人プロジェクトとしてRust言語でリレーショナルデータベースを開発した経験(もう五ヶ月も前...)について、その成果と反省、得た学びを共有します。 DBMSを自作した理由 自分がDBMSの自作に着手したのは、『Designing Data-Intensive Applications』という本の内容を深く理解するためでした。 この本は、データシステムの設計と運用において最も大切な「信頼性」、「拡張性」、「保守性」を保証する方法論を、豊富な文献を引用しつつ、理論と実践の橋渡しを巧みに行いながら、丁寧に説明している名著です。読んだことがない人は速攻購入してくだい。本当にいい本です。 この本は、データベースの内部構造に関する話も豊富に含まれていたので、「データベース自作してみようか...」という気持ちになりました。 Rustを採用した理由 データベースの実装のついでに、

                                Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ
                              • 僕が考える「良いコード」 - give IT a try

                                こんなコードだとわかりやすい 僕が考える良いコードの特徴(条件)を挙げてみると、 ぱっと見たら、だいたい何をやっているのかがわかるメソッド名 ぱっと見たら、だいたい中身が何なのか想像がつく変数名 ぱっと見たら、だいたい何をやっているのかが把握できるメソッドの内の処理フロー 驚きが少ないメソッド 副作用が少ないメソッド(責務が1つしかないメソッド) DRY原則を守っているコード だいたいこんな感じ。 つまり「すんなり読めて、すんなりわかるコード」が理想。 プログラムが小さいうちや、一人で開発しているうちは「汚くてわかりにくいコード」であっても「自分さえわかればOK」で済んじゃうけど、プログラムの規模が大きくなったり、複数人で開発するようになると、「汚くてわかりにくいコード」は絶望的に開発効率を下げる。 こんなコードはわかりにくい たとえば上の反対で、 メソッド名だけ見ても何をやっているのか想

                                  僕が考える「良いコード」 - give IT a try
                                • 低レイヤ技術を間接的に仕事で生かしてきた経験の共有。元Linuxカーネル開発技術者の場合 - 覚書

                                  はじめに ITの世界で「低レイヤ技術」と呼ばれるものがあります。明確に定義されているわけではありませんが、アプリケーションのような直接エンドユーザに触れる部分ではなく、しかもなるべく生のコンピュータに近い部分、たとえばOSカーネルやコンパイラ、CPUを開発する技術などがあります。これらの技術に明るい人はそうそういないのですが、「やってみたい」という根強い人気があります。 学生のかたでもセキュリティキャンプなどで実際にある程度身につけてしまうような人もいます。そしてますますこの手の技術に趣味としてのめり込んでいって楽しくなる…というところまではいいのですが、「ではこの技術を会得した先に何があるのか」と不安になる人も多いようです。とくに学生さんの場合は「低レイヤ技術を使って今後なんらかの仕事をして生きていけるのか?」といったことが気になるようです。今日もそのような話を少し耳にしたので、自分の経

                                    低レイヤ技術を間接的に仕事で生かしてきた経験の共有。元Linuxカーネル開発技術者の場合 - 覚書
                                  • 2024年のCSSの書き方、ワークフローとツールについて

                                    CSSには大きく変わるタイミングが何度かありました。レスポンシブ対応、メディアクエリ、Flexbox、CSS Gridなどはその大きく変わったタイミングでしょう。 そして、2024年もこれらと同様に大きく変わりそうです。CSSのネスト、:has()疑似クラス、subgrid、コンテナクエリ、ビューポート単位などの新機能がすべてのブラウザにサポートされました。 2024年のCSSの書き方として、より保守しやすいCSS、ワークフロー、ツールについて紹介します。 How I'm Writing CSS in 2024 by Lee Robinson 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに デザインの制約 2024年のCSS お勧めのCSSツール 終わりに はじめに 2024年のCSSは、素晴らしいの一言に尽きます。

                                      2024年のCSSの書き方、ワークフローとツールについて
                                    • Re: OSSで世界と戦うために - k0kubun's blog

                                      yusukebe さんの OSSで世界と戦うために を読んで感銘を受けた。 hono の快進撃もさることながら、OSSで日本のコミュニティの外にリーチしたり、 GitHubスター数を伸ばしたりみたいな話は、 自分も10年くらい挑戦し続けているけどあんまり表に出てこない気がするネタなので興奮した。 僕はいくつかの点で上記の記事とは違う方法でOSSで世界と戦っているのだが、 その中でうまく行っているものや、良くないと思っているものなどについて紹介したい。 GitHubのスター数 OSSを始めたばかりの学生時代、GitHubのスターへの執着がもはや煩悩の域であり、 集めたスターの数を合計するCLIツールを作ったり、 同じ計算方法でランキングを作るWebサイトを作ったりした。 このサイトによると、僕の今のスター数は9000を超えている。 自作したOSSの中では、スター数が1600くらいのものが2つ

                                        Re: OSSで世界と戦うために - k0kubun's blog
                                      • まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの最大の敵」と「セカンドシステムの危険性」

                                        プログラミング言語「Ruby」の国内最大のビジネスカンファレンス「RubyWorld Conference」。Rubyの先進的な利用事例や最新の技術動向、開発者教育の状況などの情報を発信することで、「Rubyのエコシステム(生態系)」を知ることができる場として開催します。ここで登壇したのは、Rubyアソシエーション 理事長のまつもとゆきひろ氏。プログラミング言語の過去、歴史から学ぶ教訓について発表しました。全4回。3回目は、「Second System Syndrome」について。前回はこちら。 退屈は最大の敵 まつもとゆきひろ氏:次はPerlですね。ここまでですでに4回ぐらいPerlの話題が出てきています。なぜかというと、私はPerlが大好きなんですね。実は、Perlが大好きなんですが、Perlのプログラミングは大好きじゃないんですね。あと、Perlのソースコードも大好きじゃないんですね

                                          まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの最大の敵」と「セカンドシステムの危険性」
                                        • strlen() の深淵 - Qiita

                                          あらまし strlen() という関数がある。御存知の通り、文字列の長さを算出する標準 C ライブラリの関数だ。 やってることは単純で、例えば以下のように実装できる。 size_t strlen_simple(const char* str) { const char* p = str; while (*p) ++p; return size_t(p - str); } '\0' が見つかるまでポインタを進め、初期位置との差分を返すだけだ。これで機能的には std::strlen() と同等である。 では、速度的にはどうだろう?適当にベンチマークを書いて MSVC 2022 でコンパイル&実行するとこうなった。

                                            strlen() の深淵 - Qiita
                                          • 「英語は新しいプログラミング言語であり、生成的AIは新しいコンパイラだ」。英語対応のためのSDK「English SDK for Apache Spark」をデータブリックスが発表

                                            「英語は新しいプログラミング言語であり、生成的AIは新しいコンパイラだ」。英語対応のためのSDK「English SDK for Apache Spark」をデータブリックスが発表 Apache Sparkなどの開発で知られるデータブリックス社は、同社が主催したイベント「DATA+AI Summit 2023 by Databricks」で、英語をApache Sparkの問い合わせ言語にできるSDK「English SDK for Apache Spark」を発表しました。 英語は新しいプログラミング言語である Databricks共同創業者兼チーフアーキテクト Reynold Xin氏。 英語は新しいプログラミング言語であり、生成的AIは新しいコンパイラであり、Pythonは新しいバイトコードだ。 これが何を意味するのか。多くの方々がChatGPTを使ってSparkの問い合わせコードを

                                              「英語は新しいプログラミング言語であり、生成的AIは新しいコンパイラだ」。英語対応のためのSDK「English SDK for Apache Spark」をデータブリックスが発表
                                            • pyenvを初心者に薦めるのはもうやめよう - methaneのブログ

                                              Pythonのパッケージ・プロジェクト管理ツールはまだ乱立状態にあって、どれを使えばいいのかわからないから慣れたpyenv+pipを使おうという判断をする人がいるかもしれない。その判断自体は別に否定しないけれども、初心者に教える時にpyenvを教えるのはもうそろそろやめてほしい。 Pythonをソースからビルドするので、コンパイラや依存ライブラリを事前に揃えないといけない。依存ライブラリが足りないと中途半端なPython環境もできうる。 デフォルトで最適化オプション(PGO+LTO)が付いてないので、最適化ビルドしたPythonより~5%程度遅い Windowsで使えない Rye, pdm, Hatch などは python-build-standalone と呼ばれるビルド済みPythonをインストールする機能があるので、これらの欠点が存在しない。 Pythonをインストールするところま

                                                pyenvを初心者に薦めるのはもうやめよう - methaneのブログ
                                              • Pythonの高速なスーパーセットをうたう新言語「Mojo」、コンパイラなど公開、ローカル環境で利用可能に

                                                Pythonの高速なスーパーセットをうたう新言語「Mojo」、コンパイラなど公開、ローカル環境で利用可能に Modular社はPythonの高速なスーパーセットだと同社が位置づける新言語「Mojo」をローカル環境で実行可能にする、コンパイラなどのツール群を公開しました。 Mojo is now available for download locally to your machine! Beyond a compiler, the Mojo SDK includes a full set of developer and IDE tools that make it easy to build and iterate on Mojo applications. Let’s build the future together!https://t.co/KxmLvsxx5e — Modula

                                                  Pythonの高速なスーパーセットをうたう新言語「Mojo」、コンパイラなど公開、ローカル環境で利用可能に
                                                • RustでWebバックエンドを書き始めてから1年くらい経った

                                                  はじめに 僕はDeno Land Inc.でDenoを利用したサーバレスエッジホスティングサービスのDeno Deployを開発するチームに所属しています。OSSのほうのDenoのメイン言語はRustで、Deno Deployのバックエンドも同様にRustで書かれています。 今年のアドベントカレンダーで一休さんから以下の記事が公開されましたが、日本でもRustをWebバックエンドの言語として採用する企業がじわじわと増えてきている印象があります。 Deno DeployのバックエンドをRustで開発してきて、RustでWebバックエンドを書くことのメリットやデメリットをいくつか感じたので、この記事で紹介したいと思います。 Deno Deployの構成 まず、ざっくりとDeno Deployのバックエンドの構成を紹介します。 多くのコンポーネントがありますが、ここではどのようにRustを利用し

                                                    RustでWebバックエンドを書き始めてから1年くらい経った
                                                  • 高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性

                                                    高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性 Modular社はPythonの高速なスーパーセットと同社が位置づける開発中の新言語「Mojo」の、Appleシリコンにネイティブ対応したMac版をリリースしました。 Today is the day! Mojo for Mac is live! Download it right now! Read our launch blogpost on how to get startedhttps://t.co/XSMkqUmHKt — Modular (@Modular_AI) October 19, 2023 Mojoは9月に初めてローカル環境でコンパイルなどを実行可能なLinux対応のツール群を公開しています。今回のAppleシリコンにネイティブ対応した

                                                      高速なPython互換言語「Mojo」のMac版登場、Appleシリコンにネイティブ対応。Pythonの9万倍、C言語に比肩する高速性
                                                    • 会計システムのアーキテクチャとモデリング ~会計というドメインを Rust で表現している話~ - CADDi Tech Blog

                                                      はじめに こんにちは。 バックエンドエンジニアの松本です。今回は、会計システムの開発を通じて、 CADDi におけるプロダクト開発の様子を紹介します。 2024年3月現在、CADDiでは2つのサービスを提供しています。1つは図面データ活用クラウド「CADDi Drawer」で、もう1つは加工品製造サービス「CADDi Manufacturing」です。 今回、後者の加工品製造サービス「CADDi Manufacturing」向けに、 会計システムを構築しました。これは、生産管理システムや拠点管理システムから取得した各種情報を基にして、会計仕訳データを生成し、経理部門に公開する役割を持ちます。 はじめに 会計システムのアーキテクチャとその狙い 計算処理を少しずつ進める 会計数値の妥当性をダッシュボードに表示する 会計システムのモデリングと最初の開発 仕訳の流れを整理して、ドメインモデル、デー

                                                        会計システムのアーキテクチャとモデリング ~会計というドメインを Rust で表現している話~ - CADDi Tech Blog
                                                      • AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス

                                                        AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス Amazon Web Services(AWS)は、実験的な実装としてサーバレス環境のAWS Lambdaで使うことにフォーカスした軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開しました。 LLRTはRustで開発され、JavaScriptエンジンにはQuickJSを採用しています。 LLRTの最大の特徴は、現在のJavaScriptランタイムにおいて性能向上のために搭載されているJITコンパイラをあえて搭載せず、よりシンプルで軽量なランタイムとして実装することで高速に起動することにこだわっている点です。 これにより(Node.jsやDenoや

                                                          AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス
                                                        • Red HatがRHELソースコードの一般公開をやめて顧客限定に、自由ソフトウェアの原則を軸にしてきたLinux関係者たちから猛批判を受ける

                                                          企業向けに「Red Hat Enterprise Linux(RHEL)」というLinuxディストリビューションを提供しているRed Hatが、これまで一般公開してきたRHELのソースコードの配布を顧客限定にすると発表しました。この発表に対して、自由ソフトウェアの理念を持つ開発者たちが批判の声を上げています。 Furthering the evolution of CentOS Stream https://www.redhat.com/en/blog/furthering-evolution-centos-stream 自由ソフトウェアとは下記の4つの「自由」を持つソフトウェアのこと。 ・どんな目的に対しても、プログラムを望むままに実行する自由 ・プログラムがどのように動作しているか研究し、必要に応じて改造する自由 ・ほかの人を助けられるよう、コピーを再配布する自由 ・改変した版を他に配

                                                            Red HatがRHELソースコードの一般公開をやめて顧客限定に、自由ソフトウェアの原則を軸にしてきたLinux関係者たちから猛批判を受ける
                                                          • 「自分の未来予測を信じてちょっと意地を張ってみる」 まつもとゆきひろ氏がRubyに型宣言を入れない理由

                                                            「自分の未来予測を信じてちょっと意地を張ってみる」 まつもとゆきひろ氏がRubyに型宣言を入れない理由 #17 動的型付け言語と大規模開発 テーマは「動的型付け言語と大規模開発」 まつもとゆきひろ氏:まつもとゆきひろです。Matzチャンネル17回目ということでお送りします。ちょっと前になりますが9月28日に私が技術顧問を始めたクラウドサーカスという会社さんがテックイベントを開催されて、その時のテーマが「動的型付け言語と大規模開発」というテーマでした。 その時に話したこととか、話そうとしたこと、話そうと思っていたんだけど時間の関係で話せなかったことなどを補足する意味も含めて今日はちょっと放送しようかと思います。というか、分量が多いので2回に分けて話そうかなと思っています。 このクラウドサーカスのイベントのテーマは別に私から指定したわけではなくて、先方が「こんなテーマで話したいんだ」とか「聞き

                                                              「自分の未来予測を信じてちょっと意地を張ってみる」 まつもとゆきひろ氏がRubyに型宣言を入れない理由
                                                            • [インタビュー]日本テレネットとは何だったのか。「テレネット シューティング コレクション」を記念し,3スタジオ+αの元スタッフが当時を語る

                                                              [インタビュー]日本テレネットとは何だったのか。「テレネット シューティング コレクション」を記念し,3スタジオ+αの元スタッフが当時を語る 編集部:早苗月 ハンバーグ食べ男 エディアから2023年6月8日に発売された「テレネット シューティング コレクション」は,かつて日本テレネット(※1)から発売されたメガドライブおよびPCエンジン向けのシューティングゲームを4タイトル収録したものだ。 ※1 1983年から活動し,2007年に事業停止した企業。「夢幻戦士ヴァリス」シリーズや「天使の詩」シリーズなどで知られる。なお,読みは“にほんてれねっと”であり,MSX用のパソコン通信サービス「THE LINKS」などを提供していた現存企業・日本テレネット(にっぽんてれねっと)とは別。 日本テレネットは,8〜16bit PCユーザーを中心に知られたメーカーだが,特定のタイトルや在籍していた個人はまだし

                                                                [インタビュー]日本テレネットとは何だったのか。「テレネット シューティング コレクション」を記念し,3スタジオ+αの元スタッフが当時を語る
                                                              • Pythonのパッケージングと配布の全体像

                                                                EDIT: このブログと似た内容の話をPyCon APAC2023にてお話ししました。 こちらの登壇資料も合わせてご覧いただけると幸いです こんにちはWantedlyの樋口です。 Pythonのパッケージングと配布は歴史が長く、多くのツール(ex. conda, pip, pipenv, poetry, rye...)が開発されてきました。これらの多様性はPythonが多くの人に使われ、継続的に改善されたゆえの賜物ですが、同時にこれらの理解を難しくしている要因にもなっていると感じます。 そこで本記事では、Pythonのパッケージングと配布の全体像を紹介します。パッケージングと配布が何か、なぜ重要なのか、そしてそれぞれのツールが何を解決しようとしているのかについて説明します。以下のような疑問を解決できることを想定しています。 パッケージングと配布の仕組みがなぜあるのか 多数あるツールが何を解

                                                                  Pythonのパッケージングと配布の全体像
                                                                • Webアプリ版Photoshopを実現させた最新Web技術をGoogleが紹介。WebAssemblyのスレッドによる高速化、ストリーミングコンパイル、Web Componentsなど

                                                                  Webアプリ版Photoshopを実現させた最新Web技術をGoogleが紹介。WebAssemblyのスレッドによる高速化、ストリーミングコンパイル、Web Componentsなど Photoshopは画像の作成や加工といった専門的な用途を目的に、長年にわたって作り込まれた代表的なデスクトップソフトウェアの1つと言えます。 プロフェッショナルな用途を満たす膨大な画像処理の機能を細かく作り込まれたユーザーインターフェイスから操作し、画像の変形や加工、フィルタリングなどの大量の複雑な演算処理が実行されるなど、Webアプリケーションへの移植を難しくする要素が満載です。 それらの困難を克服し、Photoshop Webではデスクトップ版Photoshopでよく使われる一般的な機能を、類似のユーザーインターフェイスでWebに実装し、商用サービスとして提供することに成功しました。 Photosho

                                                                    Webアプリ版Photoshopを実現させた最新Web技術をGoogleが紹介。WebAssemblyのスレッドによる高速化、ストリーミングコンパイル、Web Componentsなど
                                                                  • JavaScriptのUIフレームワーク「Svelte 4」正式リリース。パッケージサイズが10MBから3MBへ大幅縮小、ハイドレーションコードも高速に

                                                                    JavaScriptのUIフレームワーク「Svelte 4」正式リリース。パッケージサイズが10MBから3MBへ大幅縮小、ハイドレーションコードも高速に JavaScriptのUIフレームワーク「Svelte」の最新版となる「Svelte 4」が正式にリリースされました。 https://t.co/9qz0sDglCe — Svelte 4 Ever (@SvelteSociety) June 22, 2023 Svelteは読みやすく簡潔なコードでWebアプリケーションのユーザーインターフェイスを構成できるフレームワークです。Stack Overflowの調査では開発者の人気が急速に高まっていることでも注目されています。 Svelteの最大の特徴はコンパイラであるということです。UIフレームワークは、なんらかのライブラリをアプリケーションに同梱することが一般的ですが、Svelteではコー

                                                                      JavaScriptのUIフレームワーク「Svelte 4」正式リリース。パッケージサイズが10MBから3MBへ大幅縮小、ハイドレーションコードも高速に
                                                                    • Rustプログラムのデバッグ辛すぎ問題 - Qiita

                                                                      この記事は Rust Advent Calendar 2023 シリーズ2 の1日目の記事である。 Rustは良くも悪くもシステムプログラミング言語なので、何も工夫しなければデバッグの体験がC言語と同じレベルになってしまう。例えば「rust lldb」でググると上位に Debugging Rust programs with LLDB is a nightmare というスレッドが出てきてしまう。 使うべきツールを知っていれば幾分かマシな体験にできる。Rustコンパイラはデバッガとして LLDB, GDB, WinDbg/CDB をサポート していて、僕はWinDbGは10年くらい触ってないので、この記事ではLLDBとGDBについて書く。 LLDB Apple SiliconのMacだとGDBが使えないので、必然的にLLDBを使うことになる。 CodeLLDB GDBと同じく、LLDBにも

                                                                        Rustプログラムのデバッグ辛すぎ問題 - Qiita
                                                                      • Rust で SQLite を再実装した 2023 - kawasin73のブログ

                                                                        気合いで実装、どうもかわしんです。 この記事は Rust Advent Calendar 2023 の6日目 兼 情報検索・検索技術 Advent Calendar 2023 の 6 日目です。 Rust で SQLite をフルスクラッチで実装しています。 github.com なぜ SQLite を Rust で再実装しようと思ったのかについては以前の記事で紹介しています。一言で言えば、誰も Rust で SQLite を書いている人がいなかったからやってみたのですが、そもそも SQLite が強すぎるということが再実装しているうちにわかってきて絶望しています。 kawasin73.hatenablog.com 4 ヶ月前にこの記事を書いたときは簡単な SELECT 文しか実行できなかったのですが、現時点では SELECT, INSERT, DELETE 文をサポートし、express

                                                                          Rust で SQLite を再実装した 2023 - kawasin73のブログ
                                                                        • プログラマーがソースコード内に書いた「アスキーアート」図2000点以上を収集 使われ方を分析しデータベース化【研究紹介】 レバテックラボ(レバテックLAB)

                                                                          米カリフォルニア大学サンディエゴ校に所属する研究者らが発表した論文「Taking ASCII Drawings Seriously: How Programmers Diagram Code」は、ソースコード内で使用するアスキーアート(ASCII art)を収集し分析した研究報告である。 ▲ソースコード内で活用されたアスキーアートの一例 keyboard_arrow_down 研究背景 keyboard_arrow_down 研究内容 オープンソースのソフトウェア開発では、プログラマーがコードの中にアスキーアートを使って図を描き、アイデアを視覚的に表現することがよくある。アスキーアートはコードや自然言語では表現しにくい概念を視覚的に明快に説明でき、またコードよりも詳細度は低いものの、コードを理解するうえで「サムネイル」のような役割を果たす。 こうしたアスキーアートは、実際のソフトウェア開発

                                                                            プログラマーがソースコード内に書いた「アスキーアート」図2000点以上を収集 使われ方を分析しデータベース化【研究紹介】 レバテックラボ(レバテックLAB)
                                                                          • 一休レストランのふつうのRustバックエンド開発 - 一休.com Developers Blog

                                                                            この記事は一休.com Advent Calendar 2023 25日目の記事です。 一休レストランでは、よりスムーズな予約体験の提供を目的とするシステムのリニューアルを進めています。その一環として、2023年10月から、レストラン個別ページの表示から予約までのスマートフォンビューにおいて、バックエンドのサーバをRustで書かれたものに置き換えました。 一休レストランの Rust バックエンドが正式リリースされました。https://t.co/7N4VGv5ej9 このページのスマートフォンビューはバックエンドが Rust で書かれた GraphQL になってます— naoya (@naoya_ito) October 4, 2023 本番運用が始まって3か月近く経ちましたが、これまで安定して継続的な開発と運用ができています。これはRustだからと構えることなく、「ふつう」のバックエンド

                                                                              一休レストランのふつうのRustバックエンド開発 - 一休.com Developers Blog
                                                                            • 追悼 Bram Moolenaar ~Vimへの情熱と貢献を振り返る | gihyo.jp

                                                                              Bram Moolenaar the Creator of Vim 2023年8月5日、悲しい知らせが入ってきました。長年、多くのエンジニアに愛され今もなお使われ続けているテキストエディタVimの作者Bram Moolenaar氏が同月3日に亡くなったという知らせです。ショックでしばらく信じることができませんでした。 筆者は長年Vimを使い、Vimに多くのコントリビュートを行ったり、その都度Bram氏と対話したり議論したりしてきました。そのBram氏が突然、この世界からいなくなってしまったことをしばらく受け入れられなかったからです。 本記事では追悼の意味を込め、Bram氏がどのようにVimの開発を始め、Vimがどのように広まっていったのか、また長年Vimを追い続けてきた筆者から見たBram氏の人物像を筆者の思いを交えて解説していきます。 Vimの歴史 Bram氏についてお話しする前に、まず

                                                                                追悼 Bram Moolenaar ~Vimへの情熱と貢献を振り返る | gihyo.jp
                                                                              • Rustソースコードのざっくりとした歩き方 🦀

                                                                                https://techfeed.io/events/techfeed-experts-night-24

                                                                                  Rustソースコードのざっくりとした歩き方 🦀
                                                                                • 最近プログラミングが楽しい - Blog::kobaken

                                                                                  6/16(金) は、久々のオフライン開催の吉祥寺.pm #33でした。懇親会含め楽しませてもらいました!主催のid:magnoliak ありがとうございました! ここでは、話したことを書いてみたいと思います。 まず最初に、久々のオフライン開催おめでとうございます!いや〜〜〜、主催のmagnoliaさんよかったですね!おめでとうございます! 改めて、こんにちは。こばけんと言います。 エンジニア組織開発責任者をしたり、開発生産性の可視化サービスを作っていました。 今は、はてなさんやDiverseさんで業務委託をしながら、起業の準備をしています。 技術コミュニティでは、Japan Perl Associationの理事として、YAPCという技術カンファレンスの運営やPerlのドキュメントを整備するワーキング・グループを運営しています。 2019年にYAPC::Tokyoのリーダーをしていたのです

                                                                                    最近プログラミングが楽しい - Blog::kobaken