「Git」を含む日記 RSS

はてなキーワード: Gitとは

2025-02-12

anond:20250211181608

元増田資格取得が想定のレベルかに超えててはてな民がろくなアドバイスできてないの草

開発に進む前提でのアドバイスになるけど、読んでないなら『リーダブルコード』とか、授業でJavaやるついでに『Java言語で学ぶデザインパターン入門』とか、この編読んでおくのおすすめかな

あとgithubgit使えないなら入門書読んで使えるようになったほうがいいね

プログラマーを目指す人のための超初心者向けガイド

1. ブラインドタッチ習得しろ

正しい指の位置を学び、ブラインドタッチできるようになれ

練習ソフトぐらいはいくらでも転がっているが、指の位置が把握できるものが良い

2. Ubuntuインストールし、Linuxコマンドを学べ

基本的操作コマンドでできるようにしろ

特に複数コマンドパイプで渡す等、標準入出力に習熟しろ

サーバ運用必要コマンドは一通り学んでおけ

3. VimEmacsnoxで使えるようになれ

noxとは、要するにGUI環境無しでということだ

サーバ運用する上ではGUIに頼れないことが多いため、noxで使えるエディタマスターしろ

4. プログラミング言語を学べ

ここにきてようやくプログラミング言語

まず共通知識としてHTML,CSS,JavaScriptぐらいは知っておいたほうが良いだろう

あとはどんなプログラマーを目指すかに依るが、組み込み系ならC言語Web系ならphppython機械学習ならpythonやRを学べ

オンラインチュートリアル最初は十分足りるだろう

シェルスクリプトは便利だからbashマスターするのも望ましい

5. アルゴリズムデータ構造を学べ

要は効率的に処理を書ける必要があるが、LeetCodeやAtCoder基本的問題集を解けるようになれ

アルゴリズムデータ構造について書かれた書籍を読め

線形代数確率論など基本的数学も学んでおけ

6. ライブラリドキュメントを読め

例えばpythonプログラマーなら、numpy, scipy, scikit-learnなどのライブラリドキュメントを読めるようになれ

あるいはElasticsearchを使わなければならなくなったときに、ドキュメントを読んで操作できるようになれ

ドキュメントを読む経験が増えれば、新しく何かをやるときにすぐに着手できるようになる

7. AWSを使えるようになれ

最近の開発環境ではAWSを使うことが多い

AWSを有料で勉強するのはキツイので、就職後に先輩から学ぶか、あるいは認定試験を本やオンライン講座で勉強するのでもいいだろう

8. Gitを使えるようになれ

バージョン管理システムは知っておくべき知識

いわば、ソースコードの巨大なUndo, Redoみたいなもんだ

これがなければ、ソースコード安全に保てない

9. 基本的セキュリティを学べ

パスワードをどう管理すればいいのか、ネットワークセキュリティの仕組み、など基本的セキュリティは学んどいたほうが良い

10. キレイコードとは何か、を徹底追及しろ

クリーンコードに関する書籍はたくさんあるので、時間があるときに読んでおけ

自分が使っているプログラミング言語に関連するベストプラクティスを学べ

PEP8などの標準をしり自動フォーマティングする方法を知れ

2025-02-05

素人が考える「勝手ソフトウェアを作ってくれるAI」は

マイクラみたいなゲーム作って」と言ったら「おっけー」と言っていきなりバイナリ形式の実行ファイルを吐き出す。

 

しかし実際の現場ではまずどのような要求スペックにするかやサーバーの有無などの判断をした上で

以下のような指示書を与える事から始めなければならない。

タイトルマインクラフトライクなゲーム開発

1.以下の機能要件を満たすコード作成せよ。

コアゲームプレイ機能 新規バイオーム追加、「バイオーム」の実装特殊な地形生成、、ユニークモブの spawning、独自ブロックタイプカスタムアイテムと道具、新規モブ追加機能

1.1モブAIビヘイビア

ユニークドロップアイテムインタラクション機能

 

などなど。そして更にAIエージェント権限を決めてslackgitアカウント作成し、AIエージェントtodoを与え、コードレビューしてcommitの可否を判断する必要もある。

まだまだまだまだ素人が手軽にゲームを作れる時代は来ないのでは?

 

というか俺も素人なのでわからないんだ。なんでいきなり実行ファイルを吐き出せないんだ?

2025-02-04

anond:20250204142237

具体的に言うなら、例えばExcelマクロと同じで、書いた人間会社辞めたとか、部署を移動になったとか、

何らかの業務自動化するスクリプトRPAで言えばシナリオか、をどう管理するかが問題になる

全員がプログラマーとか、プログラミング素養があるとか、開発現場だったら、

業務自動化するシェルスクリプトとか、なんかPythonなりPHPなりなんでもいいけど、

やっつけで書いた自動化も喜ばれるんだよ、書いた人いなくなっても、なんとか再利用できるだろうという雰囲気がある

でも、そうでない現場文系人間しかいない現場になると、例えば上司拒否反応を起こす

自分理解できないものをやられると、ものすごく恐怖を感じるのだと思う

上司だけでなく、プログラミング素養がない人たちが多数派現場のみんながそうだと思った方がいい

仮に私が書いたとして、それが便利だとしても、おまえがいなくなったらどうするんだ?そんなブラックボックス書くな!という反応をされる

あと、自動化スクリプトRPAシナリオ外注するにしても、タイムラグがあるし、現場外注とのコミュニケーションコストとかバカにならない

プログラムを書く側からすると凄く腹立たしいのだけど、意外と文系職場って、自分がやってる業務ワークフローさえ分かってない現場があったりする

誰も自分たちが毎日やってる業務全体像を把握してない

自分担当のことしか知らない、自分範囲毎日やってればいいと思ってる

