Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.
Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.
SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.
Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační
… více »PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují
… více »GIMP 3.2 byl oficiálně vydán (Mastodon, 𝕏). Přehled novinek v poznámkách k vydání.
sveho casu jsem mel nekolik vaznych diskuzi na tema kam psat hvezdicku, ktera rika, ze dany typ/promenna je vlastne ukazatel. dneska jsem na to narazil zas... kam hvezdicky pisete vy?!
Tiskni
Sdílej:
char *a, b deklaruje a jako ukazatel na char a b jako char, takže ač se mi to ani trochu nelíbí, považoval bych za jedině možné psát hvězdičku k identifikátoru. Ale naštěstí nepíšu – víme proč
#define begin {
#define end }
a psát Pascal. Ale postupem času jsem dospěl k tomu, že aspoň v programování se držím nohama na zemi
Chcelo by to patchnúť C, aby umožňovalo zápis char* a, b (v zmysle "intuitívne správny zápis"). Som si istý, že by si aj ty na tom našiel svoje čaro a časom k tomuto jazyku a postupne sa tento jazyk naučil milovať 
Uau, vďaka tomu to C vyzerá skoro ako programovací jazyk 
typedef. Škoda, že to nejde vyřešit pomocí závorek, jenže to by se zase pletlo s přetypováním.
char* foo(int* bar)
char* foo(int * bar)
char* foo(int *bar)
char * foo(int* bar)
char * foo(int * bar)
char * foo(int *bar)
char *foo(int* bar)
char *foo(int * bar)
char *foo(int *bar)
To nie sú zďaleka všetky možnosti. Príklad: za splnu píšem "char* a", inak "char *a" 
Po česky "úplněk". :)
Pán v živote neprišiel do styku so slovenčinou?
Ad Váš návrh čeština/angličtina -> nechcem Vám przniť rodný jazyk (dosť na tom, že to robím svojmu vlastnému) a čo sa angličtiny týka, tak IMHO jej rozumie menej ľudí ako slovenčine, to za prvé a za druhé by na československom servere vyzerala angličtina veľmi podivne a bol by som asi prvý. Čo keby ste sa radšej Vy naučili trochu po slovensky? 
Odporúčam nepoužívať prapodivné slovníky, ale trochu sa pri hľadaní snažiť. Úplnok nie je slovenské slovo a je to zjavne deformácia češtiny (v slovenčine sa často nesprávne používajú čechizmy rada -> správne má byť rad, sada -> správne má byť súprava, je toho dosť), to je dané tou previazanosťou našich jazykov (hoci Slovensko je Českom určíte ovplyvňované viac, než je tomu naopak).
Príklad dobrého slovníka (pretože je viac-menej oficiálny a navyše je výkladový, čo by Čechovi malo vyhovovať viac ako obskurné preklady do angličtiny) je krátky slovník slovenského jazyka -- spln si tam môžete nájsť.
char* a. Přijde mi to mnohem názornější a srozumitelnější - například i proto, že deklarace funkce může vypadat takto:
char* my_function();
Hvězdička je u typu, což je v souladu s tím, že se týká typu návratové hodnoty. Kdyby byla u názvu funkce, bylo by to docela uhozené. Totéž jako pro pointerovou hvězdičku platí samozřejmě i pro referenční ampersand, tedy třeba std::string& s.

