• 1 Post
  • 342 Comments
Joined 1 year ago
cake
Cake day: June 23rd, 2024

help-circle








  • A HW manufacturer (aka OEM) will share specs and interfaces with the GrapheneOS team, who will develop an official port for the hardware, with support and everything. The OEM will allow bootloader unlocking and maybe even ship some of these phones with Graphene preinstalled, depending on what their contract with Google allows. To this day, only Pixels have officially received GrapheneOS releases because Google has documented their hardware interfaces in AOSP. Now, AOSP is no longer developed with the Pixel as a target but a virtual device, putting the future of GrapheneOS on Pixels into question (the team refuses to use reverse-engineered hardware interfaces, as they could result in bugs: for example, many Samsung cameras only expose a 16:9 section of the 4:3 sensor in the open Camera2 API; other frequent issues with custom ROMs include VoLTE, Play Integrity and bootloader relocking).




  • I found a random PHP file online and recreated your trauma:

    <?phpcz
    jmennýprostor Itb;
    
    
    třída OvladačUživatele
    {
        soukromá §větev;
    
        veřejná funkce akcePřihlašovacíhoFormuláře()
        {
            §poleParametrů = [
                'názevStránky' => 'Přihlašovací formulář',
            ];
            §vzor = 'domov.html.větev';
    
            §html = §toto->větev->vykresli(§vzor, §poleParametrů);
            vypiš §html;
        }
    
    
        veřejná funkce zpracujPřihlašovacíAkci(§uživatelskéJméno, §heslo)
        {
            když(§toto->platnéÚdajeSprávce(§uživatelskéJméno, §heslo)) {
                §_SEZENÍ['uživatelskéJméno'] = §uživatelskéJméno;
                §poleParametrů = [
                    'názevStránky' => 'Vzorový formulář',
                ];
                §vzor = 'domov.html.větev';
    
                §html = §toto->větev->vykresli(§vzor, §poleParametrů);
                vypiš §html;
            } jinak {
                §poleParametrů = [
                    'názevStránky' => 'Formulář chyby přihlašování',
                ];
                §vzor = 'chybaPřihlášení.html.větev';
    
                §html = §toto->větev->vykresli(§vzor, §poleParametrů);
                vypiš §html;
            }
        }
    
        soukromá funkce platnéÚdajeSprávce(§j, §h)
        {
            když('admin' == §j && 'admin' == §h){
                vrať pravda;
            }
            jinak když('staff' == §j && 'staff' == §h){
                vrať pravda;
            } jinak {
                vrať nepravda;
            }
        }
    
        veřejná funkce jePřihlášen()
        {
            když(jenastaveno(§_SEZENÍ['uživatelskéJméno'])){
                vrať pravda;
            } jinak {
                vrať nepravda;
            }
        }
    
        veřejná funkce uživatelskéJménoZSezení()
        {
            když(jenastaveno(§_SEZENÍ['uživatelskéJméno'])){
                vrať §_SEZENÍ['uživatelskéJméno'];
            } jinak {
                vrať '';
            }
        }
    
    }
    

    Is this what it looked like? (I also took the liberty of replacing $ with § because of the Czech keyboard layout; FYI: yes we do have a $ available as AltGr+ů but § is in the base layer; I would also replace the backtick/grève `, which is obtained by pressing AltGr+š once or twice (OS-dependent), with °).

    Edit: BTW my first code was in the “Imagine” program, a Logo IDE with Czech localization (including syntax: do, vz, vp, vl, puntík, smaž, domů, příkaz, konec, piš etc.). The documentation was piss-poor, I never learnt if it had arrays or code comments. The textbook I had didn’t even mention variables, I only learned about them in a short PDF guide I found online. Before that, I would use pixels on the canvas as variables.

    Had my 10yo self received a Python runtime instead, I wouldn’t be stimied by the “you don’t need to pass arguments if every variable is global” mindset I’m still struggling to overcome. I found programming challenges online and was able to solve most theoretical ones, but Imagine was too limited to implement all but the basic practical ones, not to mention that it ran way slower than Python would. I was convinced that the lack of speed was mostly the hardware’s fault and that I would need a low-level language like C++ to solve the 1000×1000 inputs in some puzzles. I got in touch with the challenge authors and they suggested Eclipse but I couldn’t get it to work. I was too overwhelmed by the English interface and documentation and barely knew what a compiler was. I learnt decent English soon after but the fear of IDEs stayed, and eventually I turned towards electronics instead.





  • There is a shitty 2007 TV movie by ČT Studio Brno (at this point, “shitty” is redundant) Kája a Zabi, where the protagonist, little boy Kája, mashes his keyboard in frustration, causing an off-brand Lara Croft to appear IRL. I haven’t seen the movie but she allegedly speaks broken Czech in a weirdly modulated voice, and keeps asking who Kája wants her to kill (“zabít”, hence the nickname she gets). I assume she is just about as psychopathic as Lara.