What's new in Django community blogs?

Stockphoto 0.2.1 released

Nov 13 2007 [Archived Version] □ Published at Prosthetic Conscience

I've just released stockphoto 0.2.1. This is a bugfix release and contains no new features relative to 0.2. I would ...


Segundo Django Sprint dia 1 de Dezembro

Nov 12 2007 [Archived Version] □ Published at PyMan under tags  django

Sprint é um evento onde os desenvolvedores, colaboradores e simpatizantes com alguma ferramenta opensource se unem para implementar novidades de arrumar erros existentes nessa ferramenta. E dia 1 de Dezembro ocorrerá o segundo Django Sprint desse ano.

Para participar do Sprint, inscreva-se na página do wiki do Django e no dia do Sprint fique atento no canal #django-sprint, onde todos os envolvidos com o Sprint e os responsáveis pelo código do Django estarão para auxiliar e tirar dúvidas.

Se você ainda não conhece o processo de criação de tickets, envio de path's utilizado no desenvolvimento do Django, leia esse artigo: Contributing to Django.


Programmatic HTML generation

Oct 29 2007 [Archived Version] □ Published at Occasionally sane under tags  django

The recent release of Seaside 2.8 got me thinking about one particular feature of Seaside that is less often mentioned than its continuation-based flow: programmatic HTML generation. As far as I know, Seaside is one of the only frameworks to … Continue reading


Programmatic HTML generation

Oct 29 2007 [Archived Version] □ Published at Occasionally sane under tags  django

The recent release of Seaside 2.8 got me thinking about one particular feature of Seaside that is less often mentioned than its continuation-based flow: programmatic HTML generation. As far as I know, Seaside is one of the only frameworks to … Continue reading


Using the extra() QuerySet modifier in Django for WeGoEat

Oct 24 2007 [Archived Version] □ Published at Ryan Kanno: The diary of an Enginerd in Hawaii under tags  django extra hawaii howto projects

Since I actually used this method to reduce the number of Update:”explicit” SQL calls made in WeGoEat, I figured I’d write a little blog explaining the context in which it was used, and maybe, just maybe, it’ll help shed some light on how others can take advantage of this neat little function. Background As a […]


SQLAlchemy no Django com tranquil

Oct 13 2007 [Archived Version] □ Published at PyMan under tags  django python

Muitos programadores reclamam a falta de integração do Django com o SQLAlchemy. Há até um branch no projeto do Django para realizar essa integração, mas esse branch anda meio parado no momento.

Em paralelo a isso foi criado um projeto chamado tranquil, que tem por objetivo integrar o SQLAlchemy no Django.

As features mais legais desse projeto implementado até o momento são:
O projeto está no início ainda, mas será bem interessante quando for possível usar o Elixir no Django.

O site do projeto é: http://code.google.com/p/tranquil/


Calling all (Django) programmers… (I need advice)

Oct 11 2007 [Archived Version] □ Published at Ryan Kanno: The diary of an Enginerd in Hawaii under tags  algorithm database django facebook hash-table

Update According to Max, it’s against Facebook’s TOS to cache the data. I’ve totally must’ve skipped over it in the TOS… ok, fine… I admit, I didn’t even read it. Thanks Max! And to think this response was less than an hour after my post! Yay, community. In any case, this problem is still relevant […]


Lançado o e-book Diabetes na Prática Clínica

Oct 09 2007 [Archived Version] □ Published at PyMan under tags  django projetos

Ontem (8/10) foi o lançamento oficial do e-book "Diabetes na Prática Clínica". Esse e-book é um projeto pioneiro lançado pela Sociedade Brasileira de Diabetes para estimular a educação médica continuada.

Toda a parte de programação e banco de dados projeto foi desenvolvido por mim, e eu utilizei o Django como ferramenta para o desenvolvimento. E o layout e desenvolvimento visual foi feito pelo Eduardo Frick.

O mais interessante desse projeto foi a utilização do Django. Em todos os trabalhos que fiz em parceria com o Eduardo Frick sempre utilizamos PHP. Mas, como um bom pythonista e djanger, convenci o Eduardo a trabalharmos com Django nesse projeto e ele me deu seu voto de confiança.

Essa escolha foi arriscada, mas eficaz! Com o Django foi possível solucionar problemas complexos de maneira simples e rápida.

Nesse projeto eu usei e abusei do que mais gosto do Django: o newforms, ferramenta de serialização, template tags e template filters deixando de lado as generic views e o admin do Django. Fiz essa escolha pela necessidade de fazer um painel de administração bem específico.

Usei também o Prototype para facilitar o trabalho com AJAX e Javascript.

