Update: saiu o vídeo: Tendências para o futuro da Web: uma leitura a partir do trabalho do W3C – SAC/GAiN 2014. Apresentei hoje cedo uma palestra no GAiN, um encontro de profissionais de comunicação e internet da minha igreja. Há um tempo que venho falando às pessoas que trabalham com internet na igreja sobre os…
Para o pessoal que viu minha oficina no Gain:
Um amigo me escreveu: Ola Elcio, vc tem algum tutorial de como reescrever a url para deixar mais amigável? no momento eu tenho isso http://www.meusite.com.br/index.php/category/produtos/produtos-especiais/ quero deixar assim: http://www.meusite.com.br/produtos-especiais/ Muito bem, vamos lá. O primeiro passo é, se você não quer que as categorias apareçam uma dentro da outra, não usá-las de forma hierárquica no…
É hoje à noite DURAÇÃO: 2h Aprenda os fundamentos do terminal do Linux, domine os comandos mais comuns mas, além disso, aprenda um novo jeito de pensar. Automatize tarefas e coloque seu computador para trabalhar por você. Por que estamos oferecendo esse curso? Durante os últimos anos eu tenho ensinado milhares de técnicos, programadores e…
Esqueça urllib e httplib: Requests resolve do jeito certo. Você pode instalar via pip com: pip install requests Depois, veja como é fácil: >>> import requests >>> r=requests.get(‘http://visie.com.br’) >>> for k,v in r.headers.iteritems():print k,’=>’,v … content-length => 7669 content-encoding => gzip accept-ranges => bytes expires => Mon, 20 Jan 2014 13:18:30 GMT vary => Accept-Encoding,Cookie server…
Talvez você tenha um pouco de medo de usar o comando rm, porque ele exclui definitivamente os arquivos. Não há “lixeira”, e todos os métodos disponíveis para desfazer a deleção, como o ext2undel, não passam de boas tentativas com uma razoável chance de insucesso. Você sabia que pode enviar um arquivo para a lixeira a…
Há um tempo eu li “The Pragmatic Programmer“, uma espécie de livro de auto-ajuda para programadores. Não é um livro técnico, não vai te ensinar técnicas ou tecnologias, mas fala de um jeito de pensar e traz uma coleção de conselhos daquele tipo que parece óbvio mas ninguém nunca faz. Um desses conselhos era aprender…
Há mais de dez anos que meus processos de deploy, isto é, colocar um site ou sistema em produção, não usam FTP. Qualquer bom provedor, nacional ou internacional, oferece ferramentas muito mais eficientes para o deploy de sites e sistemas. E isso inclui desde pequenos sites em WordPress ou HTML estático até portais com milhares…
Esses dias eu tirei um tempinho para ajudar o pessoal do MyJobSpace com o site deles, e eles me convenceram de que seria uma boa ideia ensinar isso. Então lá vai: Aprenda a fazer site para sua empresa em WordPress Aprenda a fazer site sem programar. Se você é um empreendedor iniciante ou pequeno empresário,…
Um bocado de gente se mostrou decepcionada ontem com os dois líderes do Movimento Passe Livre que foram ao Roda Viva. Eles afirmaram categoricamente que o ato de ontem é pelos vinte centavos de aumento da passagem. E aí? Tinha uma multidão compartilhando no Facebook que não eram só vinte centavos, que estávamos protestando contra…
Tabelas responsivas de um jeito fácil: “There are a lot of very clever responsive table solutions available now. There are solutions that flip the table on it’s side, convert it to a pie chart, gradually reduce the columns, allow users to determine columns, and even allow partial scrolling across the table. All of them are…
Quando a internet surgiu essa não foi a ilusão que criei pra mim. Não sei se você já parou pra pensar, que o mundo se transforma tão rapidamente, que a única maneira de ficarmos confortáveis é criar uma ilusão de estabilidade. Leia mais: http://youpix.com.br/colunistas/tera-a-internet-se-tornado-o-incrivel-mundo-dos-reclamoes/
Alguém me perguntou há pouco o que eu acho do Sampa JS, por que eu não vou, por que eu não apoio o evento e etc. Resolvi responder por aqui, já que talvez mais alguém pode ter essa dúvida (se é que isso importa para alguém, né?) Vamos lá, assunto pessoal: eu sou adventista do…
Detalhezinho sobre a linguagem que vale a pena conhecer, e uma boa dica de lógica sobre um erro muito cometido por iniciantes: “We shouldn’t be fearful of writing about what we know. Even if you write from the most basic point of view, about something which has been ‘around for ages’, you’ll likely be saying…
SVG é suportado em tudo quanto é navegador hoje, incluindo o Internet Explorer 9. Isso significa que, num futuro próximo, você vai poder usar SVG sem medo. Enquanto isso, para boa parte das necessidades, você pode usar SVG com uma biblioteca de compatibilidade com IEs antigos, como a Raphaël e a svgweb. Dá uma olhada nesse…
Olha que útil: SQL Executioner, um plugin WordPress que te dá uma tela no painel para a execução de SQL, substituindo para muita coisa o phpMyAdmin ou ferramentas semelhantes: Acabou de salvar um cliente da Visie que hospeda o site num provedor que não nos dá facilidades como acesso SSH ou um bom painel de controle.…
É impressionante a facilidade com que certas discussões técnicas ficam parecendo discussões sobre moral, ética ou futebol. Parece que é difícil entender o fato de que fazer uma escolha técnica diferente da sua não vai condenar ninguém ao inferno. Veja, por exemplo, a questão da validação do W3C. Algumas páginas do site da Visie não passam…
Fantástico!
Este é um blog sobre tecnologia e desenvolvimento, e eu tenho sido muito criterioso em evitar posts sobre outros assuntos. Mas dessa vez eu não me aguentei. Hoje li esses posts: São Paulo é uma cidade doente O Brasil e a correria que mata Se você ainda não os leu, por favor, leia agora. Depois…
Hoje estava brincando com Requests e tive essa ideia maluca: import requests import re def Ed(text): params=dict(server=’0.0.0.0:8085′,charset_post=’utf-8′, charset=’utf-8′,pure=1,js=0,tst=1,msg=text) return re.sub(‘<[^>]*>’,”,re.sub(r’\n+$’,”, requests.get(‘http://www.ed.conpet.gov.br/mod_perl/bot_gateway.cgi’, params=params).text)) def SeteZoom(text): params=dict(server=’127.0.0.1:8088′,pure=1,js=0,tst=1,msg=text) return re.sub(r’\n+$’,”, requests.get(‘http://bot.insite.com.br/cgi-bin/bot_gateway.cgi’, params=params).text) msg=’Oi!’ while True: print ‘SeteZoom: %s’ % msg msg=Ed(msg) print ‘Ed: %s’ % msg msg=SeteZoom(msg) Teste aí, o resultado às vezes é mais inteligente que muito…