LaTeX Beamer Theme Previews
I have been using LaTeX beamer for a little over a year now to do my “PowerPoint” like presentations for math and computer science classes. I really like beamer a lot and I find it easy to put together a nice looking presentation that is not bogged down in special effects and gimmicky animations. One of my main problems with beamer is that I never know what theme to pick because I never know what the themes look like ahead of time. This is what made me think that it would be nice to have a script that automatically builds my presentation with every possible theme and puts them in one giant pdf file.
It turns out that by using Python and some nice Linux tools it is fairly easy to achieve this. I call the little script I wrote “beamerizer” and it takes a directory of LaTeX themes and a LaTeX source file. Then, it builds that source file with every possible theme. It’s a pretty simple idea, but it gets the job done. I have also used this script to produce a nice sample document that was built using the standard LaTeX themes. Both the beamerizer script and that sample document are included in this post. Hopefully this will help someone out who needs to see all the different beamer themes
.
Beamerizer Python Script: beamerizer.tar.gz (requires that “gs” and “pdflatex” be installed)
Theme Preview File: BeamerThemePreview.pdf
(For those of you who are interested: all beamerizer really does is generate a pdf file for each theme and then use the “gs” command to concatenate all the pdf files together)
Sorting My Thoughts with Freemind
Recently I was introduced to a nifty little Java program called Freemind. The purpose of Freemind is to help you map out your thoughts into a form which then allows you to manipulate them freely. Sometimes I have too many ideas in my head to put them all together in a coherent way and a program like Freemind helps me to sort through them all. Basically, I use it as an extension of my memory, and I have been looking for software that does this for quite a while now. Before Freemind all I had was a pencil and paper. This solution is not terrible, but I do almost all of my work on the computer so having a digitized solution is always prefered. Here is a screen shot of Freemind:
One of the main things I like about Freemind is that once you get the hang of the keyboard shortcuts you can control everything about the program from the keyboard. This is really handy for me since I can just type away and keep adding ideas without having to give too much thought in to the use of the computer itself.
In Freemind a file is called a “Mind Map” and it is basically a single unifiying topic for what you will be organizing your thoughts on. Off of that one supplies “nodes” which have snippets of text in them describing whatever you please. Nodes can, of course, be placed off other nodes and this is how one builds a mind map. The nice thing about Freemind is that these nodes can be moved around quite easily with keyboard shortcuts. This allows one to quickly rearrange ideas.
Finally, Freemind lets you place little graphics next to the nodes which one can use to indicate various things about nodes. For example, I was using Freemind to keep track of bugs in this small program I was writing, and I would use the check mark graphic to indicate when I had solved one and written unit tests for it.
All in all I really like Freemind and it is a great way to put my thoughts together in a coherent way. I hope to find new and interesting uses for it in the future.
Web Based TODO List: TaskFreak!
For the past year or so I have been keeping a digital copy of the list of things I need to get done (aka my todo list). Originally, this was simply a text file that I stored on the computer science lab computers at my college. This was handy because I could always access the computers via ssh and retrieve my todo list. Eventually, that became too annoying to manage and I installed the program gtodo on all my computers. I use sshfs on all my machines so that I could store the todo list on those same computer science machines. This was a great system, but now I must graduate from college, which also means that I have to leave my account as well. Since I recently purchased a domain and web hosting I figured a web based solution would be perfect for my needs. That’s how I discovered TaskFreak!
TaskFreak! has exactly the features I need and one or two extras. Those features are: it lets me enter a new item, associate it with a category, give it a priority, give an optional deadline, and indicate when it is finished. On top of all that TaskFreak! lets you give a description of the task, which can be displayed when clicking on a given task. TaskFreak! lets you sort your tasks however you choose simply by clicking the first cell in each column of the table. Setting it up was fairly straightforward as all I had to do was create a new MySQL database on my web server and tell TaskFreak! how to contact that database.
At the end of the day TaskFreak! is exactly what I need it to be and not much more. I wanted a simple, web based way to access my todo list. TaskFreak! delivers perfectly. I should also note that there are multi-user versions of TaskFreak! if that is the kind of solution one desires. Finally, I leave with a screen shot of the UI (as rendered by FireFox 3):
Back Home Again
Well, it seems as though the school year is basically over. I am still waiting to get grades in two of my classes, but I don’t expect any surprises from either of them so I guess that means I will graduate! I’m glad that I was able to get through college in 4 years. About half way through I decided to add Math as a major in combination with Computer Science. During the time I had to deal with the coursework, I second guessed my decision, but I am glad that I choose to do that. Certainly I plan to find a computer science related job, but I think the skills I have learned from my math classes will come in handy depending on what I do with computers. Even if they don’t, learning mathematics has taught me to think much more logically than I used to. As many programers know, being able to think logically is quite helpful when writing code.
The feeling of being “done” with school hasn’t fully set in though. I’m sure it will eventually, but I can’t really predict when that will be. Right now it just seems like another semester has ended and I have gone home to try and figure out what to do for the summer. Though, in my case, it’s what to do in terms of a job. I still have some time from now until there are a couple senior events and then graduation. I hope to make some more posts and work on my personal webpage in that time. Those plans aren’t really set it stone though so I may up doing something else instead.
It’s good to be back on Lightflame (my desktop computer) again. For the past weekish I was using only my laptop since I wanted to bring the motorcycle back to school and needed to bring Lightflame home when I had the car out at college. It was fun having the bike at college though, so it was worth forgoing the full power of my computer for a time.
New Domain
This is just a quick note that I finally got around to registering jintoreedwine.com and I plan to host my blog there. Since I already have this wordpress account and am continuing to use wordpress as the platform on my domain I will probably post all of my articles to both places at once. If you are a consistent reader it would probably be best to simply view the blog at the new domain. Finally, here is the URL: http://jintoreedwine.com/blog/
I know I haven’t written much lately, but hopefully I can find some time to write something interesting in the next week or two. I have a long list of topics… just need to find the time to write about them.
Google Street View — Cool or Creepy?
Most people reading this are probably familiar with Google Street View. Indeed, Street View has been around for a while now, at least in internet terms, but I have just gotten around to summarizing my thoughts on it now. Basically, Google Street View is where Google goes around in fancy cars and takes lots of pictures of the surrounding area, and then allows users to view a 360 degree view of the area just off the road. Some of the advantages to this sound appealing: such as being able to figure out exactly where a restaurant you are going to is located, or trying to view a particularly nasty intersection in advance. Still, I tend to find Google Street View to be more an invasion of privacy than anything else.
Certainly I am not the first person to point out the privacy issues with Street View. Clearly it would be infeasible for Google to go through and edit everyone out of the pictures in Street View so they just leave them all in there. This might not seem like a problem as what you do in public can be seen by anyone walking around anyway. That happens to be the argument of some, but I think it is flawed. That is, if you do something stupid in public only the people in the immediate area have even a chance of knowing what happened. With Street View, you picking your nose could be immortalized for all internet users to see.
Google responds to privacy complaints by saying that as long as you let them know which picture you don’t like they will take it take down. Honestly I think that is kind of lame. There is no way one would have time to go through the ever changing pictures to make sure there were not any unwanted photographs of them. Even though Google’s offer sounds all well and good they must know that very few people will actually have the mix of time, dedication, and luck to find the pictures they wish to be removed from Street View.
Finally, the argument has been given that someone, like a thief, could use Street View to plan their next robbery. At first I was 100% on board with this point, but now I am not so sure. Let us try and reason this out a little bit. First off, if someone is going to use Street View to plan this out we can assume they are already more advanced than the average robber. Next, if someone is going to rob your house it is likely that they are already near by, within short driving or walking distance. If they are not then it would be too much hassle to rob you when they could go somewhere closer. Since they are already close to you they could simply drive by your house and take their own pictures. After all, if they can use the internet we can assume they can use other forms of technology such as a digital camera. Therefore Street View doesn’t really aid a would be robber that much. Maybe it can help them decide whether to rob your house over your neighbors house, but chances are that they could have done it just as easily without Street View.
At the end of day I don’t really like Google Street View because I don’t think Google has solved all of the privacy issues with it. If there were a way for them to blur out all the people in it, or just remove them than I wouldn’t have any problems with it. However, it is unlikely Google would be willing to do that. Regardless of my feelings on the matter it doesn’t seem like Street View is going anywhere. I guess I will just duck if I see the Googlemoblie driving by…
.
A LaTeX User in a Microsoft Office World
It has been quite a while since I wrote my last post, but school has been keeping me as busy as always. Thankfully I have had more free time this semester than in past years, but I still seem to keep myself quite busy, and too burned out at the end of the day to write anything terribly thoughtful on the blog. However, I still keep a list of topics to write about for when I have the motivation
.
Today I wish to write about a recent trouble I have had relating to my usage of LaTeX. I have been using LaTeX for a little over 3 years now and I love every minute of it. The level of control that it gives me over documents is perfect for my needs. Table of contents, works cited, picture placement, and many other time wasting tasks are mostly automated by LaTeX. As such I can focus in on the true content of my document, which is usually all I care about anyway. Also, with the use of packages such as LaTeX Beamer I can also do PowerPoints with LaTeX. Finally, the fact that you can define custom commands is another huge time saver, and for a programmer, who loves functional decomposition, this is a wonderful tool.
So, now we have established why I use LaTeX, but here is where the trouble with LaTeX lies: most people don’t use LaTeX (shocker… I know). In many situations this does not matter due to the ubiquity of the PDF file. However, there have been times when I have been expected to simply have things in .doc (or these days .docx) format. For instance, a couple of weeks ago I wrote a history paper in LaTeX and right before the due date our teacher said that we needed to send our paper, in .doc format, to someone in the class for peer review. Thankfully it was only a history paper and didn’t need much modification to get into OpenOffice. Still, it was an inconvenience and it was due to the assumption that “everybody uses Microsoft Word”. In another instance, I have seen companies that will only accept your resume in .doc format, which seems a little funny considering these are all technology companies I am applying to and I would hope they could accept a PDF file at least. Luckily I had known this in advance and have my resume typed up in OpenOffice.
At any rate the point of all this is that it seems I may be forced, at some point, to use either Microsoft Word directly or preferably something like OpenOffice. It is not as though I cannot use these tools, but that I think LaTeX is far superior to them. This is a disappointing realization, but hopefully I will still have chances over the years to use LaTeX so that my skills won’t grow dull. I realize that LaTeX looks intimidating to new users, but it is quite empowering once one gets the hang of things.
Well, that’s all I have to say for now
.
Okami Review (Wii Version)
Just a few days ago I finished my way through Okami (Wii version) and it was one of the most excellent games I have played in a long time. Okami is primarily an Action/Adventure game with a bit of Platforming sprinkled about. The reason that Okami stands apart from games of the day is that it feels fresh. These days, after many years of gaming, I can play a game and be completely turned off to it if it is a clone of some other game I’ve already played. Once I get that “been there done that” feeling any game, no matter how execellent otherwise, becomes worthless to me.
Plot (No Spoilers): In the game Okami you play as the sun goddess, Amaterasu, as you try an restore a land filled with evil. When you first start you have just been resurrected… so to speak and your powers are quite weak. From that point on you spend the game fighting back Orochi (and other evils) as well as gathering “praise” from villagers, plant life, and animals. Throughout the game you are seeking out the ancient “brush techniques” which allow Amaterasu many different super natural powers.
Music: The music in Okami is quite good and does not seem to get terribly repetative as some game music tends to do. Most of the music is that kind of music that is normally aossicated with old or ancient Japan, which is fitting since the game takes place there. I suppose if you aren’t a real fan of that kind of music then it would drive you nuts, but the music has a relaxing feel to it and blends nicely into the background.
Brush Techniques: This is what really makes Okami stand out from other games in the genre. As you work your way through the game Amaterasu learns 13 “Celestrial Brush Techniques”, which are performed by drawing various patterns on the screen with the Wii mote. Each technique uses a certain amount of “ink” which you have a set reverse of. Ink levels recover slowly so you can’t use the techniques wastefully. I have heard that the controls for the brush techniques have been given mixed reviews. I had some trouble with the controls in the beginning, but after an hour or so I really enjoyed them and I think it is a very natural fit for the Wiimote. Again, for me, this was the major selling point of the game.
Controls: The controls for Okami felt pretty solid, but there were a few occasions where they were a little clunky and just got me downright annoyed. Overall I wouldn’t say they detract from the game, but the one or two times you run into trouble is quite irritating.
Praise: In Okami “praise” is how you are able to get more powerful over time. As you travel around the various lands helping villagers and restoring nature that has been corrupted you acumulate praise. This praise can be spent on upgrades to increase the amount of ink you carry (needed for brush techniques), to get more health, and for various other upgrades. Praise is fairly easy to come by and as long as you are paying attention you should aquire it naturally as you play the game. I never found myself in a situation where I had to grind for several hours just to be strong enough to continue.
Battles: Battles in Okami are faught when you approach floating scrolls of paper that look possessed (yup… best way I could describe it). When you get close enough a restrictive barrior is placed around the immediate area of the map and the enemies appear. At the beginning of the game you are given a simple weapon that looks like a shield and as you move through the game you get various new weapons for your arrsenal. There are 15 weapons total and you are allowed to have one main weapon and one sub weapon equipped. Each enemy in the battle has a certain amount of health that you can view via a health bar that is displayed. It is in your interest to finish each battle as fast as possible, and take as little damage as possible. This is because at the end you see a summary of how well you did, and get rewarded with extra money for being faster/taking less damage. The battle system helps keep them from feeling too stale and gives you a reason to improve your skills over time and learn the best way to defeat each enemey.
Overall: Okami is a great game with a very interesting and engaging story line that keeps you guessing as to what is going to happen next. The controls take some getting used to, but Okami is one of the few games that didn’t just add Wiimote features for the heck of it. Its fresh take on the Action/Adventure genre is refreshing especially given all the clones of this genre. I would recommend this game to anyone who likes the Legend of Zelda series, or anyone who enjoys Action/Adventure games.
Happy gaming
!
My Impressions of KDE 4.2
I have actually been meaning to write this post for a while now, but as usual school takes away most of my ambition to do things such as write to this blog or write fun code.
I have been using KDE 4.2 on both my Gentoo systems (laptop and desktop) since about a week after it was released. I still run it now and plan on running it until the next big release of KDE.
KDE 4.2 really took my breath away on many fronts. First of all the Phonon sound system works properly. This also means that I can use Amarok 2.0 which is a HUGE plus for me. In 4.1 I had all sorts of annoying problems getting Phonon to even play sound, and when it did it would block any other applications from using the sound card. Not so any more!
Also, the Plasma widgets are running much cleaner and faster. In KDE 4.1 they seemed to resize slowly and imprecisely. Now, not only do they resize correctly, but if you stick them off the screen in a strange way or place them in some funny manner they try to arrange themselves in a neat fashion. For someone as OCD as myself this feature is wonderful!
The fact that you can now use a Desktop View widget as a desktop is probably good news for some because it means easier access to icons. Personally, I don’t really care about that because I hate desktop icons to begin with. I launch all of my programs through the Run Command interface anyway.
I started using Kopete recently as well, and that has seen huge improvements since the last time I used it. I’m not sure when they changed the interface around and added all the animations, but Kopete has now replaced Pidgin as my default messaging client.
In terms of looks… well KDE 4.2 looks very much like KDE 4.1 or even 4.0. They updated the default theme a little bit, but it is still the same fundamental idea. This is fine with me. I love the new Oxygen theme and it gives a fresh look to my desktop.
As far as running KDE on my laptop is concerned I like 4.2 much better for basically one reason alone… The battery meter widget shows the time remaining now and is also aware of different processor throttling states. This is a great improvement over what I experienced in 4.1 and it makes KDE completely useable on my laptop. Also, since KDE is now more aware of dual screens and screen settings it made it nice to use while I was giving presentations with Okular (the new KDE pdf viewer) on my laptop. I’ve yet to play around with the GUI for changing the display settings (I use xrandr from the terminal) , but I hope to give that a try some time in the near future.
Dual screen support in terms of my desktop setup seems to be about the same as it had been, but I think that is because I am using the proprietary ATI driver and not the open source one. It works well enough that I don’t have any issues. I really like the feature where if you have a maximized window on one screen you can just drag it over the other screen and it stays maximized. Maybe other versions of KDE had this… but either way it is real handy.
I can hardly say enough good things about KDE 4.2 and I am really looking forward to the 4.3 release and some additional bug fixes.
Now that I have gone on and on about the positives I will list a few bugs and whatnot that I have found, but am confident they will be fixed in later releases. The first is that the “Run Command” feature seems to crash if I have KDE running for too long. I typically leave my system running for days at a time so I don’t like it when stuff like that breaks. Also, when I first installed KDE 4.2 I had to clear out all my KDE 4.1 settings before it would run correctly. This is only a minor annoyance, but if you have a bunch of settings that took forever to set up it would be a bit of a bummer to reload them all.
Overall I am extremely happy with KDE 4.2 and would reccomend it to those who have been holding off on account of stability issues. I use it everyday for doing school work and I have not run in to any problems that have caused me to need to downgrade to 4.1 or to switch away from it entirely. Great work KDE team!

