Skip to content

Instantly share code, notes, and snippets.

Avatar
🍉
mostly harmless

Rachel Greenfield catermelon

🍉
mostly harmless
View GitHub Profile
View ngram_score_annotated.py
'''
Allows scoring of text using n-gram probabilities
17/07/12
'''
from math import log10
# make a class called ngram_score
# which is wrong, Python classes are always CamelCased so it should be NGramScore but whatever
class ngram_score(object):
View ngram_score_1.py
'''
Allows scoring of text using n-gram probabilities
17/07/12
'''
from math import log10
class ngram_score(object):
def __init__(self,ngramfile,sep=' '):
''' load a file containing ngrams and counts, calculate log probabilities '''
self.ngrams = {}
@catermelon
catermelon / sample.py
Created Jan 20, 2015
PyExchange Stackoverflow answer
View sample.py
from pyexchange import Exchange2010Service, ExchangeNTLMAuthConnection
from datetime import datetime
import time
from pytz import timezone, utc
def getEvents():
URL = u'https://blah.blah/EWS/exchange.asmx'
USERNAME = u'DOMAIN\\user'
PASSWORD = u"password"
@catermelon
catermelon / exchange_test.py
Last active Jan 28, 2016
Script to easily test XML requests against an exchange server
View exchange_test.py
#!/usr/bin/env python
import os
import logging
import requests
from requests_ntlm import HttpNtlmAuth
import getpass
import xml.dom.minidom
logging.basicConfig(level=logging.DEBUG)
View gist:f3b1d2e9e4d094d118fa

Weather

So the SF pasttime isn't baseball or anything like that, it's laughing at tourists who wear shorts. All the visions of warm, beachy California are lies spread by the Los Angeles tv industry. SF can be cold and windy even in summer (actually especially in summer, the land warms up and causes the fog to roll in) and the fog is beautiful but it's FRICKIN COLD. I always bring a jacket to SF no matter what time of year it is. It can be 30 deg C maybe 20 miles away and 10 degrees C in SF. No joke.

Food

SF has awesome food, with a lot of Asian and Mexican influence. Here's a great list from all price ranges: http://www.sfgate.com/food/top100/2014/

Pay particular attention to Mexican/Central and South American food, since I know the UK has great Asian food but not Mexican. The burrito is a Californian staple. Try the al pastor and the carnitas.

@catermelon
catermelon / example_response.xml
Created Aug 22, 2014
Search for calendar events in exchange
View example_response.xml
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" MajorVersion="14" MinorVersion="3" MajorBuildNumber="195" MinorBuildNumber="1"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<m:FindItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
<m:FindItemResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:RootFolder TotalItemsInView="20" IncludesLastItemInRange="true">
View wall_of_code.py
from flask import current_app
class FeatureFlags(object):
def __init__(self, app=None):
if app is not None:
self.init_app(app)
def init_app(self, app):
@catermelon
catermelon / gist:7494177
Created Nov 16, 2013
You have a string with many consecutive letters: "aabbaadddc". Write a function that compresses the string by counting the consecutive letters. (If there is only one letter, it should resolve to itself). "aaaaabbaadddc" -> "a5b2a2d3c"
View gist:7494177
#"aabbbcccdde" => "a2b3c3d2e1"
def encode_string(unencoded):
if unencoded is None or unencoded == "":
return None
last_letter = None
count = 0
View zombie.py
class Rachel_ChanceItIfUsing(object):
def __init__(self, name):
self.name = name
self.minShotguns = 2
def turn(self, gameState):
green_dice_left = 6
red_dice_left = 3
View fizzbuzz.py
# Write a program that prints the numbers from 1 to 100. But for multiples of three print "Fizz"
# instead of the number and for the multiples of five print "Buzz". For numbers which are
# multiples of both three and five print "FizzBuzz".
# This is a moldly oldie in the programmer community, it's known as "FizzBuzz" (for obvious
# reasons). Here's a blog post:
# http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html
# This solution runs through every number between 1 and 100, checks if they are evenly