Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.
Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.
Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU
… více »GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.
Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.
Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
Tak mám ve sém ~/bin
další skript, bez kterého jsem jak bez ruky.
Čas od času je potřeba najít soubor, k tomu slouží příkaz find
. Pro mě byl tento příkaz vždy trochu nešťastný, protože je příliš mocný a skoro nikdy jsem tam ty parametry napoprvé nenaskládal ve správném pořadí. Vyřešil jsem si to skriptem, který jsem nazval sifi
- simple find (i když si stejně pokaždé vzpomenu na syfilis; aspoň se to líp pamatuje). Skript je triviální:
#!/bin/sh find . -name "$1"
Používám ho dost často při programování v Javě. Typicky vím, jak se nějaká třída jmenuje, ale nevím jak hluboko je pohřbená v balících:
svn revert `sifi PohřbenáTřída.java`
Když mí po přepínání větví začne zlobit pythoní aplikace, dost často to vyřeší
rm `sifi '*.pyc'`
Tiskni Sdílej:
mkcd() { mkdir -p "$1" && cd "$1"; }
. Jinak mám raději samostatné soubory, které můžu kopírovat, poslat, zálohovat...
Proto pouzivam zsh, pro dane priklady to vypadalo:
svn revert **/ZakopanaTrida.java
rm **/*.pyc
(pro zsh musi byt zapnuta option extendedglob, neco jako "setopt extendedglob" v ~/.zshrc). Plus zsh ma uzasny autocomplete (doplnuje treba i remote adresare/fajly ze svn nebo ssh, kdyz pisu "scp asdf.txt stroj_nekde:dir1/dir2")
Pro skripty porad pouzivam bash (kvuli prenositelnosti). Ale jako interaktivni shell je zsh hodne pohodlne, globbing zsh je brutalne silnej (vsechny moznosti nezna snad ani autor sam ), napr:
ls -l (#i)**/*nejaka*~*jina*(.)
vylistuje vsechny soubory libovolne hluboko '**', case insensitive '(#i)', ktere zaroven nematchujou '*jina*' a jsou obycejnym souborem '(.)'. Vetsinou takhle "silene" globy nepotrebuju, nekdy se to presto hodi. IMHO zsh-completion se mi zda taky lepsi nez bash-completion.
Nekdy se taky hodi zmv - hromadny prejmenovani souboru, podporuje stejny globbing a capture groups (jako zavorky u regexpu).
BTW sample zshrc kdyby to chtel nekdo zkusit.
Používám něco obdobného, ale navíc i pro prohledávání souborů podle obsahu. (Plus přidávám pár dalších drobností.)
# Hledani souboru podle jmena. # (Pouziti: find-name /nejaky/adresar/ 'soubor*.txt') find-name () { local dir=$1 local name=$2 shift 2 find "$dir" -name "$name" $* } # Hledani souboru podle obsahu. # (Pouziti: find-content /nejaky/adresar/ 'hledany retezec') find-content () { local dir=$1 local content=$2 shift 2 find "$dir" -type f -exec grep -il -- "$content" {} \; $* } # Porovnavani rozdilu mezi soubory/adresari bez vypisu podrobnosti. # (Pouziti: ddiff /nejaky/adresar/ /nejaky/jiny/adresar/) alias ddiff='diff --brief' # Vypis absolutni cesty k souboru/adresari, volitelne i s kvalifikovanym # domenovym jmenem ve tvaru prijimanem programem scp. # (Pouziti: pt /nejaky/soubor/nebo/adresar # fpt /nejaky/soubor/nebo/adresar) pt () { echo `readlink -f "$*"` } fpt () { echo `hostname -f`:`pt "$*"` } # Vytvoreni adresare s okamzitym vstoupenim do nej. # (Pouziti: mkdir-cd novy-adresar) mkdir-cd () { mkdir $* && shift $[$#-1] && cd $1 }
Skript je pěkný, na příkazové řádce se může hodit, ale…
Typicky vím, jak se nějaká třída jmenuje, ale nevím jak hluboko je pohřbená v balících
…nechceš zkusít nějaké IDE? Např. v Netbeans zmáčknu Ctrl+O
a začnu psát název třídy – hledá se nejen v aktuálním projektu, ale i v knihovnách a v JRE. Pak jen stačí zmáčknout enter
a jsi přímo v té třídě. Podpora (nejen) SVN tam taky je.