Dia das Crianças Contra Códigos Maus

Dia das Crianças Contra Códigos Maus

O post é dedicado ao Dia das Crianças. Qualquer coincidência não é uma coincidência.

Aos 10 anos ganhei meu primeiro computador e um disco com Visual Studio 6. Desde então, tenho criado tarefas para mim mesmo - automatizar coisas, montar algum tipo de serviço web para três pessoas ou escrever um jogo que será então retirado do mercado de jogo devido à idade avançada. Claro, perdi o código-fonte e escrevi um código que tinha vergonha de mostrar às pessoas. E aos 10 anos, eu definitivamente não me recusaria a receber um arquivo do futuro com todos os erros - para nunca permitir que eles acontecessem.

Algumas semanas atrás, perguntei aos meus colegas do Yandex.Money o que eles aconselhariam agora a uma criança que deseja se tornar um especialista em TI e então me lembrei de algo sobre mim. Foi assim que este texto apareceu. Sugiro que conversemos sobre isso.

Não recomendo gastar muita energia na agonia da escolha; é melhor tentar de tudo e fazer de tudo. Quando você entende o que é o quê em termos gerais, você pode decidir por si mesmo em que direção precisa seguir e qual direção é melhor abandonar.

Sergey, programador júnior

Infância

Qual é a coisa mais divertida de fazer como programador quando ainda não há Internet?

Eu tinha dois deles - desmontar todos os jogos do disco “800 jogos em russo” com todos os programas do disco “Tudo que um hacker precisa” e depois reescrever todos os jogos nos quais passei mais de 10 horas do zero em BÁSICO. Não faz diferença o que acontece, mesmo que aconteça assim.

Dia das Crianças Contra Códigos Maus

Você pega, experimenta, reorganiza os blocos, experimenta e alcança tudo o que pode alcançar. Você desmonta o Windows, leva 10 horas para colocar o Windows de volta. Você está tentando recuperar os drivers? Você entende como o DOS funciona. Você descobre como os jumpers devem ser posicionados para que seu disco rígido inicialize no computador de um amigo (há 200 megabytes de jogos novos lá!). Você torce o software, torce o hardware, desmonta e remonta o computador. Afinal, você escreve um simulador de futebol há 13 anos.

Quando não há nada, você fica feliz por causa disso.

A importância do auto-exame não pode ser subestimada. Na minha opinião, os recém-chegados à TI subestimam o quão rigorosamente terão de controlar o seu produto (e também na análise) e quanto tempo leva em comparação com a parte puramente criativa. E quanto mais interessante você fizer, mais difícil e mais longo será o teste.

É claro que este é um conselho um tanto abstrato, mas se eu soubesse imediatamente.

E não recomendo focar em uma área de TI. Também aqui os horizontes são importantes.

Anna, analista de sistemas sênior

Ensino médio

Em algum momento, no fórum da cidade do condado de P, eles estavam discutindo programação - e apareceu um tópico lá com o título “Programadores PHP estão sendo procurados para uma grande empresa”. O texto do anúncio era:

В крупную компанию ищутся программисты PHP:

Для того, чтобы понять, стоит ли вам приходить на собеседование, выполните несложное задание: напишите программу на php, которая находит такие целые положительные числа x, y и z, чтобы x^5+y^5=z^5. (^ - степень).

Отвечать можете здесь.

Apenas algumas pessoas cancelaram a inscrição neste tópico – eu também estava lá. Com toda a minha ingenuidade de dezesseis anos, respondi:

Реально чет странное. Да и комп нужен неслабый, штоб ето найти...
Ибо от x,y,z <=1000 таких чисел нет-эт во первых (сел набросал в vb, большего ПОКА не дано), во вторых комп подсаживается намертво.

Не все равно чето нето, ИМХО.

Sim, é uma pegadinha, uma armadilha para novatos, sim, é um bastardo, e daí. Obviamente, gastei muito tempo em um script simples, mas esqueci completamente da existência do teorema de Fermat - que o autor do tópico, o venerável The_Kid, esclareceu bem no final.

Итог печален - в П. практически нет людей, знающих математику, но каждый второй мнит себя мего программистом. За три часа, на все форумах на которых я разместил сообщение, было суммарно около двух сотен просмотров... и всего два правильных ответа. А теорема Ферма - это ведь школьная программа, и условия ее настолько просты, что должны бросаться в глаза. Кстати, параллельно при опросе в аське 6 из 6 знакомых новосибирских студентов ответили «Это же теорема Ферма».
И кого после этого брать на работу?

Então isso me causou uma tempestade de indignação no espírito: “Se não escrevi sobre o teorema de Fermat, isso não significa que não o conheça”, desculpa clássica. Estou triste agora? Não, esta também é uma lição para a vida. Como quando meu jogo foi apresentado na Windows Phone Store da Indonésia e, duas semanas depois, foi removido porque não atualizei alguns dos termos do EULA.

