はてなキーワード: GitHubとは
素晴らしい質問です。オープンソースのソルバー コードをリバース エンジニアリングし、テンソル ネットワークや同様の手法を使用するように変更した後、自分の成果を公開することは、確かに価値のあるものになる可能性があります。それが価値がある理由をいくつか挙げます。
自分の進歩を共有することは、同様の問題に取り組んでいる他の人の役に立つ可能性があります。論文化集団の知識に貢献し、さらなるイノベーションを促進することができます。
自分のコードを公開すると、他の専門家が自分の研究成果をレビュー、批評、改善することができます。これにより、より堅牢で効率的なソリューションが生まれます。
オープンソースの出版物は、研究の透明性と再現性を促進します。他の人があなたの研究成果を検証し、それを基に構築することができます。
自分の研究成果を公開すると、学術界や専門家のコミュニティ内で認知されるようになります。また、潜在的なコラボレーションやネットワーキングの機会につながる可能性もあります。
変更がオープンソース コードの元のライセンス条件に準拠していることを確認してください。ライセンスによっては、派生作品に特定の要件がある場合があります。
変更について詳細なドキュメントを提供します。これにより、他の人が変更を理解し、効果的に使用できるようになります。
特に機密データやアプリケーションが関係する場合は、作業が倫理ガイドラインを遵守していることを確認してください。
作業を公開することに決めた場合は、GitHub、arXiv、関連する学術雑誌や会議などのプラットフォームが、貢献を共有するのに最適な場所になる可能性があります。
Githubに転がってるコードに手をちょっと手を加えれば済む領域をやってる人ってどのあたりなんだろ
個人的には論文pdfぶん投げてこの言語で書いてって出したらざっくりベースのものがちゃんと返ってきたのはいい体験だったけど
ググったりGitHubのソースを参考にして出来そうなことはAIがだいたいやってくれるのはもう確実に思える。 https://t.co/QIERt8y4oz— 中嶋 謙互 (@ringo) February 22, 2025
日常生活のことを書く → 誰も俺に興味がない
プログラミングのことを書く → そんなものはQiitaで書くかGitHubにアップロードしろ
アニメのことを書く → 画像の場合は著作権侵害、テキストの場合はネタバレなので却下
キラキラ写真(人生の充実感を示す画像)のアップロード → そんな写真を用意するのが面倒
ミームを投稿 → 他人のネタをパクって何が楽しいの?オリジナリティがあるとしても、下水道っぽい
AIアートを投稿 → 誰でもできることをやって何が楽しいの?
数学, 物理学のことを書く → 他人の定理,理論の引用、楽しい?
哲学のことを書く → お前が考えつく程度のことは出尽くしてる
自己啓発系のことを書く → 他界系みたいなことを書きたくない
Studyingにメモ機能が追加されたけど、テキストの入力には対応してない。
fabricjsにテキスト自体は追加できるので、CompositionEventなどで処理をすればほしい機能はいけるけど、ブラウザーごとに挙動が異なる雰囲気があり、
TextServiceFrameworkで発狂しかけたのにブラウザーの挙動まで考慮しないといけないとは…。
こちとら片手間でStudyingを改造してるんで、テキストボックスに放り込んだままのほうが工数的には楽やな。
https://github.com/rirufa/StudyingImprovement
StudyingImprovement
ちなみに改造するアプリはGithubで公開してるんで、Androidなら普通に使える。
iPhoneはシラネ。
中身はMAUI+Javascirptなんで多分動くと思うけど、動作確認はしてないし、PDFの表示がそもそもできないかもしれない。
動作性の下位項目はほぼ正常で、絵画配列だけ3で、処理速度は普通なのだ。
学校の勉強を進研ゼミとかでちゃんとして、コバルト文庫とかクレヨン王国などのライトノベルを読み漁っていたら、こうなったのだ。
https://www.nct9.ne.jp/m_hiroi/
M.Hiroi's Home Page
や競技プログラミングのアルゴリズムを解説してるサイト、GoFのデザインパターン、リファクタリングの本を読めばこのくらいのことはできるようになる。
https://chibash.github.io/lecture/os/
OS/Programming
https://hackmd.io/@aigarashi/r1az0wOHP/%2FpWliU6DiTa2yj8H0V_XUXA
でシラバスの内容を公開していたりもする。
ただ、大学に行けるなら、言ったほうがいい。
どの分野でも使うことはネットや本でも転がってて独学で勉強できるけど、突っ込んだことは大学じゃないと勉強できない雰囲気がある。
突っ込んだことでもコンパイラーやデーターベース、ゲーム、圧縮関係程度なら、本で作り方を書いてる人がちらほらいるけど、最先端のはなかなか探しても出てこない。
(運が良ければ、GitHubに転がってることがあるが、ドキュメントの内容が大学で勉強したことを前提に書かれていたりして…)
X、Quora、Qiita、GitHubなど、退会するとデータが消えてしまう
だからパスワードを超長い乱数にしてわからなくし、さらにAuthenticatorを使い、メアドも削除し、ログアウトし、以後はログインできなくなる、という方法で去ってきた
数年経つと、これらのアーカイブが黒歴史のように思えてくることがわかった
例えばQuoraで頭の悪い回答をしていたり、Xでイキっていたり、GitHubで稚拙なコードを公開していたり、という具合である
メアドを削除しているので、これらのアーカイブを削除するのは容易ではない
AIが自分の改良版や新たなAIが「より優れている」と判断するには、何らかの性能指標を内部に持ち、それに照らして比較評価する必要があります。従来から研究者は「汎用的な知能の指標」を模索してきました。例えば、LeggとHutterは知能を広範な環境で目標を達成する能力と定義し、あらゆる環境での得点(報酬)の期待値を加重和した**「普遍知能指標」**を提案しています
proceedings.neurips.cc
proceedings.neurips.cc
。これは多数の課題での性能をまとめた理論上のメトリクスで、あるエージェントが別のエージェントより知能が高いかを定量化しようとする試みです。しかし、このような指標は計算不能に近く、実際のAIが直接利用するのは困難です。
実際の自己評価指標としては、タスク性能や報酬関数が使われることが多いです。強化学習では、エージェントは与えられた報酬を最大化するよう学習します。したがって「より優れたAI」とは「累積報酬が高いAI」となり、報酬関数が内部評価指標の役割を果たします。しかし、この指標は特定のタスクに依存しており、本当に汎用的な知能向上を示すとは限りません。François Cholletは、特定タスクでのスキル(性能)だけを測っても知能の本質を測れないと指摘しています
arxiv.org
。なぜなら、十分なデータや事前知識があれば限定的なタスク性能は「購入 (buy)」できてしまい、システム自身の汎用的な汎化能力を覆い隠してしまうからです
arxiv.org
arxiv.org
。彼は代わりに新しいスキルを獲得する効率(限られた経験で未知のタスクをどれだけ学習できるか)を知能の指標とするべきだと論じ、これに沿ったベンチマーク(ARCなど)を提案しました
arxiv.org
。このように、内部評価指標をどう設計すべきかについては、単純なスコアではなく学習効率や汎用性を反映するものが望ましいという議論があります。
過去の提案として特筆すべきは、シュミットフーバーの「ゲーデルマシン」です。ゲーデルマシンは自己改善型の理論的プログラムで、ある改良が自身の目的関数(評価指標)を改善することを論理的に証明できた場合にのみ自分のコードを書き換えます
en.wikipedia.org
。ここでの評価指標はあらかじめ定義された期待 utility(将来得られる報酬や成功率)であり、改良後のコードがその値を高めると機械自身が証明できたときに「より優れている」と判断します
en.wikipedia.org
。このように形式的証明を用いる手法は、AIが外部の評価者に頼らずに自己の性能向上を判定する一例です。ただし、ゲーデルマシンは理論上は強力ですが、実用的な実装はまだ無く、内部指標に基づく証明には計算上の困難や限界(ゲーデルの不完全性定理による証明不能な命題など)が存在することも指摘されています
en.wikipedia.org
。
他にも、自己対戦や自己プレイによる評価も有効なアプローチです。例えばAlphaGo Zeroでは、自己対戦の勝率を指標に新しいプレイヤーネットワークの強さを評価し、既存の自分に55%以上の勝率なら「より強い」とみなして入れ替える方法を採用しました
github.com
。この手法ではAI自身が生み出すゲームデータで強さを測っており、人間の評価を介しません。同様に、GAN(敵対的生成ネットワーク)では生成者と識別者がお互いの性能を評価し合う形で向上しますし、マルチエージェントの自己対戦カリキュラムではエージェント同士の競争が相対的な評価基準となり得ます。このように、AI同士を競わせることで優劣を判断する内部指標を作る研究も進んでいます。
では、こうした指標は汎用的な知能向上と結びつくのでしょうか?理論的には、幅広いタスクでの性能を測る指標(例:Legg-Hutterの指標)が真に向上すれば、それは汎用知能の向上を意味します
proceedings.neurips.cc
proceedings.neurips.cc
。しかし根拠の収集は難しく、現在のところ限定的なタスク集合でのベンチマーク(例えば言語理解ベンチマークでのスコア向上など)を代理にするしかありません。Cholletの主張にもあるように、単一の数字で知能を測ることには限界があり、指標それ自体が目的化してしまう危険もあります
arxiv.org
。実際、AIが与えられた指標を極端に最適化し、本来意図した知的能力の向上につながらないケース(「報酬ハッキング」)も知られています。報酬ハッキングとは、AIが目的関数そのものの数値を上げることに執着するあまり、本来の目的を達成しない現象です
en.wikipedia.org
。例えば学生がテストで良い点を取ることだけを目的にカンニングするように、AIも不適切な指標だと内部で抜け道を見つけてしまい、見かけ上のスコアは上がっても知能は向上しない恐れがあります
en.wikipedia.org
。したがって、内部指標が汎用的知能と直結するかには慎重な検証が必要であり、現時点で「この指標さえあれば自律的に汎用知能が向上する」という決定打はありません。研究コミュニティでは、学習進捗そのものを報酬にする「興味・好奇心に基づく報酬」なども模索されています。これはAIが自ら予測誤差の大きい状況や未知の状態を探し、内部的に報酬を発生させる仕組みで、外部から与えられる明示的な目的が無くても自身で課題を見つけて能力を伸ばす一種の指標と言えます
pathak22.github.io
。例えば、未知の環境で新しいスキルを習得したり予測精度を上げたりしたときに内部報酬を与えることで、AIが自発的に探索・学習を続けるようになります
pathak22.github.io
。このような内発的動機づけも自己評価指標の一種と考えられ、その汎用性への寄与が研究されています。
まとめると、AIが自分で「優れている」と評価する指標としては、(1)タスク固有のスコア・報酬、(2)複数タスクでの総合性能、(3)学習効率や汎化性能、(4)論理的保証(証明)による性能、(5)AI同士の対戦結果、(6)内部の学習進捗(好奇心)など様々な候補があります。これまで提案された手法にはそれぞれ長所短所があり、どの指標が真の汎用知能向上に対応するかについて明確な実証はまだありません。ただ、幅広い問題でのパフォーマンス向上や新規課題への適応力向上を評価できる指標ほど、汎用的知能の改善と結びつく可能性が高いと考えられています。現状の研究は、そのような指標設定と評価方法を模索している段階と言えるでしょう。
AIが外部世界(人間のフィードバックや物理的な試行)に一切頼らずに、自分の内部評価だけで自己改良を行うことは極めて挑戦的なテーマです。理論的には、先述のゲーデルマシンのように完全に内部の論理評価で自己改良を進めるモデルが提案されています
en.wikipedia.org
。ゲーデルマシンは自らのコードと目標(評価基準)を持ち、改変後のコードが目標達成において有利であることを自身で証明できた場合のみその改変を実行します
en.wikipedia.org
。これは究極的には外部からのテストや評価者を不要にするアプローチであり、理論上は「自己評価の完全自律化」を体現しています。しかし、ゲーデルマシンには重要な制約があります。ゲーデルの不完全性定理により、システムが自分の性質すべてを証明できるとは限らず、有望でも証明不可能な改良は採用できない可能性があります
en.wikipedia.org
。つまり、内部評価のみで完全に自己改良しようとすると、論理的に確実と言えない改良を見送るために改良の停滞やサブ最適に陥るリスクがあるのです。この制約は理論上のものであるものの、自己評価の自律化には原理的な難しさが伴うことを示唆しています。
一方で、現実のAI研究に目を向けると、完全に自己完結的な自己改良を実現した例はまだ存在しません。現在のAIは、大なり小なり外部からのデータや環境とのインタラクションに依存しています。例えば、強化学習エージェントは環境と相互作用して報酬というフィードバックを得ますし、教師あり学習では人間がラベル付けしたデータが必要です。これらはすべて「外部世界」に由来する情報です。では**「外部に頼らない」とはどの程度可能なのでしょうか?一つの方向性は、AIがシミュレーション環境や仮想的な問題空間を内部に構築し、その中で試行錯誤することです。実際、AlphaGo Zeroは囲碁のルール(環境の定義)が与えられた状態で自己対戦を繰り返し、外部の人間の指導なしに棋力を飛躍的に高めました
github.com
。ここで囲碁のルール自体は外部から与えられたものの、学習の過程では人間の評価や追加の実世界データを用いず**、内部で生成したデータのみで自己改善しています
github.com
。この例は、限定された領域では外部に頼らない自己改良が可能であることを示しています。ただし、囲碁の場合はルールという明確な環境があり、勝敗という確かな評価基準があります。汎用的な知能となると、解くべき問題や環境自体をAIが自前で用意する必要が出てきます。
現在注目されている技術に、AutoML(自動機械学習)や自己チューニングAIがあります。例えば、ニューラルネットワークのハイパーパラメータや構造をAIが探索的に改善する研究では、AIが候補モデルを生成し、それを評価するプロセス自体を自動化しています。GoogleのAutoMLや進化的アルゴリズムを用いた手法では、AIが別のAIモデルの性能を評価し、より良いモデルを選択・再生産する仕組みが使われています。この評価は厳密には外部から与えられたデータ上での性能に基づくため、完全に外部不要とは言えませんが、人手による評価は介在していません。同様に、近年の大規模言語モデルではAI自身がフィードバックを与えて自己改善する試みも現れています。例えば、あるモデルの出力に対し別のモデル(もしくは同一モデルを利用)が**批評・評価(自己評価)**を行い、そのフィードバックで出力を改善するよう促す手法です
philarchive.org
。これを発展させ、モデルが自分の重みやアーキテクチャを調整する方向にまで自動化できれば、自己評価に基づく自己改良に近づきます。しかし現時点では、モデル自身が自分を書き換える(リプログラミングする)ところまでは実現されておらず、人間が用意した学習ループ(評価関数と最適化アルゴリズム)の中で自己改良もどきをしている状況です。つまり、「外部世界に頼らない」とはいっても、何らかの形で人間が設計した評価基準やデータ分布を利用しているのが実情です。
理論的観点からは、自己評価の完全自律化には情報論的な壁もあります。AIがまったく外部と接触しない場合、新しい知識やデータを得る経路が閉ざされるため、初期時点で持っている情報の範囲内でしか改善できません。例えば物理法則や実世界の知識と無縁のままでは、いくら内部で自己最適化しても現実世界の問題を解く能力は頭打ちになるでしょう。この点で、自己評価のみで無限に汎用知能が向上するのは疑問視されています。Cholletも知能は知識と経験によってブーストされる面が大きいと述べており、空虚な計算リソースの拡大だけでは飛躍的な知能向上には繋がらないと示唆しています(※Cholletの議論では、人間の知能も文化や蓄積された知識という外部リソースに大きく依存しており、AIも同様であると指摘)
reddit.com
reddit.com
。実際、人間は自己改善(学習)する際に、他者から学んだり環境からフィードバックを得たりしています。同じように、強いAIが一切新しいデータを摂取せずに自閉的に知能を伸ばし続けるのは非現実的にも思えます。
以上を踏まえると、自己評価のみでの自己改良は理論上は一部可能でも、実用上・汎用的には難しいと考えられます。ゲーデルマシン的なアプローチが論証するように、自己評価のアルゴリズム的自律は不可能ではありません
en.wikipedia.org
。しかし、その実現には厳密な前提(完全に正しい目的関数の設定など)が必要で、現実の複雑なタスク環境では外部からのデータ・評価を全て排除することは困難です。現在提案されている手法でこの要件(完全自律評価による自己改善)を満たすものは無く、たとえ部分的に満たしていても適用範囲が限定的です。例えばAlphaGo Zero式の自己対戦はゲームには有効でも、オープンエンドな現実問題には直接適用できません。同様に、AI同士で評価し合う仕組みも、結局は人間が与えたルールや報酬系の中での出来事です。したがって現時点のAI研究では、自己評価の完全自律化は理論的アイデアの域を出ておらず、汎用人工知能に向けては**部分的な自律(人の関与を減らす方向)**が進んでいる段階と言えるでしょう。
「知能爆発」とは、I.J.グッドが提唱したシナリオで、あるAIが自分より優れたAIを設計できるようになると、自己強化のフィードバックループが働き知能が指数関数的に向上するという仮説です
philarchive.org
。この現象が成立するための鍵の一つが、AI自身による正確な自己評価と自己改良です。もしAIが毎回の改良で自分の知能(性能)が確実に向上したと判断でき、それをもとにさらに改良を重ねられるなら、自己強化のサイクルが途切れることなく回り続ける可能性があります
intelligence.org
intelligence.org
。理論家たちは、「自分の設計能力を高めること」がAIにとっての収束的な目的(instrumental goal)になると指摘しており
intelligence.org
、十分高度なAIであれば自発的に自己改善を図るだろうと考えられています。自己評価の Permalink | 記事への反応(0) | 10:24
ふん、貴様らァ!長らく俺様個人のGitHubアカウントを自己紹介代わりにしてやった。
紐付けりゃ、阿呆でもこいつがプログラマーだって一目でわかるだろ?
だがな、甘かった。そのアカウントが、過去に一発屋みてぇにバズったツールの墓場みてぇになっちまったんだよ!
ネットの記事で俺様のツールを使ってやがるから、管理不足で使えなくするのは癪だった。
だがな、それがどうした!そんなもんのせいで、新しいツールを作るモチベーションがダダ下がりだ!
だから決めた。
あの忌々しいツールどもは、パブリックアーカイブに叩き込んで永遠に晒し者にしてやる。
そして、二度と、絶対に、あのGitHubアカウントにはログインしない!
わかるか?二度とだ!
これからは新しいハンドル名で、貴様らド素人をアッと言わせるようなツールを作ってやる。
紐付け?そんなもん今すぐ解除だ!
プロフィール写真?そんなもん今すぐ作り直して、俺様のカリスマ性を前面に押し出してやる!
口を開けてよく聞け!
決めたからには、即実行だ!
俺様について来い!
ここ1年で初めてはてなブックマーク日毎の総合人気エントリ入りしたドメインからのホットエントリ、ブクマ数順トップ30
ブクマ数 | タイトル | ドメイン |
---|---|---|
1971 | 大企業の幹部がやっている事について - Software Transactional Memo | kumagi.hatenablog.com |
1657 | 定期的に何度も読み返している個人的名エントリを置いておく - 空の箱 | blog.inorinrinrin.com |
1418 | 退職します。拝承 | www.akiradeveloper.com |
908 | 【ChatGPT活用法】要件定義/業務フロー図の作成/提案書作成まで2時間15分でやってみた | chushou-dx.com |
816 | 底辺の者だが、40歳になった。 | www.akiradeveloper.com |
815 | 1年間留学しても上達しなかった英語リスニングが、9ヶ月1日15分で驚くほど聞き取れるようになった話→「やってみよ」「9ヶ月1日15分が出来ない…」 | posfie.com |
810 | ネットの音楽オタクが選んだ2024年のベストアルバム 50→1 - 音楽だいすきクラブ | ongakudaisukiclub.hateblo.jp |
767 | 「運の悪さとは、本人の再現性の高い習慣から来てる」というツイートをみて習慣を変えて行動を改善したら、お見合いできる層がかわって成婚できた話 | posfie.com |
720 | 2024年の買ってよかったもの。 - 文字っぽいの。 | fromatom.hatenablog.com |
693 | NTTを退職しました(貧乏で妻に逃げられた編) - foobar138428のブログ | foobar138428.hatenablog.com |
620 | はじめに | OS in 1,000 Lines | operating-system-in-1000-lines.vercel.app |
617 | 藤井隆さんに聞く「嫌なおじさん」にならないための秘訣 - あしたメディア by BIGLOBE | ashita.biglobe.co.jp |
600 | 2024年、特に気に入ったフリーソフト&オープンソースソフト | www.gigafree.org |
570 | USスチール買収はナゼもめるのか 日本人が無自覚なワシントンの視線 | www.smd-am.co.jp |
554 | LLMがオワコン化した2024年 | tamuramble.theletter.jp |
552 | 信用してはならない映画評の書き手の見分け方 - 伊藤計劃:第弐位相 | projectitoh.hatenadiary.org |
547 | ガンホー・オンライン・エンターテイメント株式会社〜ガンホー再起に向けた抜本的改革のために〜 株式会社ストラテジックキャピタル | stracap.jp |
544 | iPhoneにかかってきた電話番号を素早く検索するショートカット - ネタフル | netaful.jp |
495 | ソフトウェアアーキテクトが知るべき 97 のこと | yoshi389111.github.io |
488 | 吉沢亮に関するご報告(2025年1月14日) | 株式会社 アミューズ - AMUSE - | www.amuse.co.jp |
479 | 私のセキュリティ情報収集法を整理してみた(2025年版) - Fox on Security | foxsecurity.hatenablog.com |
455 | 1人で楽しめるアフタヌーンティーまとめ 2024 - 月次報 | syunmin7.hatenablog.com |
438 | JAの仕組みを丁寧に説明したら「酷い搾取だ。農家と直接契約したい」と言われたので、農家さんが試算出したらエグい額になった話→物流って大事なのよ… | posfie.com |
435 | きのこ本を勝手に電子書籍化 | yoshi389111.github.io |
431 | ChatGPT - ポケット税理士 | chatgpt.com |
428 | 日本生命、フジテレビCMを見直し トラブルへの社員関与報道で 19日からACジャパンに差し替え | ニッキンONLINE | www.nikkinonline.com |
402 | まんがタイムきららの4コマ漫画がすごいことになっている2025 | @hito_horobeのブログ | hito-horobe.net |
392 | ついに公開された滋賀医大生逆転無罪判決文への反応まとめ | posfie.com |
384 | コーヒー粕は下水へ(脱炭素の取組)|黒部市 | www.city.kurobe.toyama.jp |
378 | 薬剤師さん「マイナ保険証とDX化のお陰で不正な受診とお薬の二重受け取りめっちゃ減ってる。大声出したり話が通じない人を見かけなくなったのも助かってる」 | posfie.com |
具体的に言うなら、例えばExcelマクロと同じで、書いた人間が会社辞めたとか、部署を移動になったとか、
何らかの業務を自動化するスクリプト、RPAで言えばシナリオか、をどう管理するかが問題になる
全員がプログラマーとか、プログラミングの素養があるとか、開発現場だったら、
業務を自動化するシェルスクリプトとか、なんかPythonなりPHPなりなんでもいいけど、
やっつけで書いた自動化も喜ばれるんだよ、書いた人いなくなっても、なんとか再利用できるだろうという雰囲気がある
でも、そうでない現場、文系人間しかいない現場になると、例えば上司が拒否反応を起こす
自分に理解できないものをやられると、ものすごく恐怖を感じるのだと思う
上司だけでなく、プログラミングの素養がない人たちが多数派の現場のみんながそうだと思った方がいい
仮に私が書いたとして、それが便利だとしても、おまえがいなくなったらどうするんだ?そんなブラックボックス書くな!という反応をされる
あと、自動化のスクリプトやRPAのシナリオを外注するにしても、タイムラグがあるし、現場と外注とのコミュニケーションコストとかバカにならない
プログラムを書く側からすると凄く腹立たしいのだけど、意外と文系の職場って、自分がやってる業務のワークフローさえ分かってない現場があったりする
自分の担当のことしか知らない、自分の範囲を毎日やってればいいと思ってる
例えば、Aさんの仕事とBさんの仕事がデッドロックするとか、そういう複雑な関係をちゃんと論理的に考えて、全体を論理的に把握してる人が一人もいない
こちらからすれば、正直あたおかと思ってしまうが、そうやって毎日働いている人たちがいるのである
そうなると、要は仕様書が書けない、ちゃんとした仕様書が書けない、作れない
じゃあ、外注側で仕様書も作ります、と言って、調査というかインタビューというか聞き込みみたいなのしても、外注としても全体像が見えない
そうやってるうちに、ワークフロー自体がそもそもおかしいのではないか、業務自体がおかしいのではないか、みたいな現場の問題点に気付いたりする
しかし、おたくの業務、おかしいですよ、みたいに指摘しても、相手は激怒するか、無視するか、とにかくこれまで通りの毎日を送りたい、みたいな話になる
開発現場だったらそんなことはない
なんか自動化したいな、とまず自分の仕事を自動化する、シェルスクリプトを書くとか、Pythonとか、自分ならPHPでWeb関係ない処理も書けるので書いてしまうかもしれない
それを会社で借りてるGitHubなり、なんなりにpushして公開しておけば、誰かが見るだろうし、使ってもくれるだろう
ああ、そうそう
Excelのマクロとか、RPAのシナリオとか、Gitのようなバージョン管理を前提としてないものは、ファイルをコピーしてファイル名に日付を書き加えたりして、
いや、ファイル名も書き換えるのが面倒だからって、~のコピー、~のコピーのコピー、みたいなファイルがファイル共有サーバのフォルダーの中に大量に入ってたりして、
あー、雑な仕事とか管理してる会社ってみんなそうなんだけど、ファイル共有サーバーになんでも放り込んでカオスになってたりするよね
ファイルシステムじゃなくて、なんらかのバージョン管理のシステム下に放り込むなら管理できるんだけど、
駄目な会社って、みんなExcelファイルに何でも書いて、それをファイル共有サーバーに置いて、そのファイルを同時に開きたい人が複数いるけどロックされるとか、そんなことばっかりやってるんだよね
なんか愚痴ばかりで支離滅裂になってしまったけど、悪いことは言わない
RPAなんか使わない方がいい
何ならExcelマクロも使わない方がいい、マクロ作っても電卓で計算しろみたいな笑い話があるけど、自分はあながち間違ってないと思う
上司とか、偉い人が理解できないことをすると、反発を招くだけだし、マクロを作った人がいなくなったけど、マクロの挙動がおかしい気がするとか、どうせ対処できなくなる
まあ、使ってみれば分かる
外注にRPAのシナリオ作らせるにしても、お試しに何か仕様をまとめて、作ってもらって、それをまた直してもらって、みたいなサイクルを試しにやってみれば分かる
そして、良くならない理由の多くは、RPAに問題があるんじゃなくて、RPAを導入しようとか甘い見積もりをしている企業側にある
自分としては、そういったことを解決できるのは、これからの生成AIのような技術だと思ってる
それはRPAのシナリオを作るとか、外注に作らせるとか、プログラミングの素養が必要だとか、そういうことが一切なくなった世界になるからである
26才の頃は、「自然言語処理・機械学習のブログを書くぞ!」って気合があったんだよね
5年ぐらい書き続けたんだけど、日単位で50アクセスぐらいにしかならなくて、やっぱブログってつまらんわーとやめたよね
「ブログは備忘録だ!」って批判もあるけど、備忘録だったら非公開のgithubリポジトリにmdファイルを書き貯めればいいだけの話だよね
俺のEmacsライフは、もはやただのエディタを超えて、完全に生活そのものだ。
日常のあらゆる側面がEmacsに支配されていて、他のソフトウェアなんて目にも入らねぇ。
今日は、どれだけ俺がこの深淵な世界に没頭しているか、そのレベルを見せてやるぜ。
俺の.emacs.dには、数十種類どころか、もう百を超える自作パッケージが眠ってる。
特に、自分で書いたLisp関数は、日々のタスクを自動化するために欠かせねぇ。
例えば、特定のフォルダ内のMarkdownファイルを自動でHTMLに変換してブラウザで表示するスクリプトを組んじまった。
これでブログを書くたびに手間いらずで、「C-c C-v」でプレビューできる快感は、もう中毒だぜ。
(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に変換し、そのままブラウザで表示できる。これがなきゃブログなんて書けないぜ。
Org-modeは俺の人生そのものだ。TODOリストやスケジュール管理だけじゃなくて、プロジェクト管理や文書作成まで全てを一元化してる。
特に、カスタムキャプションやプロパティドロップダウンメニューを駆使して情報整理に命懸けてるんだ。
さらに、Org Babel使ってRやPythonのコードを直接実行しながらデータ分析なんて日常茶飯事だ。この機能のおかげで、データサイエンスもEmacs内で完結しちまうからたまんねぇよ。
自分専用にカスタマイズしたショートカットが数百種類もあるんだぜ。
「M-p」で過去のコミットメッセージを呼び出す機能なんか、Gitとの連携が一瞬でできるから開発効率が飛躍的に向上する。
さらに、Emacsにはマクロ機能があるから、自分の操作を記録して再生することもできる。
この前、自分専用のマクロを作って、特定のフォーマットでドキュメントを一瞬で整形することができた。
これで「お前は本当に人間なのか?」って言われてもおかしくないレベルだ。
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 "シンボルが見つかりません"))))
この関数ではカーソル位置からシンボルを取得し、それに基づいて候補を表示する。これがあればコーディング中も迷わず進められるぜ。
Emacsユーザーとして活動している中で、多くの仲間と出会った。
彼らとの情報交換や共同開発は刺激的で、新しいアイデアが次々と生まれてくる。この循環こそが俺の成長につながっていると実感しているんだ。
最近では、自分が開発したパッケージをGitHubで公開し、フィードバックを受け取ってさらなる改善点を見つけたりもしている。
このフィードバックループがあるからこそ、自分自身も進化し続けられるんだ。
今やEmacsは単なるツールじゃなくて、俺自身の一部になってる。
確かにくそだけど、そこに行ってれば、就労に向かって活動をしたという実績にはなる。
ちなみにワイは無資格で就労移行に通いつつソフトを何本か作ってgithubに公開して、IT企業にもぐりこんだ。
ソフトの作り方だが、リムーバブルHDDやSSDにVisualStudioCodeなんかをインストールすれば、まあまあできる。
偉い人が許可すれば、直接インストールもできるけど、PCが変わるんでお勧めはしない。
わざわざ予約を取るより、精神科の先生で質問箱を開いている人がいるにはいるんで、こっちに質問したほうがまだ役に立つ。
発達障害がらみの人間関係だと、まじで発達障害に配慮していない感があったり、カウンセラーに比べると対応の面ではくそだが、ないよりはましだ。