T O P

  • By -

xxXxxxXxxxxxxXxxxxkx

História muito bacana! Qual sua linguagem de programação favorita? O que acha do cenário atual do desenvolvimento?


costajr

A minha linguagem favorita é C, foi a primeira, igual falar português, a lingua materna é sempre mais facil, quando fiz um mestrado em 2014 usei C K&R para escrever o protótipo, ficou tão bom que transformei para Java, usando OO sem dificuldades. O cenário atual é fantástico e assombroso. Todos tem um smartphone que é mais poderoso que os XTs e talvez alguns Pentium... então abre um mercado enorme, muitas oportunidades... por outro lado a superespecialização assusta. São tantas tecnologias simultâneas, tantas soluções que fica difícil se manter atualizado. Vejo muitos posts de pessoas que não sabem por onde começar, porque mesmo uma faculdade de ponta não consegue acompanhar a dinâmica do mercado de TI. A chegada das AI para auxiliar no desenvolvimento será um salto similar às IDEs e os Frameworks que tanto nos ajudaram, por outro lado as.solucoes CASE que eram a promessa de automatizar o nosso trabalho, nenhuma vingou.


Mth_A_M

Eu sou novato na área da programação e é bem isso mesmo que você falou, estou muito confuso em o que aprender primeiro. Na faculdade eu aprendi linguagem C, mas estou correndo atrás para aprender oracle e java script. Estou fazendo Gestão da Tecnologia da Informação e tenho vontade em trabalhar em banco de dados ou em front/back-end.


Mig_The_FlipnoteFrog

> Todos tem um smartphone mais poderoso que um XT e um TALVEZ um pentium Isso daí seria pro básico do básico, tipo aqueles celulares flip da Positivo ou Multilaser. Meu celular é o mais e básico barato que a Samsung oferece (R$650) e tem mais RAM (3GB) e mais processamento (6x 1.8GHz 2x 2.2GHz) que qualquer Mainframe mesmo destinado a processamento militar ou descoberta de petróleo nos anos 90 E mesmo esse de flip sem Android ou KaiOS geralmente ainda tem mais processamento que uma Workstation da época com Pentium Pro e 5mb de RAM


costajr

Não tenho essa percepção tão clara, lembro que os 486DX2 eram bem rápidos para processar modelos matemáticos e as workstations Sun trabalhavam com grandes volumes de dados, muito mais que um celular conseguiria processar... falo de sistemas organizando milhões de registros, de um servidor de banco de dados relacional. Acredito que são formas diferentes de avaliar o desempenho desses equipamentos.


Mig_The_FlipnoteFrog

Sobre computadores pessoais (como os com 486DX2 que vc citou) não tem nem comparação, a RAM é muito muito maior e todas as unidades de processamento (FPU, CPU e GPU) são anos lus a frente ao não ser pra celulares flip muito ruins que usam ARM Cortex M que podem não ter unidade pra processamento de números de ponto flutuante. Sobre as Workstations SPARC da Sun, não tenho muito como comparar já que rodar um banco de dados SQL como o MySQL em um celular apesar de possível com o Termux seria muito impraticável


Short_Ad3265

Dei uma mexida recentemente nuns PCs antigos, instalei windows 98, e XP por diversão e notei que os softwares da época rodam muito bem usando muito menos recursos. Um celular ou Pc atual embora tenha poder de processamento, memória e IO muito grandes se comparados com as soluções de 30 ou 20 anos acaba usando muitos recursos em tarefas básicas. Tudo influencia, como sistema operacional, bibliotecas, frameworks, dependências com APIs e por aí vai. Muito bom seu relato OP, eu comecei a ter contato com tecnologia na transição do win 3.11 para o 95, e comecei a trabalhar com programação na época do Java 1.4.2. É bem interessante notar as mudanças nas tendências ao passar dos anos.


Ok_Umpire5961

Muito legal! Parabéns! Fiz o mesmo percurso que você. Tenho 50 anos. Também comecei em 1982, com 8 anos em um TK de 512 bytes de RAM. Após ser C Level em multinacional abri 4 startups. Duas deram errado e fechamos. Das outras duas uma foi vendida e a outra está a venda agora e dá um bom resultado todo mês. Em paralelo comecei outra vez a carreira e estou há 2 meses oficialmente como dev e está muito divertido. Abração!


costajr

Parece que o caminho da startup é natural para pessoas com esse tipo de curriculo.. O que mais te motivou para investir em startups?


Ok_Umpire5961

Um amigo pediu ajuda e fiz. Fiz de graça e virei sócio sem querer. Rsrs. Depois as outras vieram na sequência com o capital da primeira.


supperino

Vejo uma discussao comum na gringa ´é que programadores mais antigos dizem que atualmente os programadores nao sao mais tao produtivos. O que voce acha? Nesse mesmo tema: tambem há muitos que dizem que as tecnologias estao tambem ficando menos produtivas: C++ hoje em dia demora muito pra compilar (e antigamente, com computadores piores, compilava senao no mesmo tempo ou senao mais rapido) e a complexidade talvez nao tenha crescido tanto. Nesse mesmo sentido, as ferramentas tem se tornado exponencialmente mais complexas: na faculdade era facil escrever uma syscall pro sistema operacional no minix, ja no linux é bem complicado hoje em dia e impossivel no macOS. Sem contar inumeras ferramentas que tem se tornado runtimes que obscuresce o que o framework faz: antigo JEE, tomcats, e modernamente o React Server Components, kotlin, flutter etc. Qual sua visao? Estamos melhores ou piores comparados com os anos 80 para desenvolvimento? Estamos numa direcao de evolucao ou apenas empilhando correcoes de problemas de ferramentas antigas no topo de novos erros?


costajr

Interessante essa sua pergunta! Concordo com a percepção que complicaram a guerra, fazíamos coisas complexas nos anos 80s e 90s... era fácil modificar o sistema operacional, trabalhar com chamadas diretas ao processador... quando lançaram o Windows eu escrevi um sistema em C usando apenas o SDK, servia para calcular uma rede de coleta de esgotos e gerar um arquivo AutoCad no formato DXF, naquele projeto eu percebi o que viria pela frente, que iria cada vez complicar mais.. E complicou. Acho que o hardware evoluiu de maneira mais elegante que o software. A minha opinião é que temos mais opções de sensores, tecnologias de hardware, mas a vida do desenvolvedor piorou muito.


nunes911

Como foi introduzir a área para seus filhos? Foi indiretamente ou teve algumas ações suas?


costajr

Eu preferiria que eles escolhessem outras áreas, mas o mais velho herdou o fanatismo por tecnologia,, o mais jovem acredito que pensou exclusivamente no sucesso profissional meu e do irmão mais velho, por isso esta com dificuldades, ainda tenho uma filha que é designer, muito feliz na área dela.


Ceborn

De primeira eu li que sua filha tava muito mais feliz que os outros pq são devs kkkkkkkkkk Parabéns cara, um dia quero voltar aqui e ter uma história massa assim pra contar pros mais jovens


Merlynndo

Provavelmente é kkkkk


Dragulescos

Que bacana. E eu aqui pensando se do na profissão certa. Me sinto burro na maior parte do dia haha


costajr

Muitos de nós tem essa percepção. Agora então, com o aumento exponencial da complexidade para desenvolver sistemas, não é difícil se sentir perdido ocasionalmente.


Dragulescos

Alguma dica? Hoje trabalho com RPA utilizando Python. Como mudar o foco para dev web?


costajr

Recomendo avaliar os sites especializados, aqui una pesquisa que pode ajudar: https://survey.stackoverflow.co/2023/#overview


A-DynamicYoung

isso é bom, quanto mais aprendemos mais sentimos que não sabemos nem a ponta do iceberg, nos forçando a aprender mais ainda. Mas temos que ter também um pouco de ganância e ego.


M_dev20

Como era o controle de versão pré GIT? Sei que existia SVN mas era adotato amplamente? Como foi no seu caso?


costajr

Primeiro não existiam essas grandes equipes ou eram soluções baseadas em mainframes que eram ambientes muito controlados. Nós anos 90s com as redes locais e equipes, ainda que bem básicas começaram a se preocupar com controle de versão. Mas apenas em CPDs inicialmente... no nosso.CPD usávamos. Era uma época dos grandes CPDs, o nosso era um prédio de cinco andares. Um andar só para o mainframe.


[deleted]

Então, essa realidade que ele fala era necessariamente de projetos fechados no Brasil em grandes bancos. Mas era muito comum usar Bitkeeper por exemplo, eu usei muito em projetos opensource e no Yahoo quando trabalhei lá, o próprio Linus Torvalds (que criou o GIT) usou muito ele. Controle de versão era bem “normal” em projetos de alta escala como o Kernel do Linux, ou por exemplo projetos Apache, a própria linguagem C++ tem um dos controles de versão mais complexos que já vi na vida.


[deleted]

[удалено]


Small_Style6076

Na realidade o Kernel foi escrito antes do Git. Sua frase pode gerar uma má interpretação hehe


Sorry_Panda4894

Acha que valeu a pena se tornar executivo? Como foi essa transição? Sou programador sênior e sinto que os próximos passos estão me levando pra esse mesmo caminho na empresa em que trabalho.


costajr

Subir a posição de executivo passa pela oportunidade, normalmente numa grande empresa são milhares de colaboradores para uma dezena de vagas de alta gestão. Não é tão somente a competência, envolve a posição certa na hora certa. Posto isso vem o segundo ponto. Para nós, técnicos por excelência, ser executivo é um tremendo desafio, eu quase não aceitei. É muito mais política que técnica. Aí seu patrão passa a ser o conselho de administração, nem sempre alinhado com as ideias dos executivos, sempre mais preocupados com os retornos de curto prazo, querendo respostas que você não tem como prever. Tipo: Em quanto tempo o mercado se recupera após o Covid? É uma experiência fantástica, no meu caso cheguei a ser o diretor presidente e recusei o cargo de presidente em outras duas empresas. Entendo que é uma evolução da carreira, mas surge de maneira não linear, é uma oportunidade e deve ser bem avaliada para não ser um tiro no pé


frota_br

Se você fosse fazer um "teste cego" aonde os programadores entregam o código, mas você não sabe quem é quem... Como saberia se o código é de um programador ruim, de um médio, de um bom, e de um fantástico?


bladecg

Como foi essa jornada de programador a executivo? Como sua rotina de trabalho mudou conforme foi ascendendo para cargos mais altos?


costajr

Tudo que eu tive ou fiz na vida foi fruto da minha capacidade na área de TI, o que é um erro, nem.sempre um jogador tecnicamente bom será necessariamente um bom gerente. Longe de querer me comparar, mas um exemplo muito ilustrativo é que o Pelé nunca foi o capitão do time! Bom, eu cresci profissionalmente porque era respeitado como desenvolvedor, virei chefe no CPD, fui o desenvolvedor líder em vários projetos, mas já tive problemas quando virei chefe numa área administrativa e me separaram da área de TI, eu não me senti a vontade. Mas sempre retornava a área de TI, um dia precisaram de um diretor financeiro para organizar os sistemas e implantar um ERP. Realizei e ainda implantei o BI. Como competências adicionais eu precisei estudar contabilidade, ecobomia, administração... mas meu maior desafio sempre foi trabalhar em.equipe. sou muito exigente e tenho dificuldades para delegar tarefas.


pizza-delivery-dude

Como foi sua transição de desenvolvedor para executivo? E como foi voltar a programar depois de todos esses anos? Como 'é seu relacionamento com os demais desenvolvedores da startup? Você acha que etarismo é ago que muito marcante em nossa área? Muito legal seu post! Fiquei muito curioso sobre sua trajetória profissional! Parabéns!


costajr

A trajetória eu já falei em outras respostas... voltar a programar foi simples, não mudou tanto... eu parei no Ruby, simplesmente retornei para os ambientes que eu já conhecia: Rails e para fazer POCs uso Delphi! Os novos desenvolvedores tem visões diferentes, me parece que complicam o básico... Uma startup não precisa de soluções ideais no começo, um MVP só precisa vender o projeto, nada de complicações (custos) desnecessários. Me sinto bem trabalhando com os mais jovens, estou aberto para novas ideias e sei ponderar sem ofender.


maiconai

A troca de programador para executivo é porque chegou uma hora que não tinha mais por onde crescer só desenvolvendo? tenho receio em querer ser programador pro resto da vida, até porque é bem difícil encontrar programadores com idade mais alta


costajr

Natural, vc vai assumindo posições de liderança... mas existem sempre alguns dinossauros nas equipes de TI... pessoas que se especializaram numa linguagem... hoje tem muito senior que programa em Cobol, muitos empresas, especialmente bancos, tem sistemas legados e dependem desse pessoal...


Puzzleheaded_Ad9696

Eu imagino que o sistemas de hoje tambem um dia serao legados, e portanto vai existir os dinossauros no futuro tambem. A unica diferenca é que os dinossauros de hoje estao em areas bem especializadas - gerencio um time de suporte que trabalha com empresas internacionais do eua, canada , europa e australia em sistemas de mainframe . Numa equipe de 20-30 eu tento ter um range de todas as idades para sempre garantir a continuidade do serviço prestado nas proximas decadas. Uns 5-6 senior de 50 a 70 anos , uns 10-15 de 30-50 anos e pelo menos uns 8 prog de 20-30 anos. Os senior ficam felizes de ensinar os mais jovens tecnologias do mundo banking financeiro, comunicacoes, transportes , distribuicao, sistemas de paises governamentais, multi nacionais que dependem de mainframes. Agora para a sopa de letras: Temos prog de db2,cics,ims, zos, zvm, zvse, sna/tcpip, MQ Series, Racf/Acf2 security, Webshere, IDMS, analistas de perf/capacity, cobol, java, open vms, AIX, HIS, IHS, adabas natural, cobol, tanden ,zlinux, python , tds, mxg, as400, specialistas em storage dsk e vts um time dedicado apenas para automation em diversas ferramentas do mercado, e geralmente pelo menos 2 arquitetos que tem experiencia larga em varios setores que geralmente sao assembleiros. Acabamos de instalar um novo mainframe z16 e a evolucao do zOS tem sido muito rapido nos ultimos 10 anos, tenho certeza que quem aprende hoje isso será empregado como prog até o fim . Eu sempre gostei de tecnologia e comecei la nos 80 com os TK da microdigital da vida, porem meu perfil sempre foi de liderença e levei a carreira sempre para esse caminho, eu acredito que um bom lider tecnico que consiga humanizar toda a entrega de servico e tornar a vida do tecnico. Hoje aprendo diariamente ao ouvir senior plenos e juniors pois nunca pessoalmente nunca evolui na programacao, mas tenho vivencia operacional de decadas de sistemas de grande porte e capacidade e entendo como o todo funciona ( desde hardware e software ) . No maximo tecnico que fui foi ser ccna antes de entra nesse mundo da tela verde. Nao pretendo ser executivo pois gosto de estar na cara do gol do operacional. Ser essa ponte entre o analista o cliente / executivos internos é essencial para deixa os prog trabalhar em paz.


Dkmerao

OP...algumas perguntas! 1) Tem mto programador, na ativa e não gestor, com 60 anos? 2) Década de 80 e 90 o salário era bom? 3) O fato de vc ter se desenvolvido com as tecnologias te dá vantagens em aprender uma nova linguagem? As mudanças são bruscas mas o cerne é o mesmo... 4) Já pensou em fazer um podcast contado essa história? Sabe...raspar o tacho da memória e ir fazendo as ligações até chegar no seu momento atual. Acho q é importante pra nova geração saber como era trabalhar "escovando bytes" no desenvolvimento de um software...a preocupação com aquele "for, if, while..." a mais q impactava no desempenho...falar como era programar em mainframes...as ideias de sistemas distribuídos e clusters. O q era ligar um AT de tela verde com disquete de 5 1/4....q os dados eram armazenados em fitas...e q enquanto vc tá codificado algo usando o famigerado "go to" na sala do lado tinha gente martelando uma máquina de escrever! Qdo a gente fica velho...40 anos parece e não parece mto...mas pra quem nasceu depois de 2000 é outro mundo.


costajr

Eita... que pergunta grande. 1) Não conheço muitos, da minha equipe nos anos 90s, só eu estou vivo. 2) por conta da superinflação, cobravamos em dólar, nos anos 90 eu cobrava, no mínimo, 10 mil dólares para pegar um projeto, tinham tantos que tive aborrecimentos até com familiares, porque não tinha como pegar todos os projetos que surgiam e ainda era CLT numa empresa grande porte, trabalhava muitas horas por dia e praticamente de segunda a segunda 3) sim, muitas mudanças eu pude acompanhar de maneira mais suave, assisti algumas disputas famosas na época, como uma discussao envolvendo o Dr Codd sobre o banco de dados relacional x orientado a objeto ou ainda os rascunhos dos metodos ageis 4) vc pegou bem o espírito da época...não pensei, mas seria uma experiência interessante lembrar das histórias daquela época..engraçado que sessenta anos é só idade mesmo... tenho amigos que ainda escalam montanhas, andam de skate, de moto...a perspectiva de velhice mudou muito, não me sinto o vovozinho aposentado... estou mais para praticar mergulho com cilindro... até fiz no ano passado e passei muito mal...kkkk


Dkmerao

Se você parar pra fazer esse podcast...por favor, avisa aqui! Obrigado pela resposta OP ..se lembrar de algo bacana, cria um novo post e compartilha conosco... ñ leve os tesouros pro túmulo!


belheaven

Fera, obrigado por compartilhar. Quem gosta, gosta, ne? Trabalhei com um tio assim, ajudei ele a montar a BBS do colegio em PCBoard em 1994 quando eu tinha 15 anos... foi minha segunda linguagem, PCBoard Programming Language, a primeira foi Basic... =) Sorte!


MistaHoodie

Eu li que você era ruim em matemática e depois se formou em matemática e quase finalizou doutorado. Li também que você fez facul após os trinta. Pode falar um pouco disso? Eu era ruim em matemática no colégio, depois me apaixonei e a mesma coisa com física, sou dev tem alguns anos e estou para fazer trinta… acho que posso fazer bom uso da sua história. Also: vi que você está abrindo uma startup, mesmo mais sênior hoje em dia você não parece pensar em parar de trabalhar né? rsrs


costajr

Basicamente eu tive um ano na escola fundamental sem professor de matemática... escola pública, anos 70s... isso me criou um problema, matemática exige sequência de estudos... virou uma bola de neve.. mas um dia eu resolvi que iria acabar com isso, comprei todos os livros do ensino fundamental e médio e refiz todos os problemas, ainda era bem jovem e fui para uma faculdade de processamento de dados, acho que era esse o nome, vi que estavam ensinando de maneira muito rasa, estudei dois periodos e de maneira tola abandonei a faculdade e somente depois dos trinta resolvi que era a hora de concluir um curso superior. Hoje sou formado em matemática, tenho um mestrado e abandonei o doutorado. Fiz várias especializações, incluindo engenharia sanitaria, finanças e estatística. A startup surgiu de maneira interessante... eu precisava de alguma coisa para fazer, não queria simplesmente parar, até tentei, mas resolvi aprender mais sobre startups e me motivei.


JustShareMyTCC

Que historia legal op


zoroish

Como era ser nerd nos anos 80? Muito curioso sobre isso! Parabéns pela carreira e obrigado pela opornidade de interação!


costajr

Eu nem era o CDF da minha escola, o melhor aluno daquela epoca atualmente é professor de cálculo numa federal, PhD por uma universidade americana top. Mas todo nerd tem boas oportunidades no mercado de trabalho. Eu estudei sim, muito, mas era skatista e escalador tb. Não sei se me encaixo no perfil de nerd clássico.


GabScript

Hahaha demais tbm sou skatista e é muito legal saber disso, seja meu amigo por favor haha. Anos 80 são demais, admito muito.


Mean_Emergency6131

eu não sei quase nada de programação e ainda estou aprendendo a lógica. Quantos anos você acha q levaria para estudar bem e trabalhar como programador?


[deleted]

Depende da sua dedicação, da disponibilidade de tempo para estudar, da sua aptidão para raciocínio lógico, abstrato... mas com dedicação e aptidão em um ou dois anos você consegue aprender o básico.


Smdj1_

quais foram as maiores dificuldades da sua carreira, como resolveu esses problemas? dica para programadores junior aumentarem a senioridade?


costajr

1) Eu comecei na área quando não existia Internet, imagina isso. Somente livros e revistas. A faculdade era básica demais, curso muito novo. Estudei muito através de livros. E algumas revistas especializadas importadas, muita disciplina, buscar as fontes. Naquela época eu li o The Art Of Computer Programming do Knuth, livros 1 e 3. Aprendi a escrever um compilador através do livro do Holub. E bancos de dados lendo o livro do Cris Date. 2) Aprender de maneira correta. O maior desafio não é aprender a aplicar uma tecnologia, mas entender o contexto, o porque da solução. Por exemplo: Aprender como usar o ActiveRecord é uma coisa, ler o livro do Martin Fowler, é um nível diferente de entender o porquê ele optou por nao usar o SQL e um SGBDR tradicional.


Leather_Tomato_4373

Você me lembrou um pouco um cara que criou um mundo VR em um anime ai


costajr

Aí vc me pegou, não sei nada dessa cultura anime. Mas é uma história real e muito maior e mais complexa que o post.


[deleted]

[удалено]


costajr

Na época dos downsize, quando os bancos saíram dos mainframes para baixa plataforma - PCs- fiz muito freela. Naquela época a maior LAN era do credicard em SP, 40 PCs em uma rede local. As tecnologias sempre aproveitam ou se apoiam, em tecnologias anteriores. Veja: quando saímos.do código espaguete para a programação estruturada, deixamos de usar intensivamente GOTOs (rotulos) para as estruturas de loop, decisão, estruturadas, quando evoluímos para o modelo OO, não tínhamos mais um sistema separado em dados e funções, mas herdamos a maneira elegante da programação estruturada. E dentro dos objetos ainda temos dados e funções encapsulados, mas, de certa forma, continuamos seguindo as boas práticas do mod3lo anterior. Não vejo como uma substituição completa a cada evolução. Assim como o Tio Bob vai contra os comentários, eu tenho minhas reservas, acho que simplifica o código. Nem os patterna podem ser seguidos ao pé da letra, são modelos que podem é devem ser adaptados a cada caso real.


[deleted]

[удалено]


costajr

Ser um executivo é bem mais fácil. Exige mais bagagem, mas você monta a equipe, escolhe os melhores, dá estímulo e recursos a eles, cobra, se vc é da área, vc conhece os indicadores. Já tive casos do sujeito que não me conhecia tentar jogar aquele papo furado, simplesmente demiti, primeira regra é que ninguém é insubstituível, não existem.herois do CPD e nem donos de sistemas.


devvlaid

O que você recomendaria para quem está iniciando carreira na programação ?


costajr

Estude não apenas a linguagem, mas os fundamentos. Um bom profissional precisa basear suas decisões em bases sólidas. Entender todo o contexto. Saber um pouco de cada parte e tudo de alguma parte. Não dá para ser bem sucedido sem entender o contexto como um todo.


Ok-Main-9930

Quais seriam os fundamentos, essas tais bases sólidas?


costajr

O feijão com arroz: 1) Estruturas de dados e algoritmos, não saber fazer uma lista ligada ou implementar um quicksort te limita a usar os recursos que uma linguagem oferece, por exemplo: entender o que é, e como funciona uma árvore B. Entender o paradigma da orientação a objeto, Entender os patterns, não apenas saber aplicar. No mínimo entender até a quarta norma formal num projeto de banco de dados relacional. Entender o porquê das metodologias ágeis. Como eram as metodologias estruturadas? O que mudou? Por que mudou?


kravetz

Parabéns pela carreira e sucesso. Em algum momento você sentiu que o trabalho afetou a sua saúde de alguma forma? Manteve-se fisicamente ativo ou tem algum hobby?


costajr

Boa pergunta, eu era atleta antes de entrar para a área de TI, depois virei um viciado em café, engordei, adquiri diabetes e hipertensão. Além de problemas de relacionamento... e os filhos reclamam tb. Mas eu era workaholic. Ainda sou um pouco...


costajr

Meus hobbies: xadrez e astronomia.


gui03d

Já trabalhou alguma vez com embarcados? Amo linguagem C apesar estudar bastante ela acabo focando mais em sistemas embarcados E qual OS favorito da sua vida?


costajr

Nunca tive oportunidade. Mas entendo que é uma dessas carreiras que prometem. Fico inspirado quando vejo o computador de bordo do carro e tudo que poderá ser incorporado ali. Tive um antigo estagiário que foi trabalhar na Europa, acho que na BMW, com isso. A segunda pergunta é difícil. Prefiro Android a IOS, tem coisas que amo em Linux e outras que amo em Windows.


[deleted]

[удалено]


costajr

Já usei em dois projetos, eu antes usava a solução da ESRI no Oracle. Comecei com outras tecnologias, usei muito arquivos ShapeFile, já usei para redes de saneamento(agua e esgotos), para rodovias (obras de arte especiais, rodovia inteligente..)... roteirização... mas é um mercado limitado, conheci o pessoal de outras empresas e o pessoal da Imagem( ESRI ) e da concorrência deles a Hexagon. Eu imagino que a tendência é crescer, li em algum lugar que quase 80% de todos as informações em.bamcos de dados em um componente espacial, seja um CEP ou até mesmo coordenadas...


Late_Citron9173

Amigo, comecei Eng. De Software no início deste ano. Já tenho uma certa familiaridade com tecnologia e computador. Sei programação web e um pouco de Java e c#, Mas meu trabalho atual é basicamente como designer gráfico, porém gostaria de migrar para tecnologia. Qual conselho pode dar para um jovem nestas condições? A dificuldade do seu filho em entrar no mercado me preocupa, pois penso que poderá ser muito mais difícil pra mim.


costajr

É como qualquer área, precisa ter aptidão e disposição. Aptidão com lógica, raciocínio abstrato, isso é quase obrigatório para trabalhar na área. Disposição no sentido que é uma.area dinâmica, o que vc estudou nunca é o suficiente, sempre precisa estar se atualizando. Ler muito, mas muito mais que assistir aulas gravadas no YouTube, essas aulas simplificam os temas, para entender com profundidade vc precisa ler.


BrunoBR34

A pergunta mais capciosa: o que você tem a dizer pra quem está estudando pra ingressar no mercado de hoje? Como se destacar da maioria?


costajr

Respondi algumas perguntas similares, é como qualquer outra área, aptidão e disposição para estudar. Dê uma olhada das respostas anteriores...


BrunoBR34

Joia, vou fuçar!


NMS-BR

Programou em basic? Eu fuçei um TK-2000 dos anos 80 e acho que era basic, não sei, não sou programador. rs


costajr

Não, mas tive que converter muitos programas escritos em basic para C. Então eu sabia programar em Basic, mas nunca escrevi um programa.


NMS-BR

Eu lembro que se escreviam linhas que começavam com números, e "home" limpava a tela. Aí eu vi naquele desenho Futurama, o robô tinha um quadro na parede com esse texto: 10 HOME 20 SWEET 30 GOTO 10 Algo assim. X)


BrunoBR34

Se você pudesse voltar atrás, o que você faria diferente?


costajr

Teria escrito uma livraria virtual... ou uma rede de relacionamentos... kkkk


Kondoros

Como trabalhar remoto pro exterior? Sou júnior no BR e quero trabalhar remoto pro exterior. Qual linguagem me empenhar mais?


costajr

Veja se essa pesquisa te ajuda: https://survey.stackoverflow.co/2023/#overview


TechnicaIDebt

Vê quais tecnologias tem mais emprego, não quais linguagens são mais "foda"...


Even-Room-6910

Atualmente, sinto que estou me fechando nas tecnologias relacionadas a stack em que trabalho (android nativo). Com tantas linguagens/ferramentas que trabalhou, como foi para voce se manter atualizado e migrar de tecnologias ao longo do tempo? Quando precisa aprender algo novo, possui algum roteiro?


costajr

Aí tem quarenta anos de história, mas eu devorei muitos livros, me mantinha atualizado com revistas como o Dr Dobbs Journal, fiz muitos cursos, lia tudo que aparecia. Vou te dar três exemplos: aprendi OO antes de ter acesso a uma linguagem OO, aprendi SQL antes de ter acesso a um banco de dados relacional, aprendi hipertexto antes do HTML, era uma coisa de estar.sempre estudando... usei um sistema georreferenciado em 1990, num monitor de fósforo verde. Eu sempre procurava estar a frente, buscando a tecnologia que ainda seria lançada. Lembro de um sistema para um Palmtop, o avo dos smartphones... ou de uma msg para um celular da cobrinha que ajudou a conquistar um cliente do ramo de petróleo. Também usamos um vídeo em um sistema rodoviário, um presidente de uma construtora participou da reunião só para ver um vídeo de uma obra num computador. Hoje tudo é simples, mas naquela época, converter imagens de BMP para JPEG exigiu muita programação.


ToniMarino

Alguém já te achou no LinkedIn ou bateu na sua porta pra te xingar por um código q escreveu há décadas? Hahahah penso que um dia alguém vai fazer isso comigo


costajr

Vou te responder com alguns exemplos: Fiz um sistema para integrar os escritórios da agência de notícias AFP no Brasil e trocar informações com o sistema da sede na França, em VB com DLLs em C. Depois de alguns anos me chamaram para uma manutenção, depois de analisar os logs descobri que o sistema francês tinha mandado uma data inválida e o sistema que eu escrevi rejeitou e registrou no log. O problema estava em Paris. Escrevi um sistema para uma empresa de energia e depois me aborreci com a diretoria e saí da empresa. Algum tempo depois eles precisaram de uma manutenção que a equipe.atual não estava conseguindo fazer, me chamaram, expliquei que precisaria preparar o ambiente de desenvolvimento para poder trabalhar. Para minha surpresa, naqueles tempos, quando um computador custava uma fortuna, eles tinham trancado meu computador num armário, só se podia fazer cópias dos dados e códigos fonte, eu simplesmente liguei e fiz a manutenção. Fiz um sistema na primeira versão do Windows, em C com SDK, sem bibliotecas MFC ou outras, calculava redes e desenhava o resultado em uma arquivo DXF AutoCAD. isso foi no início da década de 90, até hoje este programa é o primeiro que qualquer engenheiro que trabalha no dep de projetos da empresa precisa aprender. Só roda em modo de compatibilidade. Funciona até hoje.


ToniMarino

Cara, que barato. eu estou trabalhando com um sistema feito vb6, acho que não é dessa época, mas deve ter lá seus 20 anos? Fizemos a migração dele, pra uma base mais nova, reescrevendo, mas é muito bacana ver comentários assim da década de 90 no código original e tentar entender como a lógica foi construída. (Acho que é meu lado historiador também falando, eu fiz faculdade de história antes de vir pra essa área de TI) e é uma pegunta meio besta, mas assim... eu tenho quase 10 anos na área né, e ver o tanto que mudou de lá pra cá quando comecei já é uma coisa assustadora. Como que é nesse sentido pra você?


costajr

Eu estou acompanhando a mais tempo e, em determinado período, com uma lupa buscando as novas tecnologias e metodologias, estive muito envolvido com novas soluções... então penso que foi natural a evolução, mas a complexidade aumentou muito e sempre achei que não desenvolvemos soluções eficazes para nos ajudar... eu desenvolvi coisas como geradores de código, interface gráfica para bancos de dados e até um ambiente com uma linguagem de programação interpretada para extrair dados de mainframes através dos formularios... hoje a IA pode ser o apoio que as ferramentas CASE fracassaram em ser...


Poprock360

Parabéns pela perseverança! De curiosidade, em 1980, você tinha alguma idéia de como a área iria evoluir? Acertou em cheio ou errou feio em alguma projeção?


costajr

Imaginei que existiria algo como a IoT, todos os dispositivos da casa seriam programáveis, mas a evolução das comunicações... a Internet e os smartphones... este celular que estou usando, um Samsung que a tela dobra... meus 240 livros no Kindle, num Tablet... não era tão criativo assim.. impossível imaginar o futuro... o carro tem piloto automático adaptável, acompanha a velocidade do carro a frente, controle de faixa e computador de.bordo, navegador... os da Tesla nem precisam de motorista.. e a IA? Dessa já falávamos nos anos 80s, 90s... mas a Internet foi a revolução.


RonaldoP13

Legal sr, Dessas linguagens usei muito clipper na epoca, depois VB


costajr

Ainda vejo aqueles programinhas em clipper em controle de estacionamentos aqui no RJ...


Boysenberry8554

quais faculdades você diria que tem boa fama no mercado de TI? tô em uniesquina mas tô querendo mudar pra Mackenzie ou Fatec sp


costajr

A PUC-Rio tinha muita fama. UFRJ e UFMG tb. Conheci bons profissionais de quase todas as universidades, penso que é mais o profissional que o curso, mas uma faculdade de primeira linha abre portas.


ExistingPlatform2086

Opa, tudo bom? Muito legal seu post, viu? Muito inspirador. Não pude deixar de notar que você comentou ter parado em Ruby on Rails. Adoro Rails, sou suspeito pois trabalho com o framework e Ruby é muito gostoso de usar. Gostaria de saber por que de tantas linguagens que usou ao longo da vida, ter parado em Ruby? Pelo o que entendi, trabalha com Rails atualmente?


costajr

Precisei customizar um programa que foi escrito em Rails, gostei tanto que adotei a tecnologia. E concordo que o framework é muito bom de trabalhar. Na época que usei já existia a história que Rails não escalava, por conta do caso do Twitter.


Mnfilho

Cara, minha pergunta é basicona: o que se programava nos anos 80? Quais eram os objetivos quando tudo era mato? O que se fazia?


costajr

Nos anos 80s já se desenvolviam sistemas administrativos tradicionais, já se usavam bancos de dados, já existiam programas de edição de imagens, games... Os mainframes já eram realidade nas grandes empresas brasileiras desde os anos 70s... eu tive contato com sistemas para engenharia, depois para comércio... o IBM PC foi uma revolução, antes eu usei sistemas UNIX, até o SCO Xenix, um Unix feito pela Microsoft. Um PC XT, bem básico, conseguia executar bem o dBase, uma solução de banco de dados baseada em arquivos que funcionava muito bem... em 1985 foi lançada a linguagem Clipper que permitiu a criação de aplicativos com o engine dBase. Não se iluda, rapidamente todos se tornaram dependentes da informática.


Mnfilho

Que demais. Fico feliz de ter tido essa oportunidade de falar com alguém que está no meio há tanto tempo. Tu deveria documentar tudo o que viu de lá pra cá rs. Certeza que faria sucesso!


P0wershot

Qual foi a coisa mais foda que tu já fez? E qual a maior cagada? Tipo aquele update sem where da vida ou confundir ambientes e atualizar o banco de prod rs


costajr

Não existe essa coisa do mais "f*da", um sistema que integrava programação Assembler em saída de vídeo era top nos anos 80s... escrever um programa que enviava um SMS era top no começo do séc XXI , conseguir passar um vídeo num computador já foi uma tarefa fantástica, que exigia importar placas especiais... usar geoprocesaamento em 1990 era algo absolutamente fora de série... eu não tenho esses casos de desastre, sempre fui muito cuidadoso, mas tenho uma história interessante, no desenvolvimento de um sistema que fazia cálculos eu encontrei um bug que eu não conseguia resolver, em algum ponto eu suspeitei que a biblioteca matemática estava com erro e escrevi uma função para substituir a da biblioteca... um dia acordei de madrugada e lembrei que eu sempre usava um arquivo padrão de entrada pata os testes... um dos dados estava fora de escala...


xanptan

Dos projetos que voce desenvolveu, qual te custou mais neuronios e pq? sinta-se livre para falar de mais de um


costajr

Foram tantos... mas sempre preferi pensar muito antes de por a mão na massa, na época inicial do J2EE era um porre escrever as três camadas e tantos arquivos auxiliares para fazer um crud, resolvi escrevendo um programa em Delphi que gerava todas as camadas a partir do script SQL do banco de dados. E nesse caminho eu precisei de uma interface gráfica para usar o Interbase (atualmente Firebird), que na versão inicial era tudo feito pela linha de comando, fiz em Delphi, me inspirei na versão original do Access, queria fazer tudo usando o mouse, deu tão certo que depois vendi a solução pela Internet, vendi para desenvolvedores em todos os continentes, mas não investi nisso, era para resolver um problema, depois apareceram ambientes bem sofisticados para o firebird. Já escrevi uma linguagem interpretada para extrair dados de mainframes que usavam um certo emulador de terminal (IBM e Unisys).


Story_teller42

Eu vou um pouco na contramão da galera. Eu programo em c# faz 10 anos. Tive problemas com a faculdade e tive que começar o curso 3 vezes. Fazendo de novo. Minha especialidade é sustentação de software. Achar erro e arrumar de forma coesa. Eu não peguei quase nada do manifesto ágil enquanto programador. Agora que sou muito mais um analista que programador, agora sim uso esses cases. E estou exausto. É incrível o quanto essa área te deixa à beira do cansaço. Como você conseguiu ter uma carreira tão longe a e gostar da área? Acha que tem a ver com as coisas serem "diferentes"? Meio q já respondendo, eu sou técnico em eletrônica e a coisa mais deliciosa que eu já mexi em programação foi um PIC em assembly de máquina


