Hisham Muhammad

hisham.hm · Personal blog · on HN since 2011

Hisham Muhammad, creator of htop, writes about programming languages, tools, and software design.

What HN saysHN links it mainly for htop, which commenters strongly recommend over ps and top; he also discusses his domain name and URL display.
53HN people shared it
26linked it in comments
36stories submitted
1.7Kstory points
3 months agolast shared
2011people per year2026

Most-shared posts

  1. 1
    Show HN: Htop 2.0 released, now cross-platform
    15 people · 615 points · first shared 2014 · 153 comments on HN
  2. 2
    Userland: Integrated Dataflow Environment
    5 people · 4 points · first shared 2020 · discussion on HN
  3. 3
    Dynamic type systems aren’t even simpler
    4 people · 36 points · first shared 2020 · 25 comments on HN
  4. 4
    Again on 0-based vs. 1-based indexing
    3 people · 223 points · first shared 2021 · 504 comments on HN
  5. 5
    The Lua community needs to learn to move on
    3 people · 7 points · first shared 2026 · discussion on HN
  6. 6
    Smart Tech – Smart for Whom?
    3 people · 4 points · first shared 2021 · discussion on HN
  7. 7
    When listing repeated things, make pyramids
    3 people · 4 points · first shared 2018 · discussion on HN
  8. 8
    Homepage
    3 people · first shared 2013
  9. 9
    A love letter to bands, in music and code
    2 people · 14 points · first shared 2021 · 3 comments on HN
  10. 10
    Understanding, at last, the Y combinator
    2 people · 12 points · first shared 2011 · discussion on HN
  11. 11
    I almost added Tetris to htop
    2 people · 8 points · first shared 2024 · 1 comments on HN
  12. 12
    The Algorithm Did It
    2 people · 2 points · first shared 2021 · discussion on HN
  13. 13
    Dit
    2 people · first shared 2016
  14. 14
    Remembering Windows 3.1 themes and user empowerment
    1 people · 379 points · first shared 2021 · 323 comments on HN
  15. 15

What HN people wrote when they linked it

