Dicas/ ios/ iPad/ Iphone/ Pessoal

15 aplicativos necessários para desenvolvedores Web/Mobile que usam o Mac OSX

cocoa_cup

Recentemente, meu tempo gasto com desenvolvimento foi dividido entre duas plataformas, Windows e Mac OSX. O grande problema é se ambientar na nova plataforma, como no Windows eu tenho facilidade em montar toda as ferramentas necessárias para desenvolvimento, já que estou acostumado, no Mac OSX eu tive pouca dificuldade, já que boa parte dos softwares existentes no Windows tem para Mac OSX.

Uma dica importante é, atualize a memória do seu Mac ao menos com 4Gb de memória, eu uso os
Eu perguntei no twitter se alguém tinha algum link para me ajudar a montar o ambiente, como não tive resposta, decidir sair na busca e ir instalando aquilo que eu julguei necessário para montar um ambiente que atenda as minhas necessidades.

Compartilho com vocês essa lista de softwares necessários.

1 – Adobe Creative Suite CS6
– Adobe Flash
– Flash Builder 4.6
– Adobe Photoshop
– Adobe Fireworks
– Adobe Illustrator
2 – Eclipse IDE para Mac OSX

3 – MAMP para desenvolvimento Web com PHP

4 – Git OSX para controle de versão

5 – Dropbox para Mac OSX

6 – SublimeText

7 – XCode

8 – Free Memory cleaner

9 – CCleaner para Mac OSX

10 – Miro Video Converter

11 – FileZilla FTP

12 – Camtasia Studio

13 – Navicat Premium

14 – Google Chromium

15 – Não é bem Apps, mas frameworks que ajudam a criar AppsAndroid SDK, Corona SDK, TideSDK, PhoneGap

Um App adicional que isso é bem pessoal é o Things, um organizador de To-do-list. Baratinho e muito útil.

Se vocês tiverem outras ferramentas e que seja útil, deixe o link abaixo nos comentários.

Dev. Software/ Dicas/ Dicas e truques/ Oportunidades de emprego/ Pessoal

Qual o verdadeiro valor de um desenvolvedor de Software?

real_brasileiro

Eu já escrevi por aqui vários assuntos relacionados a desenvolvedor, alguns foram bem comentados outros nem tanto. Dessa vez eu me deparei com uma situação da vida real onde você pode se perguntar qual o verdadeiro valor de um desenvolvedor de software?

É uma ciência não exata, já que como em toda profissão, o profissional de TI é um tanto quanto luxo e outros tanto quanto prantos. Meio sem sentido não é? Porém se você pensar em jingles de campanhas eleitorais, você vai ver que quase todas as músicas não fazem sentido, são paródias mal escritas e de cunho fulo.

Bem assim é o desenvolvedor de luxo, a estrela da bola, o Fênomeno dos gramados ” oops! bits”, é assim que ele se ver, vende-se mal para caramba e cobra um preço de ouro sendo ouro de tolo.

Existe valor no que foi escrito a 1 ano atrás? Existe valor no que será escrito nas propostas de trabalho e abertura de vagas daqui à 60 dias?

Tudo na vida humana é baseado em datas co-relacionadas a um evento em princípio, o principio do “Eu me acho”, é um fator avacalhador na hora de contratar um valioso desenvolvedor, seja ele do interior, da capital, da favela ou do condomínio de luxo.

Talvez, até um dia que o fator decisivo do “Eu me acho”, tenha data de validade.

Aposto que você leu até aqui e não entendeu patavina alguma. É isso que eu quero causar, perca seu tempo! Ele é a peça mais valiosa de seu dia-a-dia.

Perca seu tempo investindo em seu conhecimento, seja um perdedor nesse período. Não tente ser um desenvolvedor colecionador de certificações, MBA disso e daquilo, tente ser o maior investidor de sua carreira, começando ser auto-avaliado pelo pior crítico do mundo, seu lado macabro e sarcástico.

Todo santo dia, eu acordo, dou aquela velha esticada na cama para colocar os ossos no lugar, levanto, tomo uma ducha bem gelada para terminar de mandar o sono ir embora, depois vou tomar aquele bom e velho café quente, Ligo o tablet e vou dar uma lida nas notícias Espaciais, por que de economia, política, guerra, eu removi de meu app flipboard, já que tudo é a mesma coisa, nunca sai do ciclo.

Pois bem, depois disso, eu começo meu exercício mental e matinal, começo a ler sobre linguagens de programação, técnicas e vez ou outra eu arrisco em outros livros fora do contexto em que vivo, como por exemplo, Novels.

