Software = Bom Salário?

[quote=Rodrigo.Rocha][quote=A H Gusukuma]

Conhece aquela anedota do cara que concorda com tudo ou discorda de tudo?[/quote]

Não… Conta pra nós.[/quote]
Sinto muito, essa só tem graça se for contada por um profissional!

[quote=Rodrigo.Rocha][quote=misterzire][quote=Rodrigo.Rocha][quote=A H Gusukuma]
Cara, você entendeu.
Uma pergunta você é programador ou advogado? hehehe[/quote]

Nenhum dos dois.

Sei programar mas não considero uma profissão, da mesma forma que saber escrever não torna alguém um profissional de letras. ;)[/quote]

Programar é sim uma profissão ! Agora como em qualquer setor existem os AMADORES.

Nesse caso a frase acima na verdade seria :

Sei programar mas não sou PROFISSIONAL . Sou AMADOR!
[/quote]

O que é um escritor profissional pra vc?

Pra mim é quem publica livros. Se você não publica livros, não é um escritor. Não existe meio termo.

Da mesma forma eu digo que não existe programador profissional, e sim pessoas que publicam software.

Quando se fala em programador como profissão, geralmente nos referimos a papéis intermerdiários (especificadores, implementadores, testers). Estes são profissionais de informática, e não “programador profissional”.
[/quote]

Profissional,em qualquer area eh quem vive daquilo. Programador profissional eh aquele cuja profissao eh programar.

Amador eh quem faz por esporte ou hobby.

[quote=YvGa][quote=Rodrigo.Rocha][quote=misterzire][quote=Rodrigo.Rocha][quote=A H Gusukuma]
Cara, você entendeu.
Uma pergunta você é programador ou advogado? hehehe[/quote]

Nenhum dos dois.

Sei programar mas não considero uma profissão, da mesma forma que saber escrever não torna alguém um profissional de letras. ;)[/quote]

Programar é sim uma profissão ! Agora como em qualquer setor existem os AMADORES.

Nesse caso a frase acima na verdade seria :

Sei programar mas não sou PROFISSIONAL . Sou AMADOR!
[/quote]

O que é um escritor profissional pra vc?

Pra mim é quem publica livros. Se você não publica livros, não é um escritor. Não existe meio termo.

Da mesma forma eu digo que não existe programador profissional, e sim pessoas que publicam software.

Quando se fala em programador como profissão, geralmente nos referimos a papéis intermerdiários (especificadores, implementadores, testers). Estes são profissionais de informática, e não “programador profissional”.
[/quote]

Profissional,em qualquer area eh quem vive daquilo. Programador profissional eh aquele cuja profissao eh programar.

Amador eh quem faz por esporte ou hobby.
[/quote]

Antigamente escribas (gente cuja profissão era escrever) tinham influência na sociedade.

Mas o que aconteceu quando a maior parte da população aprendeu a escrever? De repente essas pessoas não puderam mais sobreviver da sua profissão, e com o tempo ela deixou de existir.

Pra viver como escritor hoje só publicando obras completas, e olhe lá.

Acredito que o mesmo processo de extinção vai acontecer com profissionais de informática, só que vai ser muito mais rápido.

Se software se tornar tão pervasivo na sociedade quanto a escrita, ninguém mais vai conseguir viver como codificador, porque qualquer um vai poder codificar. E quando isso acontecer programador como profissão estará com os dias contados.

[quote=Rodrigo]

Antigamente escribas (gente cuja profissão era escrever) tinham influência na sociedade.

Mas o que aconteceu quando a maior parte da população aprendeu a escrever? De repente essas pessoas não puderam mais sobreviver da sua profissão, e com o tempo ela deixou de existir.

Pra viver como escritor hoje só publicando obras completas, e olhe lá.

Acredito que o mesmo processo de extinção vai acontecer com profissionais de informática, só que vai ser muito mais rápido.

Se software se tornar tão pervasivo na sociedade quanto a escrita, ninguém mais vai conseguir viver como codificador, porque qualquer um vai poder codificar. E quando isso acontecer programador como profissão estará com os dias contados.[/quote]

Sinceramente, achar que programar é ser um codificador é ter uma visão muito simplista e não levar em consideração uma série de capacitações que um programador precisa ter.
Só para começar a pensar, vamos admitir que alguém saiba programar muito bem, vai fazer um programa para acessar dados bancários? Dados governamentais? Compras online? Ou, vamos ser menos ambiciosos, vai desenvolver um editor de texto para uso pessoal?

Acabei de elaborar um post sobre como alcançar a excelência em programação baseado num artigo do Norvig, que em resumo diz que precisa dedicar uns 10 anos (ou 10.000 horas) para atingir isso. ( link do meu blog abaixo).

Achar que alguém com noções básicas de computação vai substituir um programador com estudos específicos, treinamento e prática me parece despropositado. De duas uma: ou é provocação ou desconhecimento de causa. Se tiver uma outra opção, por favor, me corrija!

[quote=Rodrigo.Rocha]
Antigamente escribas (gente cuja profissão era escrever) tinham influência na sociedade.

Mas o que aconteceu quando a maior parte da população aprendeu a escrever? De repente essas pessoas não puderam mais sobreviver da sua profissão, e com o tempo ela deixou de existir.

Pra viver como escritor hoje só publicando obras completas, e olhe lá.

Acredito que o mesmo processo de extinção vai acontecer com profissionais de informática, só que vai ser muito mais rápido.

Se software se tornar tão pervasivo na sociedade quanto a escrita, ninguém mais vai conseguir viver como codificador, porque qualquer um vai poder codificar. E quando isso acontecer programador como profissão estará com os dias contados.[/quote]

Kkkkkkkkkkkkkkkkkkkkkkkkkkkkk faz-me rir…
Desculpa, mas pra você ter feito uma comparação deste tipo, suponho que você não desenvolveu NUNCA nada mais do que um gerenciador de estoque e um blog… isso se for muito.

Ps: Me corrija se estiver errado.

[quote=Rodrigo.Rocha][quote=YvGa][quote=Rodrigo.Rocha][quote=misterzire][quote=Rodrigo.Rocha][quote=A H Gusukuma]
Cara, você entendeu.
Uma pergunta você é programador ou advogado? hehehe[/quote]

Nenhum dos dois.

Sei programar mas não considero uma profissão, da mesma forma que saber escrever não torna alguém um profissional de letras. ;)[/quote]

Programar é sim uma profissão ! Agora como em qualquer setor existem os AMADORES.

Nesse caso a frase acima na verdade seria :

Sei programar mas não sou PROFISSIONAL . Sou AMADOR!
[/quote]

O que é um escritor profissional pra vc?

Pra mim é quem publica livros. Se você não publica livros, não é um escritor. Não existe meio termo.

Da mesma forma eu digo que não existe programador profissional, e sim pessoas que publicam software.

Quando se fala em programador como profissão, geralmente nos referimos a papéis intermerdiários (especificadores, implementadores, testers). Estes são profissionais de informática, e não “programador profissional”.
[/quote]

Profissional,em qualquer area eh quem vive daquilo. Programador profissional eh aquele cuja profissao eh programar.

Amador eh quem faz por esporte ou hobby.
[/quote]

Antigamente escribas (gente cuja profissão era escrever) tinham influência na sociedade.

Mas o que aconteceu quando a maior parte da população aprendeu a escrever? De repente essas pessoas não puderam mais sobreviver da sua profissão, e com o tempo ela deixou de existir.

Pra viver como escritor hoje só publicando obras completas, e olhe lá.

Acredito que o mesmo processo de extinção vai acontecer com profissionais de informática, só que vai ser muito mais rápido.

Se software se tornar tão pervasivo na sociedade quanto a escrita, ninguém mais vai conseguir viver como codificador, porque qualquer um vai poder codificar. E quando isso acontecer programador como profissão estará com os dias contados.[/quote]

Na Internet tu acha os manuais de manutenção do carro que tu precisar. Inclusive eu tenho o do meu carro, por curiosidade mesmo.

Aí te pergunto: Tu acha que eu me esforço pra aprender a consertar meu carro pra não ter que gastar com mecânico?

Claro que não né. Não gosto de consertar carros, só gosto de usá-los, portanto pago pra quem goste de consertar…

Comparação infame, mas perfeitamente condizente com a TI.

Apesar de todas as ferramentas surgindo pra abstrair e facilitar o desenvolvimento de software, você acha que todo mundo tem paciência pra passar semanas na frente de um PC desenvolvendo?

Não é todo mundo que tem conhecimentos satisfatíveis de lógica pra desenvolver software.

Pode existir a ferramenta mais maravilhosa e fácil pra desenvolver aplicações, mas você vai continuar tendo que manjar bem de lógica.

Vejo que a área de TI caminha para a especialização. O cara que quer prosperar tem que se especializar em algo. A cada dia surgem novos usos para TI, a cada dia novas áreas do conhecimento necessitam de soluções informatizadas e principalmente especializadas.

Acontece que a área está finalmente amadurecendo e a medíocredade(existe essa palavra? :stuck_out_tongue: ) está deixando de existir…

