@RegisMesquita

Apr 29

Agile Recursive Meeting

  • Zanst: me encaminha o email falando sobre o modulo de ecommerce, quero entender direito qualé que é
  • Me: me manda um email pedindo isso

Apr 19

Cartas a um Jovem Programador Parte 2:

  • Douglas Moura 14 de abril às 14 28 :
  • Poxa, pode publicar meu nome sim. Belos conselhos, vou adiquirir alguns livros que vc recomendou... Estava pensando em fazer Java, tenho medo de ser uma programação muito complicada pra uma pessoa que esteja começando agora, mas como vc disse, tem que aprender cada coisa nova no dia-a-dia... E claro algumas amizades no ramo sempre ajuda, a escola que vou fazer será o Senai, pois jah fiz alguns cursos lá... Certificações Microsoft. Vc tem alguma?
  • Enviado via Facebook móvel
  • Régis David Souza Mesquita 14 de abril às 14 32 :
  • Sou contra certificações... qualquer um pode tirar uma certificação e sendo assim em minha opinião , ela não "certifica" nada...
  • Um bom profissional não precisa de um papel para mostrar que ele é bom.
  • Douglas Moura 18 de abril às 21 46 :
  • Estava vendo no jornal, empregos na área de T.I. estão bem remunerados. Fizeram uma comparação e esse profissional aqui está tão bem quanto um profissional da Europa. Isso é ótimo, mas nós sabemos que está tudo isso, por um simples motivo: NÃO TEM MUITOS PROFISSIONAIS QUALIFICADOS, e tem até mesmo bons profissionais, que não conseguem se firma em alguma empresa que tenha uma obrigação de ter certificação.
  • Régis David Souza Mesquita 18 de abril às 23 01 :
  • Essas empresa não se daria bem com esse tipo de profissional , pense no emprego como um relacionamento , não é porque é gostosa(salário bom) que você vai namorar, escolha o lugar onde trabalhar por empatia...
  • O tipo de profissional que não tem interesse em certificações não se daria bem em uma empresa dessas que pede certificação pelo simples motivo que a filosofia deles não bate.
  • Diferente da arquitetura computacional , o mercado de computação não é binario , existem N tipos de profissionais e N tipos de empresa , não escolha onde você vai trabalhar com base apenas no quanto vão te pagar ou no titulo do seu cargo , mas por empatia com a empresa, veja o modelo de criação de software , a filosofia da empresa e por ai vai.
  • Lembre-se o seu trabalho é parte da sua vida pense nele como um relacionamento , você não vai querer gastar tempo que não voltam mais preso a uma mulher burra como uma porta e antipática como o inferno só porque ela é gostosa.
  • Douglas Moura 19 de abril às 01 41 :
  • Poxa sigo o exemplo de uma pessoa que não tive o prazer de conhecer, ele teve uma oferta muito boa para trabalhar em uma empresa onde receberia um valor bastante agradável. Ele recusou pelo fato da empresa de onde ele trabalha lhe dar um mais conforto em seu dia a dia. A chave está aí, a empresa valorizar o funcionário. Independente do salário, ele prefere estar em um lugar onde ele se sente a vontade, pois apesar de tdo, ele ama o trabalho dele. E salário é um detalhe. Vc esta quanto tempo na área? Adorei a comparação com a mulher gostosa. Rs.
  • Enviado via Facebook móvel
  • Régis David Souza Mesquita 19 de abril às 01 59 :
  • Eu programo desde os 12 anos mas meu primeiro trabalho com pagamento de verdade foi aos 15 com um software de automação industrial.
  • O salário é sim um detalhe , você precisa dele para pagar suas contas mas não deve ser movido pelo pagamento. Se você fizer o que você gosta feliz você vai fazer um bom trabalho e o bom trabalho é acompanhado por um bom pagamento.
  • Hoje em dia sou uma das pessoas que recebe um salário alto entre os desenvolvedores que conheço mas nunca dei um peso consideravel para isso , recebi uma proposta para ganhar mais recentemente mas eu teria que trabalhar local , naquele horario fixo tradicional , CLT e tudo mais... e isso tudo é algo na minha opinião que é um saco logo recusei sem nenhum peso na consciência.
  • Lembrando que não to dizendo que CLT , horario fixo e trabalho local sejam o inferno , estou dizendo que para mim é o inferno, eu não iria produzir um bom software nessas condições mas muitos querem essas condições e seriam ótimos profissionais sob esse cenário...

