[OFF-Topic] Nível Programação.

4 views
Skip to first unread message

Rafael Soares

unread,
Nov 26, 2009, 3:00:30 PM11/26/09
to ccppb...@googlegroups.com

Primeiramente,

               

                Ficar apertando no REPLY de um assunto que estava encerrado não é a conduta correta. Muito menos porque cada um dá reply em um e-mail e vira sacanagem.

 

                No que me diz respeito, eu fiz uma comparação VÁLIDA e REAL. Existe uma GIGANTE diferença entre REALIDADE e MENTALIDADE, uma coisa é o que você acha e outra é o que existe. (Comercial x Científico) (Bacharel x Tecnólogo).

 

                Se alguém discorda do que eu falei, perfeito, esse é o intuito da lista, mas sinto muito por ser realista. Afinal eu estudo numa faculdade de Analise de Sistemas e não de Ciência da Computação e sei bem o que estou falando. Todo o meu conhecimento cientifico é obtido aparte. Concordo com muitos que isso não é JUTIFICATIVA, mas é um FATO.

 

                Em relação ao Cormen direi: “It’s a long way to the TOP if you wanna rock’n’roll”, o Cormen é o começo da estrada e não o final.

 

                No mais discutam a vontade, mas não distorçam o que eu falei. E por favor parem de usar aquele e-mail que o assunto já foi resolvido e tornou-se outro tópico.

 

Abraço,

 

Rafael Soares (indo pra aula de C nível ameba).

Ronaldo

unread,
Nov 26, 2009, 4:15:13 PM11/26/09
to ccppbrasil
Olá, Rafael e pessoal da lista.

Eu gostaria de expor algumas opiniões que vão na direção do que você
escreveu originalmente. Tenho visto que a lista é composta por muitos
estudantes e acho que vale a pena expor essas opiniões, principalmente
por que já tenho tempo de mercado que deve ser superior à idade de
alguns da lista, principalmente aqueles que acabaram de ingressar na
faculdade. E eu acredito que é uma forma daqueles que estão no fim da
carreira, como eu, renovarem as pessoas que estão iniciando-se.
Quisera eu ter um tutor quando aprendi a programar.

O mundo científico é o mundo ideal. Os projetos de software nesse
mundo usualmente resolvem um domínio de problemas que não se encontram
no dia-a-dia da computação comercial. É uma característica do setor.
Aplicações especialistas, como cálculo de ondas de choque para o
desenvolvimento de armas estratégicas, ou simulações climáticas são
áreas cujas classes de problema não se encontram no dia-a-dia da
computação dita "comercial". É possível, por exemplo, gastar-se tempo
argumentando-se a validade ou calculando-se a complexidade de
algoritmos, coisa impossível no mundo comercial.

Esse conhecimento teórico é, então, inválido para o dia-a-dia no "chão
de fábrica"? Claro que não. O conhecimento é uma ferramenta a mais na
mão do programador, analista e arquiteto de sistemas. Imagine que cada
profissional tem a seu lado uma caixinha de ferramentas que ele usa
para trabalhar. Fazendo um paralelo, imagine um borracheiro. Ele pode
tirar a roda do seu carro com uma chave estrela ou pode usar uma
parafusadeira pneumática para isso. O resultado é o mesmo, mas o
sujeito da parafusadeira pneumática será mais eficiente. Da mesma
forma, um programador com mais conhecimento tende a resolver os
problemas corriqueiros de maneira mais rápida e eficaz, pois tem à mão
mais ferramentas do que um programador com pouco conhecimento.

No mundo comercial o importante não é saber tudo, mesmo por que é
impossível. Porém, é importante desenvolver o bom senso a ponto de
balancear a teoria com a prática. A regra geral é escrever a menor
quantidade possível de código que resolva o problema proposto, da
forma mais rápida possível e de maneira eficaz. Para que isso ocorra,
é necessário muito estudo. Escrever código simples e objetivo é
incrivelmente difícil.

