HNHacker News
TopNewBestAskShowJobs

EPendragon

195 karma · joined June 6, 2025

I enjoy developing software and exploring new tech.

Blog: https://evgeniipendragon.com/

submissionscomments
EPendragon··on Moving Towards Determinism with LLMs
Hey, @derrak! Thanks for the feedback! I appreciate your constructive criticism of the post.

> > LLMs by nature are non-deterministic > This is false. LLMs are functions. All appearances otherwise are an artifact of how we use them.

I completely agree that LLMs are functions, and that they are essentially programs like any other program is. What I am trying to illustrate is that these functions are not pure. They are full of side effects. And thereby produce different results based on a large number of factors.

> This fact already suggests that determinism isn’t (entirely) what you want. Because even if you _could_ use LLMs as functions (I admit you can’t always do this with frontier models), that wouldn’t make you happy.

What do you mean here by "even if you could use LLMs as functions, that wouldn't make you happy"? What do you imply by using them as functions, and by making one happy?

> Here it should be obvious that getting the same output on the same input is not very important. Who cares if the arguments to the function are renamed? Who cares if the function is implemented differently but essentially does what the spec asks?

I would disagree here. Renaming arguments or implementing the function differently, doesn't negate the fact that I still want "pure" output from a function. I don't want to have a function that once in a while produces 2+2=5 instead of 4. I want it to always be the same: two arguments (2, 2) should always result in the same output (4).

> I argue the _only_ thing that matters is that the output satisfies the intended relationship with the input.

I agree with you here, but with one addition - it "always" satisfies the relationship with the input. As long as it always does that, that is deterministic behavior.

The definition of deterministic algorithm is as follows: "A deterministic algorithm is an algorithm that, given a particular input, will always produce the same output, with the underlying machine always passing through the same sequence of states." This is what I am essentially talking about and seeking in my interactions with AI systems.

EPendragon··on How AI is breaking the SaaS business model [video]
I like your take on that. I also tend to think that it just diversifies market offers. Not everyone will want to vibecode their applications. Some people will still prefer to have someone create it for them.
EPendragon··on Do Users Verify SSH Keys? (2011) [pdf]
The abstract for this paper is fire
EPendragon··on Breaking the Creepy AI in Police Cameras [video]
I hate to see that these companies are just waltzing past the legal standards that should be put on them to scrutinize their data collection which could be found unconstitutional.

And I very much agree that US needs to tighten their privacy legislature.

EPendragon··on The Attention Economy Is Everywhere. Self-Hosting Is the Escape [video]
I personally like this guys approach because he is coming at it from an angle of self hosting which I haven’t seen others do before.
EPendragon··on The Attention Economy Is Everywhere. Self-Hosting Is the Escape [video]
I haven’t heard of them, but I love the heart behind the cause and that people seem to be passionate about it and the fact that it this is a community thing.
EPendragon··on Customizing tmux
hjkl are where your fingers land and supposed to stay on keyboard (well almost). This puts you in a position to use the rest of the keyboard fast.

Ctrl-B is a mechanically more difficult key binding than Ctrl-A.

EPendragon··on Customizing tmux
I think it depends on the use case. If I had to do what you do with random machines, I would probably need to be familiar with default tool setups as well
EPendragon··on Customizing tmux
I tried LazyVim a couple of times, but felt that I would rather go back to a simpler nvim setup, and then build it up myself and learn as I go. I have stuck and enjoyed kickstart.nvim: https://github.com/nvim-lua/kickstart.nvim

It has been my starting point, and I have gradually been adding new plugins and reconfiguring existing ones.

EPendragon··on Customizing tmux
I will need to try iTerm's tools to see if I can do all of the same flow. Is it scriptable and does it have the same persistence features?
EPendragon··on Customizing tmux
I will check this out. Thanks for the link!
EPendragon··on Customizing tmux
glaucon, I agree with you. Most of feeling of "gatekeepiness" came from being a novice at using tmux and having to get used to a new workflow. tmux is as gatekeepy as vim, or other complex cli tool is - if you have never used it in the past, you might find it to be a challenge. That was all I was trying to point out. It is an entry in a diary of a noob tmux user :D
EPendragon··on Customizing tmux
If you only wanted to use that feature, you could install the whick-key plugin that LazyVim uses: https://github.com/folke/which-key.nvim
EPendragon··on Customizing tmux
That's an awesome tool you made! For me scriptability of tmux is one of its selling points. You have taken it a step further. Love to see it!
EPendragon··on Customizing tmux
I think the first thing that stood out about tmux to me as a beginner was the unnatural use of prefix. I haven't used something like that before where you had to use prefix and then a particular command. It makes sense why it is the way it is, but feels odd in the beginning.

The bottom elements were part of it. Not the host name and time, but the window information. Also, it took a while to remember the default keys to use to get to session management window where tmux displays everything, among other things.

Vim's hjkl make sense as you start using the tool. tmux's Ctrl-B for a prefix doesn't make sense, so that leads to remapping.

I have checked out the UI's you have made - they look great - similar to what I would expect a custom tmux configuration to look like :)