Depois disso, reunião daqui, reunião de lá, algumas micro conferências via skype e quando fui ver passou o dia. A noite começo a prática do que eu aprendi de manhã, por que só de teoria a coisa complica sua vida.

Lá perto das 23:00 acabo o dia, fecho a budega e vou me divertir com a patroa. É basicamente essa a rotina minha hoje, totalmente diferente de 12 anos atrás. Onde eu acordava cedo, pegava o buzão lotado, trabalhava feito jumento e depois tinha que voltar para casa. Não sei se essa dureza me ensinou a valorizar meu tempo mais que nunca.

Passados hoje 12 anos, considero-me mais um empreendedor do que um desenvolvedor, porém nunca deixei o espírito de lado em codificar produtos e idéias, sou sempre surpreendido por amigos, alunos com alguns ciclos que eu já passei, por exemplo, meia noite pedindo ajuda de código.
Você teve o dia inteiro para fazer, provavelmente você está ali por que cometeu um erro estúpido durante o dia ou o prazo recebido; Gastou seu tempo com bobagens.

E olha que eu já falei sobre gastar melhor seu tempo nesse post aqui.
Mudando um pouco da nossa conversa de pau para pião, eu sempre vejo algumas tirinhas de Médico vs. profissionais de TI, na moral da história nenhuma área é relativamente relacionada a outra em questão de conhecimento. O que toda profissão tem em comum são referências, qualidades e defeitos. Não me cola essa de querer ganhar mais só por que sabe fazer uma coisa que não vai ser útil dentro de seu atual ambiente de trabalho.

Tem uma tirinha bem interessante do Vida de programador, que eu me refiro a esse tipo de profissional, veja ai abaixo.

O que adianta você manjar de tudo isso, se você não se dá o valor? Existe um grande habismo em quebrar o galho e criar serviços. Se você for parte de uma ONG e quer ser voluntário, você dedica apenas um tempo determinado para aquele problema específico e para pessoas que não tem condições de te pagar. É o velho ditado, é dando que se recebe.

Mais saiba separar a vida pessoal, familiar da profissional, se não você vai acabar viciando seus parentes e deixando o que é importante em sua vida em segundo plano.

E esse ciclo se estende para sua atual empresa, seja você empresário ou profissional.

Se você é empresário o objeto de maior valor dentro de sua empresa é seu funcionário, faça ele gastar o tempo em coisas inteligentes que sirva para melhorar a qualidade atual do que você oferece aos seus clientes, até quem sabe gerar novos negócios não explorados dentro de sua atual gestão.

Se você é desenvolvedor e quer aumento, procure melhorar o salário apresentando novas idéias relacionadas a novos negócios não explorados na sua empresa, se seu patrão ver a idéia, adota-la e não lhe der aumento, mude de empresa imediatamente, o tempo gasto naquela idéia pode ser aplicado a outra empresa, deixe isso bem claro na hora de apresentar sua idéia e em seguida pedir aumento.

Todos querem vencer, conquistar dominar, é da nossa natureza em especial se formos homens, querer sempre o melhor, progredir, sermos os provedores para nossas famílias, é comum de nossa raça ter esse pensamento de superioridade.

Começe a pensar diferente, uma nação tem um exército para combater o mal e seus interesses, não é por que a nação tem o exército que ela vai toda hora fazer guerra. Ela sempre busca a paz e não a volatidade.

Na teoria de equilíbrio de John Nash, se você empresário ver todo o potencial de uma idéia assim como seu empregado, todos tende a ganhar, não adianta ser esperto nesse nosso mercado, ele é pequeno e logo logo sua estratégia frajuta de querer pagar menos ou de ganhar mais, ficará logo conhecida.

Assim, se aplica a teoria de equilíbrio para os colegas de profissão, o que adianta você cobrar menos que seu atual colega se você só degradará mais ainda seus futuros projetos e sacrificará mais ainda seu tempo? Tem lógica isso?

Por isso que usei a foto da nota de R$1 real, quando era de papel ela tinha mais valor na nossa carteira, depois que virou moeda, ela perdeu todo valor e o posto para nota de R$2 reais, sendo assim o espetinho de gato subiu por causa dessa mudança.

Pense bem sobre suas atitudes e valores, tem uma frase  que define bem isso de Fernando Pessoa.

O valor das coisas não está no tempo que elas duram, mas na intensidade com que acontecem. Por isso existem momentos inesquecíveis, coisas inexplicáveis e pessoas incomparáveis.
Fernando Pessoa

Eu termino o post perguntando, Qual é seu verdadeiro valor como desenvolvedor de software?

