SOFTWARE PODE ESTAR ‘COMENDO’ O MUNDO, MAS SOFTWARE DE LOW-CODE PODE ‘COMER’ SOFTWARE TRADICIONAL?!

29 de março de 2023 Off Por Priscila Noronha
Se o software está comendo o mundo, então o software de low-code está comendo software?

Este artigo apareceu recentemente no VentureBeat, e foi escrito por Tarun Khatru (o cofundador, diretor executivo e chefe da prática Appian em Xebia). Embora a definição de low-code e ‘código alto’, e as limitações de aplicação que Tarun usa também descrevem aplicações de low-code podem não ser inteiramente precisas, o núcleo deste artigo é muito interessante: o low-code vai comer (partes) o desenvolvimento de software tradicional?

Marc Andreesen afirmou, famoso em 2011, que “software está comendo o mundo” em um artigo op-ed no Wall Street Journal.

Seu argumento era que o software era o novo mecanismo de criação de valor.

“Minha própria teoria é que estamos no meio de uma dramática e ampla mudança tecnológica e econômica, na qual as empresas de software estão prontas para assumir grandes faixas da economia”, escreveu Andreesen.

O artigo detalha uma variedade de exemplos nos quais empresas digitais, como Netflix, Amazon, Apple e Spotify, alcançaram uma posição dominante alimentada por software e produtos digitais. O artigo define software de forma bastante vaga, afirmando que as empresas utilizam software para comercializar bens digitais e expandir drasticamente o uso de dados e automação são as novas vencedoras.

Andreesen estava certo. As empresas que utilizam software têm e estão comendo o mundo. No entanto, sua análise se concentra nas grandes empresas que conquistam vitórias consideráveis com software em escala industrial. O software que ele aponta que comeu o mundo foi um produto de equipes de engenharia de elite e camadas sobre camadas de plataformas complexas.

Em minha opinião, estamos entrando em uma nova era na qual o software continuará a comer o mundo, mas de uma forma muito mais ampla e mais distribuída. Não serão apenas as empresas mais famosas ou maiores que alcançarão vitórias digitais. Descobriremos que, em quase todos os negócios, o uso de software vai crescer para aumentar a eficiência, trazer nova consciência e expandir a automação.

Isto nunca acontecerá se este software só puder ser criado por equipes de engenharia de elite.

A maneira como o software vai comer o resto do mundo será através de métodos de low-code e no-code, mas isso não é tudo. Muito do software que Andreesen aponta como tendo comido o mundo será comido por métodos de low-code.

Em resumo, se o software está comendo o mundo, então o software de low-code está comendo software.

Vamos rever o que exatamente quero dizer e explicar por que isto está acontecendo.

NOÇÕES BÁSICAS DE LOW-CODE
Low-code torna o processo de criação de aplicações muito mais fácil. É importante lembrar que os modernos sistemas de low-code são apenas o modelo desta era para a aplicação inteligente dos conceitos centrais da ciência da computação.

Se você está há algum tempo no mundo do software empresarial e da ciência da computação, sabe que a ideia de uma codificação simplificada que tome conta do mundo do desenvolvimento de software não é nova. Linguagens específicas de domínio são uma forma desta ideia. O SAP criou a ABAP e a Salesforce inventou a Apex como linguagens específicas de domínio para facilitar a codificação de suas aplicações e separá-las dos detalhes de implementação subjacentes. Há muito tempo, assim como as linguagens de quarta geração. Indo ainda mais longe, podemos apontar o RPG da IBM como uma forma de low-code.

Low-code, em termos simples, é a capacidade de construir e automatizar aplicações de um determinado tipo rapidamente. Nenhum código é a capacidade de customizar uma aplicação puramente através de configurações.


O “código” no termo low-code é a chave para entender seu poder. Ao contrário de uma linguagem tradicional de código alto como Java ou Python ou C, na qual você pode codificar quase tudo o que quiser, em um mundo de low-code, o código existe para fornecer apenas a capacidade suficiente para adaptar uma aplicação de um determinado tipo.

