「時間 v1」

2026/01/03 23:50

「時間 v1」

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:


Summary

Zeit は軽量なコマンドライントラッカー(v0)から、モダンで機能豊富なアプリケーション(Zeit v1)へ進化しました。リライトによりコードベース全体がクリーンアーキテクチャに置き換えられました:BuntDB は埋め込み型 Go のキー・バリュー ストアである BadgerDB v4 に置き換えられ、UI も Charm の lipgloss v2 を採用しています。新機能としては、多くのコマンドに JSON 出力が追加され、自然な引数構文(従来のフラグもサポート)や、データベース・ビジネスロジック・CLI・出力層を分離した再編成されたプロジェクト構造があります。

これらの変更により、v0 のデータベースとの後方互換性は失われます。ユーザーは v0 から

zeit export --format zeit
を実行してデータをエクスポートし、v1 に
zeit import -f v0
でインポートする必要があります。また、リライトではもはや使用されていない寄稿者が追加した「ワンオフ」機能も削除されています。Zeit v1 は SEGV ライセンス(部分的に改変された HL3)でライセンスされており、GPL v3 ではなくソース可用性を提供します。著者のウェブサイト
zeit.observer
には現在、将来機能の計画が掲載されたランディングページのみがホストされています。

ユーザーは新バージョンを試し、不足している機能についてフィードバックを提供し、一般的な時間追跡プラットフォームを共有するよう奨励されます。既存ユーザーは移行中にワークフローの混乱を経験する可能性がありますが、クリーンなアーキテクチャは開発者を惹きつけ、クロスプラットフォームサポートを向上させる可能性があります

本文

Zeit – 5 年後

リリースからほぼ五年が経過し、Zeit は時間の試練を乗り越えました(ハハ)。
完全に書き直した Zeit v1 によって、その伝統を継承しつつ、より高度なツールへ進化させたいと考えています。


起源

  • Zeit はほぼ五年前にペットプロジェクトとして始まりました。
    軽量でユーザーに優しい時間追跡ツールを必要としており、自作の会計・請求ソフトへのデータエクスポート機能も併せて欲しかったです。
  • 初期段階: 基本的な機能だけで、長期ビジョンはありませんでしたが、クラウドに縛られないミニマルなトラッカーを求めるユーザーにすぐに支持されました。

Zeit v0 の歴史

新機能の要望が出た際は、自分で追加するかプルリクエストを受け入れます。
指針は「小さな改善でも他人一人に役立つなら追加価値がある」というものです。

時間とともに Zeit v0 は、元々のクリーンでミニマルな CLI ツールという目的を超えて拡大しました:

  • 直感的でない機能が増え、散らかりました。
  • 当時は合理的だった設計判断も、今では非最適に感じられます。
  • 後方互換性よりも完全な書き直しのほうが妥当だと判断しました。

Zeit v1 – 完全リライト

コア変更点

項目v0v1
データベースBuntDBBadgerDB v4(純Goのキー‑バリュー)
設定別ファイル + Viperデータベースに埋め込み
CLI レンダリング独自実装Charm の lipgloss v2 を用いた端末テーマ化
出力形式プレーンテキストのみJSON とプレーンテキスト

SQLite は使わない理由

SQLite では CGO が必要になり、クロスコンパイルが複雑になります。データはキー‑バリューに自然に収まるため、クライアント側で関係データベースを用意する必要はありません。


コマンドライン体験

自然な引数

zeit start block \
  with note "Research: Coca-Cola Colombian death squads" \
  on personal/knowledge \
  4 hours ago \
  ended 10 minutes ago

フラグを使った同じコマンド:

zeit start \
  --note "Research: Coca‑Cola Colombian death squads" \
  --project "personal" \
  --task "knowledge" \
  --start "4 hours ago" \
  --end "10 minutes ago"

フィルタリング

zeit blocks \
  on personal/knowledge \
  from last week \
  until two hours ago

またはフラグで:

zeit blocks \
  --project "personal" \
  --task "knowledge" \
  --start "last week" \
  --end "two hours ago"

自然引数スタイルは日常利用に直感的ですが、プログラムから呼び出す際にはフラグを併用できます。


ライセンス変更

  • 以前: GNU GPL v3(OSI 承認済み)
  • 現在: 部分的に改変した HL3 を SEGV ライセンス と呼びます。
    • ソースは公開されているが、従来のオープンソースライセンスではありません。
    • 倫理的に問題と判断される団体による利用を防ぐことを目的としています。

はじめに

  1. GitHub から v1.0.0 をダウンロードするか、

    go install
    でインストールします。

  2. 新しいウェブサイト https://zeit.observer にアクセス(現状はランディングページのみですが、機能追加予定です)。

  3. v0 を使っている場合:

    zeit export --format zeit > db.json
    # v1 へアップグレード後にインポート
    zeit import -f v0 db.json
    

フィードバック

Zeit v1 を試したら、ぜひ教えてください:

  • 欠けていると思われる上位3つの機能
  • 時間追跡に利用しているプラットフォーム

楽しいトラッキングを!

同じ日のほかのニュース

一覧に戻る →

2026/01/06 6:05

ベネズエラで停電が起きた際に、BGP に異常が発生しました。

