はてなキーワード: Gitとは
当方アラフォープログラマー。Gitはターミナルで使っている。
若手から「PRマージしようとしたらconflictしてるので解消方法教えてください。」と言われ見たのだが使ってるのがGitHub Desktop。
どうやら最新化してないmainからbranchを切っていたのが原因だったようで、まず手元のmainを最新化しようとしたのだが、そもそもどこでgit fetch, git pullできるか分からない。
若手にfetchしてと言っても若手もピンときてない。
よく分からないのでググってみるが、見た目が違うものが出てきてよく分からない。
30分くらいあれやこれや調べたが結局よく分からなかったので、こちらで巻き取って手元のターミナルでrebaseしてpushし直して2分程度で解消。
もちろんこちらがGitHub Desktopに慣れてないのもあるし、「CLIこそ至高!」とか言ってるのは老害感あると思うが、それにしてもGitHub Desktopの非直感的なUIと、ググっても全然使い方、特にconflict解消のような困ったときどうすればいい系情報が全然出てこないのはコマンドのGit使うよりよっぽど難易度が高いのではと思ってしまった。
GitHub Desktop利用者で読んだ人いたらぜひ「ここに載ってるよ。これだからCLI中の老害プログラマーは…」などコメントほしい。
最近プライムデーで3万くらいの2in1のChromebook買ったんだけど、割といい感じ
最近カフェで技術書を読みながらNotionにメモを取る、みたいなことをよくやっているんだが結構快適
さすがに3万円だからプログラミングはきつそうだけど、まあそれはiPadも条件同じじゃん?
それでもテキストエディタで小説を書いて、コマンドラインでGit管理するくらいなら全然問題ない
あと、PC用のChrome拡張がガンガン入れられるのも強み。iPadユーザーって、未だにAdblockもアマプラの倍速視聴もなしで使ってるんだろうか?
絵描きとかには少し厳しいかもしれないけど、サブ用のタブレットとして何を買うかずっと悩んでいたから、正解見つけたなって感じ
危なっかしいなあと思いつつも、試してみたい気が抑えられずにインストールしてみたんだけど、
ブコメにもあるように、「正規パッケージのインストールに紛れたインジェクション怖い」もあるし、
パッケージ管理が荒れがちなので、なんか便利だったらいいなあ、みたいに思ったのだけど、
そんな感じでもないのでアンインストールしようと思ったんだけど…
で、Windowsの設定→アプリからアンインストールしようと思って見てみたら、Winget 2?とかいうのが一緒に?インストールされていて、
Winget 2って何?そんなもんあるんか?と思いつつ、気味が悪いのでWinget 2とかいうのもアンインストールしたんだけど、
当然、このWinget 2をアンインストールしても、PowerShell上でwingetコマンドは使えるし、
winget -vしたら、うちのはv1.9.1792-previewになってるのだけど、改めて2って何?俺のバージョンが古いのだろうか…😟
https://github.com/microsoft/winget-cli/releases
当たり前だけど、2なんてないわな…
変なの入れちゃったな…
こういうの、普通にアンインストールしただけだと残ってるものがあったりするし、やめとけばよかった…😔
そういえば、過去にCCleanerだったかも入れちゃったことあるんだけど、
あの手の最適化を謳ったアプリも罠が多くて、あれもちゃんとアンインストールされなかった気がする
分散バージョン管理システムGitの開発者でもあるトーバルズ氏は、暗号通貨をサンタクロースやイースター・バニーと同じ神話的カテゴリーに位置づけているとユーモアを交えて付け加えた。
彼のコメントは、ビットコインの曖昧な創設者であるサトシ・ナカモトではないかという間違った憶測を含む、技術コミュニティでの議論の中で生まれた。
トーバルズ氏はこのような噂を否定し、Linuxカーネルの編集で自分の名前がユーモラスにビットコインと結びつけられたことを明らかにした。トーバルズ氏は、自分はビットコインの多額の財産を所有していないと断言し、そのような主張の信憑性については否定的であるとの立場を繰り返した。
ソース: https://www.realworldtech.com/forum/?threadid=217627&curpostid=217694
生産性が全ブラウザの中で一番低いにも関わらずなぜか使用率が高いので、生活残業を稼ぎたい人に大変オススメのブラウザです。
Windowsに最初から入っているEdgeは基本的にChromeの全ての機能が使える上に、
縦タブやOfficeファイルのプレビュー、Copilot、広告ブロックなど業務を効率化させる余計な機能がついているので禁止です。
生活残業をしたい生産性の低い社会人の合言葉は「EdgeはChromeダウンローダー」!
もちろんVimキーバインドでブラウジングができる拡張機能、Surfingkeysなんて入れたら生産性が爆上がりしてしまうので、
リンクはマウスでポチポチとクリックし、ページスクロールはマウスホイールを使いましょう。
Ctrl+TやCtrl+L、Ctrl+Wなどのショートカットも覚える必要がありません。
生活残業のためにタブを開くのも閉じるのもマウスを使うべきです。
こちらもマウスと矢印キーを使うことを前提にした非常に生産性の低いエディタであるにも関わらず使用率が高く、
と言う気の狂った操作方法しかなく、後者の場合『Shiftがすっぽ抜けるとやり直し』と言う絶望的な生産性の低さで非常におすすめ。
カーソル移動と言う一番頻出する操作方法がメモ帳と変わらないので、結局多少補完が強力だろうとVSCodeの基本的な生産性はメモ帳と同じです。
素晴らしい!生活残業にピッタリ!
VimやEmacsなどのエディタはもちろん、これらのキーバインドを使えるようにする拡張機能も絶対に使うべきではありません。
VSCodeで使えるGit系の拡張機能もバカみたいにマウスをポチポチして操作する必要があるので、
ヘタするとそのままGitコマンドを打つよりも遅そうで最高です。
間違ってもtigやEmacsのMagitなどの高速Git操作インターフェースを使ってはいけません。
わざわざGUIで操作するSourcetreeを入れるのもアリですね。
ExcelでもSpreadsheetでも全てのセルにその場限りの計算式を入れましょう。
「ソースコードに間違いが見つからないのに想定される出力をしない。あるいはソースコードに修正を加えていないのにいきなり想定出力を返すようになった。」
こういう経験がある人はいるはずだ。なぜこれが起こるのか。一つの原因を見つけた。
それは環境変数や設定ファイルに存在する。デプロイ時には設定ファイルを特定の値に修正してから、ということがあるだろう。
開発環境でコーディングする人が、デプロイ時の設定ファイルには関与せず、デプロイの担当者がそれを把握している。
開発者はセキュリティ上の理由でデプロイ時の設定ファイルの内容を見ることができない。
この場合、設定ファイルの内容が間違っていても、開発者が原因が正しく特定できないケースがあるのである。
対処方法は以下である。まず事前にやっているであろう対処は以下である。
追記:
テスト対象は大小さまざま。OSの保守だったり、アプリだったり。レガシーだったり、モダンだったり。個人だったりチームだったり。GUIだったりCUIだったり。
GでもCでもUIはまた別
結論としては書かないほうがいいと思った。
そういうこともある
全然小さいというか書くためと変更のコストがクソデカなら何か間違ってる
結局、テスト対象も変わってしまうし、プロジェクト設定も変わるし、Jenkinsも変わるし、人間の頭の中も変えないといけない。
まあそれはないだろう
それはデバッグの一環のような
一番よくあるやつ
そこのバランス考えないと
バックエンドのビジネスロジックを担当するがっちり仕様が決まっていて勝手に変更されてはいけないものなんかをやる
悪いね
テストコードを書くと、テストしやすいクラスの実装をするようになる。それは美徳とされているが、実際には直感的でない長くて複雑なプログラムになっている。
例えばテストコードを書くためにDependency Injectionとか言って外から内部を変更できるようにすると
メンバ関数でやるべき処理が実際にはクラスの外にある、となる。最初は面白く感じたり達成感があるかもしれないが、しばらくして見返すと酷い状態だ。
DIはSOLIDに入ってるくらいで基本だし今時のフレームワークなら普通に使うよね
上にも書いたけどパーツがでかいのでは?って「直感的でない長くて複雑なプログラムになっている」とのことなのでやっぱりでかいんだろう
テストコードを書いたほうが早い時もあったけど、トータルで考えれば、テストコードを完全にやめたほうがシンプルなコードで早く完成する。
要件が固まらない、毎週変わるようなのとか、システムが絡むテストでコストが凄く高いもの、UIのマイナーな変更なんかは書かない方がいいけど