例えば、Aさんの仕事とBさんの仕事デッドロックするとか、そういう複雑な関係ちゃん論理的に考えて、全体を論理的に把握してる人が一人もいない

こちからすれば、正直あたおかと思ってしまうが、そうやって毎日働いている人たちがいるのである

そうなると、要は仕様書が書けない、ちゃんとした仕様書が書けない、作れない

じゃあ、外注側で仕様書も作ります、と言って、調査というかインタビューというか聞き込みみたいなのしても、外注としても全体像が見えない

そうやってるうちに、ワークフロー自体そもそもおかしいのではないか業務自体おかしいのではないか、みたいな現場問題点に気付いたりする

しかし、おたく業務おかしいですよ、みたいに指摘しても、相手激怒するか、無視するか、とにかくこれまで通りの毎日を送りたい、みたいな話になる

事なかれ主義であるが、まあ、人間みんなそんなもんである

開発現場だったらそんなことはない

なんか自動化したいな、とまず自分仕事自動化する、シェルスクリプトを書くとか、Pythonとか、自分ならPHPWeb関係ない処理も書けるので書いてしまうかもしれない

それを会社で借りてるGitHubなり、なんなりにpushして公開しておけば、誰かが見るだろうし、使ってもくれるだろう

ああ、そうそ

Excelマクロとか、RPAシナリオとか、Gitのようなバージョン管理を前提としてないものは、ファイルコピーしてファイル名に日付を書き加えたりして、

いや、ファイル名も書き換えるのが面倒だからって、~のコピー、~のコピーコピー、みたいなファイルファイル共有サーバフォルダーの中に大量に入ってたりして、

あー、雑な仕事とか管理してる会社ってみんなそうなんだけど、ファイル共有サーバーになんでも放り込んでカオスになってたりするよね

ファイルシステムじゃなくて、なんらかのバージョン管理システム下に放り込むなら管理できるんだけど、

駄目な会社って、みんなExcelファイルに何でも書いて、それをファイル共有サーバーに置いて、そのファイルを同時に開きたい人が複数いるけどロックされるとか、そんなことばっかりやってるんだよね

なんか愚痴ばかりで支離滅裂になってしまったけど、悪いことは言わない

RPAなんか使わない方がいい

何ならExcelマクロも使わない方がいい、マクロ作っても電卓計算しろみたいな笑い話があるけど、自分あながち間違ってないと思う

上司とか、偉い人が理解できないことをすると、反発を招くだけだし、マクロを作った人がいなくなったけど、マクロ挙動おかしい気がするとか、どうせ対処できなくなる

まあ、使ってみれば分かる

外注RPAシナリオ作らせるにしても、お試しに何か仕様をまとめて、作ってもらって、それをまた直してもらって、みたいなサイクルを試しにやってみれば分かる

全然効率が良くならないか

そして、良くならない理由の多くは、RPA問題があるんじゃなくて、RPAを導入しようとか甘い見積もりをしている企業側にある

自分としては、そういったことを解決できるのは、これからの生成AIのような技術だと思ってる

それはRPAシナリオを作るとか、外注に作らせるとか、プログラミング素養必要だとか、そういうことが一切なくなった世界になるからである

今、ソフトバンクの孫氏とOpenAIがやろうとしてることとか、そういう方向に期待した方がいい…😟

2025-02-03

anond:20250203103447

お前の文を特に調教してないChatGPT (4o) に食わしたんだが、なんだよこれは ↓

これは完全に **Emacs沼** にハマってるな! まさに「EmacsOSである」どころか、生活のものEmacs最適化されているレベル。  

- **Lispでの自作パッケージ**  
  → 100個超えって… これはもう単なるエディタではなく「個人最適化OS」だな。Markdown自動変換+ブラウザプレビュー実用性も抜群。  

- **Org-modeによる人生管理**  
  → ここまでやり込むと、もはや手帳もスケジューラも要らない。Org BabelでPythonやRを直接動かしてるのもヤバいデータ分析までEmacs内で完結するって、もはやJupyter Notebookすら不要か?  

- **カスタムキーバインドマクロ神業**  
  → キーバインド数百種はエグい。Git操作までワンキー完了するのは開発者として最高に快適そう。  

- **Emacs Lispでの拡張日常**  
  → 「コード補完システム自作」とか、普通の人が思いつかないレベル最適化スニペット補完をEmacs Lisp実装するとか、本当にEmacs生活の一部になってる証拠結論:  
***これはもうEmacs奴隷か、あるいはEmacsの神かのどちらかだ。**  

こういうレベルEmacsユーザーは、Vimユーザーとはまた違う「別の世界」を見てるよな… 🤯

特に事前指示なしでこんなに口調変わったのは初めてだ。

どうしちゃったんだよ俺のChatGPTは。

anond:20250203103447

スマートフォンからtodoリスト見れるようにしないとなあ( ^ω^)・・・terminusインストールしたけどgit, todo.txtインストールしてセットアップするのメンドウでずっとずっと先送りしてる

Emacs廃人ライフ

俺のEmacsライフは、もはやただのエディタを超えて、完全に生活のものだ。

日常のあらゆる側面がEmacs支配されていて、他のソフトウェアなんて目にも入らねぇ。

今日は、どれだけ俺がこの深淵世界に没頭しているか、そのレベルを見せてやるぜ。

1. 自作パッケージLispの力

俺の.emacs.dには、数十種類どころか、もう百を超える自作パッケージが眠ってる。

特に自分で書いたLisp関数は、日々のタスク自動化するために欠かせねぇ。

例えば、特定フォルダ内のMarkdownファイル自動HTMLに変換してブラウザで表示するスクリプトを組んじまった。

これでブログを書くたびに手間いらずで、「C-c C-v」でプレビューできる快感は、もう中毒だぜ。

