はてなキーワード: 変数とは
フェミを長年観察し続けてる趣味の者だが、この考察は非常に浅いな。浅すぎる。
変数が1つの正誤問題ではない。そう捉えてるのはさすがに理解の次元が低い。ゲームの勝利条件を設定し忘れている。
数学的にはそうであることは承知の上で社会学的な文脈による敢えての差別発言だと考察している。
これは日本男児が日本社会で長年やってきた「女は○○」という偏見や差別的言動に対するカウンター、差別に対する差別的な返し、ゲーム理論で言うところの「しっぺ返し戦略」なのではないかと考えている。
一応、男は泣くなとか男に対する偏見や差別もあったんだが、日本男児の男に対する偏見は女に対する偏見と違って抑圧的ではあっても不利益的には働かないケースが多かったからね。
↑を書いた元増田ですが、VBの話から派生した話で、やたらコマンドライン(以下CLI)を使った開発に否定的な人間がいて閉口した件。
そりゃ一口に開発と言っても色々なので、本当に統合開発環境(以下IDE)だけで開発するケースもあるのは、こっちも知ってるんだよ。
だから学習者の中で「何をやりたいか」が既に決まっているなら、CLIを全く触らずプログラミングを学ぶケースもアリということなのだろう。
1つ目は、そもそも「プログラムって何?」というレベルの人が「何をやりたいか」なんて決まっているわけがないので、最初から「何をやるか」を決めてかかるのはナンセンスという話。
むしろどういう開発に進んでもいいように、「等号は代入を意味する」辺りから始まって、どんなプログラミングでも基礎の基礎になる、データ構造とアルゴリズムを意識させることに集中させたい。
そのためには難易度低めで比較的潰しが効く言語を、できるだけシンプルな手順で作業できる開発環境で学べる方がいい。
そしたらPythonの実行環境とそこそこ以上の機能を持つテキストエディタを入れて、コマンドプロンプトとかPowerShellとかのCLIから"Helllo, world"が取っ掛かりだと思うわけ。
もしLinuxの環境が用意できるなら同じことをLinuxでも試してもらって、プラットフォームに依存しない開発の入り口くらいを知っておければベター。
いずれにせよ何かを実行する方法が1つではないという重要な知見は、できれば基礎のうちに知ってもらいたいことの1つだし、それはWindowsとLinuxとかCLIとIDEという対比がうってつけかなーと。
ちなみにIDEは、Pythonによる手続き型プログラミングに慣れた後のタイミングで学べばいいと思う。
そこまで行ったら変数の型や、クラスとオブジェクトとかの難しい話をGo言語で学んでおくことで、現場で使われているJava、C#、swiftへの移行もスムーズになりそうだし。
ちなみに「初心者コース」の最後、もし可能ならRustでポインタとメモリの話の触りくらいを体験してもらえると、組み込みに進む際のハードルが少しは下がるんじゃないかな。
もう1つは、いくら現場によってはIDEだけで開発する現実があっても、CLIを使った開発がどういうものかくらい、プログラマにとっては知ってて当たり前じゃねーの?という話。
もちろん「プログラマが何を知ってて当たり前なのか」は、時代の移り変わりとともにどんどん変わる。
大昔ならおそらく機械語とかが必須だっただろうけど、今なら機械語よりはHTMLを読めるほうが遥かに重要なわけで。
あと、UNIX系OSをパーティションごとに主要なディレクトリを分割してインストールしていた時代であれば、edエディタの使い方は必須だったと聞く。
(/binに入るエディタがedのみだったため、もし使えないとシステムクラッシュして/以外マウントできなくなったときに詰む)
でも今やそんなの完全に過去の話どころか、viとemacsの論争ですら多分古い方の問題になるだろう。
そういう過去の諸々も踏まえるとCLIが未来永劫、プログラマにとって常識的なナレッジだとは自分も思っていない。
でも今はまだ、プログラマを名乗るならCLIからコンパイルだ実行だくらいの基礎は知ってて当然だと思うんだが。
そうやって広がりつつあるのが、ノーコード界隈なんだけども、そもそも、プログラミングというのは、プログラミングによって何ができるのか?と言う勉強から始まり、何ができないのか、と言うことも含めて勉強。
つまり、ドラッグアンドドロップで、IF文の矢印を分岐させることは、別に、プログラムできない人からすると便利なのか?というと、そんなことないでしょ。
例えば、SUM関数動かすために、SUMのブロックを繋ぐ、足し算するために、変数という概念が必要で変数はこのブロックに、入れます、、みたいなことを果たしてビジュアルだからってより簡単理解できるのか?ってのを考えてみてほしいな。
それならそもそもPythonでsum関数使うなら+演算子使うなりして、やる方が保守もやりやすいでしょ。
ビジュアルプログラミングの場合、各ブロックが何をしてるかは、そのブロックにちゃんと名前つけたり、ダブルクリックで詳細画面に飛ばないとわからなかったり、詳細画面の中に、実はプログラミングコードがあったりしてそこで魔改造されたりしてる。
これを知れば地獄とわかるでしょ
一旦変数として扱うやで
レシピ通りに作ればそれなりに美味しいものが作れる。特段難しいことはない。
でもそれって料理上手ではないよな。ただ手順通り組み立ててるだけだ。工場の組み立て員と何が違うんだ?高度なエンジニアリングの知識はいらない、ただ言われた通り組み立てればハイテク機器ができていた、そんな感じだ。
例えば火加減の関数値をどう設定すると材料がどう反応するのかという特性を何も知らない。肉などどの程度の温度まで加熱すれば安全に食べられるかは知っている。でもそれだけそれもマニュアルに従うだけ。時間をどれだけ伸ばすとどれだけどうなるのか、熱拡散はどのように起きるのか、その結果味や食感にどう変化が生まれるのか、何も分からない。
調味料も分からない。塩はなんでその量なのか砂糖はみりんは醤油はなんでこの分量なのか割合なのか、他の割合だとどうなるのか、分からない。香辛料も大量に種類があってどれがどういう味や匂いに貢献するのか分からない。
ありとあらゆる組み合わせを自分で調べても良いが試すべきパラメタが多すぎるし危険性もあるので分からない。どこに論文が転がっているのかも分からない。料理研究家と自称する人は論文を出していないので参考にならない。
よく分からんのもあって、答え見たらあーそうかって感じだった。一回答え見てパターンを思い出したらある程度はできるようになるでしょ。
ただこれは詰将棋みたいなもんで、この局面は因数分解できますよって言われたら探せるかもしれないけど、実戦で出てくる分解可能かどうか分からん複雑な式を整理できる自信はあまりないなあ。
こういうのは今どきMathematicaにやらせればいいんじゃないかって気もする。
せっかくなのでもう少し抽象化した知識として頭に入れておくことを試みたい。
4a^2 - 9b^2 + 6bc - c^2
3変数の2次式なわけだが、そのような式は一般に、 x := (a,b,c)^T, 係数行列A, 係数ベクトルB, スカラーC として
x^T A x + B^T x + C
と書ける。これが因数分解できる、つまり何らかの係数ベクトルB', B''とスカラーC', C''について、
(B'^T x + C')^T(B''^T x + C'')
となるということだろう。これを展開すると、
x^T B'B''^T x + (C''B' + C'B''^T)x + C'C''
となる。このことから、因数分解可能ならば2次項の係数行列はあるベクトルB', B''が存在してB'B''^Tと書けなければならないことがわかる。
ひるがえって、問題7(2)の場合、係数行列を具体的に書くと、
A =
[[4, f, g],
[-f, -9, h],
[-g, 6-h, -1]]
となる。対角成分から、B'=(2,3,1)^T, B''=(2,-3,-1)^T としてみると、f,gについては自明に成立するが、h, 6-hのペアと矛盾してしまう。
h=3なら問題なさそうであるから、B'=(2,3,-1)^T, B''=(2,-3,1)^Tとすれば成立することがわかる。
これで1次項と0次項をあわせにいけるか?C'C''=0なので少なくともC', C''の一方はゼロであるが、問題の式はそもそも1次項も0次項もゼロなので、C'=C''=0とすればよい。
従って答えはB'=(2,3,-1)^T, B''=(2,-3,1)^Tから(2a + 3b - 1)(2a - 3b + 1)である。
俺はまだ辞めないが、去年入った新人が辞めたのでなんとなくだだらと書く。
残業は月20hくらいで手取りは28万くらい。残業次第で変わるので手取り額ってあんま当てにならんよね。高収入というほどでもなく低収入と言ったら怒られるくらいの微妙な層。
はてなに書いたらそれだけでアンチ湧くレベルのFラン理系。クソみたいな学部論文からのクソを具現化した修士論文で一応院卒。謙遜とか自虐ではなくマジで就活が嫌だったのでなんとなくで院に行き、マビノギに明け暮れてろくに研究室に顔出さずに論文出して教授からはノーコメントをもらい発表会で他大学のせんせから「この研究、何?」と言われたくらいには意識が低い。
就活やる気起きなさすぎてうだうだしてて、当時の彼女に未来が無いと振られてしゃーなしで学内専攻行ったらそれが富士通で適当行ったら通った。俺はハリボテが得意なんだ。
雑用。エクセルひたすら編集したりjava書いたりbash書いたりマクロ書いたりRHELいじったりpostgres弄ったり客とだべったりパートナーとだべったりオフショア折衝したり。
大学時代はクソだったが仕事は流石にそうもいかんのでちゃんと毎日出社して自分のこと仕事はこなしてる。お金は欲しいので。
管理職になりたくないので一生下っ端みたいな仕事してたい。マネジメントは一応資格とったけど二度とやりたくねえ。
パートナー会社、大抵は良い人だしスキルもあるんだけど、この世に俺以上のカスがいるのかと思わせられるクラスのカスがいるしそんな人間のマネジメントさせられるのももう面倒でいやだ。
「勉強!勉強!」みたいなキラキラSEではなく仕事で必要になったら「ほなクラウドの取説読むかあ……」みたいな意識低い系。
というかインターネットに住んでるITマンすごいね。仕事おわったら酒酒シコ酒ゲーム酒でしょ。それが正しい人間の生き方だよ。
みたいな昭和カンパニー的な感じはない。申請事項と申請フローはクソ多いので面倒。
うちはBtoGなんでせいぜい二億くらいの小規模案件多いから部長本部長決裁で適当に説明にして承認もらえるけど、BtoBで銀行とか企業相手にしてるところは社長決裁とかあってヤバいらしい。
よく退職エントリで見る開発PCが低スペック!!!みたいなのは意味わからん話。稟議出して購入手続きすればCPUメモリ増し増し40万くらいのマシンが社内価格で20万くらいで買えるので。FCNT別会社になったはずなんだけど、まだpc安くてよかった。win11のマシンが欲しくて今年頭に買ったので最近の話ね。
有給はフルで毎年20取ってる。みんな取ってるから俺だけ勝手に休んでる訳じゃないぞ。
社内の連絡手段はメールがlyncかteams。lyncはもうすぐ終わるらしい。lyncとteams両方生きてるせいでどっちもアプリ立ち上げとかないといけなかったのではよ終われ。
ファイル保存はネットワークドライブと皆様ご存知projectWEBだったけど、ネットワークドライブは、boxに移行し、そのboxはろくにつかわれないままonedriveとshrepointになった。
projectwebはなんだかんだで便利だった。エクスプローラー感覚でできるファイル管理とチケット管理とタスク管理できるシステムはUI古く見えても便利だったよ。
仕事は全部テレワーク。最近「でもやっぱ直接会うのって大事だよネ……!」とか上層部が言い出したので、たまには出社するようにとのことらしい。課会で「マネージャーとチームリーダーが出社したことでチーム内コミュニケーションとする」という空報告が決まった。
幹部社員崩れの老害社員は1人いる。正確にいうと仕事はできるしいうことも正論だがお小言が多くコロナ前にあった飲み会の場では「俺の若い頃は〜」という話を延々と続け、俺とはソリが合わない上に体臭がきついので俺は嫌っている。耳ほじった手でキーボード触んな。
今まで4人面倒見たけど全員離れて行った。
本人の希望ではなく会社都合で別部署になったのが2人、本人の希望で別部署行ったのが1人、そしてYouTubeに本腰入れるためと言って入社一年目で辞めたのがこれ書く契機になった1人。
別部署行った子も「わたし文系出身だからSEの仕事合いません…」っつって営業に行ったのでまあわかる。向き不向きあるしね。変数名にint OkyakusamaNunberと付けてきたのも良い思い出。せめて綴りは合っててくれ。
君と夏の終わり、将来の夢、rm -rf /*したテスト環境忘れない。
それはそうとYouTuberよ。
そんな「父さんな、YouTubeで食っていこうと思うんだ」みたいな台詞現実で聞くことになるとは思わなくて三回くらい聞き直しちゃったもんね。
いや俺もVtuber見てるからYouTuber自体に理解が無いわけでは無いのよ?
でもさあ。「チャンネル登録者1000人の大台に乗ったんです!いま踏ん張らないと!」とか言われてもさあ、1000人クラスでよく会社辞める決心ついたな……としか思わんじゃん?
仕事に不満はなかったというが立つ鳥跡を濁さなかっただけなのかはよくわからん。振り返ってみてもそんな旧態依然としたオールドカンパニー、待遇激悪、未来なしみたいな会社じゃ無いと思うんだが。
チームメンバーみんな「えっ辞めるんだ……1年経ってないのに……」っていう戸惑いの後に「YouTuber???????」っていう戸惑いあったもん。オンライン会議のマイクの向こうから伝わる、必死に言葉選んで「ゆ、ゆーちゅーばーやるために会社辞めるの?」という問いかけにちょっと怒り気味で答えた君の勇姿美しい。
プログラミングが学科の必修授業であるのに、if文だのfor文だのはなんとなく分かったけど、変数を用意する?わたす?とかそういう部分が全然わからん
パソコンの進化の歴史とか、パソコンの中身の部品の話とかやってきて、ある日「じゃあ今日から実習でーす!まずは文字を表示してみましょうねー!サンプルのコードはこれ!」みたいな感じでプログラミングが始まってもう完全にお手上げ🤷♀️
サンプルのコードが配られて、「今回の学習内容は○○についてでーす!○○はこう記述します!では配ったサンプルコードを正しい記述に直して動くようにしてみてくださいね!」って感じで進むんだけど、「○○」について以外の部分のコードの説明がなくどんどん進んでくからマジで意味がわからん…
去年のサンプルとかを先輩に見せてもらったけど後半の方とかここに書いてある中身のない丸括弧は何のために…?1番上に書いてあるこの一文は何…?みたいな感じで無理無理無理
友達はみんな元々適性あるのかすんなりついていってるけど、前期落ちて後期で入れるところに滑り込んだ自分は全然ついていけない…実家から近さとかで選ぶのマジでやめりゃ良かった…
救いは授業にぼちぼち別の学年の人がいることくらいか…毎年落とす人がいるというのだけでも心が救われる…もう留年待ったなしだわ…
本質を表しておらず、歴史上のとある議会の座席位置を参照する名称だ。コードレビューでこんな変数名でてきたとしたら修正されるだろ。
だって今、右翼が韓国発宗教が国家中枢に絡みついてるのを有耶無耶にしてて、左翼が激しく糾弾してんだぞ。意味わからんだろ。
ちょっと前まで右翼が「韓国とかありえん」って怒って、左翼が「韓国を差別するな」って怒ってなかったか?
やはり政治的なポジションってのは表で示されるべきだな。列名が「賛成、反対」で行に各政治的トピックが並んでるやつ。
それをもとにクラスタリングしたら右翼的な固まりだったりはあるんだろうけど。
ただ、クラスタリングする意味は薄いと思う。自分は右派だというアイデンティティや帰属意識を持ってしまうと、元々持ってた論理が破綻したり、意見の多様性が失われたりしそうだから良くないね。