É comum imprimir código em papel? [fechadas]

36

Eu gosto de manter minhas linhas de código com menos de 80 caracteres porque:

  • Não preciso fazer rolagem horizontal;
  • Eu sei que a linha provavelmente é muito complicada se exceder esse limite; e
  • imprime bem no papel.

No que diz respeito a este último, conheci apenas alguns que realmente imprimem código para analisar (eu sou um deles). Então, como é comum imprimir código?

gablin
fonte
1
Acho que a pergunta é por que você imprime código em papel?
Anon.
14
Não sei como é comum imprimir código, mas, a menos que a impressora seja uma relíquia de um tempo esquecido , ela pode imprimir mais de 80 caracteres por linha. 80 caracteres são usados ​​para promover a legibilidade e, historicamente, porque muitos terminais tinham apenas 80 colunas de largura, não por causa das impressoras.
12
@ Mark Na verdade, 80 caracteres vêm quando o código foi escrito em cartões perfurados com 80 caracteres de largura. E os 6 primeiros foram para códigos de controle e números de linha. É por isso que o código FORTRAN deve começar na coluna 7. #
ChrisF
3
@Aaron - isso provavelmente é bom para os programadores
ChrisF
5
@Aaron - Programadores é destinado a questões mais subjetivas (mas ainda construtivas) que cercam nossa profissão.
ChrisF

Respostas:

50

Ocasionalmente, ainda imprimo código - mas apenas se for um problema particularmente complicado.

Geralmente, indica que o código é muito complicado e precisa ser refatorado; portanto, na primeira instância, ter algo para rabiscar ajuda a encontrar e corrigir o problema e, em seguida, ajuda a descobrir onde o código deve ser dividido.

Em um mundo ideal de SÓLIDOS e SECO princípios que você deve ser capaz de ver o todo de um método em uma única tela. No entanto, não trabalhamos em um mundo ideal ...

ChrisF
fonte
4
+1 para "[a necessidade de examinar o código impresso] geralmente indica que o código é muito complicado e precisa ser refatorado ..."
Bill
Também funcionou bem para entender as condições da corrida. Imprimir os rastreamentos de pilha e compará-los lado a lado, as notas fazem, etc ...
rperetti
4
@peretti: Imprimir coisas como rastreamentos de pilha é muito diferente do que imprimir código. Porém, não as compare lado a lado - encontre uma janela (o tipo de vidro, não o da Microsoft). Coloque as duas impressões uma sobre a outra no vidro e as discrepâncias se destacam. (Obviamente, apenas durante o dia.)
Loren Pechtel
5
Não seria mais fácil compará-los com uma ferramenta diff?
Jeanne Pindar
14

Pode apostar. Mas lembre-se de imprimir em paisagem com 132 caracteres.

texto alternativo

Na Uni, eu costumava imprimir regularmente meu código em papel barra verde, é incrível como você tem uma noção física de quão profundo e complicado é o seu código quando o olha no papel. Ainda estamos (pelo menos a partir de hoje) mentalmente impressos de nossos dias do ensino fundamental na leitura de páginas e quanto cada página pode representar. Isso coloca uma boa metáfora de complexidade no código do computador.

texto alternativo

Jé Queue
fonte
13

ocasionalmente, talvez seja necessário examinar atentamente alguns códigos (geralmente novos para você), nos quais você precisa ver muito ao mesmo tempo. Em seguida, uma impressão pode ser inestimável para você poder ver a coisa toda de uma só vez.

Combinado com um marcador e uma caneta vermelha e verde, ele realmente ajuda a obter a visão geral. As anotações que você coloca no papel são posteriormente adicionadas de alguma forma ao código.

Observe que, com as impressoras coloridas modernas, você também pode obter cores de sintaxe no papel. Isso é realmente uma grande ajuda e é altamente recomendado.

(Também imprimo especificações para leitura - ou seja, para colocar notas na margem.)