Um conselho que deixo para quem está iniciando-se na profissão é esse:
não ache que saber linguagem A, B ou C o torna melhor ou pior que
outro sujeito que sabe uma linguagem D ou E. Saber uma linguagem de
programação não faz ninguém programador, como saber português não faz
ninguém escritor. Programador programa em qualquer linguagem, não
interessa qual seja. Aprender uma nova linguagem é apenas questão de
aprender novas regras de sintaxe e semântica, que via de regra são
sempre muito parecidas entre as linguagens modernas. Se acham que
estou falando asneira, verifiquem as linguagens Java, C, C++ e Python,
por exemplo. As semelhanças são enormes. A diferença entre um sujeito
que apenas sabe linguagens de programação de outro que sabe estrutura
de dados, algoritmos, programação modular e conceitos de programação
procedural, orientada a objetos e orientada a aspectos será justamente
a caixa de ferramentas que eu citei. Quem vai resolver o problema de
maneira mais rápida e eficaz?

Espero ter contribuído com a lista. E perdão pelo texto longo. Julguei
importante abordar este tema dessa maneira.

Abraços,

Ronaldo

Michel Henrique Aquino Santos

unread,
Nov 26, 2009, 4:30:38 PM11/26/09
to ccppb...@googlegroups.com
gostei do texto...
agradeço aos conselhos. Sou estudante de ciência da computação e to começando agora...
receber conselhos de veteranos na area, nunca será desperdicio...


abraços!
--
Michel Henrique Aquino Santos
Bacharelado em Ciência da Computação
Universidade Federal de Lavras - UFLA
Linux User # 496756

A.F.

unread,
Nov 26, 2009, 10:09:07 PM11/26/09
to ccppb...@googlegroups.com


2009/11/26 Ronaldo <ronaldo.f...@gmail.com>


Olá, Rafael e pessoal da lista.

Eu gostaria de expor algumas opiniões que vão na direção do que você
escreveu originalmente. Tenho visto que a lista é composta por muitos
estudantes e acho que vale a pena expor essas opiniões, principalmente
por que já tenho tempo de mercado que deve ser superior à idade de
alguns da lista, principalmente aqueles que acabaram de ingressar na
faculdade. E eu acredito que é uma forma daqueles que estão no fim da
carreira, como eu, renovarem as pessoas que estão iniciando-se.
Quisera eu ter um tutor quando aprendi a programar.

O mundo científico é o mundo ideal. Os projetos de software nesse

O ideal é o mundo para o qual o profissional tem vocação. 

 
mundo usualmente resolvem um domínio de problemas que não se encontram
no dia-a-dia da computação comercial. É uma característica do setor.
Aplicações especialistas, como cálculo de ondas de choque para o
desenvolvimento de armas estratégicas, ou simulações climáticas são
áreas cujas classes de problema não se encontram no dia-a-dia da
computação dita "comercial". É possível, por exemplo, gastar-se tempo
argumentando-se a validade ou calculando-se a complexidade de
algoritmos, coisa impossível no mundo comercial.

(...) 

Esse conhecimento teórico é, então, inválido para o dia-a-dia no "chão
de fábrica"? Claro que não. O conhecimento é uma ferramenta a mais na
mão do programador, analista e arquiteto de sistemas. Imagine que cada
profissional tem a seu lado uma caixinha de ferramentas que ele usa
para trabalhar. Fazendo um paralelo, imagine um borracheiro. Ele pode
tirar a roda do seu carro com uma chave estrela ou pode usar uma
parafusadeira pneumática para isso. O resultado é o mesmo, mas o
sujeito da parafusadeira pneumática será mais eficiente. Da mesma
forma, um programador com mais conhecimento tende a resolver os
problemas corriqueiros de maneira mais rápida e eficaz, pois tem à mão
mais ferramentas do que um programador com pouco conhecimento.

No mundo comercial o importante não é saber tudo, mesmo por que é
impossível. Porém, é importante desenvolver o bom senso a ponto de
balancear a teoria com a prática. A regra geral é escrever a menor
quantidade possível de código que resolva o problema proposto, da
forma mais rápida possível e de maneira eficaz. Para que isso ocorra,
é necessário muito estudo. Escrever código simples e objetivo é
incrivelmente difícil.

Um conselho que deixo para quem está iniciando-se na profissão é esse:
não ache que saber linguagem A, B ou C o torna melhor ou pior que
outro sujeito que sabe uma linguagem D ou E. Saber uma linguagem de

A prepotência, arrogância e insolência não é bem vinda em lugar algum!  
 