Dicas/ Dicas e truques/ Google/ HTML 5/ HTML5 / CSS3/ Web 2.0

Coloque seu site ou aplicativo web no modo turbo

rocket launch

Se você é fanático por performance e tem acesso shell/root ao seu servidor, vai aqui uma dica muito importante para optimizar todas as páginas que você serve para seus leitores/usuários.

Se seus serviços forem sob o teto do servidor Apache HTTP, então você precisa conhecer urgente o mod_pagespeed que acelera o processo de carregamento do aplicativo/sites a níveis de grandes sites como Google.com e facebook.com

Só para você ter uma idéia, meu site com todas as técnicas que abordei em meu arquivo .htaccess ele beirava os 6.5s para carregar por completo para você leitor. Depois que eu ativei o mod_pagespeed o tempo passou para 1.65s e o melhor de tudo isso, banda e processos foram economizados.

O que o mod_pagespeed faz na verdade?

Ele basicamente optimiza tudo que você deixou para depois e acabou esquecendo de fazer ou simplesmente não deu tempo devido a pressão sofrida no trabalho para liberar uma release.

Então através de filtros pré-definidos via String na sua configuração o mod_pagespeed cria diretivas de rápido acesso permitindo que você faça performance à baixo nível no servidor.

O mod_pagespeed é um santo remédio, porém você deve usa-lo com cautela, já que boa parte de seus filtros ainda são experimentos e nunca se sabe o que poderá causar de ruim para sua aplicação.

 

Pagespeed e derivados

Existem outros módulos no apache que é importante frizar bem para que você não continue achando que o pagespeed é o único salvador da pátria, outros módulos foram usados em meu problema, porém o pagespeed de fato teve um ganho muito mais considerado deixando ele agir sobre os arquivos estáticos.

Módulos que também usei e que são necessários para o pagespeed rodar.

Mod – rewrite

Mod – headers

Mod – deflate

 

Esses módulos podem ser instalados perfeitamente em seu servidor Apache usando os seguintes comandos.

 

Instalando o módulo rewrite.

a2enmod Nome_do_Modulo

 

O comando a2enmod, basicamente diz, Apache2 habilite modulo X, se você quiser ver todos os módulos habilitados em seu servidor Apache, basta ir em cd /etc/apache2/mods-enabled/

e dar um ls

 

Como instalar em um servidor Ubuntu/CentOS/Debian/Fedora

Baixe o módulo pagespeed diretamente aqui, links estão do lado direito.

Uma vez que você escolheu o pacote correto para sua distribuição linux, use o comando wget para baixar o pacote.

root@li437-29:~# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-beta_current_amd64.deb

 

Como eu tenho um sistema operacional Ubuntu 64 bits usei o pacote acima.

Uma vez que o download completou, basta executar os seguintes comandos se você estiver no Ubuntu.

dpkg -i mod-pagespeed-*.deb
apt-get -f install

Se estiver no CentOS ou Fedora, execute

yum install at  (if you do not already have 'at' installed)
rpm -U mod-pagespeed-*.rpm

 

Depois disso, só habilitar o pagespeed no Apache, usando o comando a2enmod

a2enmod pagespeed

Pronto, seu módulo pagespeed está habilitado e pronto para executar, agora basta configurar os filtros que vem nele para melhorar o desempenho.

Por padrão o módulo é desabilitado justamente por que você precisa configura-lo antes de sair usando, afinal o Google não quer que seu site saia fora do ar antes mesmo de você coloca-lo em modo turbo.

Para isso, abra o arquivo de configuração do pagespeed que fica na pasta /etc/apache2/mods-enabled e use um editor que você esteja confortável em usar, eu uso o Vim, tem gente que gosta de outros e por ai vai. Para abrir é simples, vi pagespeed.conf

O arquivo vem basicamente assim.

# Turn on mod_pagespeed. To completely disable mod_pagespeed, you
# can set this to "off".
ModPagespeed on
 
# Direct Apache to send all HTML output to the mod_pagespeed
# output handler.
AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER text/html
 
# If you want mod_pagespeed process XHTML as well, please uncomment this
# line.
# AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER application/xhtml+xml
 
# The ModPagespeedFileCachePath and
# ModPagespeedGeneratedFilePrefix directories must exist and be
# writable by the apache user (as specified by the User
# directive).
ModPagespeedFileCachePath "/var/mod_pagespeed/cache/"
ModPagespeedGeneratedFilePrefix "/var/mod_pagespeed/files/"
 
