Os 4 tipos de bons programadores

by Rafael Amorim 8. novembro 2011 13:56

Você se considera um bom programador? Que critérios você utiliza para definir se alguém é um bom programador ou não? Pensando nesses aspectos de como um programador pode ser bom, resolvi criar um artigo do que considero Os quatro tipos de bons programadores.

[Leia Mais]

Tags:

Programação

Escolha dois: bom/rápido/barato/logo

by Rafael Amorim 16. setembro 2010 20:15

O que você diria, então, quando um diretor de uma empresa diz que não vai dar treinamento algum para uma equipe porque é caro. Não vai contratar profissionais experientes nas tecnologias porque é caro. Tem um projeto difícil pela frente e demanda performance superior ao concorrente e com qualidade absoluta, ou seja, totalmente livre de bugs.

Loucura? Certamente, mas nunca uma área atraiu tantos loucos e idiotas como tecnologia.

Para saber mais, clique aqui.

Tags: ,

Geral | Programação

O ciclo de vida do desenvolvimento da segurança de computação confiável

by Rafael Amorim 16. setembro 2010 19:54

Este artigo aborda o SDL (Security Development Lifecycle - ciclo de vida do desenvolvimento da segurança) de computação confiável, um processo que a Microsoft adotou para o desenvolvimento de softwares que precisem resistir a ataques mal-intencionados. O processo engloba a adição de uma série de atividades e produtos concentrados na segurança em cada fase do processo de desenvolvimento de software da Microsoft. Essas atividades e esses produtos incluem o desenvolvimento de modelos de ameaças durante o design do software, o uso de ferramentas de verificação de código de análise estática durante a implementação e a realização de revisões de código e testes de segurança durante um "esforço de segurança" direcionado. Antes que o software sujeito ao SDL possa ser lançado, ele deve passar por uma Revisão final de segurança feita por uma equipe independente de seu grupo de desenvolvimento. Quando comparado a um software que não foi sujeitado ao SDL, o software que passou pelo SDL apresentou uma taxa significativamente reduzida de descobertas externas de vulnerabilidades de segurança. Este artigo descreve o SDL e aborda a experiência com sua implementação no software da Microsoft. Este artigo também contém links para páginas em inglês (19 páginas impressas).

Para saber mais, clique aqui (em português)

Tags: , ,

Instituto Livramento | Programação

Galeria do Flickr no BlogEngine

by Rafael Amorim 30. julho 2010 18:21

Há algum tempo eu estou a procura de um componente para colocar as imagens da minha galeria do flickr no blog. Mas estava dificil sem tempo falta tempo.

Aproveitando o feriado, olhei no dotnetblogengine  e encontrei um widget que faz o serviço. Mas não como eu queria. E o que eu queria é fazer as imagens aparecerem randomicas. Então mãos a obra! 

FlickrBar.rar (34,35 kb)

Tags: , , ,

BlogEngine.NET | Programação

Como restringir acesso ao blog usando o BlogEngine.NET

by Rafael Amorim 7. abril 2010 20:26

Uso o BlogEngine.NET a bastante tempo e gosto dele. Quando o pessoal do Instituto Livramento pediu um site, que pudesse ser facilmente administrado, não pensei duas vezes e mandei ver BlogEngine.NET lá.

Ai surgiu a necessidade de colocar informações exclusivas aos professores e o bicho pegou. Como fazer isso?!? Pensei mil coisas a fazer (tenho problemas de IVSF - Incrivel Vontade de Sair Fazendo) até que decidi em pesquisar no forum do BlogEngine.NET

A resposta está nesse link.

Abraços!

Tags:

.NET | BlogEngine.NET | Programação

Como começar a desenvolver em .NET – Parte 2

by Rafael Amorim 24. fevereiro 2009 21:18

Olá

Recebi um email do Roberto Maciel, que achei muito interessante colocar aqui a resposta e assim mais gente já fica sabendo :-)

Ola Rafael
Tudo bem ?!?!?
Rafael entrei no seu Blog por curiosidade ... e acabei me deparando com uma situação que estou vivendo hoje ...
Reparei que vc começou a desenvolver em meados de 2008, e eu estou querendo começar nesse ramo tbm.
Quero começar a desemvolver em liguagem C#, começei a ler o livro "PROGRAMANDO_COM_C__E_VISUAL_STUDIO.NET_2005" de Julio Batista,e me dei bem .. pois entendi tudo e tive facilidade de efetuar as lições ali propostas ...
So que agora não sei + que caminho seguir.
Gostaria que vc me desse algumas indicações de livros, cursos, sites para que eu possa me desenvolver + em C# a ponto de ganhar dinheiro com isso e torna-lo uma profissão, pois sempre tive vontade de trabalhar com isso.
Imagino eu que vc tenha passado por essa situação igual a minha e como já passou tem algumas soluções e/ou ideias para me ajudar !!!
Rafael já sou grato de sua atenção.
No que + vc puder ajudar eu serei realmente grato a vc
Desde Ja muito obrigado !!!

 

Roberto

Um bom site onde vc pode achar material de qualidade (com forum) é o SharpCode, site do qual faço parte, e que tem uma turma muito boa. Agora em março retornaremos com os webcasts, onde sempre se aprende.

No mesmo site, tem um post com dicas de bons livros. Se vc tiver mais algum, coloca lá. Vamos ficar contentes :-)

Outro site onde vc pode encontrar material, são os sites da MS, como o MSDN Brasil, o ASP.NET (em ingles).

Por fim, tem o Linha de Código, iMasters, DevMedia, Projetando .NET. Se alguém lembrar de mais algum outro bom site com material .NET, pode ir colocando nos comentários.

Pegue todo o conhecimento que conseguir, mas devolva-os da mesma forma. Seja em blog, artigo, forum, etc. Assim, vc cria oportunidades, para que mais gente possa conhecer a tecnologia.

Abraços

Tags: , ,

.NET | Programação

Inversão de Caracteres em .NET

by Rafael Amorim 4. dezembro 2008 14:04

Ontem passei na aula do Pedro (que tava corrigindo prova do 2o. Semestre) e ele estava escrevendo a resposta de uma questão em C. A questão consistia em inverter a sequencia de caracteres informada. Coisa bem simples mesmo.

Ai eu caí na bobagem de dizer que em .NET era fácil, e que só não ia fazer pq não ia ligar o note... hehehe... tava com preguiça mesmo de fazer. Ele prontamente carregou o VS 2008 e disse: "Não seja por isso. Ó!"

Pronto. Desafio feito e desafio aceito. Só não consegui fazer de primeira pq tinha um aniversário... Mas como prometido o código ta aqui.

Abraços

Tags: , , ,

.NET | Programação | URCAMP

Manipulando diretamente a Porta Paralela

by Rafael Amorim 13. novembro 2008 19:30

Olá

Essa semana encontrei um texto sobre como controlar os pinos da porta paralela no site do RogerCom (http://www.rogercom.com/). O objetivo final era mandar o comando para fazer os leds acenderem ou apagarem. O Daniel quis fazer em FoxPro e eu fui pro c#. Como não necessitava de muito material, comprei os leds e os resistores e resolvi fazer.

O HARDWARE 

Para fazer o hardware, usamos:

  • 1 placa de cartão (para fazer as soldas). Aqui pode ser qualquer coisa de plastico ou de papel, para dar sustentação aos leds
  • 8 Leds (qualquer cor). AVISO: LED tem lado. A perninha maior é o positivo.
  • 8 Resistores 470 ohm (amarelo, violeta, marrom). AVISO: Resistior não tem lado
  • 1 Cabo de impressora (que não vai mais ser usado)
  • Ferro de solda, estanho, multimetro, etc.

 

Para montar o hardware não tem muito segredo, é so seguir o desenho do site.


Peças antes do inicio da solda


Peças já soldadas na placa

Para montar o cabo, o Daniel me deu uma mão. Dentro do cabo da impressora tem uns 20 fios (mais ou menos), e é preciso encontrar fio a fio quem é quem. É ai que entra o multimetro.



 
Daniel e Eu encontrando os fios

Aqui aconteceu um acidente. Depois de identificarmos os cabos, pedi ao Daniel que cortasse os que não estavam em uso. Ele foi cortando. Quando terminou, viu que a etiqueta do fio nro 7 estava colada no meu braço. Tarde demais. O fio já estava cortado. Resultado: Lampada 7 permanentemente desligada :-P Depois se der eu refaço as ligações.




Fios soldados

 

O Software


Para fazer o hardware funcionar, precisavamos arrumar o software. Achamos uma dll que controla a porta paralela no windows xp pra cima (no 98 é diferente) e partimos pra programação em VFP.

Depois de penar um pouco, encontramos uma ocx que facilitou a vida.

Depois o Daniel ligou uma ocx para tocar mp3 e ligou os leds com o sistema de graficos da ocx. Não funcionou como deveria.

Para fazer em .Net. encontramos um software e pegamos dele como fazer o led acender/apagar. Depois fiz uma aplicação inteira para fazer acionar o led.


Sw em .NET

FONTES

  

Led4.rar (301,49 kb) - Versão em .NET

Versão em VFP: Em Breve. Daniel vai usar os pngs das lampadas. 

 

VIDEO 

 

CONCLUSÕES

As minhas:
1) EU tenho que aprender mais de .NET. Ainda sei pouco e apanhei em coisas simples
2) No site do RogerCom tem muita coisa interessante. Vale a pena ler.
3) A ideia de acender lampadas pela casa via software vai sair. É só eu terminar as funções da faculdade.
4) Obrigado ao Eduardo Spaki que me deu uma mão na programação ;-)

