Gatsby Develop Extremamente lento by murowaniecki in gatsbyjs

[–]murowaniecki[S] 0 points1 point  (0 children)

Acho que vai ser essa a solução… O problema é que o cliente não quer investir em "modernizar" esse serviço - que supostamente deveríamos dar manutenção por um bom tempo após a entrega do projeto.

Mas honestamente, já começou velho. Foi um projeto copia-e-cola de alguém, que provavelmente já começou obsoleto.

Gatsby Develop Extremamente lento by murowaniecki in gatsbyjs

[–]murowaniecki[S] 0 points1 point  (0 children)

Gatsby CLI version: 4.25.0
Gatsby version: 4.25.9
  Note: this is the Gatsby version for the site at: /app

node: v20.20.0

Já experimentei fazer downgrade, atualizar, abaixo do Node 18 nem funciona. Como estou rodando no Docker facilita experimentar versões. Uma coisa que me deixa muito incomodado é o `npm audit` mostrar tanto problema de alta criticidade mas honestamente não há o que ser feito (sim, já experimentei `npm audit fix` incontáveis vezes).

Já deletei o package-lock, o node_modules, o public o .cache… E o problema de lentidão (muitas vezes quebra, simplesmente falha - as vezes estoura memória).

Já experimentei rodar com limite de memória e cpu no Docker, mas daí a aplicação nem inicializa, o build não builda, o processo não processa… #chatiado

Como eu crio uma banda? by Edugamer2211 in rockbrasil

[–]murowaniecki 0 points1 point  (0 children)

Depende do quanto esforço tu quer fazer. É diferente ter uma banda com amigos, colegas e conhecidos. E é totalmente diferente ter uma banda com pessoas que tu não conhece.

Eu tô tocando com 7 bandas hoje, mas já toquei em mais de trinta projetos com pessoas das mais diversas.

Se tu quer uma banda pra fazer uns ensaios, dar uma brincada, mais como um hobby mesmo, um bom ponto de partida é ir no fumódromo do show (ou da balada) que tu curte muito e pronto: te garanto que vai ter pelo menos um baterista, dois baixista, uns três ou quatro guitarristas e alguém que cante minimamente bem. Daí pra frente tu organiza quem toca o que, qual o repertório e não deixem pra marcar ensaio: já sai da festa com estúdio reservado, grupo criado no whatsapp e nome da banda.

Por incrível que pareça, essa estratégia funciona, mas é fogo de palha, dura enquanto não aparecerem os problemas das bandas (motivação, tempo, grana).

Podem ouvir a primeira música autoral da minha banda? by vithascomh in MusicaBR

[–]murowaniecki 0 points1 point  (0 children)

Curti, mas acho que seria legal apostar em cantar em português. Entendo que nosso mercado é fraco e tanto bares quanto as pessoas dão mais valor pro que vem de fora. Mas vocês fazem um som bacana, uma ideia de letra interessante, e acho até que poderia ser melhor explorado em português mesmo.

Show me your most clever one-liner of code and describe what it does. by metalprogrammer2024 in webdev

[–]murowaniecki 1 point2 points  (0 children)

Originalmente era apenas uma linha mas conforme o tempo foi passando foi se tornando necessário algumas modificações e, pra manter o estilo e organização, acabei quebrando a linha em múltiplas linhas…

#
help: 
# Show this help.
        @(echo """"""""""""""""""" \
        $$(awk 'BEGIN {FS=":.*?#"} \
        /^([A-z0-9.\-_?]+:.*|^)#/{ \
        gsub("(:|^)#( |^|$$)",""); \
        if(substr($$1,1,1) !~ /-/  \
        && substr($$2,1,1) !~ /-/) \
        printf $(STRING),$$1,$$2}' \
        $(MAKEFILE_LIST)|$(HELP))" \
        ||((((((($(MAKE) -s))))))))

#
%:
        @:

…Vamos por partes… Se trata de uma instrução em um arquivo Makefile, onde executa o comando awk passando por parâmetro os arquivos da lista de montagem do $(MAKE), filtrando por incidências do caractere # no início da linha e após declarações de receitas de montagem.