# Override the mod_pagespeed 'rewrite level'. The default level
# "CoreFilters" uses a set of rewrite filters that are generally
# safe for most web pages. Most sites should not need to change
# this value and can instead fine-tune the configuration using the
# ModPagespeedDisableFilters and ModPagespeedEnableFilters
# directives, below. Valid values for ModPagespeedRewriteLevel are
# PassThrough, CoreFilters and TestingCoreFilters.
#
# ModPagespeedRewriteLevel PassThrough
 
# Explicitly disables specific filters. This is useful in
# conjuction with ModPagespeedRewriteLevel. For instance, if one
# of the filters in the CoreFilters needs to be disabled for a
# site, that filter can be added to
# ModPagespeedDisableFilters. This directive contains a
# comma-separated list of filter names, and can be repeated.
#
# ModPagespeedDisableFilters rewrite_images
 
# Explicitly enables specific filters. This is useful in
# conjuction with ModPagespeedRewriteLevel. For instance, filters
# not included in the CoreFilters may be enabled using this
# directive. This directive contains a comma-separated list of
# filter names, and can be repeated.
#
ModPagespeedEnableFilters rewrite_javascript,rewrite_css
ModPagespeedEnableFilters collapse_whitespace,elide_attributes
 
# ModPagespeedDomain
# authorizes rewriting of JS, CSS, and Image files found in this
# domain. By default only resources with the same origin as the
# HTML file are rewritten. For example:
 
# ModPagespeedDomain cdn.myhost.com
#
# This will allow resources found on http://cdn.myhost.com to be
# rewritten in addition to those in the same domain as the HTML.
#
# Wildcards (* and ?) are allowed in the domain specification. Be
# careful when using them as if you rewrite domains that do not
# send you traffic, then the site receiving the traffic will not
# know how to serve the rewritten content.
 
# Other defaults (cache sizes and thresholds):
#
# ModPagespeedFileCacheSizeKb 102400
# ModPagespeedFileCacheCleanIntervalMs 3600000
# ModPagespeedLRUCacheKbPerProcess 1024
# ModPagespeedLRUCacheByteLimit 16384
# ModPagespeedCssInlineMaxBytes 2048
# ModPagespeedImageInlineMaxBytes 2048
# ModPagespeedCssImageInlineMaxBytes 2048
# ModPagespeedJsInlineMaxBytes 2048
# ModPagespeedCssOutlineMinBytes 3000
# ModPagespeedJsOutlineMinBytes 3000
 
# Bound the number of images that can be rewritten at any one time; this
# avoids overloading the CPU. Set this to 0 to remove the bound.
#
# ModPagespeedImageMaxRewritesAtOnce 8
 
# You can also customize the number of threads per Apache process
# mod_pagespeed will use to do resource optimization. Plain
# "rewrite threads" are used to do short, latency-sensitive work,
# while "expensive rewrite threads" are used for actual optimization
# work that's more computationally expensive. If you live these unset,
# or use values 
SetHandler mod_pagespeed_beacon
 
# Uncomment the following line if you want to disable statistics entirely.
#
# ModPagespeedStatistics off
 
# This page lets you view statistics about the mod_pagespeed module.
 
Order allow,deny
# You may insert other "Allow from" lines to add hosts you want to
# allow to look at generated statistics. Another possibility is
# to comment out the "Order" and "Allow" options from the config
# file, to allow any client that can reach your server to examine
# statistics. This might be appropriate in an experimental setup or
# if the Apache server is protected by a reverse proxy that will
# filter URLs in some fashion.
Allow from localhost
Allow from 127.0.0.1
SetHandler mod_pagespeed_statistics
 
# Page /mod_pagespeed_message lets you view the latest messages from
# mod_pagespeed, regardless of log-level in your httpd.conf
# ModPagespeedMessageBufferSize is the maximum number of bytes you would
# like to dump to your /mod_pagespeed_message page at one time,
# its default value is 100k bytes.
# Set it to 0 if you want to disable this feature.
ModPagespeedMessageBufferSize 100000
 
Allow from localhost
Allow from 127.0.0.1
SetHandler mod_pagespeed_message
 
Allow from localhost
Allow from 127.0.0.1
SetHandler mod_pagespeed_referer_statistics

O que você precisa habilitar primeiro é o módulo.

 ModPagespeed on

Depois configurar onde ele vai guardar os caches

  ModPagespeedFileCachePath            "/var/mod_pagespeed/cache/"
  ModPagespeedGeneratedFilePrefix      "/var/mod_pagespeed/files/"

Coloque em um diretório de sua preferência.

Com apenas isso, você já vai notar uma significante mudança no carregamento de seu site ou App em 50%. Tem muita configuração para você fazer através de filtros.

Os filtros que utilzei foram esses.

 ModPagespeedEnableFilters combine_css

