logo
Contato | Sobre...        
rebarba rebarba

Managed e Unmanaged: verdades, mentiras e opiniões

Por Rodrigo Strauss

Era uma vez

Idos do ano de 2001. Eu já estava acompanhando o movimento do mercado “microsoftiano” a algum tempo, e a novidade do último PDC era o NGWS (New Generation Windows Services). Logo depois, comparecendo às palestras da Microsoft brasileira, recebi os CDs com o beta 1 no NGWS, que agora se chamava .NET (apesar do nome NGWS ainda aparecer em vários lugares da documentação).

Achei bem interessante e comecei a brincar bastante com o C#, junto com um amigo meu. Inclusive, para toda novidade que eu descobria no WinForms ele tinha uma resposta padrão: “isso é igualzinho ao Delphi”. Só depois que eu fui saber que isso tinha um motivo para acontecer: Anders Hejlsberg, arquiteto do Delphi, do J++ e do C#. Como eu não entendia muita coisa de Delphi, isso não me dizia nada, e eu continuei estudando .NET.

Até que um belo dia, meu amigo disse que arrumou um emprego para trabalhar com C#, desenvolvendo software para o mercado financeiro. Apesar da felicidade de ver meu amigo empregado, me pareceu muito estranho uma empresa desenvolver software em tecnologia beta 1. Pelo jeito o pessoal de marketing da Microsoft estava se esforçando bastante... E lá foi ele para desenvolver o módulo gráfico do software, todo em GDI+, com aquela velocidade e com aquele consumo de memória que só o framework beta 1 conseguia proporcionar. Nós, acostumados com C++, Visual Basic e Delphi, não conseguíamos nos conformar que um programa que desenhava simples gráficos de barra pudesse consumir 100 MBs de RAM em algumas situações.

Nessa época eu tinha minha própria empresa (lembra o boom da Internet?), mas como não íamos bem das pernas, meu sócio financeiro resolveu encerrar as atividades. Não tinha jeito, eu tinha que arrumar um emprego como programador. Detalhe que naquela época eu não conhecia a APINFO, nem sei se já existia. Foi aí que eu pedi pra esse meu amigo encaminhar meu curriculum na empresa onde ele trabalhava. E deu certo, fui contratado para desenvolver usando C# beta 1

Continuando

O .NET trouxe consigo uma avalanche de marketing da Microsoft em tamanho comparável somente com o lançamento do Windows 95 (lembra?). A festa foi gigantesca e a Microsoft dizia que daquele tempo em diante tudo seria .NET. Os servidores Microsoft (SQL, Exchange, etc) seriam .NET, a próxima versão do Windows para servidores seria o Windows.NET Server, as ferramentas de desenvolvimento seria todas .NET. Mas o que realmente era o .NET? Nem mesmo os funcionários da Microsoft sabiam direito. Vários relatos de funcionários da Microsoft que diziam não entender essa história de .NET foram publicados na Web.

A confusão gerada foi tão grande, que a própria Microsoft acabou recuando mais tarde. Não existiu o SQL.NET, não foi lançado o Exchange.NET e o Windows.NET Server teve seu nome mudado, de última hora, para Windows 2003 Server.

E a conclusão foi...

