| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:04:25
|
mcampelo
JavaEvangelist
![[Avatar]](/images/avatar/9246444d94f081e3549803b928260f56.jpg)
Membro desde: 29/04/2003 09:36:36
Mensagens: 389
Localização: Rio de Janeiro/Brasil
Offline
|
Acredito que seja do interesse de todos:
Os 10 mandamentos do arquiteto de software
http://www.enterpriseguys.com/Artigos.aspx?ColunistaID=29&id=40
1-Se não for simples, não vale a pena.
2-Se não for estável, não vale a pena.
3-Se não for suportável, não vale a pena.
4-Jamais justifique a tecnologia pela tecnologia.
5-Seja flexível.
6-Questione tudo.
7-Não culpe o fabricante da tecnologia pelos erros que você cometeu.
8-O ótimo é inimigo do bom.
9-Faça uma trégua com a equipe de infra-estrutura.
10-Não reinvente a roda.
Vale a pena ler todo o artigo. Alguns tópicos fazem lembrar bastante alguns participantes aqui do fórum.
[]'s
Marco Campêlo
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:22:18
|
pcalcado
Moderador
![[Avatar]](/images/avatar/110eec23201d80e40d0c4a48954e2ff5.jpg)
Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline
|
O artigo é itneressante, mas alguns pontos "estranhos":
1 - O cara é programador "SUN certified J2EE Programmer"? Não achei essa certificação aqui.
2 - Até que isso:
MCP, MCSA, MCAD, MCSD, MCSE, MCDBA, MCT, Oracle Certified Professional wrote:
E as tecnologias que você usa? Quem da suporte nelas? Quem assina embaixo e diz: "Ok, seu cliente pode confiar todo o faturamento dele na minha tecnologia, eu garanto."?
...
Meu conceito de suporte é ter alguém que assine embaixo daquilo que estou usando e diga: Fique tranqüilo, porque isso aqui é de minha responsabilidade.
Provavelmente seu cliente também vai pensar assim.
Não é estranho para quem tem tantas certificações Microsoft. FUD deve cair na prova.
3 -
MCP, MCSA, MCAD, MCSD, MCSE, MCDBA, MCT, Oracle Certified Professional wrote:
Mas o meu cliente (e o seu também) não quer saber de tecnologia. Ele quer saber de negócio! Para ele tanto faz se você usou 50 produtos de ponta na área de tecnologia, ou se fez uma aplicação monolítica em Cobol.
Claro, e como mencioneia qui outro dia o cliente também não quer saber quando você diz que tem que mudar mil arquivos em mil lugares diferentes no seu lindo programinha de acoplamento recorde feito em VB. Simples, bonitinho, usável... mas por dentro é todo podre.
Existe uma balança entre usar tecnolgoia rápida e suja e avaliar direito seu problema, e o fato de não mencionar nisso invalide este "mandamento".
4 - Outra cosia nem um pouco estranha
MCP, MCSA, MCAD, MCSD, MCSE, MCDBA, MCT wrote:
Quantas vezes eu ouvi algo como: "A Microsoft não consegue fazer tecnologia estável que suporte grandes volumes de dados e de processamento.". Não vou perder meu tempo argumentando contra essa frase, vou apenas dizer: É mentira.
Não teve um caso sequer em que o sujeito que tenha falado isso não tivesse cometido erros graves na sua arquitetura, os quais causariam problemas em qualquer outra tecnologia disponível no mercado. Mas é sempre mais fácil colocar a culpa na Microsoft e dizer: "Ta vendo? Eu bem que falei para usarmos aquela outra tecnologia!".
Ok, a Microsoft não é o bicho-papão que vendem por aí, ams dizer que sempre a culpa é do "sujeito"... por favor! Vou largar Java e tudo mais e partir agora para essa paltaforma perfeita que vem de Redmond.
Ok, esqueça o que eu disse. Esse artigo é uma proposta interessante, a lsita é interessante, mas as explicações sobre os "mandamentos" são sofríveis.
Se o mundo .Net é assim (e não estou dizendo que seja, estou apenas comentando o artigo do colunista de ".NET Enterprise" desse site, que tem gente muito boa como o Jorge Diz), como disse o luca outro dia: graças a zahl eu estou onde estou.
|
Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:31:48
|
jprogrammer
Virtual Machine Man
Membro desde: 04/02/2005 13:49:20
Mensagens: 546
Offline
|
Eu só não concordo com o tópico 10.
Porque isso traz uma imagem erronea do desenvolvimento inteligente.
Porque não criar bibliotecas próprias para facilitar o desenvolvimento ?
Isso traz simplificação.
Agora não quer dizer que é preciso reinventar a roda.
O bom censo deve ser usado.
Ele também meteu o pau nos design patterns.
Aposto que ele é amante do RAD adora aquele arasta-aqui e arasta-ali.
Tudo pronto !!! Uma beleza.
Muitas vezes isso traz mais manutenção que fazer da "maneira mais dificil".
Principalmente para os estagiários.
O que eu já peguei de tela torta do VB. Sem validacão de tipo de dados, tamanho de campo.
O que precisei fazer ? Criar uma porrada de OCX para substituir os controles padrão.
E falei : Tu só vai usar isso aqui !!!
Ainda bem que ele desenvolve em .NET.
|
O bom menino !!! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:35:52
|
fabio.patricio
GUJ Master
Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline
|
Olá,
Como o Pcalcado falou as premissas sao ótimas, mas os argumentos muito ruins.
No fundo a mensagem que ele tenta passar é use a plataforma da M$ que ela é perfeita, se der errado nao é culpa da M$ e sim sua e nao use projetos OS porque ninguem assina em baixo.
]['s
|
Fabio Patricio
http://blog.wansoft.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:38:12
|
jgbt
GUJ Master
![[Avatar]](/images/avatar/25df35de87aa441b88f22a6c2a830a17.png)
Membro desde: 04/06/2003 15:01:48
Mensagens: 1286
Localização: Porto Alegre/RS
Offline
|
fabgp2001 wrote: Olá,
Como o Pcalcado falou as premissas sao ótimas, mas os argumentos muito ruins.
No fundo a mensagem que ele tenta passar é use a plataforma da M$ que ela é perfeita, se der errado nao é culpa da M$ e sim sua e nao use projetos OS porque ninguem assina em baixo.
]['s
|
João Bier
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:45:34
|
Luca
Moderador
![[Avatar]](/images/avatar/17e62166fc8586dfa4d1bc0e1742c08b.jpg)
Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline
|
Olá
fabgp2001 wrote: Como o Pcalcado falou as premissas sao ótimas, mas os argumentos muito ruins.
+1 aqui
jprogrammer, reinventar a roda para mim sempre foi uma das coisas mais desmotivantes.
Acho interessante quando os ASProgramadores começam a perceber que o mundo mudou. Não é a primeira vez que vejo Microsoft slaves descobrindo coisas que a gente já sabe há alguns anos.
[]s
Luca
|
Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."
CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 15:59:36
|
jprogrammer
Virtual Machine Man
Membro desde: 04/02/2005 13:49:20
Mensagens: 546
Offline
|
Eu disse:
"Agora não quer dizer que é preciso reinventar a roda. O bom censo deve ser usado."
Estou falando em reutilização e componentização do sistema, coisas que muito pseudos OO programmers deveriam estar fazendo a decadas.
O que eu insisto é o seguinte:
Para que eu repetir um código de validação em várias telas se posso criar uma API para ser usada e centralizar o código.
This message was edited 1 time. Last update was at 28/04/2005 16:02:25
|
O bom menino !!! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 16:50:26
|
marcelomartins
Moderador
![[Avatar]](/images/avatar/777669af68dbccabc30c3b6bcaa81825.jpg)
Membro desde: 07/01/2004 10:53:19
Mensagens: 1477
Localização: Porto Alegre - RS
Offline
|
MCP, MCSA, MCAD, MCSD, MCSE, MCDBA, MCT wrote:É fácil suportar seu sistema? Quando acontece um problema (não me venha com esse papo de que seu sistema nunca tem bugs. Até o pessoal da NASA às vezes faz uma bobagem ou outra) você tem meios de rastrear o que aconteceu de forma rápida e eficaz?
Ótima propaganda das boas práticas de programação, e ótimo argumento contra as tecnicas grag-n-drop de programar!!
pcalcado wrote:FUD deve cair na prova.
hehe Esse pessoal hem!
|
Marcelo Martins
http://twitter.com/marcelomartins
Tudo que hoje eu realmente preciso saber, aprendi no jardim da infância.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 17:29:55
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
É claro que Design Patterns existem para ajudar, orientar e evitar que você invente algo que já foi inventado.
Ninguém notou isso? Que esse cara não tem a menor idéia do que é um Design Pattern. Até onde eu sei, DP existem exatamente para você "inventar" algo que já foi feito por muitos.
This message was edited 1 time. Last update was at 28/04/2005 17:30:13
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 17:43:56
|
Luca
Moderador
![[Avatar]](/images/avatar/17e62166fc8586dfa4d1bc0e1742c08b.jpg)
Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline
|
Olá
Louds, acho que você esta sendo muito radical com o MXPTO, MK5P3, MOXPK, OCMX, ASPecialista.
DP é um padrão a ser seguido que a gente usa em nossas próprias criações. O máximo que a gente tem são exemplos de aplicações. Na verdade a gente aplica DP, a gente não reaproveita DP. Mas como a frase dele inclui a palavra "orientar" acho que não acho tão ruim assim.
[]s
Luca
|
Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."
CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 17:47:23
|
fabio.patricio
GUJ Master
Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline
|
louds wrote:
É claro que Design Patterns existem para ajudar, orientar e evitar que você invente algo que já foi inventado.
Ninguém notou isso? Que esse cara não tem a menor idéia do que é um Design Pattern. Até onde eu sei, DP existem exatamente para você "inventar" algo que já foi feito por muitos.
Claro Louds, o problema é que se fossemos colocar aqui todas as besteiras que ele falou seria mais facil postar o texto inteiro.
]['s
|
Fabio Patricio
http://blog.wansoft.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/04/2005 18:41:35
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
Minha maior dúvida quanto ao artigo é se o .NET remoting é tão ruim assim ou o autor não sabe fazer benchmarks.
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/05/2005 14:19:45
|
mateusvelloso
HelloWorld
Membro desde: 07/05/2005 13:38:09
Mensagens: 12
Offline
|
Bom dia a todos os membros desse forum,
Antes de mais nada, eu sou o tal "Microsoft slave" que escreveu o tal famigerado artigo que vocês estão criticando.
Devo confessar que estou um tanto perplexo com as reações causadas pelo meu artigo por aqui... Até voltei e dei uma lida de cima a baixo para entender melhor se eu tinha ofendido alguém, ou se fiz alguma declaração anti-qualquer-coisa que pudesse disparar tantas críticas.
Realmente não encontrei nada assim... Então porque essa raiva toda? Porque eu sou um "Microsoft slave"?
Talvez seja interessante explicar que nos 18 anos em que desenvolvo sistemas, trabalho com Microsoft tem apenas 6 (trabalhei com tudo um pouco antes disso), e já quase fui mandado embora de uma empresa por criticar o Visual Basic 5 e elogiado o Delphi enquanto dava um treinamento oficial da Microsoft nessa ferramenta. Esse foi um dos vários casos onde coloquei minha carreira em risco por falar mal da Microsoft. Mas, claro, vocês não tinham como saber...
Então às vezes ofende um pouco quando uma pessoa te rotula sem nem saber do seu passado, mas essas coisas acontecem... Entristece-me ver tecnologias sendo transformada em facções religiosas. Existe isso tanto lá no mundo Microsoft quanto em outras esferas.
Mas paciência... esse é um país livre, certo? Todos expressam o que pensam e vocês estão exercendo esse direito.
Só gostaria de fazer algumas observações, no intuito de evitar que o que eu escrevi seja distorcido, daí deixo a vocês a liberdade de me crucificar, se isso faz todos mais felizes.
1- Penso que todas as tecnologias têm os seus problemas, não vou ficar aqui contando os apuros que eu já vi a IBM passar com o Websphere, nem os que eu passei com Oracle, assim como vivo passando com Microsoft. Desenvovedor sofre com a tecnologia, e isso é universal. Mas quando uma arquitetura é mal feita, aí qualquer tecnologia desanda, isso também é universal.
2-Quando eu digo que a tecnologia não importa ao cliente, ela realmente não importa CONTANTO que o software funcione direito e seja fácil de usar e se gerenciar. Então por favor não me acusem de defender o desenvolvimento de software mal feito. Me incomoda ver o que eu disse sendo distorcido. No mínimo, isso não me parece ético.
2-Reinventar a roda com o objetivo de aprender é uma coisa, já reinventar a roda no meio de um projeto com prazo definido, budget apertado e uma enorme responsabilidade nas costas é outra. Nada contra criar bibliotecas próprias (eu vivo criando).
3-Jamais critiquei Design Patterns. Se isso não ficou claro no artigo, que fique claro aqui. E por favor: ?Esse cara não entende nada de design pattern?... Sugiro o seguinte: Reclame do meu nariz, diga que minha cara é torta, mas por favor não critique o que você não sabe a meu respeito, é possível? Obrigado.
3.1-A Microsoft tem feito vários eventos só para discutir design patterns. Sim, ela está demonstrando um grande esforço para mudar... E vocês, estão dispostos a mudar também?
4-Já solicitei a correção do nome da certificação, realmente estava errado, e inclusive coloquei um post no artigo agradecendo (não sei quem foi exatamente) por me avisarem disso.
5-Remoting é excelente! Conheço muita gente que usa e assino embaixo! Leia novamente o artigo e verá que não estou dizendo que ele não tem performance. Só não concordo com um argumento que é muito usado pela Microsoft, por sinal (olha aí eu criticando ela de novo) de que em muitos casos os Web Services não atendem à performance desejada. A discussão aqui é: Usar uma tecnologia proprietária (Remoting) ou algo universal (Web Services)?
No mais, quero apenas deixar registrada a minha decepção ao ver que ao invés dos mundos Java e .Net se aproximarem, com troca de experiências, conhecimento e até código (foi o que me chamou a atenção na proposta do Enterpriseguys, a idéia dele ser eclético) continuo vendo essa mesma guerra fria entre os dois lados, gente se odiando sem nem se conhecer só porque um trabalha com x e outro com y.
De qualquer forma, como já disse no site e repito aqui (imagino que agora eu esteja conhecendo os autores dos comentários do site) que estou aberto a conversar sobre o assunto, ouvir críticas e ponderar sobre elas.
Obrigado e desculpem a intromissão,
Mateus Padovani Velloso, o slave.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/05/2005 14:58:11
|
Luca
Moderador
![[Avatar]](/images/avatar/17e62166fc8586dfa4d1bc0e1742c08b.jpg)
Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline
|
Olá
Em homenagem a sua paciência de vir aqui discutir dentro do das "hostes inimigas" retiro o Microsoft slave e o substituo por dependente das tecnologias Microsoft.
Também como você eu já usei Microsoft. Vou explicar porque desisti. No primeiro semestre de 1997 a bolsa de valores estava extremamente atraente. Larguei tudo para ficar só aplicando diariamente. Senti falta de uma aplicação gráfica que me ajudasse com análise técnica e ainda também administrasse minha pequena porém lucrativa carteira. Com minha ótima experiência em C e com excelentes conhecimentos de C++, comecei a desenvolver uma aplicação em C++ com o VisualStudio 6. Cada vez que eu colocava 100 linhas novas e compilava, o VS colocava mais outras 100 espalhadas em um monte de arquivos. Meu software foi ficando tão complicado que comecei a me perder. Passava o dia todo preenchendo TODO colocado pelo VS e meu core business foi ficando de lado. No meio do projeto a bolsa foi perdendo atração e eu estava com aquele monstrengo dificil de administrar sozinho. Cheguei a conclusão que o VS mais me atrapalhava do que ajudava. Talvez se eu tivesse escolhido desenvolver em Delphi ao invés de C++ não teria me frustrado tanto. Mas na época a briga era entre a turma do C onde me incluia e os pascaleiros. Nesta época já conhecia Java que como o C++ tinha as vantagens de ser orientado à objetos e permitir o grau de abstração que eu precisava. Foi então que resolvi abandonar o mundo Microsoft e até agora não tenho nenhum motivo de arrependimento.
[]s
Luca
|
Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."
CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/05/2005 15:18:14
|
mateusvelloso
HelloWorld
Membro desde: 07/05/2005 13:38:09
Mensagens: 12
Offline
|
Oi Luca,
Na verdade não foi a paciência e sim a falta dela, mas já passou...
Se eu tivesse passado pelo mesmo problema que você em 1997, provavelmente teria tomado a mesma decisão. Aprendi VC++ mais por obrigação que por prazer, e realmente o considero muito pouco produtivo nos cenários mais comuns.
Na verdade, 1 anos antes do lançamento do .Net, quase abandonei a tecnologia MS por sentir falta de uma plataforma OO produtiva, porque no mundo MS tínhamos o VC, o FoxPro e o VJ que eram OO, e nenhum deles atendia nossas necessidades. Mas valeu ter aguentado um pouco mais.
Também invisto na bolsa, mas prefiro usar o Metastock que já vem prontinho (o tal "não reinventar a roda"....)
Obrigado.
|
|
|
 |
|
|