O resultado foi um sucesso e espero que vocês gostem!


Displaying stars (with rounding) as a Django templatetag

Oct 03 2007 [Archived Version] □ Published at Ryan Kanno: The diary of an Enginerd in Hawaii under tags  django leah-culver pownce projects python

Since my last post was quite popular (by my simple blogging standards), I’ve decided to post another Django snippet that I’ve used while coding WeGoEat. (I know, I know… one of these days I’ll finish. I’ve just been really, really lazy busy.) After reading Leah’s blog (of Pownce fame) about “rounding to the nearest half”, […]


Barcamp Vienna 2007 - Django Slides

Oct 01 2007 [Archived Version] □ Published at zerokspot.com

In case you were at the Barcamp and couldn’t check out my little presentation about the Django web framework, couldn’t read the slides or simply couldn’t get to the Barcamp at all: Here are my slides (and even hopefully with less errors ;-)). The sourcecode to these slides as well as the code for the promised demo application can be downloaded using the bzr versioning system from following path:


Django developers: We are the world

Sep 29 2007 [Archived Version] □ Published at Flapping Head under tags  django

An informal survey of the Django community This week, Andrew and I launched the Django Gigs website to help employers find Django developers. Andrew wrote about it and thanks to the Django Community feed aggregator we had quite a few visitors in the first couple of days. It’s clear that Django is catching on and [...]


Instalando Django com Apache e Mod_Python no Ubuntu

Sep 28 2007 [Archived Version] □ Published at PyMan under tags  apache django python ubuntu

Um servidor com Apache rodando Django através de mod_python é uma das melhores escolhas para se fazer um deploy de uma aplicação feita em Django. Devido a isso resolvi fazer através deste post um simples passo a passo de como fazer a instalação e configuração desse deploy.

Como no Ubuntu Python já vem instalado, é uma coisa a menos a se preocupar. Outra vantagem em usar o Ubuntu, ou qualquer distribuição baseada em Debian e a possibilidade de utilizar o apt-get para facilitar a instalação dos programas.

Então vamos aos passos:

1 - Instalando o Apache 2
Para instalar o Apache 2 no Ubuntu basta abrir o terminal e digitar apenas um apt-get
#sudo apt-get install apache2

Para ver se o Apache foi instalado com sucesso e está em funcionamento é só acessar http://localhost em seu navegador.

2 - Instalando mod_python
Para instalar o mod_python no Ubuntu não é muito diferente
#sudo apt-get libapache2-mod-python

3 - Instalando o Django
#sudo apt-get install python-django

4 - Configurando o Apache
Como o mod_python foi instalado via apt-get, o módulo já fica habilitado automaticamente.

Mas é necessário configurarmos nossa aplicação no Apache. Para isso temos que editar o http.conf da seguinte maneira:

Para editar o http.conf, é só digitar esse comando no terminal:

#sudo gedit /etc/apache2/http.conf

E adicionar as linhas a seguir:

<VirtualHost * >
<Location "/">
SetHandler python-program
PythonPath "['/home/seuusuario/projetos/'] + sys.path"
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE meuprojeto.settings
PythonDebug On
</Location>
</VirtualHost>


Onde informamos através do PythonPath o diretório onde ficam os seus projetos como no exemplo foi: '/home/seuusuario/projetos/'. E criamos a variável de ambiente DJANGO_SETTINGS_MODULE cujo valor é o local onde fica o settings.py onde "meuprojeto" é o nome do projeto.

Podemos ao invés de editar o http.conf editar o arquivo: /etc/apache2/sites-avaliable/default.

5 - Reiniciando o Apache
Após configurar o Apache é só reiniciar ele. Para reiniciar ele digite o comando abaixo:
#/etc/init.d/apache2 reload

Para testar é só acessar no seu navegador o endereço configurado!

Só para lembrar, o Django + Apache + Mod_python é uma ótima opção para deploy, ou seja, para rodar sua aplicação já finalizada. Para ser servidor de desenvolvimento não é recomendado a utilização do Apache e sim do próprio servidor de testes do Django.


Messing around with windows

Sep 24 2007 [Archived Version] □ Published at orestis.gr

I wanted to create a custom window, but NSBorderlessWindow is ugly, because you have to implement most of the functionality yourself. Taking a page from Uli, I extended that functionality a little bit.

I present you with my hacky box:

A super hacked Cocoa window

UPDATE:

Anyone who has tried to use the code below, would get this result: A not-so-nice hacked Cocoa window

A method went missing. I've added it to the code below.

