Live data from Hacker News

Ask HN: What are some tools / libraries you built yourself?

news.ycombinator.com

161–170 of 617 posts

Re: Ask HN: What are some tools / libraries you built yourself?

#161
A git script named wip-push that commits changes in my working copy with the message "WIP". A git script named wip-pop that undoes the head commit, leaving the changes in my working copy, only if the commit message is "WIP". I use these dozens of times every day.

Also I've written my own logging library. Multiple times. Doesn't everybody?

Re: Ask HN: What are some tools / libraries you built yourself?

#162

Open source spinoffs from Tarsnap: https://www.tarsnap.com/open-source.html scrypt: Because the world didn't have any strong password-based key derivation functions. spiped: Because using stunnel or ssh tunnelling to connect to servers is gross . kivaloo: Because I wanted a high performance KV store optimized for small values (e.g. 40 bytes) rather than larger "items" (each containing multiple key-value pairs) or "bl…

Can you elaborate on what makes stunnel or ssh tunneling "gross"? Is it the network overhead they add or is it the complexity of the protocol, or is it something else?

Re: Ask HN: What are some tools / libraries you built yourself?

#163
I needed a good Node wrapper for ExifTool and wrote https://github.com/photostructure/exiftool-vendored.js

When I saw how slow it is to fork child processes in Windows, I then realized I wanted to run ExifTool in "stay-open" mode, which meant I needed to manage 1 or more long-lived child processes that communicate via stdin/stdout, so I wrote https://github.com/photostructure/batch-cluster.js

In switching to TypeScript, I really missed Scala's `Option/None/Some` and `lazy`, so I added those (and several other small, helpful functions/classes) that I documented here: https://photostructure.com/coding/uncertain-lazy-forgetful-a...

Re: Ask HN: What are some tools / libraries you built yourself?

#164
- R package "matrixTests": https://github.com/karoliskoncevicius/matrixTests

I often have to perform statistical tests on genomic data. Which in practice means running the same test on every gene (row of a matrix). Running it separately on each row is slow, specially in R. Hence to speed it up I started an R package which is a lot faster and deals nicely with edge case scenarios (missing values, infinities, empty matrices, etc).

- R package "annmatrix": https://github.com/karoliskoncevicius/annmatrix

An S3 object for matrices with persistent metadata. This again is mostly relevant in genomic contexts where a matrix of, say, gene expression has to also keep information about rows (gene names, positions, chromosomes), as well as samples (disease status, age, sex).

- R package "basetheme": https://github.com/karoliskoncevicius/basetheme

On of the advantages of ggplot2 in R is the ability to specify themes. I prefer working in base plotting system and ended up creating a package that allows setting themes for base graphics.

- Vim plugin "sendtowindow" https://github.com/karoliskoncevicius/vim-sendtowindow

A minimal plugin which implements an operator for sending text to another window. Handy for sending code from the buffer to a REPL running within another ":terminal" buffer.

Re: Ask HN: What are some tools / libraries you built yourself?

#167

A git script named wip-push that commits changes in my working copy with the message "WIP". A git script named wip-pop that undoes the head commit, leaving the changes in my working copy, only if the commit message is "WIP". I use these dozens of times every day. Also I've written my own logging library. Multiple times. Doesn't everybody?

Ahh, I’ve done something similar except I call mine “save” and “undo”.

Basically I just define them as git subcommands so I just use “git save” to create a SAVEPOINT commit, and “git undo” to undo the last commit onto my working index.

Re: Ask HN: What are some tools / libraries you built yourself?

#168
post #144

OwnTime.jl - A Julia profiling library [1]. It reports the time spent on each line of your project, and you can filter which files are included. For example, you might do a complicated map operation which calls a function in another library, if you filter out the library then it will report that all the time was spent in your code on the line that performed the map. However, if you don't filter out the library then i…

I gave it a try with a couple of calls of a framework which I have written and I suspect is littered with bad practices. Not sure what to make of the results, since most of the time seems to be spent here: [1] 79% => poptask(W::Base.InvasiveLinkedListSynchronized{Task}) at task.jl:760 Is this just something internal to Atom to execute code?

Does task.jl contain code you wrote? Feel free to make an issue and we can talk about it on GitHib too.

Try setting a stackframe_filter, filter on the root path of your project and then only lines in your repository will be reported.

Re: Ask HN: What are some tools / libraries you built yourself?

#169
Wrote an implementation of the ZIP specification in Swift: https://github.com/weichsel/ZIPFoundation Main motivation back then was a side project of mine, but since I open sourced the library, the project is also well received by the iOS and server-side Swift community.

Re: Ask HN: What are some tools / libraries you built yourself?

#170

I built a really simple cloud watchdog using only free-tier services: http://www.watchdog.email/ https://github.com/jareklupinski/watchdog-email planning on adding a timeout parameter soon!

Maybe I missed it. But what use case is this for?
Post reply on HN