user1249
fonte
8
+1 Quando alguém me entrega uma bagunça para refatorar, costumo imprimi-la e passar algum tempo de qualidade em um local agradável e ensolarado.
Sharpie
Como regra geral, se o módulo inteiro não couber em uma única tela, ele provavelmente precisará de um retrabalho pesado. Isso é especialmente verdadeiro desde que o modo VGA de 50 linhas se tornou disponível, não há 20 anos. Eu já disse isso antes e direi novamente: em quase 40 anos nesta raquete louca, eu vi exatamente UM (1) módulo que precisava ter mais de 60 linhas (uma página impressa) . (Eu tenho visto muitos módulos que eram mais do que isso, e todos eles "deixou muito a desejar" (frase Polite)..
John R. Strohm
@ John, por que precisava ter mais de 60 linhas?
@ user1249: Era a rotina de torpedos de fótons do jogo "STARTRK" ("Star Trek") de Matuszek-Reynolds-McGehearty-Cohen. Foi escrito em FORTRAN IV. Ele teve que analisar o comando, simular o voo de um ou três torpedos de fótons (possivelmente interrompendo se ocorresse um erro de ignição), com perturbações, e criar uma pilha para fazer a conectividade de 8 vias de estrelas que vão ser novas quando são torpedeadas ou adjacente a uma estrela que se transforma em nova e matando quaisquer klingons adjacentes a essas estrelas. FORTRAN IV não fez recursão e simplesmente não havia como fatorá-lo que não piorasse.
31915 John R. Strohm
12

Às vezes, imprimo para ler no trem e fazer anotações. Quando fico preso, gosto de espalhá-lo sobre uma mesa em uma silenciosa sala de conferências. Não tenho certeza se isso realmente ajuda, mas é uma boa mudança de ritmo.

Outro: Encontrei um código antigo que era uma instrução If / Then com vários aninhados que não cabia na tela. Eles deveriam ter demitido o ex-programador que escreveu isso, mas então eu ficaria sem emprego;)

JeffO
fonte
4
+1 para uma mudança de cena. Às vezes, apenas ver algo em um contexto diferente faz com que você pense sobre isso de maneira diferente.
91111 Jon Hopkins
3
+1 Você pode colocar mais páginas lado a lado em uma grande mesa de conferência do que na tela do computador. E você não se distrai com o Twitter ou e
Alex Jasmin
1
Se você se distrair com o Twitter ou e-mail, está fazendo algo errado. E-mail, twitter e vários outros mensageiros são assíncronos. Você não precisa responder o mais rápido possível.
mhr
8

Imprimo apenas o código para fazer uma revisão por pares . Fazer a revisão offline é, na minha opinião, mais eficiente do que fazê-lo em um computador com todo o material IDE perturbador (mas às vezes útil).

Se você tiver um (ou dois ou mais) monitores razoavelmente amplos, poderá abrir facilmente dois arquivos de origem divididos verticalmente no modo de tela cheia e não precisará obedecer a regulamentos de largura de linha muito restritivos.

E, em alguns casos, não preciso ver todo o conteúdo da linha (ou seja, as linhas que imprimem mensagens de depuração ou algo semelhante) e, portanto, não importa se a linha está cortada à direita.

Mas, para responder à sua pergunta: na minha opinião, não é mais tão comum imprimir código no papel.

eckes
fonte
8

Bem, eu imprimo código no papel com pouca frequência agora, mas costumava fazer isso o tempo todo.

Os motivos habituais hoje em dia são sentar em algum lugar quieto e explicar o código a um júnior, ou se um método longo é realmente corrigido e precisa de muito trabalho com caneta e papel. As telas nem sempre são suficientes, especialmente quando você deseja notas e destaque em todos os lugares.

Eu quase sempre mantenho o limite de 80 caracteres, pois estou inclinado a corrigir rapidamente os bugs via SSH em emergências e não gosto de ter terminais largos. Além disso, a rolagem horizontal é o diabo.

Orbling
fonte
5
+1 "rolagem horizontal é o diabo". Eu estava dizendo a alguém exatamente a mesma coisa semana passada.
precisa saber é o seguinte
8

Quando eu estava na adolescência, cursando o ensino médio (agora com 21 anos), não tinha conexão com a internet em casa. Por isso, frequentemente imprimia amostras de código e várias documentações da API para levar comigo para casa.

Nota lateral: é incrível quanto mais trabalho você pode realizar sem uma conexão à Internet, desde que você já tenha as informações necessárias.

Kevin Wiskia
fonte
6

Eu nunca imprimi meu código fonte. Eu nunca tive que fazer isso. O único código fonte que vi fora da tela do computador estava nos livros.

Eu usei minhas impressoras para outra coisa.

texto alternativo

user2567
fonte
1
Agora me sinto velho: D
wildpeaks
Como uma pessoa que nasceu depois desse software, foi divertido procurar isso.
Naltroc
5

Imprimo o código quando os dois monitores estão cheios e preciso fazer referência constante a algo. Uma folha de papel sobre a mesa é um monitor adicional do homem pobre.