O filtro combine_css já diz, tudo ele combina tudo que você tem de CSS em um único arquivo.

Outro filtro que usei foi o minificador de Javascript.

ModPagespeedEnableFilters rewrite_javascript

Em caso de você esquecer de minificar seu código javascript, ele faz automático para você.

Outro bastante importante é a configuração das imagens, elas tem um peso absurdo quando o negócio é carregamento.

Eu usei os seguintes filtros.

 ModPagespeedEnableFilters inline_images,recompress_images,resize_images

Peço para carregar todas as imagens em inline, tudo junto, comprima elas e faça um resize caso necessário.

 

Claro que os filtros que eu usei são específicos para meu caso, embora ele vá servir também para vocês na maioria dos casos, recomendo ler os pro e contras de qualquer filtro que você habilite na documentação do Google pageSpeed, que por sinal é bem completa.

E depois disso tudo? Como faço para testar?

Existem diversas ferramentas on-line que analisam o conteúdo do site para você e diz onde está errando, inclusive no próprio site do Page speed, o Google disponibiliza o Page speed Insights, detalhando tudo que você precisa saber para corrigir os erros e melhorar a performance do site.

O mais legal do Pagespeed Insights é a possibilidade de você testar o carregamento em Desktop e Mobile.

Outra ferramenta que fiz bastante uso em meu problema, foi o Full Page Test da Pingdom, para ver se realmente o Pagespeed tinha afetado a performance do site.
No Google Page Speed Insights meu site carregou em 680ms quase 1 segundo. No Pingdom os resultados foram mais reais digamos assim. Carregados em 1.65s.

Sem tudo isso do Pagespeed meu site estaria sendo carregado em meros 5 ou 6 segundos, isso por que boa parte de seu conteúdo é texto.

É isso, escrevei outro post de como eu consegui reduzir o consumo de memória do servidor servindos 50 visitas /segundo nesse blog depois que mudei para servidores novos.
Foi uma grande aventura configurar o Apache e o MySQL para reduzir o consumo de memória.

Dev. Software/ Dicas

7 maneiras de se tornar produtivo no desenvolvimento de software

produtividade

Ante-ontem dei uma rápida palestra para uma equipe de desenvolvedores de software via Connect e a palestra era mais motivacional do que propriamente dita “técnica”.

Papo vai e papo vem, como uma boa conversa com aquele amigo que você não ver a anos, querendo ou não você aprende mais com quem esta lhe escutando do que em livros ou em pesquisa. E acabei juntando essa soma de idéias em uma compilação de 7 maneiras de se tornar mais produtivo, mais divertido trabalhar com software. Ao contrário de muitos artigos ou “delatores de regras”, essa lista de 7 coisas vai fazer você tirar muito mais proveito de sua vida profissional como profissional de TI do que em qualquer outra área que você venha a conhecer.

 

1 – Desligue-se de mensagens instantâneas 

É quase impossível nos dias de hoje, mais o mito de que Facebook, MSN, Gtalk, IRC, ser super importante para o processo evolutivo de um produto é quase um Tabú. E mexer nesse assunto é o mesmo que mexer em um vespeiro! Vai sair gente com tudo que é tipo de articulação para defender o uso.

Eu diria ao contrário, relacione-se mais com seu colega de equipe, apesar de tudo ele está quase próximo de você e uma conversa pessoal ou até mesmo a pausa para o café é importante para sua socialização ou personificação de um perfil profissional.

Há quem diga que passar alguns dias fora desses mensageiros instantaneos você acaba virando novidade quando encontra seus amigos de rede social;Tendo muito mais assuntos para conversar e também marcar o shopp do final de semana.

Não seja amigo de seu colega de trabalho apenas no expediente, nunca se sabe o que você ou ele será no futuro. Amizade e Networking começa nesses pequenos atos.

2 – Desafie seus limites

Não acomode-se por que você é fera em um assunto e domina apenas tecnologia X, seja poliglota, eu acredito que nas próximas 2 décadas, saber escrever um programa ou  “falar um idioma de bytes”, será quase importante quanto saber o inglês nos dias de hoje. A programação está se tornando uma linguagem universal e quem não souber programar em um único idioma de bytes, está sujeito a fadar na lista negra de analfabetos bytianos.

É importante que você seja o Expert prático naquela linguagem X e não um Expert Didático, saber definir bem esses dois pontos é super importante, tirando proveito dessa articulação e repassando o que você sabe para seus colegas da mesma área. Ser um expert prático vai lhe garantir referências, destaque, porém com o passar do tempo você ficará conhecido apenas por aquele rótulo “Zé da Borracharia”, “João Pintor”. Desapegue-se apenas de uma tecnologia.