char *my_function()*my_function() tak dostanu char.char*. Pritom, technicky vzato, nic jako datovy typ char* v C neexistuje...
pokud nekde v kodu pouziju *my_function() tak dostanu charTo je právě nebezpečný omyl. Ta funkce vrací ukazatel na char (ponechme teď stranou to, že pokud bude funkce vypadat přesně takto, nebude volající znát délku dat), ne samotný char. Použití
*my_function() může snadno znamenat, že se vyrobí memory leak (viz např. strdup()). Proto je důležité, že vrací právě ukazatel a ne hodnotu získanou dereferencí ukazatele (což by nastalo při výše uvedeném použití funkce).
Pritom, technicky vzato, nic jako datovy typ char* v C neexistujeAle existuje. Nejde o to, že jdou (narozdíl od C++) typy ukazatelů prasit přes sebe. Prostě ten typ znamená, že jde o ukazatel ukazující na hodnotu typu
char.
int *(*a[10])();*(*a[10])() tak dostanu int. A aby tohle byla pravda tak a musi byt pole 10 ukazatelu na funkce vracejici ukazatel na int... urcite to neznamena ze a je typu int*(* nebo ja nevym jakyho...*my_function() ziskal char tak my_function musi byt funkce ktera vraci ukazatel na char. *my_function() může snadno znamenat, že se vyrobí memory leak*my_function() ma datovy typ char. To jestli je vhodny ten vyraz v nejakym kontextu pouzit je vedlejsi...char*. Neboli ze retezec char* neni jmeno datoveho typu!> Přijde mi to mnohem názornější a srozumitelnější
Az na problem zmineny Ladickem - radek 'char* a,b;' zaklada jednu pointerou a jednu charovou promennou. Tenhle priklad ukazuje, ze v gramatice jazyka C se ta hvezdicka vaze tesneji k jmenu promenne nez k jmenu typu, proto dava smysl ji psat bliz ke jmenu promenne.
char *a, b; považuji za prasárnu a nepoužívám ho. Už proto, že se držím zásady inicializace proměnných hned při deklaraci. Čili onen zápis bych přetransformoval například na:
char* a = NULL; char b = '\0';Je to sice delší, ale mnohem srozumitelnější. Obecně se snažím vyhýbat všemu, co je sice na počet znaků úsporné (a ukazuje to syntaktickou sílu C), ale co je špatně srozumitelné a komplikuje to čtení nejen ostatním lidem, ale i mně samotnému, když se do toho zdrojáku podívám po delší době.
Ja * nepisem...
Chybi mi tam volba: hvezdicku nepisu. 
Ale kdyz uz pisu, tak k identifikatoru.
To mě překvapuje, jak málo hlasů získalo „doprostřed“. Já píšu mezery v postatě všude, kde být mohou, protože bez nich se mi ten zdroják děsně těžko čte. Jediná výjimka jsou unární operátory, tedy například dereference. Jenže deklarace není dereference, takže v deklaraci píšu mezery z obou stran. V C ta hvězdička logicky patří k identifikátoru, to je jasné, ale mezerou se podle mě nikdy nic nezkazí. Jedině se to bude rychleji a pohodlněji číst.
Písanie medzier , hoci zaujímavé , pôsobí na môj zrak veľmi nepríjemne 
To je samozřejmě individuální a každý to vnímá jinak. Například
funkce(parametr, parametr);
mi připadá jako nečitelný chomáč nějakých znaků, zatímco
funkce( parametr, parametr );
přečtu v pohodě. Někoho zase ty mezery dost iritují, tak už to bývá. 
Podľa mňa toto:
funkce(parametr, parametr);
je rozumný kompromis medzi pracnosťou a čitateľnosťou. Ak chceš byť naozaj dôsledný, tak Ti tám chýba ešte zopár medzier:
funkce ( parametr , parametr ) ;
Pch, medzerový fetišista! 
Jestli je sahání na mezerník pracné, to ať už každý posoudí sám. Já na mezerník skoro sahat nemusím, protože Eclipse mi v C i C++ ty mezery při automatickém doplňování vytváří sám, na základě mnou nakonfigurovaného code style.
Ten druhý zápis... No... Proti gustu žádný dišputát, samozřejmě, ale mezera za jménem funkce působí dost rušivě, stejně jako mezery před interpunkčními znaménky, na které běžný čtenář prostě není zvyklý. Takže bych to s těmi mezerami zase až tak nepřeháněl.
Důvod, proč mívám mezery za levou a před pravou závorkou, jsem už vysvětloval. Když si chce člověk co nejrychleji přečíst nějaký kus zdrojáku, funkce(parametr, parametr) je nepřehledný shluk, nad kterým je potřeba se zastavit, zatímco s mezerami se to čte nesrovatelně rychleji. Ale to platí pro mě. Každý to vnímá jinak. Nemyslím si, že by se dalo jednoznačně říct, co je „rozumný kompromis“.
FILE, všechny operace s řetězci potřebují ukazatel na char (i literál "Hello world" je konstantní ukazatel), všechna pole jsou vlastně maskované ukazatele, většina funkcí na vstup z vnějšku (typu scanf()) potřebuje ukazatel, jediný způsob předávání proměnné odkazem je přes ukazatel na ní a druhý parametr vstupního bodu programu - funkce main(int argc, char *argv[]) - je pole ukazatelů na řetězce, tak toho zbývá opravdu celkem málo, kde by ukazatele nebyly třeba. Právě proto bylo vymyšlené C++, kde se dá bez ukazatelů obejít, a Java a spol., kde ukazatele nejsou třeba vůbec, protože C je ukazately doslova zadrátované