O “low” no termo sugere que a quantidade de codificação para adaptar uma aplicação deve ser pequena em comparação com a quantidade de código necessária para implementar a aplicação de uma forma de código alto. O “low” também significa simplicidade, é mais fácil usar métodos de low-code.

A parte “de um certo tipo” da definição também é importante. Os sistemas de desenvolvimento de low-code não são construídos para fazer nada. Os ambientes de desenvolvimento de low-code se concentram em tipos específicos de aplicações e fornecem blocos de construção que fazem grande parte do trabalho para implementar esse tipo de aplicação.

Uma vez criadas as aplicações de low-code, elas podem ser alteradas e adaptadas aos requisitos em constante evolução mais rapidamente do que os métodos de alto código. As aplicações de low-code também exigem menos manutenção, o que significa um menor endividamento técnico. As modernas aplicações de low-code criadas utilizando plataformas de empresas como Appian são comprovadamente de grau empresarial em termos de escalabilidade, confiabilidade e desempenho.

Há um tradeoff. As aplicações de low-code estão focadas na criação de tipos específicos de aplicações. Quando uma plataforma de low-code corresponde às suas necessidades, então um número muito maior de pessoas pode participar na criação, manutenção e evolução das aplicações. É daqui que vem a grande vitória, um tópico ao qual voltarei em um minuto.

A EXPANSÃO DOS SERVIÇOS CRIA UMA ALAVANCAGEM
As plataformas de desenvolvimento de low-code são mais relevantes e poderosas do que nunca porque vivemos em um mundo cheio de abstrações e serviços. O low-code nos permite acessar serviços e criar novas aplicações com muito menos esforço.

As mais avançadas plataformas de desenvolvimento de low-code têm uma pilha completa de capacidades necessárias para a criação de aplicações empresariais. Por exemplo, a maioria das plataformas de desenvolvimento de low-code tem uma maneira simplificada de definir uma experiência do usuário. Esta definição abstrata é então renderizada em interfaces de usuário que são entregues em inúmeros dispositivos.

Em uma plataforma moderna de low-code, um desenvolvedor pode definir uma experiência de usuário (UX) usando a abstração e então descobrir que a aplicação funcionará na web, em desktops, em tablets e em dispositivos móveis sem nenhum esforço adicional. As aplicações de low-code têm que viver com o poder das abstrações que as plataformas proporcionam. Esse é o custo, mas como as plataformas amadureceram, esse custo tem se tornado cada vez menor.

A coleta de abstrações para UX, dados e automação de processos é ampliada por vários tipos de componentes de aplicação para gerenciamento de casos, modernização de legados, colaboração, e assim por diante. O low-code também se destaca nos serviços de orquestra de muitos sistemas para acrescentar níveis mais altos de automação e controle de processos.

Ray Kurzweil aponta em sua explicação sobre o crescimento exponencial da tecnologia como a aceleração ocorre a taxas cada vez mais rápidas à medida que mais e mais serviços poderosos são orquestrados.

Agora que as ferramentas de software como serviço (SaaS) se tornaram amplamente difundidas e habilitadas para API, existe um rico panorama de serviços. Mesmo pequenas ou médias empresas têm muitas aplicações SaaS que atuam como sistemas de registro e realizam funções transacionais essenciais, tais como aceitar ou fazer pagamentos.

O low-code libera o poder de todos esses serviços com muito menos esforço do que as abordagens de código alto.

O cenário expandido de serviços também torna disponível um conjunto muito mais amplo de dados. Aplicações de low-code podem acessar e destilar esses dados para criar modelos muito mais detalhados de atividade comercial, que podem ser a base de uma melhor análise e maior automação.

Para certas funções, métodos de low-code também estão sendo usados para criar serviços que podem ser usados pela plataforma ou por consumidores externos. Métodos de código alto podem sempre ser usados para criar novos serviços que podem ser conectados ao ambiente de low-code.

As plataformas de desenvolvimento de low-code estão em constante evolução. Mineração de processos, inteligência artificial conversacional (IA), modelagem de IA e aprendizagem de máquinas (ML) e novas formas de armazenamento de dados, como gráficos e bancos de dados de documentos, estão aparecendo em plataformas de low-code.

