Byla vydána nová verze 9.7 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání.
Vývojáři webového prohlížeče Ladybird dnes oznámili, že mění způsob vývoje. S blížícím se vydáním alfa verze přestávají přijímat veřejné pull requesty. Všechny otevřené veřejné pull requesty budou uzavřeny. Tým nedokáže garantovat bezpečnost AI generovaných pull requestů.
OpenLogi (GitHub) je open source náhrada aplikace Logi Options+ pro přizpůsobení myší od společnosti Logitech. Zatím běží pouze na macOS.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za květen (YouTube).
Úřad pro ochranu osobních údajů řeší desítky stížností na jednotné měsíční hlášení zaměstnavatele, které stát spustil počátkem dubna. Systém, jenž má firmám odlehčit od desítek formulářů, nejenže výrazně zatížil jejich účetní oddělení, ale docházelo v něm i k únikům osobních dat zaměstnanců k firmám, kde nepracovali. Podle ministerstva práce a sociálních věcí stála za problémem technická chyba. „Incident se týkal několika stovek
… více »Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.
Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.
Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.
Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.
Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …
Prece, zachovavat coding style puvodniho projektu a v novem je to jedno, jen kdyz porad stejne
Tedy je to pořád lepší než ti, kteří kód píšou tak jak jim to IDECo? Ty si myslíš, že jseš v něčem lepší než já?
A vzniká tak přenádherný kód. Tak co blbneš?
A take doporucuji
First off, I'd suggest printing out a copy of the GNU coding standards, and NOT read it. Burn them, it's a great symbolic gesture.
Kernel coding standards trvají na osmi mezerách. Podle mě je to overkillNow, some people will claim that having 8-character indentations makes the code move too far to the right, and makes it hard to read on a 80-character terminal screen. The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program.
if you need more than 3 levels of indentation, you're screwed anyway, and should fix your programTři? Pět je málo!
1 public void fce (int i, boolean b) {
2 switch (i) {
3 case 1: {
4 if (b)
5 if () akce();
else jina_akce();
else jeste_jina_akce;
public void fce (int i, boolean b)
{
switch (i) {
case 1:
if (b) {
if ()
akce();
else
jina_akce();
} else
jeste_jina_akce;
break;
}
}
take nieco by ti spicoval aj gcc (a to nemyslim nedokoncenie funkcie)
gij? :)
ja ich tam vidim len 5Metoda třídy se vnořuje o jednu úroveň oproti deklaraci třídy, to je ta šestá.
The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program.Zdá se, že to nebude jenom o kernelu, že?
enum AkceEnum {
Akce1 {
@Override
public void doAction(boolean b, boolean c) {
if (b)
if (c)
akce();
else
jina_akce();
else
jeste_jina_akce();
}
},
Akce2 {
@Override
public void doAction(boolean b, boolean c) {
// TODO
}
};
abstract public void doAction(boolean b, boolean c);
}
public void fce (AkceEnum akce, boolean b) {
boolean c = false;
akce.doAction(b, c);
}
Nebo pokud tam mermomocí potřebujete switch:
enum AkceEnum {
Akce1, Akce2;
}
public void fce (AkceEnum akce, boolean b) {
boolean c = false;
switch(akce) {
case Akce1:
doAkce1(b);
break;
case Akce2:
break;
}
}
private void doAkce1(boolean b) {
if (b) {
if (this.c)
this.akce();
else this.jina_akce();
} else this.jeste_jina_akce();
}


Navíc všechny mně známé generátory generují kód pro AJAXové aplikace, ale já potřebuju standardní web s přidaným JS.

.
Tak bych možná začal používat i gvim..
Na druhou stranu to ale může být i nevýhoda, právě proto, že je to proměnné v závislosti na použitém editoru.Ja to vidim jako vyhodu, kazdy si tu promenou muze nastavit se mu libi... IMHO editor, v kterem nejde nastavit, aby nemenil tabulatory na mezery, neni na programovani moc vhodny :)
Jo a když jsme u toho, délka řádky minimálně 100 znakůMinimálně nebo maximálně?
) A odsazovani nechat na emacs
vetsi_projekt * vetsi_pocet_programatoru + tabulatory => spatna_citelnost_kodu
Makefile rozlišuje mezery a tabulátory je celá kapitola v UNIX-Haters Handbooku. :)
asmlinkage int compat_sys_select(int n, compat_ulong_t __user *inp,
compat_ulong_t __user *outp, compat_ulong_t __user *exp,
struct compat_timeval __user *tvp);
[ tab ]asmlinkage int compat_sys_select(int n, compat_ulong_t __user *inp,
[ tab ]|||||||||||||||compat_ulong_t __user *outp, compat_ulong_t __user *exp,
[ tab ]|||||||||||||||struct compat_timeval __user *tvp);
Takové odsazení bez kombinace tabu a mezery nenapíšeteStačí používat mezery a napíšete
Hle, to je vlastně důkaz toho, že zatímco tabisti se bez mezer neobejdou, my mezeristi se bez tabů obejdeme velice snadno
asmlinkage int compat_sys_select(
int n,
compat_ulong_t __user *inp,
compat_ulong_t __user *outp,
compat_ulong_t __user *exp,
struct compat_timeval __user *tvp
);
A vystacim se 4 mezerama (tabulatorem). Nebo
asmlinkage int compat_sys_select(
int n, compat_ulong_t __user *inp,
compat_ulong_t __user *outp, compat_ulong_t __user *exp,
struct compat_timeval __user *tvp
);
Ale prvni verze mi prijde nejprehlednejsi.
asmlinkage int compat_sys_select(int n,
compat_ulong_t __user *inp,
compat_ulong_t __user *outp,
compat_ulong_t __user *exp,
struct compat_timeval __user *tvp);
int i[,] = {{5, 7, 8, 0},
{7, 8, 9, 4}};
.... (
int n,
...
) {
}
pole dtto
void main () {
}
a
void main()
{
}
V jednom nejmenovaném programovacím jazyku je konvence
begin ... end

void main () {
}
int main(void)
{
...
}
int main (void)
{
int i;
for (i = 0; i < 10; i++) {
fputc(i + '0', stdout);
}
return 0;
}První řádek je odsazen od těla funkce a je to tak přehlednější. Otevírací závorku cyklů a ifů dávám na nový řádek jen když je podmínka moc dlouhá a rozleze se to na více řádků. Mezi funkcema pak nechávám dva řádky prázdné.
void main()
{
}
Všechny závorky stejné úrovně jsou pak v jednom sloupci a je to přehlednější než když otevírací závorka je na řádku s deklarací někde vzádu vpravo.
Ve škole máme prastarý Turbo Pascal a ten tam cpe furt ty pitomé mezery. Když si to pak otevřu třeba v Kate, tak se v tom tak špatně pracuje :-/
if (něco)
{ blabla();
hello();
}
while (a == b)
{
nejaka_funkce ();
}
Což se mi tedy také nelíbí, ale pořád je to z optického hlediska milionkrát lepší než když je složená závorka na stejné úrovni jako ostatní blok v kódu. K&R prostě ruluje
Nicméně uplně nejvíc ruluje, když nemusím používat složené závorky vůbec (vive le Python!
).
Jinak já zas považuju za mnohem lepší styl jako v Python, než styl jako v Ruby :-P
Tiskni
Sdílej: