summaryrefslogtreecommitdiffstats
path: root/blog/Why-"suckless"-software-is-important/index.html
blob: 89b6c060eceb0ce1f37e3b4267dc6e9706f5b341 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE HTML>
<html lang="en">
  <title>'Why "suckless" software is important'</title>
  <meta name="date" content="2024/01/14">
  <link rel="stylesheet" href="/style.css">
  <style> html, body {
    display: unset !important;
    max-width: 80ch;
    margin: auto;
  } </style>
  <body id="blog">
    <p>
      When it comes to learning how to program there are a few things you can
      do:
    </p>
    <ol>
      <li>Read a textbook</li>
      <li>Watch videos</li>
      <li>Read some source code</li>
    </ol>
    <p>
      Of these options I find the best way to truly learn how to program is to
      read someone else's program and try and understand it. For example
      recently I've been working on my own
      <a href="https://tools.suckless.org/dmenu">dmenu</a> clone for Wayland.
      Throughout working on it instead of looking for tutorials on how to render
      a square using pixman I decided to take a look at
      <a href="https://github.com/djpohly/dtao">dtao</a> which is a clone of
      dzen for Wayland. By just reading the code and messing around with the
      program I was able to get an understanding for how rendering is done in
      pixman.
    </p>
    <p>
      Now you may be asking yourself something like: "But what does this have to
      do with suckless software?". The answer to that is in their philosophy
      which is about: "keeping things simple, minimal and usable". The idea of
      keeping things minimal and useable allows them to create wonderful
      programs that not only work, but also showcase how to do things without
      extra fluff that something like i3 might have.
    </p>
    <p>
      Even if you don't like suckless software it still serves as a great place
      to learn how to do the bare minimum. And for those who do enjoy using it,
      it can serve as a great starting place to hack upon until you get the
      software of your dreams.
    </p>
  </body>
</html>