Assim como o mundo tem diversas escolhas sexuais, espirituais, políticas, etc. O mundo de desenvolvimento também tem diversas opções, então seja culto, aprenda outras também que vão de seu perfil, quando digo aprenda outras, não quero dizer que saia e vá estudar tudo que é linguagem que existe por ai. Quero que você tenha sintonia no que você está querendo aprender, todos querem aprender a tocar violão porém outros se identificam melhor com a guitarra. Assim é a vida, adapte-se com aquilo que é dado e não julgue pelo que não é.

3 – Corrija seus erros

Sempre surge aquele boato “Fiquei sabendo que fulano…”. Quando ouvir isso saia correndo e/ou interrompa quem estiver começando a dizer isso.

Conversas fiadas atrapalham sua vida profissional, alheie-se apenas no que diz respeito a coisas positivas que tenham uma construção melhor em sua carreira, a vida é cheia de tropeços e quem erra tem o direito de consertar o que errou, não adianta, agente achar que nunca acontecerá conosco, vai acontecer sempre, é um inifity loop.

Minha esposa sempre me diz “A vida é um pé de manga, hoje eu mango de tu, amanhã você manga de mim”. Então pare de se importar com erros dos outros e não aprenda a errar como eles, aprenda com os seus.

Seus erros são muito mais importantes de serem corrigidos do que os erros dos outros. Você aprenderá mais com os seus, tendo mais chances de não repeti-los.

Viva positivamente, se você acreditar que enxerga dessa maneira a vida, ela vai lhe surpreender todos os dias.

 

4 – Seja organizado

Saiu sem pentear os cabelos, nem tirou a poeira do sapato? Ainda está com a calça jeans da semana passada sem lavar? Come on!

Organização não é apenas um código limpo, bem polido, poucas rotinas, organização começa no se arrumar para ir trabalhar, agente anda relaxado de vez em quando até pode, o que não pode é o sempre. Pega mal e você nunca será encarado como um bom profissional e sim um quebra galho.

Sei que alguns discordam, mais não tente ser um metro sexual ou coisa do tipo, apenas mais limpinho, a limpeza do corpo é a limpeza da alma, uma organização pessoal é fundamental para você se sentir bem e produzir com muito mais animo a sua arte de escrever código.

Organize suas idéias seja em papel ou digitalmente, mais nunca deixe de organiza-las, não importa o método que você escolha, mais nunca deixe suas idéias confundir o seu dia, no final você vai acabar acreditando que não fez nada, e não fez mesmo!

Use um bom gerenciador de versões, mesmo para documentos como word, excel e powerpoint, agente faz  “merda” toda hora e é bom dá um CTRL+Z de vez em quando, imagine que é importante controlar aquilo que você faz, uma idéia vem e vai toda hora do dia, você pode se arrepender ou não, pode avançar ou voltar. Controlar o que você está fazendo só mesmo em nossa área.

 

5 – Gaste menos

Economize tempo em coisas que não são interessantes para sua vida e profissão. Saber gastar e administrar o tempo em horário de trabalho é a maneira mais equilibrada de ser produtiva.

Ter uma regra ou ciência exata para isso, vai depender de cada caso, uma fórmula para essa equação só mesmo na prática, gastando seu tempo em coisas que são pertinentes ao projeto e ao seu dia-a-dia.

Deixe para ler notícias de caminhão virado na Marginal para depois, seu time de futebol fez gols no final de semana? Aproveite as pausas e não faça disso um mantra para puxar assunto todo santo dia. Tem coisa mais chata do que gente sem assunto que só fala de trabalho e de seu time?

Gaste mais tempo conduzindo as soluções de problemas existentes na sua vida, na sua carreira, quer ver uma maneira radical? Jogue a TV fora!  “Brincadeira”. Mais pense bem ao gastar seu tempo com coisas que realmente são irrelevantes.

Já deve ter escutado “Pense fora da caixa”, mais como se eu vivo fora dela? Então você já vive fora da caixa, basta agora alinhas seu tempo com suas atividades.

Voltar para casa e saber que seu dia foi hiper produtivo, vai lhe dá uma sensação ótima.

 

6 –  Vá para festas

Não aquela festa de ritmo batido e que faz todos enjoarem; Quando eu digo vá para festas, eu digo Eventos.

Eventos são a melhor forma de você matar  10 coelhos com uma paulada só. Em um só evento você ver “Seus desafetos, suas ambições, faz networking, conhece gente nova, distribui seu cartão de visita, come, pega panfletos sem sentido algum, assiste palestras sem cunho prático, faz perguntas que nunca irá usar e por último vai pagar caro para fazer tudo isso.

