Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.
Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.
Ministerstvo vnitra odhalilo závažný kyberincident v IT systému resortu. Systém, do kterého se dostal útočník bez oprávnění, byl odpojen a nedošlo k odcizení dat [𝕏].
Před rokem byla streamovací služba HBO Max přejmenována na Max. Dle managementu slovo HBO v názvu nebylo důležité. Včera byl Max přejmenován zpět na HBO Max. Kolik milionů dolarů to stálo? 😂
Byla vydána nová major verze 8.0.0 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata (Wikipedie). Přehled novinek v oficiálním oznámení a v aktualizované dokumentaci.
Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.4. Přehled novinek s náhledy a videi v oznámení na blogu.
Instituce státní správy nebudou smět využívat produkty, aplikace, řešení, webové stránky a webové služby poskytované čínskou společností DeepSeek. Na doporučení Národního úřadu pro kybernetickou a informační bezpečnost rozhodla o jejich zákazu vláda Petra Fialy na jednání ve středu 9. července 2025.
Kdysi dávno jsem zde pokládal návrh na anketu Jaký používáte styl programování?
. Bohužel buďto zapadla, anebo obsahovala odkaz na příslušnou stránku wikipedie (odkazy v anketě tuším ničily layout stránky). Buď jak buď, anketa se nekonala.
Z již zmíněného dokumentu plyne, že se rozlišuje 5 hlavních stylů, přičemž poslední tři mi přijdou hodně obskurní . Jak jsem tak měl možnost vidět zdrojové kódy, tak převládá K&R a BSD styl odsazování, případně třetí varianta - náhodné odsazování.
Já osobně nejraději používám právě prvně jmenovaný, protože mi BSD styl přijde moc rozvláčný. Zde je příklad za všechny (musel jsem trochu přeformátovat, ztratil se mi prázdný řádek).
/* create a new empty operand */ rpcData* newData(void) { rpcData* aux = (rpcData*) malloc(sizeof(rpcData)); memset(aux, 0, sizeof(rpcData)); aux->references = 1; return aux; }
Tiskni
Sdílej:
case
. Tj. asi takto:
int foo(char* p) { int n = 0; while (*p) { switch(*p) { case '(': n++; break; case ')': n--; break; } p++; } return n; }
if ( ) { ... } else { ... }Pri velkych povazujem za vhodne patricne zdoraznit skoro prazdnym riadkom, kde ten if konci:
if ( ) { ... ... ... ... } else { ... ... ... ... }
Sice jsem sotva pára z programátorského ....., ale když už něco náhodou uplácám, pak jedině K&R. Jinak odsazuji, odsazuji, a znovu odsazuji všechno co se jenom odsadit dá a to vždy o dvě mezery. Kdo používá tabulátory je Barbar. S komentářema je to ale u mne bída. :~)
mood = (machine != slackware) ? depressed : euphoria;
int main(int argc, char** argv) { if(argc != 2) { // neco } else { while(1) { } .... switch(c) { case 1: .... break; default: .... } do { } while(1); for(int i = 1; i < 16; i++) { } } }
int ukazka() { if podminka then { udelej_tohle(); udelej_tamto(); } else { udelej_tudleto(); udelej_tamdleto(); } return(0); }
(0)
' je stejně korektní návratová hodnota funkce jako '0
'. Nebo tam klidně můžete napsat '(((0)))
' a bude to pořád totéž…
return (3, 2, 1, 0);
void fce( int cislo, char ** tt ) { if ( cislo >= 6 ) { do_neco( cislo, get_neco( tt ) ); } else { switch( cislo ) { case 'x': zajimave_cislo(); break; case 'a': zajimave_cislo( c ); break; } } }