Skip to content

Instantly share code, notes, and snippets.

View nicobn's full-sized avatar

Nick Berard nicobn

  • Dolores, Colorado
View GitHub Profile
@nicobn
nicobn / gist:8c76b4829a604dea03caa68289f66495
Created August 12, 2023 00:11
Get a file from an instance using SSM
# Assumptions:
# - SSM agent is installed on instance
# - Netcat is installed on instance
# - Port 1234 is accessible and no other process is listening
# Set instance id
export INSTANCE_ID="i-123123123"
# Shell 1: Start session
aws ssm start-session --target $INSTANCE_ID
@nicobn
nicobn / gist:8135faeda058fef5b6b9
Created April 17, 2015 02:53
Java generics - Get generic type of class field
package test;
import com.google.common.collect.Lists;
import com.google.common.reflect.TypeToken;
import org.junit.Test;
import java.lang.reflect.Field;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
import java.util.List;
$attributeValues = array(
'color' => array('Red', 'White', 'Blue'),
'size' => array(1, 2, 3, 4),
'fabric' => array('Cloth', 'Silk')
);
class Cartesian
{
public static function build($set)
{
@ResponseBody
@RequestMapping(
produces = "application/json",
method = RequestMethod.GET,
consumes = "application/json",
value = "whatever"
)
@ResponseStatus(HttpStatus.OK)
public DeferredResult<SomeDto> get() {
...
@nicobn
nicobn / JodaReadableInstantJsonDeserializer.java
Created July 5, 2013 16:09
Jackson 2 serializer/deserializer for JodaTime ReadableInstant objects (for example, DateTime).
package com.enterthebatcave;
import java.io.IOException;
import org.joda.time.Instant;
import org.joda.time.ReadableInstant;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonToken;
import com.fasterxml.jackson.databind.DeserializationContext;
@nicobn
nicobn / LiarLiar.php
Created June 26, 2013 14:55
Liar Liar Facebook Engineering Puzzle (PHP)
<?php
$raw = file_get_contents($argv[1]);
$rawDenunciationsLines = explode("\n", $raw);
$graph = array();
foreach ($rawDenunciationsLines as $rawDenunciationLine) {
$explodedLine = explode(':', $rawDenunciationLine);
if (count($explodedLine) != 2) {
@nicobn
nicobn / LiarLiarPureJava.java
Created June 26, 2013 14:02
Liar Liar Facebook Engineering Problem (Java \ Guava)
package com.enterthebatcave;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class LiarLiarPureJava {
@nicobn
nicobn / LiarLiar.java
Created June 26, 2013 13:53
Liar Liar Facebook Engineering Puzzle (Java)
package com.enterthebatcave;
import com.google.common.base.Splitter;
import com.google.common.collect.Iterables;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import java.io.BufferedReader;
import java.io.FileInputStream;
<?php
$generatedFilesFolder = __DIR__ . '/generated_files';
if (!file_exists($generatedFilesFolder)) {
mkdir($generatedFilesFolder);
}