whatsisname
fonte
Coloque no monitor # 3 então!
Loren Pechtel
4

Então, como é comum imprimir código?

Era comum há muitos anos, nos tempos da programação do DOS, 80 caracteres preenchendo com precisão uma página impressa. Como tínhamos impressoras matriciais, a limitação provavelmente estava do lado do hardware. Também era o limite na tela do console.

Atualmente, as pessoas quase não imprimem código, a única exceção são pequenos trechos de código impressos como exemplos de teste para entrevistas de emprego.

Atualmente, as pessoas trabalham principalmente com monitores grandes, Full HD e muito mais. Normalmente, estico para 150-200 caracteres sem pensar em efeitos colaterais de impressão.

Quando é hora de discutir em equipe, alguém geralmente pega um laptop e o conecta a um projetor. Mais uma vez, ninguém imprime o código.

A última vez que imprimi código foi há cerca de 8 anos para o meu diploma universitário, que tenho certeza que ninguém leu - o código que eu quero dizer :-). Nunca mais precisei.

user8685
fonte
Já faz eras desde que imprimi outro código que não em uma página da web. Mas não concordo com o tamanho da sua linha - mesmo que você consiga entender muito, é difícil seguir. Eu raramente ir passado sobre 100 caracteres e eu gostaria de mantê-lo para cerca de 80.
Loren Pechtel
@ Loren Pechtel: A coisa é que eu gosto de nomes descritivos longos para métodos e variáveis. Com apenas 80 caracteres, eu estaria lutando para mantê-lo compacto e formatado corretamente. Claro que é apenas o meu caso.
Você fez a programação do DOS em um console de crt? Tivemos cartões perfurados. O limite de 80 caracteres foi resultado dos cartões perfurados. Ser capaz de estudar código em 3 ou 4 páginas ao mesmo tempo é bastante útil. Acho que é por isso que ainda prefiro impressões. É mais fácil navegar pelas funções relacionadas.
Huperniketes
Também gosto de nomes longos - é por isso que às vezes acabo indo a 100 caracteres.
Loren Pechtel 11/01
4

O código de impressão tornou-se obsoleto em algum lugar entre 1975 e 1982, exceto por razões especiais:

  • código para lê-lo durante um trajeto
  • código antigo que entra na especificação de um novo projeto que o substituirá
  • lidar com erros flagrantes; é mais seguro agredir um colega de trabalho com uma pilha de papel do que um monitor
user281377
fonte
1
Pummeling é subestimado.
Keith Layne
3

Nossos advogados de propriedade intelectual exigem uma "cópia impressa" para a apresentação de direitos autorais.

Não sei se eles realmente imprimem em papel. Envio a eles um PDF que eles podem imprimir ou incluir no arquivo de direitos autorais.

S.Lott
fonte
3

Não mais. Eu costumava fazer isso o tempo todo nos dias pré-IDE, quando a matriz de pontos com alimentação contínua era a norma. Você pode espalhar essas impressões e folhear facilmente. As modernas impressoras a laser / jato de tinta alimentadas a folha são um enorme passo atrás. Agrafá-los juntos não flui tão bem e não grampear resulta em folhas soltas que se misturam. IDEs modernos com realce automático e navegadores de método também eliminam classes inteiras de erros detectados pelo exame de impressões.

Brian Knoblauch
fonte
2

Às vezes, imprimo meu código porque estou em um monitor pequeno (15 "). Às vezes, preciso combinar dois programas e é muito difícil alternar entre eles. Porém, não faço isso com frequência, apenas quando necessário .

sange
fonte
Monitores duplos! ;)
Pemdas
@Pemdas Desejo, lol.
sange
Eu uso um 15 "em casa devido à falta de espaço na mesa.
Orbling
2

Imprimo meu código no papel muito ocasionalmente e somente quando quero fazer alguma depuração off-line séria ou me familiarizar com o código de outra pessoa - para que valha a pena fazer apenas por cortesia.

Além disso, eu provavelmente estaria mais apto a imprimir um esquema de banco de dados em papel do que em código.

Eu acho que a questão da rolagem horizontal é um incômodo e uma razão maior para manter <120 caracteres ou mais.