A conclusão foi de que o .NET não passa de um ambiente gerenciado para execução e desenvolvimento de aplicações. Não cria nada de novo, não revoluciona coisa alguma. Algo que o Java fazia a tempos (tanto que o nome código do C# era JavaKiller), só que feito pelos programadores e arquitetos que só os bilhões da Microsoft conseguem pagar. Uma máquina virtual e uma biblioteca de classe, era isso.

Faz parte do projeto .NET melhorar a vida dos usuários e tornar os computadores mais seguros, mas ninguém viu isso até agora. Quando existirem aplicativos .NET disponíveis (hoje só existem bricadeiras e leitores de RSS), será muito mais confiável usar programas baixados na Internet, já que ele não teria permissão para alterar arquivos ou mesmo enviar informações para Internet. Os mecanismo de Browser Helper Objects (BHOs) do Internet Explorer não poderia ser usado para fazer spywares, caso os BHOs fossem desenvolvidos em .NET e rodassem em um AppDomain separado e com restrições de segurança.

Os primeiros passos nesse sentido já estão sendo dados pela Microsoft. O SQL Server 2005 (antes chamado de Yukon) trará a runtime do .NET embutida, o que possibilitará, entre outras coisas, escrever stored procedures em C# e VB.NET. No Windows Longhorn (próxima versão do Windows, esperada para 2006), a API principal será totalmente baseada em .NET. Assim, mais e mais aplicativos serão desenvolvidos em managed code, e os usuários começarão a ser beneficiados das vantagens do .NET.

Apesar do .NET não criar nada de novo, ele conta com aquele toque Microsoft. Entenda isso como uma ótima documentação, suporte e extensibilidade. Essa é a grande jogada, e é o que a Microsoft faz com todo produto que compra e com toda a tecnologia que ela adota. Foi assim com o .NET (um Java melhorado) e também com o Virtual PC (que não foi lançado até que ele fosse automatizável e extensível via COM).

Velho é tudo que funciona

Com a criação do .NET, os aplicativos para plataforma Windows começaram a ser classificados com managed (gerenciados, aplicativos .NET) e unmanaged (todos os outros). Os maria-vai-com-as-outras começaram a chamar os aplicativos que não eram .NET de “old unmanaged code”. Eles só não pararam para pensar em uma coisa: o Windows é feito em “old unmanaged code”, o Office também, assim como o próprio framework. Mais uma vitória do pessoal de marketing da Microsoft.

Se você trabalha como desenvolvedor a bastante tempo, você já deve ter visto vários aplicativos serem refeitos em novas ferramentas, pelo simples fato de que as novas ferramentas são novas, e as velhas ferramentas são velhas. Isso acontece a toda hora, as pessoas costumam classificar de velho tudo que funciona. Fui consultor em um banco, onde eles estavam portando um software inteiro feito em VB6 para VB.NET. Só que, como a Microsoft não respeita mesmo os programadores VB, o VB7 é praticamente incompatível com o VB6. O software foi refeito, e acredito que a nova versão não deve funcionar direito até hoje. Nem preciso dizer que tinha dedo da Microsoft brasileira nessa história...

Se uma empresa tem um aplicativo feito em Clipper, que funciona, talvez não seja necessário portá-lo para Windows. Mas como existe a mudança de paradigma entre a interface gráfica do DOS e a do Windows, portar um aplicativo desenvolvido em Clipper para alguma ferramenta Windows faz sentido. Isso realmente traz uma vantagem para o usuário, já que interação do usuário com o sistema pode melhorar bastante: interface mais fácil e mais intuitiva, fontes True Type, facilidade de impressão, suporte a rede, etc.

Agora qual a vantagem, para o usuário, em se portar um sistema desenvolvido em VB6 para a plataforma .NET? Praticamente nenhuma. O programa terá a mesma interface gráfica, com os mesmos recursos. Em algumas situações, o programa ficará pior, já que softwares desenvolvidos para plataforma .NET geralmente ficam mais lentos do que o feito em VB6.

Para os maníacos que teimam em contestar essa afirmação que .NET é mais lento, façam um teste: olhe o assembly que o JIT gera e compare com o que o compilador do Visual C++ gera na configuração DEBUG. Muito parecido, não é? Agora compile o programa Visual C++ em configuração RELEASE e compare novamente. Entendeu agora porque .NET é mais lento? Ah, você não sabe fazer isso? Então você afirma que o managed code é tão rápido quanto o unmanaged baseado em que? Estude mais antes de fazer uma afirmação. Por mais que existam alguns testes que provem o contrário, eles não podem ser levados ao pé da letra. É claro que se você testar em coisas simples, como ficar calculando Fibonacci em loop, a diferença será pequena. Agora pegue a especificação de um aplicativo e desenvolva-o C++ e em C#. Depois compare a performance dos dois. Esse sim é um teste válido. Talvez eu escreva uma série de artigos desenvolvendo algo desse tipo.

O .NET traz muitas vantagens, mas para o desenvolvedor. Você escreve menos código para fazer mais coisas, não precisa ficar se preocupando com gerenciamento de memória (no VB6 também não precisava), tem dezenas de wizards e designers para fazer suas telinhas. Tem uma biblioteca de classes muito bem arquitetada e bem implementada. Mas no final das contas, é só mais uma camada de abstração sobre a Win32 API, a infra-estrutura continua a mesma. No final das contas, o Windows.Forms e a GDI+ nada mais fazem do repassar as chamadas para a USER32.DLL e a GDI32.DLL.

E considerando que você estará refazendo o sistema, você não economizou tempo nenhum...

Coisas que funcionam

Eu acredito bastante na plataforma .NET. Gosto da arquitetura e acredito que um dia um programa .NET pode ser mais rápido do que um programa C++. Sim, porque conforme o JIT for evoluindo e a velocidade dos processadores for crescendo, o JIT poderá efetuar mais otimizações no código, e essas otimizações serão feitas baseadas no computador e no sistema operacional onde o programa será executado. Coisa que a compilação estática do Visual Basic 6 ou mesmo do Visual C++ nunca vai conseguir.

(Apesar de que o Profile Guided Optimization do Visual C++ 2005 (ainda em beta) é um recurso maravilhoso. Tanto que conseguiu aumentar a performance do SQL Server em aproximadamente 30%. Se você programa em Visual C++, não deixe de ler sobre isso)

.NET é o futuro do Windows, mas eu não acho que ainda seja o presente. O presente ainda é o que está no mercado e funciona: Win32 e COM. Apesar dessas tecnologias terem desvantagens quanto ao .NET, 99,9999999% das aplicações são desenvolvidas assim. Inclusive vários aplicativos que estão sendo desenvolvidos agora, ainda são baseados em COM e Win32. Note que, nessa análise eu considero aplicativos comerciais que, provavelemente, serão baixados pela Internet por vários clientes ou usuários. No caso de uma aplicativo tipo cadastro-de-alguma-coisa encomendado por um cliente, é realmente mais fácil desenvolver usando ADO.NET e obrigá-lo a instalar o .NET Framework em todas as estações.

Apesar de não ser o meu foco (pelo menos por enquanto), não podemos esquecer do Linux. A maioria dos programas em Linux são desenvolvidos em C/C++ e isso não mudará tão cedo. Apesar da Ximian/Novell ter acabado de lançar a versão final do projeto Mono (runtime .NET para Linux), não acredito que os programadores Linux irão entrar nessa onda da forma que o Miguel de Icaza está pensando (ou mostrando que pensa).

Terminando

Eu prefiro viver o presente, mas sempre de olho no futuro. E assim será.


  
 
 
Comentários
/dev/null | em 13/07/2004 | #
Eu soh acho q vc nao deve comparar .NET (framework) com Java. Sao coisas bem distintas
Rodrigo Strauss | website | em 13/07/2004 | #
Não acho que são tão distintos assim. Ambos são ambientes gerenciados para execução de aplicativos, com uma biblioteca de classes. A implementação é diferente, mas o conceito é o mesmo.
/dev/null | em 27/07/2004 | #
Nao uma coisa é linguagem, outra um framework...
Rodrigo Strauss | website | em 28/07/2004 | #
Sim, claro... Mas quando eu falo "Java", quero dizer a plataforma Java, e não somente a linguagem Java.
Fabio Galuppo | website | em 18/10/2004 | #
Particularmente não acho que Linux tenha futuro, mas esta é apenas minha opinião...

Acredito que .NET é presente, mas não alcançou o pico (por enquanto). Acredito também que C++/CLI e STL.NET é um grande diferencial.

C++ nativo e gerenciado sempre serão os melhores.

E o futuro será dos Web Services ;)
Selma Pugliesi | e-mail | em 19/07/2005 | #
Olá Fábio...bem...te achei no site da Microsoft e navegando...vim parar aqui! Trabalho em uma empresa de TI e estamos cadastrando parceiros desenvolvedores (acima 4 estrelas) para grandes projetos em território nacional. Se vc tiver interesse, envie seu CV, anexando seu "transcript" ou contate-me no hotmail. ok?
selmaplu@hotmail.com
Obrigada e um abraço.

