並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 83件

新着順 人気順

Rob Pikeの検索結果1 - 40 件 / 83件

  • Command Line Interface Guidelines

    Contents Command Line Interface Guidelines An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day. Authors Aanand Prasad Engineer at Squarespace, co-creator of Docker Compose. @aanandprasad Ben Firshman Co-creator Replicate, co-creator of Docker Compose. @bfirsh Carl Tashian Offroad Engineer at Smallstep, first e

      Command Line Interface Guidelines
    • なぜあなたのウェブサイトは遅いのか

      自己紹介 https://x.com/mizchi Node.js とフロントエンドの専門家 経歴 ゲームクライアント開発 Electron アプリ開発 サードパーティスクリプト フリーランス(2回目) 現在: 1ヶ月でパフォチュする傭兵 Core Web Vitals CI/CD 今日のスコープ 話すこと 主にフロントエンド/アプリケーション視点での計測 とくにエンドユーザーから見たウェブパフォーマンス体験 話さないこと 各クラウドやDBに特化したチューニング 結果として観測できるが、最初からターゲットにはしない パフォーマンス傭兵を始めた経緯 前職でサードパーティがサイト全体に与える影響(CWV)について調査 とにかくいろんなサイトを外部から計測 真の問題を特定しても「弊社とは無関係」で打ち返す以外なく、歯痒い コスパよく直せる部分をみんな放置している!!! 非機能要件の優先度が上がら

      • 「推測するな、計測せよ」という訳はミスリードと言う話 - aki33524’s blog

        パフォーマンス改善の文脈で良く用いられるフレーズとして、「推測するな、計測せよ」というものがある。これはRob PikeのNotes on Programming in Cからの引用なのだが、原典と少し印象が違う。 Rule 1. You can’t tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don’t try to second guess and put in a speed hack until you’ve proven that’s where the bottleneck is. Rule 2. Measure. Don’t tune for speed until you’ve measured, and even then don’t

          「推測するな、計測せよ」という訳はミスリードと言う話 - aki33524’s blog
        • Goへのヘイトに対する考え方

          https://www.kbaba1001.com/entry/2021/09/17/073149 (該当記事が削除されました) RubyのサービスをGoで置き換えるのは3倍人手がかかる 何するにも機能不足 JSONの読み書きにわざわざ構造体書くの面倒 同僚がGoを選ぼうとしたら愚かな選択ですねと答える サーバーサイド開発にGoを使うのは危険 っぽい内容だったかと。 だいぶGoの特徴や既存の言語との考え方の違いが広まってきてるのかなぁと思っていた矢先だったので十年くらい前のような指摘をあえて今されていてびっくりした。 正直、ここに書かれたようなヘイト項目は既出すぎるので、もし影響の大きい項目を多くの人が同様に嫌っているならばGoはここまでの人気のある処理系になることはなかったと思う。(もしくは多くの人が嫌ってはいるが影響の小さい項目ということ) Goは出た当初、こういうヘイトが世界中のブロ

            Goへのヘイトに対する考え方
          • Googleに入社して10年が経ちました - YAMAGUCHI::weblog

            はじめに こんにちは、Cloud Operations suite担当者です。2021年4月18日でちょうどGoogleに入社して10年が経ちました。自分は転職で入社したときのことは書いておらず、前職を退職したときの記録しか残っていませんでした。いい機会なので記録として10年間を振り返ってみようかなと思いました。自分用の振り返りで特に推敲もしておらず、読みづらいと思いますが、とりあえずそのまま出します。 Google入社のきっかけ 当時はPython関係のコミュニティ活動やアウトプットをしていて、ちょうどそのときにGoogleのPartner Solution Organization(いまの gTech という組織の前身)のTechnical Account Managerという職種で空きがあるので、受けてみませんかとメールが来たのがきっかけでした。当時はGoogleというとソフトウェア

              Googleに入社して10年が経ちました - YAMAGUCHI::weblog
            • ITエンジニア向けのトレンド情報 | Forkwell Press (フォークウェルプレス)

              まずはGo言語の基礎をおさらいしていきましょう。 Go言語は、Googleと世界的エンジニアが共同開発した言語 Go言語は、Googleによってプログラミング環境を改善する目的で開発されました。この開発には、C言語を設計した世界的なエンジニアが携わっています。 Kenneth Lane Thompson (Ken Thompson)…… UNIX開発者  / C言語 発案者 Robert C Pike(Rob Pike)…… UNIX開発者  / UTF-8 発案者 Robert Griesemer …… 高速 JavaScript エンジン V8 開発者

                ITエンジニア向けのトレンド情報 | Forkwell Press (フォークウェルプレス)
              • 計測する前に観察せよ ~ Observe. Don't measure for monitoring until you've observed - An Epicurean

                エンジニア大好き「推測するな、計測せよ」。これは、Plan 9, UTF-8やGoの作者としても知られる、Rob Pike氏の Rob Pikes's 5 Rules of ProgrammingのRule 3.に由来すると認識している。以下に原文を引用する。 Rule 3. Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest. Rob Pike's 5 Rules of Programming 訳すと以下のようになる。 「計測せよ。計測するまでチューニングをするな、そしてそこが支配的じゃないならチューニングするな。」 要は「チューニングする前に計測せよ」という主張で「推測」と言う言葉は出てこない。なの

                  計測する前に観察せよ ~ Observe. Don't measure for monitoring until you've observed - An Epicurean
                • Goroutine はなぜ軽量スレッドと称されるのか

                  時間軸並行処理:ある時間の 『範囲』 において、複数のタスクを扱うこと並列処理:ある時間の 『点』 において、複数のタスクを扱うこと 書籍:Linux System Programming, 2nd Edition Chap.7 でも "時間" という観点での違いが言及されています。 Concurrency is the ability of two or more threads to execute in overlapping time periods. Parallelism is the ability to execute two or more threads simultaneously. 並行処理は、複数個のスレッドを共通の期間内で実行する能力のことです。 並列処理は、複数個のスレッドを同時に実行する能力のことです。 構成と実行並行処理:複数の処理を独立に実行できる 構成

                    Goroutine はなぜ軽量スレッドと称されるのか
                  • Go言語が成功した理由

                    Go言語の作者であるRob Pike氏が「Go言語が成功した理由は何なのか?」というタイトルで2015年に発表をしてる動画を見つけたので、雑に和訳してみたいと思う ちなみに最近Go言語の好き嫌いに関する記事がいくつかバズっており、それに乗っかってるというのは言うまでもない Go言語を嫌う6個の理由 Go言語が好きな理由 良く挙げられる成功要因 Pike氏は以下がよく理由として挙げられると述べている コンパイルの速さ 実行の速さ デプロイの容易性 ツール ライブラリ しかしこれらは全て表面的であって、本質的な理由ではないとも述べている ではGo言語が成功に至った本質的な理由とは一体何なのか?彼は続いて説明している Go言語が成功に至った真の理由 彼は「Simplicity」、シンプルさがGo言語が成功に至った本質的な理由であると述べている そしてこのコンテキストにおける「シンプルさ」とは以下

                      Go言語が成功した理由
                    • もしもいま、Goをイチから学ぶならどうしたい? 松木雅幸 / Songmuさんが考える学習ロードマップ - Findy Engineer Lab

                      めまぐるしく変化するテックの世界。技術を身に着けるうえで学ぶべきポイントや学習環境なども年々変わっています。 そこで「もしもいまの環境で、テックのことをイチから学び直すことになったら、自分はどんな風に勉強したいか」というIFストーリーを通じて、技術との向き合い方を考え直してみる企画「テック転生」。 今回は、株式会社ヘンリー VPoE・松木雅幸(Songmu)さんに“自分だったらこう進めたい、Goの学習ロードマップ”を伺いました。 学び始める前に Songmuです。今ではGoが得意なエンジニアとしてご存知いただいているかもしれませんが、そんな私がもし記憶を失い、改めてGoをイチから学び直すとすればどうするでしょうか。 そもそも、2025年にGoを学ぶ必要があるかどうかを検討しなくてはいけません。 そのために、Goがどのような言語で、自分にマッチするかどうかを知りたいところです。プログラミング

                        もしもいま、Goをイチから学ぶならどうしたい? 松木雅幸 / Songmuさんが考える学習ロードマップ - Findy Engineer Lab
                      • 【海外記事紹介】Go言語から離れる開発者が増えている?その理由とは

                        5月14日、海外の技術メディアAIMが「Why Developers are Quietly Quitting Golang」と題した記事を公開した。この記事では、Go開発者が同言語を静かに離れつつあるという現状について述べられている。以下に、その内容を簡単に紹介する。 Go に今逆風が吹いている 記事の冒頭では、フィンテック系スタートアップのエンジニア Yash Batra が半年で Go から Kotlin へ全面移行した体験を取り上げている。Batra は「 私たちはツールを作るためにツールを作っていた 」と述べ、Go の最小主義がプロダクト開発の速度を著しく低下させたと回顧する。 また、長年 Google で Go を率いてきた Ian Lance Taylor が 2025 年 4 月に退職したことも、コミュニティに衝撃を与えた。Taylor は「Go は“単なる一言語”の段階に

                          【海外記事紹介】Go言語から離れる開発者が増えている?その理由とは
                        • Agentic Coding Recommendations

                          There is currently an explosion of people sharing their experiences with agentic coding. After my last two posts on the topic, I received quite a few questions about my own practices. So, here goes nothing. Preface For all intents and purposes, here’s what I do: I predominently use Claude Code with the cheaper Max subscription for $100 a month 1. That works well for several reasons: I exclusively

                            Agentic Coding Recommendations
                          • Go: A Documentary

                            The historical release notes may helpful for general information: doc/go1release Go Release History doc/go1prerelease Pre-Go 1 Release History doc/go0release Weekly Release History (Before Go 1) Language Design General design/go0initial Rob Pike, Robert Griesemer, Ken Thompson. The Go Annotated Specification. Mar 3, 2008. design/go0spec0 The Go Programming Language. Language Specification. Mar 7,

                            • 達人出版会

                              知識ゼロからノーコードではじめる Studio Webサイト制作入門 gaz 徹底攻略 データベーススペシャリスト教科書 令和7年度 株式会社わくわくスタディワールド 瀬戸美月 徹底攻略データサイエンティスト検定問題集[リテラシーレベル]対応 第2版 小縣 信也, 斉藤 翔汰, 森田 大樹, 田澤 賢, 小宮 寛季, 野口 敏久, 山田 弦太朗, 安… Proxmox VEサーバー仮想化 導入実践ガイド エンタープライズシステムをOSSベースで構築 青山 尚暉, 海野 航, 大石 大輔, 工藤 真臣, 殿貝 大樹, 野口 敏久 1週間でLPICの基礎が学べる本 第4版 中島 能和 Windowsで作る侵入検知システム 自作IDS/IPSで学ぶ実践セキュリティ dora シリコンに導入されたドーパントの物理 公益社団法人 応用物理学会 半導体分野将来基金委員会 Pythonを使った数値計算入

                                達人出版会
                              • これまでとこれからのGo | gihyo.jp

                                Goの歴史 本連載では、筆者(tenntenn)と周囲のGoエンジニアで、Goに関わる今アツい話を取り上げていきます。最新のGoの機能やこれからリリースされるGoの機能はもちろん、実際の開発現場で用いられているノウハウや自作ライブラリやツールについてご紹介します。第1回目はtenntennがこれまでとこれからのGoについて取り上げます。 Goは2009年にGoogleによって公開されたプログラミング言語です。2012年にGo1として正式公開されました。2022年現在では、GoogleやNetflixをはじめとする海外企業だけはなく、筆者の所属するメルカリなど国内の企業でも多く用いられるようになってきました。海外のGoの導入事例は公式サイトのケーススタディで確認できます。国内企業の導入事例はGoの公式Wikiに掲載があります。これらを見るとスタートアップからメガベンチャー、大企業までさまざま

                                  これまでとこれからのGo | gihyo.jp
                                • 幸せの形はどれも似ているが

                                  Previous slideNext slideToggle fullscreenOpen presenter view About https://x.com/mizchi Node.js とフロントエンドの専門家 120万*達成率で御社のフロントエンドの高速化をやります 今日話す内容ができます。社内勉強会等も承ります。 話すこと/話さないこと 話すこと パフォーマンスという予算の考え方 Lighthouseによる計測 ソースコードを二分探索して問題を特定 計測した問題の扱い方 話さないこと 具体的な問題の解決方法(都度調べて) 発表のコンテキスト 特定コードの影響範囲のみを計測する方法を周知したい サードパーティスクリプト開発で大量のウェブサイトを計測していた 暗黙知化しているのを棚卸ししたい フロントエンド計測≒E2E計測 フロントエンド課題に限定せずに全部に向き合う ユーザーと同じ

                                  • Goアセンブリ入門 - Qiita

                                    擬似アセンブリ Goコンパイラが出力するアセンブリは、抽象化されたものであり、実際のハードウェアにマッピングされていません。 Goアセンブラはこの擬似アセンブリを対象のハードウェアに沿った機械語に変換します。 Javaのバイトコードのようなものを想像するとわかりやすいかもしれません。 このような中間層を設けることの最大の利点は新しいアーキテクチャに対応するのが楽になることです。 詳細を知りたい場合は、Rob Pike氏著の The Design of the Go Assemblerを見てください。 Goアセンブリを知るためにもっとも重要なことは、Goアセンブリが対象のハードウェアと直接対応していないという事実です。 一部分はハードウェアと直接結びついていますが、そうでないものもあります。これによってコンパイラはパイプライン上でアセンブラPassを必要とすることがなくなり、代わりに、コンパ

                                      Goアセンブリ入門 - Qiita
                                    • Reflections on 10,000 Hours of Programming

                                      The key to achieving world-class expertise in any skill, is to a large extent, a matter of practicing the correct way, for a total of around 10,000 hours — Malcolm Gladwell in Outliers I'm certainly not a world-class expert, but I have put my 10,000 hours of deliberate practice into programming. Here are 31 of my reflections on programming. These are reflections only about pure coding — no lessons

                                        Reflections on 10,000 Hours of Programming
                                      • UNIXを教える仕事をした - はてなの鴨澤

                                        知り合いに頼まれて、ちょっとUNIXの初歩を教える授業をした。 ちょっとといっても結構がっつりで、入ってきたばかりの、だいたいは家にパソコンがないという素人の学生に、2ヶ月間・23日・2コマずつで基本を教え、ちょっとしたツールをシェルスクリプトで作れるような、いわば普通のUNIX使いにしてくれ、という要望である。 一応の教科書は指定されたのだが、自分で買って読んでみたところ、あまり良くなかったので使わなかった。「これはリファレンスに使ってください」ということにした。 代わりに使ったのは、自分が真に優れていると思う本、Kernighan & Pikeの『UNIXプログラミング環境』である。1984年初版、対象はVersion7 UNIXと非常に古いので、内容は全部作り直しだ。全9章あるが、Cでツールを作り出す6章以降はいらないし(9章なんてtroffの詳細だぜ)、5章で作るツールはかなり古臭

                                          UNIXを教える仕事をした - はてなの鴨澤
                                        • 大規模サービスのローンチに向け、パフォーマンスチューニングした話 #go #aws

                                          背景 こんにちは!Hanoi Dev Centerでバックエンドエンジニアをしているminhquangです。この記事では、私がAI事業本部のある新規プロダクト開発に参画した際に経験したパフォーマンスチューニングについて話したいと思います。 皆さんはサービスのローンチ(サービスを世の中に初めて出すリリース)をやったことがありますか。サービスローンチするときに、リクエストのスパイクや、ユーザー数の増加によるサーバー負荷増加など、様々な未知な課題が存在します。 私のチームでは数百万人の利用が見込まれるサービスにおいて、18000RPSを実現するべく負荷試験とパフォーマンスチューニングを実施しました。 本記事では、上記のサービス要件を満たすために私たちが取り組んだ負荷試験やパフォーマンスチューニングについて説明しつつ、これらの経験から得られた学びを共有したいと思います。 前提 技術スタック サーバ

                                            大規模サービスのローンチに向け、パフォーマンスチューニングした話 #go #aws
                                          • 達人出版会

                                            探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 Tom Hombergs(著), 須田智之(訳) 詳解 AWS CloudFormation 潮村 哲 その決定に根拠はありますか? 確率思考でビジネスの成果を確実化するエビデンス・ベースド・マーケティング 小川 貴史, 山本 寛 プログラマーのためのVisual Studio Codeの教科書【改訂2版】 川崎 庸

                                              達人出版会
                                            • research!rsc: Coroutines for Go

                                              This post is about why we need a coroutine package for Go, and what it would look like. But first, what are coroutines? Every programmer today is familiar with function calls (subroutines): F calls G, which stops F and runs G. G does its work, potentially calling and waiting for other functions, and eventually returns. When G returns, G is gone and F continues running. In this pattern, only one fu

                                              • 続・tar(1) はなぜオプション引数にハイフンが不要なのか?―tarとkey argumentsの起源を更に辿る

                                                続・tar(1) はなぜオプション引数にハイフンが不要なのか?―tarとkey argumentsの起源を更に辿る また、過去ではなく未来方向、つまり Bell Lab で Unix の successor として生まれた Plan 9 や Inferno における tar についてはこちらで lufia 氏がまとめておられたので参考にどうぞ。Plan 9とInfernoにおけるtar(1)の変化 Introduction 前回の記事では、tar(1)が Unix v1 (1971) のtap(1)まで遡ること、 また、その引数は key というサブコマンドの原始的な姿のようなものだったことを調査した。 さて、実は Unix v1 Programmer's Manual の栄えある最初のページを飾るコマンドは今でもスタティックリンクライブラリの作成などで使われる ar(1) であり、 こち

                                                  続・tar(1) はなぜオプション引数にハイフンが不要なのか?―tarとkey argumentsの起源を更に辿る
                                                • The Development of the C Language

                                                  The Development of the C Language* Dennis M. Ritchie Bell Labs/Lucent Technologies Murray Hill, NJ 07974 USA dmr@bell-labs.com ABSTRACT The C programming language was devised in the early 1970s as a system implementation language for the nascent Unix operating system. Derived from the typeless language BCPL, it evolved a type structure; created on a tiny machine as a tool to improve a meager progr

                                                  • [ On | No ] syntactic support for error handling - The Go Programming Language

                                                    The Go Blog [ On | No ] syntactic support for error handling Robert Griesemer 3 June 2025 One of the oldest and most persistent complaints about Go concerns the verbosity of error handling. We are all intimately (some may say painfully) familiar with this code pattern: x, err := call() if err != nil { // handle err } The test if err != nil can be so pervasive that it drowns out the rest of the cod

                                                      [ On | No ] syntactic support for error handling - The Go Programming Language
                                                    • Go格言集に込められた詩情とダブルミーニング|TechRacho by BPS株式会社

                                                      Go言語には、かなり初期から「Go Proverbs」と呼ばれるGoの格言集があります。 Go Proverbs 同サイトに記載されている格言は、2015年のRob Pikeの講演動画にもリンクされています。 日本語訳はいくらでもネットに落ちているので探せばすぐに見つかるでしょう。 銀座Rails#38の発表「TechRacho翻訳記事の裏舞台」の中でこのGo Proverbsについて少し触れたのですが、惜しくも途中で時間切れとなってしまったのでここで供養したいと思います。 【銀座Rails#38発表紹介】 @hachi8833 さんより「TechRacho翻訳記事の裏舞台」 Ruby/Railsの技術記事・海外の記事翻訳を継続的に公開されているTechRachoの担当者から、翻訳記事の舞台裏について発表頂きます(5/8) #ginzarails https://t.co/aaDkwbVS

                                                        Go格言集に込められた詩情とダブルミーニング|TechRacho by BPS株式会社
                                                      • Goが好きです。

                                                        はじめに 私は、業務で2年ほどGoを書いています。 私が個人的にGoについて気に入っている点を13個紹介したいと思います。 他の言語との違いや、具体的なソースコード、コマンドも提供していますので、ぜひ試してみてください。 Goとは? Go言語は、2007年ごろにGoogleのエンジニア(Robert Griesemer、Rob Pike、Ken Thompson)によって開発が始まり、2009年にオープンソース化された経緯を持ちます。 その設計思想は、複雑化するソフトウェア開発において「シンプルさ」と「効率性」を追求することにあります。 従来の言語が持つ冗長な記述や複雑な機能の代わりに、Goは読みやすく保守しやすいコードを書くためのシンプルな文法と、わかりやすい型付けを採用しました。 また、現代のマルチコア環境での並行処理の需要に応えるため、goroutineやchannelという革新的な

                                                          Goが好きです。
                                                        • Golangの公式ドキュメントにシンタックスハイライトが無い件について - stefafafan の fa は3つです

                                                          Go言語のドキュメントに掲載されているソースコードをみると、コメントが緑色になっている以外シンタックスハイライトが特にないことがわかる。 例えばブログの記事はこんな感じ。 blog.golang.org base64.goのソースコードとかを見るとこんな感じ。 golang.org 調べてみると、「シンタックスハイライト足しませんか?」という提案が何度かあったがどれも断られているようだった。 議論の様子 golang-nutsというGoogle Groupsのグループ (誰でも参加できる) で2012年にGo Playgroundにシンタックスハイライト足しませんか?という提案のスレがあった。 Rob Pike氏なども登場している。ざっくり読んだ感じ、「Go言語はシンタックスハイライトなくても十分読めるし不要だろう」みたいな流れ。 groups.google.com Redditでも同じこ

                                                            Golangの公式ドキュメントにシンタックスハイライトが無い件について - stefafafan の fa は3つです
                                                          • Go言語でsliceの重複排除 (slicesやsamber/loパッケージを使う場合) - stefafafan の fa は3つです

                                                            Go言語でsliceの重複排除について書きます。Go 1.21前提です。 slices パッケージを使っての重複排除 Go 1.21から slices パッケージが増えました。ここに生えている関数を利用して重複削除のコードが書けます。 pkg.go.dev 例えば int の slice の重複排除は以下のように書けます。 integers := []int{1, 2, 2, 1} slices.Sort(integers) // [1 1 2 2] uniqValues := slices.Compact(integers) // [1 2] slices.Compact は連続する値を1つにまとめる関数なので、重複排除したい場合は slices.Sort で先にソートする必要があります。 User という struct の slice を id で重複排除したい場合はどうすればいいかと

                                                              Go言語でsliceの重複排除 (slicesやsamber/loパッケージを使う場合) - stefafafan の fa は3つです
                                                            • 開発者でも取り組める!発展期のサービスこそ、SLOやDatadogダッシュボードで状態を可視化してメンバーに安心を届けよう - Money Forward Developers Blog

                                                              こんにちは。 2021年10月からマネーフォワード クラウド勤怠の開発チームでSREとして働いています、VTRyo です。 入社2週間経過ブログを書いて以来の登場です。 https://moneyforward.com/engineers_blog/2021/10/28/mf-on-boarding/ 現在の僕は、チーム一人目のSREとして活動しています。せっかくなので、SRE立ち上げ記を綴っていきます。 第1話は 「サービスの状態を可視化して、まずはチームメンバーに安心を与えていこうな」 という話をします。 話さないこと SREそのものについて 具体的な作業ログ 経緯 10月某日。入社オリエンや開発オリエンが終わって徐々にSRE活動を始めることになりました。 必要なチャンネルに一通り招待され、どんなやり取りが発生するかを把握していきます。 そこで、真っ先に気になったのはモニタリングに関す

                                                                開発者でも取り組める!発展期のサービスこそ、SLOやDatadogダッシュボードで状態を可視化してメンバーに安心を届けよう - Money Forward Developers Blog
                                                              • Rob Pike's simple C regex matcher in Go

                                                                Rob Pike’s simple C regex matcher in Go August 2022 Back in 1998, Rob Pike – of Go and Plan 9 fame – wrote a simple regular expression matcher in C for The Practice of Programming, a book he wrote with fellow Unix hacker Brian Kernighan. If you haven’t read Kernighan’s “exegesis” of this code, it’s definitely worth the 30-minute time investment it takes to go through that slowly. With Go’s C herit

                                                                • Go の学習に参考になった資料集

                                                                  Credit to Renée French for the Go Gopher logo 概要 この記事では、自分が Go について学ぶために参考になった学習リソースについて紹介します。 自身が初学者のときから今まで、ずっと参考になっているものを集めました。 幅広く参考になれば幸いですが、自分が過去に戻って Go を学び始める自分におすすめするならというような気持ちで書いています。 → メインの想定読者は Go の初学者 リソースについてですが大きく「公式」「書籍」「コード」の3観点(+その他)でまとめました。 結論から言うと、「公式から学ぶ」は誰にでもおすすめできます!それ以外は自分の状況や好みでぜひ参考にしてみて下さい。 というような温度感です。 ※ Go の開発環境の構築やプログラミング基礎の tips などはこの記事でわかりません 公式から学ぶ A Tour of Go 「何も考

                                                                    Go の学習に参考になった資料集
                                                                  • Go Turns 15 - The Go Programming Language

                                                                    Happy birthday, Go! On Sunday, we celebrated the 15th anniversary of the Go open source release! So much has changed since Go’s 10 year anniversary, both in Go and in the world. In other ways, so much has stayed the same: Go remains committed to stability, safety, and supporting software engineering and production at scale. And Go is going strong! Go’s user base has more than tripled in the past f

                                                                      Go Turns 15 - The Go Programming Language
                                                                    • Nix – taming Unix with functional programming

                                                                      You may be aware of Nix or NixOS. Users love them for being superior tools for building, deploying, and managing software. Yet, Nix is generally perceived as notoriously hard to learn. The core Nix ecosystem consists of several distinct components: Nix is a build system and package manager that comes with a configuration language to declare software components, the Nix language. Software made avai

                                                                        Nix – taming Unix with functional programming
                                                                      • Lies we tell ourselves to keep using Golang

                                                                        👋 This page was last updated ~3 years ago. Just so you know. In the two years since I’ve posted I want off Mr Golang’s Wild Ride, it’s made the rounds time and time again, on Reddit, on Lobste.rs, on HackerNews, and elsewhere. And every time, it elicits the same responses: You talk about Windows: that’s not what Go is good at! (Also, who cares?) This is very one-sided: you’re not talking about th

                                                                          Lies we tell ourselves to keep using Golang
                                                                        • Pike VMとEarley法の関係についてRubyで実装して考えてみる | makenowjust-labs/blog

                                                                          正規表現マッチングの実装手法の1つとしてPike VMと呼ばれるものがあります。 これはGo言語の正規表現実装やRustのregex crateで使われている手法であり、正規表現rrrと入力文字列wwwに対してO(∣r∣×∣w∣)O(|r| \times |w|)O(∣r∣×∣w∣)の計算量でマッチングができるのが特徴です。 Earley法はJay Earleyの提案した文脈自由文法 (CFG) の構文解析手法の1つです。 すべてのCFGを構文解析できる手法で最悪計算量はO(∣w∣3)O({|w|}^3)O(∣w∣3)ですが、無曖昧であればO(∣w∣2)O({|w|}^2)O(∣w∣2)で、決定的であればO(∣w∣)O({|w|})O(∣w∣)で構文解析ができます。 実装してみると分かりますが、Pike VMとEarley法には類似している点があり、Earley法をPike VMの発展系の

                                                                            Pike VMとEarley法の関係についてRubyで実装して考えてみる | makenowjust-labs/blog
                                                                          • Thirteen Years of Go - The Go Programming Language

                                                                            Russ Cox, for the Go team 10 November 2022 Today we celebrate the thirteenth birthday of the Go open source release. The Gopher is a teenager! It’s been an eventful year for Go. The most significant event was the release of Go 1.18 in March, which brought many improvements but most notably Go workspaces, fuzzing, and generics. Workspaces make it easy to work on multiple modules simultaneously, whi

                                                                              Thirteen Years of Go - The Go Programming Language
                                                                            • 超一流プログラマーになるには3万時間のプログラミングが必要 | スラド デベロッパー

                                                                              https://gigazine.net/news/20210404-5-programmers-30000-hours/ プロになるには1万時間の練習が必要という1万時間の法則というのがあるが、ドナルド・クヌース(The Art of Computer Programmingの著者)やスティーブン・ウルフラム(Mathematicaの作者)クラスになるには、3万時間超のプログラミングが必要なようだ。 情報元へのリンク 何事も一流のスキルを身につけるには1万時間の練習が必要とする「1万時間の法則」なるものがマルコム・グラッドウェルによって提案されている。この法則の自体の是非はさておき、プログラマーのBreck yunits氏は、実際に1万時間プログラミングしてみて、実際にその効果に自信を持てなかったそうだ。そこで自身が尊敬する著名なプログラマー25人にプログラミングに費やした時間を問い合わ

                                                                              • Why People are Angry over Go 1.23 Iterators - gingerBill

                                                                                NOTE: This is based on, but completely rewritten, from a Twitter post: https://x.com/TheGingerBill/status/1802645945642799423 TL;DR It makes Go feel too “functional” rather than being an unabashed imperative language. I recently saw a post on Twitter showing the upcoming Go iterator design for Go 1.23 (August 2024). From what I can gather, many people seem to dislike the design. I wanted to give m

                                                                                • Techouse社内勉強会の内容を紹介します(1) データベース<ACID編> - Techouse Developers Blog

                                                                                  Techouseの「エンジニア基礎勉強会」とは Techouse では「基礎勉強会」と称して2週間に1回、わたしが OS・ネットワーク・データベース・ハードウェア・セキュリティ・システムアーキテクチャなどをお話する勉強会を開催しています。 講師は私ひとり、資料を準備するのも私ひとり、動画を収録して YouTube Live で社内向けに配信する作業も私ひとりでやってます。 参加は任意ですが、社内のメンバー (社員・インターン生・業務委託でご参画いただいている方) の多くの方が参加してくれています。先日の RubyKaigi 2024 に参加してくれたメンバーもほとんどがこの勉強会に参加し、基礎的な知識をもった上でセッションへ臨んでくれました。 開催履歴 これまでの開催履歴はこんな具合です。 見ていただくとわかる通り、ほんとうに基礎的な内容を1個ずつやっているということがわかるかと思います。

                                                                                    Techouse社内勉強会の内容を紹介します(1) データベース<ACID編> - Techouse Developers Blog