diff --git a/helios/election_urls.py b/helios/election_urls.py
index 6622c5568a2564d986fdf916b401de7651281796..f7ed192a133c17edd76bfb1e3e6a560d8d2c0f5a 100644
--- a/helios/election_urls.py
+++ b/helios/election_urls.py
@@ -4,91 +4,91 @@ Helios URLs for Election related stuff
 Ben Adida (ben@adida.net)
 """
 
-from django.conf.urls import *
+from django.conf.urls import url
 
 from helios.views import *
 
-urlpatterns = patterns('',
+urlpatterns = [
     # election data that is cryptographically verified
-    (r'^$', one_election),
+    url(r'^$', one_election),
 
     # metadata that need not be verified
-    (r'^/meta$', one_election_meta),
+    url(r'^/meta$', one_election_meta),
     
     # edit election params
-    (r'^/edit$', one_election_edit),
-    (r'^/schedule$', one_election_schedule),
-    (r'^/extend$', one_election_extend),
-    (r'^/archive$', one_election_archive),
-    (r'^/copy$', one_election_copy),
+    url(r'^/edit$', one_election_edit),
+    url(r'^/schedule$', one_election_schedule),
+    url(r'^/extend$', one_election_extend),
+    url(r'^/archive$', one_election_archive),
+    url(r'^/copy$', one_election_copy),
 
     # badge
-    (r'^/badge$', election_badge),
+    url(r'^/badge$', election_badge),
 
     # adding trustees
-    (r'^/trustees/$', list_trustees),
-    (r'^/trustees/view$', list_trustees_view),
-    (r'^/trustees/new$', new_trustee),
-    (r'^/trustees/add-helios$', new_trustee_helios),
-    (r'^/trustees/delete$', delete_trustee),
+    url(r'^/trustees/$', list_trustees),
+    url(r'^/trustees/view$', list_trustees_view),
+    url(r'^/trustees/new$', new_trustee),
+    url(r'^/trustees/add-helios$', new_trustee_helios),
+    url(r'^/trustees/delete$', delete_trustee),
     
     # trustee pages
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/home$', trustee_home),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/sendurl$', trustee_send_url),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/keygenerator$', trustee_keygenerator),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/check-sk$', trustee_check_sk),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/upoad-pk$', trustee_upload_pk),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/decrypt-and-prove$', trustee_decrypt_and_prove),
-    (r'^/trustees/(?P<trustee_uuid>[^/]+)/upload-decryption$', trustee_upload_decryption),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/home$', trustee_home),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/sendurl$', trustee_send_url),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/keygenerator$', trustee_keygenerator),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/check-sk$', trustee_check_sk),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/upoad-pk$', trustee_upload_pk),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/decrypt-and-prove$', trustee_decrypt_and_prove),
+    url(r'^/trustees/(?P<trustee_uuid>[^/]+)/upload-decryption$', trustee_upload_decryption),
     
     # election voting-process actions
-    (r'^/view$', one_election_view),
-    (r'^/result$', one_election_result),
-    (r'^/result_proof$', one_election_result_proof),
-    # (r'^/bboard$', one_election_bboard),
-    (r'^/audited-ballots/$', one_election_audited_ballots),
+    url(r'^/view$', one_election_view),
+    url(r'^/result$', one_election_result),
+    url(r'^/result_proof$', one_election_result_proof),
+    # url(r'^/bboard$', one_election_bboard),
+    url(r'^/audited-ballots/$', one_election_audited_ballots),
 
     # get randomness
-    (r'^/get-randomness$', get_randomness),
+    url(r'^/get-randomness$', get_randomness),
 
     # server-side encryption
-    (r'^/encrypt-ballot$', encrypt_ballot),
+    url(r'^/encrypt-ballot$', encrypt_ballot),
 
     # construct election
-    (r'^/questions$', one_election_questions),
-    (r'^/set_reg$', one_election_set_reg),
-    (r'^/set_featured$', one_election_set_featured),
-    (r'^/save_questions$', one_election_save_questions),
-    (r'^/register$', one_election_register),
-    (r'^/freeze$', one_election_freeze), # includes freeze_2 as POST target
+    url(r'^/questions$', one_election_questions),
+    url(r'^/set_reg$', one_election_set_reg),
+    url(r'^/set_featured$', one_election_set_featured),
+    url(r'^/save_questions$', one_election_save_questions),
+    url(r'^/register$', one_election_register),
+    url(r'^/freeze$', one_election_freeze), # includes freeze_2 as POST target
     
     # computing tally
-    (r'^/compute_tally$', one_election_compute_tally),
-    (r'^/combine_decryptions$', combine_decryptions),
-    (r'^/release_result$', release_result),
+    url(r'^/compute_tally$', one_election_compute_tally),
+    url(r'^/combine_decryptions$', combine_decryptions),
+    url(r'^/release_result$', release_result),
     
     # casting a ballot before we know who the voter is
-    (r'^/cast$', one_election_cast),
-    (r'^/cast_confirm$', one_election_cast_confirm),
-    (r'^/password_voter_login$', password_voter_login),
-    (r'^/cast_done$', one_election_cast_done),
+    url(r'^/cast$', one_election_cast),
+    url(r'^/cast_confirm$', one_election_cast_confirm),
+    url(r'^/password_voter_login$', password_voter_login),
+    url(r'^/cast_done$', one_election_cast_done),
     
     # post audited ballot
-    (r'^/post-audited-ballot', post_audited_ballot),
+    url(r'^/post-audited-ballot', post_audited_ballot),
     
     # managing voters
-    (r'^/voters/$', voter_list),
-    (r'^/voters/upload$', voters_upload),
-    (r'^/voters/upload-cancel$', voters_upload_cancel),
-    (r'^/voters/list$', voters_list_pretty),
-    (r'^/voters/eligibility$', voters_eligibility),
-    (r'^/voters/email$', voters_email),
-    (r'^/voters/(?P<voter_uuid>[^/]+)$', one_voter),
-    (r'^/voters/(?P<voter_uuid>[^/]+)/delete$', voter_delete),
+    url(r'^/voters/$', voter_list),
+    url(r'^/voters/upload$', voters_upload),
+    url(r'^/voters/upload-cancel$', voters_upload_cancel),
+    url(r'^/voters/list$', voters_list_pretty),
+    url(r'^/voters/eligibility$', voters_eligibility),
+    url(r'^/voters/email$', voters_email),
+    url(r'^/voters/(?P<voter_uuid>[^/]+)$', one_voter),
+    url(r'^/voters/(?P<voter_uuid>[^/]+)/delete$', voter_delete),
     
     # ballots
-    (r'^/ballots/$', ballot_list),
-    (r'^/ballots/(?P<voter_uuid>[^/]+)/all$', voter_votes),
-    (r'^/ballots/(?P<voter_uuid>[^/]+)/last$', voter_last_vote),
+    url(r'^/ballots/$', ballot_list),
+    url(r'^/ballots/(?P<voter_uuid>[^/]+)/all$', voter_votes),
+    url(r'^/ballots/(?P<voter_uuid>[^/]+)/last$', voter_last_vote),
 
-)
+]
diff --git a/helios/stats_urls.py b/helios/stats_urls.py
index 2d26d1961aabae3a75bef2e16117d9dd3eea7566..9472b7a65ddce87cffa56ce617b49b4037e36af9 100644
--- a/helios/stats_urls.py
+++ b/helios/stats_urls.py
@@ -4,15 +4,14 @@ Helios URLs for Election related stuff
 Ben Adida (ben@adida.net)
 """
 