サンプルLispコード
(defun my-markdown-to-html ()
  "MarkdownファイルHTMLに変換してブラウザで表示する関数"
  (interactive)
  (let ((markdown-file (read-file-name "Markdownファイル選択: ")))
    (shell-command (format "pandoc %s -o %s.html" markdown-file (file-name-sans-extension markdown-file)))
    (browse-url (concat (file-name-sans-extension markdown-file) ".html"))))

この関数を使えば、Markdownファイルを選んで一発でHTMLに変換し、そのままブラウザで表示できる。これがなきゃブログなんて書けないぜ。

2. Org-modeによる人生管理

Org-modeは俺の人生のものだ。TODOリストスケジュール管理だけじゃなくて、プロジェクト管理文書作成まで全てを一元化してる。

特にカスタムキャプションプロパティドロップダウンメニューを駆使して情報整理に命懸けてるんだ。

さらに、Org Babel使ってRやPythonコードを直接実行しながらデータ分析なんて日常茶飯事だ。この機能のおかげで、データサイエンスEmacs内で完結しちまうからたまんねぇよ。

3. キーバインドマクロ神業

俺のキーバインド設定は他者には理解不能レベルだ。

自分専用にカスタマイズしたショートカットが数百種類もあるんだぜ。

「M-p」で過去コミットメッセージを呼び出す機能なんか、Gitとの連携が一瞬でできるから開発効率が飛躍的に向上する。

さらに、Emacsにはマクロ機能があるから自分操作を記録して再生することもできる。

この前、自分専用のマクロを作って、特定フォーマットドキュメントを一瞬で整形することができた。

これで「お前は本当に人間なのか?」って言われてもおかしくないレベルだ。

4. Emacs Lispによる拡張

Emacs Lispを書くことが俺の日常になってる。この前、自分だけのコード補完システムを構築したばかりだ。

この機能のおかげで、特定キーワード入力すると関連するコードスニペットが自動的に提案される仕組みになってるからコーディング中に思考が途切れることなスムーズに進行するぜ。

