Giter Club home page Giter Club logo

Comments (21)

magcius avatar magcius commented on August 17, 2024 30

No, but seriously, thank you for your kind words. I do read every single email I get, and I'm warmed and touched by all of them. This was a surprise to see, and it really brightened my day up.

I'm still trying to write a few more articles, but they're not going as planned. You can see a really work-in-progress, unedited version of one my next articles here: http://magcius.github.io/xplain/article/menu.html . Feedback on that so far would be really appreciated, if you feel like you want to "contribute back".

I'll leave this issue open so others can leave their compliments and praise. Geez, I'm so self-centered.

from xplain.

magcius avatar magcius commented on August 17, 2024 15

Who is the guy that put the thumbs down emoji there. I will end you...

from xplain.

magcius avatar magcius commented on August 17, 2024 7

Hey all. My next article is out, and it's not quite about X11, but I feel like you might appreciate it regardless. :)

http://magcius.github.io/xplain/article/rast1.html

from xplain.

magcius avatar magcius commented on August 17, 2024 6

I wrote a bit about Wayland and Wayland protocols on my blog.

http://blog.mecheye.net/2014/06/xdg-shell/

from xplain.

georgir avatar georgir commented on August 17, 2024 2

It feels kina "wrong" to me to open an "issue" here just to say the same thing the many other "issues" have said, despite you literally asking us to do just that in the final paragraph of your series. So instead, I'll just write a comment here, which may well be wrong in a different way by spamming a notification to the other people that commented here... but whatever.

Awesome articles!
I can't wait to get some free time to play with this idea, maybe even combine it with this "node-webkit" thing so it actually can listen to a real socket... the possibilities are so exciting!

from xplain.

sputtene avatar sputtene commented on August 17, 2024 1

I'd also like to tell you that your series is awesome. I really enjoyed reading it and playing around with the examples.

You've answered quite a few questions I never knew I wanted to ask.

Is there some way to subscribe through RSS to updates to the series? I wouldn't want to miss the next installments and an RSS feed is the most convenient way for me to make sure of that.

from xplain.

Jonahss avatar Jonahss commented on August 17, 2024 1

Hiya, last week I realized I had no idea how pixels are painted to the screen and also realized that I've spent years shying away from anything that mentions Xorg. Thanks for your writing and amazing demos!

from xplain.

etale-cohomology avatar etale-cohomology commented on August 17, 2024 1

I'm writing an application to visualize math stuff, and I'm using pure XCB. I'm not a huge fan of the "higher level" libraries (ahem, GTK/QT/others-you-know-you-are), mostly because I find them bloated and sluggish. Native Xlib/XCB applications start up and exit blazingly fast (which is very important to me), are super responsive, and they can be optimized at a much lower level. Understanding the fundamentals of the X server (and, in particular, xorg's implementation) has gone a long way towards making stuff happen for me, but finding resources (such as Xplain) is incredibly difficult!

(Sometimes it makes me feel like the only way to get stuff explained is by asking Keith Packard...)

Anyways, thank you for these articles! They're invaluable, and we need more.

(As a sidenote, I'm not moving to Wayland until the OpenGL performance surpasses X11's, which, if it's never, is fine with me. So I do believe resources explaining X's internals are reasonably timeless.)

from xplain.

isra17 avatar isra17 commented on August 17, 2024 1

Found the series after it was posted on lobste.rs a few day ago, thanks for the good quality material!

from xplain.

srpelissier avatar srpelissier commented on August 17, 2024

Keep going.

from xplain.

jvilk avatar jvilk commented on August 17, 2024

You made me want to mess around with programming an X application because you presented everything clearly and effortlessly. No angry rants about how bad X is, no defensiveness over X's design decisions; it was a refreshing (and fun) read!

The in-browser X server was the icing on the cake. Most developers would include images or perhaps gifs to illustrate their points. You wrote a partial X server in JavaScript and wrote a Window inspector for it. That's dedication.

I encourage you to keep going, when you have time. At some point, I would also love to hear more about how Wayland is different from X, but perhaps that is already summarized elsewhere? :) I certainly don't want to cause you to write a Wayland.js!

from xplain.

insanebits avatar insanebits commented on August 17, 2024

That was one of the greatest technical articles I have read in a long time. It was pleasure to read! Really nice balance between technical details and keeping it interesting. I can imagine that making those gorgeous examples took quite a lot of time and it really made a big difference!

Thank you for your time and dedication!

from xplain.

tbelaire avatar tbelaire commented on August 17, 2024

