Showing posts with label Technology. Show all posts
Showing posts with label Technology. Show all posts

Wednesday, April 22, 2009

librologofunctionalheteroskedasisity by Justin

It amazes me that I'm always delighted when I install gentoo on a computer. Perhaps I ought to just remember how fulfilling gentoo is, and not ever be delighted again. However, I've decided that all good things in life are defined by a continual renewal of goodness.

It seems as though linux based distributions have penetrated far deeper into normal society than any Free Software zealot could have predicted 20 or even 10 years ago. Ubuntu's happy brown advent has pushed linux far outside of the once narrow niche of hard core computer geeks. As technological and informational proficiency spreads throughout society like a second order phase change, for once, cool follows from geek, and the penguin idol of the geeks transforms into guru of things cool and antarctic demagogue to the mases.

A computer that runs windows is like a brightly colored playpen. Once it starts up you can feel the protecting walls very close around you. You can pay many pretty dollars for small extension modules for your playpen, but there aren't many standard degrees of freedom, and they are very diminutive and well defined. However, all this appearance of safety in spite of microsoft's unquestioning contrary declaration is merely a padded plastic covering over cheaply riveted, thin aluminum bars. Frequently the mechanisms of the playpen break down and sometimes the whole structure can collapse inward leaving you crying because now you're tangled in a nylon net and you can't play with that one toy because you can't find it.

Ubuntu is interesting because it makes a linux based software distribution (debian) appear like unto the playskool comfort of windows, except that it's not red, yellow, green, and blue, but various shades of brown. Ubuntu provides the same playpen safety of windows, except that it's bigger by default, and you can add on as many extension modules as you want. These modules might not be of the same professional appearance as the main desktop module, but the important difference is that with linux, you're not borne up by small aluminum bars, but rather a thoroughly engineered network of steel trusses, like a playpen on substantial stilts. Down below you can see the foundation. It reaches down into bedrock. That's the linux kernel. The substantial beams and pillars are the standard libraries and important software packages that have been supporting the world's heavy duty computing needs for years, decades even. Or they have been based on such software packages: linux, gcc, glibc, binutils, perl, python, gnome, kde, firefox, etc.

Going from windows to ubuntu is like going from ubuntu to gentoo. Gentoo comes in the mail in a box, and you have to assemble it yourself. It makes no arbitrary style or structural choices, you get to design your playpen however you want, and like ubuntu or any other linux distro you get to add onto and customize your extended playpen as much as you want. The difference is that gentoo makes customization so much easier. The liberating sensation one feels when moving from windows to ubuntu is repeated in equal magnitude when one moves from ubuntu to gentoo.

It's like working on your own car. Some people just take their car to a car repair shop, which will probably overcharge you and leave your car worse than it was before. Other people buy a manual from the local auto parts superstore. These manuals typically cover 3 car models through 5 model years, have very few low quality disassembly photographs from a car that doesn't even look like yours, and all of the hard stuff is sensibly cloaked by a few occult incantations of text, insomuch that you're either going to spend a lot of time figuring it out yourself by breaking it or you'll leave all the hard stuff for the experts. Gentoo is like having the manufacturer's service manual. It not only contains five volumes of copious detail on every aspect of the car but is also intelligible, because it is meant to be used.

Thursday, March 5, 2009

LaTeX Wedding Invitation HOWTO/Template by Justin

(Update below.)

First, you should probably realize that this is going to be way easier than you thought because the LaTeX ecosystem has gradually improved over the past few years. The TeTeX days were pretty good and I'm sure old Tom had good reasons for giving it up. Everybody needs a change I guess. Well, so did I. That's why I'm getting married. And because I'm getting married, my fiancée and I had to make invitations, which benefits you, of course.

So anyway, here's a template for the enterprising LaTeX user who's getting married and doesn't want ugly word processor fonts to destroy the typographical elegance of the document that irrevocably declares their commitment to happiness. After all, you're a typography nerd, so why would you demure and use something less than the best for your fiancé[e]? All of the packages listed here should be included with TeXLive and MacTeX. I don't know what people use on windows these days. Thankfully, my windows uptime is better than five zeros.

\documentclass[12pt,letterpaper]{report}

\usepackage[cam,width=4truein,height=6truein,letter,center]{crop}
\usepackage[T1]{fontenc}
\usepackage{calligra}
\usepackage{setspace}
\usepackage{anysize}
\marginsize{2cm}{2cm}{6.6cm}{1cm}

