Hi! My name is Ken. I’m a web developer. I work with the whole stack of a web application. That includes database work like modeling and schema design, working with the server code and contributing to its design, and also contributing to the UI of the web application.
I like exploring functional programming even outside of work. Even though I already write Haskell at work, I still like exploring it outside of work alongside other functional programming languages like PureScript and OCaml.
In my free time, I also like contributing to open source software and helping people out in my community in terms of learning programming, especially functional programming.
First and foremost, I use the black ErgoDox EZ Glow with Kailh Copper keyswitches. I was so hesitant about getting this keyboard; I think it took me about two months to decide. I had a hard time justifying the price to myself, but I took the leap and got it. After getting it, I noticed that my wrist didn’t hurt after a couple of hours of working. Because of this, I was able to justify to myself that I made the right purchase.
As my primary development machine, I use a System76 Oryx Pro. For external display, I have an LG 27” 27UD68. For my secondary machine, I use a 2014 MacBook Pro. I use a black Logitech MX Master 2s so I can hopefully prevent repetitive stress injury. For writing notes and reading my PDF books, I use an iPad Pro. When it comes to listening some jams, I use my Audio-Technica ATH-DSR7BT. Finally, to keep myself moving when working, I use the Jarvis standing desk.
I run Ubuntu as my primary operating system and macOS on my secondary machine. When it comes to writing code, my main tools are Emacs (doom-emacs) and gnome-terminal with oh-my-zsh. I love Emacs so much that I want to control my windows and workspaces like it too, so I use i3!
When it comes to low-ﬁdelity designs, I use balsamiq. I like this software because it produces what looks like hand-drawn, low-ﬁdelity designs.
When working with the database, I use dbeaver. I used to use dbdiagram.io as a tool to design schemas, but Lucidchart is winning me over because it can easily import information about the database — that means it can easily sync to an existing database.
No custom keycaps yet. I haven’t found the keycap set that I like and that goes nicely with the backlighting. My keyboard setup accommodates my use of Emacs with evil-mode. The cool thing about the ErgoDox EZ is that I don’t have to install or remap my machine’s keyboard. I can just go to the ErgoDox EZ web conﬁgurator, do the remapping there, and — Voila! — keyboard is remapped.
I’m not sure if I have a “dream setup” because to me that sounds like a stopping point. I don’t think I want to stop modifying my setup. I want to keep improving it, so I’ll always incrementally improve my setup over time. As of now, I’m thinking of getting the Planck EZ as part of my travel setup.