Tuesday, February 22, 2011

Brussel Sprouts!

This will be my first, and hopefully not only, blog post on food, because I love food and recently (thanks to my CSA box) my love of cooking has blossomed almost out of control.

Tonight I undertook the heretofore impossible task of cooking edible brussel sprouts. Mostly because they came in the CSA box and I hate wasting perfectly good CSA veggies. Oh, and I had eaten on raw recently, and yeah. They're awesome.



yeah, that just happened.

However, if this is indeed the case, why is it that so many people consider them decidedly NOT AWESOME? My totally awesome theory is that, besides the obvious "YUCK VEGGIES YAY MCDDONALD'S" conditioning we all go through as American children, the very simple fact of the matter is that most people just really don't know how to cook veggies. This is not meant to be disparaging, as I'm sure all your mothers were a Saint, but how many of you as children ate canned veggies prepared in exactly the same way as a side dish to the meat? Sure, steams green beans are good, but you had the same green beans every time you had pork chops.

Part of this has to do with the desire for consistent food, the primary reason why people will eat at McDonald's when they're traveling. This also, in my mind, contributes to the reason why meat is so popular in the first place (beyond the fact that it's technically a cheap luxury item)...you can cook meat 100 different ways and still be able to tell what kind of meat it is, for the most part. (Good article that touches on this subject).

Besides that, learning how to cook vegetables well is very much a matter of knowing not only a wide variety of cooking styles, but to be able to juggle a variety of spices. Both of these require experience, which requires both time and money, both of which many people are in short supply of.

The solution? No idea. Though the WSJ prediction in this article of meat becoming an expensive luxury item in the future will likely help.

Tuesday, February 8, 2011

More OS Tutorials and Motivation

http://www.osdever.net/tutorials/index

One word: awesome. I'm going to try and spend some time working through these articles in my free time. I've always been interested in OS development but never felt like the topic was that approachable, but things like this and the MikeOS tutorial I talked about before have completely changed my mind about this.

Related to this train of thought...I've been powering through Outliers by Malcolm Gladwell. This book is incredible. If you haven't read it, read it. It does a great job of destroying the misconception that successful people just have their knowledge and skills beamed into their head, which is something I still have to tell myself regularly to this day.

Another great link: http://www.ted.com/talks/christopher_mcdougall_are_we_born_to_run.html. This is one of the best TED Talks I've seen in a while, mainly because it very neatly distills the appeal of participating in AustinH3. It also makes me a bit sad at how far we've come from what our bodies are built for, despite all the amazing science and technology we've achieved. But that's a train of thought for a deeper mood.

Wednesday, January 26, 2011

Sneaky, Ninja C++

Last night I did a few more problems out of How Not To Program in C++ and really liked the last one I did before I went to bed. Apparently in C++, when you have a base class and a derived class, defining a function in the derived class sets *ALL* the functions of the same name to hidden in the base class, no matter what datatypes said function takes as an argument. I loved this problem, it was such a sneaky specification! Every time I do a problem out of this book I'm delighted by all the obscure little compiler rules and datatype issues the deceptively simple programs illustrate. Just out of curiosity, I whipped up a similar program in Java, and it seems to have a similar problem; in fact, the compiler gave me an identical error, which was amusing.

Anyway, besides amusing myself with trivial C++ exercises, I've started reading In the Miso Soup by Ryu Murakami for the second (or maybe third?) time. I was interested in reading it in college, but a friend of mine had divuldged what I felt to be the entire plot, so I was frustrated enough to avoid it until recently, when I decided it was ridiculous to not read a 200-page, well regarded book just because I knew part of the plot. I mean, if that were the case, why bother reading any of the classics I enjoyed so deeply? Who doesn't know the plot of The Odyssey already? So I picked it up from the library, and so far I really enjoy it, though I feel at times the translation may not be amazing...some of the writing just feels forced or stilted. Maybe it was intentional though, I'll have to read more on the author.

Signing off for now.

Monday, January 24, 2011

Update on the Resolution Thing

Unfortunately, as I expected, I haven't been able to keep up with my resolutions. I'm still working on my third (formally second) book (about 84% of the way through, almost there...), and I haven't been keeping up with Project Euler at all. C'est la vie. I'm hoping to make some headway on both this week.

In the meantime, I've started working with the Android platform, which is exciting and engaging. It will be a good base for a personal project I've been thinking about for a while, as well as allowing me to work with Java again, which is always a treat. Not that I'm a huge fan of Java, but being out of school certainly changes your perspective on how "hardcore" you need to be! I will forever tell anyone who will listen that spending your time learning all the low-level magic is absolutely worth it, but it's nice to let your hair down and have a little fun with a slightly higher-level programming language once in a while, especially one you haven't dabbled in for a while.

Anyway, back to work.

Friday, January 21, 2011

Book #2, In far more than a week

I finally finished my second book for my 52 book challenge, but only because it was a "GRAPHIC NOVEL" that was only about 80 pages. Ah well, at least I'm making up a little time. Still working on Stories, about 75% of the way through, but the going has been slow because it's very hard to find time to just sit and read, even though I'm finally starting to enjoy it as much as I did when I was a child.

The second book was Signal to Noise, written by Neil Gaiman and some other guy who isn't Neil Gaiman for some reason. It was a descent story framed by beautiful illustrations; the story involved a film writer who was dying. Very nice, not necessarily easily digestible, but very quiet. Recommended.

Wednesday, January 19, 2011

Android Developing!

Short post today, but I've started an Android project at work and I'm really enjoying working with the platform. I never bothered to approach it before, since I didn't have a smart phone at the time and I was never interested in general, but I wish I had started looking at it soon. It's very fun and rather intuitive, especially when using the Eclipse plug-in (me enjoying Eclipse? Apparently it can happen). After figuring out the basics, I'm excited to try and start working on a few personal projects for Android. Away!

Thursday, January 13, 2011

Low-Level, Shmoe-Level

http://mikeos.berlios.de/write-your-own-os.html

Yeah. That's what I'm doing tonight. Because seriously.

Low-level is one of my many weaknesses, so things like this really appeal to me. Along with this, I've been working on getting through How Not To Program in C++ and Write Great Code, in parallel, and it has been a wonderful surprise how well the two books compliment each other. I was reading chunks of Write Great Code on an airplane, and when I finally got back around to following the code samples in How Not To Program in C++, I realized I had JUST read a section that almost directly related to the bug in the sample program. Lovely! I can't express how beneficial it is to be reading a book outlining abstract low-level concepts, and go to another book that shows a real-world example of how these concepts play out in an actual programming sample. Sure, the samples are rather small and arguably trivial, but it's a base that I have been woefully ignorant in. Operating systems in particular is another area I need some edumacation in, so I'm hoping that once I work through this example, I'll be able to approach the O'Reilly Linux Kernel book I have sitting in my room right now.

Here's to further education!

UPDATE: I completed this tutorial last night in a highly distracted hour, and it was excellent. Clear, concise, with a great sample, and delivered exactly what it promised...a bare-bones, functioning OS. If this catches your interest AT ALL, work through it and download the MikeOS source code. Very satisfying learning experience.

Thursday, January 6, 2011

When is it OK to "cheat"?

As I mentioned, one of my New Year's resolutions is to try and get 1 Project Euler problem done per week. I should openly admit at this point that I have been painfully slow in solving even the easiest of the problems, and recently I've been stuck on Problem #3, which requires you to find the largest prime factor of a big number. I've been struggling to figure out the best way to approach it, and right now I have a program that literally loops through a list of prime numbers and prints them. Pathetic.

So, in the interest of getting a different perspective, I Googled the problem. I felt uncomfortable doing this. I feel like I should be able to complete these problems with no help, if I just sit and think about it long enough, but obviously this was getting me nowhere. I found a solution that I'm going to implement that makes far more sense, is cleaner, and isn't pathetically brute-force like my current code.

So, the question that lingers in my mind is, how important was it that I worked it out myself vs. looked up a blogged solution vs. just looked up sample code? At what point am I really just cheating myself in the interest of not having to think too much? Is it even that important in this case?

I'm working on Project Euler to improve my shoddy math skills, as well as attempting to keep up with fairly basic programming (usually to learn how to use new languages as well, such as Lisp), so I suppose as long as I still accomplish those goals, it's all good.

Wednesday, January 5, 2011

On Distractions

I have a lot of trouble staying focused, largely due to the fact that I work on a nice computer with full Internet access in a very laid-back work environment. However, my lack of productivity is a constant source of frustration and stress, so I've been working on turning myself into a more focused, productive worker.

I made three major changes in my work life that have made a massive difference. First of all, I cut my coffee habit cold turkey. Like, completely. It was less rough than I expected, especially since I'm still allowing myself to have a cup in the morning (before work, none during), and every once in a while I'll sneak a coke during lunch (I also drink tea all day). I noticed immediately, however, that I was far less irritable and distract-able. Besides that, I've freed myself from the caffeine roller-coaster that often resulted in frustration and many hours wasted.

Next, I started keeping a Google Docs TODO list, that I keep open on my browser at all times. It doesn't necessarily keep me focused exactly, but it does allow me to get back on track when I do get distracted. The other benefit of the TODO list is that if I think of something I need to do that's not directly related to work, I add it to the list, rather than breaking my concentration and starting a massive Internet-tangent on a whim.

The last step was to start running during lunch, which gives me the perfect chance to clear my head and come back to work refreshed and focused. Not much else to say about this other than that it works.

Also, I'm only about 1/4 of the way through book 2, but I'm making great progress on it. Hope to have another "COMPLETED" update sooner rather than later!

Tuesday, January 4, 2011

Book a Week #1 Complete!

Ok, so I cheated slightly and started with a book I was over half-way finished with. Sue me. Next up is Neil Gaiman's anthology, "Stories". It weighs in at a little over 400 pages, but I'm confident I'll breeze through it. So far the stories are pretty light reading (nice book to start the year out with). After that I'm planning to dig into Huxley's "Brave New World", which I bought recently.

I wanted to post something about motivations and such but I'm not motivated enough right now to do so (oh-ho!). More to come sooner rather than later.

Monday, January 3, 2011

Book a Week, #1

I missed posting this weekend due to being extremely busy, but I'm back and have started my book-a-week resolution by (almost) finishing A Guide to the Good Life: The Ancient Art of Stoic Joy by William B. Irvine. I intentionally linked to the BoingBoing article where I first heard about this book; the author made a few guest posts on the site later that convinced me to buy it. I assume a quick search will pull up his posts on the site, they're excellent.

The intention of the book is to not only introduce Stoicism, but provide a guide to becoming a practicing Stoic in modern times. Although I disagreed with the author on a few different points, I enjoyed the overall message of the book, and appreciated his effort to illustrate how living without a coherent philosophy of life is detrimental to our pursuit of happiness.

The philosophy focuses on changing yourself and how you handle your own emotions and desires, rather than attempting to find satisfaction in things external to yourself. I've been working to decrease the negativity and anxiety I've spent my life dealing with, and I found a lot of his advice very helpful (and was pleasantly surprised to realize I was already doing most of what he suggested).

After I complete this book, next up will be "Stories", a short fantasy story collection put together by Neil Gaiman and someone else whose name escapes me (links and so on when I start it).