Maker! Galinha dos ovos de Ouro? Ou não?

[quote=Raven][quote]
Depois de um ano ou dois trabalhando com esse software o profissional terá restringido bastante seu campo de atuação no mercado, ou seja, irá trabalhar apenas onde houver o software implantado e o período para encontrar outra oportunidade pode se elevar no caso de uma demissão.
[/quote]

Concordo fantomas.

Na verdade o profissional de TI não pode parar JAMAIS! E por exemplo, um cara que acaba de sair de faculdade, se pegar um Maker pela frente já era, se tiver um dia que botar a mão na massa ta perdido![/quote]

Quem tem que colocar a mão na massa é padeiro.

he he he he he hehhhhhhhhheeeeeeeeeehhhhhhhhhhheeeeeeeeeehhhhhhhhhe

Mais um da softwell:

Teles_guia: mensagens: 1.

Gostaria de agradecer-lhes pelos momentos de diversão. :slight_smile:

Desing Pattern, Algoritmos e estruturas de Dados efientes entre outros pensares são coisas que uma IDE sozinha não resolve, se fosse assim, o mundo se resumiria a MatLab, LabView e CAD. Programar não é só codificar é desenvolver a melhor forma de resolver um problema computável. É o que os desenvolvedores desta ferramenta estão tentando fazer e o que nós devemos fazer também!

Prestativo iDexter,

Qual o seu ponto aqui?

Agora, se é feito da melhor maneira possível, tenho minhas dúvidas, só para lembrar:

Esta seria uma das melhores maneiras?

Há! se você não costuma tratar suas exceções, não é culpa minha, agora meu ponto é uma IDE jamais substuirá um programador aliás IDE não significa Substituto Eficiente de Programador.

“Brilhante” iDexter,

Com base em que critérios, você pode afirmar se trato ou não minhas excessões? No caso, estou apenas expondo um exemplo de código de, por assim dizer, horrível. Escrever “Erro: Passei por aqui”, na sua opinião, consiste em um tratamento de exceções aceitável em um produto comercial? É assim que você costuma proceder?

Meu argumento é: em seu post anterior, você afirma que a responsabilidade de se gerar código de qualidade, é do desenvolvedor. Ok, é um argumento. O que não entendi, é como o mesmo se encaixa em nossa discussão.

Caros senhores… Estive nos últimos dias analisando a ferramenta Maker. Li TODAS as páginas relacionadas ao Maker neste fórum e em alguns outros. Sei que é um assunto que tem gerado muitas discussões, mas gostaria de dar minha colaboração e obter ajuda de vocês nesta tomada de decisão.

Primeiramente, pelo que observei, o Maker se trata de uma ferramenta RAD cujo o foco não é convencer os programadores, mas sim os gerenciadores de projeto ou empresários. Para quem já teve uma apresentação, viu que realmente a ferramenta monta os formulários muito rapidamente, ganhando no mínimo umas 3 horas para cada formulário de cadastro simples montado.

Uma coisa que vi pessoas questionando aqui é que desenvolver rotinas simples no Maker através de fluxogramas pode ser muito mais demorado do que na “unha”. Concordo. Porém, questiono outra coisa: Quando desenvolvemos na “unha” fizemos somente uma parte do projeto, a IMPLEMENTAÇÃO.

Fazendo essa mesma rotina em fluxograma, já matamos mais algumas etapas, como modelagem de negócio e documentação (por que ele já exporta a documentação automática).

Terei a apresentação da ferramenta na segunda-feira próxima ( 19/01/2008 ). Sei que a ferramenta tem inúmeras limitações técnicas, mas focarei minhas perguntas em se ela realmente consegue desenvolver um sistema comercial, com emissão de cupons e etc. Postarei aqui minha análise.

Por hora, postarei a seguir uma coisa que vocês vem pedindo a tempos: um exemplo de CÓDIGO FONTE EXPORTADO pelo Maker.

Espero que possamos trocar experiências e idéias sem as críticas pessoais que venho observando por aqui.

Abraços.

Na minha opiniao, o grande problema do Maker é muito simples: nao compensa.

Basicamente, quando temos hoje ferramentas como Grails ou Ruby on Rails, que sao abertas e possibilitam os mesmissimos ganhos, nao há porque gastar uma fortuna em um produto proprietário e de futuro incerto.

“Não compensa” é relativo. Grails ou Ruby on Rails são basicamente frameworks abertas onde você nem tem uma “entidade” responsável e que possa lhe dar suporte. Código aberto é uma faca de dois gumes, por um lado, você ganha em ter uma grande comunidade lhe ajudando, mas por outro lado, ninguém é responsável por aquilo. Se a ferramenta lhe causar prejuízos financeiros, você não tem a quem recorrer.

Além disso, ambas as ferramentas não lhe dão produtividade tão alta e é necessária uma mão de obra mais qualificada. Em um projetobem grande onde a maioria das telas são CRUD, acho que Maker pode sim compensar. Para isso temos que calcular a quantidade de pontos de função por hora que cada ferramenta lhe proporciona.

C# .NET proporciona uma média de 1 a 3 pontos de função por hora. Java é pouco menos que isso. Talvez essas frameworks ajudem na produtividade, mas nada como os 23 pontos de função por hora que foi relatado em um documento OFICIAL do governo.

Não estou dizendo que todos os sistemas terão essa mesma média, mas para aplicações comerciais, onde o mais complexo que se tem são telas de entrada e saída de Nota Fiscal, quando se trabalha com muitos pedidos por dia (cerca de 3mil NFS) e muitos itens por pedido (50 itens), acredito que a média deve passar dos 10 pontos de função por hora, criando sim uma explosão de produtividade.

Não estou aqui falando como programador, não estou falando de qualidade de código, estou falando como gerente de projetos, onde o foco não é o fonte (mesmo por que não será entregue ao cliente) mas sim as regras de negócio e a aplicação funcional.

Estou tecendo o texto acima, sem ainda ter coisas concretas, mas estou estudando a ferramenta e acredito que se aplique para esses casos.

Talvez eu esteja falando demais… talvez não… rs

Bom, de qualquer forma, obrigado pela ajuda!

[teclado sem acentos on]Visao miope. Desde quando uma ferramenta paga te garante o suporte de codigo ruim que voce faz? Se voce esta com medo de o proprio framework e/ou linguagem der problemas, voce pode contratar servicos de consultoria em suporte, todos esses frameworks tem links dessas empresas ( de uma olhada no site do RoR ). Eh bem mais facil uma ferramenta paga ser descontinuada do que uma de codigo aberto, ja que nem todas essas ferramentas abominaveis sao tao sem dono assim (vide Java, ruby, websphere etc).

[quote=PauloPina]Além disso, ambas as ferramentas não lhe dão produtividade tão alta e é necessária uma mão de obra mais qualificada. Em um projetobem grande onde a maioria das telas são CRUD, acho que Maker pode sim compensar. Para isso temos que calcular a quantidade de pontos de função por hora que cada ferramenta lhe proporciona.

C# .NET proporciona uma média de 1 a 3 pontos de função por hora. Java é pouco menos que isso. Talvez essas frameworks ajudem na produtividade, mas nada como os 23 pontos de função por hora que foi relatado em um documento OFICIAL do governo.[/quote]
Falacioso isso, mesmo que tenha um documento de oficial( que eu nunca vi e duvido que seja de uma entidade respeitada e imparcial ) fale que e produtiva, estatisticas podem ser manipuladas dependendo do criterio empregado. Poderia falar que um lapis eh 80 vezes mais eficiente que o maker que ninguem poderia contestar sem saber que metrica eu usei. Alias, dificil estimar por pontos de funcao e dar credito a isso ja que quem trabalhou com isso viu que frequentemente a estimativa eh erronea.