Peter Turner
fonte
Na verdade, 80 caracteres ainda é um bom marcador para a questão da rolagem horizontal. Os desenvolvedores geralmente têm dois painéis de origem e, mesmo na minha resolução de 1680, só consigo 107 caracteres antes de rolar quando tenho dois painéis lado a lado. Além disso, prefiro se o código não for completamente para a margem certa.
Craige 10/01
1
O @Craige depende do tamanho da fonte e do DPI, além de quanto lixo você tem nos dois lados da tela (se você estiver em um IDE). Comecei a usar o XTerm em vez do Terminal Gnome padrão ao codificar via SSH por esse motivo - não que eu não pudesse ter apenas alterado a fonte.
Peter Turner
Petit Turner - isso é verdade, mas o meu Eclipse está configurado de uma maneira que minimiza o desperdício de espaço quando preciso chegar à codificação. Quase não há espaço desperdiçado à esquerda e à direita dos meus editores. O tamanho da fonte também é bastante padrão. O ponto sendo - 80 caracteres é um bom comprimento de destino para tornar a fonte legível nas mais diversas condições.
Craige
2

Imprimo apenas o código que acompanha um artigo científico. Como esse código frequentemente fornece a implementação de um algoritmo (um complexo, eu diria), e você precisa de algumas horas para processá-lo.
Duvido que imprimisse o código que contém instruções SQL ou alguma programação da GUI.

Sorantis
fonte
2

Às vezes, imprimo o código para tentar entender os problemas espinhosos de várias páginas.

Christopher Mahan
fonte
+1 Faz-me desejar que ainda tivéssemos uma impressora matricial com bobinas sem fim de papel.
Peter Turner
com linhas verdes e bronzeadas alternadas? Mas tão devagar !!!
Christopher Mahan
2

Quase nunca

Pensei muito difícil lembrar de uma época em que imprimi código ou vi código impresso. E posso dizer honestamente que não me lembro de uma única vez (exceto o código pseudo).

Não estou sugerindo que não haja razões legítimas para imprimir código.

Noite escura
fonte
2

Acho mais fácil descobrir grandes módulos se eu puder imprimi-los e ver rapidamente várias seções. Provavelmente, eu poderia fazer algo semelhante com vários monitores, mas se houver mais de 2 a 3 lugares no código, é mais rápido espalhá-lo em um só lugar do que continuar rolando e acompanhando os marcadores. Também gosto de marcar as impressões com alterações, em vez de fazê-las no editor, porque posso ver o código antigo e o novo código lado a lado. Claro, eu poderia comentar o código antigo no editor, mas se você estiver substituindo mais do que algumas linhas, acabará rolando o código antigo para fora do monitor, para não ficar melhor.

Dito isto, quase nunca imprimo mais código. Foi ótimo em papel dobrado em leque, onde toda a listagem era contínua e você tinha bastante espaço para anotações nas margens, mas imprimir tudo em páginas individuais de tamanho carta é quase tão ruim quanto mantê-lo na tela. Especialmente quando o editor insiste em colocar cabeçalhos e rodapés em margens de 1 ". Felizmente, os IDEs modernos oferecem muitas ferramentas que reduzem a necessidade de imprimir as coisas.

TMN
fonte
1

Não imprimo nada para mim e só imprimo para outras pessoas quando não consigo sair dela. Eu odeio receber impressões também. Eles bagunçam minha mesa e eu sou responsável por eles (salve-o? Arquive-o? Rasgue-o? Use-o como sucata?)

Lembre-se de que trabalho perto de alguém que faz codificação de mainframe há algumas décadas e tem uma pilha de impressões de códigos ao lado dele.

Faça o que funciona para você, eu acho. Apenas não deixe suas impressões na minha mesa, obrigado.

Jay
fonte
1

Uma resposta ligeiramente diferente das anteriores.

Sou estudante e me pego imprimindo código para várias tarefas de curso, mas não para todas as unidades em que tenho que escrever código.

No meu primeiro ano, a maioria das unidades exigiu uma cópia impressa, além de um upload eletrônico ou uma cópia gravada em CD (sim, um CD para um arquivo zip de 5 Mb ...) [Escolha do professor]

Atualmente, estou no meu segundo ano e até agora tivemos apenas um upload eletrônico e uma entrega do Hardcopy + CD.

Considerando que temos o Moodle, que permite o envio eletrônico de cursos, é por isso que nem sempre carregamos o código está além de mim - temos que pagar para imprimir as coisas nas impressoras da universidade e não há um único gravador de CD em nenhum dos PCs que eu conheço. Obviamente, os professores não gostam do Moodle - mas isso é outra questão.