(Seu blog está muito bom! Apesar de não entender lhufas desse assunto!)

Att.

Selma
Fabio Galuppo | em 20/07/2005 | #
Olá Selma, fico feliz por vc ter parado por aqui. O melhor blog brasileiro da atualidade, de total autoria do Rodrigo Strauss!

Qto a sua requisição, eu não sei como eu poderia ajudá-la. Afinal eu não ser um "desenvolvedor estelar" (pois não possuo nenhuma estrela - do programa).

Além disso o programa Desenvolvedor 5 Estrelas não é uma referência, pois não é reconhecido pela Microsoft Corporation como forma de avaliação (ao contrário das provas MCP) é mais uma iniciativa de marketing da Microsoft Brasil (e se não me engano Latam) do que uma profunda avaliação da capacidade técnica de um profissional.

Sou MCSD .NET, MCSD VS 6, MCAD e MCP - referências mundialmente reconhecidas. Me sentiria ofendido se no meio de um processo de seleção, o avaliador requisitasse quantas estrelas eu teria do programa "desenvolvedor 5 estrelas" (com certeza eu abortaria o processo naquele momento).

Respeitando todos aqueles que gastaram seu tempo com o programa, mas acredito que o programa desenvolvedor 5 estrelas é um ótimo para seleção para candidatos ao programa da Hebe Camargo ou da Adriane Galisteu.

