2026-03-31
2026年3月31日、docomo i-mode(アイモード)の終了と共にjigブラウザがサービス終了します。
サービス開始は2004年10月1日。ちょうど21年半前です。

1999年2月22日、インターネットができるケータイとしてスタートした、i-mode
通信料金(パケ代)は、128byteを1パケットと数え、0.3円/パケットという単価でした。
2001年1月、世界初のアプリが動くケータイ、docomo 503iシリーズが発売。
jig.jp、最初のサービスは、ケータイサイトを見るパケット代を節約するアプリ「jigアプリ」でした。

2004年6月に開始した通信料金の定額制「パケ・ホーダイ」があれば、ケータイサイトに縛られる必要がなくなります。 そこで開発したのが、普通のWebサイト(PCサイト)を見られるアプリ「jigブラウザ」、2004年10月1日に発表と同時にサービスイン! 思わぬ大きな反響にサーバーが追いつかず、ウェイティングリストに登録いただき、お待ちいただく形になってしまいました。

リリース後、あったらうれしい機能の追加、利用者からのさまざま要望、どこどこのサイトが見られない・おかしいなどの苦情を元にした、バージョンアップを重ね、アプリ内アプリ「jiglet」を搭載して、さまざまな機能を追加実装できる形に進化。当時の通信3キャリア(docomo, au, J-Phone)にまとめて対応できる体制と、その開発環境のオープン化も実施。JavaScriptや複雑なCSS対応のためのWebKit対応、動画対応など、思えばいろいろありました。

jigブラウザ最後の日。ひさびさに触ったガラケーで動く、jigブラウザの動画がこちらです。


お使いいただいた、すべての方に感謝です。
ありがとうございました!

jig.jp、2026年の新サービス、ARグラス「SABERA

利用者に最も近いソフトウェアを提供し、より豊かな世界を実現する - jig.jp

links
- 2025.11.07 【重要】サービス終了のお知らせ - お知らせ一覧 - jigブラウザ
- jigブラウザ - Wikipedia

2026-03-29
フルマラソン最後の県としてスタートし、今年で3回目「ふくい桜マラソン2026」の気になる交通規制時間と場所をマップアプリにしました。


「さくらマラソンマップ」

時間毎に規制区間が変わっていきます。
国道8号線を横断しますが、8号線は規制対象外。丸岡ICへ続く高架下を走り抜けていく様子。


「code4fukui/sakura-marathon」

ソースはこちら。

交通規制や迂回情報をオープンデータを標準化して、ナビが事前に取り込めておけば、迂回ルートを含めて案内できて便利です。

スケジュールと連動できていれば、家を出る時間へのアドバイスもできます。

AI時代、ますます重要なオープンデータ!

links
- コース紹介 | 大会情報 | ふくい桜マラソン2026
- 交通規制 | ふくい桜マラソン2026
- 交通規制 地区別う回路図・時間別規制図 | ふくい桜マラソン2026

2026-03-28
ARグラスシミュレーターで、姿勢まっすぐを支援するメガネを開発しました。


「PostureCorrrectGlass for WebXR」
src on GitHub
MetaQuestなどでご覧ください。加速度センサーでロール(左右の傾き)を長針、ピッチ(前後の傾き)を短針で表現し、まっすぐとの比較で自分の姿勢を把握できます。

ソースコードは下記のようにシンプル!
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"> <title>PostureCorrrectGlass</title> <link rel="stylesheet" href="https://code4fukui.github.io/arglass-sim/style.css" /> </head><body> <div id="app"></div> <div id="scanlinesEl"></div> <div id="vignette"></div> <section id="launcher" class="hidden"> <h1>PostureCorrrectGlass</h1> <p>Use WebXR AR when available, or start the fallback simulator.</p> <div class="buttons"> <button id="startSimButton">Start Simulator</button> <div id="xrButtonHost"></div> </div> </section> <div id="touchHint">Drag to look around.</div> <script type="module"> import { ARGlassSim } from 'https://code4fukui.github.io/arglass-sim/ARGlassSim.js'; import * as THREE from 'https://unpkg.com/three@0.164.1/build/three.module.js'; import { ARButton } from 'https://unpkg.com/three@0.164.1/examples/jsm/webxr/ARButton.js'; class ARGlassSimSimple extends ARGlassSim { drawHudFrame({ ctx, palette, lineWidth, relativeHeadingDeg, displayHeadingDeg, pitch, pitchDeg, roll, rollDeg, hh, mm, ss }) { const w = this.hudConfig.width; const h = this.hudConfig.height; ctx.clearRect(0, 0, w, h); const color = this.hudColorString(palette.mesh, 1); ctx.strokeStyle = color; ctx.fillStyle = color; //ctx.fillRect(0, 0, w, h); const cx = w / 2; const cy = h / 2; const r = Math.min(w, h) * .5 * 0.9; const drawLine = (x1, y1, x2, y2) => { ctx.beginPath(); ctx.moveTo(x1, y1); ctx.lineTo(x2, y2); ctx.stroke(); }; const drawCross = (cx, cy, th, r) => { const dx = Math.cos(th) * r; const dy = Math.sin(th) * r; const x1 = cx - dx; const y1 = cy - dy; const x2 = cx + dx; const y2 = cy + dy; drawLine(x1, y1, x2, y2); }; drawCross(cx, cy, roll + Math.PI / 2, r / 5 * 4); drawCross(cx, cy, pitch + Math.PI / 2, r / 5 * 3); drawLine(cx, cy - r, cx, cy + r); } }; const sim = new ARGlassSimSimple({ THREE, ARButton, mount: app, launcher, touchHint, xrButtonHost, scanlinesEl, controls: null, valueLabelRoot: document, }); sim.start(); </script> </body> </html> RUN on ES-Jam

自分だけのARメガネアプリを作ってみましょう!

クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS