æè¿å£°æ¥è¨ã£ã¦ãã¤ããã£ã¦ãã¾ã
æè¿ã声æ¥è¨ã£ã¦ãã¤ãã¯ããã¦ã¾ãï¼
ãã¨ãã¨ã¯ id:ninjinkun ã¨è©±ãã¦ãã¨ãã«ãæè¿ã声æ¥è¨ãã£ã¦ããã§ããã¼ãã£ã¦ãã£ã¦ãã¦ããªããããã°ããæ軽ã«åºæ¥ã¦æ¥ã ã®ã¡ãã£ã¨ãããã¨ã¨ã話ãã¦ããã§ãããã£ã¦è¨ãããã®ã§ã¯ããã¦ã¿ããããã§ãã
ã§ããã¨ãããããã¼ã¸ãã¼ã·ã§ã³ãåºãããã«ãªããããã¾ã§æ稿æºã¾ã£ããããã°ã«ãæ¸ãããã£ã¦æã£ã¦ãã®ã§ãããä»æ¥ã¨ãã¨ããã¼ã¸ãã¼ã·ã§ã³ãåºç¾ããã®ã§å®£ä¼ãã¦ã¿ã¾ãã
åã¯ã©ããªã¹ã¿ã¤ã«ã§ãã£ã¦ããã£ã¦ããã¨
- 使ããµã¼ãã¹ã¯ã«ãããããã«æãã¦ããã£ãã¾ã¾ LISTEN ã使ã
- ãã©ã¦ã¶ãããã®ã¾ã¾æ®ã£ã¦åºãï¼ç·¨éã¨ãããªãï¼
- 話ãæéã¯3åç®å®ï¼å¤§å¹ ã«è¶ ãããã¨ãï¼
ã£ã¦ãã£ã¦ããã§ãããã§ãããã¯ãªãã¨ãªããããã£ã¦ã¯ããããã ãã©ãããè¯ããªãã¨æã£ã¦ãã¦ã¢ã¦ããããã®ããã®æ·å± ãåã®ä¸ã§ã ãã¶ä¸ãã£ããã§ãããã ãªããã¡ãã£ã¨ããã°ã«æ¸ããããªã¨ãæã£ã¦ã¦ãããã°ã«æ¸ããã¨ããã¨ãããªãã«æéãããã®ã§èºèºãã¡ãããã§ãããã ãã¨ãã°ãããªãããæ¸ãå§ãã¦ãããã10åãããçµã£ã¦ãããããªéãªæç« ã§ã10åãããçµã£ã¦ãã
ã§ã3åã®å£°æ¥è¨ã ã¨ã¿ã¤ãã«ã¨ãæ¦è¦ã¨ãæ¸ãã¦ã5åã§çµããããªã¢ã¼ãã§ä»äºãã¦ãããç®ã®åã«ãã¤ã¯ããã®ã§ãã³ãã« LISTENã®ãã¼ã¸éãã¦ããã«é²é³åãã¦ã¿ã¤ãã«ã¨æ¦è¦æ¸ãã¦çµããã æåã¯ããããã£ã¹ãã¨ã声æ¥è¨çãªã®ã¯ãã¼ãã«é«ãã¨æã£ã¦ããã ãã©éã ã£ããã§ãããããµã¯ãã¨å ¬éã§ãããï¼ããã¯LISTENã£ã¦ãããµã¼ãã¹ãè¯ãã¨ããã®ãããã¨æãã¾ãï¼
5åã§çµããã£ã¦ãªãã¨ãä»äºä¸æ¦çµãããã¦æ©å¾¡é£¯ä½ãåã«ã¨ãã«ãµã¯ãã¨å ¬éåºæ¥ããã§ããããããããªããã¿ã¤ãã«ã«ãæ¥è¨ãã£ã¦ä»ããã®ã§éã«æ¥è¨çãªãã¨ãè¨ãã°ããã ãã£ã¦ããããããªãã¨ããã£ã¦ã¢ã¦ããããããçèãåãæ»ããã¨ãã£ã¦ãã¾ãããããªã¢ã¦ããããçã®è©±ã¯ãã¡ã
ãã£ãããã¼ã¸ãã¼ã·ã§ã³ã§ãã¾ã§ãã£ã¦ã¿ãã®ã§ãã°ããç¶ãããã¨æãã¾ãã楽ã ããï¼ï¼ï¼
çã»WEB+DB PRESSç·éç·¨çãªãã¤ã«ã¨ãã»ã¤ãå¯ç¨¿ããã¦ããã£ãï¼
ã¿ããªå¤§å¥½ããWEB+DB PRESSããéæåèªã¨ãã¦ã¯ä¼åããã¨ãããã¨ã§ãçã®ç·éç·¨çãªå ¨é¨å ¥ãç·éç·¨ãåºã¾ããã
DVDã¨ãã¦ã³ãã¼ãã³ã¼ãä»ãï¼ï¼ï¼ å ¨è¨äºPDF+å ¨ææ¤ç´¢ã£ã¦ããæå³ãããããªãã»ã©è±ªè¯ãªã®ã«3000åã£ã¦ããå®è³ªç¡æãªæããªã®ã§ã¿ããªè²·ãã¨è¯ãã¨æãã¾ãã
ã§ãåãããã«å¯ç¨¿ããã¦ãããã¾ãããã§ããã®ã¨ãã®ä¾é ¼ã¡ã¼ã«ã«ãã¨ãã»ã¤ãå·çãã¦ãããã£ã¦æ¸ãã¦ãã£ã¦è奮ãã¦ãã¾ãã¾ããã
Â
ã ã£ã¦ãã¨ãã»ã¤ã§ãããã¨ãã»ã¤ã好ããªãã§ãããã¨ãã»ã¤ã
ã§ãè奮ãã¦ã¨ãã»ã¤ã«ã¤ãã¦ã®æããå°å ¥ã«æ¸ãå§ãããå ¨ç¶ãã¼ã¸ã«åã¾ããªããªã£ã¦ãã¾ã£ã¦çµå±åãã¾ããã
ä»èªãã¨ããããå®å ¨ã«èªå·±æºã ããæ¶ãã¦ããã¦ããã£ããªãã¨æããã§ãããã£ãããªã®ã§ããã«è¼ãã¦ä¾é¤ãããã¨æãã¾ãã
ã¨ãã»ã¤ãæ¸ãã¨ãããã¨ã®æå³
ãã®å稿ã¯ãWebéçºè
ã¨ãã¦çããããªãã¸ã¨ããé¡æã§ã¨ãã»ã¤ãæ¸ãã¦ãã ãããã¨ããä¾é ¼ããæ¸ããã¨ã«ãªã£ããã¨ãã»ã¤ã§ãããåã®ä¸ã§ã¨ãã»ã¤ã¨ããã®ã¯å°èª¬å®¶ãèªåã®è¨èã§æ¥å¸¸ã«æãããã¨ãã¡ãã£ã¨ãããã¨ãæ¸ããã®ã®å°è±¡ãå¼·ããæ®æ®µç©èªãèªãã§ããã¨ãã«ã¯è¦ããªãã£ãä½è
ã®å人çãªå´é¢ãè¦ãã¦ã¡ãã£ã¨ãããã¡ã³å¿ççã«ã楽ããèªã¿ç©ã ã£ããç¹ã«è¥ãé ã¯æ¤åèª ã®ã¨ãã»ã¤ã大好ãã§æ²¢å±±èªãã§ããè¨æ¶ãããããã®åºä¼ããå°ãã ãèªãã¨ä¸å¦çã®ããã«é¡ããå½ææ¤åèª ã¯ãå²³ç©èªããæç§æ¸ã«ã®ã£ã¦ãã¦ãå
ã人ã ã¨æã£ã¦ãããã¾ã ã¨ãã»ã¤ã¨ãããã¾ãèªãã ãã¨ããªãã£ãããæ¥ãæ¬å±ããã§ããã¤ãã¶ãã®æ代ãªã®ã ãã¨ããããã¼ãã¿ã¤ãã«ã®æ¬ãæã«ã¨ã£ããä½è
ããã®ãå
ã人ã ã¨æã£ã¦ããæ¤åèª ãªã®ã§èå³ãæã£ããããããæ¤åèª ã®ã¨ãã»ã¤ã«ããã£ã¦ä»ã®äººã®ãèªãã ããããåã®ä¸ã§ã¯ã¨ãã»ã¤ã¨ããã°æ¤åèª ãªã®ã§ãããããã¦ã¨ãã»ã¤ã¨ããã®ã¯ããããèè
ãèªåã®è¨èã§æ¸ããã®ãªã®ã ã¨ããæ¦å¿µããéããããªãã£ããéããããªãã£ãã®ã§ä»ãå·çä¾é ¼æã«ãæ¬æã¯ååãã§ãã¾ã調ããæ³å®ãã¦ãã¾ããããã§ãã調ãã®ã»ãããããã°ãã®å½¢ã§ã大ä¸å¤«ã§ãããã¨è¨ãããã®ã«ã¬ã³ç¡è¦ãã¦å£èªä½ã§æ¸ãã¦ããã
人çã®ä¸ã§ã¾ããèªåããã¨ãã»ã¤ãæ¸ãã¦ããããªãã¦ä¾é ¼ãåãããã¨ã¯æã£ã¦ããªãã£ãã®ã§ãã£ããã®ãã£ã³ã¹ã ã楽ããã§åã®ä¸ã«ãããã¨ãã»ã¤ã£ã½ãæä½ãã§æ¸ããã¦ããããã¨æã£ã¦ããããããããã¦ãããã£ã¦åç½®ããã°ãã°ãæ¸ãã¦ãªããªãæ¬é¡ã«å
¥ããªãã®ãã¨ãã»ã¤ã£ã½ãã¨æã£ã¦ãã¾ãã®ã ã
ã¿ãªããè²·ãã¾ãããï¼ï¼
éæåèªã¨ãã¦ã¯ä¼åã£ã¦ãã¨ãªãã ãã©ããªãã売ä¸è¯ããã°ã¡ããã¡ããåºãããããªãããªãã¨ãåæã«æå¾ ãã¦ããã§ãããï¼ï¼ï¼ï¼ãªãã§ã¿ããªè²·ãã¾ãããï¼ï¼ï¼ï¼
ããã¦è¨äºãChatGPTã¨ãã«å¦ã°ãã¦è³ªåããã°æé«ãªä½é¨ãåºæ¥ãããï¼ï¼ï¼ï¼é©å½ï¼
Â
WEB+DB PRESSç·é編[Vol.1ï½136ï¼½ (WEB+DB PRESS plusã·ãªã¼ãº)
ãªã³ã©ã¤ã³ãã¼ãã£ã³ã°ãå§ã¾ã£ããèªåã§ç¹ç¯ãããªã³ã¨ã¢ã¼ããªã³ã©ã¤ãä½ã£ã
家ã§ä»äºããããã«ãªã£ãã¨ããããã£ã¨ãªã³ã©ã¤ã³ãã¼ãã£ã³ã°å§ã¾ã£ããèªåã§ç¹ç¯ããããªã³ãµã¤ã³ã¿ãããªã®ãã£ããè¯ããªãã¨æã£ã¦ãã ã¾ãã¼ãããæã£ã¦ãã ãã ã£ããã ãã©ãã¡ãã£ã¨ããæ°ãåºãã®ã§ã¬ãã¨çµãã§ã¿ãï¼ç¢ºå®ç³åã®æ¸é¡éãã¨ããã¦ãã¨ãããªãããã¼ï¼
éè¦ä»¶å®ç¾©
- 絶対ã«èªåã§ON/OFF
- åãåãã®ããPCã¨ã¯ç´æ¥æç·ã§ç¹ããªã
- ãã¼ãã£ã³ã°ã¯Zoomã ã£ããGoogle Meetã ã£ããããã®ã§ããç¨åº¦æ±ç¨çãªæ¹æ³
ãã¼ãã£ã³ã°ã®èªåå¤å¥
ãã¾ã«ãããã§åºã¦ããè¨äºã§ãã使ããã¦ããZoomã¢ããªã®ããã»ã¹ç£è¦ããã®ã¯Google Meetã«å¯¾å¿ã§ããªãã®ã§ç¡ããã«ã¬ã³ãã¼ç£è¦ãã¦ãã¼ãã£ã³ã°ã®æéã¨ãèãããã©ã精度ä½ããçªçºã®ä»æ§ç¸è«ã¨ãã«å¯¾å¿ã§ããªãã®ã§ç¡ãã
çµå±ä»äºã®ãã¼ãã£ã³ã°ã¯ãã¹ã¦ã«ã¡ã©ONã«ãã¦è¡ã£ã¦ããã®ã§ã«ã¡ã©ã®ç£è¦ããããã¨ã«ããããã¾ã«ã²ã¼ã ã§Discordã¤ãã£ã¦é³å£°ã ãã®ã¨ãããããã©ã奥ããçè¦ä»¶ã¨ãã¦ã¯ã«ã¡ã©ã«æ ãè¾¼ã¿ãããªãã¨ããã®ã大ãã®ã§ã«ã¡ã©ã®ç£è¦ããããã¨ã«ããã
ã§ãã«ã¡ã©ãã¤ãªãã£ã¦ãããã©ããã§ã¯ãªããå®éã«èµ·åãã¦ãããã©ããã®ç£è¦ã¯lsofã³ãã³ãã§è¡ããã
# lsof /dev/video0 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME pipewire 2019 yoshiori 52u CHR 81,0 0t0 2289 /dev/video0 wireplumb 2020 yoshiori 47u CHR 81,0 0t0 2289 /dev/video0
linuxã ã¨ãããªæããï¼pipewireã¨ãwireplumbã¯Waylandä¸ã§ãªã¼ãã£ãªããã¤ã¹æ±ããã¤ãªã®ã§ç¡è¦ãã¦å¤§ä¸å¤«ï¼ å¤åMacã§ãä¼¼ããããªããã ã¨æãã
ãã¨ã¯ãããã«ã¼ãã§ç£è¦ããã°ON/OFFãå¤å¥ã§ããã
ã©ã¤ãã®ãªã³ãªãããªã¢ã¼ãã§æä½
PCã§ä¼è°ã®ã¤ãã³ãã¯åããããã«ãªã£ãã®ã§ãã¨ã¯ããã°ã©ã ããããªã³ã©ã¤ããæä½ã§ããã°è¯ããæãªãIFTTTã¨ã使ããã¨ãèãããã ãã©ãä»ãIFTTTã®webhookã¯é«ç´ææãã©ã³ã«ãªã£ã¦ãã¾ã£ãã®ã§ç¡ããã¹ãã¼ãããã¤ã¹ãPCããæ±ãã®ã¯ãã¤ã¯é¢åããããã ããªãã¨ãæãã¤ã¤ããªããä»ã«ç¡ãããªãã¨æã£ã¦ããSwitchBotã¯APIãå ¬éãã¦ãï¼ãã¸ã§APIå ¬éãã¦ãä¼æ¥ã¯æ¿åºããè£å©åºã¦ã»ããï¼ï¼ãããã¨ãSwitchBot!!
ã§ãRubyã®gemããã£ãã®ã§ãã£ã¡ããã£ããã§ããã
class Light def client @client ||= Switchbot::Client.new(ENV["TOKEN"], ENV["SECRET"]) end def on client.device(ENV["DEVICE_ID"]).on end def off client.device(ENV["DEVICE_ID"]).off end end
ããã§éå ·ã¯æã£ãã®ã§ãã¨ã¯ä½ãã ãã
ææ
ON AIR ããªã³ã©ã¤ã
ç©çã¹ã¤ãããªã®ã§æ¬ä½ã®ã¹ã¤ããã¯ããã£ã±ãªãã«ãã¦ã¹ãã¼ããã©ã°ã§ON/OFFæä½ã§ããããã¨é»æ± ã対å¿ãã¦ãããã©æç·ã§ã使ãã¦æ¥ç¶å£ãUSB-Cãªã®ãå°å³ã«å¬ããã
ã¹ãã¼ããã©ã°
åå説æã«ã¯APIã«ã¤ãã¦å ¨ã触ãããã¦ããªãããªããªã®ãï¼ï¼ï¼ããã¢ãã¯ã ããï¼ï¼
ãOptionãèå USB-C ã±ã¼ãã«
USB-C ã®ã³ãã¯ã¿å´ãèåã®Låãªã®ã§æ¥ç¶æã«ç¶ºéºã«è¦ãããå代Apple Pencilã®çªãåºãããç¾ããã¨æã£ã人ã¯ãããªãã¨æãã
ããã°ã©ã
ã¨ãããã¨ã§ååãããã超楽にRubyで雑に書いたスクリプトをsystemdで管理したい! - 宇宙行きたいãã¯ãããåããããã§ããã
ã¾ã¨ã
SwitchBotãå®ã¯APIå ¬éãã¦ã¦ããã£ã¨è²ã ãªããã¯ãåºæ¥ãã®ã¯ãã£ã¨ãã£ã¨ç¥ããã¦ã»ããï¼ï¼ï¼ï¼æé«ä¾¿å©ï¼ãããã¨ãï¼ï¼ï¼
è¶ æ¥½ã«Rubyã§éã«æ¸ããã¹ã¯ãªãããsystemdã§ç®¡çãããï¼
ã¡ãã£ã¨ããéãªã¹ã¯ãªããæ¸ãã¦ããã常ã«èµ·åãã¦ããããã¨ããªãã§ããï¼åã¯ããã¾ãã
ãããããã©ããããå±ãªã®ã§ghq管çåã®ãã£ã¬ã¯ããªã§gemã«é ¼ã£ã¦éã«æ¸ããã¹ã¯ãªããããã®ã¾ã¾åãã¦ã»ãããã§ãã
systemd使ãã°åºæ¥ããã ãããªãã¨æãã¤ã¤ãè²ã é¢åããããã ãããªãã¨æã£ã¦æãåºãã¦ããªãã£ããã ãã©ãã£ã¦ã¿ããæåæãããã»ã©ç°¡åã ã£ãã®ã§å ±æã§ãã
éè¦ä»¶å®ç¾©
- rubyã¯rbenvã§ç®¡çãã¦ããã§ãããã®ã¾ã¾ä½¿ã£ã¦ã»ãã
- å®è¡ãã¡ã¤ã«ãgit&ghq管çåã®ãã£ã¬ã¯ããªã§ãã®ã¾ã¾ä½¿ããã
- ä»ã®å ´æã«ã¤ã³ã¹ãã¼ã«ã¨ãã³ã¼ã管çãã«ã
- bundle exec çãªã®ããã£ã¦ä¾åã©ã¤ãã©ãªããã¾ããã¨ãã£ã¦ã»ãã
ãããã¨
systemd
ãã¦ã¼ã¶ã¼ã¬ãã«ã§ä½¿ãã¨ã㯠~/.config/systemd/user/
ã«ãã¡ã¤ã«ãç½®ãã°è¯ãããã£ã¬ã¯ããªç¡ãã£ããä½ã
mkdir -p ~/.config/systemd/user/
ããã«systemd ã¦ããããã¡ã¤ã«ãä½ããä¾ãã°hogeã£ã¦ããããã¸ã§ã¯ããªãhoge.service
ã¨ããååã®ãã¡ã¤ã«ãä½ããä¸èº«ã¯ãããªæãã
[Unit] Description=hoge [Service] Type=simple Restart=always Environment="PATH=%h/.rbenv/shims:/usr/local/bin:/usr/bin:/usr/local/sbin:" ExecStart=%h/src/github.com/yoshiori/hoge/bin/run WorkingDirectory=%h/src/github.com/yoshiori/hoge [Install] WantedBy=default.target
- Environment
- ããã«
PATH
è¨å®ãããã¦rbenvãã«ããã¹ãéãã
- ããã«
- ExecStart
- å®è¡ããã³ãã³ã
- WorkingDirectory
- å®è¡ãããã£ã¬ã¯ããªããã®ã¾ã¾ã³ã¼ãæ¸ãã¦ããã£ã¬ã¯ããªã使ã£ã¦ã
%h
ã¯systemd
ãå®ç¾©ãããç½®ãæãæåã§ã¦ã¼ã¶ã¼ã®ãã¼ã ãã£ã¬ã¯ããªã«ãªã
ã§ãå®è¡ãããã¡ã¤ã«ã®ä¸ã§bundler/setup
å¼ãã§ãããã°è¯ãã
#!/usr/bin/env ruby # frozen_string_literal: true require "bundler/setup"
ãããã°
ã¨ããããå®è¡
systemctl --user start ãµã¼ãã¹å.service
åããªãã£ãããã°è¦ã
journalctl --user -eu ãµã¼ãã¹å.service
ä¿®æ£ããããªãã¼ã
systemctl --user daemon-reload
ãã¨ã¯æ£å¸¸ã«åãããã«ãªãã¾ã§å¾®èª¿æ´
ç»é²
ããã¾ã§ããããã¤ãã®systemdã¨ä½¿ãæ¹å¤ãããªã
ç»é²
systemctl --user enable ãµã¼ãã¹å.service
ç»é²ããã¦ãããã¨ã確èª
systemctl --user list-dependencies
ããã
ã¾ã¨ã
ç°¡åã ããsystemd
ãã¦ã¼ã¶ã¼ã¬ãã«ã§ä½¿ãã°ãããããããã°ãã°ã¤ã³æã«èµ·åãããã¼ã¢ã³ä½ããã
Javaã§UUID.compareToã®æåãæã£ã¦ãã®ã¨éã£ã
UUIDã¯v6,v7,v8ã¨ãã§æéãã¼ã¹ã®ã½ã¼ããåºæ¥ãããã«ãªã£ããã¹ããã¼
ãªã®ã§UUIDã®ä¸ä¸é¢ä¿ã大äºã«ãªã£ããã ãã©Javaã®UUID.compareToã¯ããã¾ã§èæ ®ããã¦ããªãããã ã£ãã
ãã¨ãã°2ã¤ã®UUIDãç¨æãã¦ã¿ãã
00000000-0000-7dda-8cc3-13f289aa2814
- 1970/01/01ã¨ãã§ã¤ãã£ãUUID
e677d1fe-e676-7224-be39-f88d1cd436d8
- 9999/12/31ã¨ãã§ã¤ãã£ãUUID
- ãã£ã¡ã®ã»ãã大ãããªã£ã¦ã»ãã
ã¾ããè¦ãç®éãæååã§æ¯è¼ããã°e677d1fe-e676-7224-be39-f88d1cd436d8
ã®ã»ãã大ããã
ã¡ãªã¿ã« postgres ã§æ¯è¼ããã¨ãã®ã¨ããã®æåã«ãªã
neko=> select ('00000000-0000-7dda-8cc3-13f289aa2814')::uuid < ('e677d1fe-e676-7224-be39-f88d1cd436d8')::uuid; ?column? ---------- t (1 row)
ã§ããJavaï¼21ï¼ã§UUIDãªãã¸ã§ã¯ãã¨ãã¦æ¯è¼ããã¨éã«ãªã
# jshell 2023ms î³ 2024å¹´02æ22æ¥ 15æ49å21ç§ | Welcome to JShell -- Version 21.0.2 | For an introduction type: /help intro jshell> UUID max = UUID.fromString("e677d1fe-e676-7224-be39-f88d1cd436d8"); max ==> e677d1fe-e676-7224-be39-f88d1cd436d8 jshell> UUID min = UUID.fromString("00000000-0000-7dda-8cc3-13f289aa2814"); min ==> 00000000-0000-7dda-8cc3-13f289aa2814 jshell> max.compareTo(min) $3 ==> -1
ã¡ãªã¿ã«æååã«ãã¦æ¯è¼ããã¨ï¼å½ããåã ãã©ï¼è¦ãç®éãã®æåã«ãªãã
jshell> max.toString().compareTo(min.toString()) $4 ==> 53
ãªããã¨è¨ãã¨OpenJDKã®å®è£ ã§ã¯ååã¨å¾åã«ããã¦ï¼ç¬¦å·ä»ãã®ï¼longã¨ãã¦ä¿æãã¦ããã
public UUID(long mostSigBits, long leastSigBits) { this.mostSigBits = mostSigBits; this.leastSigBits = leastSigBits; }
ã§ãcompareTo
ãå®è£
ããã¦ãã¦ãã¦ãæåã«ååã®longã§æ¯è¼ãã¦ãã
@Override public int compareTo(UUID val) { // The ordering is intentionally set up so that the UUIDs // can simply be numerically compared as two numbers int mostSigBits = Long.compare(this.mostSigBits, val.mostSigBits); return mostSigBits != 0 ? mostSigBits : Long.compare(this.leastSigBits, val.leastSigBits); }
ã§ããã®mostSigBits
ã®å¤ãä¸å®ã®å¤§ãããè¶
ããUUIDã§ã¯ãã¤ãã¹ã«ãªãï¼ã¾ããããã¯ããï¼ã
ä¾ãã°ä¸è¨ã®ãã®ã¯å
é¨çã«ã¯ä¸è¨ã®ãããªæã
max = {UUID@3077} "e677d1fe-e676-7224-be39-f88d1cd436d8" mostSigBits = -1839771030039137756 leastSigBits = -4739483847872989480
ã¡ãªã¿ã«å¤æãã¸ãã¯ã¯ãã
public static UUID fromString(String name) { if (name.length() == 36) { char ch1 = name.charAt(8); char ch2 = name.charAt(13); char ch3 = name.charAt(18); char ch4 = name.charAt(23); if (ch1 == '-' && ch2 == '-' && ch3 == '-' && ch4 == '-') { long msb1 = parse4Nibbles(name, 0); long msb2 = parse4Nibbles(name, 4); long msb3 = parse4Nibbles(name, 9); long msb4 = parse4Nibbles(name, 14); long lsb1 = parse4Nibbles(name, 19); long lsb2 = parse4Nibbles(name, 24); long lsb3 = parse4Nibbles(name, 28); long lsb4 = parse4Nibbles(name, 32); if ((msb1 | msb2 | msb3 | msb4 | lsb1 | lsb2 | lsb3 | lsb4) >= 0) { return new UUID( msb1 << 48 | msb2 << 32 | msb3 << 16 | msb4, lsb1 << 48 | lsb2 << 32 | lsb3 << 16 | lsb4); } } } return fromString1(name); }
ã¾ããJava ã®UUIDã¯4ãããã¾ã§ãã対象ã«ãã¦ããªãæ°ãããã®ã§ãããããªããããªæ°ããããããããä»æ§ãªã®ããã°ãªã®ãã¯äººã«ãã£ã¦æãæ¹ãéãã¨æãã
ãã ãUUIDv7ã¨ãã®ãã¸ãã¯ã§çæããUUIDãJavaä¸ã§ãªãã¸ã§ã¯ãã¨ãã¦æ¯è¼ããã¨é çªãæã£ãã®ã¨éããã¨ã«ãªãã¨ããã話ã§ããã åã¯ã¨ããããtoString()ãã¦æ¯è¼ããããã«ãã¾ãã
ãã®10å¹´ã§ä½ãã¿ããããã«ãªã£ã¦ä½ãå¤ãã£ãã®ãã¨ããçºè¡¨ããã¾ãã
ä¹ ãã¶ãã«ãããµãããªãã©ã¤ã³ã§ããï¼ã£ã¦äºã§åãçºè¡¨ãã¾ãï¼ï¼ï¼
ã§ããªãã®è©±ãããã®ãã¨ããã®ãæ¦è¦ã§ãªãã¨ãã¾ã¨ããã¤ãããªãã ãã©æ¸ããããªãã£ãé¨åã¨ãããã®ã§æ¸ãã¦ããã¾ãã
åºæ¬çã«ã¯10å¹´åã«ãããµãé¢è¥¿ã§åºèª¿è¬æ¼ããã¦ããã£ãã¨ãã®ç¶ãã®ã話ã§ããã10å¹´å¾...ãã£ã¦ãã¤ã§ããã
ã§ããã ç¶ãã®è©±ããããããªãã¦ããããå¤ãã£ããã¨ãå¤ãããªãã£ããã¨ã®è©±ããã¦ãããã°ã¨æã£ã¦ãã¾ãã
åãããªãã¨è¨ã£ã¦ããã©10å¹´å¾ãåããã¨è¨ããã®ï¼
ãçãæ¹ãçãªçºè¡¨ãèãã¨ç´ ç´ã«æåããåé¢ãåãããªãã¨è¨ã£ã¦ããã©10å¹´å¾ãåããã¨è¨ããã®ããï¼ãã¨ãå¿ã®çé ã§æã£ããã¨ããã¾ããï¼ ä¿ºã¯ãã¤ãæã£ã¦ã¾ãã
æ ç»ãªãããããªãã£ã¦è¨ã£ã¦ããç¬ãè¸äººãæ ç»æ®ã£ã¦ãããããããªãã§ããã
ã§ããããå¦å®ãã¦ãããããããªããã§ãããå¤åããããè²ã ç«å ´ãå¤ãã£ãããã¦è¦ããæ¯è²ãå¤ãã£ããå®ã¯æ·±ãèããããã¡ãã®èãã«ãªã£ããã¨ã£ã¦çµ¶å¯¾ããã¨æããã§ããã
ã§ãå®ã¯ä¸çªå¤§äºãªã®ã¯ãªãå¤ãã£ãã®ãã ã¨æããã ãããããæ·±ãã¿ãããã«ãªã£ãæ¹ãããããªãããç«å ´ãå¤ãã£ã¦ãã£ã¨ä¸ããã¿ããå®ã¯ããã ã£ãã¨ãã
ä½ãè¦ãã¦ã©ãæãã¦å¤ãã£ãã®ãããããèããããã ãã©ããã¾ã話ãã¦ããã人ããªããã¾ããªããè¨ã訳ã£ã½ããªã£ã¡ãã£ã¦è©±ãã¥ããã®ããããããããªããã©ããããã£ãé¨åãèããããªã£ã¦åèªèº«ãæã£ã¦ããã®ã§ãã®ã¸ãã®è©±ããããã¨æãã¾ãã
40代ã¨ãè¥è 以å¤ããã£ãªã¢æ©ãã§ããã ï¼
ãªãããã¨ã³ã¸ãã¢ã®çãæ¹ãã¿ãããªã»ãã·ã§ã³ããã¨20代å¾åãã30代ååããããã¿ã¼ã²ããã«ãã¦ããã¨å¤ããããªãã§ãããã§ãå®ã¯30代å¾åã40代以éã®äººããã£ãªã¢æ©ãã§ããã§ãããã ã£ã¦Webæ¥çã¯æ¥çèªä½ãè¥ããããã®å¹´é½¢ã«ãªãã¨åä¾ãå°ãªããã§ããããåºã¦ãã¦ããèåãªOSSã®ã³ããã¿ãã¨ããxxx社ã®CTOãã¨ãã®è©±ã§æ®éã®ã¨ã³ã¸ãã¢ã«ã¯ãªããªãåèã«ãªããªããã§ãããã
ãªãã§ãèåãªOSSã®ã³ããã¿ãã¨ããxxx社ã®CTOãã§ã¯ãªã1ã¨ã³ã¸ãã¢ã®è©±ã£ã¦çµæ§å½¹ã«ç«ã¤ããããªãããªã£ã¦æã£ã¦ãã¾ãã
èªåã§è¨ãã®ãã¢ã¬ãªãã§ããããããªãã«å·çã¨ãå ¬æ¼ã¨ãã®ä¾é ¼ããã ããã転è·ãããã¤ã³ã¿ãã¥ã¼ãã¦ããã ãããããã®ã§ããã ã®æ®éãã§ã¯ãªãã¨ã¯ç解ãã¦ããã¤ããã§ãã
ã§ãã¨ã³ã¸ãã¢ã¨ãã¦åããããã人ã¯ãã£ã±ããããããã¼ã¸ã£ã¨ãã¦ãããã人ã¯ãã£ã±ãããããè½åçã«ã¯ãã£ã±ãåã¯ãæ®éããªãã§ãããã
ãããªæ®éãªåãã©ããªãã¨ãèãã¦ãã©ããã決æããã¦ãã¦ãã¾ã®ãã£ãªã¢ã«ãªã£ã¦ãã®ãã£ã¦ããã®ã話ããã°ãªã¨æã£ã¦ãã¾ãã
ãèåãªOSSã®ã³ããã¿ãã¨ããxxx社ã®CTOãã®ãã£ãªã¢ãæè½*1ã®è©±ã¨ããã°ãåã®ã¯æ®éã®ã¨ã³ã¸ãã¢ã¨ãã¦ææ¦ãç¶ããã¹ãã«ã®è©±ã§ããã
ã¹ãã«ãªãã§æè½ãããªãã¦æèãã¦ç·´ç¿ããã°åºæ¥ãããã«ãªããã¤ã§ãããããã£ã話ããããã¨æã£ã¦ãã¾ãã
åã誰ãã®è¨èã«èä¸ãæ¼ãã¦ããã£ã
åèªèº«ããªã«ã決æãããã¨ãã誰ãã®è¨èãåèã«ããããèä¸æ¼ãããããããã§ããã
ä¾ãã°åè·ã§ã家é¨åçãªã®ã§ç¤¾å ããã¡ããã¡ããªã¨ãã«ã人äºé¨é·ãã£ã¦ãããã¦è¨ãããã¨ããå¯è³ã«æ°´ã ãé åéãããããæãæ°ã§ããã¨ã*2ã«ä»»å¤©å å 社é·ã»å²©ç°ããã®ã¤ã³ã¿ãã¥ã¼ã®è¨èã«èä¸ãæ¼ããã¾ããã
å½äºè ã«ãªãããã£ã³ã¹ãããã®ã«
ãããè¦éããã¦
ãæãåºãã°ç¶æ³ãããã§ãããã
ããªã«ãã足ãã¦ããããããã©ã
ãããã¸ãã«ãªãããããã¦ãããã
ã¨å½äºè ã«ãªããªãã¾ã¾ã§ããã®ã¯
ãããã¯å«ãã¨ãããã
ããããªãã§çãã¦ãããã§ãã
ãã®ãå½äºè ã«ãªããã®ã«ããã¸ãã«ãªãããããã¦ãããã£ã¦ããã®ã¯å«ããã£ã¦ããã®ã«ããã¼ããã£ã¡ãããã¯ã ãªãã£ã¦ãããå ±æãã¦å¼ãåãããã¨ã«ãã¾ããã
ããã«ãã®å¾ãä¼ç¤¾ã®å ååãåã®ãããµãé¢è¥¿ã®ã¹ã©ã¤ããã¿ã¦å½±é¿ãåããã¨æ¸ãã¦ããã¦ãã¾ããã
å½æå¨ç±ãã¦ããååã®ãã®ã¹ã©ã¤ããè¦ã¦ããããåããå ãé²ãã§ããå 輩ã大èã«ææ¦ãã¦ããã®ã«ãã ãã¶ç¸®ãã¾ã£ã¦ããªããã¨æãããã£ãããªãéããã¨ã«ææ¦ãã¦ã¿ããããªã¨ããæ°æã¡ã«ã
ãã¡ããã¡ãå æ ã ãå¬ããã£ãã¨ã¨ãã«èªåã®è¨èã誰ãã®èä¸ãæ¼ããã¨ããããã ã£ã¦ãããã¨ã«æ°ä»ãããã¾ããã
åã¯èª°ãã®è¨èã«èä¸æ¼ããã¦ããã®åã®è¨èã«ãµãããã¯èä¸æ¼ãããããã¦èª°ãããµãããã®è¨èã«èä¸æ¼ãããã
ãªããè¨èã«ããã¨ãã£æ¥ãããããã©ãããã£ã¦å°ãã¥ã¤ã§ã誰ãã®èä¸ãæ¼ããã¨ãåºæ¥ãã£ã¦ç´ æ´ããããªã¨æã£ã¦ççã«åããªã«ãããããªã£ãã®ãè¦ãã¦ãã¾ãã
ãã®ãµãããã®è¨äºãèªãã ã¨ãããããã¤ããããµãé¢è¥¿ã®ç¶ãã®è©±ããããªããã¨æ¼ ç¶ã¨æã£ã¦ããã®ãä»åå®ç¾ããæãã§ãã
ãã®ç©èªã®ä¸»äººå ¬ã§ã¯ãªããªãã®ã
家åºã§ã¯åä¾çã¾ãããå®¶è³¼å ¥ããããä»äºã§ã管çè·ã«ãªã£ããè¥æã¨ã³ã¸ãã¢ãã¬ã³ã¬ã³ææãã ãã¦ããã®ãã¿ãã¨ãããå¬ããåé¢ãã¡ãã£ã¨èªåãå°ãèå½¹ã«ãªã£ã¦ãããããªæè¦ã«ãªãã®ããªãã¨ããªãã¨ãªãæåç·ã§ã¯ãªããªã£ãæããã¡ãã£ã¨ãããåä¸å¿ã®ç©èªãããªãã®ãããããªããã¨ããæè¦ãåä¾åºæ¥ãããããåä¾ä¸å¿ã«çæ´»ã¯ãªããã§ããããä»äºã§ãã¡ãã£ã¨ä¿¯ç°ãã¦ã¿ãç«å ´ã«ãªã£ã¦æåç·ã§ã¬ã³ã¬ã³ãªæã¨ããã¹ãã¨ã¡ãã£ã¨ãã¿ããããã¾ã«ãããªãã¨æããã¨ãããããã¼ã£ã¦ããã
家åºãä»äºã®ä¸å¿ãèªåãããªããªã£ã¦ã人çã®ä¸å¿ã¯èªåã ã£ã¦ããæè¦ãçµæ§å¤§äºã ã¨æããã§ããããã®ã¸ãã®è©±ãåºæ¥ãããªãã¨æã£ã¦ãã¾ãã
ã¿ã¼ã²ããã¯è¥è ã§ã¯ãªããªã£ã人ãã¡
ãªã®ã§ä»åã®çºè¡¨å 容ã¯30代å¾åãã40代ã®ãã£ãªã¢ã®è©±ã§ããã¿ã¼ã²ããããã¡ããã¡ã¤ã³ã¯ãã®å±¤ã«ãªãã¨æãã¾ãããµãããã®ä¾ã®ããã«è¥è ãè´ãã¦ããªã«ãæã£ã¦å¸°ãããããªçºè¡¨ã«ãããã¨æãã®ã§æ¯éèãã«æ¥ã¦ãã ããï¼
Â
2023 å¹´è²·ã£ã¦ããã£ããã®
ä»å¹´ã¯å¤ããããããã£ã³ãã«ãããå§ãã¦ããç³»ã®ãã®ãè²·ããã¨ãå¤ããªã£ãã®ã§ããä»åã¯ãã以å¤ã§è²·ã£ã¦ããã£ããã®ãã¾ã¨ãã¦ãã¾ãã
Â
Amazonãã¼ã·ã㯠乾é»æ± ã¢ã«ã«ãª 20åã»ãã
ãã¾ã¾ã§ã¨ãã«ã¼ãã¿ãããªå é»å¼ã®é»æ± ã使ã£ã¦ããã ãã©å é»å¼ã ã¨èå¿ãªã¨ãã«å é»ããã¦ããªãã£ãããã¦ã¡ãã£ã¨èã¤ããã¨ãããã
ä»å¹´ã«ãªã£ã¦åä¾ã®ããã¡ãã§é»æ± ã使ããã®ãå¢ãã¦ãã¦ã¨ãã«ã¼ãè£å ããã®ããªãã¨æã£ã¦é»æ± è²·ãã ããã¦ã¿ãã便å©ï¼
ä¸åããç¥ããªãã¡ã¼ã«ã¼ã®é»æ± è²·ã£ã¦ã¿ããããã«ãªããªã£ããå質çã«æºè¶³ã§ããªãã£ããã ãã©Amazonãã¼ã·ãã¯ã®ã¯å®å®ãã¦ããã®ã§ãããã¨ããããè²·ãããã«ãªã£ããå é»å¼ããã¹ãã¬ã¹æ¸ã£ã¦æé«ï¼ã
Â
ãµã³ã¯ãã¤ã¬ã¯ã ãããã¬ã¹ã
æ¤ åã«åº§ãã¨ããç©æ¸ãããã人ã¯åå¾å§¿å¢ã«ãªããã ãã©ãåã¿ããã«ãã¼ãã¼ã使ã£ã¦ãã£ã¹ãã¬ã¤è¦ã人ã¯å¾å¾å§¿å¢ã«ããã»ããè °ã«ã楽ãªã®ã§ãã
ã§ãæºãä½ãã«ãã¦ãã¼ãã¼ããæ¤ åã®èç½®ãã¨åããããã®é«ãã«ããã¨ããã楽ãªãã ãã©ãåã®æéæºã¯ããã¾ã§ä½ããªããªããéã®çºæ³ã§å°ãæ¤ åãé«ãããã¨ä¸åº¦ããé«ãã«ãªããã ãã©ããããã¨ä»åº¦ã¯è¶³ãå°ãæµ®ãã¦ãã¾ãï¼æ£ç¢ºã«ã¯æµ®ãã¯ããªããã ãã©ã¡ãã£ã¨éåæãããï¼
ãªã®ã§ãã®ãããã¬ã¹ããè²·ã£ã¦ã¿ããã ãã©æãã®å¤ããã£ãã足ã®ä½ç½®ãå°ãä¸ã«ãªãã®ããããªãã ãã©ãããæãã«è§åº¦ããããã¨ã§æ¤ åããå°ãã¥ã¤ããããåã«ããã¦ãã¦ãã¾ãã®ãé²ãã¦æ¬å½ã«æ¥½ã«ãªã£ãã
ãµã³ã³ã¼ ã¢ãã¿ã¼ã¢ã¼ã ç¨ãã¼ã«
ã¢ãã¿ã¼ã¢ã¼ã ã¯ã¨ã«ã´ããã³ã®ä¾ã®ããã使ã£ã¦ãã¾ãã
Â
ã§ãå¾ç¶å§¿å¢ã§åº§ã£ã¦ããã¨é¡ã¯å°ãä¸ãè¦ãããã«ãªããã ãã©ãããã¢ãã¿ã¼ã¢ã¼ã ã®é·ãã足ããªããã®ã§ãµã³ã³ã¼ã®ãã¼ã«è²·ã£ããããã¿ãªã§ãããã¡ãã£ã¨æºã®å¼·åº¦ãæ°ã«ãªã£ãã®ã§è£å¼·ãã¬ã¼ããä¸ç·ã«è²·ãã¾ããã
Anker Soundcore AeroFit
æ´ã«å¾å¾å§¿å¢ã«ãªãã¨æ¤ åã®ãããã¬ã¹ãã«é ãã¤ãããã¨ãå¤ããªããã ãã©ããããªãã¨éª¨ä¼å°ã¤ã¤ãã©ã³ã®é¦ã®å¾ããã¾ããã°ã«ãã¨ããé¨åãããã¾ã«ãªããã ãããã§ãä»äºä¸ã«AirPods Proã¨ãã¯è³ãå¡ããã®ãå«ã ãªãã¨æã£ã¦ããã¡ã¤ã³ã¯ä»äºä¸ãã²ã¼ã ãã£ã¦ãã¨ãã«ä½¿ãã®ã§
- ç¡ç·ã§ãã
- è³ãå¡ããã«å¤ã®é³ãèããã
- å¤ã«é³ããããªã
ãã¨ã大äºãã§ãã¤ãºãã£ã³ã»ãªã³ã°ã¨ãã¯ãããªãã¨ããã®ãèãã¦éª¨ä¼å°ã«ãã¦ããã ãã©ããèããã¨ä¸è¨ãæºããã°éª¨ä¼å°ã§ããå¿ è¦ã¯ãªããã¨ã«æ°ãã¤ããã
Ankerã® AeroFit ã¯æåæ§ã®ããã¹ãã¼ã«ã¼ã§è³ã®ç©´ã«åãã¦é³ãã¨ã°ãã¦ããã®ã§è³ã®ç©´ãå¡ããªããå¤ã«é³ãæ¼ãã«ãããè³ã«ãããã ãã§æ¯åããã¦ããªãã®ã§æ¬å½ã«æ±ãã¦ããä½é¨ã ã£ãã
ããã«ãã«ããã¤ã³ãã«å¯¾å¿ãã¦ããã®ã§è¤æ°æ©å¨ã«ç¹ããããã®ã便å©ï¼
Belkin 3 in 1 MagSafeå é»å¨
iPhone 14 pro ãããããå¾ãã®ã«ã¡ã©ã®åºã£å¼µãããã³ãã³ã§ãããªã£ã¦ãã¦ç«ã¦ããããããªã¯ã¤ã¤ã¬ã¹å é»å°ã«ä¹ããã¨ã¡ãã£ã¨æµ®ãããã«ãªã£ã¡ãã£ã¦ããï¼15 Pro ã§å°ãåºã£å¼µãå°ãããªã£ãæ°ãããï¼
ãªã®ã§MagSafeå é»å¨æ¢ãã¦ããã ãã©Appleå ¬å¼èªè¨¼ãã¦ããªãã¨15wã®æéå é»ãåºæ¥ãªãã¦ãªãã¨ãªãå«ãªã®ã§ããã«å¯¾å¿ãã¦ãã¦AirPods ProãAppleWatchãå é»ã§ããã®æ¢ãã¦ã¿ãã¨ããã¾ãé¸æè¢ããªãããªã®ã§é«ããã©Belkinã®ããã«ãããå°åº§ã®ééçã«ãå®å®ãã¦ãã¦MagSafeå¥ããã¨ããå®å¿ãªã®ã§æé«ã§ããï¼
Anker PowerLine III Flow USB-C & USB-C ã±ã¼ãã«
ãããæãããã¯ãã¯ãããUSB-Cã±ã¼ãã«ãããã¯è§¦ã£ã¦ã¿ãªãã¨ããããªãã¨æããã ãã©ãã¡ããã¡ãæãããã®ã§æã¡æ©ãã®USBã±ã¼ãã«ã¨ãã¦æé«ã ã£ããPD 100W対å¿ãã¦ãããã©æ ååºåã¯å¯¾å¿ãã¦ããªãã®ã§ããã ã注æï¼ã¨ãããæ ååºå対å¿ãããã¨ã±ã¼ãã«å¤ªããªãããããããããï¼
Anker Nano II 65Wã¨åããã¦iPad Proã¨ãMac Book Proã¨ãã®å é»ç¨ã«æã¡æ©ãã¦ã¾ãã
Â
ãããã¡ãã¼ BUFFALO USB3.2
ä»äºç¨ã«æ°ããPCãçµãã - å®å®è¡ããã ã«æ¸ããããã«Arch Linuxã§æ®æ®µã¯ä»äºãã¦ãããã ãã©ãã¾ã«ãã¼ãã¤ã¡ã¼ã¸æ¬²ãããªãã¨ããããããããªã¨ãã«ä½¿ã£ã¦ãããããå°å³ã«ä¾¿å©ããªãã¨USB-Aã¨USB-Cã®å£ã両å´ã«ã¤ãã¦ãããã©ã£ã¡ã§ã使ããï¼ï¼æ®æ®µã¯ãã£ã¹ãã¬ã¤ã®USB-Cã«æ¿ãã¦ãããã ãã©ã®ã£ã´ããªããªãã¨ãã¯HHKãç´æ¥ã¤ãªãã¦ãã¼ãã¼ãã®USB-Aã«æ¿ãã¦å¯¾å¿ããããã¦ãï¼
ãã©ããã¬ã¼ã ã¾ããããã¬ã¼ã
åä¾ã®åçã¯æ¯æALBUSï¼ã¢ã«ãã¹)ã§å°å·ãã¦ãããã ãã©åä¾ãããããã¢ã«ãã ã«å ¥ãåããªãã©ããã3åä½æ¯åé ¼ãã§ãã¾ããã ãããå ¬å¼ã®æ¨ã®ãã¬ã¼ã è²·ã£ã¦æºã®åã«é£¾ã£ã¦ããããããã ãã©ãã£ã¨é£¾ãããï¼ã¨ããã£ã¦æ¢ãã¦ããåºã¦ããã®ãã³ã¬ãå ¬å¼ãããªããã ãã©ãµã¤ãºããã¿ãªãªã®ã§æç¨ãã¦ãã¾ããï¼å ¬å¼ã§åºãã¦ããã¼ï¼
Â
Â