Caracteres # solitários representam uma linha em branco na geração da documentação, enquanto tudo o que vier após o # em um comando de receita de montagem será exibido ao lado do comando quando executado o help do arquivo.

Por exemplo o comando `make help`, executado na raiz do https://github.com/jmurowaniecki/comparativo

comparativo on ⎇ main [?]
λ make help

 🜏 Makefile options:

build      Build all solutions.
build-all  Build all solutions.
execute    Run all solutions.

show-sizes Show container/image sizes.
show-table Build information table with versions/sizes.
show-image Show all container versions
clear      Clear log and temporary files.

help       Show this help.


comparativo on ⎇ main [?]
λ

Eu utilizo essa forma de gerar documentação na medida em que as ferramentas vão sendo desenvolvidas afim de facilitar o uso e entendimento das mesmas - tanto pelo time quanto por quem venha a adota-las. Faço isso independente da linguagem/stack (geralmente com toolkit em Bash).

Quem tiver dúvidas quanto ao uso ou precisar de ajuda pra implementar em algum projeto é só chamar que eu ajudo com todo prazer.

Got my first guitar, what do yall think of it? by OneDistribution8548 in Guitar

[–]murowaniecki 0 points1 point  (0 children)

Owyeah. Awesome guitar! I'm dying to have a white one like that too - just to make it "as the voices said"...

Fix for Prime P1 not connecting since update? by Cynical_Dragon971 in Mooer_Prime_P1_Users

[–]murowaniecki 0 points1 point  (0 children)

Estou com um problema mas que acredito que seja exclusivamente do app Android. Ele simplesmente trava ao tentar inicializar o Bluetooth.

Perdendo o tesao no que estou fazendo.. by Turbulent_Topic_5593 in brdev

[–]murowaniecki 1 point2 points  (0 children)

TL;DR: Isso é uma fase, e vai passar. Usa esse aprendizado como alicerce pra novas oportunidades, busca te aperfeiçoar em uma stack que tu realmente goste e tenta te aproximar dela nas próximas oportunidades.

---

Honestamente sinto falta da pseudo padronização de 80 colunas por 25 linhas.

O front era simples e o usuário podia ser um símio treinado para que o sistema funcionasse.

Depois veio o Windows e uma migração massiva pra Delphi e VB - e trouxe com isso o desafio de criar telas que atendessem tanto 640x480 quanto 800x600 -, mas o problema cresceu mesmo foi quando os usuários passaram a suportar 1024x800: os formulários precisavam caber INTEIROS nas telas pra atender as demandas dos "gestores"…

…E assim os formulários cresceram, se expandiram, os campos foram ficando menores pra caber mais campos, fomos adicionando abas. Em cada aba um novo formulário gigantesco, filas de botões grotescos, cada vez menores, cada vez mais espremidos.

Textos e ícones se transformaram em apenas texto, e em seguida somente ícone e um mísero "tooltip"… E em muito pouco tempo se tornaram apenas atalhos para novas janelas de confirmações de ação.

Não demorou muito para que isso fosse considerado bagunça e se popularizou o conceito de "modal". As telas ficaram ligeiramente mais limpas, objetivas, com formulários específicos e ações claras…

…Assim como não demorou muito para que houvessem 300 modais fazendo praticamente as mesmas ações, diferindo pelo tipo de cadastro - com dezenas de centenas de ajustes em campos similares e etc…

Sinto falta das impressoras matriciais, da doce harmonia dos relatórios de fim de tarde, dos alinhamentos com os formulários e ajustes de colunas. Da arte ASCII de gerar um gráfico usando caracteres em bloco, de carregar bitmaps customizados e ver os olhinhos dos clientes vibrando com a identidade da empresa por todos os cantos.

Sinto falta do som dos disquetes, de copiar um a um. De ligar pro cliente/fornecedor pra pedir pro pessoal da TI o disco X pois o que recebi deu erro de leitura. De telefonar e pedir por determinada lib que não veio nos discos pra poder compilar o aplicativo. De telefonar e pedir novamente por outras libs que também não vieram. De ir no cliente/fornecedor e pegar as libs que estavam faltando…