-from django.conf.urls import *
+from django.conf.urls import url
 
-from helios.stats_views import *
+from helios.stats_views import (home, force_queue, elections, recent_problem_elections, recent_votes)
 
-urlpatterns = patterns(
-    '',
-    (r'^$', home),
-    (r'^force-queue$', force_queue),
-    (r'^elections$', elections),
-    (r'^problem-elections$', recent_problem_elections),
-    (r'^recent-votes$', recent_votes),
-)
+urlpatterns = [
+    url(r'^$', home),
+    url(r'^force-queue$', force_queue),
+    url(r'^elections$', elections),
+    url(r'^problem-elections$', recent_problem_elections),
+    url(r'^recent-votes$', recent_votes),
+]
diff --git a/helios/urls.py b/helios/urls.py
index 8effba1727a9bbd7623471c2c70f00ae43dff62e..91762abbb3cd59e471e0bf34bb4f62abae4330a5 100644
--- a/helios/urls.py
+++ b/helios/urls.py
@@ -1,35 +1,32 @@
 # -*- coding: utf-8 -*-
-from django.conf.urls import patterns, include
+from django.conf.urls import url, include
 
 from views import *
 
-urlpatterns = patterns('',
-  (r'^autologin$', admin_autologin),
-  (r'^testcookie$', test_cookie),
-  (r'^testcookie_2$', test_cookie_2),
-  (r'^nocookies$', nocookies),
-  (r'^stats/', include('helios.stats_urls')),
+urlpatterns = [
+  url(r'^autologin$', admin_autologin),
+  url(r'^testcookie$', test_cookie),
+  url(r'^testcookie_2$', test_cookie_2),
+  url(r'^nocookies$', nocookies),
+  url(r'^stats/', include('helios.stats_urls')),
 
   # election shortcut by shortname
-  (r'^e/(?P<election_short_name>[^/]+)$', election_shortcut),
-  (r'^e/(?P<election_short_name>[^/]+)/vote$', election_vote_shortcut),
+  url(r'^e/(?P<election_short_name>[^/]+)$', election_shortcut),
+  url(r'^e/(?P<election_short_name>[^/]+)/vote$', election_vote_shortcut),
 
   # vote shortcut
-  (r'^v/(?P<vote_tinyhash>[^/]+)$', castvote_shortcut),
+  url(r'^v/(?P<vote_tinyhash>[^/]+)$', castvote_shortcut),
   
   # trustee login
-  (r'^t/(?P<election_short_name>[^/]+)/(?P<trustee_email>[^/]+)/(?P<trustee_secret>[^/]+)$', trustee_login),
+  url(r'^t/(?P<election_short_name>[^/]+)/(?P<trustee_email>[^/]+)/(?P<trustee_secret>[^/]+)$', trustee_login),
   
   # election
-  (r'^elections/params$', election_params),
-  (r'^elections/verifier$', election_verifier),
-  (r'^elections/single_ballot_verifier$', election_single_ballot_verifier),
-  (r'^elections/new$', election_new),
-  (r'^elections/administered$', elections_administered),
-  (r'^elections/voted$', elections_voted),
+  url(r'^elections/params$', election_params),
+  url(r'^elections/verifier$', election_verifier),
+  url(r'^elections/single_ballot_verifier$', election_single_ballot_verifier),
+  url(r'^elections/new$', election_new),
+  url(r'^elections/administered$', elections_administered),
+  url(r'^elections/voted$', elections_voted),
   
-  (r'^elections/(?P<election_uuid>[^/]+)', include('helios.election_urls')),
-  
-)
-
-
+  url(r'^elections/(?P<election_uuid>[^/]+)', include('helios.election_urls')),
+]
diff --git a/helios_auth/auth_systems/facebookclient/djangofb/default_app/urls.py b/helios_auth/auth_systems/facebookclient/djangofb/default_app/urls.py
index 5e793a6ae4a68e8662f45546b6475e5e7eb7a92c..f75d8d258360fc43e12b2343182d89f14a01ef8c 100644
--- a/helios_auth/auth_systems/facebookclient/djangofb/default_app/urls.py
+++ b/helios_auth/auth_systems/facebookclient/djangofb/default_app/urls.py
@@ -1,7 +1,7 @@
-from django.conf.urls import *
+from django.conf.urls import url
 