## Japanese Translation: --- ## Summary ロウオービットセキュリティのニュースレターは、ベネズエラが1月2日に停電した際に発生した疑わしいBGP異常を報告しています(Cloudflare Radar のタイムスタンプ 15:40 UTC)。Cloudflare Radar は CANTV (AS 8048) が自身の ASN を **10 回** 前置していることと、BGP 公開が急増し、その後広告される IP 空間が減少した異常なスパイクを示しています。200.74.224.0/20 ブロックから 8 つのプレフィックスが `…52320 8048 …` の経路で Sparkle(イタリア)と GlobeNet(コロンビア)を通じてリークされました。公開 BGP フィード(ris.ripe.net、bgpdump)は異常な AS‑path 構造を確認しており、Sparkle は RPKI フィルタリングが欠如しているため isbgpsafeyet.com で「unsafe」とリストされており、通常のトラフィックにとってルートが魅力的ではありません。 WHOIS データはリークされたプレフィックスがカラカスの Dayco Telecom に属していることを示しています。逆 DNS ルックアップは、これらの範囲が銀行、ISP、およびメールサーバーなどの重要インフラストラクチャをホストしていることを明らかにします。BGP アクティビティのタイミングは政治的不安と一致し(1月3日に爆発報告およびマドゥロが USS Iwo Jima に登場)、国家レベルでの悪用または意図的なルーティング操作を示唆しています。 ニュースレターは、通信事業者、ホスティングプロバイダー、およびセキュリティ企業に対し、ユーザーと重要インフラストラクチャをトラフィックの傍受や劣化から保護するために BGP 検証(例:RPKI)を強化するよう促しています。

2026/01/06 7:10

なぜAIは2025年に就業市場に参加しなかったのでしょう?

## Japanese Translation: この記事は、2025年までにAIエージェント革命が起こるという高い期待が過大であると主張しています。サム・オルトマン、ケビン・ワイル、マーク・ベニオフはすべて急速な採用と「デジタル労働」のブームを予測しましたが、実際のテスト(例:ChatGPTエージェントがドロップダウンメニューをナビゲートするのに14分かかったケース)では、大規模言語モデルは未だ鈍く不安定であることが示されています。ガリ・マーカスやアンドレイ・カルパチといったシリコンバレーの懐疑派もこれらの限界を認めており、カルパチはこの時期を「エージェントの十年」と呼びました。著者は、まだ信頼できるデジタル従業員を構築する方法がわからないことを指摘し、未来の仮想的な利益よりも現在の控えめな能力に焦点を移すべきだと訴えています。2026年には、実際の取り組みとして段階的な統合を推奨し、企業はまず小規模プロジェクトで試験運用するよう促し、政策立案者には仮説ではなく現在直面しているAIリスクに対処するよう呼びかけています。 ## Text to translate (incorporating missing details and avoiding inference):** The article argues that high‑profile predictions of an AI‑agent revolution by 2025 have been overblown. Sam Altman, Kevin Weil, and Mark Benioff all forecasted rapid adoption and a “digital labor” boom, but real‑world tests—such as ChatGPT Agent spending fourteen minutes navigating a drop‑down menu—show that large language models remain clumsy and unreliable. Silicon Valley skeptics like Gary Marcus and Andrej Karpathy acknowledge these limitations; Karpathy even referred to the period as the “Decade of the Agent.” The author notes that we still do not know how to build reliable digital employees, and urges a shift in focus from speculative future gains to the current modest capabilities. In 2026, the piece calls for realistic engagement: incremental integration rather than wholesale automation, encouraging companies to pilot small‑scale projects first and prompting policymakers to address present AI risks instead of hypothetical ones.

2026/01/06 1:47

**Show HN:** *Tailsnitch – Tailscale 用のセキュリティ監査ツール*

## Japanese Translation: **Tailsnitch** は、52項目を7つのカテゴリ(アクセス、認証、ネットワーク、SSH、ログ、デバイス、DNS)に分類した検査で、誤設定や過度に許容的なアクセス制御、ベストプラクティス違反を監査する軽量CLIツールです。 ユーザーは `tailsnitch` のようなシンプルなコマンドで実行し、結果を severity(`--severity`)、カテゴリ(`--category`)、特定のチェックID(`--checks`)または tailnet(`--tailnet`)でフィルタリングでき、SOC 2 証拠として JSON または CSV へエクスポートできます。 ツールは `tailsnitch --fix` による対話型修復をサポートし、dry‑run、auto‑select、および古いデバイス、保留中の承認、auth keys、タグなどの問題を自動的に修正するオプションがあります。 認証は OAuth(推奨)または API キーで行われます;監査モードでは `policy_file:read` と `devices:core:read` のスコープが必要で、修復モードではさらに `auth_keys` と `devices:core` が必要です。 インストールは簡単です:GitHub Releases から事前ビルドされたバイナリをダウンロードするか、`go install github.com/Adversis/tailsnitch@latest` を実行するか、ソースコード(`git clone https://github.com/Adversis/tailsnitch.git`)をビルドします。 既知のリスクは `.tailsnitch-ignore` ファイルで抑制できます(例:`ACL‑008` や `DEV‑006` のようなエントリー)。このファイルは現在とホームディレクトリに検索され、`--no-ignore` で無効化可能です。 Tailnet‑Lock チェック(`DEV‑010`、`DEV‑012`)にはローカルの Tailscale CLI が必要で、遠隔監査時にはマシンの状態を反映し、`--tailscale-path` を使用して上書きできます。 JSON エクスポートはポストプロセッシング(例:`jq` で失敗や severity の概要を一覧表示)用に設計されており、`--soc2 json` または `--soc2 csv` により SOC 2 証拠の生成もサポートします。 最後に、Tailsnitch は CI/CD パイプライン(GitHub Actions など)へ統合でき、重大または高 severity の発見があった場合にビルドを自動的に失敗させることで、チームが継続的にセキュリティポリシーを強制するのに役立ちます。

「時間 v1」 | そっか~ニュース