Apr 14

Cartas a um jovem programador

  • Programador:
  • Cara, quero entrar nessa área mas não tenho nenhuma linguagem ainda, (tenho lógica, mas nenhuma linguagem) vou começar o inglês no próximo semestre (meio que essencial), diz aí; qual a maior dificuldade, é cobrado demais? Qual a pior coisa dessa profissão? E qual a melhor linguagem de cara assim, que vc recomenda.
  • Consiste só em linguagem a vida de um programador, além da criatividade ou chegam em vc e falam Se vira!!!!
  • Enviado via Facebook móvel
  • Régis David Souza Mesquita:
  • Depende do seu perfil.... você pode trabalhar para grandes empresas ou pequenas empresas , empresas pequenas e ageis , gigantes tradicionais , gigantes ageis e por ai vai...
  • Cada empresa tem um perfil diferente , já vi lugar que pessoal não podia chegar 1 seg. atrasado e todo mundo social e outro galera de moicano e chinelo chegando 15hrs...
  • Eu trabalho em home office por exemplo a maior parte do tempo e faço meu próprio horario... to tentando trabalhar nesse momento...
  • Sobre suas perguntas
  • Pergunta* vou começar o inglês no próximo semestre (meio que essencial)
  • Resposta* Totalmente essencial , a menos que você se contente em ser mediocre.
  • Pergunta* qual a maior dificuldade, é cobrado demais?
  • Resposta* A maior dificuldade eu diria que é sempre ter que aprender algo novo , seja de tecnologia nova seja do negocio do cliente , você não pode fazer um sistema de automação industrial sem entender o que a fabrica faz exatamente. logo aprender rapido é essencial.
  • Pergunta* Qual a pior coisa dessa profissão?
  • Resposta* Se você quiser ser um bom profissional você tem que estar sempre se aperfeiçoando se você tem talento vai gostar de estudar essas coisas novas sempre , lembre-se de sempre contestar o conhecimento que você recebe e lembre-se tambem que contestar não é repudiar , o lado ruim nisso é que ter que aprender tanta coisa te deixa com pouco tempo para as outras coisas da vida...
  • Pergunta* E qual a melhor linguagem de cara assim, que vc recomenda.
  • Resposta* linguagem é ferramenta , você pode até ter uma favorita mas você não pode ser um desenvolvedor de uma unica linguagem... aprender diversas linguagens te tornará um programador melhor.
  • As dicas que lhe dou são
  • Se você pretende trabalhar em empresas mais liberais aprenda as linguagem mais "recentes" como Ruby , Python , Javascript (server-side e client-side) e alguma linguagem que anda evoluindo como Scala , Erlang ou algo do tipo.
  • Se você pretende trabalhar no esquema mais corporativo aprenda algo como .NET , JAVA e se curtir algo mais hardcore C++
  • Mas lembre-se que mais importante que as linguagens são as ferramentas do seu dia a dia , aprenda a usar ferramentas que facilitam sua vida como Vim , Emacs , AWK , SED , CUT , Shellscript e por ai vai.
  • mas antes de mais nada como você está começando leia livros como Código Limpo , The Pragmatic Programmer e A Catedral e o Bazar.

Feb 28

Long Time no See…

Ando sem tempo para postar coisas nesse meu blog e metendo mais a mão na massa , se quiser saber mais sobre o que penso e faço…

Meu Projeto para comunidade/Empresa a JobDone : http://rdso.me/JD

Meu github: http://rdso.me/github