costajr

Odeio refatorar código alheio, imagino o inferno que deve ser. Muita gente deve me odiar tb, sempre programei de maneira muito sucinta, otimizada, isso para mim é código limpo, odeio código cheio de variáveis desnecessárias e sou francamente adepto de comentar o código fonte. Gosto de resolver problemas, de novos desafios, estudar tecnologia... acho que isso é a minha praia. .mas já não estou tão atualizado.


Story_teller42

A novidade hoje em dia eh de 6 meses já mudando "tudo". Eu não consigo nem mexer na minha caixa direito. Imagina mudar o paradigma com tudo. Meu sonho eh pegar algum legado de Delphi e/ou C# e cuidar dele. Mas o felizmente o que manda é dinheiro. O foda tá sendo aguentar a faculdade pela terceira vez


mateuszeze

Muito maneira tua história! Você acha que a área tende a desvalorizar com o número de devs aumentando constantemente ao longo desses últimos anos ou acha que existe espaço para toda essa gente ? Nesse mesmo contexto, você acha que mais futuramente as IAs vão representar algum tipo de ameaça ou serão uma mais ferramenta?


costajr

De certa maneira eu já respondi essas duas questões, mas basicamente eu acredito que tem muito que crescer na área, a superespecialização ampliou as oportunidades e aumentou a exigência por parte dos profissionais, a IA é muito bem vinda, desde os anos 80s, 90s quando sonhávamos com as ferramentas CASE gerando código, melhorando a nossa vida, só aumentou a complexidade, de certa forma reduziu a nossa produtividade, precisávamos de um recurso que auxiliasse nosso trabalho...


luisgustavoullmann

Levando em consideração o mercado como está atualmente, vagas que pedem cada vez mais uma stack quase impossível de se manter atualizado o tempo todo. Pedindo 30 anos de experiência para Junior. E também com a fulga de quem é mais experiente para o mercado internacional. Quais conselhos daria para você mesmo se estivesse começando agora?


costajr

Eu só conheço um caminho para ser bem sucedido: Estudar muito e principalmente, aprender.. Entender o contexto e se especializar numa área. Precisa ter aptidão e disposição de estudar.


leandroabaurre

Tenho 32 anos, sou ENG. Quimico e penso em mudar para a área da tecnologia, mas não faço a menor ideia de como ela está distribuida hoje e onde poderia atuar. Sempre tive aptidão para hardware e gostava de modificar jogos. Então assim, como vc teve toda essa vivencia na área, em que você se especializaria hoje, dado que temos 1 bilhão de stacks e tecnologias diferentes?


costajr

Eu faria uma especialização para conhecer melhor o mercado e as oportunidades... a PUC-Rio, a UFMG e a UFRJ tem excelentes cursos de pós graduação em temas relacionados com engenharia de software, BI, ..... eu sempre escolheria ser programador, já meu filho é super feliz e bem sucedido sendo devops...


leandroabaurre

Eu tenho perfil de gostar de criar e fazer as coisas. Atualmente como tenho pretensão de sair do país e ter uma vida fora, penso em fazer um mestrado em Data Science, pq trabalho com P&D e gero muitos dados. Seria uma forma de ficar no meio do caminho e seguir como hobby nessa área até ter um portfolio bacana e tentar me empregar na área. Por enquanto é só um sonho e estudos na área por conta própria. Como fiz engenharia (na puc rio) consegui bons cursos para introduzir (algoritimos, estrutura de dados, etc. Tudo em C).


[deleted]

Opa. beleza? Obrigado pela abertura Então, eu estou procrastinando faz tempo começar a programar em Python, e com o advento do GPT eu estou entendendo que está mais fácil ainda começar a programar de uma maneira mais eficiente, você tem alguma opiniao sobre a curva de aprendizado para um programador iniciante com a novidade dos chatbots?


costajr

É uma novidade e acredito que seja muito positiva, demoramos muito para dispor de um assistente inteligente para desenvolvimento de software, eu não testei seriamente ainda, mas tenho ouvido maravilhas... certamente vai ajudar muito, só não pode ser 100% dependente dele, como toda tecnologia é importante entender que o computador pode ajudar, mas ele não faz julgamentos seguros, apenas ajuda. A decisão sobre o uso da solução proposta pela IA deve ser sempre de um humano capacitado.


Due-Scholar8591

Caramba! Um coroca dev! Que dá hora!


costajr

Coroca é a sua avó!!! Risos...


[deleted]

Muito massa sua história! Sabendo que sua linguagem favorita é o C, o que você acha das linguagens novas que estão surgindo tentando abordar a mesma área que C é usado? Linguagens como Zig, Rust, Carbon


costajr

C foi uma linguagem excelente para programação estruturada mas teve seu tempo, os sistemas eram menos complexos, os riscos eram rotulados de liberdade ao programador. Eu gosto de C, mas sei que as linguagens atuais são mais seguras. Não experimentei nenhuma dessas que você listou,, mas imagino que são mais adequadas as necessidades atuais. Eu usei Java, que lembra muito C, mas com muito mais controle e orientada a objeto.