Skip to content

Instantly share code, notes, and snippets.

Avatar
🎧
A different error message! Finally some progress!

Pradip Caulagi caulagi

🎧
A different error message! Finally some progress!
View GitHub Profile
View tetris
# -*- coding: utf-8 -*-
"""
a simple 'text-mode' version of the Tetris game
>>> Board(width=12, height=12).start_game()
"""
import random
import re
@caulagi
caulagi / picit.py
Created Sep 29, 2015
A module to download (image) URLs using concurrent.futures
View picit.py
# -*- coding: utf-8 -*-
"""
picit is a module to download URLs contained in an input file
to a local directory.
>>> import picit
>>> downloader = Downloader("/home/pcaulagi/src/picit/input.dat",
output_dir="/home/pcaulagi/Downloads")
>>> downloader.download()
@caulagi
caulagi / grasshopper.go
Created Apr 9, 2016
A static file server in Go
View grasshopper.go
// A simple HTTP static file server.
//
// Usage:
// go run --root ~/Pictures --port 8001
//
package main
import (
"errors"
View gist:7bac22fca171a64741375bc22ae47608
With **mysql 5.7.12**
```
mysql> UPDATE product_product INNER JOIN (SELECT product_id, AVG(star) AS avg_star, COUNT(id) AS number FROM rating_productrating GROUP BY product_id) as rating set rating_avg = rating.avg_star, rating_num = rating.number;
Query OK, 150 rows affected, 2 warnings (0.02 sec)
Rows matched: 150 Changed: 150 Warnings: 2
mysql> show warnings;
+-------+------+------------------------------------------------+
| Level | Code | Message |
View keybase.md

Keybase proof

I hereby claim:

  • I am caulagi on github.
  • I am caulagi (https://keybase.io/caulagi) on keybase.
  • I have a public key whose fingerprint is F493 BB89 5B64 4792 762E 3A20 BFBE 88C9 AD37 C86E

To claim this, I am signing this object:

@caulagi
caulagi / 01-hello-world
Last active Dec 20, 2016
hello-world rust
View 01-hello-world
$ rustup show
Default host: x86_64-apple-darwin
installed toolchains
--------------------
stable-x86_64-apple-darwin
beta-x86_64-apple-darwin
nightly-x86_64-apple-darwin (default)
@caulagi
caulagi / 01-hello-world-python-rust
Last active Dec 20, 2016
Python <> Rust hello wold extension
View 01-hello-world-python-rust
$ cargo new double
$ cd double
$ virtualenv .env
$ . ./.env/bin/activate
$ pip install cffi
$ cargo build
$ python double.py
@caulagi
caulagi / 01-counter
Last active Dec 20, 2016
A simple counter in Rust and Python integration
View 01-counter
$ cargo new words
$ cargo build --release
$ python benchmark.py
View reasonml
pradipcaulagi@Pradips-MacBook-Pro|/tmp/bucklescript-frontend-template on master!?
± npm run build:dev
> tutorial@0.0.0 build:dev /private/tmp/bucklescript-frontend-template
> bsb -make-world && webpack --env=dev
ninja: no work to do.
ninja: Entering directory `lib/bs'
[1/2] Building src/components/app.cmj
FAILED: src/components/app.cmj /private/tmp/bucklescript-frontend-template/lib/es6/src/components/app.js src/components/app.cmi
@caulagi
caulagi / py-snippets.md
Last active Feb 6, 2018
Illustrative python snippets
View py-snippets.md

A list of python snippets I find interesting

  • The Python standard library has an implementation of Counter that is typically used to find the most common items in a a collection, with their count. I find the implement of collections.Counter instructive in general. I especially like the implementation of most_commonlink. I find it interesting how most_common determines which method to use for efficiency reasons (based on n).

  • In heapq module (standard library), implemention of nsmallestlink. In general, the heapq module has awesome comments. This is true for nsmallest method also. Also, I like how this method is lazy (stores only k items irrespective of input) and generic (the optional key).