タグ

ブックマーク / qiita.com (134)

  • Qiita

    tekimen
    tekimen 2024/06/05
    ほとんどのカンファレンスで思うところはある。
  • 『Macで日本語ファイルをgitにコミットするのやめて><』とりあずMacとLinuxで互換性のない日本語ファイルを探すスクリプト書いた - Qiita

    Macで日語ファイルをgitにコミットするのやめて><』とりあずMacLinuxで互換性のない日語ファイルを探すスクリプト書いたPythonPHPMacGitUnicode 最近携わっているPHPプロジェクトでは、プログラムを日語で書いています。クラス名・変数名はもちろんファイル名も日語です。(なぜ日語で書くことにしたのか、そこらへんのモチベーションについては別記事にまとめたい) このプロジェクトは開発環境がMac、プロダクション環境がLinuxなのですが、日語ファイル名のPHPがオートロードされないなどの問題が発生しました。しらべたところ、MacのファイルシステムとLinuxのファイルシステムでUnicodeの規格が違うのが原因でした。詳しくは、「紹介マニアどらふと版: Mac OS X におけるファイル名に関するメモ(NFC, NFD等)」の記事が参考になります。 簡

    『Macで日本語ファイルをgitにコミットするのやめて><』とりあずMacとLinuxで互換性のない日本語ファイルを探すスクリプト書いた - Qiita
  • PHPカンファレンスの過去14+3回の登壇を振り返る - Qiita

    PHP Advent Calendar 2023の18日目の記事です。 PHPカンファレンスに登壇した記録を書きたいと思います。数えてみますと、2009年から昨年(2022年)までのPHPカンファレンス14回と、北海道2回、関西1回の合計17回登壇したことになります。 最初の登壇は14年前ですので、私の考えも当時からは変化していますので、そのあたりも触れながら紹介していきたいと思います。 PHP カンファレンス 2009 最初の登壇は2009年のPHPカンファレンスでした。この年はビジネスデイとテックデイに分かれていまして、ビジネスデイで登壇依頼を頂きましたので、当時温めていた「ウェブサイトを発注する際のセキュリティ」についてお話しました。 スライドの中で「脅威分析やってもあまり意味ない」みたいな物騒な意見が書いてあります。当時はそのように考えていたわけですが、これは当時のサイトがECサイ

    PHPカンファレンスの過去14+3回の登壇を振り返る - Qiita
  • 新幹線でもQUICで快適にSSHする - Qiita

    はじめに 今日は、劣悪な通信環境でも快適にSSHができるquicssh-rsをご紹介します。そして、実際に改善されるかを試してみます。 長くなったので最初に結論 quicssh-rsを使うと、 パケットロスに対して明らかに強くなった こちらのIPアドレスが変わっても通信が継続できた 遅延(pingのRTTが大きいこと)は改善されない模様 30%パケットロス環境での比較 IPアドレスを変更しても切れない SSHは新幹線(劣悪通信環境)に弱い 鉄道での移動時間が長いと、パソコンを開いて各種開発の続きをしたくなります。 …なりませんか? 時には、別のサーバーにSSHでログインして何かコマンドを打ったり。 在来線1であれば概ね問題ありませんが、新幹線になると通信品質が大きく悪くなるため、SSHでの操作は大きなストレスが溜まりがちです。なんとかならないかとずっと思っていました。 新幹線の通信環境 通

    新幹線でもQUICで快適にSSHする - Qiita
    tekimen
    tekimen 2023/12/16
    へー。、すごい
  • 「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita

    TL;DR Shift_JISにしただけでコンパイラが通らなくなる恐ろしい事件とその回避法について。 \ (¥)のASCIIコードは0x5c 表、能は良くない UTF-8は神 2023/12/06追記 誤りがあったので訂正します。こんな読まれると思ってなかったので正直ちょっとびっくりしていますが、いろいろコメントありがとうございました。(ツイート等全て拝見しました。) Shift_JISが悪いわけではない(デフォルトのエンコーディング設定の問題)→追記しました UTF-8にはUTF-FSSという仕様でこの問題が回避されている→マジでタメになる知識ありがとうございます OSによってデフォルトのエンコーディング設定が異なるせいで、デフォルト環境での動作がOSにより異なる→なるほど?(調査中) CRLFとLF問題では→なるほど?(調査中) そんな問題何を今更→UTF-8が出てから生まれたからです

    「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita
    tekimen
    tekimen 2023/12/05
    いい体験をしたと思います。そしてShift_JISをつかってはならないのもそう。
  • 中途入社や部署異動で来た新メンバーを活躍しづらくするアンチパターン - Qiita

    1. はじめに ソフトウェア開発のチームに、新しいメンバーが入ってくることはよくあります。 以前に新卒社員がチーム入ってきた場合の育成方法を紹介しました(こちら)。 今回は、新卒社員ではなく、他の会社から中途入社か同じ会社の部署異動で来る新メンバーの話です。 (エンジニアが数百人などで規模が大きい会社の場合、部署が違うと仕事のやり方が全く変わる場合があるので、今回は中途入社と他の部署からの異動を同じように「新メンバー」として扱います) 会社や部署が変わると仕事のやり方が大きく変わるため、仕事のやり方に戸惑うことが多いと思います。 稿では、そのような「新メンバー」を活躍しづらくしてしまうアンチパターンとその対策を紹介します。 2. 中途入社や部署異動で来た新メンバーが適応することの困難さを理解する 中途入社や部署異動で来た新メンバーが組織に適応することは、新卒社員のそれとは別の難しさがあり

    中途入社や部署異動で来た新メンバーを活躍しづらくするアンチパターン - Qiita
  • RaspberryPi を安定運用させる - Qiita

    はじめに しまねソフト研究開発センター(略称 ITOC)にいます、東です。 教育用ワンボードマイコンとして販売されている Raspberry Pi (以下ラズパイ)は、教育用のみならず実験用、産業用とさまざまな分野で使われつつあります。一方、マイクロSDカードをメインストレージに使用している事や、OSがクライアントPCよりの設定にしてある事などから、長期安定運用には向かない面も存在します。 このレポートでは、OSや稼働させるソフトウェアの設定など、できるだけ簡易に再現可能な方法により、可能な限りラズパイを安定して長期運用させることを狙います。また、その題材として、デジタルサイネージ(*)を作ってみます。 私は、2000年ごろからフラッシュメモリを使ったFA機器の開発を皮切りに、10年ほど前からは民生用フラッシュメモリ(CF,SD,USBメモリ)を起動デバイスとした機器を開発・運用していまし

    RaspberryPi を安定運用させる - Qiita
  • C++標準化委員会、ついに文字とは何かを理解する: char8_t - Qiita

    C++ Advent Calendar 2018 この記事はC++ Advent Calendar 2018 15日目の記事です。 14日目: VTKライブラリ 16日目: C++のエラー処理との付き合い方 当初見積もりよりも大幅に長い記事となり、投稿したのは12/22で1週間遅刻です。すみません。 お知らせ cpprefjpにchar8_t型追加について解説を書きました。ぎゅぎゅっとコンパクトに、また査読を受けて中立的な表現で書いていますので、よければどうぞ。 UTF-8エンコーディングされた文字の型としてchar8_tを追加 - cpprefjp C++語リファレンス 追記 全ての開発者が知っておくべきUnicodeについての最低限の知識 - GIGAZINE Unicodeについて簡潔にまとまってるいい記事を見つけました。 Caution この文章には以下の要素が含まれます。苦手

    C++標準化委員会、ついに文字とは何かを理解する: char8_t - Qiita
  • IBMi db2へ、PHP ODBCから接続する - Qiita

    導入 こんにちは。phpでお仕事してます。 お仕事の傍、php-srcのコントリビュータもしています。 今回、phpのodbc_connect()およびodbc_pconnect()の改修をするにあたり、いろんなODBCドライバの挙動を見る必要が出てきてIBMi db2に初めて触ることになりました。 日語にしろ英語にしろまとまった情報源がなく、かなり手探りで接続までたどり着いたので、備忘録を兼ねて記事にすることにしました なお、この記事では DBにPUB400のIBMi db2を使用 phpは8.4(執筆時点のphp-src masterブランチのビルド)、localのdocker ubuntu22.04環境 での操作の備忘録となります(ただし、php-srcのビルドは記事の趣旨と逸れるので、割愛します)。 IBMi db2とは IBMiに搭載されているdb2のことです。IBMiについ

    IBMi db2へ、PHP ODBCから接続する - Qiita
  • 文字って何かね? - Qiita

    元ネタ: 「文字列を文字の列とみなす単純化」ってどういうこと?解説編 - 西尾泰和のはてなダイアリー Shift JISおじさん(半角文字は1バイト、全角文字は2バイト派) 今どきShift JISもないだろうと思いますが、レガシーな業務システムなんかだと割と普通に残っていますね。 C#でShift JISな文字を扱いたければ、System.Text.Encodingクラスを使っていろいろすればいいです。 var text = "あいう"; var enc = System.Text.Encoding.GetEncoding("Shift_JIS"); // コードページ932でも可。 // 日WindowsならDefaultプロパティでもいい。 var bytes = enc.GetBytes(text); 後で書きますが、C# のchar型やstring型はUnicodeをベースに

    文字って何かね? - Qiita
  • git add -p 使ってますか? - Qiita

    皆さん、git であるコードの一部分だけコミットしたいとか ありませんか? 私は時々あります。 commit するの忘れてて、別の機能に取り掛かった時になど。 そんなときはgit add -p 使いましょう。 で、頻度が低いせいか毎回 git add のなんだっけ? とか git add -p のなんだっけ?と苦労してます。 それも google 先生で git add -p で検索しても 一発でヒットしないからです。 なのでオレオレメモとして残そうと思います。 まずはおさらいとして git add とは?

    git add -p 使ってますか? - Qiita
    tekimen
    tekimen 2023/09/09
    git add -p は便利だから使ってるけど、composer.lockなど機械的に吐き出したものもいちいち確認する必要があるので結局パスを指定したほうが良いのと、Untrackedなファイルは追加しない(それはそう)ので忘れがちなのに注意
  • エンジニアとして長く現役で生き残るために - Qiita

    Qiita公式が新人プログラマ応援のイベントをやっているようなので便乗して参加してみました。 ポエム成分などを多く含みますのでご注意ください。過去のQiita公式の発表や先日のガイドライン改定に目を通してみてとりあえずはこういった記事も大丈夫そうとは判断しておりますが、もし怒られたら削除するか別のところに記事を引っ越しいたします(はてブコメントなどで「こんな記事Qiitaに書くんじゃない」とご指摘いただきそうで戦々恐々としながら書いています)。 記事で触れること 長く現役でいるために大切な睡眠・運動・生活などのこと。 習慣化のこと。 勉強のこと。 今までどのくらいエンジニアをしてきたか 私自身はエンジニアのお仕事は10年くらいです。高校生のころ辺りから少しはHTMLやjsのコードを書いていたのでコードを書いてきた期間としてそこからカウントすると17年くらいでしょうか。デザインの学校を出

    エンジニアとして長く現役で生き残るために - Qiita
    tekimen
    tekimen 2023/09/09
    技術の話かと思ったら健康の話であって、至極当然かつなかなかできないことだった。
  • 単なるソートで詰まった話 - Qiita

    この記事はJustSystems Advent Calendar 2017の22日目の記事です。 はじめに 普段は自然言語処理に使う言語資源をいじっています。 担当している業務のひとつに、 辞書リソース(語句リストのようなもの)をソートしてね Excelの「並べ替え」機能を使ってやってね という工程が含まれています。 たしかにExcelで行っても特段コストのかかる作業ではありませんが、普通にsortコマンドで済ませたらもっと楽になるのでは?とあるとき思いました。 とはいえ、「ソート手順を変えた」という要因だけで従来のリソースとの差分が大量に出ると面倒くさいです・・・。1 ということで、まずは様々な条件でソートしてみて、Excelのソート結果を再現できるものはあるか試してみました。 結論としては、自分がやってみた限りではsortコマンドではExcelのソート結果を再現できませんでした。 ただ

    単なるソートで詰まった話 - Qiita
  • 【PHP8.3】PHP8.3の新機能 - Qiita

    PHP8.3 / PHP8.2 / PHP8.1 / PHP8.0 2023/11/23にリリースされました。 2023/07/18、PHP8.3がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2023/11/23にPHP8.3.0がリリースされる予定です。 というわけでPHP8.3で実装されるRFCを見てみましょう。 RFC Marking overridden methods (#[\Override]) 賛成22反対1で受理。 Overrideアトリビュートです。 class C1 { protected function foo(): void {} } class C2 extends C1 { #[\Override] public function foo(): void

    【PHP8.3】PHP8.3の新機能 - Qiita
    tekimen
    tekimen 2023/08/28
  • CTFのRSA問題を解いてみた - Qiita

    ネットワークやってるくせに暗号技術全然わからなかったので覚え書き。 背景 この問題を解いていた。 RSAをざっくり理解する 最初に与えられた文字列 Decrypt my super sick RSA: c: 240986837130071017759137533082982207147971245672412893755780400885108149004760496 n: 831416828080417866340504968188990032810316193533653516022175784399720141076262857 e: 65537

    CTFのRSA問題を解いてみた - Qiita
  • ソルト付きハッシュのソルトはどこに保存するのが一般的か - Qiita

    pictBLandとpictSQUAREに対する不正アクセスがあり、パスワードがソルトなしのMD5ハッシュで保存されていたことが話題になっています。 2023年8月16日に外部のフォーラムにpictSQUAREより窃取した情報と主張するデータ販売の取引を持ち掛ける投稿が行われた(中略)パスワードはMD5によるハッシュ化は行われているもののソルト付与は行われていなかったため、単純なパスワードが使用されていた29万4512件は元の文字列が判明していると投稿。(それ以外の26万8172件はまだMD5ハッシュ化されたままと説明。) 不正アクセスによるpictBLand、pictSQUAREの情報流出の可能性についてまとめてみた - piyolog より引用 これに関連してMD5ハッシュやソルトに関するツイート(post)を観察したところ、どうもソルトの理解が間違っている方が多いような気がしました。

    ソルト付きハッシュのソルトはどこに保存するのが一般的か - Qiita
    tekimen
    tekimen 2023/08/17
  • picoCTF 2021 Transformation - Qiita

    できなかった問題をwriteup等を参考に勉強した記録を残す。 この問題を解くカギは,ヒントのとおり,ネットでTransformツールを探し当てることだったようだ。

    picoCTF 2021 Transformation - Qiita
  • 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
    tekimen
    tekimen 2023/08/07
  • ソフトウェアはなぜバージョンアップしなければならないのか - Qiita

    はじめに 社内インフラの運用担当者にとってソフトウェアのバージョンアップは地味な割に大変な業務です。 特に社内のオンプレサーバで動いているようなソフトウェアの場合、バージョンアップに伴う諸々の調整をそのソフトウェアを利用している各部署と行う必要があります。 そんなときに「今は忙しいからバージョンアップを先送りしてほしい」「このバージョンはスキップしてもよいのでは?」なんて声が各部署から聞こえてきます。バージョンアップの価値を各部署に理解してもらうのは大変です。 この文章はそんな時になぜバージョンアップしなければならないのかを上司や各部署のマネージャに伝えるために書きます。 ソフトウェアの有効期限は2-5年 まず、第一に、ソフトウェアというものは無限に使えるわけではなく、一定の有効期限があり、それを過ぎると徐々に動かなくなってきます。俗にいう「何もしてないのに動かなくなった問題」です。 なぜ

    ソフトウェアはなぜバージョンアップしなければならないのか - Qiita
    tekimen
    tekimen 2023/08/05
  • Armの命令セットとNEON拡張 - Qiita

    このアドベントカレンダーのスコープ、対象読者について この記事はひとりNEONアドベントカレンダー2020 1日目の記事です。 目次にも書きましたが、あくまで手島個人の知識の範囲内で書くので、すべて公開情報がもとになっています。 個人で趣味の範囲で書くので、筆者の勤務先とは無関係です 一人advent calendarなので、省エネモードがモットーになってます。悪しからず。 Arm v8.4、SVEと行ったArmの現在進行形の拡張に関しては実機が手元に無いこともあって、あまり深入りはしない予定 実際のコードはアセンブラではなく、GCCのintrinsicをもとに解説する C/C++のコードからNEON命令を使うコードを解説するので、それが読めるぐらいの読者を想定。 日のトピック いきなり「NEONとは」、と飛び込んでもわからない人が居ると思うので、第1日目は概要を説明しようと思います。

    Armの命令セットとNEON拡張 - Qiita