Skip to content

Instantly share code, notes, and snippets.

View petri's full-sized avatar

Petri Savolainen petri

View GitHub Profile
@petri
petri / python_resources.md
Last active August 29, 2015 14:12 — forked from jookyboi/python_resources.md
Python-related modules and guides.

Packages

  • lxml - Pythonic binding for the C libraries libxml2 and libxslt.
  • boto - Python interface to Amazon Web Services
  • Django - Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
  • Fabric - Library and command-line tool for streamlining the use of SSH for application deployment or systems administration task.
  • PyMongo - Tools for working with MongoDB, and is the recommended way to work with MongoDB from Python.
  • Celery - Task queue to distribute work across threads or machines.
  • pytz - pytz brings the Olson tz database into Python. This library allows accurate and cross platform timezone calculations using Python 2.4 or higher.

Guides

@petri
petri / css_resources.md
Last active August 29, 2015 14:12 — forked from jookyboi/css_resources.md
CSS libraries and guides to bring some order to the chaos.

Libraries

  • 960 Grid System - An effort to streamline web development workflow by providing commonly used dimensions, based on a width of 960 pixels. There are two variants: 12 and 16 columns, which can be used separately or in tandem.
  • Compass - Open source CSS Authoring Framework.
  • Bootstrap - Sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.
  • Font Awesome - The iconic font designed for Bootstrap.
  • Zurb Foundation - Framework for writing responsive web sites.
  • SASS - CSS extension language which allows variables, mixins and rules nesting.
  • Skeleton - Boilerplate for responsive, mobile-friendly development.

Guides

@petri
petri / javascript_resources.md
Last active August 29, 2015 14:12 — forked from jookyboi/javascript_resources.md
Here are a set of libraries, plugins and guides which may be useful to your Javascript coding.

Libraries

  • jQuery - The de-facto library for the modern age. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers.
  • Backbone - Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
  • AngularJS - Conventions based MVC framework for HTML5 apps.
  • Underscore - Underscore is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects.
  • lawnchair - Key/value store adapter for indexdb, localStorage
@petri
petri / registry.xml
Created September 2, 2015 09:34
Define a Choice field for Plone portal registry, with a vocabulary to choose from and a default value
<registry>
<record name="some.record.identifier">
<field type="plone.registry.field.Choice">
<title>TheTitle</title>
<description>TheDescription</description>
<value_type type="plone.registry.field.TextLine" />
<values purge="true">
<element>choice 1</element>
<element>choice 2</element>
@petri
petri / gist:a4a811e08aa4753ba280
Created October 6, 2015 06:14
Example ZCML registration of Zope 3-based exception views for various exceptions raised by Zope
<browser:page
for="zope.publisher.interfaces.INotFound"
class=".view.SomeView"
name="index.html"
permission="zope.Public" />
@petri
petri / gist:7300330
Last active December 27, 2015 08:59
XSLT stylesheet for displaying OFX statements. Use with xsltproc, for example "xsltproc transform.xslt statements.ofx > statements.html".
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- convert dates to yyyy/mm/dd -->
<xsl:template match="DTPOSTED">
<xsl:variable name="yr" select="substring(current(),1,4)"/>
<xsl:variable name="mo" select="substring(current(),5,2)"/>
<xsl:variable name="dt" select="substring(current(),7,2)"/>
@petri
petri / gist:a2e37a432ffacffd7324750e6e128c44
Created November 28, 2016 14:22 — forked from mtigas/gist:952344
Mini tutorial for configuring client-side SSL certificates.

Client-side SSL

For excessively paranoid client authentication.

Using self-signed certificate.

Create a Certificate Authority root (which represents this server)

Organization & Common Name: Some human identifier for this server CA.

openssl genrsa -des3 -out ca.key 4096
openssl req -new -x509 -days 365 -key ca.key -out ca.crt
@petri
petri / openssl-create-CA.sh
Created December 9, 2016 11:01 — forked from xynova/openssl-create-CA.sh
Create Root CA certs with openssl
# Create the Root CA private key
## ref> https://www.openssl.org/docs/manmaster/apps/genrsa.html
openssl genrsa -out myRootCA.key 4096
# Generate the Root CA certificate signed with the private key
## ref> https://www.openssl.org/docs/manmaster/apps/req.html
openssl req -x509 -new -nodes -key myRootCA.key -days 3650 -out myRootCA.pem
# Country Name (2 letter code) [AU]:AU
# State or Province Name (full name) [Some-State]:NSW
@petri
petri / loader.py
Created January 5, 2017 13:30 — forked from joshbode/LICENSE.md
YAML Loader with include constructor (Python 3)
import yaml
import os.path
class LoaderMeta(type):
def __new__(metacls, __name__, __bases__, __dict__):
"""Add include constructer to class."""
# register the include constructor on the class
cls = super().__new__(metacls, __name__, __bases__, __dict__)
@petri
petri / mysql_backup.sh
Created October 26, 2017 08:52
mysql backup bash script
# list of databases to back up (all of them except information_schema, see below)
declare -a databases=("mydatabase" "mysql" "performance_schema")
# current day of week as a number from 1 to 7 starting monday
# for week of year use %V (for ISO weeks from 1 to 53)
day_num=$(date +%u)
echo backing up for day "$day_num"
# where the backups are written
cd /var/backups/mysql/daily