タグ

programmingに関するitottoのブックマーク (1,152)

  • 大実験!ChatGPTは競プロの問題を解けるのか (2024年5月版) - E869120's Blog

    1. はじめに 2024 年 5 月 14 日、OpenAI 社から新たな生成 AI「GPT-4o」が発表され、世界に大きな衝撃を与えました。これまでの GPT-4 よりも性能を向上させただけでなく1、音声や画像のリアルタイム処理も実現し、さらに応答速度が大幅に速くなりました。「ついにシンギュラリティが来てしまったか」「まるで SF の世界を生きているような感覚だ」という感想も見受けられました。 しかし、いくら生成 AI とはいえ、競技プログラミングの問題を解くのは非常に難しいです。なぜなら競技プログラミングでは、問題文を理解する能力、プログラムを実装する能力だけでなく、より速く答えを求められる解法 (アルゴリズム) を考える能力も要求されるからです。もし ChatGPT競技プログラミングを出来るようになれば他のあらゆるタスクをこなせるだろう、と考える人もいます。 それでは、現代最強の

    大実験!ChatGPTは競プロの問題を解けるのか (2024年5月版) - E869120's Blog
  • SqlBulkCopy + IDataReader を利用した IEnumerable<T> の高効率なバルク挿入 - xin9le.net

    C# / .NET + SQL Server 環境において Bulk Insert をするのはなかなかお手間です。それもこれも SqlBulkCopy という専用クラスがなかなか曲者なためなのですが。ただただ IEnumerable<T> のようなコレクションを挿入するのにひと工夫というか、ひと手間必要なのが心理的にハードルが高い。初見殺し! 僕自身、過去にやっていたのは DataTable を利用した方法でした。以下の記事に良い例が載っているので詳細はそちらに譲りますが、DataTable のインスタンスを作るにあたって一度データのコピーが必要になる上に、要素数が多いと内部の動的配列の拡張が何度も発生して遅くなってしまいます。折角パフォーマンスよくデータ挿入ができる SqlBulkCopy なのに、その事前準備で遅くなってどうするんだ!ということでなんとかしたい。 IDataReader

    SqlBulkCopy + IDataReader を利用した IEnumerable<T> の高効率なバルク挿入 - xin9le.net
  • 【作って学ぶPython】特長を理解してプログラムを書くための準備をしよう!

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    【作って学ぶPython】特長を理解してプログラムを書くための準備をしよう!
  • 「理想のCOBOL」になったJava、システム開発で盤石の地位築く

    企業の情報システムには、高い信頼性や可用性が求められる。このためシステムの構築にはそれらを実現できるプログラミング言語を使う必要がある。 そうした用途でかつてよく使われていた言語が「COBOL」だ。Common Business Oriented Languageの略で、日語では「共通事務処理用言語」という意味になる。エンジニアではない事務員がプログラミングできることを目指して開発された。自然言語である英語に近い構文で記述でき、可読性が高いのが特徴だ。 過去にCOBOLは金融機関のオンラインシステム構築などで大きな役割を果たした。現在でも、一般ユーザーの目に触れないところで動いているCOBOLシステムは多い。 ただしCOBOLは幾つかの問題を抱えていた。最も大きな問題は、稼働基盤が事実上、メインフレームに限られることだ。オープンシステムやクラウドでCOBOLプログラムが動作する環境もある

    「理想のCOBOL」になったJava、システム開発で盤石の地位築く
    itotto
    itotto 2024/05/08
    "少なくとも金融分野でJavaが他の言語に置き換わるとは思えない" / 昔のCOBOLもこんなふうに言われてそう
  • SQLは滅ぶべきか|ミック

    でかい釣り針が来たので釣られてみる。とりあえず以下の資料を読んでいただきたい。そんなに長くないのでサクッと読める。 SQLの記述順序と思考の順序が違うので書きにくいし、エディタの補完機能の恩恵が受けられないのが嫌だ、という意見はもう大昔からある。何度も何度も何度も繰り返されてきた議論である。以下の2011年のスレッドでも「SQLはFROM句が最初に来るべきではないか?」という問いが提起されている。すぐに出てこないが、筆者はこれより古い文書も見た記憶がある。

    SQLは滅ぶべきか|ミック
  • WIn32API レジストリの変更を検知する RegNotifyChangeKeyValue - s-kita’s blog

    レジストリキーの属性やエントリが変更されたことを検知するためには、RegNotifyChangeKeyValue関数を用いる。 RegNotifyChangeKeyValue関数は、レジストリが変更されたことをアプリケーションに通知してくれる。 RegNotifyChangeKeyValue関数のプロトタイプは、以下のようになっている。 LONG RegNotifyChangeKeyValue( HKEY hKey, // 監視するべきキーのハンドル BOOL bWatchSubtree, // サブキー監視オプション DWORD dwNotifyFilter, // 通知するべき変更 HANDLE hEvent, // 発生させるべきイベントのハンドル BOOL fAsynchronous // 変更の通知方法を示すフラグ ); dwNotifyFilterには、以下の値を組み合わせて通

    WIn32API レジストリの変更を検知する RegNotifyChangeKeyValue - s-kita’s blog
  • Bicep のドキュメント

    Bicep のドキュメント Bicep は、Azure リソースを宣言によってデプロイするための言語です。 Azure Resource Manager テンプレート (ARM テンプレート) の開発には、JSON ではなく Bicep を使用できます。

    Bicep のドキュメント
  • Kubernetes使いになるためにPodをつくってみる 『つくって、壊して、直して学ぶ Kubernetes入門』より

    Kubernetesは難しい」と感じている方におすすめの入門書『つくって、壊して、直して学ぶ Kubernetes入門』(翔泳社)。今回は書から、実践的な知識を習得する第一歩として、Kubernetesの基礎の基礎であるPodの作り方を解説します。また、書でどんなことが学べるのかも紹介します。 記事は『つくって、壊して、直して学ぶ Kubernetes入門』(高橋あおい著、五十嵐綾監修)の「Chapter 3 全体像の説明」と「Chapter 4 アプリケーションをKubernetesクラスタ上につくる」から一部を抜粋したものです。掲載にあたって編集しています。 書での学習の流れ 書では3つのパートに分かれています。 ●Part 1:基礎的な知識と環境構築を行います。 ●Part 2:一番ページ数も多く、Kubernetesを扱ううえで大事なことを詰め込んだパートになります。

    Kubernetes使いになるためにPodをつくってみる 『つくって、壊して、直して学ぶ Kubernetes入門』より
  • 今日からできる!簡単 .NET 高速化 Tips -2024 edition-

    C# / .NET における、パフォーマンス改善の Tips をお届けします。 これを見れば、効率良く 80 点を取ることができるようになるはずです!

    今日からできる!簡単 .NET 高速化 Tips -2024 edition-
  • LaTeX と Python で作る 1 ポイントたりとも表示崩れしない最強の帳票印刷ソリューション - Qiita

    元ネタ 元ネタはこちらです(以下「FigmaPHP」で略します)。 読んでなるほどと思いました。このように、誰かが苦労したおかげで後続が楽になるので感謝です。何が問題点として生じるのか、どんな解決方法が考えられるのか、が予め判明しているだけでもだいぶ楽になります。 反面、$\LaTeX$ の方が実装は簡易ではないかと思ったので、それを実践してみました。 条件と問題点 FigmaPHP の 44 ページに以下のような条件があります 改めて、満たしたい条件 ミリ単位で細かく帳票をデザインしたい。 帳票デザインの保守性を維持するためにはビジュアルデザイン必須 印刷時に見た目が一切崩れない さらに、次のような障害を次々とクリアしていってます。 文字参照の問題 枠からのはみ出しの問題 右寄せの問題 自動折り返しの問題 連票の問題(簡易な解説のみ) これらを $\LaTeX$ と Pyth

    LaTeX と Python で作る 1 ポイントたりとも表示崩れしない最強の帳票印刷ソリューション - Qiita
  • Pythonの非同期処理の基礎とOpenAI APIへ並列リクエストする実践例

    こんにちは、commmuneでデータサイエンティストをしているひぐです。 人間が苦手なマルチタスクをLLMに任せたら、効果的に処理してくれるのではないか?というモチベーションのもと、Pythonの非同期処理を使って並列かつストリーミングでChatGPTの回答を出力するアプリを作りました🤖 例えば下記は、ある課題を入力すると、深さ・広さ・構造・時間軸という異なる観点で解像度を上げてくれるアプリケーションです。 アプリに関する登壇資料↓ このアプリ作成にあたってPythonの非同期処理を勉強したところ、最初は多くの専門用語(コルーチン、イベントループ...)や独自の記法により、全体像をつかむのに苦戦しました。一方で、学んでみると予想以上にシンプルな記法で実装できること、そして応用範囲が広くて便利だと理解しました。 この記事では、そんな少し取っつきにくけど便利なPythonの非同期処理にフォー

    Pythonの非同期処理の基礎とOpenAI APIへ並列リクエストする実践例
  • 2024年の今、いかにしてVS2005を捨ててVS2015にする戦いは終わったか、そしてなぜCOMとの苦しい戦いが繰り広げられたか ~再入の悪魔~ - OPTiM TECH BLOG

    概要 Optimal BizのWindows AgentはながらくVisual Studio 2005とVisual Studio 2015を併用してビルドする必要がありました。Visual Studio 2015化対応は2012年のVisual Studio 2012化対応からスタートしていましたが、対応範囲の大きさからモジュールごとにVisual Studio 2015化対応を行ってきました。そして2024年リリースのBiz 9.19.0にてVisual Studio 2015化対応は完了を迎えました。 しかし、埋め込まれたバグの修正にはCOMの理解が不可欠であったため、2020年代に突入した今になって私達はこれまで正面戦争を避けてきたCOMを0から学び直す必要がありました。そしてATLの不思議な挙動やSTAにおける再入との戦いを乗り越え、無事にリリースされました。 はじめに Opti

    2024年の今、いかにしてVS2005を捨ててVS2015にする戦いは終わったか、そしてなぜCOMとの苦しい戦いが繰り広げられたか ~再入の悪魔~ - OPTiM TECH BLOG
  • インターホンをスマホに通知する方法をものすごく丁寧に説明する【Raspberry Pi Zero WH 】 - Qiita

    在宅勤務している人、多いですよね。 いつでも配達を受け取れてとても助かります。 しかし...2階で仕事をしていると、 インターホンの音が聞こえにくい! 他のことに集中していると気づかない!!!! せっかく配達に来てくれたのだから、一発で受け取りたいものです。 エンジニアらしく仕組みで解決しましょう! 忙しい人のための超要約 インターホンの室内モニタのA接点を使用します(鳴ると接点が閉じる) RaspberryPi Zero WH を用いて、A接点のオンオフによりGPIOの出力3.3VをGPIO17に印加する回路を組みます GPIO17に印加されたことをPythonスクリプトで検知します 検知したらLINE Messaging APIを使用してpush通知を送信します この説明で理解できる人は、記事全体を読む必要ないと思います。 電子工作初心者でも理解しやすいよう丁寧に書き上げたので、ぜひご

    インターホンをスマホに通知する方法をものすごく丁寧に説明する【Raspberry Pi Zero WH 】 - Qiita
    itotto
    itotto 2024/04/12
    作りたいものがあるのってとてもいいと思う
  • Python普及しろ協会に入会したい

    この記事はタナイ氏によるPython滅ぼす協会に入会したいを読んでから執筆したものです。 この記事の趣旨はPython滅ぼす協会に入会したいに対する反論という形をとりながら、タナイ氏により「バカの言語」と揶揄され、「使ってエンジニアを名乗るというのは」「滑稽」とまで言われたPythonの立場を再考することです。 追記 記事は「Pythonはこれだけ優れた言語だからみんな使おう!」というものではなく「言うほど酷くないと思うよ」程度のものです。 型アノテーションがあるからと言って静的型付けを軽視しているわけでもなければ、map関数をもってmapメソッドを不要だと言っているわけでもありません。 この記法は嫌い〜この記法が好き〜と表明することは個人の自由ですが、同様に「この記法は実はこういう意味があって〜」という意見があればそれを聞いた上で、物事を判断して欲しいです。もちろん、聞いても意見が変わ

    Python普及しろ協会に入会したい
  • Export To doesn't work with multiple pages · Issue #108 · hediet/vscode-drawio

    itotto
    itotto 2024/04/04
    4年前からなのか...。
  • データベースに接続するテストの仕組みを整備した話 - Qiita

    はじめに かれこれ1年以上前のことになりますが、今の開発組織でデータベースに接続するJunitを使ったIntegrationTest1 を開発者のPCとCIで実行できる仕組みを作りました。 トライしたきっかけと想い 仕組みの設計・導入をする時に気を付けたこと 具体的な実現方法 トライしてみて感じたこと を記載します。 トライしたきっかけと想い 私が保守開発を担当しているプロダクトは20年近く運用されているWebアプリケーションです。(サーバーサイドはJava) 単体テストの仕組みと文化が無いまま長期間運用されており、大半のコードがレガシーコードという状態でした。 一部テストが書かれている箇所もありましたが、CIでの実行の仕組みはなく腐ってしまっているものも多い状態でした。 そこに @autotaker1984 さんがCIでの単体テスト実行の仕組みを作ってくれて、単体テストを書くべきというマ

    データベースに接続するテストの仕組みを整備した話 - Qiita
  • プログラミング言語をすぐに試せる「プレイグラウンド」まとめ。2024年版

    新しいプログラミング言語やライブラリ、フレームワークを学ぶには、実際にそれらを試して挙動などを見てみることが大事ですが、実行環境を用意するのは手間がかかります。 そこで役立つのが、いわゆる「プレイグラウンド」と呼ばれる、Webブラウザでプログラミング言語やライブラリ、フレームワークをすぐに試すことができるサービスです。 主要なプログラミング言語の公式サイトには、実際にその言語をすぐに試せるプレイグラウンドが用意されていることも多く、また公式サイト以外にもネット上にはさまざまなプレイグラウンドがあります。 プレイグラウンドを使えば、気軽にいろんなプログラミング言語やライブラリ、フレームワークを試せます。 この記事ではそうしたプレイグラウンドをまとめてみました。ここで紹介したプレイグラウンドの他にも、あなたのお気に入りのプレイグラウンドがあればX/Twitterやブックマークのコメント、メール

    プログラミング言語をすぐに試せる「プレイグラウンド」まとめ。2024年版
  • Pythonが教育用途において十分だという話

    Python教育用途において十分だという話 今話題のPythonを教えている現役の講師です。Pythonを教える際に重視すべきだと考えている機能等について書いておきます。 dataclass / Pydantic 自分は型ヒントよりもdataclassやPydanticを使った型付けを重視しています。いわゆるクラスベースな言語の書き方が大事だと考えています。 dataclass Pythonは動的型付け言語であり、interface相当の機能すらclassの構文で書く変わった言語です。近年Pythonの型ヒントは少しづつ充実してきていますが発展途上であることは否めないですし、何より実行時にその型であることは保証されないので、dataclass等を使った開発スタイルが依然強力だと考えています。 Python+TypeScriptというようなスタックを使う際には両言語の差に混乱するでしょう。

    Pythonが教育用途において十分だという話
    itotto
    itotto 2024/04/02
    学生向けならこんなことまで知らなくてもいいことばかりだし業務でやる人なら教育用途とは言わないだろうし、全体的に誰用なの?という内容だと思ったんだけど
  • C# Win32API完全入門 - Qiita

    はじめに 対象とする読者について 記事の対象者としては以下のような人を想定しています。 C#でこれからWin32APIを使ってみたい。 C言語のことがあまりよく分かっていない。 今までは適当に使っていたので一度きちんと理解したい。 自分が同じような状況であったため、一から調べて整理してみました。自分が理解した順番や内容で記載することで、また、具体的な使用例によってできることの広さや動作を感じ取ってもらうことで、理解の助けになればと思っています。 但し、分かっている人からすると冗長な説明になっている部分や好ましくない内容、正確性に欠ける内容などもあると思います。実際に使用する場合はその点にご留意願います。 Win32APIについて Windows API - Wikipedia Microsoft Windowsのシステムコール用APIのこと。特に32ビットプロセッサで動作するWindow

    C# Win32API完全入門 - Qiita
  • Python滅ぼす協会に入会したい

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

    Python滅ぼす協会に入会したい
    itotto
    itotto 2024/03/30
    言いたいことはわかるけど、サーバーサイドでもそんなに使われてるの?