\thispagestyle{empty}
\begin{document}
\crop
\begin{center}
{\sc \scriptsize Mr and Mrs Bride's Parents}\\
{\calligra \small are pleased to announce the marriage of their daughter}\\
{\sc \scriptsize Deb}\\
{\calligra \small to}\\
{\sc \scriptsize Napoleon}\\
{\calligra \small son of}\\
{\sc \scriptsize Mr and Mrs Dynamite}\\
{\calligra \small on Wednesday, January 1, 3000 AD}\\
{\calligra \small in the Las Vegas, Nevada Temple}\\
\ \\
{\calligra \small The pleasure of your company is requested}\\
{\calligra \small at a celebration in their honor}\\
\ \\
\ \\
\begin{tabular}{l|l}
{\calligra\small Reception                 } & {\calligra\small Open House}\\
\sc{\scriptsize Overpriced Reception Center} & \sc{\scriptsize Somebody's House}\\
\sc{\scriptsize 775 East 1200 North        } & \sc{\scriptsize 4321 West 3540 North}\\
\sc{\scriptsize Las Vegas, Nevada          } & \sc{\scriptsize Las Vegas, Nevada}\\
\sc{\scriptsize Wednesday, January 1, 3000 } & \sc{\scriptsize Saturday, January 4, 3000}\\
\sc{\scriptsize 7:05 p.m. to 9:09 p.m.     } & \sc{\scriptsize 6:59 p.m. to 9:01 p.m.}\\
\end{tabular}\\
\ \\
\ \\
{\calligra \small The bride and groom are registered at}\\
{\calligra \small Deseret Industries}\\
\end{center}
\end{document}


Update (2013-09-09).

I have updated the template according to my increase in TeX/LaTeX knowledge gained between 2009 and 2013. Most of the changes are made according to my advancements in understanding TeX and LaTeX spacing. On our invitation (which deviates very little from the original template) we included at the bottom a cursivy circly-squiggle I found on google images.

With a document such as this, you need total control over spacing and layout, so I don't think it would be better to refactor the template more than I have (such as by creating a document class, or creating specialized environments). Most spacing choices should be obvious, however there's one that's somewhat arcane for LaTeX newbz that I wish to obviate. The command \hspace{\baselineskip} tells LaTeX to insert a vertical space of size \baselineskip. You can put any length command in the argument for \hspace that you want, including literal measurements, such as 27mm.

Also for newbz, regarding fonts: You could change, e.g., {\block Mr and Mrs Dynamite} to {\block Mr {\fancy \&} Mrs Dynamite}. If you have any questions, leave a comment and I'll try to help/direct you in the right direction as I have time. I'll try to answer those that have already been posted as I can.

These are some resources I have found to be very useful and helpful:

\documentclass[12pt]{article}

% TODO: figure out mount2 option
%\usepackage[cam,width=4truein,height=6truein,letter,center]{crop}
\usepackage[T1]{fontenc}
\usepackage{calligra}
\usepackage{setspace}
\usepackage[papersize={4in,6in},hmargin=0cm,vmargin={1.5cm,1cm}]{geometry}

% define new fonts
\newcommand{\fancy}{\calligra\small}
\newcommand{\block}{\sc\scriptsize}

\pagestyle{empty}

\begin{document}
  %\crop
  \begin{center}
    \begin{onehalfspacing}
      {\block Mr and Mrs Bride's Parents} \\
      {\fancy are chagrined to declaim the nuptiality of their daughter} \\
      {\block Deb} \\
      {\fancy to} \\
      {\block Napoleon} \\
      {\fancy son of} \\
      {\block Mr and Mrs Dynamite} \\
    \end{onehalfspacing}
    \begin{singlespacing}
      \begin{fancy}
        on AD 3000 January 1, Wednesday\\in the Las Vegas, Nevada Temple
        \vspace{\baselineskip} \\
        The repugnance of your company is demanded\\at a farce on their account
      \end{fancy}
      \vspace{\baselineskip} \\
      \begin{block}
        \begin{tabular}{l|l}
          {\fancy Reception}        & {\fancy Open House}      \\
          Overpriced Reception Hall & Somebody's House         \\
          775 East 1200 North       & 321 West 654 North       \\
          Las Vegas, Nevada         & Salt Lake City, Utah     \\
          3000 January 1, Wednesday & 3000 January 4, Saturday \\
          7:05 p.m. to 9:09 p.m.    & 6:59 p.m. to 9:01 p.m.   \\
        \end{tabular}
      \end{block}
      \vspace{\baselineskip} \\
      \begin{fancy}
        The bride and groom wish they could have registered at\\Deseret Industries\footnote{\tiny{``Do you guys have like a wedding registry?''  ``We sure don't.''}}
      \end{fancy}
    \end{singlespacing}
  \end{center}
\end{document}