タグ

ブックマーク / qiita.com (1,160)

  • イベント駆動GUI: PythonとtkinterによるGUIプログラミング入門 - Qiita

    はじめに グラフィカルユーザーインターフェース(GUI)プログラミングは、多くの開発者にとって魅力的な分野です。特に、イベント駆動プログラミングの概念は、GUIアプリケーション開発の核心部分です。この記事では、Pythonとtkinterライブラリを使用して、イベント駆動GUIの基を学びます。 イベント駆動プログラミングとは? イベント駆動プログラミングは、プログラムの流れがユーザーのアクション(イベント)によって決定される設計パラダイムです。GUIアプリケーションでは、ボタンのクリックやキー入力などのユーザーアクションがイベントとして扱われ、それに応じてプログラムが反応します。 主な特徴: イベントリスナー:特定のイベントを監視 イベントハンドラ:イベントが発生したときに実行される関数 イベントループ:継続的にイベントを監視し、適切なハンドラを呼び出す プロセスの流れ: ユーザーがGU

    イベント駆動GUI: PythonとtkinterによるGUIプログラミング入門 - Qiita
  • SSHハニーポットに対する不正アクセスの最新動向 - Qiita

    エンジニア学生団体IDEAで代表を務めているshuと申します。去年の12月ごろに設立し、最近設立1年を迎えた団体なのですが、おかげさまで150人以上の大所帯となっております。LT会やハッカソンなどを企画・運営しており、優秀な学生がのびのびと楽しんでおります。興味があればぜひご参加ください。 ハニーポットとは ハニーポットは、攻撃者がシステムに侵入しようとする際に、その攻撃を検知、記録します。 中でも今回取り上げるハニーポットはSSHハニーポットというもので、攻撃者がサーバーに対してssh接続を試みるシチュエーションを想定していただければと思います。 Cowrieハニーポット SSHハニーポットとして有名なものはいくつかあるのですが、Cowrieというものが一番有名です。Kippoという有名なハニーポットの改良版なのでこちらを使いましょう。 環境 今回はAWS EC2上にハニーポットを構築し

    SSHハニーポットに対する不正アクセスの最新動向 - Qiita
  • 「AWSが分かっていない」のではなく、コンピュータサイエンスが分かっていなかった - Qiita

    はじめに ◆この記事は何? 焦ってAWSの勉強をするよりもコンピュータサイエンスの基礎を勉強してからの方がよかったという私の経験を紹介する記事です ◆対象は? AWSの勉強をしている方 特に若手 ◆この記事のねらい AWSの勉強効率を上げる 先に結論 AWSの勉強に時間がかかったのはコンピュータサイエンスの基礎ができていなかったから コンピュータサイエンスの基礎を勉強してからの方が、圧倒的に効率が良い 遠回りに見えるが、近道だと考える 急にAWSを勉強した 新卒1年目からデータサイエンティストとして働いています。 急にAWSが必要になったので、急いでAWSの勉強をしました。 結果的には、「AWS Certified Cloud Practitioner」「AWS Certified Solutions Architect - Associate」を取得しました。 当時は知らない用語ばかりで

    「AWSが分かっていない」のではなく、コンピュータサイエンスが分かっていなかった - Qiita
  • 祝🎉 POSIX.1-2024 (Issue 8) 改定!16年ぶりの大幅改定でシェルスクリプトはどう新しくなるのか? - Qiita

    FreeBSD では 2024-05-31 に 200112 から 200809 への変更がようやく行われました(一度間違えて 200808 と書いてしまっていますが)。 https://cgit.freebsd.org/src/commit/?id=2e30926a68 https://cgit.freebsd.org/src/commit/?id=6e0278408e macOS は FreeBSD のユーザーランドのコマンドを使用しているため、そのせいで 200112 のままだった可能性も考えられますが、シェルやカーネルは FreeBSD のものではないため、FreeBSD が変更になったからと言って macOS が更新されるとは限らないでしょう。Solaris 10 と 11 ではディレクトリごとに準拠バージョンが異なるバイナリが配置されており以下のようになります。Solaris

    祝🎉 POSIX.1-2024 (Issue 8) 改定!16年ぶりの大幅改定でシェルスクリプトはどう新しくなるのか? - Qiita
  • dig の全てのコマンドラインオプションを一覧にしたシートを作成しました - Qiita

    概要 筆者は DNS Summer Day 2023 で「あたらしい dig」というテーマで発表を行いました(資料はこちら)。 DNS のテストツールである dig コマンドは、ネットワークエンジニアのみなさんが日常的に利用していると思います。 一方で、dig を用いているとたまに想定とは異なる結果が得られ、戸惑うことがあります。 原因としては、dig の送信するリクエストメッセージに関するデフォルト値が一般的な感覚と異なるために起きることが多いようです。 発表ではこれらの具体的な例を挙げつつ、もし dig のいくつかのコマンドラインオプションの存在やそのデフォルト値の知識があったならば、それらはすぐに解決したであろうことを示しました。 dig には非常に多くのコマンドラインオプションがあります。しかし、man ページや -h オプションで表示される簡易ヘルプではコマンドラインオプションが

    dig の全てのコマンドラインオプションを一覧にしたシートを作成しました - Qiita
  • 個人開発で月1万円を稼げるようになった話。 - Qiita

    はじめに こんにちは。こんばんは。おはようございます! 今回は個人開発話でも書いてみようと思います。個人開発で月1万円を稼げるようになるというのは僕にとって1つの目標でした。同じように月1万円稼げるようになりたいぞ〜!という人もいるかもしれません。そういう人にこの記事が少しでも参考になればと思っています。 そして、実際にこの記事を読んで「個人開発をスタートした!」「眠らせてたアプリをバージョンアップした!」などのアクションにつながったとしたら、それが一番嬉しいです。 ちなみに僕はiOSアプリを開発しているので、iOSアプリによった話がメインです。 個人開発で一番大事なこと 大事なのは続けること ごくごく当たり前のことで何の捻りもありません。でもやっぱりこれが一番大事です。とにかく続けましょう。 まだ月1万円に到達していない人で、アプリを20回以上アップデートしたという人はほぼいないんじゃな

    個人開発で月1万円を稼げるようになった話。 - Qiita
  • HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita

    HTML,CSSだって難しいよ!」 初心者でも始めやすいって言ったの誰ですかね。最初は覚えるのに必死だし、少しわかるようになったかな?で始めたサイト制作(コーティング)もエラーだらけで頭を抱える日々。そんな修行を耐えているみなさんに知ってほしい、CSSの設計についてお話できたらなと思います。概念的なこと中心になりますので細かいことは下記の参考文書をご覧ください。 『インプレス社 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法 谷拓樹著 2022年発行第1版』 注意 作者自身もプログラミング初めて1ヶ月の超初心者です。HTMLCSSを使ってデザインカンプを元にサイトを作れるぐらいのレベルです。なので僕より歴長い人はスルーしてもらっていいです。まだ初めたばかりの人は追いついてきてください。僕は先に行ってます。 初め 壊れない完璧な設計を

    HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita
  • なっとく!関数型プログラミング を読んで関数型プログラミングを学んだ - Qiita

    EDOCODEでエンジニアをしているYutakaです。 こちらは社内勉強会で発表した資料を元にしています。 関数型言語の知識がほとんどないエンジニアがなっとく!関数型プログラミングで学んだ用語を一部まとめました。原著はGrokking Functional Programmingです。書はScalaJavaで説明がされていますが、できる限り社内で使われている言語(Go, JavaScript, TypeScript)でサンプルコードを記載しました。 書籍のソースコードはこちらに全て公開されています。 そもそも関数型プログラミングとは? プログラミングのパラダイムには大きく①命令型プログラミング②宣言型プログラミングがあります。 ①命令型プログラミングとは どのよう(HOW)に計算するかに焦点を合わせ、段階的なアルゴリズムを詳細に定義します。これは実際のハードウェアの計算処理の流れに沿っ

    なっとく!関数型プログラミング を読んで関数型プログラミングを学んだ - Qiita
  • MSX-C に関する情報 - Qiita

    はじめに 『MSX-C』関連の情報を集めてみました。 MSX-C 『MSX-C』は ASCII が発売した MSX 用の C コンパイラです。元々は エル・エス・アイ・ジャパン株式会社 の『LSI C-80』の OEM だったようです。 『MSX-C』はアセンブラソースを吐くタイプのコンパイラですので、実行形式ファイルを生成するにはアセンブラとリンカが必要です。 See also: ASCII MSX-C (MSX Resource Center) LSI C-86 (Wikipedia) 準拠している C 言語の規格 ANSI C (1989) よりも前に発売された製品なので、後に制定された規格には準拠しておらず、K&R のサブセット的な実装となっています。例えば、MSX-C で利用可能なデータ型は次の 4 (3) 種類のみです。 型 長さ 範囲

    MSX-C に関する情報 - Qiita
  • LaTeX と Python で作る 1 ポイントたりとも表示崩れしない最強の帳票印刷ソリューション - Qiita

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

    LaTeX と Python で作る 1 ポイントたりとも表示崩れしない最強の帳票印刷ソリューション - Qiita
  • メールサーバ再入門 - Qiita

    メールシステム メールの送受信をサーバで実現にあたりメールサーバの構築が不可欠。 メール配送に関する知識を身に着けるためにメールの送受信システムを構築するための設定例などを備忘録として記述する。SMTPサーバにはPostfixを利用する。 Postfix 有名なオープンソースのメール送信サーバである。メールのリレーや流量制御など様々な高度な機能も持っている。設定ファイルの体は/etc/postfix/main.cfである。パラメータの詳細は以下。 1.基パラメータ詳細 これだけやれば、とりあえずローカルからローカルだったり、SMTP認証等が必要ないメールサーバにはメールを送れるという基的な設定。 myhostname メールサーバ自身のホスト名をFQDNで指定。これ自体が何かの動作に関連するのではなく、他のパラメータから参照されるデフォルト値として使われる。 例)myhostname

    メールサーバ再入門 - Qiita
    korin
    korin 2024/04/17
  • 『Winny』の金子勇さんの失われたED法を求めて - Qiita

    普段は「通知が迷惑かなー」と思ってブックマークしていただいている方に通知せず記事を編集しているのですが、この記事をブクマしていただいている方は続きが気になっている方だと思いますので通知させていただきます。 結論から言うと、この記事を読んだ @pocokhc (ちぃがぅ)さんという方が金子勇さんが書いたED法のサンプルプログラムを見つけてくださいました。 ちぃがぅさんの記事はこちら 自分で解明したかったという気持ちも無いことは無いですが、バズった時点で誰かが実装してくれそうな気はしていました。新卒からIT業界に入って4年目が始まったところですが、業務以外で初めて業界にコントリビュートできた気がして嬉しいです! 追記ついでに、謝罪します。初回公開時に記事タイトル含め文中で何か所か「Winney」と書いてしまっていた箇所がありました。失礼いたしました。誤字修正してあります。指摘してくださった何

    『Winny』の金子勇さんの失われたED法を求めて - Qiita
  • テキストから図が生成できるMermaidでAWS構成図をつくる - Qiita

    はじめに テキストからダイアグラムの図が生成できるMermaidAWS構成図をつくる方法を紹介します。 また、MermaidGithubやQiitaなどのWebサービスVSCodeやIntelliJなどのツール、コマンドやWebシステムでも使用できますので、良ければ下記の記事もご確認ください。 Mermaidのことはなんとなくわかったけど、AWSの構成図や配置図が描けないか考えていた人にも参考になれば幸いです。 AWSの構成図をつくる ・どんな感じの図ができるのか AWSの構成図を描くときにはAWS公式から提供されている[AWS Architecture Icons]というAWSのダイアグラムを書く際のアイコンセットを利用する機会が多いと思いますが、Mermaidでは残念ながらまだ使用できません。 そこで、アイコンの使用は諦めてAWSに関するグループやサービスについて、それっぽく見え

    テキストから図が生成できるMermaidでAWS構成図をつくる - Qiita
  • 超簡単にChromeの拡張機能を作ってみる【誰でもできるよ】 - Qiita

    はじめに みなさんはChrome拡張機能を使っていますか? 僕も使っていますが、案外Chrome拡張機能を作るのは簡単です。 今回は、普段の業務の効率を上げるのも兼ねて自作してみました! 最低限準備するもの manifestファイル Javascriptファイル ぶっちゃけ、これだけで動きます。 実際に作ってみよう それでは実際に作成していきましょう。 今回はDとVを押すだけで、Markdownのリンクを作成する拡張機能を作成していきます。 まずは、manifestファイルから設定していきます! manifestファイル を参考にして、備忘録も兼ねて説明していきます。 今回は、最低限の設定を行います。 { "manifest_version": 3, "name": "Create markdown link", "version": "1.0.0", "icons": { "16":

    超簡単にChromeの拡張機能を作ってみる【誰でもできるよ】 - Qiita
  • IT契約入門〜雇用契約、請負契約から準委任まで - Qiita

    この記事は? 著者は、エンジニアにとって最も大事なものの一つは契約であると考えます。なぜなら、契約によって我々はお金を得ることができ、労働対価を受け取って生きていくことができるからです。プロジェクトにおいてトラブルが発生すると、契約はメンバーを守ってくれるものになります。したがって、雇用契約、請負契約、準委任契約など何の契約であっても隅々まで確認し、不利にならないようにしないといけません。社員であれば誠実に職務に向き合う必要があります。請負契約であれば対価を得るために納品する必要がありますし、準委任契約であれば善管注意義務を背負いプロとして日々業務を行なっていく必要があります。一方で、著者は長くにわたって業務委託契約でパートナーとして参加してくださっているエンジニアたちと長らく協働してきた経験がありますが、ユーザーとしてもベンダーが妨害要素なく働けるように、協力義務を果たす必要があります

    IT契約入門〜雇用契約、請負契約から準委任まで - Qiita
  • 読書メモにはObsidianが最高という話 - Qiita

    ![cover|200]({{coverUrl}}) ## 著者 [[{{author}}]] ## 発行日 {{publishDate}} ## 読了日 ## 3選 ## メモ [[読書記録]] 自分は使ってないですが、{{category}}なんかも取得できます。 ひたすらメモる あとは読みながら気になったことをメモしていきます。 ちなみにこのメモはを読みながらではなく、を閉じて行うことをお勧めします。 なぜなら、の内容を思い出すという行為で脳に負荷をかけることで、記憶への定着がいくらか期待できるからです。 『科学的根拠に基づく最高の勉強法』に記載されている「アクティブリコール」の簡易版といった感じです。気になった方は是非このを読んでみてください。為になる情報がたくさん載っていてお勧めです。 科学的根拠に基づく最高の勉強法 読了後に3選を決める を読み終えたら、メモした内容の

    読書メモにはObsidianが最高という話 - Qiita
  • 『技術書の読書術』を読んで覚えておきたいテクニック - Qiita

    はじめに 今回紹介する技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック ITエンジニア大賞という企画でこののことを知り、 技術書のインプットが足りてないなと思う時期だったため、改めて技術書の読み方を学んでみようと思い読んでみました。 書の構成を簡単にお伝えすると以下の3部で構成されております。 第1部 選び方 第2部 読み方 第3部 情報発信&共有 各部ごとに2人の著者それぞれが章を受けもってそれぞれ書かれている感じで、1冊のなのですが、読書術を2人の視点から学べるお得なとなっております。 このは次のような方におすすめできると思いました。 これから技術書を読み始める人 技術書を読んでいるがまだ数冊、読み方など考えたことがない 自己流でこれまで読んできているが他の人がどのように読んでいるのか知りたい この記事では「第2部 読み方」について特に印

    『技術書の読書術』を読んで覚えておきたいテクニック - Qiita
  • JavaScriptからFlaskへのデータ送信ーajax通信400エラー - Qiita

    初めに Flaskを用いて開発を行っており、JSからFlask側にajaxを使って情報を送ろうとした。 コードは下記通り var fData = new FormData(); fData.append(Data1, data1); fData.append(Data2, data2); fData = Object.fromEntries(fData.entries()) $.ajax({ url : 'URL', type : 'POST', data : JSON.stringify(fData), dataType : "json", processData : false, contentType : "application/json", async : false, })

    JavaScriptからFlaskへのデータ送信ーajax通信400エラー - Qiita
  • 純粋なJavaScriptで実現するデータバインディング - Qiita

    概要 この記事では、ライブラリやフレームワークに依存せず、純粋なJavaScriptのみを使用してデータバインディングを実装する方法について詳しく説明します。効率的なWebアプリケーションの開発に欠かせない基的な技術を、具体的な例を交えて紹介します。JavaScriptのさらなる可能性に興味がある初心者から中級者の方々にとって、理想的な内容です。 検証方法 データバインディングの検証を行うために、次の機能を持つツールを作成します。 クリック回数を表示するテキストエリアを用意します。 ボタンをクリックするごとに、表示されているクリック回数を1増やします。 実装案 純粋なJavaScriptを使用して、データバインディングの制御を担うモジュールを開発します。 このデータバインディング制御モジュールを使用して、クリック回数表示ツールを実装します。 データバインディング制御モジュールの設計 独自

    純粋なJavaScriptで実現するデータバインディング - Qiita
  • 「JavaScriptで要素をドラッグして移動する簡単な方法」という記事が初耳だらけだった件 - Qiita

    はじめに まず↓の記事を見てない方はぜひ見てください! 自分にとってはこの記事には「えっ、ナニコレ!」なテクニックが多く、特に解説もなかったのでいろいろ調べてたら休日が消えてました... なのでその時間の供養もかねて、自分が知らなかった部分を中心に、僭越ながら元記事の解説を書いてみたいと思います。 ちなみに、以下が元記事のコードそのままを実装したものです。たしかに掲載コードだけで要素がグリグリ動きますね。 See the Pen js-drag-move-original by www-tacos (@www-tacos) on CodePen. 初耳1: $img まずコードのここ <img id="$img" src="https://js.cx/clipart/ball.svg" width="40" height="40"> <script> $img.onpointermove

    「JavaScriptで要素をドラッグして移動する簡単な方法」という記事が初耳だらけだった件 - Qiita