Tem ferramentas mais baratas ( ou gratis ) que fazem isso e talvez mais rapidamente. Essa carga de trabalho ainda eh bem modesta para justificar 13mil reais. E se precisar de uma customizacao? Senta e chora?

Novamente miope. O cliente nao ve codigo mas sente sistema lento, defeituoso, sujo para integrar e sente gambiarras. Ignorar cuidados na implementacao eh um dos primeiros casos para o fracasso.

[quote=PauloPina]Estou tecendo o texto acima, sem ainda ter coisas concretas, mas estou estudando a ferramenta e acredito que se aplique para esses casos.

Talvez eu esteja falando demais… talvez não… rs

Bom, de qualquer forma, obrigado pela ajuda![/quote]
Ninguem disse que nao serve para nada, mas sera que vale 13mil para fazer esse pouco que pode fazer? Sera que economizar em salario de profissional vale tanto a pena para arriscar num produto assim?

Ate!

A questão não é medo, é simplismente ter a quem processar rs…

Bom, estimativas errôneas realmente acontecem. O documento em que falei, é da Câmara Municipal, tem 80 páginas. Caso queiram, posso colocar em algum lugar para vocês baixarem. Sobre a produtividade, bom, ontem participei de uma apresentação do Maker e hoje posso falar um pouco melhor sobre a ferramenta:

1- Sobre ela não ser orientada a objeto, há controvérsias… O Maker em si é procedural, porém você pode perfeitamente pegar classes em Java e criar diversos fluxos para instanciar, utilizar recursos, etc. Vi dois exemplos onde foram criadas funções no Maker (pelo programador) para Instanciar e utilizar gráficos em barra, pizza e treeview, ou seja, você nunca fica preso à API da Softwell.

