Início Tecnologia Css Merece Respeito: A Linguagem De Programação Que O Mundo Subestima
Tecnologia

Css Merece Respeito: A Linguagem De Programação Que O Mundo Subestima

Share
Fonte: Feed: All Latest
Share

O primeiro S de CSS significa "estilo". Pense em cores e fontes, bordas e sombras, linhas e colunas, animações e transições. CSS é a linguagem de marcação que torna um site bonito (ou bastante feio, muitas vezes). É o que faz esta página parecer exatamente como ela é — parecer WIRED.

Com um parágrafo já escrito, algum leitor vai estar irritado com minha descrição de CSS. "É uma linguagem de folhas de estilo", posso ouvi-los dizer, "não uma linguagem de programação." (O segundo S, de fato, significa "folhas", e o C, para quem se importa, significa "em cascata".) Ou então: "É uma linguagem específica de domínio, não uma linguagem de propósito geral." Também: "Ela não executa" e, claro, "não é Turing-completa" (embora…). Concedido, CSS é um pouco diferente. Não há etapa de compilação, e não lança erros em tempo de execução como outras linguagens. Mas tudo isso está fora de propósito.

A perseguição sobre se CSS é uma linguagem de programação "real" existe parcialmente porque é tão simples de começar — qualquer pessoa pode entender "background: vermelho" imediatamente. Mas simples não significa fácil, como observou o escritor e programador Jeremy Keith, e chamar CSS de fácil ou irrelevante deveria estar ultrapassado há muito tempo. Havia cerca de 50 propriedades na especificação inicial de CSS em 1996 (como "color" e "font-size"); hoje existem pelo menos 10 vezes mais (prepar-se para "hanging-punctuation"). A linguagem mudou tanto em três décadas, e agora ela é simplesmente muito capaz. Um programador recentemente recriou Doom em CSS. Outros a usaram para criar cards holográficos de Pokémon e motores de renderização 3D. Cassidy Williams, que competiu no primeiro torneio March MadCSS deste ano, construiu um motor experimental de consulta a banco de dados inteiramente em CSS. Quando ela o apresentou na Microsoft Build, até os apresentadores — programadores experientes eles mesmos — fizeram um comentário depreciativo sobre CSS. "Você é uma das pessoas que gosta disso", provocaram. "Você pode ser a única."

Por que a história da criação de JavaScript é tão famosa (Brendan Eich, Netscape, 10 dias) e no entanto quase nenhum programador reconheceria o nome do criador de CSS Håkon Wium Lie? Isso pode ter algo a ver com Lie sendo um norueguês com um caractere especial no nome, não um americano no Vale do Silício como Eich nem um britânico como Tim Berners-Lee, que inventou HTML. E para ser justo, JavaScript e HTML cada um têm seu próprio orgulho para se preocupar. Mas na santa trindade do navegador JavaScript-HTML-CSS, as pessoas tendem a tratar CSS como inferior ou puramente decorativa. A estilização pode ser decorativa — e maravilhosamente assim — mas a legibilidade e o design rico que ela proporciona são importantes. As pessoas se importam com a aparência das coisas!

Há outra explicação mais feia para o desrespeito ao CSS: É considerada uma linguagem "feminina". Desenvolvedores de CSS trabalham no frontend — a parte de um site que você pode realmente ver. Há a insinuação óbvia de que lidar com estilo e beleza é Trabalho Feminino, junto com a piada reciclada de que um desenvolvedor CSS é "um freak nas folhas de estilo". O quão seriamente uma linguagem é tratada tem efeitos colaterais nos salários dos programadores, quais habilidades são procuradas e testadas em entrevistas de emprego, e quão acessíveis são os sites para pessoas com deficiência.

Recentemente conversei com uma amiga, uma talentosa engenheira de backend, sobre isso. Na faculdade, ela conseguiu um estágio em uma respeitada empresa de software em São Francisco fazendo trabalho inteiramente de backend. "Nunca expressei interesse em frontend, quase de forma extrema", ela me contou. "Não gosto de frontend." E no entanto, quando ela entrou na empresa em tempo integral após a formatura, foi imediatamente designada… uma função de frontend. Ela eventualmente conseguiu voltar para o backend, e agora está acostumada com o ceticismo. "Já participei de inúmeras conversas com o clássico engenheiro homem que não acha que eu sei do que estou falando até trabalharem comigo por seis meses e ver meu primeiro projeto de backend."