Aliás, eu sou um estudante universitário do Reino Unido, e não um aluno pequeno e desconhecido. O meu estava no top 10 da Uni's de acordo com o The Times / Guardian quando eu olhei pela última vez.

Megan Walker
fonte
Isso me lembra um projeto que fiz na uni, em que era necessário um relatório por escrito. Tinha que ter 10 páginas e o código tinha que ser anexado como um apêndice, porque o palestrante gostava de olhar o código enquanto lia o relatório. Felizmente, o apêndice não contava com o número total de páginas. Assim, o conferencista recebeu um arquivo PDF de 90 páginas. Não sei se ele realmente imprimiu o documento. ^^
gablin
1

As novas ferramentas me suportam melhor e permitem navegar rapidamente e oferecem muitos tipos de resumos e visualizações. Portanto, não imprimo com tanta frequência como antes. Mas a leitura seqüencial das impressões ainda é mais fácil. Minha principal razão pessoal para imprimir é psicológica: ela me impede de continuar pesquisando e enquanto a impressora imprime, começo a pensar! Além disso, o efeito benéfico de ficar em pé e caminhar até a impressora não deve ser subestimado :)

fausto
fonte
0

Imprimo código para poder fazer uma comparação lado a lado (meus monitores no trabalho não são widescreen). Em casa, tenho uma tela ampla para poder ver confortavelmente dois documentos lado a lado.

IAbstract
fonte
0

Nos dias em que as leis dos EUA não permitiam a exportação de criptografia forte, os desenvolvedores de código aberto baseados nos EUA costumavam imprimir códigos e enviá-los por correio fora dos EUA, onde eram digitalizados por voluntários. Mas não tenho certeza se isso responde à sua pergunta;)

RDA
fonte
0

Eu imprimo código peludo de vez em quando para tentar descobrir. Também imprimi a desmontagem ao depurar algo "estranho".

Logan Capaldo
fonte
0

No meu último trabalho, eu imprimia código para revisões de código. É bom poder destacar / marcar um pouco de código ao fazer uma revisão de código, para que você tenha uma boa referência para quaisquer problemas levantados durante a revisão.

Além disso, quando precisei refatorar (acabei sendo uma reescrita) um pedaço de código particularmente retorcido e torcido, imprimi o código-fonte, colei as impressões na parede e usei pedaços de barbante para mostrar como lógica foi tecida em conjunto.

Cercerilla
fonte
0

Hoje em dia, nunca. Eu tenho o suporte de vários monitores se precisar fazer referência a algum código particularmente difícil. Os discos rígidos modernos não vão piscar para mim, armazenando códigos com vários milhares de linhas. Imprimir o código IMHO é um desperdício e geralmente inútil, mas sou apenas eu.

Dito isso, quando eu estava aprendendo a desenvolver / programar, não pensava em imprimir 20 páginas de código, então suponho que possa haver um tempo e um local para isso, mas acho que hoje em dia não há muita utilidade para isso.

Mark D
fonte
0

Imprimo meu código o tempo todo, mas apenas porque sou um aluno que precisa fazer isso para entregá-lo ao instrutor.

No entanto, como tenho acesso a vários monitores ( como qualquer bom desenvolvedor ), não tive muitas situações em que preciso imprimir o código fonte para referência. Certa vez, imprimi um dos scripts que utilizei para preencher um banco de dados, para poder ver rapidamente o esquema, mas não o uso muito.

DragonLord
fonte
0

Eu costumava imprimir códigos com bastante frequência, mas faço menos agora que tenho vários monitores em minha mesa - geralmente vou manter uma parte de uma lista que estou usando como referência no meu monitor direito (o que é um pouco lado) e meu trabalho atual na minha frente.

Se eu imprimo ode, quase sempre é o código de alguém ou de outro lugar (biblioteca) que eu quero estudar e preciso virar as páginas para frente e para trás.

Quase sempre imprimo código no modo paisagem, devido à tendência de usar linhas longas.

tcrosley
fonte
0

Nos últimos dez anos, lembro-me apenas de imprimir código, para poder usar canetas marca-texto para marcar seções que têm algo em comum antes de planejar como refatorar o código.

No entanto, às vezes sinto falta de imprimir em um amplo papel contínuo, pois colocar o código no chão pode fornecer uma boa visão geral, principalmente junto com canetas marca-texto e post-it. Os pagers impressos em A4 não são melhores do que um monitor razoável.

Os monitores ficaram muito melhores e maiores, enquanto as impressoras são piores para código do que costumavam ser.

Ian
fonte