r/programacao

Vale apena tentar aprender programação sendo ruim em matemática?

Vale apena tentar aprender programação sendo ruim em matemática?

Eu gostaria muito de aprender, e tenho curiosidade sobre o assunto, mas infelizmente eu tenho discalculia e uma grande dificuldade quando se fala de números. Vale apena aprender sem essa base ou é algo q vai me atrapalhar muito?

u/Altruistic_Page2774 — 24 hours ago
▲ 33 r/programacao+3 crossposts

Fiz um driver de bloco em Rust que usa VRAM ociosa da GPU como storage de 8.53 GB/s no Linux (ublk + io_uring)

Quem roda workloads pesados no Linux ou no WSL2 — compilação de projetos grandes em Rust ou C++, containers Docker, inferência de modelos locais — já passou por aquele travamento completo do sistema quando a RAM física esgota e o kernel cai em swap thrashing no disco.

Ao mesmo tempo, olhando no `nvidia-smi`, você vê uma GPU com 6GB ou 8GB de memória GDDR6 ultrarrápida ficando completamente ociosa durante a compilação.

Para resolver isso sem precisar alterar ou recompilar o kernel do host, escrevi o **RamShared**, um driver userspace em Rust que aloca a VRAM ociosa via CUDA Zero-Copy Direct DMA e a expõe para o Linux como um dispositivo de bloco real (`/dev/ublkb0`) utilizando o subsistema `ublk` (Linux 6.0+) e `io_uring`.


Benchmarks Reais Medidos com `fio` (4KB Random Read, QD1 no WSL2):

* **Swap em disco VHDX/SSD padrão:** ~2.114 µs (2.1 ms) de latência | ~336 IOPS * **RamShared NBD (VRAM):** ~326 µs de latência | ~9.6k IOPS * **RamShared ublk (io_uring):** **~8 µs** de latência (264x mais rápido / queda de 99.6%) | **~22k+ IOPS** * **Throughput de Leitura Contínua:** **8.53 GB/s** (saturação do barramento PCIe 3.0/4.0 x16).


Por que isso faz diferença na prática:

No WSL2, o swap padrão em disco passa por uma cadeia pesada de virtualização: `ext4 -> VHDX -> Hyper-V -> NTFS -> Host SSD`.

Cada page fault síncrono leva mais de 2ms, o que faz a interface e o terminal congelarem inteiros durante picos de memória. Ao desviar esse tráfego diretamente para a VRAM da GPU via PCIe DMA com `ublk`, a latência cai para microsegundos de um dígito (8 µs), eliminando os travamentos e impedindo o kernel OOM Killer de matar a compilação.


Proposta Upstream no WSL2 (Microsoft):

Abrimos uma RFC formal diretamente no repositório oficial da Microsoft pro WSL2 propondo suporte nativo a dispositivos de bloco backed por VRAM em máquinas virtuais Hyper-V: 👉 **RFC Issue:** https://github.com/microsoft/WSL/issues/41054

O projeto é 100% Rust, de código aberto: 👉 **GitHub:** https://github.com/emersonbusson/ramshared

Se alguém tiver dúvidas sobre a implementação com `ublk`, `io_uring` em userspace ou tradeoffs de latência via DMA, fico à disposição nos comentários!

u/bussondev — 22 hours ago

Currículo de CC oq acham?

O currículo do curso abrange uma sequência de disciplinas ordenadas de forma semestral, em uma seriação aconselhada. O curso estrutura-se em 9 semestres: até o sexto semestre o discente cursa disciplinas obrigatórias básicas da área de computação. Nos três últimos semestres o aluno cursa disciplinas eletivas e desenvolve um trabalho de conclusão de curso. Além disso, durante o curso, o aluno deve realizar atividades complementares.

Do primeiro ao terceiro semestre, o currículo apresenta uma formação básica em Matemática (Cálculo I e II, Análise Combinatória, Álgebra Linear, Probabilidade e Estatística, Cálculo Numérico) e Computação (Algoritmos e Programação, Estruturas de Dados, Arquitetura de Computadores, Teoria da Computação, entre outros).

Do quarto semestre até o sexto, é apresentada uma formação tecnológica abrangente, versando sobre tópicos como Bancos de Dados, Sistemas Operacionais, Redes de Computadores, Sistemas Distribuídos, Compiladores, Inteligência Artificial, Engenharia de Software, Modelos de Linguagens de Programação e Computação Gráfica. Além disso, há um aprofundamento em tópicos teóricos, como Linguagens Formais, Análise de Algoritmos e Semântica de Linguagens de Programação. Na sexta etapa, a disciplina de Empreendimentos em Informática discorre sobre questões relacionadas ao mercado de trabalho e a atuação profissional.

A partir da sétima etapa, o curso oferece disciplinas eletivas (escolhidas pelo aluno) que complementam a formação científica e tecnológica, aprofundando os conhecimentos nos temas de seu interesse. Além de créditos obtidos por cursar disciplinas, é requerido que o aluno registre participação em atividades de formação complementar. Essas atividades, realizadas ao longo do curso, contabilizam créditos complementares, e incluem estágios, bolsas, participação em eventos, participação em atividades de extensão, disciplinas adicionais, etc.