Agora se você vai em eventos para se divertir, ver como os outros estão trabalhando, como se apresentam, comer, beber, jogar conversa fora com aquele pessoal que você não ver em pessoa faz tempo, participar das palestras e fazer anotações sobre pontos importantes para depois pesquisar no google. Ótimo, você realmente foi para festas.

Aproveite esses eventos faça networking e todo o resto, porém nunca esqueça de se divertir, divertindo-se de forma saudável, você vai encontrar um balanço sentimental sobre sua área e começar a enxergar pela tangente da coisa, se arriscando na perfeição de sua arte.

Divirta-se.

 

7 –  Comente construtivamente

Sempre que você ver um material, artigo, tweet, outro comentário ou código seja construtivo. A humanidade sempre aprendeu que destruir para depois construir é o atalho mais sensato da existência da vida humana. Seja um pouco fora desse planeta, como eu comentei no item 3, seja construtivo nos argumentos, ajude quem ao seu ver está errando, comentando e deixando sua opinião.

O tal de “Fi de beck aka:. feedback”, é importante para quem se propõe a fazer algo diferente do que você está acostumado a ver todo santo dia. Construir um pensamento em conjunto é muito mais divertido do que dividi-los e separar por grupo. Eu sei que ninguém é igual a ninguém, mais não custa nada você colocar seu  IMHO para o colega de área de maneira construtiva, até um mísero comentário em um código é de grande ajuda.

Construa comentários, seja paciente com as diferenças no mundo.

 

Essas são dicas fundamentais para você ser um bom desenvolvedor que vive atarefado e desmotivado.

Até a próxima.

Dicas/ RIA

Jogar um código fora e refaze-lo do zero #soudev

Escrevi um Tweet ontem que muita gente que acompanha o #hastag #soudev pode concordar ou não, foram levantados alguns argumentos, como lá só tem espaço para 140 caracteres, deixa eu jogar aquele tweet fora e escrever do zero outro tweet aqui no Blog, onde tem mais espaço para eu mostrar quais motivos me levaram a isso.

Em resumo, o meu tweet foi :

Jogar um código fora e refaze-lo do zero, me retornou + performance +resultado +aprendizado #soudev

O real motivo:

Em um projeto onde trabalhamos temos um componente que é deveras complexo, e esse bendito componente acabou gerando outros 19 sub componentes, o que atingiu uma certa parte de grande esforço da equipe para concretiza-lo.
Um dos grandes obstáculos foi ter que cria-lo sem especificação técnica, ou seja no estilo Jack Bauer ou melhor, Mãe Diná (Prevendo as necessidades Rah!).

Impactou em 2 semanas escrevendo, 1 testando e 3 dias implementando, no resultado, o componente só funcionou 50% do que era previsto como achavamos que era para ser.

Então, no modo “faca na caveira” ou Coragem tecnicamente falando. Resolvemos que era mais fácil jogar fora todo o componente (leia-se parar de usar aquele código e criar outro do zero). Que fosse necessário para tal. Agora tendo a especificação pronta de fato, o levantamento de requisitos e os caprichos do pessoal de UX, só nos restou mãos a massa.

Em resumo, depois de 12 horas, o componente está criado, já testado e implementado no projeto.

Com isso nós ganhamos alguns itens:

Performance : O componente que era 19 sub-compontes ficou em apenas 11, De 6.700 linhas passou para 2.346 linhas, reduzindo os Skins do Flex para uma coisa bem mais simples e rápida, já que skins são ainda o gargalo do Flex 4.5.

Resultado: Com bem menos tempo e com um grande obstaculo pulado que foi na especificação, o resultado foi de 99% esperado pelo gerente de projeto e isso nos deu mais retorno sobre o que realmente importava nele.

Aprendizado: Aprendemos que o modo Mãe de Diná, não funciona em projetos, ter bola de cristal é sempre um 171, Optimizamos várias formulas matemáticas que eram utilizadas nele, re-criar a roda não vale a pena e sempre fica faltando um parafuso. Onde nos levou a usar algumas classes dessa biblioteca.

Quando você escreve um código,uma vez, ele se torna fácil nas próximas vezes que você for fazer em seguida. O grande problema e você julgar se isso realmente é necessário ou não. Depende muito de cada projeto, entre os fatores como: Quem está bancando o projeto, Prazo, estimativas de hora, Quantidade de mão de obra necessária.

Pense nisso.

Android/ Cursos/ Dicas

03 e 10 de Setembro Curso on-line Android Nativo Essencial