A do Daniel

1) "Prefiro não comentar" 


FONTES:
http://www.rogercom.com/pparalela/introducao.htm
https://secure.codeproject.com/KB/cs/csppleds.aspx?display=PrintAll&fid=21021&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=1066799&fr=251
http://www.google.com.br/

 

Tags: , , ,

.NET | Programação | Windows

Windows 7 tem novo modelo de desenvolvimento

by Rafael Amorim 3. novembro 2008 09:31

Quem trabalha na indústria sabe que construir software não é uma tarefa fácil. É um meio altamente volátil, sujeito a mudanças e podem ser muito mais complexos que a engenharia de um carro, por exemplo. Sabemos como um motor a explosão funciona por pelo menos 100 anos. O UNIX surgiu no começo dos anos 70 do século XX. Os sistemas operacionais modernos surgiram com o Mac OS, em 1984. O POSIX (Portable Operating System Interface) que é o padrão IEEE 1003 foi publicado em 1998. Além disso, sistemas operacionais (SO) estão entre os softwares mais complexos de serem criados.

A Microsoft, para o Windows 7, adotou uma nova forma de se trabalhar. Não existe mais software “beta” dentro de cada build do SO. As equipes só podem entregar algum recurso depois que o mesmo passou por um ciclo completo de desenvolvimento, depuração e testes. Nada de entregar uma parte do software 90% pronta, como um beta, e finalizar depois.

Os ciclos ou iterações, são de 3 meses, na qual, ao contrário do que muitos pensam, metade desse tempo é gasto em requisitos, planejamento, documentação e testes. O resultado dessa forma de se trabalhar é que mesmo em pré-beta, o Windows 7 surpreendeu pela estabilidade. E isso também resultou em outro ponto positivo: ao invés de entregar 10 itens funcionando mais ou menos, eles optaram por entregar 5 que funcionam bem.

Outra decisão foi trabalhar com os fabricantes de hardware para que os drivers sigam o modelo do Vista. Se funciona no Vista, deverá funcionar no Windows 7 e não apenas isso, com o feedback dos consumidores e da indústria, o recado foi dado: performance e consumo de recursos. E pela resposta do PDC 2008 parece que a gigante do software até o momento, acertou muito mais do que errou.

 

Fonte: MeioBit

Tags: ,

Programação | Windows

Novidades no Blog

by Rafael Amorim 2. novembro 2008 15:35

Olá

Depois de um dia quebrando cabeça com o BlogEngine, como já pode ser visto, o Blog esta de cara nova. Aquele negocio de "Pausa para o café" não funcionou como eu queria e tava dando a ideia de que o blog era sobre java (por causa da xicara de café).

A versão do BlogEngine também foi atualizada (agora na versão 1.4.5) e foi onde mais tive dor de cabeça, pois algumas coisas não funcionaram como deveriam (o backup e o restore de dados, por exemplo). A nuvem de tags sumiu também Frown

O endereço do blog também mudou. Antes estava escondido dentro de um diretorio chamado blog2 (com redirecionamento no blog.rafaelamorim.com.br). Agora esta devidamente colocado no diretorio blog.

Outras correções efetuadas:

  • O tema atual do blog (o coloridão) não funciona bem no IE 6. Para contornar, coloquei no pre init das paginas o seguinte código:
protected override void OnPreInit(EventArgs e)

{

   HttpBrowserCapabilities bc;

   bc = Request.Browser;

   if (bc.MajorVersion <= 6 && bc.Browser == "IE")

   {

      MasterPageFile = BlogEngine.Core.Utils.RelativeWebRoot + "themes/Standard/site.master";

   }

   else

   {

      MasterPageFile = BlogEngine.Core.
Utils.RelativeWebRoot + "themes/"+BlogEngine.Core.BlogSettings.Instance.Theme.Trim()+"/site.master";

   }

}

  • Os logotipos abaixo do campo de busca também foram colocadas para mostrar do que o blog vai falar.
  • Tem mais coisa que eu mudei. Mas infelizmente não lembro Tongue out

Tags: , ,

BlogEngine.NET | Novidades | Programação

Month List