Skip to content

Instantly share code, notes, and snippets.

@marchelbling
marchelbling / README.md
Last active April 1, 2022 06:35
C++ json writer

why?

This code implements a naive JSON writer in C++ complying with RFC 4627. I wrote this as I believe it is a very good example of a real life problem involving lots of C++ constructs. This sample only supports writing JSON and does not support heterogenous ‘object’ serialization and extension are left as an exercice. See Writing json in C++ for some details.

what?

  • json_stream: a std::ofstream wrapper fulfilling RFC 4627 constraints;
  • utf8_json: some code to decode/“json encode” std::string UTF-8 buffers
  • json_test.cpp: a very simple program testing the code
@marchelbling
marchelbling / essentials.md
Last active August 29, 2015 14:16
CS essentials

Data structures

list

heap

stack

queue

@marchelbling
marchelbling / named_pipes.md
Created March 12, 2015 06:50
Introduction to Named Pipes

From http://www.linuxjournal.com/article/2156

A very useful Linux feature is named pipes which enable different processes to communicate.

Introduction to named pipes

One of the fundamental features that makes Linux and other Unices useful is the “pipe”. Pipes allow separate processes to communicate without having been designed explicitly to work together. This allows tools quite narrow in their function to be combined in complex ways.

A simple example of using a pipe is the command:

@marchelbling
marchelbling / docker.md
Created June 9, 2015 05:44
Docker jumpstart

Introduction

Docker is a tool for packaging and shipping apps. Based on the idea of a shipping container, it provides a standardized way for developers or system administrators to create lightweight images, or collections of images, for each element of an application, and then easily and quickly deploy the image. Since the image is standardized, it can be uniformly deployed on development or production, leading to a much simpler workflow, faster development time for the dev team, and lower management overhead for the ops team.

First, a quick overview of a few things Docker is:

  • An open source tool that places a layer on top of Linux containers (cgroups and namespaces) to make it simple to package and ship complex apps
  • A tool for creating a layered filesystem; each layer is versioned and can be shared across running instances, making for much more lightweight deployments
  • A company behind the project, as well as a site called the "Docker Hub" for sharing containers
@marchelbling
marchelbling / selection.md
Created August 7, 2015 04:03
Siggraph 2015
@marchelbling
marchelbling / 3d.md
Last active February 24, 2016 09:45
3d companies
@marchelbling
marchelbling / XPS-15 9560 Getting Nvidia To Work on KDE Neon
Last active June 6, 2017 05:12 — forked from whizzzkid/XPS-15 9560 Getting Nvidia To Work on KDE Neon
Making Nvidia Drivers + CUDA 8 + Bumblebee work together on XPS 15 Early 2017 9560 kabylake.
1. disable secure boot
2. clean install windows (see https://www.reddit.com/r/Dell/comments/5qe3oh/how_to_fresh_install_on_xps_15_9560/)
2.1 in case usb does not show on boot: http://www.dell.com/support/article/us/en/19/SLN297060/xps-13-9343--how-to-install-ubuntu-developer-edition-1404-on-a-dell-pc-configured-for-the-unified-extensible-firmware-interface--uefi--bios?lang=EN
# Update kernel (is this mandatory?)
( mkdir /tmp/kernel-4.10.6
cd /tmp/kernel-4.10.6
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.6/linux-headers-4.10.6-041006_4.10.6-041006.201703260832_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.6/linux-headers-4.10.6-041006-generic_4.10.6-041006.201703260832_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.6/linux-image-4.10.6-041006-generic_4.10.6-041006.201703260832_amd64.deb
@marchelbling
marchelbling / delve.sh
Created January 22, 2018 17:27
install delve
#!/bin/bash
echo """[ req ]
default_bits = 2048 # RSA key size
encrypt_key = no # Protect private key
default_md = sha512 # MD to use
prompt = no # Prompt for DN
distinguished_name = codesign_dn # DN template
[ codesign_dn ]
commonName = "dlv-cert"
@marchelbling
marchelbling / gist:c8ef8a2dadbacf3587b292ad9dc1c408
Created January 23, 2018 11:08 — forked from lxneng/gist:741932
install PostgreSQL 9 in Mac OSX via Homebrew
install PostgreSQL 9 in Mac OSX via Homebrew
Mac OS X Snow Leopard
System Version: Mac OS X 10.6.5
Kernel Version: Darwin 10.5.0
Install notes for PostgreSQL 9.0.1 install using Homebrew:
sh-3.2# brew install postgresql