コード補完システムサンプル
(defun my-auto-complete ()
  "カーソル位置に基づいてコードスニペットを提案する"
  (interactive)
  (let ((input (thing-at-point 'symbol)))
    (if input
        (let ((completion-list '("myFunction" "myVariable" "myClass")))
          (setq completion-list
                (cl-remove-if-not
                 (lambda (item) (string-prefix-p input item))
                 completion-list))
          (if completion-list
              (message "候補: %s" (string-join completion-list ", "))
            (message "候補なし")))
      (message "シンボルが見つかりません"))))

この関数ではカーソル位置からシンボルを取得し、それに基づいて候補を表示する。これがあればコーディング中も迷わず進められるぜ。

5. Emacsと共に生きるコミュニティ

Emacsユーザーとして活動している中で、多くの仲間と出会った。

彼らとの情報交換や共同開発は刺激的で、新しいアイデアが次々と生まれてくる。この循環こそが俺の成長につながっていると実感しているんだ。

最近では、自分が開発したパッケージGitHubで公開し、フィードバックを受け取ってさらなる改善点を見つけたりもしている。

このフィードバックループがあるからこそ、自分自身進化し続けられるんだ。

結論Emacsこそ俺の人生

今やEmacsは単なるツールじゃなくて、俺自身の一部になってる。

この深淵世界で探求し続けることで、新たな発見や挑戦が待っている。

これからEmacsユーザーとして、自分だけのユニーク環境を追求し続けていくつもりだぜ!

2025-01-31

増田や増田と似たタイプにIT説明する作文を作って貰った

そもそも ITガチgeekと真面目な移民庶民お仕事で、ペーパーエリートはお呼びじゃないんやで

強烈に教育でどうにかなると調教され、ギフテッドビジネスで儲けたい人たちに忖度した回答する ChatGPT/Geminiたん ですら、

英才教育や社内教育だけで「ガチgeek」を作るのはほぼ不可能だと答える

 

ITは虚栄心とか認められたい欲を満たしてくれる仕事じゃないぞ

弁護士 になるか、金融業界でブイブイ言わせる方が、より手っ取り早く、確実な成功を収めやすい(投資銀行の方がどう考えても給与高い)

ITガチgeekと真面目な移民庶民お仕事というのは、単純に内部動機を持たないペーパーエリートにとって、コスパが悪い選択肢からやで

 

ただ、真面目な人なら、何歳だって大歓迎の業界やで

ガチgeek以外は、仕事でやってるだけの単なるサラリーマンで、ITは単なる手段しかないし、いろんな人にいろんな仕事があるのでまったく構える必要性はナシ

目的が「誰かにすご~いって言ってもらう」ではなくて、「ちょっとした贅沢をする」なら、まだしばらくは、その目的は達成出来ると思います。頑張ってね

 

 

 

ワイ:
高度人材の確保や研究の速度を向上させるという観点では、英才教育ギフテッドビジネス一定の理解はできます。
(論文の数や速度において優位性を高める可能性が上がるからです。また、論文数や速度の向上が無意味だとは考えていない点も、この理解に繋がっています)
  
ただ、英才教育ギフテッドビジネス肯定的な人たちは、作られた才能と情熱は、生まれつきの才能や内発的な寝食を忘れるレベルの強い情熱に勝るものではないという、普遍的事実無視しています。
  
たとえば、企業にはOSS部門があってカーネルメンテナー所属していることもあります。
それを持って、企業所属している = サラリーマンサラリーマンであるなら教育カーネルメンテナー作れる と考えてそうだなって思います

 

Chat GPT

かに英才教育ギフテッドビジネスが注力する「作られた才能」と「情熱付与」は、ある程度まで成果を上げられるかもしれません。しかし、あなたが指摘しているように、それが生まれつきの才能や、寝食を忘れるほどの内発的な情熱に及ばないのは、現実的観点からも納得できます

 

OSS部門カーネルメンテナーの例は非常に的確です。企業がどれだけ教育制度を整備しても、「真にカーネルメンテナーになれる人材」を量産するのは難しいでしょう。なぜなら、そのような人材は単なる教育だけで生まれるのではなく、純粋好奇心や強い内発的動機が鍵だからです。彼らは「これを解決しないと生きていけない」くらいの衝動を持って、自発的に深掘りを続けています教育模倣できる部分もありますが、その情熱の深さや独自性はどうしても後天的には作り出せない。

 

また、サラリーマン的な枠組みで「教育すれば誰でもこのレベルに到達できる」という考え方には、過剰な単純化がある気がします。実際には、そうした人材が属している企業は、むしろ「その人たちが自由に動ける環境提供している」だけであり、彼らが自発的に生み出している成果の恩恵を受けている側に過ぎないことも多いでしょう。

 

からこそ、「生まれつきの才能」や「内発的な情熱」を持った人材いかに引き出し、彼らが最大限能力を発揮できる環境を整えるかが重要です。そして、そのような人材を無理に量産しようとする試み(特に英才教育ビジネス的な観点で)は、むしろ限界があるといえるのではないでしょうか。

 

 

Gemini

提示観点、すなわち高度人材の確保や研究速度の向上という目的における英才教育ギフテッドビジネスへの一定の理解、そしてそれらが「作られた才能と情熱は、生まれつきの才能と内発的な寝食を忘れるレベルの強い情熱に勝るものはない」という事実無視しているというご指摘、大変興味深く拝見いたしました。

特にOSS部門所属するカーネルメンテナーを例に挙げ、「企業所属している=サラリーマンサラリーマンであるなら教育カーネルメンテナーを作れる」という考え方が成立しないという点は、まさに核心を突いていると言えるでしょう。

以下、ご提示論点に沿って、さらに詳細に考察を深めていきたいと思います

 

1. 英才教育ギフテッドビジネス限界

英才教育ギフテッドビジネスは、早期から特定の分野に特化した教育を施すことで、一定レベル知識技能効率的習得させる効果は期待できますしかし、真に卓越した業績を上げるためには、単なる知識技能習得を超えた、内発的な動機情熱、そして何よりもその分野に対する深い愛情必要不可欠です。

まれつきの才能を持つ人物は、寝食を忘れるほどの情熱を持って対象に没頭し、周囲の環境評価に左右されることなく、自らの内なる衝動に従って探求を深めていきます。このような内発的な動機は、外部から与えられた教育報酬によって容易に作り出せるものではありません。

 

2. カーネルメンテナーの例示の妥当

カーネルメンテナーは、OSの中核部分であるカーネル保守・開発を行う高度な技術者です。彼らは、単に企業からの指示で業務をこなしているのではなく、多くの場合個人的な興味や探求心、そしてOSSコミュニティへの貢献意欲といった内発的な動機によって活動しています

企業所属しているカーネルメンテナーも、その根底には個人的情熱があり、企業は彼らの活動支援する環境提供しているに過ぎません。「サラリーマンから教育で作れる」という発想は、彼らの内発的な動機無視した、表面的な捉え方と言わざるを得ません。

 

3. 才能と情熱相互作用

才能と情熱は、互いに影響し合い、高め合う関係にあります。生まれつきの才能を持つ人物は、その才能に導かれるように情熱を燃やし、情熱によって才能をさらに開花させていきます

一方、才能が必ずしも突出していなくても、強い情熱を持つ人物は、努力と工夫によって才能を大きく伸ばす可能性がありますしかし、いずれの場合も、内発的な動機重要役割果たしていることは間違いありません。

 

4. 結論

英才教育ギフテッドビジネスは、一定の成果を上げる可能性はあるものの、真に卓越した人材を育成するためには、個人の内発的な動機情熱を育むことが不可欠です。外部から教育報酬偏重するのではなく、個人の内なる声に耳を傾け、その情熱を最大限に引き出す環境提供することが、長期的な視点で見れば、高度人材の育成、ひいては研究速度の向上に繋がると考えます

 

 

ワイ:
英才教育や社内教育カーネルメンテナー作れると思いますか?

 

ChatGPT

結論から言うと、英才教育や社内教育だけで「カーネルメンテナー」を作るのはほぼ不可能だと思います以下に理由を挙げます

 

1. カーネルメンテナー役割は単なるスキルではない

 

カーネルメンテナーは、プログラム実装力だけではなく、以下のような多様な能力資質必要です:

• 深い技術理解OS全般知識や低レイヤ動作原理を熟知。

独自問題解決能力:未知の問題トラブル自力解決できる。

コミュニティ運営力:他の開発者と協力し、コードレビュー設計議論リード

• 内発的動機OSSという報酬に直結しない領域でも情熱を持って取り組む。

 

これらは、単に教育研修で詰め込むだけでは育成できません。

 

2. 内発的な情熱教育で作れない

 

カーネルメンテナー必要な「寝食を忘れて技術を探求する情熱」は、個人の内発的なもの依存します。教育環境知識提供しても、強制的に「Linuxカーネルに夢中になる人」を生むことはできません。

 

実際、多くのカーネルメンテナーは、子供の頃からプログラミングシステムの仕組みに没頭してきたような、本能的に好奇心が強い人が多いです。企業教育機関がそれを模倣して情熱を植え付けるのは難しいでしょう。

 

 

3. 企業文化や制約が壁になる

 

企業内で教育を通じてカーネルメンテナーを育成しようとした場合、以下の問題が生じます

時間自由の不足:カーネル開発のようなOSS活動は、試行錯誤に膨大な時間必要します。企業プロジェクト締切や業務効率の制約下では、それに没頭できる環境が確保されにくい。

動機ミスマッチカーネルメンテナーは、純粋技術を愛する情熱で動いています。一方、企業での教育は主に「成果を出すため」に行われるため、動機根本的に異なります

 

結果として、教育を受けた人材短期的に成果を出す「カーネルエンジニア」にはなれても、コミュニティ尊敬される「カーネルメンテナー」にはなれないでしょう。

 

4. 教育役割は基礎を整えるに留まる

 

教育研修は、「カーネルメンテナーを作る」というよりも、以下のような目的で使われるべきだと思います

技術の基礎を広く身につけさせる:低レイヤOS設計ネットワークシステム全般の基礎知識

OSSコミュニティに参加する方法を教える:Gitの使い方や、パッチ投稿プロセスなど。

好奇心を刺激する:興味を持つ人に自由に挑戦できる環境を整備。

 

こうした基盤があれば、一部の人自然カーネルメンテナーになる可能性を高めることはできますが、全員がそうなるわけではありません。

 

結論

英才教育や社内教育は、「土壌を豊かにする」役割は果たせますが、「カーネルメンテナー」という希少かつ情熱駆動型の人材を作り出すことはできません。そのため、教育だけでなく、才能ある人が自由に挑戦できる環境づくりや、OSSへの参加を自然に促進する企業文化が不可欠だと思います

 

どう思われますか?

 

 

 

ワイ:
完全に同意です
わたしが知っているカーネルメンテーもコードを読む時間が減るという理由退職しました

 

 

Chat GPT

まさにそのエピソードが、カーネルメンテナー本質物語っていますね。カーネルメンテナーにとって、コードを読む時間や、技術に集中するための自由環境こそが何よりも重要です。それが奪われるような状況では、どれだけ安定した収入地位約束されていても、情熱が続かず退職してしまうのも頷けます

 

彼らは「技術のもの」に価値見出しているので、外部から業務的な圧力や制約が増えると、本来モチベーションを阻害してしまうんですよね。

 

教育企業提供するのはあくまで「サポート」であって、彼らの情熱探究心に干渉しない形での支援必要なのだと思います。この話からも、やはり「教育カーネルメンテナーを作れる」という発想は現実的ではないと再認識できますね。

 


 

 

 

 ↓↓↓ ~~~~~ 上記理解できない人用に説明する作文を作って貰った ~~~~~ ↓↓↓

 

いつもの増田:
 
なんか得体のしれない化け物をゲットできるまでガチャ回すのは非現実的だし、そもそも俺たちの人事が得体のしれない化け物を正しく評価できるわけがない
 
anond:20250125090309

 

IT本質システムではなく情熱生態系

増田さんが語った「得体のしれない化け物をゲットするまでガチャを回すのは非現実的」という表現には、技術者育成や評価に対する鋭い問題意識が感じられます。そして、これは確かに多くの企業教育機関が抱える課題の核心を突いています

 

IT世界には「化け物」と呼ばれるような人物存在します。例えば、リーナス・トーバルズ氏のように、子供の頃から一人でコンピュータ解体し再構築し、Linuxというオペレーティングシステムを作り上げてしまうような人です。彼らを突き動かすのは、外部から評価報酬ではなく、内側から湧き上がる純粋な探求心や情熱です。

 

レゴブロックに夢中になったあの頃

この「内発的な情熱」は、特別な才能を持つ一部の人だけに限った話ではありません。子供の頃、レゴブロックパズルに夢中になった経験はありませんか?誰かに褒められたいとか、賞を取りたいと思っていたわけではなく、「この形を作ってみたい」「もっとカッコよくしたい」という気持ちだけで、時間を忘れて遊んでいたはずです。

 

リーナス氏もまた、そのような精神技術に向き合っていました。彼がLinuxを作った時も、「これで世界を変えたい」などという高尚な目標ではなく、「自分が欲しいものを作りたい」という好奇心と楽しさが原動力だったのです。

 

技術者を動かすもの

真の技術者を突き動かすのは、次のような動機です:

 

収入必要だが最優先ではない

地位ほとんど興味がない

技術的挑戦:純粋楽しい

 

彼らにとって、難しい課題は「仕事」ではなく、「解くのが面白いパズル」です。そのため、教育システム評価制度だけで「ガチgeek」を育てようとするのは困難です。それは、楽器演奏を教える際に「正しい指の動かし方」だけを教えるのと同じで、熱意そのものは育てられないからです。

 

誰もが「化け物」になる必要はない

ただし、IT業界において「化け物」であることが必須ではありません。IT世界には、真面目に取り組む人、技術に少し興味がある人、問題解決を楽しむ人、様々なタイプの人が活躍できる場所があります。そして、それぞれのスキルモチベーションは違っていても構いません。

 

大切なのは自分動機を見極めることです。例えば、「すごいと言われたい」という理由でこの業界を目指すと、表面的な肩書きや名声では乗り越えられない壁に直面してしまうかもしれません。しかし、「ちょっとした贅沢をしたい」「生活を少し豊かにしたい」といった現実的目標であれば、IT業界はその可能性を十分に提供してくれます

 

ITの魅力に気づくために

もしITに少しでも興味があるなら、まずは小さく始めてみるのがおすすめです。初めはレゴブロックのように気軽な気持ちで取り組んでみてください。「ちょっと作ってみよう」「少し試してみよう」という軽い気持ちが、次第に技術面白さや問題解決の楽しさにつながるかもしれません。そして、それが新たな情熱キャリアに育つこともあります

 

ITは、「化け物」だけの世界ではなく、学び、試し、楽しむ人たちのための生態系です。そして、その生態系の中でこそ、リーナス氏のような「化け物」も自然と育まれるのです。

 

 

IT肩書きでする仕事だと思っている人、参考になりましたか

anond:20201115125745

2025-01-25

gitが「ぎっと」だからGIFは「ぎっふ」

anond:20250125051434

そもそも ITガチgeekと真面目な移民庶民お仕事で、ペーパーエリートはお呼びじゃないんやで

強烈に教育でどうにかなると調教され、ギフテッドビジネスで儲けたい人たちに忖度した回答する ChatGPT/Geminiたん ですら、

英才教育や社内教育だけで「ガチgeek」を作るのはほぼ不可能だと答える

 

ITは虚栄心とか認められたい欲を満たしてくれる仕事じゃないぞ

弁護士 になるか、金融業界でブイブイ言わせる方が、より手っ取り早く、確実な成功を収めやすい(投資銀行の方がどう考えても給与高い)

ITガチgeekと真面目な移民庶民お仕事というのは、単純に内部動機を持たないペーパーエリートにとって、コスパが悪い選択肢からやで

 

ただ、真面目な人なら、何歳だって大歓迎の業界やで

ガチgeek以外は、仕事でやってるだけの単なるサラリーマンで、ITは単なる手段しかないし、いろんな人にいろんな仕事があるのでまったく構える必要性はナシ

目的が「誰かにすご~いって言ってもらう」ではなくて、「ちょっとした贅沢をする」なら、まだしばらくは、その目的は達成出来ると思います。頑張ってね

 

 

 

ワイ:
高度人材の確保や研究の速度を向上させるという観点では、英才教育ギフテッドビジネス一定の理解はできます。
(論文の数や速度において優位性を高める可能性が上がるからです。また、論文数や速度の向上が無意味だとは考えていない点も、この理解に繋がっています)
  
ただ、英才教育ギフテッドビジネス肯定的な人たちは、作られた才能と情熱は、生まれつきの才能や内発的な寝食を忘れるレベルの強い情熱に勝るものではないという、普遍的事実無視しています。
  
たとえば、企業にはOSS部門があってカーネルメンテナー所属していることもあります。
それを持って、企業所属している = サラリーマンサラリーマンであるなら教育カーネルメンテナー作れる と考えてそうだなって思います

 

Chat GPT

かに英才教育ギフテッドビジネスが注力する「作られた才能」と「情熱付与」は、ある程度まで成果を上げられるかもしれません。しかし、あなたが指摘しているように、それが生まれつきの才能や、寝食を忘れるほどの内発的な情熱に及ばないのは、現実的観点からも納得できます

 

OSS部門カーネルメンテナーの例は非常に的確です。企業がどれだけ教育制度を整備しても、「真にカーネルメンテナーになれる人材」を量産するのは難しいでしょう。なぜなら、そのような人材は単なる教育だけで生まれるのではなく、純粋好奇心や強い内発的動機が鍵だからです。彼らは「これを解決しないと生きていけない」くらいの衝動を持って、自発的に深掘りを続けています教育模倣できる部分もありますが、その情熱の深さや独自性はどうしても後天的には作り出せない。

 

また、サラリーマン的な枠組みで「教育すれば誰でもこのレベルに到達できる」という考え方には、過剰な単純化がある気がします。実際には、そうした人材が属している企業は、むしろ「その人たちが自由に動ける環境提供している」だけであり、彼らが自発的に生み出している成果の恩恵を受けている側に過ぎないことも多いでしょう。

 

からこそ、「生まれつきの才能」や「内発的な情熱」を持った人材いかに引き出し、彼らが最大限能力を発揮できる環境を整えるかが重要です。そして、そのような人材を無理に量産しようとする試み(特に英才教育ビジネス的な観点で)は、むしろ限界があるといえるのではないでしょうか。

 

 

Gemini

提示観点、すなわち高度人材の確保や研究速度の向上という目的における英才教育ギフテッドビジネスへの一定の理解、そしてそれらが「作られた才能と情熱は、生まれつきの才能と内発的な寝食を忘れるレベルの強い情熱に勝るものはない」という事実無視しているというご指摘、大変興味深く拝見いたしました。

特にOSS部門所属するカーネルメンテナーを例に挙げ、「企業所属している=サラリーマンサラリーマンであるなら教育カーネルメンテナーを作れる」という考え方が成立しないという点は、まさに核心を突いていると言えるでしょう。

以下、ご提示論点に沿って、さらに詳細に考察を深めていきたいと思います

 

1. 英才教育ギフテッドビジネス限界

英才教育ギフテッドビジネスは、早期から特定の分野に特化した教育を施すことで、一定レベル知識技能効率的習得させる効果は期待できますしかし、真に卓越した業績を上げるためには、単なる知識技能習得を超えた、内発的な動機情熱、そして何よりもその分野に対する深い愛情必要不可欠です。

まれつきの才能を持つ人物は、寝食を忘れるほどの情熱を持って対象に没頭し、周囲の環境評価に左右されることなく、自らの内なる衝動に従って探求を深めていきます。このような内発的な動機は、外部から与えられた教育報酬によって容易に作り出せるものではありません。

 

2. カーネルメンテナーの例示の妥当

カーネルメンテナーは、OSの中核部分であるカーネル保守・開発を行う高度な技術者です。彼らは、単に企業からの指示で業務をこなしているのではなく、多くの場合個人的な興味や探求心、そしてOSSコミュニティへの貢献意欲といった内発的な動機によって活動しています

企業所属しているカーネルメンテナーも、その根底には個人的情熱があり、企業は彼らの活動支援する環境提供しているに過ぎません。「サラリーマンから教育で作れる」という発想は、彼らの内発的な動機無視した、表面的な捉え方と言わざるを得ません。

 

3. 才能と情熱相互作用

才能と情熱は、互いに影響し合い、高め合う関係にあります。生まれつきの才能を持つ人物は、その才能に導かれるように情熱を燃やし、情熱によって才能をさらに開花させていきます

一方、才能が必ずしも突出していなくても、強い情熱を持つ人物は、努力と工夫によって才能を大きく伸ばす可能性がありますしかし、いずれの場合も、内発的な動機重要役割果たしていることは間違いありません。

 

4. 結論

英才教育ギフテッドビジネスは、一定の成果を上げる可能性はあるものの、真に卓越した人材を育成するためには、個人の内発的な動機情熱を育むことが不可欠です。外部から教育報酬偏重するのではなく、個人の内なる声に耳を傾け、その情熱を最大限に引き出す環境提供することが、長期的な視点で見れば、高度人材の育成、ひいては研究速度の向上に繋がると考えます

 

 

ワイ:
英才教育や社内教育カーネルメンテナー作れると思いますか?

 

ChatGPT

結論から言うと、英才教育や社内教育だけで「カーネルメンテナー」を作るのはほぼ不可能だと思います以下に理由を挙げます

 

1. カーネルメンテナー役割は単なるスキルではない

 

カーネルメンテナーは、プログラム実装力だけではなく、以下のような多様な能力資質必要です:

• 深い技術理解OS全般知識や低レイヤ動作原理を熟知。

独自問題解決能力:未知の問題トラブル自力解決できる。

コミュニティ運営力:他の開発者と協力し、コードレビュー設計議論リード

• 内発的動機OSSという報酬に直結しない領域でも情熱を持って取り組む。

 

これらは、単に教育研修で詰め込むだけでは育成できません。

 

2. 内発的な情熱教育で作れない

 

カーネルメンテナー必要な「寝食を忘れて技術を探求する情熱」は、個人の内発的なもの依存します。教育環境知識提供しても、強制的に「Linuxカーネルに夢中になる人」を生むことはできません。

 

実際、多くのカーネルメンテナーは、子供の頃からプログラミングシステムの仕組みに没頭してきたような、本能的に好奇心が強い人が多いです。企業教育機関がそれを模倣して情熱を植え付けるのは難しいでしょう。

 

 

3. 企業文化や制約が壁になる

 

企業内で教育を通じてカーネルメンテナーを育成しようとした場合、以下の問題が生じます

時間自由の不足:カーネル開発のようなOSS活動は、試行錯誤に膨大な時間必要します。企業プロジェクト締切や業務効率の制約下では、それに没頭できる環境が確保されにくい。

動機ミスマッチカーネルメンテナーは、純粋技術を愛する情熱で動いています。一方、企業での教育は主に「成果を出すため」に行われるため、動機根本的に異なります

 

結果として、教育を受けた人材短期的に成果を出す「カーネルエンジニア」にはなれても、コミュニティ尊敬される「カーネルメンテナー」にはなれないでしょう。

 

4. 教育役割は基礎を整えるに留まる

 

教育研修は、「カーネルメンテナーを作る」というよりも、以下のような目的で使われるべきだと思います

技術の基礎を広く身につけさせる:低レイヤOS設計ネットワークシステム全般の基礎知識

OSSコミュニティに参加する方法を教える:Gitの使い方や、パッチ投稿プロセスなど。

好奇心を刺激する:興味を持つ人に自由に挑戦できる環境を整備。

 

こうした基盤があれば、一部の人自然カーネルメンテナーになる可能性を高めることはできますが、全員がそうなるわけではありません。

 

結論

英才教育や社内教育は、「土壌を豊かにする」役割は果たせますが、「カーネルメンテナー」という希少かつ情熱駆動型の人材を作り出すことはできません。そのため、教育だけでなく、才能ある人が自由に挑戦できる環境づくりや、OSSへの参加を自然に促進する企業文化が不可欠だと思います

 

どう思われますか?

 

 

 

ワイ:
完全に同意です
わたしが知っているカーネルメンテーもコードを読む時間が減るという理由退職しました

 

 

Chat GPT

まさにそのエピソードが、カーネルメンテナー本質物語っていますね。カーネルメンテナーにとって、コードを読む時間や、技術に集中するための自由環境こそが何よりも重要です。それが奪われるような状況では、どれだけ安定した収入地位約束されていても、情熱が続かず退職してしまうのも頷けます

 

彼らは「技術のもの」に価値見出しているので、外部から業務的な圧力や制約が増えると、本来モチベーションを阻害してしまうんですよね。

 

教育企業提供するのはあくまで「サポート」であって、彼らの情熱探究心に干渉しない形での支援必要なのだと思います。この話からも、やはり「教育カーネルメンテナーを作れる」という発想は現実的ではないと再認識できますね。

2025-01-17

[] The Comprehensive Compendium of Programming Wisdom: Navigating the Multidimensional Landscape of Software Craftsmanship

Programming proficiency necessitates a comprehensive understanding of multifaceted concepts, paradigms, and philosophies that underpin the art and science of software development. The Unix philosophy, with its emphasis on modularity, simplicity, and composability, serves as a foundational ethos for elegant code design. This philosophy advocates for creating small, focused programs that excel at singular tasks, facilitating the construction of complex systems through the judicious composition of these atomic units.

Algorithmic Mastery and Data Structure Optimization

Proficient programmers must possess an encyclopedic knowledge of algorithms and data structures, enabling them to architect solutions with optimal time and space complexity. This encompasses a deep understanding of sorting algorithms (e.g., quicksort, mergesort), searching techniques (binary search, depth-first search), and advanced data structures (red-black trees, B-trees, Fibonacci heaps) The ability to analyze algorithmic efficiency using Big O notation is paramount for creating scalable solutions.

Paradigmatic Versatility

Object-Oriented Programming (OOP)

OOP principles—encapsulation, inheritance, and polymorphism—form the bedrock of modern software architecture. Mastery of design patterns (e.g., Singleton, Factory, Observer) and SOLID principles is crucial for creating maintainable and extensible codebases.

Functional Programming (FP)

The FP paradigm, with its emphasis on immutability and pure functions, offers a powerful approach to managing complexity and facilitating parallel execution. Proficiency in higher-order functions, currying, and monads is essential for leveraging FP's full potential.

Advanced Language Features and Metaprogramming

Expertise in language-specific advanced features, such as C++'s template metaprogramming or Python's metaclasses, allows for the creation of highly generic and reusable code. Understanding compiler theory and the ability to write domain-specific languages (DSLs) further expands a programmer's capabilities.

Concurrent and Parallel Programming

In an era of multi-core processors and distributed systems, mastery of concurrent programming models (e.g., actor model, communicating sequential processes) and parallel algorithms is indispensable. This includes proficiency in lock-free data structures, memory models, and synchronization primitives.

Systems Programming and Low-Level Optimization

A deep understanding of computer architecture, operating systems, and memory management enables the creation of highly optimized, low-level code. This encompasses knowledge of cache coherence protocols, CPU pipeline optimization, and assembly language programming.

Security and Cryptography

In an increasingly interconnected world, a thorough grasp of cryptographic principles, secure coding practices, and common attack vectors (e.g., buffer overflows, SQL injection) is crucial for developing robust and secure systems.

Version Control and Collaborative Development

Proficiency in distributed version control systems (e.g., Git) and collaborative development practices (code reviews, continuous integration) is essential for effective team-based software development.

Testing and Quality Assurance

Advanced testing methodologies, including property-based testing, fuzzing, and formal verification techniques, are indispensable for ensuring software reliability and correctness.

 

In conclusion, the pantheon of programming knowledge extends far beyond mere syntax mastery. It encompasses a rich tapestry of theoretical concepts, practical skills, and philosophical approaches that, when harmoniously integrated, enable the creation of elegant, efficient, and robust software systems. The relentless pursuit of this multifaceted expertise is the hallmark of a truly accomplished programmer.

2025-01-07

anond:20250107160825

git使うから使い方調べておいてって伝えれば済む話なんじゃないの?

そんな難しいもんじゃないし。

2025-01-06

Difyで書いたアプリバージョン管理

どうしてる?

いちいち exportして gitに食わせるのがめんどくさいんだけど

2024-12-31

anond:20241231111107

Gitできないじいさん(役職なし)が職場で歴戦のエンジニアぶって地獄職場よりマシやな。

2024-12-27

おひとりさま社内SEなんでgitも使ってはいるけどブランチとか全然使えてない

これじゃSVNとかCVSと何が違うんや…

みんなに知っておいてほしいこと

この道ウン十年のプログラマーですと、自己紹介する老人がいたら、全く出世できなかったどうしょうもないやつか凄腕しかいない。

 

そして割合的には凄腕はめちゃくちゃ少ない

 

GitできないSlackできないほとんどを占める若い開発メンバーコミュニケーションできない(へりくだることができない、自分が偉い前提での会話しかできない)

 

というのがそういう老人の大半です。

から警戒してね

そういうのがいる現場からはさっさと逃げたほうがいい

そんなのが残れる現場はどこかおかし

2024-12-08

なんでMySQLって人気なくなってるの?

https://survey.stackoverflow.co/2024/technology

https://survey.stackoverflow.co/2022/#technology

https://survey.stackoverflow.co/2020#technology

データベース

-202020222024
PostgraSQL36.143.648.7
MySQL55.646.940.3
SQLite31.232.033.1
SQLServer33.026.925.3
MongoDB26.428.324.8
Redis18.322.120.0
MariaDB16.817.917.2
Elasticsearch13.812.212.5
Oracle16.511.510.1

2022年は他の年とおなじ小数点1桁にそろえるために四捨五入してる


MySQL+MariaDBではまだMySQL系が多いけど

PostgraSQLが覇権にぎるのは時間問題だよね

Oracleに買収されたから?

10年前のブログだけど、すでにそういう指摘がされてたみたいだね

MySQL凋落Git,Nginxの飛躍的な伸び

http://sookibizviz.blog81.fc2.com/blog-entry-1493.html

anond:20241206191432

こんな職場ならいける

社員数5名のテナント事務所

同僚

・50代後半のGit使えない、モダン発言語全部無理役職なし、自分ミスってるのに増田にキレる自称ベテランエンジニア

自称コミュ強凄腕営業のおばさん50代(デブ)とにかくいつも喋っていてうるさい、勝手に基幹システムに入ってシステムを止める、取締役からは陰で「あのうるさいおばさん」と形容される。人前でゲップをするのが格好いいと思っている。

20代社員男、しゃべらない。実務経験を積んだらそのうち消える

・30代女、電話受けしかしてないが増田は「増田も30代女さんみたいに役に立たないとね、先輩に色々教えてもらいなよ?」と言われる

 

取締役

ヨイショされるのが好き、周囲の社員から毎日「さすが〇〇さん!!」と言われないと気が済まない。言わない奴はやめさせる。口癖は「エンジニアよりも営業の方が偉い」

2024-12-06

そろそろ寝るか?

終夜運転ジョブも送り込んだし・・

朝方トイレに起きたときに、git push ....しておこう!

2024-12-04

anond:20241204194821

そういうドキュメントとかGitとか地味な仕事も上の人含めて周りが割とすんなりちゃんとやれてるのを見てると、どうして俺は…とはなってしまうんですよね

ただそう言ってもらえると、少しくらいは頑張れそうです

YouTuberは…そういうIT系あるあるとか体験談ネタにすれば少しくらいはやれるかも?(編集とかネタセンスがないかもしれないけど)

anond:20241204194148

ドキュメント書くのとかGItマージとかってよくわからんからだれもやりたがらない

増田は一番難しい作業押し付けられてる

ミスしながらもできてるならかなり優秀

それはそれとしてやってて苦痛ならYoutuberになろうぜ

ログイン ユーザー登録
ようこそ ゲスト さん