タグ

programmingに関するardarimのブックマーク (923)

  • malloc.c を読む (malloc / free)

    このシリーズではこれらの関数が内部でどのように処理されるのかを調べていきます。 malloc.c を読む (malloc / free) malloc.c を読む (bins) malloc.c を読む (arena) 今回は malloc() free() の全体像を紹介します。 注意としてここでの目的は全体を俯瞰して、詳細を詰めずとも各 bins の役割を理解し、攻撃手法を理解できるようにすることです。それに合わないマルチスレッドや最適化などにおける緻密なトリックやコーナーケースなどは暗黙的に実装されていると仮定します。その詳細についてはソースコードや他の資料を参考にしていただきたいです。 ここで扱う glibc のバージョンは v2.38 です。また glibc のソースコードはブラウザ上で読むことができます。 https://elixir.bootlin.com/glibc/lat

    malloc.c を読む (malloc / free)
  • 詳細設計書なんて、書きたくない・・・・Doxygenを使って自動生成してみる - Qiita


          30  Doxygen 調Doxygen  
    詳細設計書なんて、書きたくない・・・・Doxygenを使って自動生成してみる - Qiita
    ardarim
    ardarim 2024/07/07
    設計書無しで巨大なソースコードの塊だけ引き継ぎされた時には無いよりは助かったな。いずれにせよちゃんとアノテートされてないと意味ないしコード変更の際にコメントも更新されてないとむしろ実態乖離で有害
  • 技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(後編)

    技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(後編) ソフトウェアの品質をテーマに研究をしている名古屋大学 森崎研究室は、ソフトウェアの技術的負債をなんらかの形で数値化する手法の研究の一環として、コードの読みにくさの原因となる要因などを分析した研究結果を発表するイベントをオンラインで開催しました。 この記事ではそのダイジェストを紹介します。記事は前編と後編の2つに分かれています。今お読みの記事は後編です。 森崎氏による補足説明 前編では、グループA(命名的問題)より、グループB(構造的問題)の方が正答率が大きいということ。一方でグループA(命名的問題)よりグループB(構造的問題)の方が読みにくさを感じた、という点に統計的に有意な差があったことが発表されました。 発表の後、オンラインイベントの参加者からの質問について森崎氏と和田氏

    技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(後編)
  • 技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(前編)


       90調 
    技術的負債を抱えたレガシーコード。変なメソッド名と入り組んだロジック、リファクタリングするならどちらが先?(前編)
  • 競プロ出身者・機械学習出身者の問題コード

    https://anond.hatelabo.jp/20240625191650 競プロ出身者だけじゃなく、機械学習出身者も問題コードが多い 印象の問題ではなく実際に下記のようなコードが多い 念のため言っておくと底辺大や文系出身プログラマーも同様の傾向にある 正常系しか意識していない一番多いのはコレで異常系の動作を全く意識していない 入力値に想定外のものが入ることを考えていなかったりI/Oに関わるエラーについても配慮がない 「エラーが出たらとにかくtry-catchしてログ吐いて終わり」 ならまだマシな方で、「握りつぶして処理続行」みたいなことも平気でやる 「ここの処理でエラーログが出てるから対処よろしく」 「対処しました!(握りつぶし)」 とか滅茶苦茶多い セキュリティに関する意識が低い異常系の話と被るけど基的に性善説でコード書くのでセキュリティの不備がめちゃくちゃ多い API作らせて

    競プロ出身者・機械学習出身者の問題コード
  • 競プロ出身者の使えなさは異常


    anond:20240624084844 2 ()        
    競プロ出身者の使えなさは異常
  • プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ - 偏見プログラマの語り!


    C10C 2012 C*1 C C CC
    プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ - 偏見プログラマの語り!
    ardarim
    ardarim 2024/06/24
    C言語から入るから難しいのよな。アセンブラから始めよう
  • エンジニアに英語力が必要な本当の理由を知ってますか?「英語でしか存在しないドキュメントを読むため?」「違いますね」→許したくない事案がココにある

    米村歩@日一残業の少ないIT企業社長 @yonemura2006 エンジニア英語力が必要な当の理由を知ってますか?英語でしか存在しないドキュメントを読むため?違いますね。ずばり、センスの欠片も感じられない変数名やメソッド名を付けないようにするためですよ。あれやるやつマジ許さん。 2024-05-23 18:16:07

    エンジニアに英語力が必要な本当の理由を知ってますか?「英語でしか存在しないドキュメントを読むため?」「違いますね」→許したくない事案がココにある
    ardarim
    ardarim 2024/06/22
    ChatGPTに変数名聞いてみたけどあんまセンスなかったな。センス以前に、変数の意味するところを的確に説明できる能力が問われている気がする。日本語で的確に説明できないものは当然的確な英語にもできない
  • 日本人プログラマー向けコーディングフォント「Bizin Gothic」が無償公開/「Ricty」でもお馴染みの「Inconsolata」と読みやすい「BIZ UDゴシック」をかけ合わせ

    日本人プログラマー向けコーディングフォント「Bizin Gothic」が無償公開/「Ricty」でもお馴染みの「Inconsolata」と読みやすい「BIZ UDゴシック」をかけ合わせ
  • プログラマ視点での生成AIとの付き合い方


      GPT-4  Claude-3-Opus 使AI使 AI AI AI GPT-4: 22 Claude-3-Opus: 33 n11
    プログラマ視点での生成AIとの付き合い方
    ardarim
    ardarim 2024/06/01
    ドメイン知識は基本的にオープンでなく学習の入力にできないことを考えると業務適用は厳しい。逆にそれを食わせればいい線いくのかも。でも結局はAIの出力を誰が担保するのかという話に行き着く
  • 面接官「0.1 + 0.2 == 0.3 が成立しない理由を説明せよ」 - Qiita


     2100.10.220.1 + 0.2  0.3  2CS 2 2  013 0.1 × 2 = 0.2 : 0 : 0.2 0.2 × 2 = 0.4 : 0 : 0.4 0.4 × 2 = 0.8 : 0 : 0.8 0.8 × 2 = 1.
    面接官「0.1 + 0.2 == 0.3 が成立しない理由を説明せよ」 - Qiita
    ardarim
    ardarim 2024/05/26
    処理系による。まあ回答するなら条件付きで、かな
  • 今どきのプログラミング言語では当たり前! Modern C++で使えるモダンな言語仕様


    CC++21Modern C++1990C++C++C++Modern C++C++姿  C++ C++    macOS SonomaWindows 11 Xcode Command
    今どきのプログラミング言語では当たり前! Modern C++で使えるモダンな言語仕様
  • プログラミングを始めた人に「"文字列" の 42 と "整数" の 42 ってなにが違うんですか? そのまま足し算とかしようとするとエラーになるんですけど」と聞かれた話

    Dai MIKURUBE @dmikurube むかし実際、プログラミングを始めた人に「"文字列" の 42 と "整数" の 42 ってなにが違うんですか? そのまま足し算とかしようとするとエラーになるんですけど、でも 42 って書いてあるんだから足せればよくないですか」と聞かれてわりと回答に詰まった記憶がある。それできる言語も実在するしな… 2024-05-19 01:01:26

    プログラミングを始めた人に「"文字列" の 42 と "整数" の 42 ってなにが違うんですか? そのまま足し算とかしようとするとエラーになるんですけど」と聞かれた話
  • 脳に収まるコードの書き方

    Mark Seemann 著、吉羽 龍太郎、原田 騎郎 訳、Robert C. Martin まえがき TOPICS 発行年月日 2024年06月 PRINT LENGTH 312 ISBN 978-4-8144-0079-9 原書 Code That Fits in Your Head FORMAT Print PDF EPUB ソフトウェアは複雑さを増すばかりですが、人間の脳は限られた複雑さしか扱えません。ソフトウェアが思い通りに動くようするには、脳に収まり、人間が理解できるコードを書く必要があります。 書は、拡張を続けても行き詰ることなくコードを書き、複雑さを回避するための実践的な方法を解説します。最初のコードを書き始めるところから機能を追加していくところまでを解説し、効率的で持続可能なペースを保ちながら、横断的な問題への対処やトラブルシューティング、最適化を行なう方法を説明します

    脳に収まるコードの書き方
  • タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ


     2023-10-01 2024 13:45 1314  2023-01-01 00:00:00 <= 2023 < 2024-01-01 00:00:00 13:45:00.000 <= 13:45 < 13:46:00.000  
    タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ
    ardarim
    ardarim 2024/04/20
    Excel君に言ってやって
  • 5年生の時にパソコン購入を反対され、それでもプログラミングがしたくてBASIC言語の入門書を見ながらノートにコードを書いてた話

    Kazuyuki @kazuyuki Genies, Inc.|マイクロSaaSの開発・運営|PMO - 上場企業含む3社|生成AI導入支援|PHP, Svelte, Python|J.S.A. Wine Expert (2022) Kazuyuki @kazuyuki 5年生の時にパソコン購入を反対され、それでもプログラミングがしたくてこっそり買ったBASIC言語の入門書を見ながらノートにコードを書いてました。奇跡的にそれが残っていたので写真に撮りClaude3でJavascriptにして実行。35年の時を経て生成AIによって動きが知れたことに感動しています。 pic.twitter.com/3EHBs5388P 2024-04-04 21:52:31

    5年生の時にパソコン購入を反対され、それでもプログラミングがしたくてBASIC言語の入門書を見ながらノートにコードを書いてた話
    ardarim
    ardarim 2024/04/07
    方眼ノートでハンドアセンブルとかしてたわ
  • C# Win32API完全入門 - Qiita


       C#Win32API使C 使 調使 使 Win32API Windows API - Wikipedia Microsoft WindowsAPI32Window
    C# Win32API完全入門 - Qiita
  • 超簡単にChromeの拡張機能を作ってみる【誰でもできるよ】 - Qiita


     Chrome使 使Chrome ! manifest Javascript    DVMarkdown manifest! manifest   { "manifest_version": 3, "name": "Create markdown link", "version": "1.0.0", "icons": { "16":
    超簡単にChromeの拡張機能を作ってみる【誰でもできるよ】 - Qiita
  • オブジェクト指向宗教史


    OOC 2024   
    オブジェクト指向宗教史
  • うるう日にしか発生しないバグ


    Javascript  11truefalse 2020-12-24() 2021-01-01(+-1) Javascript () : 2024/10/10 : 2024/01/28 true2023/01/28 ~ 2025/01/282024/10/10true2023/01/282025/01/28true 
    うるう日にしか発生しないバグ