androidbanner2

Ser ou não ser eis a questão, essa é uma frase famosa do poeta William Shakespeare, escrita no século 15.

Hoje eu mudaria ela para Ser Android ou não ser, eis a questão. A empresa que eu trabalho eu realmente amo o que eu faço pelo simples fato dela ser uma empresa que motiva seus funcionários a fazer o melhor e não só isso, motiva a outras pessoas (alunos) a criarem coisas fantásticas e assim colaborar mais ainda para uma internet rica, móvel e fantástica.

Nos dias 03 e 10 de Setembro o Grande Stefan Horochovec vai ensinar ao pessoal como criar Apps nativamente para plataforma Android, o mais interessante de se criar apps nativas com código do próprio SDK é que você não fica só limitado ao AIR 2.5+ e Android 2.2. Você tem uma grande leva de dispositivos que você pode atingir.

Atualmente cerca de 550 mil novos smartphones com Android são ativados diariamente. Que juntos somam um exército de 130 Milhões de dispositivos rodando o Robozinho. Dai eu fico perguntando e você vai ficar ai parado e vendo toda essa manada passar diariamente e não vai fazer nada para criar algo para ela?

Pense bem, e faça esse curso que vai explorar todos esses recursos, quem é desenvolvedor Web ou Java vai adorar, afinal de contas a didática do Stefan é muito boa.

Ande logo! Por que é imperdível.

Dicas/ Negócios/ Notícias/ Pessoal

Esse teu digital aí não tem gosto de velho não?

O título é do blog post do Rene de Paula, eu conheci o Rene na época de uma apresentação byYou pela extinta Datasul. Ele lançou um blog a pouco tempo e nele ele ja tem uma série de videocasts onde comenta sobre idéias digitais, produtos, serviços e sua visão bem mente aberta sobre as novidades que estão por vir.

Um dos vídeos me chamou bastante atenção, que foi esse do título do post, acho que vale a pena assistir o vídeo e deixar ai seu comentário no blog do Rene ou aqui e imprimir seu ponto de vista sobre o assunto.

esse teu digital aí não tem gosto de velho não? from renedepaula on Vimeo.

Actionscript/ AS 3.0/ Comunidade/ Dicas/ Eventos/ Flex

É amanhã o Flex Mania 2011, preparados?

promo_flexmania_blogpost

Mais uma edição do Flex Mania e esse ano colocamos para quebrar com a qualidade das palestras, temos várias surpresas para anunciar nessa edição. Já conferiu a agenda?

Não precisa correr, cadastrar ou qualquer coisa do tipo, é grátis, basta entrar com seu nome e sobrenome e já está dentro da sala para assistir os melhores profissionais da indústria.

Te vejo por lá.

AIR 2.7/ AIR Mobile/ Dicas/ Notícias

Adobe AIR 2.7 lançado e cheio das novidades

Informalmente falando, estou bem animado com as novidades do AIR tanto para Android quanto para iOS, a performance está incrivelmente melhor no iOS, bem que o Arno, gerente de engenharia do AIR falou no Flashcamp Brasil em sua palestra.

Recompilei 2 apps (jogos) que estavamos fazendo com o novo AIR 2.7 e está incrivelmente melhor, nada se compara a um código feito nativamente, mais está muito bacana.

E uma das funções novas que eu mais gostei, foi a possibilidade de mudar o AIR para o SD do smartphone, afinal ele tem 17mb que usa da memória interna e isso é um pé no saco, já que o Android usa dessa memória para rodar aplicativos múltiplos.

Adorei as novidades, você pode conferir todas aqui.

Baixar para Android, já está disponível no Android Market, se você tem aplicativo feito em iOS com AIR 2.5 ou 2.6. Recompile com o novo SDK, você vai me agradecer pelo resto da sua vida por essa dica, roda muito mais rápido.

Para Desktop só seguir aqui.

AIR 2.0/ Dicas/ Flash/ Flash Player

Flash é uma pequena parte de nossa empresa,afirma Shantanu Narayen, CEO da Adobe

Seria esse um recado para os próximos 5 anos que o Flash Player e todo o ecosistema da plataforma Flash irá signitivamente diminuir no cenário mundial e nos investimentos da Adobe para a plataforma, e acabar adotando o HTML5 como padrão?

Assista o video do Shantanu Narayen,CEO da Adobe para o D9.

O entrevistador foi honesto e duro com as perguntas, mesmo assim treinado como o Shantanu Narayen é, consegiu escapar e deixar mais complicado para desenvolvedores e usuários finais qual seria o formato para daqui à 5 ou 10 anos.