oxalorg's comments

oxalorg | 2 months ago | on: Easel Turns One One year of building my own IDE in Clojure

This sounds very close to my dream IDE, I've always wanted to build a smalltalk + emacs like editor/ide in Clojure but never got around to it.

I wanted to try Easel but there were no instructions how. This is how I got it running:

  git clone [email protected]:phronmophobic/easel.git
  clj -X:deps prep
  clj
  # now in repl
  => ((requiring-resolve 'com.phronemophobic.easel/run))

oxalorg | 2 months ago | on: Pricing Changes for GitHub Actions

At work we've started switching to codeberg (which uses forgejo) and honestly it's a breath of fresh air compared to GitHub. It's blazing fast compared to GitHub and has feature parity with our needs.

oxalorg | 4 months ago | on: Roc Camera

I have clicked about ~20,000 photographs on a Sony camera in the last year and a half. And I have published exactly 0 of those photos on social media.

Whenever I meet my friends and family, I show them the pictures myself and the story behind them.

I love the thrill of street photography and it gives me immense pleasure to capture candid moments of humans. It's a great creative outlet for me and helps me think about life and philosophy through my pictures.

Maybe one day I will care enough about publishing these pictures, maybe one day I will care about AI. But right now, I don't. This is the closest I've been to my "kid"-like self, just enjoying something for the heck for it.

oxalorg | 5 months ago | on: Why Self-Host?

I left my Hetzner VPS open to password logins for over 3 years, no security updates, no firewalls, no kernel updates, no apt upgrades; only fail2ban and I survived: https://oxal.org/blog/my-vps-security-mess/

Don't be me, but have some solace in the fact that even if you royally mess up things won't be as bad as you think.

I self host a lot of things on a VPS and have recently started self hosting on a raspberry pi 5, it's extremely liberating!

oxalorg | 5 months ago | on: Why Self-Host?

I left my VPS open to password logins for over 3 years, no security updates, no firewalls, no kernel updates, no apt upgrades; only fail2ban and I survived: https://oxal.org/blog/my-vps-security-mess/

Don't be me, but even if you royally mess up things won't be as bad as you think.

oxalorg | 6 months ago | on: Hacking Emacs: patching how markdown-mode finds images

Seeing lots of emacs praise on HN since the last 2 days.

In this blog post I walk through the process of how I go about extending emacs (specifically a 3rd party plugin) and tailoring it to my specific problems.

I'm definitely not an emacs pro, but I've written a few packages in emacs and have a cursory idea of it's vast powers! Happy to answer any question.

For anyone interested, my emacs config is at: https://github.com/oxalorg/.emacs.d

oxalorg | 6 months ago | on: Signal Secure Backups

Creating signal backups for iPhone users is _really_ hard. The only way to do it is to get a backup from the Signal Desktop app, which is also non-trivial because in recent versions of the desktop the decrypt key is also encrypted and store in keychain.

I had to install sqlcipher, find my encrypted key stored locally, find the decrypt key in apple's keychain, decrypt it using Signal's format, etc. This took a lot of trial and error, and reading a lot of existing source (special thanks to https://github.com/bepaald/get_signal_desktop_key_mac but unfortunately it did not work OOTB for me)

oxalorg | 9 months ago | on: My website is ugly because I made it

Exactly this. My entire website is handcrafted, and not once but over the last decade almost ~10 times.

It's fun and I almost end up revamping something every year.

Everything handcrafted:

- the matrix js code on home page. https://oxal.org click on the matrix for a surprise!

- it's built using my own Static Site Generator: https://github.com/oxalorg/genox

- my website uses a css theme, again handcrafted: https://github.com/oxalorg/sakura/

- if you go to https://oxal.org/blog/ you will see a small cyborg following you (started with a base image generated by chatgpt and then edited and added animations manually in Piskel sprite editor)

- it's deployed on a VPS manually, just run `make` (I've experimented with serving it via a handwritten C http server, but I haven't finished this toy project yet)

- i have several shell scripts which uploads things to my websites in private locations (think gists, quick share videos, screenshots etc.).

- the favicon is also pixel art, made when I was still in college! https://oxal.org/favicon-32x32.png

- I even tried designing my own funky font but gave up and used a Naruto inspired font

- and as a bonus, try to `view-page-source` on the home page

I see my website and feel extremely proud of my journey as a software engineer, and I cherish this simple thing oh so dearly!

oxalorg | 2 years ago | on: Amazon acquires Fig

Curious to learn more about your switch from Emacs to VSCode?

I'm a super confused soul, and currently I use all of them:

- Emacs (for clojure / lisps / big projects).

- NeoVim (for when I want to work in the shell, smaller scripts/playground, ssh).

- VScode (js / ts / frontend / figma / etc).

I've made both my vim and emacs keybindings / features almost identical, so there is limited context switching there.

I feel very slow in VSCode, I don't even have one of my most common task optimised in VSCode yet: grepping something and quickly moving to that buffer.

oxalorg | 3 years ago | on: Ask HN: GitHub remote host id has changed

Quick fix if you are seeing this:

  ssh-keygen -R github.com
  curl -L https://api.github.com/meta | jq -r '.ssh_keys | .[]' | sed -e 's/^/github.com /' >> ~/.ssh/known_hosts
-or- if you don't have `jq` / `curl` then use this: (please verify the authenticity of this key by yourself)

  ssh-keygen -R github.com
  echo "github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=" >> ~/.ssh/known_hosts
-or-

Copy them from here directly: https://docs.github.com/en/authentication/keeping-your-accou...

oxalorg | 3 years ago | on: The Owen Wilson Wow API

1. re: the first part, many people want something plug and play. and even if they were plug and play, the problem is that the user experience (on windows at least) with online drives generally sucks.

windows for sure doesn't hide latency well (CIFS is bad, SIMBA etc. are worse), and most apps are written as if the disk was local, and assume, for example, accessing a file only takes a few ms. if the server is 80ms away, and you do 2 "wow" accesses per second (e.g. the open file common dialog listing a directory and poking files for various attributes or icons) serially, suddenly your UI locks up for _seconds_ (joel spolsky summarizes this well in his article on leaky abstractions.) ditto saving any file; how can you stay updated on the ever growing wow library? sure for some random memes of a few hundred k it's fine, but doing work on large repertoire of Owen Wilson "WOW"s on an online drive feels like walking around with cinder blocks tied to your feet. anyway, the point of that rant was that WOW API uses an _online_ hosted version which resolves within 20ms, much faster than using the mouse to find files in an online mounted drive, which is an important difference :)

2. true, if you're both not at your computer and on another computer without net access, this won't replace a usb drive :) but the case i'm worried about is being, for example, on a server you own, and the wow api will let you get the most recent version of your wows at the time, and will work on any scripts and crons you write (without you having to physically copy anything or really do anything to your server rack.)

3. there are some unannounced viral parts i didn't get to show in there :) it'll be a freemium model. up to x gb free, tiered plans above that.

oxalorg | 4 years ago | on: Almond.css: Collection of CSS styles to make simple websites look nicer

This is quite nice! Shameless plug for my version of this (sakura.css [1]) which is

- much smaller (3.9kb / 1.9kb gzipped)

- looks more in-line with the default browser styles (demo [2])

- but does not use css variables yet, instead different themes are provided as different css files. My reasoning for this is that if you're using this you probably don't want to mess around with css too much :)

[1]: https://github.com/oxalorg/sakura

[2]: https://oxal.org/projects/sakura/demo/

oxalorg | 4 years ago | on: Pico CSS Framework

I agree. That is why I actually just decided to use different css files for different themes in sakura.css (it comes in at 3.8k / ~1.8k gzipped)

This also means that they can easily be used by others as well [1]. Have gotten some folks contribute their own themes over the years.

I also had friends who didn't want to understand CSS, and adding in media queries, variables, and dark mode support would only just confuse them even more.

[1]: https://github.com/oxalorg/sakura/tree/master/css

oxalorg | 4 years ago | on: Pico CSS Framework

Shameless plug, but do check out [sakura.css](https://github.com/oxalorg/sakura).

I've tried to keep it really simple so that folks without css knowledge are also able to hack on it while building their sites.

Would be happy to hear your feedback on it :)

oxalorg | 4 years ago | on: Sublime Clojure

These were some refreshing ideas to solve UX problems in the clojure REPL driven development flow (especially the REPL panel which I always keep hidden).

I've been frustrated a bit with the general UX of using emacs, clojure, and REPL since a while now. I keep tweaking my emacs config to improve it one bit at a time, hopefully one day I'll be happy :)

page 1