Atenciosamente,

Fabio Galuppo
Rodrigo Strauss | website | em 20/07/2005 | #
Esse programa ridículo de estrelas só serve para eles conseguirem mais leitores para MSDN Brasil, já que, pelo conteúdo, ninguém vai ler aquilo mesmo...

Tem muita gente (inclusive eu), que fica ofendida quando alguém que contrata para uma empresa de TI passa um e-mail do Hotmail. Parece mais uma daquelas consultorias pilantras de RH... Selma, se você não é das pilantras, da próxima vez diga qual a sua empresa e passe um e-mail dela. "Grandes projetos em território nacional" também soa rídículo, seja mais específica.

Cuidado com o que você fala Fabio. É bem capaz que alguém coloque um comentário perguntando onde é o formulário de inscrição do programa da Hebe... :-)
Alfred Gary Myers Jr. | website | em 20/07/2005 | #
A Hebe é uma boa candidata por ter cinco estrelas, mas a Adriane só tem três logo estaria de fora.

É verdade!

Confira os transcripts em:
http://www.sbt.com.br/hebe/fale/
http://www.sbt.com.br/charme/
David Polverari | e-mail | em 06/08/2005 | #
Rodrigo, como programador, gosto de saber que ainda existem programadores que estudam e pesquisam antes de achar que entendem do assunto. Além disso, apesar de ser um árduo defensor do Linux, não odeio o Windows. Só não gosto do jeito que a MS sempre quer (e consegue) mudar a visão das pessoas sobre tudo (mas isso é outra história). Sobre o "managed code", acho que ele tem seu nicho (principalmente em computação distribuída, dispositivos móveis e "write once, run anywhere"), mas que nem todas as aplicações devem ser feitas dessa maneira (o exemplo que eu considero mais importante são os jogos, já que se eu compro uma máquina potente pra jogar, eu quero que os jogos aproveitem ao máximo essa capacidade). A MS diz que os programas "managed" serão mais seguros, por não usar pointers e outras coisas; mas isso é uma coisa repugnante para um bom programador: meus programas em C sempre se utilizaram de pointeiros e não tinham bugs fatais. Sempre eram testados e conceitualmente verificados, para não fazerem nenhuma besteira (além disso, o C permite certas coisas com ponteiros que parecem arte...). Tomara que essa onda de "managed code" não pegue pra tudo... Pra mim é como carro automático: é bom algumas vezes, mas sempre tira o tesão de dirigir. Um abraço.
antonio | em 27/03/2006 | #
[editado]
antonio | em 27/03/2006 | #
[editado]
Plinio Guimarães | website | em 08/08/2006 | #
Por acaso o banco que vc mencionou começa com "U"?
Estou tb como consultor nesse "U" e vejo as desgraças que ocorrem por aqui. O maketing do banco e os diretores de TI querem melhorar os processos e criar coisas novas mas a própria TI limita-se a dizer que vc não tem acesso a ferramentas e tecnologias novas (Java, C++, Delphi, .Net, etc). Proibem tudo que não for VB6 mas querem que a gente faça sistemas mirabolantes que realizem diveras atividades distintas, desde uma simples telinha com um botão para leitura de um arquivo e população de uma tabela access até processos complicados tais como servidores de email etc mas sem dar o acesso às tecnologias que permitem fazer isto muito mais fácilmente. Até o tal do access está limitado ao 97! Peguei um problema uma certa vez que era de descobrir porque o "cliente sybase" não funcionava no WinXP. Não deram acesso a documentação nem ao suporte da Sybase e tive que descobrir, depois de muitos contatos externos, que o "mardito" cliente sybase só passou a dar suporte para o WinXp (pelo OLEDB) a partir da versão 12.5 e aqui, por infelicidade, eles só têm a 12.0. Depois de muita briga "acharam" o 12.5 e o cliente finalmente funcionou no XP mas, pela lei de Murphi, a porcaria do programa VB (sem fontes) tinha sido compilado com as chamadas a stored procedures sem o comando "exec" no início (usaram o objeto errado). Sei que isso não tem muito a haver com a pauta acima, mas é só pra elucidar como ainda existem empresas (grandes) que limitam tudo a coisas antigas mas querem que tiremos "vinho de pedra". Por outro lado tinha uma outra consultoria - uma tal de accentu...- que fez um projeto de mudar tudo aqui no banco com novos recursos etc - usando é claro .Net - e, pra variar, sem saber direito o que era pra fazer, como funcionam as coisas e, pior, com pessoas com pouco conhecimento técnico e experiência em desenvolvimento de sistemas, quanto mais em .Net. Adivinha o que aconteceu... furo atrás de furo. O mais engraçado é que eles tinham acesso à tecnologias novas (.Net)
O pessoal da TI - fornecedor de hardware e software - sequer sabe que ambiente de hardware é preciso pra colocar um ambiente de desenvolvimento .Net (ex: acham que num micro com 256MB pode-se colocar: WinXP, Ambiente .Net, SQL-Server (MSDE), Java, Office, etc e que a máquina vai funcionar tudo 100%). Cansei. Vim da área de automação comercial e, pelo menos, lá os técnicos sabiam que é necessário um equipamento decente pra rodar certos programas. Fazíamos verdadeiras maravilhas mesmo com poucos recursos mas com grande acesso a tecnologias diversas (cada uma pra uma determinada finalidade em que mais se destaca) e eu conseguia entregar sistemas complexos em 30 ou 40 dias já testados e prontos pro cliente... Aqui, nem consigo (ou não posso) fazer um programa decente pois as ferramentas estã "enferrujadas" demais.
Rodrigo Strauss | website | em 08/08/2006 | #
Não, o banco que eu citei é o Itaú BBA.
./techberto | website | em 27/09/2006 | #
Mr.Strauss,