Eu não conhecia essa história específica quando perguntei pela primeira vez à minha amiga se, talvez, ela tivesse alguma experiência com pessoas assumindo que ela era uma "menina do CSS". Mas a "coincidência" é realmente mais uma probabilidade. Para corrigir excessivamente tais situações, ela passou a se apresentar de forma inconfundivelmente backend. Quando trabalhamos juntos, sempre que chegava a hora de distribuir tarefas entre nossa equipe, ela deixava bem claro que não queria mexer com o frontend. (Não acho que já tenhamos jogado Nose Goes, mas era esse o espírito.) Eu teria sido totalmente obtuso em cometer o mesmo erro que o gerente dela cometeu.

Essa mesma amiga costumava lecionar na Kode With Klossy, um acampamento de tecnologia para jovens mulheres e estudantes de gênero expansivo fundado pela supermodelo Karlie Kloss. Sua experiência lá era sobre o outro lado, otimista da moeda: CSS pode ser uma porta de entrada para o software para aqueles que não se encaixam no estereótipo do nerd menino de computador. "Essas garotas chegavam sem nenhum interesse em programação, mas que achavam a Karlie Kloss legal, e elas se divertiam tanto", disse ela. "Elas passavam a se importar mais com, tipo, OK, como isso funciona?"

Dentro da indústria, a abordagem da Klossy se reflete em uma diversidade de gênero ligeiramente melhor (mas ainda muito ruim) em cargos de engenharia de frontend, comparada a funções de backend e papéis puramente de backend. De alguns milhares de respondentes na pesquisa State of CSS no ano passado, 11 por cento eram mulheres e 3 por cento eram não-binários ou gênero não-conforme. Patético, eu sei. Mas o State of JavaScript reportou apenas 6 por cento feminino e 1 por cento não-binário.

Outra consequência downstream da negligência com CSS é a semelhança dos sites em toda a internet, especialmente na Terra das Startups. Se CSS é o que faz um site parecer a si mesmo, então a moda mais recente de frameworks é o que os faz parecer todos iguais. Houve uma era Bootstrap, um visual Tailwind, e agora uma estética Claudeslop distintiva. Frameworks são vestuário esportivo, e se você não é ligado em moda, eles são um atalho para parecer OK. Justo. Mas isso me entristece, da mesma forma que a acinzentação dos carros americanos me entristece quando comparada àquelas velhas fotos de estacionamentos multicoloridos.

A WIRED foi um dos primeiros grandes sites de alto tráfego a adotar CSS. Era um "Site Para Seus Olhos", declarou a WIRED, e era. Mas naquela época, não havia Flexbox nem Grid, nem propriedades personalizadas, nem @keyframes, transições e transformações para animações sem JavaScript. Nesta década sozinha, tantas funcionalidades poderosas de CSS chegaram aos navegadores que é difícil acompanhar. Não sou especialista em CSS, mas sei o suficiente para estar além do penhasco de excesso de confiança na curva de Dunning-Kruger e no vale do respeito e reverência. Eu me deleito com pequenas preciosidades como "text-wrap: pretty" (que impede uma palavra órfã presa em sua própria linha de terminar um parágrafo) tanto quanto melhorias amplas como declarações aninhadas. Só nos últimos anos, obtivemos container queries, a pseudo-classe :has() e novos espaços de cores como oklch(). CSS suporta idiomas da direita para a esquerda, como hebraico e árabe. Ele interpola o posicionamento dos pedaços de uma página web para criar animações e gradientes suaves. E agora, com condicionais if() e @function em desenvolvimento, até as explicações "bem, tecnicamente falando" de por que CSS não é uma linguagem de programação legítima podem finalmente ser deixadas de lado. Este não é o CSS da sua mãe.

O fato de CSS ser simples de começar, mas profundo para explorar e dominar, é parte do motivo pelo qual eu a amo tanto. É a linguagem mais próxima que temos de programação para usuário final, a ideia de que software deve ser personalizável por qualquer usuário. Folhas de estilo são como planilhas eletrônicas desse jeito: um iniciante pode construir algo útil em uma hora, e especialistas podem construir um maldito Doom.

Fonte: Feed: All Latest

Share
Artigos relacionados
Tecnologia

Empresa texana fecha contrato milionário para fornecer energia a centro de dados no Oeste do Texas

A Kodiak Gas Services, companhia sediada nos arredores de Houston, no Texas,...

Tecnologia

LG desenvolve sistema inovador de resfriamento a ar para centros de dados de inteligência artificial

A gigante sul-coreana LG anunciou o lançamento de um sistema de resfriamento...

Tecnologia

Por que o cooler do seu notebook faz tanto barulho? Entenda quando se preocupar

Se você possui um notebook para jogos ou utiliza o equipamento para...

Tecnologia

Desconectar o computador durante blecautes pode evitar danos irreversíveis aos equipamentos

Apagões geralmente surgem sem aviso prévio, e quando isso acontece, a maioria...