Com o passar do tempo, as plataformas de desenvolvimento de low-code serão cada vez mais poderosas.

A SUPERPOTÊNCIA DO LOW-CODE: O AUMENTO DA PRODUTIVIDADE
O fato de que a codificação é mais simples tem vários efeitos profundos sobre a produtividade. Especificamente, plataformas de desenvolvimento de low-code:

  • Expandir o número de pessoas que podem codificar. Esta é uma afirmação que deve ser feita com cuidado. Low-code não significa que todos podem agora criar software avançado. Entretanto, significa que as pessoas que nunca poderiam criar aplicativos de código alto podem criar aplicativos simples de low-code, e estes podem ser de grande ajuda.
  • Melhore a produtividade dos desenvolvedores avançados. Os desenvolvedores que usam métodos de low-code podem fazer mais do que usar métodos de alto código para numerosos tipos de aplicações.
  • Reduzir a carga de manutenção. O software de low-code geralmente é mais fácil de manter ao longo do tempo do que os métodos de código alto porque grande parte da complexidade é gerenciada pela plataforma. As aplicações simplificadas reduzem drasticamente o débito técnico.
  • Melhor experiência e satisfação do usuário. Os padrões e princípios de projeto aplicados por plataformas de low-code evitam muitos erros e proporcionam uma experiência agradável, além de fazer com que as aplicações funcionem automaticamente em um telefone, um tablet, um laptop ou um desktop sem modificações.
  • Melhor TCO e ROI. Todas estas melhorias na produtividade levam a um melhor TCO e ROI para baixo custo total de propriedade.

Agora que os métodos de low-code se tornaram mais poderosos, aplicações de low-code estão sendo gerenciadas não como planilhas de cálculo únicas, mas como os principais ativos de software que são. Como outros ativos de software, eles estão sendo criados com conjuntos de teste e técnicas de gerenciamento de código fonte, e registro e monitoramento operacional avançado. Em outras palavras, os aplicativos de low-code se tornaram software real, não apenas brinquedos departamentais. Como esta maturidade é reconhecida, cada vez mais desenvolvedores e empresas irão considerar plataformas de low-code para suas aplicações.

LOW-CODE VAI COMER CÓDIGO ALTO
A economia das plataformas de desenvolvimento de low-code será um dos principais motores que impulsionarão sua adoção. O desenvolvimento de low-code comerá software porque será a forma econômica e eficiente de criar as aplicações que o mundo precisa.

As pessoas com necessidade de uma aplicação enfrentarão as seguintes escolhas:

  • Construir com métodos de código alto
  • Comprar um produto, se existir
  • Construir sobre uma plataforma de desenvolvimento de low-code
  • Comprar um produto construído sobre uma plataforma de desenvolvimento de low-code

A dificuldade do código alto e a falta de ajuste para muitos produtos levará as pessoas a métodos de low-code. Muitas das plataformas de low-code agora vêm com um grande número de componentes e modelos para acelerar o desenvolvimento.

Como as plataformas de desenvolvimento de low-code amadureceram e o número de serviços cresceu, o low-code se encaixa em muitos outros problemas. O low-code expande o conjunto de pessoas que podem resolvê-los.

O número de novos componentes e técnicas disponíveis através de plataformas de desenvolvimento de low-code, tais como mineração de processo, IA conversacional e outras mencionadas acima, continua a crescer. Plataformas de low-code se tornarão uma forma segura e de baixo custo de experimentar novas tecnologias.

O uso de low-code é uma troca. Os desenvolvedores aceitam os limites do ambiente, esperando que os métodos de codificação simplificados ainda lhes permitam criar a aplicação que eles necessitam. Os sistemas de low-code podem fazer muito mais do que podiam no passado. O low-code comerá software porque o trade-off se torna cada vez menos doloroso à medida que os sistemas de low-code se tornam mais e mais poderosos.

Fonte: LowCodePlaza.com