O sábio Leminski já dizia “haja hoje para tanto ontem”; sei que seu post já está meio "idoso"! :-) Mas eu só o li agora e penso que o cerne dele é atemporal, assim segue meus comentários...

E sem apologia ao Freud "cada qual com seu qual"; gostei do que li sobre esta sua experiência de "Managed & Unmanaged"!:-)

Hoje vejo antigos defensores do Java afirmar que C++ com BOOST e Smart Pointer é o melhor negócio para garantir a portabilidade do que usar Java, e cá entre nós sabemos que isto não é absoluto. Amo C++, curto STL, BOOST, STL e o Loki, mas há situações onde o C# vem bem acalhar, assim como o Java, VB.Net, Python entre outros assim como há casos que a Web se encaixa, outros que o Smart Client é a melhor arquitetura e por aí vai...

Amo um milenar haikai que diz que "para certeiro ser, consultar à todos você deve" e esta é uma verdade que nos revela a cada dia mais aboluta do que nunca.

Att.
[]s++
Guilherme | e-mail | em 27/07/2008 | #
Bom, 4 anos depois do Artigo, acredito que hoje já podemos falar que .NET é o presente.

Comecei trabalhar com .NET a 3 anos atras no final da era Visual Studio 2003.
Eduardo | em 06/06/2009 | #
Farei uma certificação .Net! Sim, é o presente! rs
Werner | website | em 25/08/2009 | #
Comment acerca das <a href=" http://www.1bit.com.br/managed#1433">observações do Plínio Guimarães</a>:

