タグ

プログラミングに関するsqrtのブックマーク (54)

  • Python滅ぼす協会に入会したい

    なぜ令和にもなって動的型付け言語を使うのか シフトレフトという概念が生まれたのは二十年以上も前のはずだ。 それにもかかわらず動かしてみるまで答え合わせもできない言語で開発をするという発想自体がどうかしている。 同じ動的型付けといってもJavaScriptはブラウザという事情があるし、型の表現力に優れたTypeScriptがあるからまだよい。 しかし、Pythonはどうだ。他にいくらでも選択肢があるなかで、サーバーサイドにわざわざ選定する言語ではなかろう。 貧弱な型ヒント、しかも書いたところで大した効用もない。 使っている外部ライブラリにひとつでも型ヒントがクソなものがあれば即座に破綻する。 型というガードレールもシートベルトもなしで糞を撒き散らしながらする開発にはうんざりだ。 シンタックスもキモい 動的型付けもさることながら、シンタックスもキモい。とにかく思考を妨げる語順になっている。 m

    Python滅ぼす協会に入会したい
    sqrt
    sqrt 2024/03/30
    色んな言語があって適材適所で使い分ければ良いと良く言われるけど、現実ぜんぜん適材適所になってなくて、単に開発当時に流行ってた言語を考え無しに使っただけって状況がありがち
  • 時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena

    この文章みてください。 オレはもう20年以上システム業界にいるけどな、その長い経験から言うと、オブジェクト指向なんてものは、理論としては面白いけど、およそ実用的とは言い難いものだな。まぁ、例えばGUIのコンポーネントとかはオブジェクト指向に基づいて作られているようだから、そういうツールとかを作る人には必要なものなのかもしれない。しかし君たちがいずれ作ることになる業務アルゴリズムにはまったく無縁のものだと思ってもらって間違いない。どうもこの業界、オブジェクト指向でなければダメ、というような風潮がまかりとおっているけどな、オブジェクト指向なんか当に使っている人はほとんどいないよ。オレも少し勉強してみたけど、カプセル化とかポリ何とかとか、どうにも利点が理解できなかったね。実際、実業務で使ったことなどないしな…… 「またお前、オブジェクト指向の話をしてるのか」と思ったかもしれませんが、2010年

    時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena
    sqrt
    sqrt 2024/02/09
    良く分からんけど、一時期の過剰なオブジェクト化の風潮はだいたいJavaの所為だったと思ってる
  • 【11万文字越え】プログラミング初心者に贈る即戦力ガイド - Qiita

    弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 目次 1.はじめに 2.VSCode拡張機能紹介 3.コーディングのポイント 4.よく使われる英単語一覧 5.エラーとの向き合い方 6.テストで動作確認 7.検索の極意 8.公式ドキュメントに慣れる 9.リファクタリングでさらに読みやすく 10.資料作成で気をつけること 11.Gitで管理 12.よく使うLinuxコマンド一覧 13.仕事の進め方 14.プログラム以外で意識するところ 15.初心者こそ読んで欲しい 16.まとめ 1. はじめに プログラミングは現代のデジタル社会において重要なスキルです。 AIがコードを書いてくれる時代ですが、それでも人の手によるプログラ

    【11万文字越え】プログラミング初心者に贈る即戦力ガイド - Qiita
    sqrt
    sqrt 2023/12/16
    【11万文字越え】まで読んだ。          // 即戦力人材には計算量理論など計算機科学の基礎を知っといてほしいなとは思う。
  • [研究室向け]なぜ君はソースコードのエラーを自分で解決できないのか? - Qiita

    1. Intro 1.1 タイトルの答え それは,最初から"How"(どうやってこの問題を解決すべきか)だけを考えているからです. 最初に問うべきなのは"Why"(なぜこの問題が起きたか)です. このタイトルの問いも,なぜ?から始まっています.「どうやって自分でエラーを解決するか」だけを考えていると,問題の根的な原因が分からないため,ずっと自分でエラーを解決することはできません. 1.2 Keyword 最初に自分に問いかけるべき言葉 〇 Why(なぜ?): なぜこの問題が起きたか ✕ How(どうやって?): どうやってこの問題を解決すべきか 1.3 背景 研究室では毎年,いつまでたっても自分でソースコードのエラーや出力の問題を解決できず,進捗が遅かったり開発をあきらめてしまったりする人が発生する.記事では,なぜ自分でエラー・問題を解決できないのか?を明確にする. <注意書き> この

    [研究室向け]なぜ君はソースコードのエラーを自分で解決できないのか? - Qiita
    sqrt
    sqrt 2023/10/08
    そうは言ってもwhyを考えられるのはwhyの想像が付くからなので、CS専攻でもなければ研究室1年生にはハードル高いんじゃないかなぁ…当てのないwhyはhowにも劣るよ
  • strlen() の深淵 - Qiita

    あらまし strlen() という関数がある。御存知の通り、文字列の長さを算出する標準 C ライブラリの関数だ。 やってることは単純で、例えば以下のように実装できる。 size_t strlen_simple(const char* str) { const char* p = str; while (*p) ++p; return size_t(p - str); } '\0' が見つかるまでポインタを進め、初期位置との差分を返すだけだ。これで機能的には std::strlen() と同等である。 では、速度的にはどうだろう?適当にベンチマークを書いて MSVC 2022 でコンパイル&実行するとこうなった。

    strlen() の深淵 - Qiita
  • 【追記あり】プログラミング初心者がTwitterで質問したら「スクールではこんなクソコード教えてんのか」とキツい指摘が飛んできた

    みりせっく@雌尻ンダー extends Siri @grandcraws ツイ主が勘違いされて傷ついてるようなので、一旦謝罪とこの場でも補足しますが、初学者のコードは普通汚い。初心者はコードが綺麗か汚いかも判断基準がないから。だから教える側がここは綺麗、ここはまずい、普通はこう書く、特殊な書き方はやめよう、という教えをちゃんとやりなさいっていう話です。 2022-08-17 02:49:22 みりせっく@雌尻ンダー extends Siri @grandcraws @manaboru 正論を言うことと相手を傷付けることは無関係で、傷付けるから正論を言わないは間違いだと思いますよ。傷付かないように正論を言うべきで。で、今回はその配慮が足りず誤解させて傷付けてしまったからそこに対して衆人に見える形でリプで直接謝罪してます。それ以上の話として何を求められてますか? 2022-08-17 12:2

    【追記あり】プログラミング初心者がTwitterで質問したら「スクールではこんなクソコード教えてんのか」とキツい指摘が飛んできた
    sqrt
    sqrt 2022/08/18
    sum+=0みたいなコードを入れて「その条件のときは何も足さない」を明示しておくのはむしろ良いプラクティスでは。コンパイル時に最適化で消えるし。
  • 真面目なプログラマのためのディープラーニング入門

    はじめに: 講座は「機械学習ってなんか面倒くさそう」と感じている プログラマのためのものである。講座では 「そもそも機械が『学習する』とはどういうことか?」 「なぜニューラルネットワークで学習できるのか?」といった 根的な疑問に答えることから始める。 そのうえで「ニューラルネットワークでどのようなことが学習できるのか?」 という疑問に対する具体例として、物体認識や奥行き認識などの問題を扱う。 最終的には、機械学習のブラックボックス性を解消し、所詮は ニューラルネットワークもただのソフトウェアであり、 固有の長所と短所をもっていることを学ぶことが目的である。 なお、この講座では機械学習のソフトウェア的な原理を中心に説明しており、 理論的・数学的な基礎はそれほど厳密には説明しない。 使用環境は Python + PyTorch を使っているが、一度原理を理解してしまえば 環境や使用言語が

    真面目なプログラマのためのディープラーニング入門
    sqrt
    sqrt 2022/03/21
    顧客が「ディープラーニングでなんか良い感じに」と言ってくる案件の9割は実際は深層学習不要なので、真面目なプログラマとしては案件が深層学習向きかどうか判断できさえすれば深層学習案件の9割カバーできる。
  • RPAで疲れ果てた

    物流会社の事務員なんだけど会社がRPAツールを導入するってんで定型作業を自動化しろって話しでRPAプログラミングをやらされてたんだわ。 それで色々クソな点があったのでシェアします。 1、実務の合間にやらないといけない マネジメントの問題でもあるけど、そういうことなんだよな。 現場がクソ忙しい時に悠長にデバッグとかやってられん。あとデバッグみたいな作業は見た目何もしていないように見えるからここぞとばかりに仕事振られたりする。 2、番環境とか開発環境とかない。ぶっつけ番で稼働→失敗→デバッグを繰り返さないといけない。 これは自動化する仕事によると思うんだけど、実際に現場で使うデータをRPAプログラムに投入しないとそもそも要件がわからないことがある。データの特性というか、物流事務なんかだと8割がシステム化されているけど2割は荷主や配送先のわがままで特徴的なデータの不備があって、それに対応する

    RPAで疲れ果てた
    sqrt
    sqrt 2022/02/17
    RPAプログラミングなんて本職のIT屋でもやりたくない仕事/物理ロボット畑の人なら向いてるかも。あれも、90度曲がれってプログラムしたら90±5度曲がるみたいな世界だもんね。
  • OSS未経験「なにから始めたらいいかわからない…」←これを一気に解決する神リポジトリ - Qiita

    はじめに こんにちは。WEBエンジニアのmasakichiです。 OSSを始めたいと思いながらも「なにから始めたらいいかわからない…」と悩んでいませんか? そんなOSS未経験者にGood First Issueというリポジトリをお勧めしたく記事にしました。 この記事で書いてあること この記事には以下の2つが書いてあります。 Good First Issueについて Good First Issueからコントリビュートするまでの流れ(経験談) Good First Issueとは OSSにコントリビュートしたことのない開発者でもすぐに始められる人気プロジェクトをピックアップしたキュレーションサイトです。 プロジェクトのリンク先はgithubリポジトリで管理されています。 リポジトリはこちら キュレーションサイトはこちら Good First Issueでは下記の基準を満たしたプロジェクトがピ

    OSS未経験「なにから始めたらいいかわからない…」←これを一気に解決する神リポジトリ - Qiita
    sqrt
    sqrt 2022/02/03
    「このOSSに貢献したい」ではなく漠然と「OSS始めたい」なんて事ある?と一瞬思ったけど、そういえばお年寄りから「(特にやりたい事はないけど漠然と)パソコン始めたい」って相談受けた経験割とあったわ。わかる。
  • 竹雄 on Twitter: "プログラミングをしていて”dataの複数形”を使いたくなることが年に365回くらいあるんですけどどうするのが正解なんですか?"

    プログラミングをしていて”dataの複数形”を使いたくなることが年に365回くらいあるんですけどどうするのが正解なんですか?

    竹雄 on Twitter: "プログラミングをしていて”dataの複数形”を使いたくなることが年に365回くらいあるんですけどどうするのが正解なんですか?"
    sqrt
    sqrt 2021/09/27
    dataを変数名にしない。既製のjsonとかにdataが含まれてる場合はdata_entriesかdata_valuesあたりにしておけば大抵スッキリする/関係ないけど、複数のpersonを含む変数の名前はpeopleではなくpersonsを使うのがベストプラクティス
  • Go言語を嫌う6個の理由 - さめたコーヒー

    ある仕事でそれまでRubyで書かれていたサーバーサイドをGo言語ですべて書き直すことになって、それまでRubyのコードを書いていた僕はそのままGo言語を書くことになった。その仕事そのものはお客様(僕は外部委託のエンジニアとして参画していた)との関係も良好で素晴らしい仕事をさせてもらうことができたと思っているが、Go言語だけは好きになれなかった。 はじめは流行っている言語だから何か素晴らしい魅力があるのではないかと期待していた。しかし書き始めるうちにどうも自分には合わないなと思うようになり、2年ほど書いて案件の契約が終わる頃にはGo言語でサーバーサイドを書くことは危険だとさえ思うようになった。 あれから数年がたちますますGo言語の案件は増えている。サーバーサイドを書く選択肢としてGo言語を選択する会社も増えている。しかし当にそれでいいのか?ただ流行っているからという理由だけで選択するにはあ

    Go言語を嫌う6個の理由 - さめたコーヒー
    sqrt
    sqrt 2021/09/17
    え、ここまで名前のググラビリティへの批判なし…?/もともと一般動詞や一般名詞やポケモンと紛らわしかったけど、最近はタクシー呼ぶ?って聞いてくる
  • ‘-‘ という名前の、中身が無いのに70万回ダウンロードされてる謎のnpmパッケージ

    – という名前の JavaScript/TypeScript パッケージについて警告を発している記事が話題となっています。 このパッケージ、中身はほとんど空で、Readme と、dev で TypeScript を動かせるようにするライブラリ群を呼ぶ箇所だけのもの。 しかし、この “-” を使っている他の npm パッケージが 50個以上あり、約一年前の公開時からのトータルのダウンロード数は72万回にもなります。 しかし、”-” を読み込んでいるパッケージを見てみても、”-” が必要そうには見えません。 警告記事では、この無名のパッケージが密かに使われるようになった原因が、npm コマンドのコマンドラインを打つときのミスタイプにあるのではないかとの仮説を立てています。 つまり、someFlag というオプションを使い npm i -someFlag somepackage と打つべきところ

    ‘-‘ という名前の、中身が無いのに70万回ダウンロードされてる謎のnpmパッケージ
    sqrt
    sqrt 2021/08/04
    この名前で悪意あるパッケージを公開できないように、防御的に空のパッケージを置いてるって線もあるかな…
  • 高速逆平方根(fast inverse square root)のアルゴリズム解説 - 滴了庵日録

    高速逆平方根とは? C言語のコード 検証 アルゴリズムの要点 [1] 逆平方根の計算を対数・指数の計算に置き換える [2] 浮動小数点型の内部表現を利用した対数・指数の近似計算 [2.1] 対数の近似 [2.2] σの最適値 [2.3] 整数型での解釈 [2.4] 逆平方根の計算とマジックナンバー0x5F3759DF [3] ニュートン法による収束で精度アップ 感想 高速逆平方根とは? 高速逆平方根(fast inverse square root)とは、平方根の逆数 を高速に計算するアルゴリズムです。平方根の逆数は逆平方根とも呼ばれます。逆平方根はベクトルの正規化などに用いられるので、これを高速に計算できるアルゴリズムには大きなご利益があります。 参照: Fast inverse square root - Wikipedia C言語のコード 高速逆平方根の関数を示します。0x5F375

    高速逆平方根(fast inverse square root)のアルゴリズム解説 - 滴了庵日録
    sqrt
    sqrt 2021/02/10
    謎のマジックナンバーが入ってる変態アルゴリズム大好きなんだけど、そういうのばかり集めたデータベース誰か作ってないかな…
  • 【Python】良い書き方と悪い書き方を知って中級者を目指す🐍 - Qiita

    Pythonでコードを書くときのGood/Badプラクティス こちらの記事は、DuomlyによりDev.to上で公開された『 Good and Bad Practices of Coding in Python 』の邦訳版です(原著者から許可を得た上での公開です) 元記事:Good and Bad Practices of Coding in Python ※ 記事の内容に注意すべき点と誤りがあるので、詳しくは注釈まで目を通すことをおすすめします。 (以下、翻訳した文) この記事は元々 https://www.blog.duomly.com/good-and-bad-practices-of-coding-in-python/ に公開されたものです。 Pythonは可読性を重視した高水準のマルチパラダイムプログラミング言語です。Pythonは、「Pythonの禅」、別名ではPEP 20と

    【Python】良い書き方と悪い書き方を知って中級者を目指す🐍 - Qiita
    sqrt
    sqrt 2020/09/07
    一番下の「PEP 8を読め」が結論では…?
  • コンパイル中にコンパイルする「コンパイル時Cコンパイラ」をつくった話 - kw-udonの日記

    僕は先日、「コンパイル時Cコンパイラ」なるプログラムをつくって、公開した。 「コンパイル時Cコンパイラ」とは、コンパイルするとC言語プログラムのコンパイルが行われるというようなC++プログラムである。 C++のコンパイル中に C言語プログラムのコンパイルを行う、 "コンパイル時Cコンパイラ"をつくりました #ELVMhttps://t.co/kKiLU3rLFX— うどん (@kw_udon_) 2016年11月18日 自分で書いておいてなんだが、「なんのこっちゃ」という感じではある。(ちゃんと記事中で説明する。) 実際、変なプログラムではあるのだが、とても嬉しいことに多くの人に面白がっていただき、予想だにしなかった大きな反響をいただいた。 Hacker Newsで1位になったり、LLVMの公式ブログで紹介されたり、果てはC++の作者であるBjarne Stroustrupにも言及されるに

    コンパイル中にコンパイルする「コンパイル時Cコンパイラ」をつくった話 - kw-udonの日記
    sqrt
    sqrt 2016/12/04
    のーみそコネコネ
  • JavaScript を PNG に圧縮する | Yomotsu net

    JavaScript を PNG に圧縮するツールを作りました。JS_Packer demoscene は最近 WebGL を使ったものも多くなってきています。 demoecene は基的に ローカルにファイルとして存在しているものを使う そのファイル容量は 1 バイトでも少ないほうがいい (容量制限がある分野がある) という文化です。そして JS ファイルを圧縮する手法の一つに、JS を PNG 画像にして、それをデコードする、という手法が存在します。 JS の性質JS のコードは基的にアスキー文字の集まりです。アスキーコードは、小文字/大文字のアルファベット、数字、スペースといった 128 種類しか存在しません。 PNG8 の性質8 ビット PNG は 256 種類の色をパレットに持っています。 PNG は可逆圧縮(ロスレス)形式の画像です。圧縮しても失われるデータはありません。

    JavaScript を PNG に圧縮する | Yomotsu net
    sqrt
    sqrt 2015/05/12
    本日の変態hack。個人的には「src=#」の部分が目からウロコだ。
  • バグをドラゴンと呼ぶ運用を始めて1ヶ月くらいたった - Konifar's WIP

    1ヶ月くらい前、 「バグをドラゴンと呼んだらどうなるか」というTweetを見ました。 確かに、バグをドラゴンと読んだ場合「Sクラスのドラゴンが出ました!」「Aクラスのドラゴンを相手にしてる最中だってのに!」って会話になるし、ドラゴンは結局人の手で生み出されたものってところが中二ファンタジーっぽくて良い— 尾野(しっぽ) (@tail_y) March 18, 2015 これは天才的発想だなと思って職場で雑談で話してみたところ、 同僚のスペインエンジニアにバカウケしまして、 それからちょいちょいバグのことをドラゴンと呼ぶようになりました。 せっかくなので、どんな雰囲気になるのかまとめてみようと思います。 先に言っておくと、自分ともう1人スペインエンジニアが時々チャット上で使っているだけで、 正直そんなに流行ってないです。 なんかテンションが上がる バグ修正ってマイナスをゼロにするだけで何

    バグをドラゴンと呼ぶ運用を始めて1ヶ月くらいたった - Konifar's WIP
    sqrt
    sqrt 2015/05/02
    創世(創業)当時から生き続けてる古竜(エンシェント・ドラゴン)がいて、数多の戦士が討ち死にしているとか、、、
  • UI ファーストという開発手法 - 何気に大変

    ソフトウェアエンジニアは新しく何かを開発する際に、技術的に可能かどうか、どう実装すればいいか、みたいなのを先んじて考えがちな気がする。 そういうボトムアップ的な思考は技術を知っているが故に出る自然な思考なのだが、私の経験上そういう思考で作られたものは大体使いづらい、いわゆる gomi が出来上がる。 なぜか?それは UI を考える際に実現可能性や実装のしやすさを優先してしまうから。 ここでいう UI とは WEB サービスやネイティブアプリなどに限らず、ライブラリなどであれば API を指す。 私は数年前から UI → 実装という開発順序で開発をしていて、それは以下のような感じ。 まず実現可能性を窓から投げ捨てる 素晴らしいと思う UI を考える その素晴らしい UI を実現するための実装方法を考える こういう感じで進めると、ほとんどの場合、素晴らしい UI を実現するための方法がすご

    sqrt
    sqrt 2014/02/21
    すべての道はgomiに通ず。
  • Windowsに不勉強なクソマカーがWindowsマスターの皆様からお叱りを受けた話 - uzullaがブログ

    Windowsマスターの皆様、申し訳ございませんでした!(挨拶) 一つ前のエントリ( http://uzulla.hateblo.jp/entry/2013/08/12/013207 )、まったく私の不勉強を世間に晒すエントリなのは当人も理解しておりましたが、世間の風は2013も下期にはいったというのにXPばかりつかってきた糞マカーには予想よりもつらいものでした! アイッティー業界、ドッグイヤーなのに、XPとかでがんばってきた無精な人間は殺すべし、慈悲はない、インガオホー! そして、こちらのほうが重要だと理解しておりますが、「とりあえずなんかうまくうごいてなかったらゲイツをなぐるべし」という糞マカーの内輪の感覚を世の中に気軽に発信したばかりに、ギガ盛り牛丼つくったり、冷凍庫の中にはいった写真をツイットするような目で見られる事態になってしまいました。 自分の想像力の欠如、そしてインターネッツ

    Windowsに不勉強なクソマカーがWindowsマスターの皆様からお叱りを受けた話 - uzullaがブログ
    sqrt
    sqrt 2013/08/13
    ……お、落ち着いて! 「IT土方はつらいヨ」とでも一言書いておいてくれれば分かる人には分かるから! クソドザーをDISりたい気持ちが行間から溢れ出すぎてさすがに感じ悪いよ……!
  • #俺が見たクソコード選手権 まとめ

    ハッシュタグ #俺が見たクソコード選手権 が賑わっていて面白かったのでまとめてみました。 こちらに簡単な補足説明を用意しました。よろしければどうぞ http://elephnote.com/blog/archives/874 気持ちのわかるものから全く意図不明なものまで。 続きを読む

    #俺が見たクソコード選手権 まとめ
    sqrt
    sqrt 2013/08/07
    ところどころクソじゃない普通のコードがあるな。