Quanto tempo você gastou estudando pode ser uma medida de excelência para outros programadores, mas não acredito que é uma medida de valor para o mercado.

Como disse o colega, profissional em qualquer area é quem é pago pra fazer algo, e se um número suficiente de pessoas é pago pra codificar, então é codificar o que define programador como profissão.

[quote=Rodrigo.Rocha][quote=A H Gusukuma]
Sinceramente, achar que programar é ser um codificador é ter uma visão muito simplista e não levar em consideração uma série de capacitações que um programador precisa ter.
Só para começar a pensar, vamos admitir que alguém saiba programar muito bem, vai fazer um programa para acessar dados bancários? Dados governamentais? Compras online? Ou, vamos ser menos ambiciosos, vai desenvolver um editor de texto para uso pessoal?

Acabei de elaborar um post sobre como alcançar a excelência em programação baseado num artigo do Norvig, que em resumo diz que precisa dedicar uns 10 anos (ou 10.000 horas) para atingir isso. ( link do meu blog abaixo).

Achar que alguém com noções básicas de computação vai substituir um programador com estudos específicos, treinamento e prática me parece despropositado. De duas uma: ou é provocação ou desconhecimento de causa. Se tiver uma outra opção, por favor, me corrija!

[/quote]

Quanto tempo você gastou estudando pode ser uma medida de excelência para outros programadores, mas não acredito que é uma medida de valor para o mercado.

Como disse o colega, profissional em qualquer area é quem vive daquilo, e se um número suficiente de pessoas vive de codificar, então é codificar o que define programador como profissão.
[/quote]
Dá uma procurada por dados estatísticos sobre quanto tempo um programador gasta do seu tempo codificando (média).
Se um cara gastar mais de 20% (na média) codificando, provavelmente ele estará refazendo código, pois não elaborou o suficiente e saiu codificando!

Exatamente, e quando todos estiverem fazendo o mesmo, não haverá mais motivo pra existirem mecânicos.

[quote=Rodrigo.Rocha][quote=Ruttmann]
Não gosto de consertar carros, só gosto de usá-los, portanto pago pra quem goste de consertar…
[/quote]

Exatamente, e quando todos estiverem fazendo o mesmo, não haverá mais motivo pra existirem mecânicos.[/quote]
Não seria exatamente o contrário?

Editei meu post pra esclarecer o que estou tentando dizer.

[quote=Rodrigo.Rocha][quote=A H Gusukuma]
Dá uma procurada por dados estatísticos sobre quanto tempo um programador gasta do seu tempo codificando (média).
Se um cara gastar mais de 20% (na média) codificando, provavelmente ele estará refazendo código, pois não elaborou o suficiente e saiu codificando!

[/quote]

Editei meu post pra esclarecer o que estou tentando dizer.[/quote]
Entendo o seu ponto de vista, só não concordo com ele!

[quote=A H Gusukuma][quote=Rodrigo.Rocha][quote=Ruttmann]
Não gosto de consertar carros, só gosto de usá-los, portanto pago pra quem goste de consertar…
[/quote]

Exatamente, e quando todos estiverem fazendo o mesmo, não haverá mais motivo pra existirem mecânicos.[/quote]
Não seria exatamente o contrário?[/quote]

Talvez, quem gosta de consertar é mecânico né? :smiley:

Mas estava me refeindo aos mecânicos que usavam manuais antes de estarem disponíveis pra todo mundo. Estes vão ter que abrir oficinas ou se contentar com um salário menor.

[quote=Rodrigo.Rocha][quote=Ruttmann]
Não gosto de consertar carros, só gosto de usá-los, portanto pago pra quem goste de consertar…
[/quote]

Exatamente, e quando todos estiverem fazendo o mesmo, não haverá mais motivo pra existirem mecânicos.[/quote]

Não cara.

Nada é tão bom que alguém em algum lugar não vá odiar. Nada é tão legal ao ponto de que todo mundo vá gostar.

A profissão de mecânico nunca vai se extinguir. Eu não gosto de mecânica, não tenho interesse algum em aprender mecânica só pra economizar no conserto do meu carro. Não tenho as “skills” necessárias pra aprender mecânica também.

Do mesmo modo com programação. Não é todo mundo que tem paciência em ficar pensando em lógica de funcionamento, regra de negócio e afins.

Concordo que a tendência para o futuro é ensinar mais lógica e contato com programação nas escolas. A lógica te dá um “up” no raciocínio, te deixa com mais atenção, apura as tuas decisões, ajuda muito com matemática.

Mas não é porque todo mundo vai ser obrigado a aprender lógica, que todo mundo vai se tornar programador.

Tem o Matisse do NetBeans, o WindowBuilder do Eclipse, tem Genexus, tem Visual Studio, um monte de ferramentas que agilizam e muito o desenvolvimento de aplicações.

Hoje em dia se o cara quer fazer um app Desktop pra resolver sistemas lineares, não precisa estudar a fundo a computação. Tá cheio de biblioteca pra ajudar o cara a passar pro computador as regras de escalonamento. Tá cheio de recursos pra fazer uma interface gráfica legal.

Isso eu concordo, é coisa simples, gurizinho de 12 anos consegue fazer na boa, basta se esforçar um pouco.

Mas e cálculos de engenharia? Aeronáutica? Exploração espacial? Isso tudo precisa de gente especializada! Vai ter que ter um cara que manja muito de fundamentos da computação, pra fazer o sistema rodar o mais rápido possível, mesmo tendo que fazer milhões de cálculos por segundo. Tem que ter um cara que entende muito de Matemática, pra elaborar os modelos, os cálculos e fazer a ponte com o programador.

Isso tudo é muito especializado, não é coisa que um usuário comum consiga fazer.

Por isso repito o que disse no post anterior, nosso setor caminha para a especialização. Os medíocres vão notar que o que eles fazem há anos, tem gurizada que faz em casa no final de semana.

Ou se especializa ou cai fora, simples! Mas a área nunca vai “acabar”…

[quote=Ruttmann]
Mas e cálculos de engenharia? Aeronáutica? Exploração espacial? Isso tudo precisa de gente especializada! Vai ter que ter um cara que manja muito de fundamentos da computação, pra fazer o sistema rodar o mais rápido possível, mesmo tendo que fazer milhões de cálculos por segundo. Tem que ter um cara que entende muito de Matemática, pra elaborar os modelos, os cálculos e fazer a ponte com o programador.

Isso tudo é muito especializado, não é coisa que um usuário comum consiga fazer.[/quote]

Mas o que faz vc acreditar que algoritmos mais complexos não estarão disponíveis na internet pra qualquer um baixar e usar?

[quote]Por isso repito o que disse no post anterior, nosso setor caminha para a especialização. Os medíocres vão notar que o que eles fazem há anos, tem gurizada que faz em casa no final de semana.

Ou se especializa ou cai fora, simples! Mas a área nunca vai “acabar”…[/quote]

Nem tanto assim, nós precisamos mais de “generalistas” do que de especialistas. Estou falando em quantidade. É claro que precisamos mais de especialistas, mas, não significa que precisamos de que a quantidade de especialistas seja maior que a de “generalistas”.
Outra coisa, tenha cuidado em chamar pessoas de “medíocres” baseado em formação profissional, isso é valorizar muito o “ter” em detrimento do “ser”.
Abraços

Uma coisa vcs hão de concordar:

Hoje em dia é mais fácil vc dizer que é programador do que mecânico. Mecânico precisa ter empresa aberta, espaço físico, ferramentas, etc, etc. Para se dizer programador, basta um notebook com Eclipse instalado, facinho…

[quote=Rodrigo.Rocha]Mas o que faz vc acreditar que algoritmos mais complexos não estarão disponíveis na internet pra qualquer um baixar e usar?
[/quote]
Mas eles estão, pelo menos em sua grande maioria. A questão, é como usar. Um exemplo básico, Quicksort e Mergesort são dois algoritmos que no melhor caso tem sua complexidade medida em O(n log(n)). Qual dos dois é a melhor opção então?
Depende. O quicksort é ligeiramente melhor para quando os dados estão alocados na memória principal (in-place), já o mergesort é muito melhor quando os dados são esparsos e gravados em armazenamento externo, por exemplo, discos rígidos. Há de se lembrar também que o pior caso do quicksort - O(n²) é mais custoso que o pior caso do mergesort - O(n log(n)). Cabe ao desenvolvedor ter ciência de quando usar cada um.

Outro exemplo? A* é um algoritmo de busca heurística do menor caminho. A função de custo dele pode ser escrita como f(x) = g(x) + h(x), onde f(x) é o custo total do algoritmo, g(x) é o custo total do caminho percorrido do ponto inicial até o ponto x e h(x) é o custo da função de heurística do ponto x até o destino. Essa função de heurística deve ser modelada especificamente para o problema em questão, o que demanda do programador um bom domínio do problema geral. É a parte mais sensível do algoritmo.