EPendragon··on Customizing tmux
I have thought about that. For this same reason I did not remap a lot of keys in nvim, because I still want to be able to use vim wherever I work if that is the only option.

However, I think that creating a simple git repository with rc files and configuration can be used to create a uniform experience across machines.

EPendragon··on Customizing tmux
Hey, akkartik!

The initial experience where I saw a lot of elements on the screen without knowing what's what was a lot. And sure enough - a lot of it had to do with just learning how it works and what's what. But in addition to the UI that is unintuitive for the beginner, most of the keybindings either didn't make sense or were not convenient (talking about prefix).

For example, splitting panes in my opinion are much better done with | and - symbols rather than " and %. I can see what they were going for with double quotes and the percent sign, but IMO vertical line and a hyphen make more sense. I do not need to be actively thinking about which one should I use for a vertical vs horizontal split.

There was some aspect of "putting a lipstick on it" - for sure. Making it more pleasant to look at didn't improve function - just looks. I just think making your tools look the way you like and enjoy them will create a more pleasant experience and help you learn the tool faster too.

The dreadfulness did come from not understanding it completely and being a noob early on. Fixing the style and function also put me into a process of being intentional about learning how the tool works and adjusting things that I didn't like.

And you're right - it is not more gatekeepy that other tools per se. I was simply describing my experience and what I ended doing about that.

EPendragon··on Customizing tmux
Appreciate the detailed answer! I will need to take a look at different terminals to see if there is any other one that can better fit my needs.

I prefer the idea of having one tool to manage everything: from local flow to remote sessions. And I usually do not view images in the terminal. But I'm willing to put them to the test and see if I like one of those more.

EPendragon··on Customizing tmux
Keybindings and uniform experience across machines is what does it for me.
EPendragon··on Customizing tmux
I have noticed that about an hour ago, so I don't think it was automatic. I guess I'm just curious why it was found to be against the guidelines or not representative of the topic in the post.
EPendragon··on Customizing tmux
> Tmux is more customisable, but a lot messier out the box.

I have definitely felt that. Customization wasn't necessarily straightforward - just required some time spent reading the docs.

I appreciate the heads up about the "no install, try in shell" option. I will make sure to take a look!

EPendragon··on Customizing tmux
Good to know. Thanks for the tip!
EPendragon··on Customizing tmux
@HNModerators, I don't know why it was necessary to change the title of my post from "Customizing tmux and making it less dreadful" to "Customizing tmux". The point of the title was not the overview of all of the customization options, but the effort to make it more usable, convenient, and pleasant to use.
EPendragon··on Customizing tmux
lol, that's likely part of the problem :D

I have started using nvim about a year ago, and that one also took three separate tries before it finally stuck with me :) After that, about 8 months ago I found tmux and had a harsh "first impression".

These days I enjoy using both of those tools and get more excited the more I learn about them.

EPendragon··on Customizing tmux
It is interesting to see that you use tmux and Kitty together. Is it faster or more convenient than using just one tool?
EPendragon··on Customizing tmux
For me the value in using a tool like tmux is that it remains scriptable - startup scripts - and could be used in conjunction with other cli tools. The same applies to Vim/Neovim. Both of these tools remain unrivaled in regards to combining them with other flows and pipelines.
EPendragon··on Customizing tmux
For me, I use Spacebar as a leader key in Neovim, so I think they would conflict.

Does it ever create issues for you if you need to type the backtick in the terminal?

I found that Ctrl-A does a great job: it is conveniently located in relation to other keys that I need to interact with after I activate the prefix, and is in general easy to use.

EPendragon··on Customizing tmux
For me tmux ended up being the solution for my dev needs. With a little bit of time, I learnt the ropes and became more or less productive with the default setup. Afterwards, I made it my own.

Like you mention, tmux sessions was one of the biggest features that I enjoyed about this tool: it does the job and does it well. Aside from that I love that I can use Vim-bindings with it, that it feels very similar to Neovim for me, so using them together is a no-brainer. Learning a couple of specific keyboard shortcuts is all it takes to make me productive.

I haven't needed to use a remote session yet like you note. While working with tmux locally I have learnt about all of these other features that I will definitely be looking forward to using once the opportunity arises.

I don't doubt that tools like ghostty, Alacritty, or WezTerm are great. I have heard lots about the first two. And I do intend to check them out.

What would you say is your favorite terminal and why as it relates to local development experience use? Are there features that these tools have that tmux lacks?

EPendragon··on Customizing tmux
I gotta admit that the initial experience in copy mode in tmux made me cringe a lot. The fact that scrolling up scrolled through the history of the terminal's commands was the most unexpected thing. After I enabled mouse use, it became usable for me.
EPendragon··on Customizing tmux
I feel that “make your own” has been the major driver behind looking into the configs myself. Learning other configs feels like a chore. I would rather learn and make it as I go. In the end I will have a sense of complete ownership. I will know what needs to change if I decide to change it. I think investing time into making your own wins in the long run.
Page 1 of 3Next →