Quick Note on Diagrams and the Blog

People often ask me what tool I use to make the diagrams in my Software Illustrated posts. I use MS Visio 2007. It has a ‘themes’ feature that allows you to set fill and line options that apply to all the shapes in a diagram, making it faster to produce decent looking things. It still takes a surprising amount of work to get good pictures, but overall I’m pretty happy.

Also, I have tried to use colors to convey meaning. They’re not just for pretty. For example, memory colors follow these conventions across all diagrams:

Legend for memory colors

These colors hold from the earliest post about memory to the latest. This convention is why the post about Intel CPU caches shows a blue index for the virtually indexed L1 cache. So far I’ve written a lot about kernel and x86 internals, but that’s sort of a coincidence. I’m a generalist, not an OS guy; there’s a wide range of CS topics I hope to write about. (All this internals talk though made me want to write Linux kernel code again. I might look for some subsystem or driver to work on. What’s that sleep supression pill again?)

Finally, in the next couple of months I plan to change my blog template. The new one will have a hand-maintained ‘Archive by Topic’ page to serve as a coherent index to all posts, plus other usability improvements. I hate the current site as far as that goes. I can handle the logic and markup, but if anyone out there is interested in doing a small design/CSS job on this blog, please drop me a line. I also have a quick question. Many people access the site via iPhones and other mobile devices. How does image width impact you? Would it be painful if diagrams were wider than their current 700-pixel limit? I’d appreciate input on this and suggestions in general. Thanks! I’m off to check out the Denver LAMP meetup. Here’s a good song if you’re bored.

Comments

19 Responses to “Quick Note on Diagrams and the Blog”

  1. Posts about linux as of January 28, 2009 | APA Cinter on January 28th, 2009 8:59 pm

    [...] were based on Linux and MySQL. Now I could have copped out and used IronRuby (Microsoft’s Quick Note on Diagrams and the Blog – duartes.org 01/29/2009 Also, I have tried to use colors to convey meaning. They’re not just for [...]

  2. Srikanth on January 29th, 2009 12:01 am

    I just have 1 problem with wider images. I usually take a print-out and read at home at my leisure. If the images are too wide, they get clipped sometimes :(

    And I can’t enjoy the images anyway, my print-outs are black-and-white.

    Good song!

  3. Gustavo Duarte on January 29th, 2009 12:09 am

    Srikanth: Great point, print outs. I will experiment with the width wrt to printing and make sure the stuff prints on A4 without clipping.

    It also reminds me I want a CSS for print media because a number of people have told me they print stuff out, and one person actually asked for a ‘print’ view.

    Glad you like the song – that’s a good album.

  4. Jose Ricardo on January 29th, 2009 5:00 am

    Hey Gustavo (are you brazilian?), congrats for this blog. One of the best technical resources I’ve found on the internet. I’m a simple system analyst (with no engineering/cs background) but you make these things easy to understand and despite my age (30, not that young for programming) I really like to learn these stuff.

    Thank you man and keep it up! :-D

    Jose

  5. Antonio Cangiano on January 29th, 2009 6:27 am

    Hi Gustavo,

    I recently discovered your blog and I’m glad I did. It’s very interesting and insightful, and I’m working my way through previous entries.

    If you are looking for an “archive” solution that works, as I definitely was a while ago, I can’t help but recommend the “Clean Archive Reloaded” plugin for WordPress. You can see it at work on my blog here: http://antoniocangiano.com/table-of-contents/. I’m not sure if this is what you are looking for, but it works well for me.

    Cheers,
    Antonio

  6. Gustavo Duarte on January 29th, 2009 11:03 am

    @Jose: I am Brazilian :) Are you? I used to have a longer about page but it’s down for now. It’ll come back after I change the blog around.

    But man, 30 is _young_! My mother in law got into programming (as a job) when she was about 50 years old. You’ve got decades of good learning ahead of you.

    @Antonio: thanks for the feedback.

    I am in fact looking for something exactly like that, so thanks for the suggestion! I want two archives: “By Date” and “By Topic”. Clean Archive Reloaded solves the former beautifully. The Topic one I’ll keep by hand, because it’ll need some human tending to be friendly (ie, how to organize/categorize the stuff).

  7. a2800276 on January 30th, 2009 6:23 am

    Thanks very much! I was wanting to ask how you make the diagrams, they are very nice. Too bad you use Visio :)

    I’ve personally taken a liking to pic (which Richard Stevens used: http://www.kohala.com/start/troff/pic.examples.ps). Thought the workflow involved is not really ‘modern’.

  8. Gustavo Duarte on January 30th, 2009 9:23 am

    @a2800276: I have fond memories of TCP/IP Illustrated. :) I did try out a few things, but ended up on Visio because of the color and good looks of the diagrams. I’m happy to hear about alternatives though.

  9. peace on January 30th, 2009 3:20 pm

    Nice work Gustavo!
    Can you post some screencast about creating so such nice graphics?

  10. Naseer on January 31st, 2009 1:59 pm

    I love the Consolas font – great choice

  11. Raja on February 1st, 2009 7:06 am

    Damn. this is is amazing.
    you’re in my RSS feed now :)

  12. Gustavo Duarte on February 2nd, 2009 8:42 am

    @peace: I like the idea, the problem is time. If I get set up for webcasts, I’d do a Visio one.

    @Naseer: me too. It’s what I use in Visual Studio.

    @Raja: thanks!

  13. Nithish on February 5th, 2009 9:58 pm

    Hi Gustavo,

    I got introduced to your blog very recently and the very first time i went through your posts, i was amazed… am sure lot of people would have told you this before… you posts are real easy to understand (for dummies like me ;) ). Keep up the good work and thanks again!

  14. Gustavo Duarte on February 5th, 2009 11:28 pm

    @Nithish: we’re all dummies, it just varies by subject ;) You’re welcome for the posts, they’re lots of fun to write. Thanks for reading.

  15. macosx on February 8th, 2009 11:50 pm

    Oh,it seems that I don’t master VISIO well :( .I keep using visio with the default theme when installed.

  16. Jordan on February 17th, 2009 7:05 am

    The width doesn’t impact me much on my iPhone since I’m reading via Google Reader which resizes them automatically.

  17. Gustavo Duarte on February 18th, 2009 8:56 am

    @Jordan: that makes sense – thanks for clueing me in

  18. S. Carvalho on November 10th, 2011 9:45 am

    Hi Gustavo, I just discovered your blog and want to say your posts are amazingly well written and diagrammed. Best explanations for this stuff I’ve seen! Thanks so much for your time to write this up.

  19. Hackka on April 25th, 2012 12:12 am

    Thank you very much! Everything is fine! I’d like to watch very good video lessons on all these posts. If it is a point for you!!! All regards once again

Leave a Reply