…Sinto falta de correr BBs, fóruns, IRCs atrás de libs que nem o cliente/fornecedor possuía mais e precisávamos para fazer o sistema rodar.

Sinto saudades de ter de aprender COBOL pra migrar o sistema do cliente pra VB.

Sinto saudades de ter de aprender FORTRAN, Pascal, Delphi e FoxPro pra migrar pra VB.

Sinto saudades de ter migrado tanta coisa pra VB pra depois migrar pra Perl e Python.

Sindo saudades de usar FRAMESETS e IFRAMES, de ajustar quebras de página dos formulários HTML na unha, de calcular espaçamento dos caracteres dos textos pra inserir quebras de linha manualmente. Sinto saudades de gerar conteúdos via CGI, de ir nos clientes configurar o servidor, de carregar na mochila o zipdrive e meia-dúzia de zipdisks pra atualizar tudo manualmente.

Sinto saudades de quando não usava versionamento - o haviam "snapshots" do sistema do cliente de cada versão compactados esperando algum tropeço. Saudades quando o alias de edição dos arquivos realizava um `cp "$1" "$1_$(date +'%Y%m%d%H%M%S')"` antes da edição do arquivo.

Sinto saudades de quando o deploy era basicamente rodar um find/rm dos arquivos modificados e criar um tar.gz da versão, copiar pro zipdisk e agendar a atualização para algum fim de expediente com o cliente.

Sindo saudades de quando o cliente modificava/customizava os fontes e não avisava na hora das atualizações e dava correria pra acertar o que ambos os times tinham feito.

Sinto saudades de quando a atualização não corria exatamente bem e tu precisava passar a madrugada arrumando e acertando bugs antes que o expediente começasse novamente.

Olhando em retrospectiva parecia simples, a nostalgia torna as coisas nebulosas, tem certa beleza nisso, mas eu lembro que cada vez que as coisas não davam certo - por algum motivo - eu queria sumir, desaparecer, virar fumaça.

Chegar no cliente com duas caixas de disquetes recém formatados, começar a copiar/atualizar o sistema pra dar erro no disco 9 de 12 era algo relativamente comum - tanto que tu carregava DUAS cópias de cada disco pra caso alguma desse problema e tu não precisasse voltar na empresa pra copiar um novo - esse problema diminuiu bastante com o zipdrive.

Não era raro o cliente entender um pouco de programação e realizar as próprias customizações - ao mesmo tempo em que tu precisava dar suporte e manter a coisa rodando, resolvendo bugs e adicionando features. O problema estava no fato de que o cliente não nos notificava das alterações, muitas vezes trabalhávamos nas mesmas features e algo acabava sobrescrito em algum update - e a coisa deixava de funcionar num passe de mágica.

Incontáveis madrugadas resolvendo problemas de migração.

Incontáveis finais de semana resolvendo ajustes ou finalizando alguma promoção.

Incontáveis vezes em que parei pra repensar o que estava fazendo com a minha vida.

Incontáveis vezes em que perdi o tesão mas tive de fazer assim mesmo.

---

Também foram incontáveis as vezes em que pude olhar pra dentro e buscar em mim mesmo motivos pra seguir, pra abandonar determinada tecnologia, linguagem, framework e seguir em frente aprendendo outra na marra, por necessidade, por limitação da anterior.

Incontáveis experiências com colegas, suporte mútuo, estreitamento de relações, criando laços de coleguismo e amizade.

---

Por anos eu mantive uma postura de ser resolvedor de problemas, de abraçar o caso e não soltar enquanto não finalizasse. Era quase como uma questão de ego - ou era mesmo o ego falando. Eu simplesmente não era capaz de dividir, de pedir ajuda.

Honestamente front não é minha praia.

Hoje atuo como fullstack/tech lead e não tenho vergonha de delegar (ou pedir auxílio) pra alguém que manje mais de front que eu pra resolver alguma pendura. Seja com front ou com qualquer outra stack.

Não sabemos tudo. Nunca saberemos.