programação não faz ninguém programador, como saber português não faz
ninguém escritor. Programador programa em qualquer linguagem, não
interessa qual seja. Aprender uma nova linguagem é apenas questão de
aprender novas regras de sintaxe e semântica, que via de regra são
sempre muito parecidas entre as linguagens modernas. Se acham que
estou falando asneira, verifiquem as linguagens Java, C, C++ e Python,
por exemplo. As semelhanças são enormes. A diferença entre um sujeito
que apenas sabe linguagens de programação de outro que sabe estrutura
de dados, algoritmos, programação modular e conceitos de programação
procedural, orientada a objetos e orientada a aspectos será justamente
a caixa de ferramentas que eu citei. Quem vai resolver o problema de
maneira mais rápida e eficaz?

Por via de regra será o mais esperto e produtivo que nem sempre é o mais erudito do time.

O bom senso é algo relativo (ele depende de uma série de fatores que vão sendo refinados com a experiência de vida)  e muitas vezes ele é confundido com senso comum, sendo-se que não é anormal eles serem antagônicos. 

 Conhecer arquitetura computacional, engenharia de software, paradigmas de programação e saber olhar pela janela, atrás da porta e debaixo do tapete também é importante, como dominar as linguagens; é o que fará o profissional perceber as diferenças (por exemplo) entre  Java, C, C++ e Python; e como suas peculiaridades o tornam tão distintas e adequadas (ou não) para determinado problema. Porém o senso comum do contexto no qual ele está inserido pode não permitir que ele empregue as soluções que o seu bom senso indica; amparado por seu conhecimento e experiência. Quem terá um bom senso melhor em programas desenvolvidos com uma linguagem como C++, por exemplo, normalmente é aquele que tem o maior domínio, portanto conhecer a linguagem profundamente é necessário.


Espero ter contribuído com a lista. E perdão pelo texto longo. Julguei
importante abordar este tema dessa maneira.


Este, no fundo, é um tema recorrente... 

victor malcolm

unread,
Nov 26, 2009, 10:32:14 PM11/26/09
to ccppb...@googlegroups.com
Falou tudo...
...sem palavras!


Chegou o Windows 7. Deixe seu computador mais simples e fácil. Clique para conhecer.

Ronaldo Faria Lima

unread,
Nov 28, 2009, 7:20:54 PM11/28/09
to ccppb...@googlegroups.com
2009/11/27 A.F. <alberto...@gmail.com>:

>
>
> O ideal é o mundo para o qual o profissional tem vocação.
Concordo com você, Alberto. Porém, eu estava com outro foco quando
falei sobre o mundo ideal. Mas seu ponto-de-vista está corretíssimo.

> A prepotência, arrogância e insolência não é bem vinda em lugar algum!

Concordo plenamente. O trabalho, conforme o conhecemos, é um evento
social. E a prepotência, arrogância e a insolência são falhas que
acabam por avacalhar com a sociabilização.

> Por via de regra será o mais esperto e produtivo que nem sempre é o mais
> erudito do time.
> O bom senso é algo relativo (ele depende de uma série de fatores que vão
> sendo refinados com a experiência de vida)  e muitas vezes ele é confundido
> com senso comum, sendo-se que não é anormal eles serem antagônicos.
>  Conhecer arquitetura computacional, engenharia de software, paradigmas de
> programação e saber olhar pela janela, atrás da porta e debaixo do tapete
> também é importante, como dominar as linguagens; é o que fará o profissional
> perceber as diferenças (por exemplo) entre  Java, C, C++ e Python; e como
> suas peculiaridades o tornam tão distintas e adequadas (ou não) para
> determinado problema. Porém o senso comum do contexto no qual ele está
> inserido pode não permitir que ele empregue as soluções que o seu bom senso
> indica; amparado por seu conhecimento e experiência. Quem terá um bom senso
> melhor em programas desenvolvidos com uma linguagem como C++, por exemplo,
> normalmente é aquele que tem o maior domínio, portanto conhecer a linguagem
> profundamente é necessário.
>

Excelente ponto-de-vista. Concordo plenamente.

> Este, no fundo, é um tema recorrente...

Tenho visto esse tema ocorrendo com bastante frequência mesmo.

Abraços!

Ronaldo

Reply all
Reply to author
Forward
0 new messages