E isso é apenas uma explicação breve sobre alguns algoritmos que são ensinados na faculdade e que foram criados a mais de 50 anos atrás. Imagina os casos de algoritmos realmente específicos, de aplicações de alto desempenho onde o programador deve codificar o algoritmo “from scratch”? Não basta apenas saber o algoritmo: tem que conhecer sua complexidade, casos de melhor uso, seus drawbacks. Os algoritmos e suas informações adjacentes estão na internet sim, pelo menos boa parte deles, só que essa informação é deveras complexa inclusive para a maioria dos profissionais da área de tecnologia. Para o público leigo então, nem é necessário comentar.

Concordo com o Ruttman. A nossa área está seguindo em direção à maturidade e a especialização.

[quote=Vina][quote=Rodrigo.Rocha]Mas o que faz vc acreditar que algoritmos mais complexos não estarão disponíveis na internet pra qualquer um baixar e usar?
[/quote]
Mas eles estão, pelo menos em sua grande maioria. A questão, é como usar. Um exemplo básico, Quicksort e Mergesort são dois algoritmos que no melhor caso tem sua complexidade medida em O(n log(n)). Qual dos dois é a melhor opção então?
Depende. O quicksort é ligeiramente melhor para quando os dados estão alocados na memória principal (in-place), já o mergesort é muito melhor quando os dados são esparsos e gravados em armazenamento externo, por exemplo, discos rígidos. Há de se lembrar também que o pior caso do quicksort - O(n²) é mais custoso que o pior caso do mergesort - O(n log(n)). Cabe ao desenvolvedor ter ciência de quando usar cada um.

Outro exemplo? A* é um algoritmo de busca heurística do menor caminho. A função de custo dele pode ser escrita como f(x) = g(x) + h(x), onde f(x) é o custo total do algoritmo, g(x) é o custo total do caminho percorrido do ponto inicial até o ponto x e h(x) é o custo da função de heurística do ponto x até o destino. Essa função de heurística deve ser modelada especificamente para o problema em questão, o que demanda do programador um bom domínio do problema geral. É a parte mais sensível do algoritmo.

E isso é apenas uma explicação breve sobre alguns algoritmos que são ensinados na faculdade e que foram criados a mais de 50 anos atrás. Imagina os casos de algoritmos realmente específicos, de aplicações de alto desempenho onde o programador deve codificar o algoritmo “from scratch”? Não basta apenas saber o algoritmo: tem que conhecer sua complexidade, casos de melhor uso, seus drawbacks. Os algoritmos e suas informações adjacentes estão na internet sim, pelo menos boa parte deles, só que essa informação é deveras complexa inclusive para a maioria dos profissionais da área de tecnologia. Para o público leigo então, nem é necessário comentar.

Concordo com o Ruttman. A nossa área está seguindo em direção à maturidade e a especialização.[/quote]
Quantos programadores foram contratados pra criar uma engine de busca depois que o google publicou seu serviço na internet? Quantos programadores foram contratados para criar uma rede social depois do facebook?

Acho que não muitos.

Portanto cuidado ao dizer que especialização é uma bala de prata. Apesar de permitir que vc se dedique a problemas com mais desafio intelectual, especialização por si só não garante que alguém vai de fato pagar pra ter esses problemas resolvidos.

Obs: Obviamente estou considerando programadores que residem no Brasil. Sua experiência na profissão pode variar caso vc resida na California, New York, ou trabalhe pra NASA.

[quote=A H Gusukuma][quote]Por isso repito o que disse no post anterior, nosso setor caminha para a especialização. Os medíocres vão notar que o que eles fazem há anos, tem gurizada que faz em casa no final de semana.

Ou se especializa ou cai fora, simples! Mas a área nunca vai “acabar”…[/quote]

Nem tanto assim, nós precisamos mais de “generalistas” do que de especialistas. Estou falando em quantidade. É claro que precisamos mais de especialistas, mas, não significa que precisamos de que a quantidade de especialistas seja maior que a de “generalistas”.
Outra coisa, tenha cuidado em chamar pessoas de “medíocres” baseado em formação profissional, isso é valorizar muito o “ter” em detrimento do “ser”.
Abraços[/quote]

Não citei especialização como fato do profissional ter 300 cursos ou faculdade, comentei pelo “fazer” mesmo, o cara que é especialista em algo e sabe fazer direito, independente de formação.

Nem citei formação profissional, fiz um apanhado geral. E a palavra medíocre não é ofensiva, é sinônimo de mediano.

Eu por exemplo, não me ofendo nem me envergonho de me reconhecer como medíocre. Sou iniciante, tenho muito o que aprender e sou sim medíocre.