abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

    Ladislav Hagara | Komentářů: 0
    dnes 15:00 | Nová verze

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    dnes 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevili v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 12
    včera 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 7
    včera 22:22 | Zajímavý software

    V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Zajímavý článek

    Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."

    Ladislav Hagara | Komentářů: 1
    včera 12:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 12:33 | Nová verze

    Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Nasazení Linuxu

    Spolek vpsFree.cz vydal statistiky týkající se distribucí nasazených na serverech členů. V dlouhodobém pohledu je zřejmé, že většina uživatelů z původního CentOS přechází na Rocky Linux. Pozoruhodný je také nárůst obliby distribuce NixOS, která dnes zaujímá třetí místo po Debianu a Ubuntu.

    Petr Krčmář | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (23%)
     (10%)
     (0%)
     (0%)
     (0%)
     (8%)
    Celkem 39 hlasů
     Komentářů: 4, poslední včera 22:41
    Rozcestník

    FixBrowser/FixProxy 0.3

    11.5. 21:02 | Přečteno: 1211× | Linux | Výběrový blog

    Vydal jsem novou verzi prohlížeče resp. proxiny která umožňuje prohlížet weby bez JavaScriptu a sledovacích prvků. Místo toho obsahuje sadu skriptů které opravují stránky které jinak nefungujou bez JS a zároveň i řadu stránek vylepšuje (např. sledování nových příspěvků podobně jako je to tady na AbcLinuxu ale i pro jiné weby).

    Projekt jsem více popisoval v mém předchozím zápisku. Od té doby jsem vydal dvě verze, tady je krátké shrnutí změn:

    Verze 0.3 - blog post: Verze 0.2 - blog post: Pokud projekt někoho zaujal tak mě může podpořit ve vývoji posláním peněžního daru.        

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    12.5. 10:51 asdfasdf
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Podle me je to celkem zajimava iniciativa, jenom jednu vec bych mozna trochu "poprosil" - muzes na ten web dat nejaky screenshoty treba prave tech webu, ktery tam zminujes? Aby clovek mel nejakou predstavu jestli to vlastne ma smysl zkouset?
    12.5. 15:34 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Tak ono se to celkově blbě popisuje, zvlášť když lidi čtou třeba jen každou třetí větu, přeskakují úvod, dívají se čistě jen na screenshoty a nic jiného, když čtou že to je bez JS tak to okamžitě odepíšou na základě vlastní negativní zkušenosti a přitom hned za tím je napsáno jak se právě tenhle problém řeší těma opravnýma skriptama. Aspoň tyhle různé věci jsem vydedukoval z různých komentářů co lidi psali.

    Nepomáhá že jsou to vlastně dvě aplikace, jedna je browser (kterej zatím není praktickej na používání) a druhá proxy (kterej naopak je v pohodě na používání).

    Teď naposled si někdo myslel že screenshot ukazující něco v tý proxině je ten browser a zmínil to jen protože si všiml že tam je ikonka doplňku uBlock Origin a divil se že to v tom prohlížeči může fungovat když je to alfa verze. A přitom je to screenshot Firefoxu kde se používá právě ta proxy.
    13.5. 07:18 asdfasdf
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Tak ono se to celkově blbě popisuje, zvlášť když lidi čtou třeba jen každou třetí větu, přeskakují úvod, dívají se čistě jen na screenshoty a nic jiného, když čtou že to je bez JS tak to okamžitě odepíšou na základě vlastní negativní zkušenosti a přitom hned za tím je napsáno jak se právě tenhle problém řeší těma opravnýma skriptama. Aspoň tyhle různé věci jsem vydedukoval z různých komentářů co lidi psali.
    To chapu ze je na hovno, ale myslim si, ze nejaky screenshoty by prave pomohly tomu aby si kazdej udelal prvotni obrazek a pripadne "neztracel cas s necim co nefunguje". Proste screenshot "web xy ve firefoxu" vs. "web xy ve firefoxu pres FixProxy", pripadne pridat cas nacteni nebo tak neco, aby clovek videl "ok, to je zajimava myslenka".
    Nepomáhá že jsou to vlastně dvě aplikace, jedna je browser (kterej zatím není praktickej na používání) a druhá proxy (kterej naopak je v pohodě na používání).
    Jo, to muze byt trochu matouci. Neni mi uplne jasny proc se snazit delat browser v takovym pripade, kdyz lightweight je relativne dost, a prave pridanim FixProxy bys z nich mohl udelat neco pouzitelnyho.
    Teď naposled si někdo myslel že screenshot ukazující něco v tý proxině je ten browser a zmínil to jen protože si všiml že tam je ikonka doplňku uBlock Origin a divil se že to v tom prohlížeči může fungovat když je to alfa verze. A přitom je to screenshot Firefoxu kde se používá právě ta proxy.
    Imho jednoduchej popisek pod screenshotem by pomohl, pokud byl a nepomohl, tak se s tim netrap, v takovym pripade je komentujici spis mimo.
    13.5. 14:04 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    No zkusím to nějak vymyslet, napadá mě to přímo opopiskovat v tom obrázku. To by mohlo dost věcí vyjasnit.

    Browser je primárním cílem projektu. Chci abych mohl mít browser kterej můžu fakt používat a ne neustále řešit nepřiměřené nároky a navíc i různé vrtochy stávajících browserů. V rámci testování se hodilo udělat tu proxy což jsem zjistil, že je docela zajímavej nástroj sám o sobě a našel jsem spoustu využití (např. je to snadnej způsob jak dostat adblocking do zařízení/browserů které nejdou konfigurovat, i věci jako Steam Overlay na GeForce Now apod.).

    Dalším důvodem je podpora starších a alternativních systémů. Zejména na mobilech je to nejvíc zaražející jak rychle zastarávají jen kvůli SW podpoře, po HW stránce jsou úplně v pohodě i dost staré kousky a může je někdo preferovat třeba kvůli menší velikosti místo těch dnešních pádel.

    K těm vrtochům, např. u Firefoxu co používám vypršel ňákej certifikát nebo co na extenžny a prostě ten zmetek nedovolí extenžny používat. Jedinej workaround pro pokračování používání stávající verze je při každém startu ručně ty doplňky znova aktivovat jakože je testuju (naštěstí Firefox moc nerestartuju). No prej ESR verze to nedělá takže od té doby když dělám nové instalace tak už jen ESR verzi, byl jsem poučen...

    Jsem toho názoru, že počítač ovládám já a ne on mě, takže takové chování je pro mě nepřípustné. Ale zároveň jsem rád, že samozvaní bohové z Mozilly umožnili aspoň tohle.

    Jedinej důvod proč můžu prakticky používat web v dnešní době způsobem co mi vyhovuje je díky FixProxy protože snižuje nároky na paměť (ale i vyžírání CPU na pozadí apod.), že si můžu otevřít více než pár tabů. Ale i tak to není úplně ono.

    Bez FixProxy se stačí trošku rozšoupnout a otevřít řadu tabů a na některejch stránkách jako GitHub to jde se spotřebou velmi rychle nahoru (navíc obsahuje různé otravné lazy loadingy apod.). Když potřebuju něco researchovat tak je to naprosto běžná záležitost. A potřebuju researchovat více témat naráz a mít to otevřené delší dobu, takže se to rychle nasčítá.

    Stávající lightweight browsery jsou napsané v memory unsafe jazycích a to mě prostě přijde u něčeho jako browser kterej se neustále střetává s potenciálně škodlivým vstupem jako zásadní nevýhoda a v dnešní době by žádný projekt neměl takovéto jazyky používat pro takové účely. Jasný, že tam třeba jsou nějaké drobné části kvůli interakci se systémem nebo optimalizaci, ale je značnej rozdíl mezi tím když je v tom napsanej celej browser nebo jen minimální nutná část.

    No a jak průbežně čtu mnoho let různé komentáře o tématice používání browserů tak rozhodně nejsem sám kdo by chtěl takovýto browser.
    12.5. 10:54 Petr
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    fixio.c: In function ‘native_path_get_files’: fixio.c:3335:46: error: passing argument 4 of ‘scandir’ from incompatible pointe r type [-Wincompatible-pointer-types] 3335 | cnt = scandir(dirname, &namelist, filter, compare); | ^~~~~~~ | | | int (*)(const void *, const void *)
    Gréta avatar 12.5. 11:12 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    už zkompilovaný to hele mužeš stahnout u nich na webu :O ;D

    13.5. 12:32 Petr
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    No to tedy nemuzu, protoze na macOS prdi, hlavne ze portuji na Haiku :-D
    Gréta avatar 13.5. 12:51 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    nóó menuje se to fixbrowser tak si ňák hele todlecto fixni :D ;D

    13.5. 15:05 Petr
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Prestal jsem cist pri pohledu na priponu *.c Kurna dyt je rok 2025 a Rust je stabilni uz celou petiletku, tak proc ta digitalni archeologie?
    13.5. 16:18 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Škoda, v README.md na GitHubu nebo při zjištění že tam jsou i jakési *.fix soubory kterých je většina bys zjistil že je napsán ve FixScriptu, v C je pouze implementace jazyka a nativní části knihoven.
    13.5. 23:01 _
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Neznal jsem, ale hned příklady z odkazu mi řekli co s tím :-)
    function main()
    {
        var arr = [10, 20, 30];
    
        // append to end:
        arr[] = 40;
        arr[] = 50;
    
        for (var i=0; i < length(arr); i++) {
            log(arr[i]);
        }
    }
    
    13.5. 23:08 _
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Abych jen neprudil, v čem je to lepší než lua?
    14.5. 09:14 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Takhle čistě z holého příkladu nedokážu určit co se ti konkrétně nelíbí. Lidi mají spoustu názorů a vkusů na programovací jazyky. Nicméně doporučuju ten blog post dočíst celej nebo alespoň proscrollovat na další příklady.

    Co se týče srovnání s Lua a tedy použití pro skriptování tak třeba tyto vlastnosti:
    • je tam důraz na neměnost základního jazyka (přičemž rozšíření se distribuují přímo se skriptama takže se klidně můžou měnit dle libosti) a podpora zpětné a dopředné kompatibility (takže můžeš docílit skripty co budou fungovat v libovolné verzi aplikace, nebudou zastarávat apod.)
    • podpora JITu už v základu, u Lua se musí používat LuaJIT ale ten používá starší verzi Lua
    • Céčková syntaxe a indexování od nuly vyhovuje více lidem (alespoň dle popularity takových jazyků) - v plánu je ale i podpora syntaxe na způsob Pythonu
    • umožnění přidání specifických syntaxí pro konkrétní účel aplikace
    • můžeš nastavit časový limit pro skripty nebo je aktualizovat za běhu
    • async mód kde při zavolání nativní funkce ze skriptu můžeš v provádění pokračovat zavoláním předané funkce až ve vhodný moment (např. když nastane nějaká událost) a nemusíš k tomu používat thready
    • drobnosti jako menší velikost implementace (pokud počítáme do úvahy JIT) a license co nevyžaduje atribuci
    14.5. 14:10 _
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Tohle je strašný arr[] = 40;. Celkově mi přijde, že ta syntaxe je hrozně nedodělaná. U embedovatelného skriptovacího jazyka očekávám minimalistický, ale kompletní seznam featur. Nepřijde mi úplně užitečné mít možnost syntaxi rozšiřovat (zvlášť, když se to píše v C).

    Nemáš nějaké benchmarky? Mě ty tvoje argumenty nepřesvědčili, např. LuaJIT je sice separátní projekt, ale zato pro víc platforem atd. Většina těch věcí je spíš věc názoru a vzhledem k lepšímu toolinga a více knihovnám pro Luu to moc přesvědčivě nevypadá.
    14.5. 15:49 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Syntaxe se rozšiřuje přímo ve FixScriptu. Prostě základní FixScript je minimalistickej a typovej systém a další věci jsou napsány v něm samotném (takové řešení má spoustu výhod).

    Nechápu rozhořčení nad nějakým detailem syntaxe, není jazyk kde by úplně vše vyhovovalo všem, navíc pokud ti to tak vadí tak není problém si to upravit pomocí vlastního token processoru. Ale úpřímně kdo by se zabejval modifikací takové nepodstatné blbosti.
    14.5. 21:53 _
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Ok a máš nějaký benchmarky? Pořád nechápu, proč je to lepší než lua.
    15.5. 19:21 kvr
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Takové řešení má výhodu, že si každý nad tím může napsat vlastní jazyk a nevýhodu, že si nad tím každý píše vlastní jazyk.

    IMHO jeden z hlavních problému Perl (jak jsem ho měl kdysi rád) - s minimalistickou syntaxí pro třídy, exception handling v důsledku vzniklo milion alternativ a celé Cpan je jako když pejsek s kočičkou vařili dort...
    15.5. 21:16 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    To je celkově problém těhle komunitních repozitářů, nemusí se ani jednat o úpravy syntaxe, stačí hromada knihoven na to samé, každá dělaná jiným stylem apod.

    Osobně mám radši silné standardní knihovny, např. na způsob Javy, kdy pro řadu programů ani není třeba šáhnout po externí knihovně. Prostě jít příkladem jak to dělat a nabídnout dostatečné množství funkcionality aby ta potřeba pro jiné řešení byla menší.

    Nicméně těma výhodama jsem u tý implementace tříd přímo ve FixScriptu myslel trošku jiné věci:
    • není třeba aby byla součástí základní implementace jazyka (tedy aby byla komplikovaně napsaná v Céčku)
    • jednodušší základní jazyk umožňuje jednoduší implementace kompilátorů a dalších nástrojů
    • zároveň se lépe dá dosáhnout úplnosti jazyka (a tím pádem silné podpory zpětné ale i dopředné kompatibility) - pokud by byl základ už s typama tak by se blbě pak měnily (a u typových systémů je vždy nějaký důvod aby se něco vylepšovalo)
    • implementace tříd poskytuje API, takže další token procesory můžou vhodně interaktovat s typovým systémem
    • lze mít souběžně více verzí kdy část projektu používá starší verzi a jiná novější a přitom spolu bez problému fungují - není tedy nutné při updatech vše překopat ale udělat to až když se to hodí, a nebo to tak klidně i nechat když by to byla zbytečná práce
    xkucf03 avatar 14.5. 21:33 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Na první pohled vidím jako pozitivní použití klasických závorek () {} [].
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    14.5. 23:04 _
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    jj, závorek je tam hodně :-)
    14.5. 06:45 Petr
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Zadna skoda. Podruhe jsem prestal cist pri length(hash) To fakt objekt nemuze mit metodu hash.length ale musi se to resit funkci nebo nedejboze klicovym slovem? A pak ze pry je to bezpecnejsi nez v C :-) V cem? Ze mas v interpreteru vic free nez alloc?

    Ve sve nenavisti k JavaScriptu jsi vytvoril jeho bratrance jmenem FixScript. Gratuluji.
    14.5. 08:54 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Tenhle syndrom okamžitého přestání čtení v momentě kdy se mi něco nelíbí by měl fakt dostat nějaké jméno, protože to začíná bejt už fakt absurdně komické :D

    Hned za tím máš další příklady a vysvětlení o čem to je. Ani si nemusel číst, stačilo jen lehce zascrollovat a viděl bys to. Ve zkratce o co jsi přišel:
    • jazyk je velmi flexibilní protože umožňuje přidávat libovolné syntaxe, určené zejména pro přidávání nových fičur, ale dá se použít i pro kompletní alternativní syntaxe
    • plánuje se podpora i jiných syntaxí jako je podobná Pythonu (protože ne každej má v oblibě Céčkovou syntaxi)
    • můžeš používat typový systém a třídy (což řeší ten tvůj "problém" s hash.length), pěknou vlastností je že je implementován přímo v samotném FixScriptu což má řadu výhod
    Je to docela jinej jazyk než JavaScript. Na titulní stránce máš v seznamu fičur ještě další věcí co umí.

    Navíc ja nemám nenávist vůči JavaScriptu jako jazyku ale jistej způsob tvorby webových stránek kdy se přehnaně používá klientské skriptování na věci na které nejsou vůbec potřeba (a je jedno jakým jazykem) a není to nenávist ale nevhodnost takového počínání které vede k naprosto neúměrnému používání prostředků na účel na který by stačilo zlomek (a minulost je toho důkazem že to jde).
    14.5. 09:19 x
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    14.5. 09:29 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    To je starej příspěvek kdy tam konkrétně ten .length nebyl čistě z důvodu toho že sem byl navyklej na length(), od té doby je to již implementované, protože je to lepší.
    Heron avatar 13.5. 18:27 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Stejně to mám s golangem. Stačí jeden main a všechno na cli binárky zvlášť. Už ani nečtu jiné zdrojáky.

    C/C++ se také hodí jen na malé projekty.
    xkucf03 avatar 14.5. 21:32 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše C/C++?
    C/C++? To jsou dost odlišné jazyky. Dá se sice říct, že C++ je víceméně nadmnožina C, ale programuje se v tom o dost jinak a každý z těch jazyků je špatný v něčem jiném :-) Přijde mi, že označení „C/C++“ je víc matoucí než k něčemu dobré.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    14.5. 23:02 _
    Rozbalit Rozbalit vše Re: C/C++?
    Z hlediska čitelnosti kódu to ale vychází nastejno.
    Heron avatar 15.5. 13:36 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++?
    C a C++ klidně taky. Nemám nic proti. Sice některé C++ zdrojáky jsou až extra komplikované (někdo se asi vyžívá v co nejdelších identifikátorech pro template, ale většinou dobré).

    C++ dokáže být velmi krásný, když to někdo umí. automatické typování je skvělé.

    Mě spíš někdy zaráží, že ke komplikovanému kódu tam není ani slovo dokumentace. Kdyby tam byly proměnné x, y, z a vedle v dokumentaci význam, tak je to pořád lepší než naopak.
    Heron avatar 15.5. 13:37 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++?
    A obecně ke všem jazykům, někdy hlavně nechápu počet externích knihoven. Ve standardní dokumentaci je skoro vše.
    xkucf03 avatar 15.5. 14:08 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Ano, tohle mi taky vadí, proto Sane dependencies nebo články o komplexitě softwaru, kde jsem psal:
    Neměli bychom zapomínat na to, že samotný vyšší programovací jazyk (např. Java nebo PHP) spolu se svojí standardní knihovnou jsou samy o sobě frameworkem, stejně jako je frameworkem UNIX (resp. dnes převážně GNU/Linux) a že poskytují víc než dostatečnou úroveň abstrakce pro vývoj mnoha aplikací. Přidání jakékoli vrstvy nad ně bychom neměli vnímat jako samozřejmost a měli bychom toto rozhodnutí mít vždy dobře zdůvodněné a podložené.
    Je to o hledání nějaké rovnováhy – na jednu stranu chceš znovupoužitelnost a nevynalézat pořád kolo nebo kopírovat kód a na druhou stranu se nechceš utopit v hromadách (přímých a tranzitivních) závislostí. Proslulý je tím zejména webový frontend a JavaSript, kde se v rámci buildu stáhne a přibalí půlka internetu. Bohužel se tenhle trend dostal i do Javy, kde aplikace postavené nad Springem psané „moderně“ dělají totéž. Když se pak autorů zeptáš, proč je tam přibalená ta či ona knihovna a k čemu ji používají, tak většinou neví.

    Ve světě Javy EE / Jakarty je od toho člověk odstíněn a píše proti standardu. A o tu implementaci (nalezení fungující kombinace různých knihoven) se starají autoři aplikačního serveru. Ve světě OSGi taky aspoň nebalíš ty knihovny ke své aplikaci a jen deklaruješ závislosti tzn. nedodáváš stovky megabajtů velká JARka jako u Springu, ale jen třeba desítky nebo stovky kilobajtů svého modulu.

    Někdy závidím kolegům, kteří píší primárně PL/SQL nad Oraclem. Jazyk je to sice dost zastaralý a nepohodlný (myslím PL/SQL, ne SQL), ale skvělé na tom je, že se tam běžně nepoužívají žádné dodatečné knihovny – máš prostě jen standardní knihovnu / běhové prostředí, a to ti stačí k tomu, abys napsal aplikaci, vytvořil systém, který něco netriviálního a užitečného dělá.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Heron avatar 15.5. 15:13 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Ono tohle se vždy ukáže při kompilaci zdrojáku. Si často říkám, že tam udělám automatický checker a každý projekt, který bude mít více než 50řádků errors nebo warnings půjde automaticky na trvalý a zcela neodstranitelný globální blacklist. Jako to fakt nikomu nevadí že jen blbá samba má asi 5000 tisíc řádků chyb při kompilaci? Už jen jenom z tohoto důvodu sambu nikde doma nemám.
    15.5. 15:20 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti

    A čo ty si spravil pre slovenský hip-hop?

    Kolik peněz si zaplatil, nebo kolik času věnoval na odstranění těch warningů?!

    Každý má právo na můj názor!
    Heron avatar 15.5. 15:22 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Kromě toho že jsem o tom naspal několik rozsáhlých českých článků? Tohle není pomoc?
    15.5. 15:37 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti

    Tak lidí, co píšou co by se mělo dělat, těch má samozřejmě většina opensource projektů dost (až přebytek, řekl bych), problém jenom je, že žádný takový článek ještě sám o sobě neopravil jeden jediný řádek v žádném projektu...

    Každý má právo na můj názor!
    Heron avatar 15.5. 15:25 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    A ono mimochodem, já rád pošlu svůj pull request komukoliv, kdo se umí rozhodnout ve kterém programovacím jazyku chce psát. Samba, která potřebuje python, c++, lua a pro jistotu všechny další jazyky ode mne dostane vždy patch delete repository. Na tohle jim jsem ochoten poslat klidně i jeden dolar.
    Heron avatar 15.5. 15:28 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Až přijdu domů, tak se bsd serveru dopředu omluvím a potom na tom pustím kompilaci samba-full jen ze srandy sem pošlu | grep warirnigs | wc -l. :-D

    A potom to FreeBSD nainstaluju znovu, protože už jen mazat ty "temporary" balíčky trvá déle.
    xkucf03 avatar 15.5. 15:49 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Samba je svobodná náhrada proprietárních serverů od Microsoftu. V těch bude taky hromada hnoje, akorát to nevidíš. Samba je ale svobodný software, takže máš možnost to opravit (nebo zaplatit někomu, aby to opravil).
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    15.5. 15:04 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: C/C++?
    A obecně ke všem jazykům, někdy hlavně nechápu počet externích knihoven.

    Hele, já bych taky pověsil každého, kdo do projektu zatáhne Google protocol buffers (to by se mělo na školách ukazovat jako exemplární příklad jak se nemá dělat SW) za koule do průvanu, ale nechápu, co je na té explozi externích knihoven k nepochopení. Důvod je zcela triviální - běžný programátor je prostě jenom líný/neschopný si danou funkcionalitu napsat sám, tak prosté to je. Když k tomu přidáš existenci balíčkových manažerů, kde získat danou funkcionalitu je otázkou doslova jednoho jediného řádku nebo v horším případě Dockeru (to pro ty nešťastné jazyky/platformy, kde to o jednom řádku není), do kterého se celý ten build bordel zabalí, tak proč by si někdo měl komplikovat život nějakým přemýšlením a prací?!

    Každý má právo na můj názor!
    Heron avatar 15.5. 15:21 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: C/C++?
    +1
    xkucf03 avatar 15.5. 15:25 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    nechápu, co je na té explozi externích knihoven k nepochopení. Důvod je zcela triviální - běžný programátor je prostě jenom líný/neschopný si danou funkcionalitu napsat sám, tak prosté to je
    Nemyslím si, že by za tím byla až tak neschopnost to napsat (to může být spíš druhotné – když to lidi nedělají, ztrácejí v tom praxi a následně i tu schopnost). Spíš si myslím, že je to důsledek toho, jak se tu šířily názory, že kopírovat kód je špatné (to jakž takž pravda je) a dělají to jen lemplové a znovuvynalézat kolo bude jen blbec, zatímco profesionál použije hotové řešení napsané někým jiným (lépe). Tohle jsem slýchal na SŠ i VŠ a vycházely o tom hromady článků… Tyhle názory mají nějaký reálný základ. Ale když se to v praxi dovede do extrému a překroutí, tak to dopadá, jak to dopadá. Pak se lidi kolikrát bojí napsat i triviální vlastní kód a radši přidají několik knihoven a přidělají si tím víc problémů než jich ušetří.

    Taky to stojí na předpokladu, že tam venku je nějaký bájný super-programátor, který nám napíše všechny potřebné knihovny (a my je jen poslepujeme dohromady). Jasně, jsou třeba vysoce optimalizované kodeky, šifrovací knihovny, části operačních systémů atd. které píší nadstandardně schopní programátoři. Ale většinu knihoven píší běžní lidé, průměrní programátoři (byť mohou pracovat v nějaké velké a známé firmě). A běžně se ti může stát i to, že najednou zjistíš, že „opisuješ písemku od hloupějšího spolužáka“ a že bys udělal lépe, kdyby ses spoléhal sám na sebe.
    Když k tomu přidáš existenci balíčkových manažerů, kde získat danou funkcionalitu je otázkou doslova jednoho jediného řádku nebo v horším případě Dockeru (to pro ty nešťastné jazyky/platformy, kde to o jednom řádku není), do kterého se celý ten build bordel zabalí, tak proč by si někdo měl komplikovat život nějakým přemýšlením a prací?!
    S tímhle souhlasím. Dřív bylo přidávání dalších knihoven pracné, což je na jednu stranu nevýhoda, ale na druhou stranu to fungovalo jako přirozená brzda – autor si lépe rozmyslel, jestli danou knihovnu potřebuje a jestli mu to stojí za tu námahu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    17.5. 14:18 podlesh
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Ale většinu knihoven píší běžní lidé, průměrní programátoři (byť mohou pracovat v nějaké velké a známé firmě). A běžně se ti může stát i to, že najednou zjistíš, že „opisuješ písemku od hloupějšího spolužáka“ a že bys udělal lépe, kdyby ses spoléhal sám na sebe.
    Problém není v tom kód napsat, to je ta nejlehčí část. Problém je v tom kód otestovat a opravit bugy.

    Široce používaná knihovna je testována v praxi a chyby se opravují.

    Samozřejmě musí tomu tak skutečně být, a proto je nutné knihovny dobře vybírat.
    tak proč by si někdo měl komplikovat život nějakým přemýšlením a prací?!
    S tímhle přístupem si člověk nevybere a do průseru spadne tak jako tak.
    17.5. 17:04 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: C/C++? + komplexita softwaru, závislosti
    Široce používaná knihovna je testována v praxi a chyby se opravují. Samozřejmě musí tomu tak skutečně být, a proto je nutné knihovny dobře vybírat.

    Bohužel opravdu ne vždy platí, že "široce používaná knihovna" = "chyby se opravují". A je to ten zásadní kámen úrazu toho přístupu: "nic vlastního, všechno z cizích knihoven". Jako příklad třeba (lib)VLC, který jsme v práci použili pro jednoduchý přehrávač videí z našeho HW, protože vlastní video framework si na tohle fakt psát nechceš. Jenomže se brzo ukáže, že tam nefunguje výběr video formátu a co hůř, YUV 4:2:2, který náš HW kromě RGB32 používá, má výrazně degradovaný výstup. I když si to sám opravím, tak to půl roku čeká než se to možná dostane k uživateům, to druhé ani neopravím, protože to je jednak mimo mé schopnosti a beztak by do legacy kódu takovou velkou změnu nikdo nepřijal. Jasně jsou to Francouzi a to, že už 4 roky jedou vývoj verze, kterou ale nikdo venku nemá je dost "Francouzskej přístup", ale podobný WTF momenty můžou přijít s jakýmkoliv jiným 3rd party kódem. A neuděláš nic.

    Na druhou stranu, těžko můžeš někomu říct, že vývoj jednoduchého prohlížeče, který má být za měsíc hotový začneš tím, že si rok budeš psát vlastní video framework... A to jsem ještě nezmínil, že libVLC už vyhrálo "výběrové řízení", protože alternativy (Gstreamer, Qt Multimedia), které by přicházely v úvahu - Linux/Windows, nahrávání do H264, screenshoty - dopadly ještě hůř...

    Každý má právo na můj názor!
    xkucf03 avatar 17.5. 19:15 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše multimediální framewor, ffmpeg
    A samotný ffmpeg jste nezvažovali? Já si nad tím nedávno zkoušel něco napsat a přišlo mi to dobré. Hodně nízkoúrovňové tedy, vlastně jen tenká abstrakce nad jednotlivými kodeky, ale snad funkční.

    P.S. Jinak mi přijde, že je někdy dost problém se synchronizací videa a zvuku…
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    17.5. 22:20 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: multimediální framewor, ffmpeg
    Ne, ale měl jsem... Tenkrát mi to na první pohled přišlo zbytečně low-level na to co jsme od toho chtěli, ale dost lidí mi od té doby tvrdilo, že na rozdíl od gstreameru/libVLC "prostě funguje". Ale to funguje všechno, dokud to sám nezačněš používat ;-)
    Každý má právo na můj názor!
    15.5. 14:48 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    C/C++ se také hodí jen na malé projekty.

    V jaké realitě žiješ? Když pominu fakt, že C/C++ je jenom "undefined behavior" ;-) tak v C nebo C++ je napsaná drtivá většina největších SW projektů ve známém vesmíru, namátkou:

    • Linux
    • Windows
    • FreeBSD
    • GCC
    • clang/llvm
    • MS Office
    • OpenOffice
    • Adobe Photoshop
    • Google Chromium
    • Firefox
    • ...

    a to se ještě radši nepouštim do oblasti AAA her, protože tam netušim, kolik % jsou tam enginy a kolik procent nascriptované herní děje... Mám to chápat tak, že všichni to desetiletí dělají blbě, jenom Heron ví, co je pro jejich obří projekty dobré?!

    Každý má právo na můj názor!
    Heron avatar 15.5. 15:07 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    V reálné. To že je v tom napsané úplně všechno mi nějak neuniklo, ale proč je 100000% her psaných právě v C/++ je mi trochu záhadou. Ono nebude zrovna náhodou, že každý druhý placený yt kanál je jen reklama na školení C++. Ano, za pouhou miliardu za sekundu vás naučíme naspat blikající čtvereček :-D
    15.5. 15:14 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    A varianta, že je to proto, že je prostě C++ pro velké projekty zkrátka ten nejvhodnější jazyk, ta tě nenapadla?! Princip Occamovy břitvy už se dnešní fyzikové neučí?!
    Každý má právo na můj názor!
    Heron avatar 15.5. 15:19 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Nee :-D

    Viz výše. Pokud hra nejde nezkopilovat a nejde nezapnout (což je všechno od ID a EPIC), tak ok. Ale proč při kompilaci Hello World je warnig fakt nechápu. A hlavně vůbec ne, jak to může projít automatickými checkery. To je opravdu takový problém jako správce balíčků nastavit stop on first error a vůbec nikdy ten deb/rpm nevytvořit? Tohle je snad automatické defaultní nastavení.
    15.5. 15:29 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    Jako že lidem řekneš: "Chtěli jsme vám dát skvělý operační systém, ale protože už jenom v kernelu je pár warningů, tak my řekli ne!"?!

    Uživatele fakt nezajímá, nějaká "technická čistota", jeho zajímá, jestli ten SW řeší jeho problém. Což je mimochodem ten zásadní problém i toho projektu pod kterým tady "diskutujeme", protože jeho potenciální uživatele taky opravdu nezajímá, že je to napsané v nějakém cool samodomo interpretru (který se "skládá" z jediného 25k řádkového C souboru...), ale že to není schopné korektně vyrenderovat ani to, co dokázal links už v roce 1999....

    Každý má právo na můj názor!
    xkucf03 avatar 15.5. 16:00 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Hry, specifika, C++
    Hry byly vždycky o tom, vyždímat z hardwaru dostupného v dané době maximální výkon. A to i za cenu kompromisů, že kódu bude víc, nebude tak hezký a napsaný dle nejlepších praktik a doporučení (platných pro běžné aplikace), nebude tak čitelný a možná v něm budou i nějaké chyby. Třeba u zdravotnického softwaru, kde jde o život, je snaha chybám maximálně předcházet. Naopak u těch her je nějaké přijatelné riziko chybovosti, které autoři a hráči podstoupí, aby měli nejlepší grafiku své doby.

    Dneska je nějaká šance, že by tyhle věci šlo psát v Rustu a skloubit výkon i bezpečnost (ale zase za cenu jiných kompromisů). Ale dřív v podstatě jiná možnost než C a C++ nebyla (dříve ještě Assembler) a C je tak omezené, že to autoři radši psali v C++.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    xkucf03 avatar 14.5. 21:25 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Vždyť je taky lepší než MacOS. A kdyby nebyl před lety někdo moc chamtivý, tak bys na tom svém Applu měl dneska dost možná BeOS.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    12.5. 15:24 Martin Dvořák | skóre: 8 | blog: jezek2
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    Jo tohle plánuju už dlouho pořešit, problém je že na každý platformě jsou ty typy trochu jinak takže budu asi muset udělat nějaký hrozný #ifdefiště.

    Mezitím můžeš vyhodit -Wall z compile.sh nebo tam dát ten parametr co to vypisuje, ten to myslím specificky vypíná tuhle kontrolu.
    regine2 avatar 13.5. 15:06 regine2 | skóre: 14
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    Zkusil jsem srovnat s Links_2. Links_2 zatím lepší.

    Haiku - Hmm, pokračování 90. let BeOS. Na svou dobu násobně lepší jak produkty Microsoft. Já užíval výborný OS2/Warp, předražený OS od IBM, který nakonec zachraňovali i darováním instalaček pro domácí užití (36 disket s CZ?).

    Dokud nepřiletí mimozemšťané, všechno už jaksi bylo.
    15.5. 18:23 ---
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    mistni velmistr Want rikal, ze je to k nicemu, tak proc v tom pokracujes? :-D

    a ne, vubec se na tebe nebude nikdo zlobit, kdyz ho posles nahlas a poradne do prdele, misto nechani bez reakce :-D

    ono to je s nim tak totiz celou dobu, nikdo mu nic nerekne, jenom par anonymu - a kdyz ho dalsi linej vysavac statniho rozpoctu, Heron, pochvali, tak z toho ma Want boner jeste 3 mesice, vsechno v pohode, nic na sobe nemusi menit, dalsi nula mu potvrdila ze je to s nim ok :D... takze kdyz mu to rekne i nekdo, kdo neni anonymni, jedine dobre ;)
    15.5. 19:27 Want
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    Velmistr o tom neřekl ani ň, tak drž pec a nelži.

    A do prdele zmiz laskavě sám.

    15.5. 21:53 ---
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3
    velmistr sam v akci

    na tomhle je dobry, ze je v tom krasne videt tvuj styl, jak v odkazovanem, tak tady v tom ublitku, na co prave reaguju - takze se z toho nevykroutis :-D
    16.5. 06:11 Want
    Rozbalit Rozbalit vše Re: FixBrowser/FixProxy 0.3

    Ty jsi fakt blbý jak necky. Nevíš co je faktická poznámka a neumíš ani zkopírovat link.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.