Meu Twitter( Atualizado Direto! :D #Addicted ): http://www.twitter.com/regismesquita

Meu Blog Besta(tambem pouco atualizado): http://www.tocomsono.com.br


Dec 5

Sep 12

Notas de algumas palestras da #qconsp

Notas que fiz durante as palestras da #qconsp , então como fiz on the fly , tá cheio de erros de português e muitas coisas podem não fazer sentido já que são notas , mas podem ser interessante para alguns.

Ver : www.lambda3.com.br

 

—————————-

 

Criação de banco de dados , notas baseadas na apresentação do TwitterGuy.

 

Problemas de escalabilidade em banco de dados se apresentam de diversas formas , geralmente começam afetando a memoria e quando se tenta solucionar o problema com a memoria se caem em problemas de lógica , quando se tenta “Divide to conquest” , por exemplo , ao separar em 2 servidores separados quem está seguindo quem ,com uma tabela das pessoas seguidas pelo usuario X , se cae no problema de como achar quem está seguindo este usuario , sendo assim se requer uma atenção muito especial , não apenas em como solucionar o problema mas nos efeitos colaterais dessa separação.

 

é importante sempre abordar o problema como a busca de uma forma de reduzir o problema em um problema menor , até que se consiga resolver esse problema menor.

 

Se você reduzir ao separar em diversos servidores uma única coisa , a grande dificuldade vai ser como relacionar essas informações e como evitar inconsistencias em caso de crashes e afins.

 

Um exemplo é o twitter em que se criou um sistema de journaling guiado por timestamp afim de garantir a integridade dos dados que possuem replicações como o campo de “following back” entre 2 usuarios que foi a solução do problema anterior 

 

————————

 

Java as a plataform.

 

Muito divertida , as partes boa foi onde se via um trecho do código da JVM , a nota que a JVM é baseada em Stack ao invéz de registradores, ver que existem várias opções de linguagem para rodar sobre a VM, saber do futuro  , algo que também foi muito bom nessa palestra foi saber do potencial no futuro de não prescisar rodar o ruby sobre uma VM como JRuby e ao invez disso rodar diretamente emcima da JVM.

 

————————-

 

Restfulie

 

Deve ser estudado a fundo , aparentemente é apenas um framework que permite utilizar o REST sobre outras plataformas sem dificuldade , alem de estabelecer um padrão de comunicação entre as apps , resta saber o quanto de semântica é necessaria existir para saber se isso não tornaria probitivo a criação até mesmo de “translator para ele”, cabe pesquisa.

 

————————-

 

Google app engine

 

Muitas limitações e trata o software como uma caixa fechada… amazon parece ser uma opção muito melhor após a apresentação.

 

——————

 

Lightning talk , varias divertidas, valeu a pena assistir, gostei principalmente da apresentação do web2py que eu ainda não conhecia.

 

——————

 

Jruby Keynote - @headius 

 

Using warble you can deploy war…

                   

engine yard cloud.

 

Android with Jruby , may be an interisting way of developing. ( Ruboto ) , 

 

5 Steps to deploy an android application with ruboto.

 

Really cool project that could be extremely useful and agile for developing aplications to mobile plataform.

 

Look for Rubeus a DSL for design swing interfaces and Jemini a DSL for Game Design.

 

pragprog.org 

 

Perguntei depois da palestra se ele estava ciente do JVM estar querendo suportar tipos dinamicos nativamente e se o JRuby vai mudar sua forma de agir e se tornar um compilador ao invés de um interpretador e ele me disse que o JRuby já é capaz de criar codigo java compilado e que estava ciente dessas mudança e que esperavam tornar o código compilado bem mais rápido e eficiente com essas funcionalidades.

 

———————-

 

Ebay - Randy Shoup

 

Particione tudo! Não deixe sua base de dados toda em um unico local , deixe ela totalmente modularizada e acesse tudo separadamente.

 

Ele explicou que tudo falha e falha muito e que por isso era extremamente importante saber falhar graciosamente para se ainda ter um site funcionando , ou seja seu site continuará apresentável mesmo que algumas partes estejam fora do ar ,existe a importância de se Dividir as coisas da sua empresa em nível de importância e garantir a consistência devida para cada uma.

 

Design for extensibility with Flexible schemas

 

Extensible processing : Events

 

Comunnicate between systems with events and within system control processing pipeline via configuration.

 

When doing migration make it a way that you can rollback in any moment , in ebay they are upgrading more than 10k systems and they do it by keeping the recording in A format until some time after fully upgrading to B and then stoping this old way..

 

QoS must be explicit and you should only depend on abstract interface and virtualized endpoint.

 

Consumer must be responsible to what to do if the service is not working.

 

first fallacy of distributed Computiong : “The network is reliable.”

 

eBay processes 50 PB per day! WOW!

10 Tips : http://twitpic.com/2nrfcr