Notable things:

  1. This is just a textured window. All usual functionality (resizing, exposé, shortcuts) is there.
  2. Notice the location of the close/miniaturize/zoom buttons. They are moved to the right.
  3. The resize handle is also moved to a better location.
  4. The window title (aptly named, "Window") is the usual one, set in IB.
  5. No borders are drawn.
  6. When resized, the image scales with the window.
  7. I can't draw :)

To do this, download the above mentioned class, and add the following methods:

- (struct _NSPoint)_closeButtonOrigin
{
    NSPoint point =  [super _closeButtonOrigin];
    point.x += 35.0;
    point.y -= 5.0;
    return point;
}
- (struct _NSRect)_titlebarTitleRect
{
    NSRect res = [super _titlebarTitleRect];
    res.origin.y-=6.0;
    return res;
}
- (struct _NSRect)_maxXminYResizeRect
{
    NSRect res = [super _maxXminYResizeRect];
    res.origin.x-=13;
    return res;
}
// to make the borders disappear
+ (void)drawBevel:(struct _NSRect)fp8
          inFrame:(struct _NSRect)fp24
 topCornerRounded:(char)fp40
bottomCornerRounded:(char)fp44
{
    return;
}

Can't help with the drawing skills, sorry. You have to be born with them.

Of course, all this is undocumented and will probably break tomorrow... But still, it's fun and a much better way than reimplementing everything in a borderless window!

Comments


Como aprender Django

Sep 23 2007 [Archived Version] □ Published at PyMan under tags  django

Na minha ida à PyCon Brasil [1], e as ajudas que dou a iniciantes em Django, percebi que muitas pessoas tem interesse em aprender Django, mas não sabem por onde começar. Para suprir esse problema resolvi criar este post mostrando um caminho de como aprender Django. Com certeza deve haver outros caminhos, mas resolvi escrever sobre o a maneira que no meu ponto de vista é ideal.

Antes de aprender Django é necessário que você tenha pelo menos um conhecimento básico sobre Python. O Gabriel Falcão escreveu em seu blog um ótimo post mostrando como aprender Python [2].

A primeira coisa que alguém que quer iniciar no Django deve fazer (após instalar o Django, é lógico!) é ler e praticar o tutorial oficial [3] do Django, que é dividido em 4 partes. O tutorial oficial abrange o básico sobre o framework, e após finalizar ele, você estará apto a criar pequenas aplicações com o Django. Mas lembre-se, é importante que siga o tutorial até o final! Se você seguir até a parte 2 ou 3 do tutorial, conseguirá fazer algumas coisas em Django, e por isso muitos não terminam o tutorial.

Após terminar o tutorial, o importante é praticar e ir estudando a documentação [4] de acordo com suas necessidades e interesses. A documentação do Django é toda dividida por setores do framework o que facilita muito a consulta. Por exemplo, você queira criar uma interface administrativa usando o newforms ao invés de usar o admin do Django. É só você acessar a parte da documentação responsável pelo newforms [5] que irá se interar sobre o assunto.

Se você quiser aprender mais sobre o Django de uma vez, ao invés de ir aprendendo "sobre demanda", você poder ler o Django Book [6], que é um livro online sobre o Django. O Django Book ainda está em desenvolvimento, mas seu conteúdo é muito bom e interessante.

Se quiser tirar dúvidas, ou esclarecer algo sobre o Django, você pode se cadastrar na lista de discussão [7] dos desenvolvedores de Django do Brasil.

Para ver exemplo de código, e para tentar não "refazer a roda" existe o site Django Snippets [8] que é um cookbook para Django.

E para ficar atento as novidades, curiosidades e informações, vale ver os planetas [9] [10] com os blogs relacionados ao Django.

[1] - http://pyman.blogspot.com/2007/09/pyconbrasil.html
[2] - http://nacaolivre.org/2007/09/12/pra-quem-quer-comecar-a-aprender-python/
[3] - http://www.djangoproject.com/documentation/tutorial01/
[4] - http://www.djangoproject.com/documentation/
[5] - http://www.djangoproject.com/documentation/newforms/
[6] - http://www.djangobook.com/
[7] - http://www.djangobrasil.org
[8] - http://www.djangosnippets.org/
[9] - http://planeta.djangobrasil.org/
[10] - http://www.djangoproject.com/community/


Django Sprint - status

Sep 16 2007 [Archived Version] □ Published at PyMan under tags  django python

Nesse final de semana (dia 14, 15 e 16 de Setembro) teve o Django Sprint e o Django Sprint Brasil [1].

No meu ponto de vista, tanto o Sprint mundial e o Sprint nacional foram um sucesso!