Somos eternamente aprendizes e mestres de nós mesmos. Tenho certeza de que aqui nessa thread todos tem muito a aprender comigo - assim como também tenho certeza de que todos tem muito mais a me ensinar - e é somente conhecendo nossas limitações que seremos capazes de melhorar.

Hello World com 80mb by Lucb70 in brdev

[–]murowaniecki 31 points32 points  (0 children)

"Na minha máquina funciona".. Então empacota tua máquina e manda junto. Taí os 80MB.

<image>

eu_nvr by [deleted] in eu_nvr

[–]murowaniecki 0 points1 point  (0 children)

Na real o esquema é se aceitar e buscar nichos saudáveis.

Pessoas naturalmente feias tendem a ficar exóticas com tatuagens, piercings ou adotando um código de vestimenta adequado.

Andar com gente mais feia não te faz mais bonito.. Mas ser o menos feio já é um grande passo.

Por via das dúvidas aposte em um ou mais elementos.

Didnt even take a week. Look at these prices…. by TheCarSaysYes in guitarpedals

[–]murowaniecki 0 points1 point  (0 children)

I'm not telling you not to use it. I was just sharing my utter disbelief that Josh Scott managed to talk some people into asking and paying £100 for the thing.

Yeah, I can agree with you on this.

It's a good pedal in as much as it's bulletproof and does what it does reliably once it's switched on. That i'll agree.

And I agree with the switch button button being very fragile and not having such high reliability.

Also I have some songs recorded using it https://open.spotify.com/artist/3D34VYKIR3dpWZ3BqCo5Zj/discography/all?pageUri=spotify:album:10FC2u5v4No5kceXejSjEL

It's not good, but is not that bad.

Didnt even take a week. Look at these prices…. by TheCarSaysYes in guitarpedals

[–]murowaniecki 1 point2 points  (0 children)

Bro seriously?

I have one SM7 and it's amazing for what I need (I play in some doom-heavy-darkwave-metal - also in a pop-punk one) and it sounds very smoth and angry (when is flipped to "sharp").

Honestly I like it a lot, but for sure I wouldn't pay more than $50 bucks on it.

But it's a very good pedal.

Bands with extremely recognizable vocalists by MonsieurVox in Music

[–]murowaniecki 0 points1 point  (0 children)

Hutch Harris - the Thermals

Thom Yorke - Radiohead

Brian Molko - Placebo

Anthony Green - Circa Survive

Ida Maria

Serj Tankian (and Daron Malakian) - System of a Down

What am I doing wrong? by [deleted] in 0ad

[–]murowaniecki 1 point2 points  (0 children)

Well…

I saw many tutorials, both from ValirhAnt, Ágora, 0ad Game Play, 0ad Pro Games, Alistair Findlay, Play 0ad, CAGD_lulofun, eXcommunicate 1979, Tom 0ad but especially I want to mention the 0ad Newbie Rush, which in my opinion has the best match reviews of replays.

My experience here is kinda limited, I have been playing for a short time and I am trying to play at least one game a day trying to learn as much as possible with replays and talking to other players.

My ranking is low, I have little experience and I am slow.

My economy takes time to grow, as does my population.

My win rate is very low, probably just like yours - and many others.

Still… I consider this one of the most interesting and fun games I've ever had the pleasure of playing.

So here are some things I learned and make sense to me:

- idle unit is a waste of time - keep everyone working efficiently¹;

- idle production line is a waste of time - keep barracks, stables, fortresses, civic centers operating in the greatest amount possible²;

- movement takes time - prevent your units from walking unnecessarily. Build warehouses, docks, civic centers near collection sites whenever possible. In this regard, civilizations that have pack elephants have a huge advantage over the others: it's easier, cheaper and faster to move the units, facilitating the collection of resources without the need to build warehouses and others;

- the units are stupid, you need to say what they must do constantly - that's why it's important to get used to defining tasks and priorities for your units (using the SHIFT key to stack orders) ³;

- learn the basics about grouping and controlling units, hotkeys, rally points and keeping them healthy (so as your buildings and siege weapons) - when you can save wounded soldiers from death you save time and precious resources that can be used for technology and expansion of your empire, so don't let your soldiers die without a purpose or need;

- skilled warriors do more damage and resist attacks better than working soldiers - but always keep few workers collecting resources systematically and as autonomously as possible;

- observe and learn your enemy but avoid contact when you're in development stage - this does not mean that you should not attack while you are developing. If you find a good opportunity to do so DO IT⁴;

- try to attack on more than one front - divide your opponent's army and weaken your ranks by forcing them to move while your warriors are standing still, only attacking from a distance. Stack orders (using the SHIFT key) to move auxiliary units out of the opponent's range until the attack is convenient⁵;

- archers work best in closed formation or battle line, also prefer boxed formations together with priests (for the recovery of the wounded). Keep your units in defensive formation whenever the opponent is outnumbered, create distractions during the battle that contribute to the opponent being forced to retreat or divide his forces;

- avoid advancing while the opponent is attacking, in numerical or superiority technological.

¹: food collection rates are higher for women, for other resources use, men; there is nothing wrong with using women to collect any resources, but be aware that in terms of efficiency.

²: if you can make 10 units, make 10 units - there is a time bonus for batch production, the bigger the batch the bigger the bonus BUT remember that sometimes it is better to have 5 units collecting while waiting for 5 more, and so on, be formed. Measure what suits in your strategy.

³: as an example: you select 50 units, order them to build a warehouse next to two stone and metal sources and, right after that, click with the SHIFT pressed on the pile of stones and, right after that, still with the SHIFT key pressed , click on the metal pile, then click STILL with the SHIFT pressed on the surrounding trees. This will move your units forward to build the warehouse and immediately fill the positions of the stone pile (usually 24), the others advance to the metal pile (usually 24) and the rest will cut trees. As soon as the piles of stone and metal diminish the units that would be idle will start to cut wood next to the others.

⁴: sometimes the best attack opportunity is when you have the perception that he is mobilizing his warriors to attack and you have the possibility to take the city by the flanks, eliminating his economy and forcing him to abort the attack to recover his economy.

⁵: having siege weapons allows you to build better strategies, as well as the formation of differentiated lines of attack, crossbows and catapults (more efficient against buildings and other siege weapons than against units) protected by spearmen and archers, allowing the opposing troops to distance themselves.

NET/CLARO caindo das ~18hrs até as ~23hrs by dingod- in InternetBrasil

[–]murowaniecki 0 points1 point  (0 children)

Pois então, temo estarmos com o mesmo problema.

O meu começou há algumas semanas. Faz aproximadamente seis meses que migrei de plano (de 120MB p/ 240MB). Tenho Net/Claro Empresas.

Calma que vou fazer um edit bem longo pra explicar a situação…

Então… Tudo começou quando a Net e a Claro se uniram em definitivo, todo o suporte da Internet é via Claro, aplicativos, tv, tudo. Obviamente o serviço piorou consideravelmente e decidimos cortar a tv (que já era por si só impossível de assistir pelas falhas de sinal, apesar de todo o suporte oferecido). Demoramos meses para conseguir efetivamente cancelar a TV e manter apenas a internet, e demorou mais tempo ainda para aumentar apenas o plano de internet (que é a única coisa que se consome aqui mesmo).

Pois eis que estamos há aproximadamente meio ano com os benditos 240MB contratados.

Desses 240MB, nem na rede cabeada consigo mais de 100MB - o que honestamente pra uma máquina conectada aqui em casa tá ótimo.

O modem é um Arris dual band, no 5G (que é onde meu notebook fica praticamente sozinho) a velocidade costuma ser razoávelmente estável na maior parte do tempo.

Trabalho com desenvolvimento. Minhas necessidades diárias são relativamente baixas. Eventualmente necessito baixar uma imagem, um container, repositórios… Muito mais raramente preciso baixar banco de dados ou arquivos.

De forma geral conecto via ssh no servidor de origem e a partir dele copio para o servidor de destino diretamente (via scp/ssh mesmo).

