Painless invoicing for small businesses
About me• Matti Kotsalainen  matti@kotsalainen.org• My dayjob is Creuna, where I work on large  CMS projekts• Previously S...
Thanks Emil @ kundo.se!
DEMO
Technologies• Django 1.3 with default template engine• Mysql• MongoDB - Events, Loggar, Stats• Memcached• RabbitMQ + Celer...
Deployment• Deploy via git / fabric over ssh• Today a single 512 MB VPS @ Linode.com• Virtuanlenv + requirements.txt• Sent...
Output• Posten eBREV• Postmark• Dropbox
Async workers• All contacts with external systems go    through async workers.• RabbitMQ + Celeryon queue, email)  log_inf...
Backend• Invoices are made with Reportlab PDFLib• django-reversion for everything displayed  on invoices• johnny-cache cac...
Frontend• Compass.  CSS on steroids.• I used blueprint grid but it got on my  nerves.• Coffeescript.  Javascript with bett...
How I work• Vim on Mac Air = super fast• IPython• Python CLI debugger• Git
THANKS!
Upcoming SlideShare
Loading in …5
×

Hejfaktura

421 views

Published on

My presentation about Hejfaktura from PySthlm Meetup @ Valtech

Published in: Technology, Self Improvement
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
421
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Hejfaktura

    1. 1. Painless invoicing for small businesses
    2. 2. About me• Matti Kotsalainen matti@kotsalainen.org• My dayjob is Creuna, where I work on large CMS projekts• Previously Spray, Razofish, NetEnt, Grin, Soundcloud
    3. 3. Thanks Emil @ kundo.se!
    4. 4. DEMO
    5. 5. Technologies• Django 1.3 with default template engine• Mysql• MongoDB - Events, Loggar, Stats• Memcached• RabbitMQ + Celery• Gunicorn• Nginx
    6. 6. Deployment• Deploy via git / fabric over ssh• Today a single 512 MB VPS @ Linode.com• Virtuanlenv + requirements.txt• Sentry for exception handling• My own logsystem built in Mongo
    7. 7. Output• Posten eBREV• Postmark• Dropbox
    8. 8. Async workers• All contacts with external systems go through async workers.• RabbitMQ + Celeryon queue, email) log_info(Putting email tasks.send_email.delay(email.id)• Celery is also for cronjobs
    9. 9. Backend• Invoices are made with Reportlab PDFLib• django-reversion for everything displayed on invoices• johnny-cache caches ORM. I need to patch it / move to something else
    10. 10. Frontend• Compass. CSS on steroids.• I used blueprint grid but it got on my nerves.• Coffeescript. Javascript with better syntax• jQuery, jQuery UI, underscore.js, ICanHaz.js
    11. 11. How I work• Vim on Mac Air = super fast• IPython• Python CLI debugger• Git
    12. 12. THANKS!

    ×