Skip to content

Instantly share code, notes, and snippets.

Joe Walnes joewalnes

Block or report user

Report or block joewalnes

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@joewalnes
joewalnes / jar-launcher.md
Last active Jul 21, 2018
Make a single file Java jar launcher
View jar-launcher.md

This is a little trick to turn an executable Java jar.

It works on all unixy like systems including Linux, MacOS, Cygwin, and Windows Linux subsystem.

Step 1 Start with an all-in-one jar (with entry point and all deps within)

$ ls 
hello.jar
@joewalnes
joewalnes / simple-http-server.kt
Created Nov 20, 2017
Minimal embedded HTTP server in Kotlin using Java built in HttpServer
View simple-http-server.kt
import com.sun.net.httpserver.HttpServer
import java.io.PrintWriter
import java.net.InetSocketAddress
/**
* Minimal embedded HTTP server in Kotlin using Java built in HttpServer
*/
fun main(args: Array<String>) {
HttpServer.create(InetSocketAddress(8080), 0).apply {
View gist:a7cc2986de8d5f62d7396be60de4f779
https://www.sparkfun.com/products/8688
http://bildr.org/2011/06/temt6000_arduino/
http://playground.arduino.cc/Interfacing/LinuxTTY
http://websocketd.com/
http://smoothiecharts.org/
-- sensor
@joewalnes
joewalnes / .block
Last active Jan 1, 2017 — forked from mbostock/.block
Streamgraph
View .block
license: gpl-3.0
@joewalnes
joewalnes / go-getter
Last active Mar 9, 2016
go-getter: Alternative to "go get" that fixes packages to a version for consistent and repeatable builds.
View go-getter
#!/bin/bash
# Alternative to "go get" that grabs Go packages based on a fixed version.
# Use this to ensure consistent and repeatable builds.
#
# While there are other tools out there that do this, this is really just
# a very small shell script so painless to work into your existing workflow.
#
# Usage:
#
@joewalnes
joewalnes / 2015.md
Last active Aug 29, 2015
My 2015 tech predictions
View 2015.md
View Makefile
MODULES := ./node_modules
BIN := $(MODULES)/.bin
.PHONY: install_modules all clean
all: install_modules filtrex.js filtrex.min.js
clean:
rm -f filtrex.js
rm -f filtrex.min.js
View with-great-regret.js
// Let's look at a snippet from a React example here: http://facebook.github.io/react/
// -----------------------------
// This is how you build the React virtual DOM with plain JavaScript.
return (
React.DOM.div(null,
React.DOM.h3(null, "TODO"),
TodoList({items:this.state.items}),
React.DOM.form({onSubmit:this.handleSubmit},
View keybase.md

Keybase proof

I hereby claim:

  • I am joewalnes on github.
  • I am joewalnes (https://keybase.io/joewalnes) on keybase.
  • I have a public key whose fingerprint is 5EE8 93C3 28CD 4BE5 FD9D B392 E50E 80DF 9AD0 F330

To claim this, I am signing this object:

View gist:6996934
"{{foo bar.baz.bam}}"
OPEN ID(foo) ID(bar) SEP ID(baz) SEP ID(bam) CLOSE
root
TemplateNode(statements)
TemplateNode([statement])
TemplateNode([expression])
TemplateNode([ExpressionNode(expression_contents)])
TemplateNode([ExpressionNode(path param* hash?)])
TemplateNode([ExpressionNode(IdNode.build(path_segments) param*)])
TemplateNode([ExpressionNode(IdNode.build(id) param*)])
You can’t perform that action at this time.