E não está totalmente claro: se em uma grande empresa não há ninguém para contratar, quem deveria ser você? O que fazer? Onde crescer?

Você não deve pensar que depois de receber uma educação você se tornará um programador/motorista de táxi/matemático ou qualquer outra coisa.

Chegou o momento em que as disciplinas básicas (matemática, física, informática, filosofia) ganham muito mais importância num diploma do que as disciplinas aplicadas (programação, design em áreas específicas, etc.). O ensino superior passou a ser dividido em camadas - básico (engenharia) e aplicado. Você não deve aprender habilidades específicas, mas pensar, uma abordagem científica, entender como resolver problemas, habilidades interpessoais.

Isto é sobre a universidade. Uma pessoa ainda terá o resto da vida para usar as habilidades aplicadas.

Oleg, analista de sistemas líder

Universidade

Você escreve código em “vantagens”, você escreve código em Java. Você toca no montador, afasta a mão, fica preso no Qt e pensa por que eles estão fazendo isso com você. No quarto curso, ninguém se importa com o que você escreve nos próximos laboratórios importantes - os professores examinam o código de alguma forma.

É claro que isso não acontece em todos os lugares - há universidades onde isso é poderoso e bom, mas eles pegam crianças que resolveram problemas de ACM na escola, extraíram tudo da teoria dos grafos em aulas adicionais e encheram quanta memória todos os algoritmos do mundo para tudo que o mundo exige.

Não decidi, não fiz aulas extras, apenas completei meus estudos na aula de matemática, fazendo coisas interessantes ao longo do caminho. Spoiler: ninguém vai precisar deles nas entrevistas.

Primeiro, é melhor decidir o que você gosta em TI. Se você gosta de todas as direções, será difícil. Aprenda um pouco de idioma - não levará a nada, só haverá confusão no futuro.

Jan, especialista finlandês. monitoramento

História real - para um simulador do Windows feito com um amigo no colo no 10º ano, na universidade você pode fazer alguns exames e testes automaticamente. Você pode até contar a todos mais tarde como foi ótimo. O problema era que não era legal - tinha uma arquitetura confusa, um código terrível e uma completa falta de padrões para qualquer coisa.

Essas coisas devem ser feitas com um propósito: ter seu próprio catálogo de rake. Embora isso não o proteja da síndrome do impostor, quando você se encontra em uma grande empresa com algum conhecimento superficial de tudo e pensa que está prestes a ser exposto.

Dia das Crianças Contra Códigos Maus

Vou apoiar, é mais importante ajudar com conselhos sobre o que você pode fazer e onde obter informações, e não vice-versa. E não é nada assustador se a princípio ele tentar fazer algo pelo toque, - a consciência virá mais tarde. É importante gostar.

Eric, engenheiro de teste

Todos nós escrevemos planos de desenvolvimento - o que precisamos estudar, o que fazer no futuro próximo e como melhorar. Mas parece que todos nós poderíamos nos beneficiar escrevendo uma carta para o nosso passado – aqui está a minha.

  1. Não tenha pressa, encontre um livro e instale a distribuição Ubuntu que a Canonical lhe enviou gratuitamente. Há claramente um problema simples, o Ubuntu começa em qualquer lugar. E o Linux será muito útil para você.
  2. Não tenha medo do console. O Volkov Commander, é claro, cabe em um disquete, mas tente descobrir por que você precisa de todos esses comandos, familiarize-se com a linha de comando. E os disquetes morrerão. Os discos morrerão. Os pen drives também morrerão. Não se preocupe muito.
  3. Leia sobre algoritmos, entenda classificação, árvores e pilhas. Leia livros.
  4. Você não precisa de cursos pagos para entender o básico. O YouTube aparecerá em breve - você ficará surpreso.
  5. Não fique preso ao BASIC. Existem centenas de tecnologias no mundo que merecem sua atenção e um milhão de coisas que são mais interessantes do que desenhar formulários de usuários no Excel mais uma vez. Basta pegar o Python e você descobrirá.
  6. Aprenda a usar o Git, faça backup de todas as fontes. Escreva pelo menos um aplicativo cliente-servidor para entender como eles funcionam. Compreender redes, switches e roteadores.
  7. E se você está lendo isso agora, significa que nem tudo foi em vão.

Diga-nos nos comentários o que você escreveria para o seu eu do passado? Você tem algum conselho para os atuais alunos e estudantes que ainda estão em uma encruzilhada e tentando encontrar o caminho? Vamos conversar sobre isso.

Fonte: habr.com

Adicionar um comentário