Live data from Hacker News

Ask HN: Tools you have made for yourself?

news.ycombinator.com

31–40 of 458 posts

Re: Ask HN: Tools you have made for yourself?

#31
I built a weightlifting workout tracker. I did this because at the time I wrote it (2014) none of the current tools fit my use cases due to the fact that I compete in the sport of Olympic weightlifting and this was still pretty rare back then. I also wanted to be in control of my data and be able to run analysis on it as I saw fit.

I began by writing a django app deployed via heroku. I then decided I wanted to rewrite it in ruby on rails because I had never worked with rails in my career and was already working on django professionally. I then wrote a react/redux SPA frontend, not for any other reason than to practice and learn those libraries. Finally, I decided to buy a VPS and manage deployments myself because I wanted to learn some basic devops stuff myself.

Building and maintaining this project I got first hand experience on building a web application from scratch, designing UX and product requirements, maintaining my own infrastructure (Linux server hardening, supporting SSL, managing my own domain, etc) and got experience in languages I didn't work in professionally. Also I got a few friends to begin using my app and immediately found where my poor UX choices were, which was pretty enlightening.

I think the experience really boosted my confidence as an engineer. I had to learn a whole bunch of new skills and become my own one person startup. In the end it helped me appreciate all that goes into building a software product and highly recommend the experience. I still track my workouts using the app and now have 7 years of data.

Re: Ask HN: Tools you have made for yourself?

#33
I needed some calipers that were large enough for a human head. Fairly expensive online, especially for a one use item. So I reviewed some classic manual types and designed my own 3D model and printed them out for cents vs lots of dollars.

Re: Ask HN: Tools you have made for yourself?

#35
I built this web best practices checker (e.g. looks for broken links, missing titles, bad cache settings, insecure forms) that checks multiple pages at a time:

https://www.checkbot.io

I built it to scratch my own itch while doing web development work and spun it into a paid product.

Re: Ask HN: Tools you have made for yourself?

#36
I have a small YT channel [1] and I used to spend 30-40 mins recording and then 2-4 hrs editing to get a final 10-15 min video.

Then I fully scripted my video editing using Python+MoviePy [2]. The time savings are sweet. I just feed it my raw video and get the finished video a few minutes later. It cuts out all the dead air as well as the parts I don't want (which I indicate in-video).

In general scripting video editing is faster and more scalable compared to mousing around and making tiny cuts in a graphical video editor.

[1]: http://youtube.com/c/VivekHaldar [2]: https://youtu.be/Bdoi7BDhrWc

Re: Ask HN: Tools you have made for yourself?

#37
I am currently learning SQL/Python, I often just wanted to know the headers and how many rows are in a CSV file, so I just wrote a small Python script for it.

  import csv
  import readline

  readline.set_completer_delims(' \t\n=')
  readline.parse_and_bind("tab: complete")

  def csvOpen(file):

      with open(file, "r", newline='', encoding='utf-8-sig')  as csvfile:
          reader = csv.reader(csvfile)
          i = next(reader)
          dRows = sum(1 for line in reader)
          print(f"You have {dRows} rows in the CSV file:\n" f"Your headers are:\n {i}")

  file = input("Please enter the filename to show the CSV   headers: ")

  csvOpen(file)
I also have an alias for it in my .bash_aliases.

  alias sqhead='python /home/user/Coding/Py-Code/sqlHead.py'

Re: Ask HN: Tools you have made for yourself?

#38
I made a tool that takes a list of timestamps as input and outputs a histogram of the count of those timestamps grouped into bins of any size (default is 1 hour):

https://gist.github.com/lelandbatey/58330f13a02e7b5a0af179d5...

I've found this to be a HUGE help, as I frequently have data from all kinds of sources and I want to be able to ask questions like:

"When did records matching this query start getting created over the last month?"

"Have there been any big fluctuations in the trends of when these records are deleted?"

On and on. It's an incredibly versatile tool to have access to and I was SHOCKED that there weren't existing tools for this case.

Re: Ask HN: Tools you have made for yourself?

#40
Oh lots. The ones that readily come to mind are my suite of tools for working with ledger-cli data.

The one that I work with most is my reporting tool, which ingests ledger-cli formatted files, dumps the resulting CSV into PostgreSQL and then provides a structure for writing reports.

Most recently I wrote a tool that consumes a spreadsheet generated by Tiller and appends transactions to my ledger files. This has allowed me to automate my ETL process down to just invoking an update command.

https://github.com/peterkeen/ledger-web

https://github.com/peterkeen/ledger_tiller_export

Post reply on HN