Plínio, esse U de que vc fala é mesmo uma desorganização (ia dizer merda, mas quis ser educado). Em 2005 fui consultor lá no CAO, onde me pediram para desenvolver um aplicativo para extração/cadastramento de dados em BD DB2 (rodando em CICS). O aplicativo na verdade já existia em VB3 (Deus o livre) e estavam "portando" ele para VB6 - metade do trabalho tinha sido feito por um pessoal anterior, de outra consultoria, que o "gerentão" do U chutou fora por estar insatisfeito com o resultado... tirando pela "sabedoria" do fulano e seu perspicaz comentário sobre "tirar vinho da pedra", não é de me espantar que ninguém o satisfizesse.

Ele brigou muito com eles (e posteriormente, comigo), pois o sistema principal era todo feito em COBOL e ele queria que o VB6 "falasse" com o dito cujo, assim, como em um passe de mágica.

Apesar de eu ter entrado naquela barca sem saber de nada disso (a "vítima" aqui achava que iria só programar), precisei gastar a metade do tempo previamente alocado para esta minha atividade pesquisando qual seria a forma correta de se fazer a integração entre a baixa plataforma (Win32) e a alta (CICS), coisa que ninguém la dentro tinha pensado, até então.

E para se ter uma idéia do tamanho da encrenca, fazer uma plataforma Win32 conversar com Mainframe não é coisa tão simples assim. Precisei cavar muito, até descobrir que existe um tal IBM CICS Client, o qual instalava componentes na maquina que criavam os sockets, os quais por sua vez, permitiam o acesso ao servidor Mainframe.

Você pode estar pensando que o problema acabou aí, mas daí foi só o início: em primeiro lugar, o tal do CICS client tem a interface mais bagunçada que eu já vi (definitivamente, a IBM não tem noção de interface gráfica X facilidade de uso X produtividade - quem já tentou mexer com OS2 sabe a que me refiro); em segundo lugar, depois de instalar (e documentar todo o processo) em algumas máquinas-cliente rodando Windows 95/98, e testar com sucesso, chegou a vez das maquinas XP. Pronto, o client já não acessava mais o Mainframe...

Nesse ponto da história, começaram a chover as queixas: "Mas pq o consultor ainda não entregou?" / "O QUÊ!! Ainda nem começaram os testes unitários?!!?" / "O meu programador COBOL está aqui sem fazer nada, só esperando você terminar cazzo!!" / "Vc ai ter que vir aos finais-de-semana, não quero nem saber. O prazo terá que ser cumprido e ponto." - e ainda, a pérola: "A partir de agoram, quero que o consultor me envie por e-mail um posicionamento a cada 30 minutos!!" (por achar que eu estava "coçando" o tempo todo, enquanto me matava pra solucionar o problema que nem era meu).

Bom, pra resumir: eu joguei a toalha, disse que faria a parte que me compete e eles que se virassem com a parte estrutural. Deixei o "big-fucking-asshole-manager" a falar sozinho e fui la codificar no VB6. Depois de um tempo, vierem me chamar pra acompanhar um consultor externo, chamado às pressas (e contratado a 70 reais a hora), que manjava tudo de CICS, pra fazer as maquinas XP "enxergarem" o maldito Mainframe. Ele conseguiu na primeira tentativa, pois como tinha se aposentado pela IBM (sim, eu disse aposentado - o respeitável cidadão tinha sido funcionário do U e posteriormente, da IBM antes de se aposentar por tempo de serviço), ele trouxe consigo um CD contendo todas as versões do CICS Client já lançadas, dentre elas um tal de "IBM Universal CICS Client", o qual circumvencionava uma incompatibilidade de componentes que não existia em máquinas com 95/98, mas passou a existir com maquinas XP.

Viu como foi "fácil"? É só saber onde é o lugar certo de bater com a marreta...

Ah sim, e pra completar a "historinha": Depois de tudo isso, e completada a minha parte de programação, eu precisei ficar todos os dias até tarde nos testes conjuntos com o Mainframe, pq o tal "programador COBOL" tinha escrito a maior parte das suas rotinas de recebimento de transmissão com base em lay-outs errados (pois nada que eu mandava chegava corretamente pra ele). Os lay-outs que eu havia recebido (que eu tinha que botar na cara do sujeito - e do gerente, que insistia que o erro era do meu programa todas as vezes) estavam 100% corretos.

