はてなキーワード: TypeScriptとは
PyCon JPと日本のPythonコミュニティに関する分析
投稿者の特定を防ぐための方法(LLMによる個性の除去など)が考えられるが、使用ツールや手法によっては逆に投稿者が限定される可能性がある
PyCon JPと日本のPythonコミュニティに関する分析
投稿者の特定を防ぐための方法(LLMによる個性の除去など)が考えられるが、使用ツールや手法によっては逆に投稿者が限定される可能性がある
型があったところで型が一致するか、変数が存在するかくらいしかチェックはされないぞ
結果、実行したら予期しない値が帰ってきたり実行時にエラーが起きたりする
コンパイル通ってればだいたいは動くし、作ったときに動作確認もしてるから大丈夫、というなら動的型付けの言語でも動作確認はしてるから大丈夫だろ
動的型付け言語の方が得意だと言ってるくらいに使い慣れてる人なら実行時エラーもそんな多くない
その程度のゆるさでエラーが起きたら対応すればいいやくらいのところなら別に静的型付け言語である必要もない
ちゃんとテストコードを書く環境で、テスト通してるからという場合でも、それも動的言語だってテストして通ってるわけで同じこと
結局型の有無はプロダクション環境のバグの多さに関係ないし、どっちが好きかって話でしか無い
型システムが優秀で実行時エラーがほぼ発生しないのを売りにしてるくらいの言語なら多少利点はあるけど、TypeScriptみたいな無理やり型をつけた中途半端で実行時エラーが簡単に起こせるような言語ではメリットもほぼない
読めば分かるが言ってることは間違いじゃない。でもMySQLに噛みつかなくてもって内容
TypeScriptとかフロントも頑張ってるけど端々に俺凄いサービス作ってるんだぜが溢れてて何故かMySQLの不得意部分をわざわざ使わないくせに叩くからこうなってる
なんでRLSが必須なのか分からんかった。ご自慢のTypeScriptでどうにかなるだろうしAzureにユーザー管理系サービス無いの?
以下の記事、内容がひどくて空いた口が塞がらなかったのだが、
(はてブで)ブックマークして下手にホッテントリにでもなったら嫌だなと思いそっとブラウザのタブ閉じた。
が、しばらくすると残念ながらホッテントリ入りしてしまったので、はてブにコメントを軽く書こうとしたが100文字に収まらなかったので増田にした。
技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL
まず、「特定条件下では MySQL は我々のプロダクトには不向き」を「MySQLを使うと会社は潰れる」なんて表現するのおかしいでしょ。
以下の記事からの引用だが Uber のエンジニアは「PostgreSQLではアーキテクチャに制限がありすぎてUberのシステムを支えきれない、MySQL+InnoDBに変えたら全部解決した」と主張している。
UberエンジニアがブログでPostgreSQLにダメ出し、PostgreSQLコミッター石井達夫氏に反論を聞く
RDMS(に限らずライブラリやミドルウェア一般)の評価は採用する開発プロダクトの要件とユースケース次第。
Not for me/us. を「これを使うと会社が潰れる」って……MySQL開発チームから名誉毀損で訴えられろと思う次第。
(サーバサイド開発の言語は)TypeScriptでいい。と言いつつ、結論はこれ
| TypeScriptで書いたサーバーサイドのコードの半分ぐらいも属人化している。なぜかメンバーのキャッチアップが進まない。
ん????
こんな評価眼で開発力で文章力の人を「厭味が無くて楽しめた」だの「公開してくれてありがとうございます」とか言うブクマカにもそれにスターをつける人にも衝撃だよ。
ちゃんと読んでくれよ。それから、ブックマークするか判断してほしい。あーあ
---
| 逆に、Uberエンジニアに対して、PostgreSQL開発チームから名誉毀損で訴えられろと思わないのは何故?
という言及への返信。
Uber に関しては。
自分たちが扱う規模のデータを捌ききれないという問題を、その原因が利用者(Uber)側ではなくデータ永続化におけるPostgreSQLのアーキテクチャが原因だと思われるということをきちんと測定して結論してるからかな?
さらにUberはそのことを安易に「PostgreSQLを使うと会社が潰れる」というような煽り口調の一般化をせずに自社には不向きだったということをブログに載せているため議論の土台が開けていることが重要だと思う。
今回の問題の記事はRLSとID採番というデータベースの根幹機能ではない付加機能で自分たちのプロダクトとミスマッチしているだけで一般化して罵ってるのが悪質だと思うんよなぁ
例えば、俺、CoffeeScriptが嫌いだったんだけど、なんで嫌いかっていうとRubyが嫌いだからなんだけど(諸説あります
でも、頑張ってCoffeeScriptゴリゴリ書いてた人たちっていると思うんだよね
自分はTypeScript登場時からずっとTypeScriptなんだよね
あの、DelphiとかTurbo PascalとかC++ BuilderとかC#の原作者だよ?
しかし、なんだ、こうやって陳腐化していくことがどれほど多いことか、IT関係は
これが理系で機械工学関係だったら、流体力学とか材料工学が陳腐化するなんてないよね?
だから、大学で習う情報工学だとしたら、やっぱりできるだけ普遍的なことを習ってるはずなんだよ
でも、ITはyak shavingが多いよね
本質的な知識を得るために、WindowsやLinux上の環境で学ばなければならないわけで、
落ち着いて情報工学の勉強をするために、Windowsの余計な情報を表示するウィジェットの閉じ方を学ばなければならなかったりする、馬鹿げてるよね
そう考えると、料理、絵、音楽、みんな普遍的なものの集まりだよね
料理の四面体なんてあるけど、煮る焼く炒める蒸すどれも不変な過程だよね
調理器具だって、フライパンや鍋が日進月歩に進化して、以前のバージョンが使えない、なんて買い替え需要を促すための嫌がらせをメーカーがしたりもしない
絵だって、証券用インクとペンだとしても、液晶ペンタブレットだとしても、筋肉の知識とか、パースの知識とか、不変だよね、永遠に変わらないものだよね
まあ、流行の絵柄とかは変わるけど、そういう流行に流されないのも大事だよね
個性がない、ってことは、誰かが絵を見て、これは~さんの絵だ、って気づかれないってことだから、商品価値がなくなっちゃうよね
音楽理論も変わらない、楽器の弾き方も変わらない、正直、ギターなんてどこのメーカー買ったって同じようなものなんだけど、
同じエレキギターを何本も持ってる人っているよね、お金持ちだよね、自分はチューニングがそれぞれ違うギター複数本持ってるけど、それはチューニングのためなんだよね
話を戻すと、ITクソつまらなくなった、の元の文章にもTypeScriptでクソアプリ書いてたときが楽しかったみたいな話があったけど、
俺がMacOSX 10.2だったかで作ったアプリは、現在のMacではまったく動かないからね
だったんだけど、今のWindowsはAppleみたいになっちゃったよね、足切り、足切り、Windows 10は動くけど、11は動かないマシンが大量発生
ITつまんなくなってきた。に近いけど40代エンジニアって日々の不安どうしてる?
上手くやってPM以上の管理職になって技術よりマネジメントとかアーキテクチャメインになった人は不安はないんだろうけど、自分も含めたなれなかった人ってどうしてるのか気になる
自分はとにかく強みを作ろうとトレンド追いつつ基礎も固めてるけど日に日にトレンドは移り変わった挙げ句に今じゃJSやTypeScriptがあれば残りは部品集めりゃどうにかなったり、ノーコードツールで複雑な処理や分析も出来るようになって例えが酷いがITパスポートレベルで済む感じになった
もちろんバリバリ開発してるとこもあるが今度は求められるレベルが高くなっていてそれ以外は一昔前のSES並みの低賃金自己責任世界
フロントもバックもって人材より分かりにくいPowerAutomateとカスみたいなSharePointが評価される時代とか来るんだな。もっとJavaScriptやっときゃ良かった。PythonとかPHPとかLinuxだのフレームワーク分かっても意味無いし求められる数少ない牌は天才で埋まっててもう終わりですわ
この人は可哀想なことに「学校の言うことに従っておけば人生が幸せになれる」という
恐らくこの先20年ぐらい同じような失敗を繰り返してしまうのだと思う
副業で食っていけるようなITエンジニアを簡単に教育できるとは思えないし
そもそもなんだが、スクールや学校の言うことを全て丸暗記すれば大丈夫、というレベルの教育は小学生の早い段階で終わっていて
を知るためであって、塾で丸暗記を教わるために出しているのではない
興味を持って調べたことというのは誰かに教えて貰ったこととは違って記憶への定着や新しい着想に繋がるので
大学には興味・好奇心を持った人が更なる高等教育を受け、新しい発見をするために進学する
プログラミングやITに関する技術も同様で全てをスクールで教わるというのは非現実的で不可能だ
例えばよく使われるプログラミング言語だけでもC,C++,Java,JavaScript,TypeScript,Rust,Python,PHP,Ruby,Perl,ShellScript ぐらいはあって
これらの言語仕様を覚えるだけでも大変だしよく使われるライブラリなどが組み合わされるととても現実的ではない
なのであくまでもスクールや教育機関ではどれか1つの言語を選んでプログラミングの概念や思考法を教えているに過ぎないし
お金を貰えるレベルになるには少なくとも3年は自分でプログラムを書いていないと到達できない
興味がないものを3年も続けられるわけがないので、スクールや学校で「興味が無い」と思ったのならやめた方が良い
つまりスクールに通ってITエンジニアになるにはスクール外で興味を持って学習することが必要なのだが
残念ながらこの法則は小学校高学年から同様で、ちゃんと学校外で勉強してきたような人は大人になってからスクールに通ったりはしない
AIが高品質の絵描けます!楽曲作れます!って最初は「スゲー」って思ってたけど、使ってみると検索ワード入れて虹エロ絵ググって漁ってる感覚と同じなんだよ。いい加減飽きた。
それよかさっさとクラウドアーキテクチャ管理とかアプリケーションのテスト管理とかできるようにして楽させてよ。Copilotにコード貼り付けてプロンプト生成すんのめんどくせーんだよ。
つまんなくなったなと決定的に感じたのは、今年の頭に行ったデブサミ。
似たり寄ったりな生成AIの活用話ばっかり。過去一つまんなかった。いつもは面白くて夢中で聞いてたんだけど、今年は途中で帰った。本当につまらなかった。
なんていうか、生成AIのプロンプトエンジニアリングとかの話って、人材マネジメント的な話と根本はおんなじ感じがするんだよな。いかにて優秀な新人AI君を働かせるか?的な。
でも、ビジネス上のそういう対人コミュニケーションすら避けたくて避けたくてITに辿り着いたんだよなー。賃金と待遇すら諦めてそっちに来たのにこの始末って酷くないかね。
なんていうか、求められる人材像が経営者一択になってきてる気がするんだよな。「プログラムを書きたい」じゃなくて「プログラムで○○がしたい」っていう、明確に目標ある奴。
「アーキテクチャがー」とか「保守性がー」とかエンジニアが心配しても、マークザッカーバーグの「動くからリリースしようぜ」の画像貼ってデスマ作り出すタイプの奴。でもそんな胡散臭い奴がビジネスモデルを引っ提げてさっさとAI活用で何とかしちゃう。
googleとかAmazon、Microsoft、Alibaba製のAIさえそろえばあとはマッシュアップして需要に対してサービス作って終わり。
全社会人総社長。社会の需要について目を向けられる奴、そういうヒアリング等の営業活動が出来る奴。それ以外いらん。
例えアホでも、マネーの虎みたいな番組でアホみたいなビジネスプラン披露できるような奴以外いらん。
ビジネス出来ない奴はいらん。もうそういう時代なんじゃねーかな。
「粗悪乱造アカンよね。」っていうエンジニアリング思考にすごく共感してたし、そのためのDevSecOps、アーキテクチャ採用、ミドルウェア選定だったりにすごく感銘を受けた。
k8sやらAWS初めて触ったときは感動した。TypeScriptでクソアプリ作るのが好きだった。IoTデバイスやラズパイで自室が少しずつハイテクになるのが好きだった。Google colabでサンプルソースのAIの作るのが好きだった。でもそういうのダサい時代なんだよな。
結局ビジネスサイドには目を向けられ無さそうなんでもうそろそろ引退かな。趣味でプログラム書きながら適当に派遣でもやって生きたいけど、33歳は他業種厳しいかなー。ていうかIT以外のどの仕事もアホらしくて就きたくねー。
なんだなんだ、先月末書いた記事に今更ワラワラと。盆も終わったんだしさ、エンジニア()にクソみてーな誇り持つんなら帰りのNAS位てめーで設定してサッサとあの世に帰ってくれよな。
どうやって金もらってんだよ。
テメーらが「びじねす思い付いたけどプログラム書けまちぇーん時間ありまちぇーん」とか情けねぇ事ほざいてっから手伝ってやってたんだろボケ。
資本主義?知るか。おめーのアホみてーな妄言と社会貢献(爆笑)に付き合ってやったんだから金よこせ。てめーがやりもしねーこと手伝ってやってんだよ、履き違えんな。
AIに仕事奪われる底辺の泣き言?ああそうだなw。じゃあ俺の何百倍の労力でアホの妄言実現する仕事してくれよスーパーエンジニアさんよ。出来んだろ?C言語出来るスーパーエンジニアさんならよ?
まぁ分かるよwどうせ大したことないんだろ?匿名でくらいイキりたいよな?すげーエンジニアさんよ。
この程度でエンジニア名乗るな?やだよーんw
俺みたいな底辺でお前ら誇り高きエンジニアの積み重ねたものをぶっ壊してやる。お前の会社も、プロダクトも、SNSも、検索結果も、底辺ITワナビの💩まみれにしてやる。モラルのかけらもないユーザーで埋め尽くしてやる。ポリコレとかツイフェミみたいな話通じないクソカスで埋め尽くしてやる。
そうじゃなくてクソコードが多いんだよ
可読性が低いだけならまだマシだし、可読性は人によるよ
例えばTypeScriptで
っていうIssueがあったとして
const toBanana = (apple: 'apple'[]) => apple.map((a, i) => (i % 3 === 0 ? 'banana' : a))
const toBanana = (apple: 'apple'[]) => { const appleAndBanana: ('apple' | 'banana') = for (let i = 0; i < apple.length; i++) { if (i % 3 === 0) { appleAndBanana.push('banana') } else { appleAndBanana.push(apple[i]) } } return appleAndBanana }
のどっちが可読性が高いかっていうのは人によるよ
(長いソースを読むのがしんどい人と、関数化されたソースを読むのがしんどい人)
クソコードっていうのは
const toB = (a: any[]) => { for (let i = 0; i < a.length; i++) { if (i == 3) a[i] = 'banana' if (i == 6) a[i] = 'banana' if (i == 9) a[i] = 'banana' } return a }
こういうの書いてくる人だよ
「お前これ10個以上来たらどうすんのよ」
みたいに返事してくるし、修正させても
const toB = (a: any[]) => { for (let i = 0; i < a.length; i++) { if (i == 3) a[i] = 'banana' if (i == 6) a[i] = 'banana' if (i == 9) a[i] = 'banana' if (i == 11) throw new Error('banana') } return a }
こんなんPRしてくる奴のことだよ
お前らにはTypeScriptは早すぎたんだ
https://anond.hatelabo.jp/20240625191650
念のため言っておくと底辺大や文系出身プログラマーも同様の傾向にある
入力値に想定外のものが入ることを考えていなかったりI/Oに関わるエラーについても配慮がない
「エラーが出たらとにかくtry-catchしてログ吐いて終わり」
ならまだマシな方で、「握りつぶして処理続行」みたいなことも平気でやる
とか滅茶苦茶多い
異常系の話と被るけど基本的に性善説でコード書くのでセキュリティの不備がめちゃくちゃ多い
API作らせてもリクエストの内容を信用して実装するしサニタイズチェックもしない
サーバー作らせてもrootか共通ユーザーだけで運用するしファイル管理も滅茶苦茶
とにかく「目の前に与えられた課題を解く」だけのコードなので他のことに関する配慮が全く無い
TypeScript使わせてもanyだらけだし、JavaとかだとObjectだらけ
うちはPythonでは型は使わないけど命名規則で担保してるのにそれもガン無視で実装する
結果としてできあがるのは
「一応、正常系では動いているけれど他の入力が来たときにどうなるか分からないし誰も修正できない」
っていうコード
最近はそういうコードはChatGPTにぶち込んで型付けて貰ったりするけど
8割ぐらいの確率でChatGPTも型付けできない状態になっててお手上げになる
そりゃ動くし性能も変わらないけど後でバグがあったり変更するときにすげー困る
これもChatGPTにぶち込んで「共通的な処理をメソッド化して」って言うとやってくれるのでめっちゃ便利
クソ重いwhileループになってるメソッドをフレンドリーに何回も呼び出したり
とにかく「最終的に出来上がるものが良好であれば時間がかかっても構わない」的なコードが非常に多い
競プロ系はこういう人はあんまりいないんだが機械学習出身者はマジでこれ
彼らはデータを解析したり優秀なモデルを作るために頑張ってきたので継続的に処理負荷を減らす、みたいなことに意識が回ってくれない
「これはPoCですから」
とか言うんだけど誰でも分かるようなクソ遅いコード書いておいて
とかしれっと言ってくる