-urlpatterns = patterns('{{ project }}.{{ app }}.views',
-    (r'^$', 'canvas'),
-    # Define other pages you want to create here
-)
+from views import canvas
 
+urlpatterns = [
+    url(r'^$', canvas),
+]
diff --git a/server_ui/urls.py b/server_ui/urls.py
index 0711bd7c15047d880c8d3d18926aceea00e338b4..e691c07afe7b29c0b347e5bde5ea75e9addd65c7 100644
--- a/server_ui/urls.py
+++ b/server_ui/urls.py
@@ -1,12 +1,12 @@
 # -*- coding: utf-8 -*-
-from django.conf.urls import patterns
+from django.conf.urls import url
 
 from views import home, about, docs, faq, privacy
 
-urlpatterns = patterns('',
-  (r'^$', home),
-  (r'^about$', about),
-  (r'^docs$', docs),
-  (r'^faq$', faq),
-  (r'^privacy$', privacy),
-)
+urlpatterns = [
+  url(r'^$', home),
+  url(r'^about$', about),
+  url(r'^docs$', docs),
+  url(r'^faq$', faq),
+  url(r'^privacy$', privacy),
+]
diff --git a/urls.py b/urls.py
index d4674991451a72c154ae6d91bfdf5a0dd0bee8a1..01e4ccceaab56c60d0a5b04c493273989209b7af 100644
--- a/urls.py
+++ b/urls.py
@@ -1,21 +1,18 @@
 # -*- coding: utf-8 -*-
-from django.conf.urls import *
-from django.contrib import admin
 from django.conf import settings
+from django.conf.urls import url, include
 
-urlpatterns = patterns(
-    '',
-    (r'^auth/', include('helios_auth.urls')),
-    (r'^helios/', include('helios.urls')),
+urlpatterns = [
+    url(r'^auth/', include('helios_auth.urls')),
+    url(r'^helios/', include('helios.urls')),
 
     # SHOULD BE REPLACED BY APACHE STATIC PATH
-    (r'booth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosbooth'}),
-    (r'verifier/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosverifier'}),
+    url(r'booth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosbooth'}),
+    url(r'verifier/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/heliosverifier'}),
 
-    (r'static/auth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios_auth/media'}),
-    (r'static/helios/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios/media'}),
-    (r'static/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/server_ui/media'}),
+    url(r'static/auth/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios_auth/media'}),
+    url(r'static/helios/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/helios/media'}),
+    url(r'static/(?P<path>.*)$', 'django.views.static.serve', {'document_root' : settings.ROOT_PATH + '/server_ui/media'}),
 
-    (r'^', include('server_ui.urls')),
-
-    )
+    url(r'^', include('server_ui.urls')),
+]