I'm looking forward to more!

from xplain.

magcius avatar magcius commented on August 17, 2024

I promise to post any new articles of the series to http://blog.mecheye.net/ when done.

Otherwise, I don't have an RSS setup directly for this series -- GitHub Pages makes it a bit difficult to do. If anybody wants to try to make a setup for it using Jekyll or whatever, PRs are welcome.

from xplain.

cstyan avatar cstyan commented on August 17, 2024

I was sent this set of articles when I asked the i3wm community for learning resources and this was better reading that I'd ever expected. Thanks for all the work you've put in!

ps: 👋 @Jonahss

from xplain.

JAnthelme avatar JAnthelme commented on August 17, 2024

Great article! Very clear and thorough and the examples make it so much easier to understand. Thank you.
If you need some suggestions for new articles then handling text (in particular with freetype) would be very useful.

from xplain.

ming-gnim avatar ming-gnim commented on August 17, 2024

this tutorial is beautiful and so good for visual learners! Thanks so much for your hard work!

from xplain.

alaa-alawi avatar alaa-alawi commented on August 17, 2024

In a storming sea of X information, sure Xplain is a calm shore to which I land and from which I can jump back into the storm.

from xplain.

ivanbrennan avatar ivanbrennan commented on August 17, 2024

I recently fell in love with xmonad, and while diving into it's source code I felt the need to acquaint myself with the X Window System.

I'm so glad I stumbled upon your Explanations! The quality and clarity of writing is exactly what I needed to start demystifying X and it lifts my spirits to see such attention to detail and empathy for the reader. Thanks!

from xplain.

jjrh avatar jjrh commented on August 17, 2024

Stumbled upon this series yesterday, and found this useful and informative. Thanks!

from xplain.

magcius avatar magcius commented on August 17, 2024

I just realized I never mentioned it here but this project has reached an end for me. I left a bit of a postmortem on Hacker News:

Author here. I stopped working on this a few years ago, so now's as good a time as any for an overly-long, rambly, unedited retrospective.

When I started this, I was working on GNOME's window manager full-time, and wanted to learn intricately how X11's drawing model worked, so over the course of a few weeks in a hotel room, I recreated large parts of X11's drawing model in a web browser, fixing artifacts as I went along, until I feel I had a really good grasp of it. My initial test scene was a traditional desktop-like approach with a taskbar and xeyes, both of which are still in the codebase today, but untested.

I didn't know what I wanted to do with it, until I settled upon using snippets of it to build a long-form article. I learned a lot about the difficulty of writing, of pedagogy, of that blurred line between being technically correct 100% of the time vs. telling a few small lies here and there to keep the flow consistent and help people see the broader picture.

At my day job, I had mostly moved onto Wayland, where some of the bits I picked up here really helped me design better protocols and systems. My goal with the series was to try to be as neutral as possible, and my original design was to have a giant caution sign around "Author Opinion Zones" where I would talk about how certain design features haven't held up well in practice. But quickly, people on Hacker News or Phoronix or Reddit seemed to skim the article, pick up a piece here or there, and go on straight to bashing Wayland, gleefully unaware that I was one of the people making it.

So, the end result was that I basically stopped working on Xplain basically after the second article. The COMPOSITE article was one I made after a colleague was having trouble understanding COMPOSITE, and I figured it was easier to write with my framework than explain in a chatroom, and maybe some others would appreciate it.

I have a deep passion for sharing my knowledge, and Xplain was the format I first really used to do it widely, so I tried to keep it exciting for me by changing it from "Xplain" to "Explanations", and opening up the topics from X11 to just about anything, but at some point I was just unhappy working on it.

The last thing I was working on was a continuation of my Basic 2D rasterization article, where I had a fun code editor you could use to make your own graphics, but as fun as the technology was, I couldn't find a satisfying flow to the article, so I stopped it. Parts of it were later recycled for an article on the histories of 2D and 3D graphics.

Around mid-2016, I had stopped working on Linux and open-source graphics entirely, and by 2017 I had exited the open-source industry completely and jumped ship to professional game development. I still have a deep love for graphics and a passion to explain things. I just released a new side project a few days ago for it, even.

Here's what I'm working on these days.

https://noclip.website/
https://blog.mecheye.net/2018/03/deconstructing-the-water-effect-in-super-mario-sunshine/
https://www.youtube.com/watch?v=8rCRsOLiO7k
https://www.youtube.com/watch?v=mnxs6CR6Zrk

from xplain.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.