Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Soutěž se bude skládat z několika fází. Soutěžící nejdříve pošlou své návrhy projektů. Z nich odborná hodnotící komise vybere ty, které budou splňovat předepsaná kritéria. Poté začne samotná realizace vybraných projektů, po níž bude následovat vyhodnocení a ocenění výherců.
„Soutěž VIP – Vyvíjej, inovuj, programuj – je po přípravě české verze filmu Warriors of the Net dalším z projektů CZ.NIC v oblasti internetové osvěty. Cílem je podpořit talentované programátory v tom, aby za svým úsilím viděli konkrétní cíl. Tím je kromě finanční odměny také reálná možnost uplatnění projektu v praxi,“ říká Ondřej Filip, výkonný ředitel sdružení CZ.NIC.
Podrobný harmonogram včetně informací k přihlášení do soutěže, možnostem realizace, hodnotící komisi atd. najdou zájemci na internetové adrese soutěže http://www.nic.cz/vip/. Soutěž mediálně podpoří i její partneři, kterými jsou informační portály Root.cz, AbcLinuxu, IT Systems a měsíčník Connect.
Zájmové sdružení právnických osob CZ.NIC bylo založeno předními poskytovateli internetových služeb v roce 1998 a v současné době má 53 členů. Hlavní činností sdružení je provozování registru doménových jmen .CZ a 0.2.4.e164.arpa (ENUM), zabezpečování provozu domény nejvyšší úrovně CZ a osvěta v oblasti doménových jmen. V současné době se sdružení intenzivně věnuje rozšiřování systému ENUM, rozvoji systému FRED pro správu domén, zavádění DNSSEC a podpoře nových technologií a projektů prospěšných pro internetovou infrastrukturu v České republice. Sdružení CZ.NIC je členem sdružení EURid spravujícího evropskou doménu .EU a dalších obdobně zaměřených mezinárodních společností (CENTR, ccNSO, ITU a další). Více informací na internetové adrese http://www.nic.cz.
Kontakt pro média:
Vilém Sládek
Specialista komunikace
CZ.NIC, z.s.p.o.
Tel.: + 420 222 745 117
GSM:+ 420 739 452 919
E-mail: vilem.sladek@nic.cz
Jan Hrabovský
Account Manager
Ewing Public Relations
Tel: +420 224 800 537
GSM: +420 777 855 459
E-mail: jan.hrabovsky@ewingpr.cz
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
pro mladé programátory, když věk není zhora nijak omezen?
Jsem hodne zvedavy na odezvu, protoze Google Summer of Code ma v cechach dost mizerne zastoupeni a lide mi casto rikaji, ze je to jazykovou barierou.SoC má ale trochu širší záběr - nebo tak mi to připadá. Zde se uvádí univerzálně znějící software v oblasti internetových technologií, infrastruktury či služeb, ale v ukázkových projektech je to samé DNS a ENUM (tedy to, co CZ.NIC zajímá).
int main()
{
//Vis jak dopsat tento radek?
//Ale jiste:
int x = 3;
if (x = 5) printf("Tento text se nikdy nevytiskne.");
}
int main() { //Vis jak dopsat tento radek? //Ale jiste: int x = 3; if (x = 5) printf("Tento text se nikdy nevytiskne."); }
int main() { //Vis jak dopsat tento radek? //Ale jiste: int x = 3; if (x == 5) printf("Tento text se nikdy nevytiskne."); return(0); }:p
if(x = funkce())
bash-3.1$ gcc -Wall test.c
test.c: In function ‘main’:
test.c:7: warning: suggest parentheses around assignment used as truth value
Nastesti je Java velmi striktni pri typove kontrole a zamenu == za = (napr. if (j = 5)) nahlasi jako chybu programu(incompatible types), protoze na tomto miste ocekava vyraz typu boolean a dostava hodnotu int.
bool
neberou ale nerad bych kecal...)
int
a bool
, případně další typy. Hafo ostatních jazyků vám nedovolí jejich vzájemné přiřazení. Já osobně raději ten C/C++ přístup, ale každý má své gusto, nemám nic proti...
if (5)...
nedava zadny logicky smysl. je to asi z toho duvodu, ze ocekavam nejakou komparaci resp. podminku typu pokud jablko neni cervive, pak ho budu jist atd.
x == 5
lze prirovnat vete o jablku. kdezto x = 5
lze prirovnat konstatovani "jablko je cervene", ale je vam uplne jedno, jestli je shnile, cervive, etc.
if (x=5)
můžem napsat takle:
x = 5;
if (x) ...
Na tu jablkovou analogii by se to našroubovalo asi takle: Jablo je červené. Pokud ano, sním ho.
--- snip --- if ($x) echo "blink"; $x = 0; if ($x) echo "blak"; $x = 1; if ($x) echo "zblunk"; $x = 5; if ($x) echo "nevim"; --- snip ---vypise: zblunk, nevim;
--- snip --- if ((x = 3)) ? printf("true") : printf("false"); --- snip ---vypise: true; proc? prvni priklad je z php - x neni definovano, x = 0 => false; zbytek je brano jako true. php na to neni moc vhodne, vzhledem z duvodu nerozlisovani datovych typu. defaultni chovani lze prirovnat k funkci isset() /* muj dohad, skutecne jsem to nikdy nezjistoval */
if (5) ? printf("true") : printf("false");
. a tim fungovat myslim, ze to nevyhodi zadny error. myslim si, ze to je tim, ze nejdrive dojde k prirazeni 5->x, a pak az vyhodnoceni "je 5 vetsi nez 0?". pokud tam nebudou zavorky a kompilator nalezne pouze jedno rovnitko, bere to jako chybu(stejne jako java napr.).
if (x = 5)
byl spravny, s tim nesouhlasim.
if (x = 5)myslel si tim
if (x == 5)
nebo if ((x = 5))
je, dle meho nazoru, explicitni. zalezi uz (asi) na kompilatoru, jak prisne ma nastavena pravidla resp. do jake miry pouziva kristalovou kouli.
int x = 3;
if (x = 5) printf("Nejaky text");
MOV DWORD PTR SS:[EBP-4],3
MOV DWORD PTR SS:[EBP-4],5
MOV DWORD PTR SS:[ESP],hokuspokus.00442000; (ASCII "Nejaky text")
CALL <printf>
a ten druhej případ:
int x = 3;
if (x == 5) printf("Nejaky text");
MOV DWORD PTR SS:[EBP-4],3
CMP DWORD PTR SS:[EBP-4],5
JNZ SHORT hokuspokus.00401431
MOV DWORD PTR SS:[ESP],hokuspokus.00442000; (ASCII "Nejaky text")
CALL <printf>
MOV EAX,0 (00401431 - sem by přisel JNZ)
V prvím případě na úrovni instrukcí k žádnému porovnávání vlastně nedochází. A to jsem dal bez -O. Možná, že při nějaké agresívnější hodnotě -O by neporovnával ani u toho druhýho...
napište PROČ je to blběTřeba proto, že tím zneužíváš výchozího chování jazyka, které je sice profláknuté, ale skryté? Osobně mi používání těchto konstrukcí připadá jako jisté vytahování se před druhými typu: "Koukejte, kolik zákoutí jazyka znám!". Ten, kdo kód přebírá, řeší vpodstatě hlavolam, namísto aby šel na jisto. Do této kategorie též řadím i například přetěžování operátorů. Promiňte, ale například v kódech informačních systémů je opravdu toto netřeba. Jen to snižuje čitelnost a vede to k budoucímu možnému zanesení chyby. Preferuji čistý kód, který dokumentuje sám sebe. Mám-li funkci
int f()
, jejíž výsledek chci uložit do proměnné x
a provést něco, když je ten výsledek roven pěti, pak je to podle mě nejčitelnější takto:
……… x = f(); if (x == 5) { ……… } ………Je to výhodné i do budoucna, když budu potřebovat porovnávat na jinou hodnotu, pak změním jednu konstantu namísto přepisování kódu. Příklad:
if (x = f()) { ……… }znamená: proveď něco, když je výsledek volání funkce různý od nuly. Co když to za pár týdnů bude třeba jedna? To pak budu odčítat?:
if ((x = f()) - 1) { ……… }Není opravdu čitelnější
x = f(); if (x != 1) { ……… }??? Podle mě je to obfuskační level číslo jedna.
A používá se prostě proto, že se pak ten kód lépe čte, ne kvůli zmatení nepřítele.Uvedl jsem příklad, kdy si myslím, že se ten kód hůře čte. Aspoň mně.
Co když to za pár týdnů bude třeba jedna? To pak budu odčítat?:Nikoliv, tak půjdu praštit po hlavě toho, kdo to změnil, protože základní konvence o vracení chybových kódů (což je nejčastější použití zmíněné syntaktické konstrukce) má být v každém projektu pevně dána již od začátku a dotyčný ji nemá co porušovat.
Mně spíš překvapuje, že je někdo schopný najmout programátora, pro kterého je přiřazení hlavolamem, a nechat ho psát kód v céčku. Vždyť takhle musejí vznikat zbraně hromadného ničení... probohaNemuzu se zbavit pocitu, ze slysim matematikare, ktery si prosazuje svuj postup. Je opravdu tak dulezite, jak jsme k vysledku dosli nebo vysledek samotny?
x=5
a nekomu x = 5
. Prijde mi to tak trochu jako arogance.
Marně si lámu hlavu, čím jsem si vysloužila reakci, která se tváří, jako bych tvrdila pravý opakTvuj posledni odstavec mi prisel jako rypani, promin. To prirazeni je vec kompilatoru a toho, jak to kdo chape, ne? Takze mi neprijde, ze by to melo az tak co delat s tim, jak je kdo dobry programator. Ale asi jsem si to jenom spatne vylozil. Pokud to tak je, pak se omlouvam ;)
A jinak je to přesně tak, jak říká MJ: Myslím, že pokud někdo nepřelouská takhle triviální konstrukce, céčko mu nepatří do ruky, protože nejspíš nemá pořádek ani ve spoustě dalších věcí - v céčku je snadné udělat mnoho chyb s fatálními následky pro bezpečnost či integritu dat.Ano, pokud se bavime pouze o C, proc ne. Ostatne na tom uz jsme se shodli par dnu zpatky a nejak nevim, proc se to tu propira znovu. Vec se ma asi tak, ze od lidi, kteri jsou na tak vysoke profesionalni urovni, bych takovehle narazky necekal(nebo mozna cekal).
Nebo PHP, to je zas dostatečně frivolní. Nezatěžuje programátora s rozlišováním nějakých datových typů, takže kdejakej hejhula tam cosi sesmolí a parser si to přelouská...Amen. A ani v PHP6 tu deklaraci promennych nepridaji. Smutne.
Co když to za pár týdnů bude třeba jedna? To pak budu odčítat?:Proč? Odčítat? zbytečné:if ((x = f()) - 1) { ……… }
if (x = f() == 1) { ……… }
if ((x = f()) == 1) { ……… }
A to vam teda garantuji, blbe to je. Jako QA sef bych nekoho takovyho shodil ze schodu, kdyby mi s tim prisel.Nevím nevím, skoro bych Vám garantoval, že by vás dotyční vývojáři dříve umlátili normou Céčka, než byste kohokoliv stihl shodit
Popravdě, docela mě děsí zjištění, že nejspíš existují firmy, kde si tamní hackeři něco takového nechají líbitBezna praxe. Nelibi se ti? Bez si jinam. Take stale plati porekadlo: "Nas zakaznik, nas pan" etc. Jestli tohle neplati v RH/Novellu, tak ver, ze jinde se to uplatnuje ve vice nez hojne mire.Tohle by byl ten pravý důvod založit odbory
Co to má společného se zákazníky?Nic a vsechno. Skoro bych rekl, ze jste nikdy neprogramovali dle necich pozadavku, a tim myslim naprosteho laika(zakaznik), ktery razi nesmyslne reseni.
Celý vtip je v tom, že u nás dělají programátorům šéfy lidi, co umějí programovat. Někde, kde hackerům šéfuje nějaké oslisko, bych opravdu nepracovala.Ani ja ne. A neplati to pouze pro programovani, ale pro kterykoliv obor. Problem bych videl v tom, ze kazdy sef ma sefa, atd. No, i zakaznik je do jiste miry "sefem".
Za to, že je tenhle warning ve -Wall gccčkaře kousnoutSpis bych ocenil vysvetleni "proc se to tam vyskytuje pravem". Omlouvam se, ale takovyhle prispevek ma pro me informacni hodnotu 0. Je to tedy pravidly kompilatoru gcc?Je otrava se s ním vypínat a ještě větší otrava ho číst. Nevím, jak u jiných, ale v mých zdrojácích se nějaké to if (x = f(y)) vyskytuje často a právem
==
, byl to tak nak ucel return
jsem zapomnel doopravdy, nicméně když už sme u toho, dal bych spíše return 0;
Zajimave je, ze v takle dlouhem threadu nikdo nezminil od pohledu dost pochybnou syntaxi kodu, ktery je jako dekorace na strance s pravidly soutezeJá zase čekal, kdo se zmíní o pravopisných chybách v banneru...