No Sprint mundial muitos tickets foram filtrados, vários erros resolvidos, novos itens criados e algumas coisas que não eram documentadas no Django agora tem documentação. Como os shortcuts [2], form preview [3]. Para conferir algumas coisas que foram feitas é só verificas os tickets com a palavra chave: sprintsept14 [4].

Eu tive uma humilde participação, sugerindo e criando um DataTimeInput, mas o aprendizado foi grande! Me interei mais no processo de colaboração do Django, como triagem de tickets, por exemplo.

Já no Sprint nacional, um dos grandes resultados é o site do DjangoBrasil que em breve deve estar no ar. Várias issues relacionadas ao desenvolvimento do site foram solucionadas [5]. Também foi criada a página sobre Django no Wikipédia, melhorada a página sobre Django no PythonBrasil, e algumas traduções foram feitas.

Todos que participaram estão de parabéns!!!!

Quem não pode colaborar não fique triste pois o trabalho não para por aqui! O Sprint foi apenas uma maneira de motivar os djangers a se unirem e a melhorarem o Django, mas a colaboração pode ser feita quando você quiser.

[1] - http://pyman.blogspot.com/2007/09/django-sprint.html
[2] - http://www.djangoproject.com/documentation/shortcuts/
[3] - http://www.djangoproject.com/documentation/form_preview/
[4] - http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&group=stage&keywords=%7Esprintsept14&order=priority
[5] - http://code.google.com/p/djangobrasil/issues/list?can=1&q=&sort=status&colspec=ID%20Type%20Status%20Priority%20Milestone%20Owner%20Summary%20Stars%20Opened


django-planet aggregates posts from Django-related blogs. It is not affiliated with or endorsed by the Django Project.

Social Sharing

Feeds

Tag cloud

admin administration adsense advanced ajax amazon angular angularjs apache api app appengine app engine apple application security aprendiendo python architecture argentina articles asides audrey aurelia australia authentication automation backup bash basics best practices big data binary bitbucket blog blog action day blogging book books buildout business c++ cache capoeira celery celerycam celerycrawler challenges chat cheatsheet cherokee choices christianity class-based-views cliff clojure cloud cms code codeship codeship news coding command community computer computers computing configuration consumernotebook consumer-notebook continuous deployment continuous integration cookiecutter couchdb coverage css custom d data database databases db debian debugging deploy deployment deployment academy design developers development devops digitalocean django django1.7 django admin django cms djangocon django framework django-nose django-readonly-site django-rest-framework django-tagging django templates django-twisted-chat django web framework tutorials documentation dojango dojo dotcloud dreamhost dughh easy_install eclipse education elasticsearch email encoding english error europe eventbrite events expressjs extensions fabric facebook family fashiolista fedora field file filter fix flash flask foreman form forms frameworks friends fun functional reactive programming gae gallery games geek general gentoo gis git github gmail gnome goals google google app engine guides gunicorn hack hackathon hacking hamburg haskell heroku holidays hosting howto how-to howtos how-tos html http i18n igalia image imaging indifex install installation intermediate internet ios iphone java javascript jinja2 jobs journalism jquery json justmigrated kde la latex linear regression linkedin linode linux login mac machine learning mac os x markdown math memcached meme mercurial meta meteor migration mirror misc model models mod_wsgi mongodb months mozilla multi-language mvc mysql nasa nelenschuurmans newforms news nginx nodejs nosql oauth ogólne openshift opensource open source open-source openstack operations orm osx os x ottawa paas packages packaging patterns pedantics pelican penetration test performance personal personal and misc philippines philosophy php pi pil pinax pip piston planet plone plugin pony postgis postgres postgresql ppoftw presentation private programmieren programming programming &amp; internet project projects pycharm pycon pycon-2013-guide pydiversity pygrunn pyladies pypi pypy pyramid python python3 queryset quick tips quora rabbitmq rails rant ratnadeep debnath reactjs recipe redis refactor release request resolutions rest reusable app review rhel rtnpro ruby ruby on rails scala scaling science screencast script scripting security server setup shell simple smiley snaking software software collections software development south sphinx sprint sql ssh ssl static storage supervisor support svn sysadmin tag tag cloud talk nerdy to me tastypie tdd techblog technical technology template templates template tags test testing tests tip tips tools tornado training transifex travel travel tips for geeks tumbles tutorial tutorials twisted twitter twoscoops typo3 ubuntu uncategorized unicode unittest unix use user authentication usergroup uwsgi uxebu vagrant validation virtualenv virtualenvwrapper web web 2.0 web application web applications web design &amp; development webdev web development webfaction web framework websockets whoosh windows wordpress work workshop wsgi yada year-end-review znc zope