2- Sobre não ter herança, há controvérsias… Você não herda objetos, mas todo o resto você herda. É extremamente fácil você criar rotinas que podem ser herdadas, telas que podem ser herdadas em grades, telas que podem ser montadas dinamicamente, entre outras facilidades, que você faz em LITERALMENTE 30 segundos no Maker e mais de 2 horas em qualquer outra ferramenta (PHP, C# ou JAVA).

3- Sobre ser um sistema proprietário. Realmente é. Mas o Maker não limita nenhum programador JAVA. Uma pessoa que quiser fazer a tela ficar de cabeça pra baixo no Maker, simplesmente pode fazer uma função em JAVA dentro ou fora do Maker, e chamá-la dentro dos fluxos.

4- Você nunca fica preso ao Maker… Se a Softwell na bahia for engolida por um Tsunami, você não precisa depender em nada do suporte deles. Basta ter um desenvolvedor Java pleno, que possa fazer a manutenção devida no Maker. TODAS as funções que já vem no Maker, vem em código aberto, portanto, se ela não está funcionando como você queria, nada lhe impede de modificá-la como preferir e pronto!

5- Produtividade… EU nunca tinha mexido no Maker, ontem foi a primeira vez. O sistema é tão intuitivo, que criei um sistema simples de cadastro de funcionários, departamentos e controle de ponto, com relatório, controle de grupos e usuários com permissões distintas para cada tela, e log de alterações inclusive, em menos de 2 horas. Trabalhando com várias tabelas, com telas que possuíam Mestre-Detalhe, controle de concorrência, permitindo salvar os detalhes em memória antes de salvar o registro mestre, etc. Um programador treinado em Maker, faria em menos de uma hora, coisa que nas linguagens que trabalho (Delphi, PHP e C#) eu gastaria no mínimo uma semana.

NÃO Existem ferramentas que lhe dão essa produtividade. Isso é Fato. Tem dois anos que estou adiando o início de um projeto muito grande, por que não tinha encontrado uma metodologia nem uma ferramenta que nos permitisse criar sistemas tão rapidamente. É um projeto que, em C# estava orçado em R$300mil e, que em Maker, iremos economizar NO MÍNIMO R$120mil… isso com 03 licenças de R$9.900. Ou seja… R$90mil de economia liquida… Tenho certeza que se essa grana fosse sair do seu bolso você iria adorar usar o Maker… rsrsrsrs Além dessa economia, economizaremos ainda mais na manutenção e evolução do sistema, uma vez que o Maker 2.5 já permite que você crie um dicionário para as telas, com traduções para as línguas que você quiser, além de facilitar multi-regras para sistemas que irão rodar em outros países.

[quote]
Novamente miope. O cliente nao ve codigo mas sente sistema lento, defeituoso, sujo para integrar e sente gambiarras. Ignorar cuidados na implementacao eh um dos primeiros casos para o fracasso. [/quote]

Até o momento estou lidando com todos aqui com o devido respeito e apreço, e gostaria que isso fosse recíproco. O cliente sente sim sistema lento, mas nao há NADA que não possa ser corrigido usando o Maker ou digitando diretamente em JAVA… Se você não conseguir fazer um fluxo otimizado para uma tela de processamento pesado, nada lhe impede de fazer em JAVA… portanto o limite do Maker É realmente o limite do JAVA… Agora, para as telas de cadastro, por mais complexas que sejam, o sistema é sim MUITO rápido! Tão rápido quanto JAVA, PHP, C#… Portanto acredito que temos que parar de “ACHISMO” e citar FATOS em que realmente sabemos o que estamos falando.

Bom, agora que SEI o que estou falando, posso afirmar… Maker não faz milagre nenhum e não usa nenhuma tecnologia Alien, mas também NÃO faz pouco não viu! Faz MUITO! E a matemática é simples… Poderia custar 100mil, se te faz economizar 1 milhão, então é lucrativo. No nosso caso, a economia estimada incialmente será da ordem de R$120mil, portanto, compraremos felizes da vida R$30mil em licenças… Temos um cliente que no final do ano passado gastou mais de R$100mil em licenças de Oracle… você acha também que é jogar dinheiro fora!? Talvez eles deveriam ter adotado MySQL não acha!? rs

Bom, pessoal, não estou querendo convencer NINGUÉM aqui… só acho que as coisas tem que evoluir. Em 1981, Bill Gates disse: “640K deveriam ser suficientes para qualquer um” e quebrou a cara… No início, programávamos em cartões perfurados, depois vimos que era perda de tempo… Dai, em algum momento, começamos a programar em Assembly, que era MUITO mais fácil de se interpretar (meu pai programa em Assembly). Hoje o Assembly, apesar de MUITO mais poderoso que o C por exemplo, é TOTALMENTE inviável para se fazer programas de alto nível, apesar de que é possível. O C++ hoje já é inviável para se construir sistemas CRUS, por ser altamente técnico e de desenvolvimento moroso. Dai chegamos nas tecnologias atuais, como JAVA, C#, PHP… Todas são significativamente mais práticas e rápidas de se desenvolver do que um Assembly da vida… e, da mesma forma, não tem 10% do poder do Assembly… mas ganham em alguns tipos de aplicações no Custo X Benefício!

O Maker não é diferente. É uma forma de se programar em um nível mais alto do que o JAVA, por ser mais próximo da interpretação humana, mas que não deixa de lado o poder do JAVA, uma vez que TUDO que o Maker não faz com fluxo, pode ser feito em linhas de código JAVA.

Portanto, achei a idéia muito boa. Melhor ainda por ser brasileira. E não fui somente eu quem achou isso… dentre os clientes que utilizam o MAKER, há mais de 2 anos, estão 3 das maiores Software Houses do Brasil e que todos devem conhecer: CPM Braxis, RM Sistemas e TOTVS, que estão usando massivamente essa ferramenta e gastaram MILHÕES com licenças… Tudo por um único motivo: RELAÇÃO CUSTO X BENEFÍCIO…

Esta é minha visão como gerente de projetos… Abraços a todos…

O usuário PauloPina tem 3 posts no fórum até o presente momento, e todos apenas neste tópico. O mesmo continua a repetir coisas que já vimos lá atrás (o maker é o próximo passo da linha de evolução das linguagens de programação) e parece querer ignorar alguns pontos que para nós desenvolvedores muitas vezes é crucial (talvez por se dizer gerente de projetos), como a possibilidade de manter decentemente um código e quem sabe escovar alguns bits aqui e ali. Esse usuário PauloPina para mim tá mais para um lobista lá de dentro da tal Softwell (ainda que eu não tenha certezas ou provas concretas para confirmar).

Inté.

queria ver um código (classe!?) de negócio gerado pelo Maker Paulo, tu não ia mostrar? Mostra aí [/curiosidade]

Afinal, vivemos processando as empresas quando os seus frameworks param de funcionar repentinamente. :wink:

Ah ta, o que importa não é herdar objetos, mas herdar rotinas, telas e grades em 30 F***ING SEGUNDOS. Engraçado que ninguem cita as fontes desse benchmark de tempo de desenvolvimento, nem as condições em que foram feitos. Se eu pudesse eu faria tudo em shell script pois posso fazer em 15 segundos usando apenas uma linha e no máximo 8 pipes.

Certo. Ai um dia a empresa decide trabalhar com maquinas de costura e abandona o Maker. Ai todos os projetos que acreditaram e que precisam virar as telas de cabeça pra baixo EM 30 F***INK SEGUNDOS não conseguem evoluir o sistema pois a plataforma foi descontinuada. Felizmente ele tem a quem processar… rs…

Realmente, para projetos onde o que fala mais alto é o “Big Up Front Design” vc precisa de tecnologias miraculosas.

alguém poderia me dizer por que afinal de contas esse tópico ainda não foi bloqueado?

maker e certas comparações como de linguagens, IDEs…deveriam ser asuntos proibidos…rs infelizmente

O departamento de relações públicas da Softwell é bem ruinzinho hein?

Toda vez que “surge do nada” um “novo usuário do GUJ” que só posta coisas sobre o Maker, sempre comete o mesmo erro… defendendo a ferramenta destrói a imagem da mesma. :slight_smile:

[quote=KWill]O usuário PauloPina tem 3 posts no fórum até o presente momento, e todos apenas neste tópico. O mesmo continua a repetir coisas que já vimos lá atrás (o maker é o próximo passo da linha de evolução das linguagens de programação) e parece querer ignorar alguns pontos que para nós desenvolvedores muitas vezes é crucial (talvez por se dizer gerente de projetos), como a possibilidade de manter decentemente um código e quem sabe escovar alguns bits aqui e ali. Esse usuário PauloPina para mim tá mais para um lobista lá de dentro da tal Softwell (ainda que eu não tenha certezas ou provas concretas para confirmar).

Inté.[/quote]

Caro amigo, vou me apresentar.

Moro em Belo Horizonte, trabalho com TI há 08 anos, Sou analista de Sistemas e Pós Graduado em Gerenciamento de Projetos. Tenho certificação MCSD Microsoft, já trabalhei com desenvolvimento em C/C++, Delphi (em três camadas) e C#.NET, Tenho cursos e experiências em administração e tunning de Bancos de dados Oracle. Atualmente tenho uma empresa de comércio eletrônico, www.iset.com.br, onde trabalhamos exclusivamente com PHP e MYSQL, e estou constituindo agora, com outro sócio, uma nova empresa agora para desenvolvimento de uma nova idéia voltada para WEB. Além disso, aprendi um bucadinho de Assembly com meu pai, que é engenheiro microeletrônico.

Acredito, portanto, que meu conhecimento não é tão superficial quanto você parece acreditar. Caso queira comprovar tudo isso, basta entrar no site da iSET, entrar no Chat Online e perguntar para algum operador quem é PauloPina. Sei muito bem que é sim importante ter um código simples e elegante para um programador. Quando desenvolvemos um sistema e fazemos um bom algoritimo, ficamos muito realizados. Mas por outro lado, atualmente tenho pensado em algo mais realizador: Ganhar Dinheiro. Na atual conjuntura, acredito que qualquer empresa que se der ao luxo de gastar 30% a mais em qualquer projeto, simplismente pela realização profissional de seus programadores ou para ter um código mais bonito e 10% mais rápido, é suicida…

Cada um tem seu ponto de vista. O meu hoje não é só como programador, mas como empresário.

Amigo, primeiramente já falei que ele pode sim fazer heranças de objetos com JAVA… o que não se faz no MAKER, se faz com JAVA. Além disso, as fontes são muito simples… ele pega o banco de dados e cria as telas de acordo com as definições do banco… já faz todo o controle de permissões de acesso a telas, já faz controle de navegação, inserção, exclusão, mestre-detalhe, concorrencia, etc… ou seja, nos poupa de muito trabalho. Você sabe Shell Script, mas um estagiário montador de tela, não sabe… rs

O cálculo é muito simples… Um programador pleno em JAVA PJ me custa entre R$3mil e R$4mil… um estagiário, me custa R$800… portanto, pra que eu vou gastar um programador pleno em JAVA pra ser montador de tela, quando posso usar um estagiário que vai dar conta do recado? rs E aí que o maker se paga… Goste você ou não ;)…

[quote]
Certo. Ai um dia a empresa decide trabalhar com maquinas de costura e abandona o Maker. Ai todos os projetos que acreditaram e que precisam virar as telas de cabeça pra baixo EM 30 F***INK SEGUNDOS não conseguem evoluir o sistema pois a plataforma foi descontinuada. Felizmente ele tem a quem processar… rs…

[code]

Bom, digamos que a Softwell decide vender havaianas na praia… Sem problemas! Eu tenho TODOS os fontes de todas as funções do Maker… se precisar corrigir algo no próprio Maker, meu programador Pleno em JAVA pode fazer ;)… Da mesma forma que eu mesmo já alterei componentes da Borland, no Delphi 7, por que não me atendiam, e quando eu postava algo nos fóruns, ninguém conseguiu me ajudar…

