Skip to content

Instantly share code, notes, and snippets.

Peter Marreck pmarreck

  • formerly desk.com, thredup.com and lifebooker.com. currently a contractor
  • Long Island, NY
  • Sign in to view email
Block or report user

Report or block pmarreck

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
View mix deps.tree output
```
$ mix deps.tree
mpnetwork
├── eliver ~> 2.0 (Hex package)
│ └── enquirer ~> 0.1.0 (Hex package)
├── ecto_sql ~> 3.1.6 (Hex package)
├── gettext ~> 0.13 (Hex package)
├── lz4 ~> 0.2.2 (Hex package)
├── briefly ~> 0.3 (Hex package)
├── number ~> 0.5 (Hex package)
@pmarreck
pmarreck / ecto_compressed_term.ex
Created Aug 21, 2019
Ecto compressed erlang term binary custom data type
View ecto_compressed_term.ex
defmodule Mpnetwork.Ecto.CompressedTerm do
@behaviour Ecto.Type
# The functionality below depends on the lz4_erl module.
# Note that pack/unpack stores the decompressed data length as the first 4 bytes
# or assumes those bytes are that value
defp compress(txt) when is_binary(txt) do
{:ok, comp} = :lz4.pack(txt, [:high])
comp
@pmarreck
pmarreck / looking_glass.txt
Created Aug 19, 2019
looking glass results for my computer
View looking_glass.txt
TRACEROUTE:
traceroute to 74.101.192.61 (74.101.192.61), 15 hops max, 60 byte packets
1 Blizzard Blizzard 0.370 ms 0.358 ms 0.356 ms
2 24.105.18.131 (24.105.18.131) 1.086 ms 1.092 ms 1.093 ms
3 137.221.105.16 (137.221.105.16) 1.047 ms 1.055 ms 1.037 ms
4 137.221.66.18 (137.221.66.18) 2.566 ms 2.592 ms 2.592 ms
5 137.221.83.66 (137.221.83.66) 6.869 ms 6.894 ms 6.894 ms
6 137.221.65.68 (137.221.65.68) 167.385 ms 166.230 ms 166.208 ms
7 137.221.68.32 (137.221.68.32) 6.012 ms 6.013 ms 6.041 ms
8 las-b21-link.telia.net (62.115.178.200) 5.651 ms 6.125 ms 6.150 ms
@pmarreck
pmarreck / insurance.md
Created May 14, 2019
Notes on In-House/Cloud Backup Solutions Across All Popular OS'es I Researched
View insurance.md

Since it was a lot of work to figure all this out i figured i'd let others know: So I have an assortment of machines on various OS'es now at home, macs, windows, linux. I needed a way to (ideally) back everything up the same way. Also, Apple's Time Machine, as easy as it is to use, was starting to piss me off, at least over a network (taking forever, causing the computer to lag terribly, often saying it had to rebuild the entire backup from scratch, that sort of thing... It always worked fine to a local disk, but I wanted reliable network backup) I decided early on to stick to using S3 protocol to a FreeNAS Mini I already own since pretty much all the backup software I was evaluating was able to speak S3, from all the OS'es. This would also make it easy to switch to actual cloud down the line if that made sense. S3 support provided by Minio http://www.min.io/ was recently added to my FreeNAS and it turns out, Minio is also easily installable on OS X (via Homebrew) and Linux, which meant that I could use my Ma

@pmarreck
pmarreck / zip to 7z.bat
Created Apr 17, 2019
How to convert a directory of .zip files to .7z (7zip) in Windows
View zip to 7z.bat
for %%F in (*.zip) do ( "C:\Program Files\7-Zip\7z.exe" x -y -o"%%F_tmp" "%%F" * & pushd %%F_tmp & "C:\Program Files\7-Zip\7z.exe" a -y -r -m0=lzma2 -mx=9 -t7z ..\"%%~nF".7z * & popd & rmdir /s /q "%%F_tmp" )
@pmarreck
pmarreck / 7zip files individually.bat
Created Apr 17, 2019
How to 7zip (lzma2 @ max compression) a bunch of files individually in a directory in Windows (assuming you are already in said directory with the command prompt)
View 7zip files individually.bat
# Use this one-liner:
for %i in (*.*) do "c:\Program Files\7-Zip\7z.exe" a -m0=lzma2 -mx=9 "%~ni.7z" "%i"
@pmarreck
pmarreck / just_use_mailto_links.md
Last active Mar 13, 2018
Why You Should Just Use Mailto Links (Instead Of Writing A Weak, Partially-Featured Email Client Inside Your Web App)
View just_use_mailto_links.md
@pmarreck
pmarreck / procedural_vs_functional.exs
Created Feb 8, 2018
Trying to convert a procedural algorithm into an Elixir functional one.
View procedural_vs_functional.exs
defmodule OutcomesProcedural do
def partitions(cards, subtotal) do
Enum.sum(
for i <- 0..9, elem(cards,i)>0 do
case subtotal+i+1 do
x when x > 21 -> 0
x when x==21 -> 1
x when x < 21 -> 1+partitions(put_elem(cards, i, elem(cards,i)-1), x)
end
end
@pmarreck
pmarreck / brunch-config.js
Created Jan 10, 2018
My working brunch-config.js
View brunch-config.js
exports.config = {
// See http://brunch.io/#documentation for docs.
files: {
// javascripts: {
// joinTo: {
// "js/app.js": '*.min.js'
// }
// },
// stylesheets: {
// // joinTo: 'css/app.css',
@pmarreck
pmarreck / instructions.bash
Last active Oct 29, 2017
How to get Erlang, Elixir, Phoenix and Postgres set up on a new blank Ubuntu cloud9.io (c9.io) project/VM
View instructions.bash
# I had some issues with this and finally culled together instructions from various sites which finally worked
# The first thing you should do is clone your Phoenix/Elixir repo from Github to a blank Ubuntu c9.io VM
# The next thing we have to do is remove the stock Erlang which is erlang-base-hipe and not esl-erlang
# (this causes problems later on otherwise)
# But first we will add a new apt source
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
rm erlang-solutions_1.0_all.deb # shouldn't need it anymore
You can’t perform that action at this time.