12 sept 2013

Game development competition - Low-level Jam



An interesting new miniLD (game development competition in which a single person must program a game in 48 hours) was presented today. Its goal is to develop (or try to develop) a game using C, C++ or assembly language, so you have the opportunity to have fun while understanding how the computer works. In other words, it's an educational game jam that motivates you to learn more about low-level development (that's why it's called Low-level jam, duh).

You can find all the information you need about it at the Ludum Dare site.

5 sept 2013

Ib [game review]



Ib is a free RPG Maker horror video game that caught my attention when I saw it in the first place of a top 10 games list (I was actually looking for reviews about Mad Father, which I heard it's a great game and was in the third place of that list). Ib is short, I finished it in about 4 hours or less, but I found it pleasant, for an RPG Maker game developed by one person, of couse.

2 ago 2013

elegilegi: un juego para elegir legisladores que votan como vos

Aprovecho la cercanía de las elecciones legislativas para difundir esta genial aplicación, elegilegi, sin más explicaciones porque creo que las del sitio web son bastante claras:


Para más información sobre el proyecto pueden escuchar la entrevista que se le hizo a Martin Szyszlican al respecto.

1 ago 2013

The Walking Dead [game review]



Steam summer sales ended and my wallet is happy about it, but they didn't end soon enough to stop my attention from being caught by The Walking Dead, and I bought it though I was expecting yet another zombie shooter game. I got excited when I found out it was a graphic adventure instead, and as a graphic adventures fan I have quite a few things to say about this game.

16 jul 2013

10 may 2013

17 feb 2013

[HOW TO] Paginate a Django formset

Last month I needed to paginate a Django model formset and I couldn't find the way to do it, but I found posts asking the same question without an answer, so here is my solution:

In the forms.py file: 

class MyForm(ModelForm):
    class Meta:
        model = MyModel
        fields = ('description',)
In the views.py file:

FormSet = modelformset_factory(MyModel, form=MyForm, extra=0)
if request.method == 'POST':
    formset = FormSet(request.POST, request.FILES)
    if formset.is_valid():
        formset.save()
    return HttpResponse('Formset submited!')
else:
    query = MyModel.objects.filter(condition)
    paginator = Paginator(query, 10) # Show 10 forms per page
    page = request.GET.get('page')
    try:
        objects = paginator.page(page)
    except PageNotAnInteger:
        objects = paginator.page(1)
    except EmptyPage:
        objects = paginator.page(paginator.num_pages)
    page_query = MyModel.objects.filter(id__in=[object.id for object in objects])
    formset = FormSet(queryset=page_query)
    context = {'objects': objects, 'formset': formset}
    return render_to_response('template.html', context,
                              context_instance=RequestContext(request))

You need to create the formset with the objects in the present page, otherwise, when you try to do formset = FormSet(request.POST, request.FILES) in the POST method, Django raises a MultiValueDictKeyError error.

In the template.html file:

{% extends "base.html" %}
{% block content %}

Paginated formset

{% if objects %}
{% csrf_token %} {{ formset.management_form }} {% for form in formset.forms %} {{ form.id }}

Name: {{ form.instance.name }}

{{ form.as_p }}
{% endfor %}
{% else %}

There are no objects.

{% endif %} {% endblock %}

14 feb 2013

Sprint Django en Córdoba (23 de Febrero)


El fin de semana del 23 al 24 de este mes se realizan en varias ciudades del mundo sprints de Django, como "una excusa para que la gente centre toda su atención, por un tiempo determinado, en mejorar Django."

Cito el mail del evento de la lista de PyAr:

La idea es que nos juntemos y entre todos aprendamos entre otras cosas cómo es el flujo de trabajo para implementar o proponer un feature o bugfix en Django. No hace falta experiencia previa al respecto, solo llevar ganas y tu portátil, no llevar miedos ni vergüenzas. Planeamos armar una charla introductoria cortísima para entrar en calor y nivelar aspectos básicos. ¡Los esperamos!

El evento se va a realizar en las oficinas de Machinalis, Paraguay 70 (ver mapa), el 23 de Febrero, desde las 10 a.m. hasta las 18 p.m.

Se pueden anotar desde la página del evento en Lanyrd.

Para más información sobre los sprints de Django, pueden visitar el sitio del framework.

28 nov 2012

Premios PortalProgramas 2012 al software libre

 

Hace 2 días inició el período de nominaciones de la 4º edición de los premios PortalProgramas, una iniciativa que tiene como objetivo promover, motivar y promocionar el desarrollo de software libre.

Se puede nominar cualquier proyecto de software libre, eligiendo entre las categorías:

  • Mejor software libre para móvil
  • Mejor blog de software libre
  • Software libre más popular
  • Más revolucionario
  • Mayor potencial de crecimiento
  • Esencial para la Web
  • Esencial para la tecnología
  • Esencial para la comunicación
  • Esencial para redes de comunicación
  • Esencial para empresas

El 17 de diciembre finalizan las nominaciones, y se da lugar a los usuarios para que voten. El ganador en la categoría software libre con mayor potencial recibirá una ayuda económica de 300 euros.

Toda la información necesaria se encuentra en la página de los premios.

5 nov 2012

Hackers & Developers Magazine - Número 0


Hoy se publicó la primera entrega de Hackers & Developers Magazine, una revista digital de distribución mensual sobre software libre, hacking y programación en la que participo.

La revista se encuentra bajo licencia Creative Commons, y se puede descargar de forma gratuita desde su web oficial, o también pueden leerla en línea desde Issuu.

El contenido de este mes es:
  • Y ahora ¿qué Framework PHP usaré?
  • Creando una capa de abstracción con PHP y mysqli
  • ¿Por qué Python?
  • Empezando con Google App Engine
  • The Hitchhiker Pythonits's Guide to the Galaxy
  • GNU/Linux & Servers: Tricks & Tips
  • Contribuyendo en el equipo de traducción al español de GNOME
  • ¿La crisis del software?
  • Las cuentas claras y el proceso de desarrollo concreto
  • La Web Semántica y sus Ontología
  • U!