Para a obtenção do diploma, além de obter os créditos em disciplinas obrigatórias, créditos em disciplinas eletivas e créditos complementares, o aluno deve desenvolver e apresentar um trabalho de conclusão de curso sob orientação de um professor da UFRGS.

A carga horária total do curso é de 3240 horas, e a média semestral é de cerca de 24 créditos. O curso é diurno, havendo atividades principalmente na manhã e na tarde. As aulas ocorrem no Instituto de Informática e no Instituto de Matemática, ambos localizados no Campus do Vale da Universidade. As disciplinas apresentam caráter teórico, baseado fundamentalmente em aulas expositivas, e caráter prático, através de atividades em laboratório.

reddit.com
u/phkurq — 1 day ago

Quão difícil é arrumar uma profissão após se formar em Ciência da Computação?

Estou matrículado na UFBA, 3 semestre, almejando um Estágio para ter a experiência e melhorar também meu currículo quando terminar. Mas quanto mais procuro mais parece que conseguir trabalhar na área é realmente difícil. Para profissionais formados no curso, como foi para vocês?

reddit.com
u/NightbringerChair — 1 day ago

Alguém aí conhece usou ou usa a linguagem mql5? Para fazer indicadores técnicos para metatrader 5? É baseado em C

Tá ganhando vida aos poucos kkk tô fazendo um indicador técnico para mt5 usando minha teoria informacional de física quem quiser saber mais informações da um Google blog CÓDEX 137D92Cd02S1a4SSTGrU2025

u/Kaase_kaaf — 1 day ago

Saudosismo no aprendizado de programação? 😅

##Eu quero chegar a dev full stack nível pleno. Saber que as coisas existem e como funcionam é suficiente ou a sintaxe é essencial?

Desenvolvo aplicações com no/low-code desde 2021 e tenho uma base de como as coisas funcionam, mas sei escrever sozinho quase nada de sintaxe de código.

Até onde eu sei, antes da IA os programadores não dominavam toda a linguagem e precisavam constantemente pesquisar coisas simples no Google, para relembrar.

Agora, com a IA gerando o código, faz sentido fazer exercícios focando em "memorizar" cada recurso existente no JavaScript, por exemplo?

Estou perdido em relação à profundidade que devo compreender para ser um dev nível pleno

Agradeço quem puder contribuir.

reddit.com
u/No_Narwhal_7000 — 1 day ago

Certificação

Pessoal, sou dev fullstack junior (mais pro Back) e queria indicação de certificações pra tirar, vi que tem da Oracle University e AWS mas não sei qual escolher ou se realmente essas são as melhores. Queria investir numa boa de até 150 dólares.

reddit.com
u/Sad-Pineapple5759 — 1 day ago

Criar um “acervo pirata” como projeto pro GitHub, é péssima ideia?

Bom dia, gente! Belezinha?

Seguinte, cheguei numa fase da faculdade e do estágio em que preciso criar mais projetos pra ter coisa no GitHub e melhorar meu portfólio.

Até ano passado eu tinha um acervo pirata no Telegram, onde disponibilizava de graça filmes, séries, desenhos e afins. A pessoa pedia e eu colocava por lá. Fiquei quase 2 anos com esse projeto, mas acabei parando porque não tinha mais tempo.

Esses dias fiquei pensando em trazer isso de volta, só que como um site e aplicativo, meio que uma plataforma de streaming mesmo. Além de ser algo que eu já gostava de fazer, daria pra brincar bastante com programação e seria um projeto legal pro GitHub.

O problema é o óbvio, é pirataria KKKKK. Não sei o tamanho da merda que isso pode dar, principalmente deixando o código público.

Vocês acham que é uma ideia muito ruim? :(((

reddit.com
u/Ecstatic-Nebula124 — 1 day ago

Materiais que te fizeram crescer

Olá, pessoal!

Que tal se juntarmos e ajudarmos o pessoal que está procurando aprender um pouco sobre a area deixando quais materiais disponíveis na Internet te ajudaram a aprender um assunto? Não precisa deixar o link, imagino que o gafanhoto vai pesquisar se for do interesse dele.

Tomei essa iniciativa pois tem muita pergunta aqui relacionada à este tema. Eu começo!

Curso em Vídeo(YouTube e Site): Lógica de programação, Programação Orientada a Objetos, HTML5 e CSS, JavaScript e Python

O curso de lógica de programação é em visualg e vejo que hoje recomendam ir direto para uma linguagem útil no mercado, mas me ajudou bastante na versatilidade entre diferentes stacks que trabalhei, portanto recomendo bastante! Os outros tópicos me ajudaram demais a pegar a base de dev Web

Algoritmo e Estrutura de Dados: Augusto Galego(pago) e LeetCode(site)

O Curso do galego é otimo para visualização e compreensão. No site leetcode se vc pedir orientação para IA, voce consegue evoluir progressivamente muito bem! Peguei desde if/else ate os conceitos mais avançados para fixação

No mais, sem me estender como os outros, recomendo Canal do Calculo para as cadeiras matemáticas. Fiz o nano curso de UX Design da FIAP e foi muito bom também. Figmais para prototipagem de telas. Celke para PHP. Guanabara para Python tambem é fortíssimo (embora muito extenso)

Livro: Entendendo algoritmos e Refactoring sao otimos

reddit.com
u/jcktzz — 1 day ago
▲ 0 r/programacao+1 crossposts

Reddit, vocês vão decidir o que eu vou construir.

Quero fazer um projeto de programação, mas dessa vez não vou escolher a ideia.

VOCÊS ESCOLHEM.

Regras:

O projeto precisa ser possível de fazer de verdade.

Quanto mais absurda a ideia, melhor.

A ideia mais votada vai ser a escolhida.

Vou tentar construir usando ferramentas gratuitas.

Pode ser aplicativo, jogo, site, bot, ferramenta inútil, algo completamente aleatório...

Qual é a coisa mais maluca que vocês acham que eu conseguiria programar? 👇

reddit.com
u/pedrocasvgh — 2 days ago

Criei minha própria linguagem de programação em português para ajudar quem está aprendendo a programar

Fala, pessoal!

Há um tempo comecei um projeto chamado Lume, uma linguagem de programação em português que estou desenvolvendo com foco em quem está começando a aprender programação e lógica.

A ideia surgiu porque eu queria algo com a facilidade de linguagens educacionais como Portugol, mas que não servisse apenas para fazer exercícios. Quero que a pessoa possa começar aprendendo variáveis, condições, laços e algoritmos e, conforme evolui, conhecer conceitos que também existem em linguagens de programação reais.

Um código simples em Lume fica assim:

variavel nome = "João"
funcao dobro(numero) {
    retorne numero * 2
}
se dobro(10) > 15 {
    escreva("Olá, " + nome + "!")
}

Atualmente ela já possui variáveis e constantes, funções, closures, recursão, listas, se/senao, enquanto, para, módulos, imports, projetos com múltiplos arquivos, dependências locais e biblioteca padrão.

Também fiz algumas coisas especificamente pensando no aprendizado. Por exemplo, a Lume consegue analisar o código sem executá-lo, explicar o que está acontecendo durante a execução e até executar um programa passo a passo, mostrando variáveis e a pilha de chamadas.

O interpretador é escrito em C11 e a linguagem já possui REPL, CLI, testes automatizados e suporte a Windows. O projeto é open source sob Apache 2.0.

A primeira versão pública é a Lume 0.1.0, então ainda tem bastante coisa para melhorar. Minha intenção não é competir com Python, JavaScript etc. A proposta é criar uma ponte: a pessoa começa aprendendo lógica e algoritmos de uma maneira mais amigável e depois consegue entender melhor o que encontrará em outras linguagens.

Estou postando principalmente porque gostaria de ouvir a opinião de quem já programa ou ensina programação. O que vocês acham da ideia? O que uma linguagem realmente voltada para iniciantes deveria ter — ou evitar?

Se alguém quiser testar, olhar a implementação ou contribuir, o projeto está no GitHub.

https://github.com/Ultra332/Lume/tree/main

>

reddit.com
u/AdEducational8661 — 2 days ago

Estudante de matemática quer aprender programação

Sou estudante de lic de matemática.

Recentemente adquiri um certo interesse por aprender programar (python) e ando pesquisando como me aprofundar no assunto e outros derivados.

Atualmente estou tentando fazer uma biblioteca de funções (comecei por módulo e algoritmos simples tipo o de Euclides) e vou seguir por enquanto tentando usar os conceitos que aprendo nas aulas da faculdade e botando em código.

Minha dúvida é, para quem gosta de matemática, tem alguma área da programação que é interessante se desenvolver? Como anda o mercado de trabalho para essas áreas? Quais são boas indicações de material de estudo?

Estou fazendo o Harvard cs50p nas horas vagas e estou fazendo uma matéria introdutória na faculdade.

reddit.com
u/magic_myst — 2 days ago
▲ 93 r/programacao+1 crossposts

Sinto falta de conteúdo de dev que não seja sobre IA

Na prática, meu uso de IA se resume a: conectar uns MCPs, configurar umas skills e escrever um prompt decente. Só isso. Funciona.

Mas o ecossistema de conteúdo age como se isso fosse uma disciplina inteira. Todo canal de dev que eu acompanho virou canal de IA. Todo curso novo é de IA. Toda thread é sobre o agente da semana. E o conteúdo raramente vai além do que dá pra aprender lendo a doc numa tarde.

Não sou contra a ferramenta, sou contra a proporção. A gente parou de falar de banco de dados, sistemas distribuídos, performance, embarcado, compiladores, tudo. Virou monocultura.

reddit.com
u/Rafa_016 — 3 days ago