Como o código é aberto, só tem medo disso quem não entende de JAVA e fica com medo de não dar conta…

Não há nada miraculoso… só uma forma diferente de abordar o desenvolvimento. Realmente meu foco é fazer rápido e bem feito e, na minha análise e experiência de já ter trabalhado em sistemas com mais de 400mil linhas de código, acredito que vá me atender… Se eu quebrar a cara, prometo que falo com vocês… rs

Se vc prefere se enganar e achar que pode trocar programadores ‘plenos e seniors’ por estagiarios e isso é ‘se pagar’, beleza :wink:

[quote=maior_abandonado]alguém poderia me dizer por que afinal de contas esse tópico ainda não foi bloqueado?

maker e certas comparações como de linguagens, IDEs…deveriam ser asuntos proibidos…rs infelizmente[/quote]

Não entendo o motivo de bloquear esse tópico, uma vez que não deixa de se tratar sobre desenvolvimento em JAVA… de uma forma diferente, mas continua sendo JAVA…

Acho que você falou algo tão ridículo quanto falam nas igrejas… As igrejas evangélicas lhe proíbem de falar de santos, budas, etc… da mesma forma vocês querem proibir as pessoas de falar de outras tecnologias, só por que o foco aqui é java?

Acho que responde esse tópico quem quiser… quem não quiser nem precisa aparecer por aqui…

Mas acredito que é EXTREMAMENTE importante para nós trocarmos idéias sobre outras formas de se fazer qualquer coisa para evoluirmos e aprendermos.

Eu sempre estou aberto a aprender novas coisas… você deveria abrir um pouco mais sua mente…

Mas… quem sou eu pra dar pitaco aqui… como já foi dito, sou um usuário cadastrado a menos de 1 semana e com escassos posts…