Monday, July 13, 2015

Curso: Python Patterns - Luciano Ramalho

Informações adicionais

Data: 18 e 19/07/15 (sáb e dom)

Horário: 9h às 18h

Carga horária: 16 horas

Valores do investimento:

Até 07/07: R$ 400,00

Após 07/07: R$ 450,00

Instrutor: Luciano Ramalho


Sobre o curso O objetivo desse curso é apresentar técnicas de programação orientada a objetos e padrões de projeto otimizados para as características dinâmicas da linguagem Python

A quem se destina esse workshop? Desenvolvedores Python, iniciantes ou não, com conhecimentos básicos de programação orientada a objetos.

Pré-requisitos

Conhecimentos básicos em Python.

Importante: O aluno deverá trazer seu próprio notebook e carregador.

Conteúdo do workshop

  • Objetos em Python: possibilidades e limitações
  • O Python Data Model: entendendo Python como um framework
  • Introdução aos padrões de projeto
  • O padrão "Façade" e um exemplo se sua aplicação em Django
  • Um padrão embutido em Python: Iterator
  • Borg, um padrão que substitui o clássico Singleton
  • Repensando os padrões de projeto clássicos no contexto de Python
  • Template method: auto-delegação em uma linguagem dinâmica
  • Refatorando padrões com funções de primeira classe: Strategy, Command etc.
  • Refatorando padrões com tipos de primeira classe: Abstract Factory, Factory Method etc.
Benefícios
  • Coffee breaks
  • Internet wireless
  • Material didático
  • Certificado impresso

Instrutor

Luciano Ramalho, autor do livro Fluent Python (O'Reilly, 2015), tem mais de 15 anos de experiência como desenvolvedor especializado na linguagem Python. Desenvolveu sistemas baseados em Python para grandes portais como UOL, BOL, AOL Brasil, IDG Now, e treinou equipes para a Globo.com, Titans Group, Senado Federal e Presidência da República. Palestrou várias vezes nas conferências PyCon USA, OSCON, FISL, PythonBrasil e RuPy.


Mais informações: http://www.eventick.com.br/curso-python-patterns-padroes

Friday, April 17, 2015

Docker - Debian with Apache, PHP and MySQL ou MariaDB conection




Just a simple container ready to connect to a MariaDB ou a MySQL server.

Dockerfile:



FROM debian

MAINTAINER David Kwast

RUN apt-get update && apt-get -y install apache2 mysql-client php5 php5-mysql libapache2-mod-php5 && apt-get clean

EXPOSE 80

CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]





Usage example:



docker run --name test -d -p 1080:80 -v [path_inside_host]:/var/www/

Thursday, January 15, 2015

pypyODBC on Linux with FreeTDS

Tested and working on CentOS 7 x64 with a Windows Server 2003 serving SQL Server 2000.

First, install CentOS packages:
yum install freetds tdsodbc unixODBC

Edit /etc/odbcinst.ini and add the following section:
# SQL Server ODBC
[FreeTDS]
Description=FreeTDS MSSQL Driver
Driver = /usr/lib64/libtdsodbc.so.0
* Note that the driver path may be different depending on the distribution version or architecture.


Edit /etc/freetds.conf and add the folling section:
[DATASOURCENAME]
        host = HOSTNAME or IP
        port = 1433
        tds version = 7.0
And modify the following section by adding this line:
 [global]
        client charset = UTF-8
* Note that the section name, is this case DATASOURCENAME, should be any name that you will call from your program and the tds version may be different depending on the SQL Server version that you want to connect with. And don't forget to set host and port according to your server instances.


You can test the conection with the following command line tool:
tsql -S DATASOURCENAME -U 'DOMAIN\user' -P password
* In this case above, I used domain authentication, can be different depending on SQL Server setup.


And here is a simple Python program to test the connection using pypyODBC:
import pypyodbc

c = pypyodbc.connect(ur"DRIVER={FreeTDS};Servername=DATASOURCENAME;DATABASE=DATABASENAME;UID=DOMAIN\user;PWD=password")

cursor = c.cursor()

cursor.execute( 'SELECT row FROM table' )

for row in cursor:
    print row[0],

c.close()

References: