タグ

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

  • 時刻には「必ず」タイムゾーンをつけて扱え!絶対だぞ!? - Qiita

    プログラムで時刻を扱うときは、必ずタイムゾーン付きの方の時刻型を使いますよね? 「UTCの時刻に変換してdatetime without timezone型の列に格納」なんて、レガシー対応以外ではしませんよね!? REST APIで、パラメータで時刻渡すときは2019-11-29T20:36:37+09:00みたいにタイムゾーン付きの表記にしますよね!? 「当たり前じゃないか」という方には、この記事は蛇足です。 でも、 「datetime without timezoneで、サーバーのタイムゾーンを使えばいい」 「内部ではUTCに揃えて扱う」 「パラメータは "2019-11-29T20:36:37"形式で。タイムゾーンはJSTに統一」 とか言いだす人に遭遇することが意外とあります。 次回遭遇したときに備えて(or 次回遭遇を防ぐために)、なぜタイムゾーン付きをつけるべきなのかこの記事で説

    時刻には「必ず」タイムゾーンをつけて扱え!絶対だぞ!? - Qiita
    zetamatta
    zetamatta 2024/06/03
  • Androidスマートフォンを工場出荷時に初期化。しかし、思わぬ落とし穴が。。。 - Qiita

    事の起こり 3月と言えば新生活応援セールがあちこちで行われますが、Google StoreでもGoogle Pixelなどの製品を大幅値引きして販売するセールが行われました。筆者はPixel 7aを昨年の5月に購入したのですが、画面内指紋センサーの感度がいまいちで大変不満でした。ネットで検索してみても同様の不満の声が書き込まれているレビューを時々見掛けるので、筆者の端末だけが初期不良ということでもなさそうです。よって、このセールでPixel 8を狙うことにしました。セール値引きに加えてPixel 7aを購入した時に貰ったストアクレジットを加えて、更に旧端末を下取りに出せば更に大幅な値引きが期待出来ます。幸いPixel 7aの前に利用していたPixel 5(筆者にとっては初めてのPixel)も綺麗な状態で残っています。さあ下取りに出そうと勇んだのですが。。。危うく下取りが受けられないことにな

    Androidスマートフォンを工場出荷時に初期化。しかし、思わぬ落とし穴が。。。 - Qiita
    zetamatta
    zetamatta 2024/04/28
    なるほど、FeliCa かー
  • POSIXの大失敗 〜 cpio vs tar戦争を平和に導くためにpaxコマンドを作った結果 - Qiita

    補足 GNU tar のメジャーリリース は 1.14 (2004-05) 最初の tar コマンドの登場は 1979 年で Version 7 Unix で初めて実装されました。Version 7 Unix のマニュアル には tar コマンドがあります(ちなみに cpio コマンドはありません)。この時の形式が GNU tar では v7 形式と呼ばれています。 POSIX 1003.1-1988 で tar 形式を拡張した ustar 形式が登場します。最大のファイル名の文字数は増えていますが、最大ファイルサイズが 8GB であるという制限がありました。この ustar 形式は POSIX.2 で登場した pax コマンドで扱うことができます。(上記の表は ustar "形式" が登場した時期を書いていることに注意してください) GNU tar の開発が開始されたのはおそらく 199

    POSIXの大失敗 〜 cpio vs tar戦争を平和に導くためにpaxコマンドを作った結果 - Qiita
    zetamatta
    zetamatta 2024/03/19
  • 作業手順書にmermaidを使ったら便利だったメモ - Qiita

    概要 サービスのメンテナンスの作業手順書にmermaidガントチャートを使ったという話 作業手順書作成時の時間見積と、実際の作業実施時の時間計測の差が簡単に把握できて便利 下のような図を出せて便利ということ ※2023/08/22 mermaidの記法が変更になったらしく、ガントの分指定が min ではなく  m となった 実際のメンテナンス作業の時間を把握したい これらをなんとなく把握したい。 決めた手順が実際にどれくらい余裕があったのか把握したい 事前にステージング環境で同じメンテナンス作業をして問題ないか確認、番メンテナンスの予定にフィードバックしたい etc. どうやって把握するか 作業前の時間見積 作業手順書に必要時間を記録する etc. 作業実施時の時間計測方法 作業ログを別途作成し、タイムスタンプを記録する 自分は作業チームでMeetに入って作業開始と終了をコメントして、

    作業手順書にmermaidを使ったら便利だったメモ - Qiita
    zetamatta
    zetamatta 2024/02/03
  • The Go Blog - Using Go Modules / Go Modulesを使う(和訳) - Qiita

    この記事は The Go Blog - Using Go Modules の和訳です。 はじめに Go 1.11および1.12には、依存バージョン情報を明示的で管理しやすくする、Goの 新しい依存管理システム である モジュール の予備サポートが含まれています。このブログ記事は、モジュールを使い始めるために必要な基的な操作を紹介するチュートリアルです。この次の記事では、他の人が使用するためのモジュールのリリース方法について説明します。 モジュールは、そのルートに go.mod ファイルを持つファイルツリーに格納された Goパッケージ の集まりです。 go.mod ファイルは、モジュールのモジュールパス(ルートディレクトリに使用されるインポートパス)とその依存関係の要件(ビルドを成功させるために必要な他のモジュール)も定義します。各依存関係の要件は、モジュールパスと特定の セマンティックバ

    The Go Blog - Using Go Modules / Go Modulesを使う(和訳) - Qiita
    zetamatta
    zetamatta 2020/12/19
  • ref付引数を持つメソッドをInvokeで呼出し結果をもらうには - Qiita

    static class Klass1 { static public void Method1(string in_str, ref string out_str) { out_str = "<" + in_str + ">"; } } class MyClass { static public void Run() { string out_str = null; Klass1.Method1("test", ref out_str); Console.WriteLine(out_str); // 出力 : <test> } }

    ref付引数を持つメソッドをInvokeで呼出し結果をもらうには - Qiita
  • (Tera Term をダミー接続するための) Windows 名前付きパイプ サーバー - Qiita

    動機 Tera Term のマクロ言語 (Tera Term Language) の通信コマンドのほとんどはなにがしかのホストに接続していないと実行できません。職場の Windows 10 デスクトップ環境には Tera Term が入っていて TTL の通信コマンドの動作を実行させて確かめたいのですが、開発系でないので気安く接続できるようなホストはありません。 Tera Term は名前付きパイプに接続でき、 Windows に .NET が入っていればローカルに名前付きパイプ サーバーを立てられるそうなので、試みてみました。 参考文献 Powershellで名前付きパイプを扱う - じゅんじゅんのきまぐれ NamedPipeServerStream クラス (System.IO.Pipes) | Microsoft Docs エコーバックせずに文字列を入力する(Console.Read

    (Tera Term をダミー接続するための) Windows 名前付きパイプ サーバー - Qiita
    zetamatta
    zetamatta 2020/08/12
    TeraTermって、Windowsのパイプラインへ接続することも出来るのか!
  • 【Go言語】 time.Time - t.Sub(u)はu→t の実際の経過時間を返さない(かもしれない) - Qiita

    問題 time.TimeのSubメソッドを利用すると、2つのtime.Time間のDurationを取得することが出来ます。 例えば↓なカンジで処理時間を計測したりします。 start := time.Now() (何か処理) elapsed := time.Now().Sub(start) fmt.Println(elapsed) このコード自体間違いではないですが、今回実行していて明らかに実際の経過時間を返していない事象に遭遇し、軽くハマりました。 9:02にスタートし9:10に終了しているのに、elapsedに 3m などと出力されたり。 startとnowも出力↓ start:2020-07-08 09:02:00.243095 +0900 JST m=+0.003321332 now:2020-07-08 09:10:25.388989 +0900 JST m=+222.3889

    【Go言語】 time.Time - t.Sub(u)はu→t の実際の経過時間を返さない(かもしれない) - Qiita
    zetamatta
    zetamatta 2020/07/10
    マジカ!>「いくつかのシステムではコンピューターがスリープした場合monoritic clockが停止して、t.Sub(u)が正しい経過時間を返さないことがある」
  • バッチファイルでオセロ作ってみた - Qiita

    zetamatta
    zetamatta 2020/03/25
    enabledelayedexpansion を使って、バッチで連想配列っぽいことをするだと…ヘンタイだー >!field[%%i][%%j]!
  • gitで空白の違いだけの行を除いてaddする - Qiita

    これは感動した。 ファイル保存時にエディタの設定でtrailing whitespaceを削除している場合などで、 実際にコミットしたい変更と、ただの空白の違いだけの行が大量に混ざっていて 分けようとする際に、git add -pで何度もy/nを繰り返すのが大変なときに使える。 下準備としてまずgit diff -wの結果がコミットしたい内容だけになっているか確認する。 次に

    gitで空白の違いだけの行を除いてaddする - Qiita
  • dataGridViewのチェックボックス型セルの値は、次に他のセルを選択した時に確定される。 - Qiita

    dataGridViewのチェックボックス型セルをクリックして、trueになった瞬間(チェックマークが表示された瞬間)に他の動作を起こしたかったが、どうしても実装できなかった。 ネットで教えてもらったのは… 「チェックマークが表示されていも内部の値は変らない、次のセルを選択した際にそれが確定される。チェックマークが表示/非表示された瞬間に値(true/false)を確定させるには、DataGridView.CommitEdit を呼ぶ必要がある」ということだった。 あのチェックマークは見えてるだけなんや~ そんなん判らんでぇ…(TT) サンプルは以下の通り。 private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e) { // 0番目がチェックボックス型の列として、これだけを処理対象

    dataGridViewのチェックボックス型セルの値は、次に他のセルを選択した時に確定される。 - Qiita
    zetamatta
    zetamatta 2020/03/11
    dataGridView1_CurrentCellDirtyStateChanged と DataGridView.CommitEdit なんてものがあったのか!
  • 筋肉マージは辞めよう - Qiita

    追記2 2019/12/04 21:00 こんなよくわからない記事をご覧いただきありがとうございます。 この事件を起こしたのは1年前で、Gitを使いはじめて1ヶ月のときに下記の事件を起こしてしまっていてとても混乱していたのを当時覚えています。 内容については、rmをしたかもしれないという記事に結果的になったかもしれませんが、私の記憶ではファイルを消した記憶はありません。 ただ、当時作業していたディレクトリもないのでコマンドを確認する手段がないため一番濃厚なrmをしたというのを今回の結論にしました。 曖昧さは申し訳ありません。 また、意見、感想、批評には全て目を通させております。伝わりにくい内容やわかった事実は適宜編集してできるだけ皆さんに伝わるよう善処いたしますのでどうぞよろしくお願いします。 追記2ここまで 追記 2019/12/04 13:00 1.番環境でやらかしちゃった人 Adv

    筋肉マージは辞めよう - Qiita
    zetamatta
    zetamatta 2019/12/04
    操作を全部書いておらず原因がまったく読み取れない。本当は「git push -f 」をしたのが悪かったのではないのか?
  • 本番環境でやらかしちゃった人 Advent Calendar 2019 - Qiita

    番環境でやらかしちゃった人のアドベントカレンダーです。 例) DB吹き飛ばした 番サーバをデストロイした ネットワーク設定をミスって番サーバにアクセス出来なくなり、サーバが世界から孤立した などなど... 以下の2点については必須項目なので、記述お願いします。 惨劇はなぜおこってしまったのか 二度と惨劇を起こさないためにどうしたのか もう二度とあの惨劇を繰り返さないために、みなで知見を共有しましょう。

    本番環境でやらかしちゃった人 Advent Calendar 2019 - Qiita
    zetamatta
    zetamatta 2019/11/18
    企画者でてこい。褒美をつかわす
  • GolangのdiffMatchPatchライブラリで行単位diffをする - Qiita

    diff-match-patch便利ですよね? これで行単位のdiffを出そうと思ったんですが、APIのリストとにらめっこしてもわからなかったのですが、検索したら大Google謹製の方のWikiにあったので、実装のメモです。 import "github.com/sergi/go-diff/diffmatchpatch" func lineDiff(src1, src2 string) []diffmatchpatch.Diff { dmp := diffmatchpatch.New() a, b, c := dmp.DiffLinesToChars(src1, src2) diffs := dmp.DiffMain(a, b, false) result := dmp.DiffCharsToLines(diffs, c) fmt.Println(result) return resu

    GolangのdiffMatchPatchライブラリで行単位diffをする - Qiita
    zetamatta
    zetamatta 2019/11/10
    わかりやすいですな
  • Git for Windows のコミットメッセージの編集にメモ帳を使う方法とメリット - Qiita

    私はデフォルトの vi 使っているので関係ないのですが、布教のためには多くの選択肢があったほうがいいものです。 GUI のエディタを使いたいという場合でも「エディタの終了を検知」してコミットを行う Git の仕様を好まない人もいるでしょう。たとえば、お気に入りのエディタは起動したまま終了しないで使う、といった場合です。そのようなケースでは、普段使いのお気に入りエディタとコミットメッセージを書くエディタは別のものにしたいはず。「メモ帳なら普段は使わないし、起動・終了も軽いし」といった理由でメモ帳を選択するニーズは意外とあるかもしれません。 問題 ただ「エディタをメモ帳に設定」しただけの状態では入力した日語が化けます。 他の選択肢 vi 使えるようになりましょう。 UTF-8 に対応しやすいエディタを使いましょう。 https://qiita.com/kumazo/items/2169e1e

    Git for Windows のコミットメッセージの編集にメモ帳を使う方法とメリット - Qiita
    zetamatta
    zetamatta 2019/10/29
    なるほど。あらかじめUTF8保存されたテンプレートを使うようにするのか
  • mysqldumpリカバリの進捗を表示する - Qiita

    リカバリはいつ終わるの? バックアップ取得の一方式としてメジャーなmysqldump。 巨大なデータを取り扱う場合はダンプをするにもリカバリするにも時間がかかります。 数十分の事もあれば数日かかることも。 あとどれくらい時間がかかるのか分からないので、作業進捗を把握できずに困ってしまいます。 特にリカバリはトラブル時の対応に使うことも多いので、把握できるかどうかで復旧までの見通しが全然違います。 リカバリの進捗を表示する方法 pvコマンドを使います。 パイプでpvを挟み込みます。 # インストール yum -y install pv # ダンプの取り込み pv your_data.dump | mysql -h dbserver -u user db_name 56.6GB 1:07:32 [14.3MB/s] [======================================

    mysqldumpリカバリの進捗を表示する - Qiita
    zetamatta
    zetamatta 2019/10/11
    >pvコマンドはPipe Viewerの略で、その名の通りLinuxのパイプで通り過ぎていくデータの容量をモニタしてプログレスバーに表示してくれるというものです
  • C#で画像からWindowsアイコン(.ico)に変換するソフトつくった - 透過対応 - Qiita

    内容 画像ファイル(.pngとか.bmpとか)を受け取って、アイコン(32bit色)に変換する。 透過色を指定できる。 ソースコード ソースコード using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.IO; using System.Reflection; using System.Runtime.InteropServices; using System.T

    C#で画像からWindowsアイコン(.ico)に変換するソフトつくった - 透過対応 - Qiita
    zetamatta
    zetamatta 2019/09/09
  • .NETを使った別プロセスのOfficeの自動化が面倒なはずがない―そう考えていた時期が俺にもありました。 - Qiita

    $app = New-Object -ComObject Excel.Application $books = $app.Workbooks $book = $books.Open("test.xlsx") Write-Host $book.Sheets["Sheet1"].Cells[1,1].Text $book.Close() $app.Quit(); Excelを立ち上げて、シートのセルを表示し、Excelを終了するコードです。 来であれば、なんの問題もありません。 しかしながら、起動したExcelのプロセスは終了せずタスクマネージャーに残り続けます。 今回はExcelで説明しましたが、これはWordでもOutlookでも同様です。また、PowerShellでなくC#で同様の実装をしても、この問題は発生します。 何が問題なのか? Office オートメーションで割り当てたオブジェ

    .NETを使った別プロセスのOfficeの自動化が面倒なはずがない―そう考えていた時期が俺にもありました。 - Qiita
    zetamatta
    zetamatta 2019/08/28
    ReleaseComObject めんどいよね
  • ngrokよりserveoがすごい。0秒で localhostを固定URLで公開 - Qiita

    注意 serveoがサービス停止中です。 みんな大好きcloud functionには欠点があります。 それは、実際にコードをデプロイしないと、httpsで公開できないこと。 そのため、slackのコマンドを作ったり、ラズベリーパイとかを開発するのに不便だったりします。 以前私はngrokというcliアプリを使っていました。 とても使いやすく、ユーザー登録+ngrokのインストール+セットアップだけで使い始めることができます。 お金を払えば固定URLもゲットできます。 しかし、今回もっと良いものを見つけたので紹介します。 serveoです。 なんとこのserveoインストールもセットアップも不要です。 ターミナルで、以下のように ssh -R 80:localhost:3000 serveo.net と打つだけで自分のPClocalhost:3000を、固定URLでhttpsとして公開し

    ngrokよりserveoがすごい。0秒で localhostを固定URLで公開 - Qiita
    zetamatta
    zetamatta 2019/07/31
  • 【警鐘】[改元][Windows][.NET] 「令和」対応パッチで画面が横に伸びる、文字が見切れる ― Windows Update 手動更新はちょっと待った方がいい - Qiita

    ※2019年5月15日(日時間)に自動配信が開始された修正版パッチで、フォント起因の横伸び、見切れ問題は解消されました。(2019/05/15 続報 をご参照ください) 2019年4月26日、「令和」対応パッチが Windows Update で配信開始されました。 日の元号の変更について - KB4469068 現状は手動更新(「更新プログラムのチェック」)または Microsoft Update カタログからのインストールのみで、自動更新への反映は来月半ば頃と見られています。 また、Windows 10 Version 1809 / Server 2019 向けのパッチは "Coming soon" となっており、配信予定が明らかではありません。 ⇒ 5月2日、上記ページを確認すると、同日付で更新されており、Windows 10 / Server 2019 向けもリリースされていま

    【警鐘】[改元][Windows][.NET] 「令和」対応パッチで画面が横に伸びる、文字が見切れる ― Windows Update 手動更新はちょっと待った方がいい - Qiita
    zetamatta
    zetamatta 2019/05/06
    AutoScaleModeがFontの場合のフォント幅がパッチ適用前後で変わってしまったらしい。これは直す箇所いっぱいじゃないですか。たまらんな…