jihadjihad · 2019-07-19
I've been using htop for a while now, it is pretty great: https://hisham.hm/htop/
aub3bhat · 2016-10-05
This is a great post, recently I have been trying to re-learn and understand linux (specifically) ubuntu using monitoring tools. In my opinion htop and Facebook osquery are the two best available tools for understanding how an operating systems and processes work. The osquery approach of recording all OS data in form relational tables (with PIDs as keys etc.) is very useful. https://hisham.hm/htop/ https://osquery.io/ The osquery query packs are especially useful: https://osquery.io/docs/packs/ Here is an incomplete draft about a similar post: https://github.com/AKSHAYUBHAT/TopDownGuideToLinux
semi-extrinsic · 2016-08-26
For interactive use, I strongly recommend htop if you're still doing stuff like "ps aux | grep" and then "kill 84728". Htop is top on steroids: ncurses-based and very fast, has colors, threaded or flat process view, sorting by different criteria like cpu or ram use, searching for substring match in process name, interface to killing/signalling to selected process, etc. http://hisham.hm/htop/
clinta · 2016-01-31
What looks less technical and more user friendly on a business card? http://hisham.hm or www.hisham.hm Personally, I think www is. And it's shorter.
hisham_hm · 2016-01-31
My domain is not immediately obvious as an URL: hisham.hm (also my username in many places, or variants of it, like @hisham_hm). Sometimes I do need to make it more obvious that it's an URL (e.g. when printed, or on presentation slides). In those cases I write it as http://hisham.hm
fuzzythinker · 2014-10-07
Wow, didn't know he also authored htop. After visiting his site[1], discovered gobolinux[2] too! 1. http://hisham.hm/ 2. http://www.gobolinux.org/
TheAceOfHearts · 2017-05-23
The first tool that came to mind for me was htop [0] with ncurses. It's a friendly alternative to top. I've previously used ncmpcpp [1] without any major complaints, although it's been a few years since then. It's an mpd [2] client written with ncurses. On my personal servers I use goaccess [3] to analyze access logs. I remember being able to pick it up pretty quickly on my first try. Only tangentially related, but you may find it useful to read the "Utility Conventions" [4] entry of The Open Group Base Specifications. I'd also suggest reading through the relevant entries under the "Program Behavior for All Programs" [5] section of GNU Coding Standards [6]. By following existing conventions (or even being aware they exist) you can sometimes make it easier for others to learn how to use your tool. If you know JavaScript, you may consider writing your program with node. The blessed [7] library is a JavaScript reimplementation of ncurses, and there's even a react renderer [8]. This makes building the UI much easier than many of the alternatives I know. When you're ready to release, you can generate an executable [9] for easy deployment or publication. The biggest benefits of taking this approach are that it makes it very easy to achieve cross-platform support, and the barrier of entry is lower than many alternatives. The biggest caveats are that it'll be slower and much larger than if it had been written with C. [0] http://hisham.hm/htop/ [1]…
ufo · 2026-04-06
That EWD is one if my pet peeves. Dijkstra makes an unfair comparison because he lists plenty of examples where 0-based indexing is more convenient but ignores the equally numerous situations where 1-based is more convenient. For example, iterating backwards over an array is much better in an 1-based world. I like the argument that 1-based is better for indexing and 0-based is better for offsets: https://hisham.hm/2021/01/18/again-on-0-based-vs-1-based-indexing/
dan-robertson · 2021-04-13
I think emacs is a good example of a terminal program (not really command line) that made a good success out of becoming more gui and I think it shows a lot of the limitations of the terminal emulators. In a gui you easily get all the colours and not many weird duplicate keyboard shortcuts (exceptions are eg TAB vs C-i and M- vs ESC). You can have images and clicking and middle click paste and multiple fonts and some OS integration. But the interface still remains a fundamentally mutable text-based thing. For something completely different: https://hisham.hm/userland/
effie · 2021-02-14
Userland has something like this. https://hisham.hm/userland/
type0 · 2021-01-22
Ipad isn't general computing device, it's a smart gadget, same as Smart TV same as IoT lightbulb. This article explains it well: https://hisham.hm/2020/12/10/smart-tech-%e2%80%94-smart-for-whom/
afraca · 2019-02-26
Slightly offtopic: the author says the background of https://hisham.hm/htop/ shows live statistics, that's not the case as far as I can tell, just 4 pre-recorded images shown successively. Ontopic: Quite impressive setup. For me it would be too strictly regulated for a comfortable use, though technically I like it. To each it's own.
catwell · 2018-08-11
I don't know in their case, but I know it's the style used by Hisham Muhammad (author of htop and LuaRocks among other things), and he explained why here: https://hisham.hm/2018/06/16/when-listing-repeated-things-make-pyramid…
digi_owl · 2017-03-09
Dunno about pr process, but i could have sworn that graphs where a option in htop. http://hisham.hm/htop/index.php?page=screenshots Some of them show both 1.0 graphs and the new, unicode based ones from 2.0.
git-pull · 2017-03-03
For those who don't know, that thing with meters on it is htop(1). http://hisham.hm/htop/
stevedonovan · 2016-04-18
Another text-based editor from hisham.hm (author of htop2) http://hisham.hm/dit/. I totally agree, nano is due for a replacement.
brndn · 2016-02-11
For others interested in donating: http://hisham.hm/htop/index.php?page=donate
GamblersFallacy · 2015-06-21
I just use terminator terminal, multi-terminal grid. One terminal per server showing htop via ssh. http://gnometerminator.blogspot.com.au/p/introduction.html http://hisham.hm/htop/
bearlikelion · 2014-03-21
The only other top I know of is htop http://hisham.hm/htop/ but I don't think that's what you're looking for
_ao789 · 2016-02-11
Copied from the main site at http://hisham.hm/htop/ ?
pmlnr · 2018-11-19
daily-ish drivers of mine: - autossh - https://linux.die.net/man/1/autossh - sshfs - https://github.com/libfuse/sshfs - pandoc - https://pandoc.org/installing.html - exiftool - https://www.sno.phy.queensu.ca/~phil/exiftool/ - htop - https://hisham.hm/htop/ - tmux - https://github.com/tmux/tmux/wiki - rsync - https://rsync.samba.org/ - midnight commander - https://midnight-commander.org/ (faster, than loop ing ls, cd .., ls) Still trying to think about the others.
jwilk · 2017-10-09
These are thrid-party programs that are unlikely to be installed on a Linux system by default: http://guichaz.free.fr/iotop/ https://01.org/powertop/ https://github.com/raboof/nethogs https://github.com/tmux/tmux/wiki http://mama.indstate.edu/users/ice/tree/ http://hisham.hm/htop/ http://invisible-island.net/dialog/dialog.html Also, you should prefer "pgrep" to "pidof"; the former is available also on BSDs.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close