Até hoje eu amaldiçôo esse U desgraçado e sua corja de gerentes burros e irracionais, que provavelmente ainda hoje devem estar rodando por lá, vivendo nos tempos da idade média...
Marcos Vinicius | website | em 30/06/2010 | #
Bom Primeiramente,
Parabêns pelo Site Rodrigo...

me deparei com o site, pois estava procurando sobre "analise e desenvolvimento de sistemas / programador" etc.
sou novo ainda, tenho minhas duvidas sobre tal area, mais sei que estou correto de que é esta que eu quero seguir...
Por isto o meu interesse em ler este site e seus artigos,
praticamente li tudo[?]
não cheguei a interpretar e nem compreender muita coisa, mas, creio que com o passar do tempo muita coisa que você citou aqui faça sentido pra eu, daqui pra frente.

afinal, programação é uma arte, que só com o tempo pra conseguir ter tamanha habilidade pra exerce-la.
pelo menos foi oque deu pra capitar.

Flow
Abraço.
Augusto | em 28/10/2010 | #
Já rodei mto na net mas nunca encontrei, em português, um sítio tão inteligente como esse! Estou a começar em programação, não entendi tudo mas tudo foi inspirador!Abraços
camila | em 08/03/2011 | #
Muito bom o site. Muito obrigada Strauss!!!
Quero muito aprender C++... por onde começar?
Rodrigo Strauss | website | e-mail | em 08/03/2011 | #
http://www.1bit.com.br/content.1bit/weblog/faq_cpp_start
Diego | em 16/01/2012 | #
Apesar do C# ter sido concebido para desbancar o Java nas plataformas da Microsoft (tarefa bem sucedida, diga-se de passagem), o codinome da linguagem era Project Cool, e não JavaKiller.
Irene Soares | e-mail | em 15/03/2012 | #
oi Rodrigo, sou irene soares, sou angolana e vivo em angola, sou estudante do curso engenharia informatica, não sei pk k entrei nele mas ja que estou nele queria muito apreneder mais sobre os ramos do mesmo como podes me ajudar sobre isso??????????
Reinaldo Deprera | em 09/07/2012 | #
Programador C#, asp.net e qualquer coisa que use o framework .NET, bão existe. O que existe são arastadores de mouse do Visual Studio

Passaram-se anos e aconteceu o que sempre dissemos: Programador que cair no conto do arrasta mouse da Microsoft, vai deixar de ser programador muito rápido. Batata!

- Aplicativos web feitos em .NET podem ser penetrados a cada atualização. Aé hoje não houve sequer 1 versão do framework segura .
- O framework .NET possui um exploit pouco conhecido, que já existe a quase 2 anos. Detalhe: Bypass de autenticação! É Mole!
- Aplicativos web feitos em .NET são conhecidos pelas vulnerabilidades XSS e RFI.

E se alguém contestar as minhas afirmações, fica o desafio: Comente, mas deixe o endeço do seu web service ou web app
Cara Feia | e-mail | em 11/12/2012 | #
Hahaha este cara não tem conhecimento de causa. Tudo bem quer opinar, é preciso reconhecer que se tem qualidade nos dois ambientes.
Não faça como os corinthianos que pensam que só o time deles é uma grande coisa.

Meu sem noção.

O que posso dizer, o desastre seria, profissionais com pouco conhecimento geram merda.

A grande merda não reside na ferramenta ou linguagem Pesquisando você vai encontrar valor e qualidade seja qual for a escolha.
Porém no Brasil temos profissionais formados em Haward ou Awe?

Não né, manezinhos por toda a parte. Esse é problema da nossa terrinha.
Algo a dizer?
Nome:


Site:


E-mail:


Escreva o número vinte e seis:


 Não mostre meu e-mail no site, não serve pra nada mesmo...

Comentário





Os comentários devem ser sobre assuntos relativos ao post, eu provavelmente apagarei comentários totalmente offtopic. Se quiser me enviar uma mensagem, use o formulário de contato. E não esqueça: isso é um site pessoal e eu me reservo o direito de apagar qualquer comentário ofensivo ou inapropriado.
rebarba rebarba
  ::::