Skip to content

Instantly share code, notes, and snippets.

@jimhansson
jimhansson / FatValue.hpp
Last active March 24, 2019 08:49
FatValue is container for a value that can be of different types. and tries to conserve as much memory as possible. It's 8 bytes big.
/**
* this class replaces a structure that had a member for a int, a member for a double, a member for a string .....
* and a member telling witch of the other members that contain the right value. that structure was 86 bytes on 32 bit platform
* this is 8 bytes always, aslo on 64 bits platform.
*/
/**
* PEMString is a lightweight wrapper for a ref-counted shared string that can be handled like a pointer
* think boost::flyweight<std::string>
* utctime that we are using below is a typedef for a int64 in some cases, a small class in other cases
@jimhansson
jimhansson / btrfs-snap
Last active August 29, 2015 14:17
If I ever loose it again
#!/bin/bash
#
# btrfs-snap - make periodic snapshots of btrfs filesystem
#
# Copyright (C) 2010 Birger Monsen birger@birger.sh
#
# This program is distributed under the GNU General Public License
# http://www.gnu.org/licenses/gpl.txt
#
@jimhansson
jimhansson / tagged_ptr.hpp
Created February 14, 2017 13:36
a tagged pointer wrapper
#ifndef TAGGED_PTR__
#define TAGGED_PTR__
#include <assert.h>
/**
* Utility template used by tagged_ptr to find the alignment of a pointer to T
* either specialize this for every class with a member named value that contains the
* the alignment of T.
@jimhansson
jimhansson / URL.h
Last active June 29, 2017 22:02
Simple URL thing
#include <boost/regex.hpp>
#include <tuple>
#include <string>
#include <iostream>
// Simple URL
// protocol, host, port, path, query
typedef std::tuple<std::string, std::string, int, std::string, std::string> URL;
@jimhansson
jimhansson / mqtttest.ino
Created September 20, 2017 21:30
one of the arduino mqtt projects
#include <DHT.h>
#include <Dhcp.h>
#include <Dns.h>
#include <Ethernet.h>
#include <EthernetClient.h>
#include <EthernetServer.h>
#include <EthernetUdp.h>
#include <ELClient.h>

Detta är en liten guide i hur man skapar nycklarna för en watch-only wallet

För denna guide så behöver man tillgång till linux, det går nog att genomföra på andra OS men då måste man anpassa en hel del. för att göra detta så behöver man en del verktyg, flesta är gjorda för linux och jag har medvetet valt att inte använda tjänster som är online eftersom vi kommer arbeta med den privata nyckeln och det skulle inte kännas bra att skriva en guide som lär folk att vara oförsiktig med sin privata nyckel. så först en liten varning

I DENNA GUIDE KOMMER DU ATT ARBETA MED DIN PRIVATA NYCKEL SOM OM NÅGON FÅR TAG PÅ SÅ KAN DE TA ALL DIN KRYPTOVALUTA, SÅ DETTA BÖR I BÄSTA FALL GENOMFÖRAS PÅ EN MASKIN SOM INTE ÄR ANSLUTEN TILL INTERNET OCH SOM DU BRÄNNER UPP EFTERÅT!!!

Hoppas det ovan för tillräckligt tydligt och ta och läs det en gång till bara för att verifera att du har läst rätt.

du behöver ett av dessa verktyg

  • libbitcoin-expolorer
@jimhansson
jimhansson / DAI.org
Last active January 30, 2020 06:25
DAI

Introduktion till DAI och MakerDAO

Om någon skulle vilja stöda mitt skrivande om krypto så gör det genom att skicka några DAI eller delar av ETH till denna address: 0xbE63F32bd5322ebCe85e322aD77394d48ecf26cF

Detta är början på en artikel serie om DAI som är en typ av stablecoin, alla delarna är följande

#!/bin/bash
Fix /etc/resolv.conf for VPN
echo "modifying nameserver for VPN"
vpn() {
STRING="Changing Conf"
echo $STRING
[ -s /run/resolvconf/resolv.conf -a -L /etc/resolv.conf ] && sudo cp --remove-destination /run/resolvconf/resolv.conf /etc/resolv.conf
local sudo="sudo"
if [ -w /etc/resolv.conf ]; then sudo=""; fi