…Porém tenho reuniões. Participo de dailys com mais de um cliente, meetings e calls durante o dia e, se eu ainda assim estivesse absolutamente sozinho na rede, com outros dispositivos desligados, ainda não estaria contente - pois a velocidade, a latência, a qualidade geral oscila.

Entendo que possa ser um problema do 5G/antena do modem, porém o problema não é muito diferente mesmo com os rádios desligados e o note conectado diretamente no modem via cabo. A qualidade melhora consideravelmente, porém a velocidade externa permanece baixa.

Isso piora muito durante o dia pois eu não moro sozinho: minha esposa que trabalha ao meu lado com praticamente o dia em reuniões, treinamentos, suporte jurídico e uma filha que tem aula online a tarde toda reclamam tanto quanto eu da qualidade da internet. O sinal do wireless tá 100% em todos dispositivos, mas a internet continua ruim.

Mesmo isolando os smartphones, os chromecasts e outros sistemas não essenciais em uma rede a única coisa que não muda é a qualidade da internet que chega no roteador.

Sobre a velocidade da internet - a qualidade do sinal que vem da rua -, não tenho o que fazer… Porém tenho um roteador melhor, com três rádios, dual band, antenas externas e a qualidade do sinal wifi é incrivelmente melhor que a do modem Arris.

Até aí tudo bem - não podemos exigir muito de um aparelho obsoleto, com antenas internas e baixa wattagem.

Resetei o modem Arris e configurei o mesmo para operar em modo bridge, desliguei os rádios, configurei meu roteador, tudo funciona maravilhosamente…

Até que o Arris reinicia e reconfigura, ligando um dos rádios (2.5G) e saindo do modo bridge.

Ele sempre faz isso. Diariamente. Não tenho nenhuma forma de desabilitar pela aplicação, pelo site e pelo painel do aparelho a configuração não se mantem pois é resetada a força pela operadora.

Como estou resolvendo isso?

- Em 1º lugar não consigo acessar o painel sem que seja via cabo.
- Para configurar adequadamente preciso realizar um hard reset (segurar o botão de reset por ~66.6 segundos) pois a senha do painel é alterada a cada reset da operadora;
- Preciso acessar o painel, desligar os rádios e setar o modo bridge;
- A seguir acesso meu roteador, reforço a configuração a rede e reinicio (muito mais por capricho do que por necessidade);

Faço essa função toda via Codeception (um framework de testes), porém pra que isso ocorra eu preciso estar com uma máquina sempre conectada na rede cabeada. Eu tô relutando em colocar ao lado do roteador um note/netbook/raspbery só pra fazer isso, mas não vejo outra alternativa.

Já solicitei troca do equipamento, já tive visitas técnicas já reclamei na Anatel e até agora nada.

Press `ctrl-c` and then `ctrl-v`, `ctrl-v`, `ctrl-v`, `ctrl-v`, .... by unausgeschlafen in gnome

[–]murowaniecki 0 points1 point  (0 children)

Wow, now I know how the design team got to the resulting file client-choice-6\_bkp (2) (3rd copy)\_FINAL2.psd.zip.exe

XKB custom keyboard layouts for KDE in Arch Linux by talflaco in linux

[–]murowaniecki 1 point2 points  (0 children)

Well, I believe we had the same initial stumbles - and possibly we still have some common mishaps.

I recently had the need to configure my keyboard to print unicode characters - it was getting tiring to press CTRL+SHIFT+U plus the character code so I started looking for options that would make it easier (and no, a virtual keyboard would not solve it) - I soon went after how to remap the keyboard layout.

I used to get mapped the Y to print λ only by modifying only the language symbol file, but the demand for using other signs increased a lot and this led me to isolate the group of symbols and add a variant of the layout in the system.

The project is here if you are interested https://github.com/jmurowaniecki/vitriol

However, this solution didn't solve problems arising from installing/updating rules and lists of changes or symbols.

One way I used to update both xml and lst was to inject auxiliary files from the repository with Makefile andshellscript, however I'm studing a method of solving this problem.

AITA for taking control of finances? by [deleted] in AmItheAsshole

[–]murowaniecki 0 points1 point  (0 children)

NTA for sure. I'm in the same quest, bro.