market analytics, I'll put some time into applying ANN to it.
*** DONE Out of the Tar Pit (paper)
- State "DONE" [2012-09-17 Mon 01:26]
- State "STARTED" [2012-09-15 Sat 23:06]
A paper on software complexity, declaring two types of complexity (state and
control).
http://shaffner.us/cs/papers/tarpit.pdf
Excellent paper and a great reference for anti-TDD arguments (among other
things). I would possibly reclassify the control complexity group as time
though, thus making the distinction between stateless control and stateful
time-dependence. In this sense, time-base operations are just another form of
state. I'm not quite sold on subscribing to an functional-relation programming
paradigm, however. I think it's been proved by now that pure functional
programming's added accidental complexity is worth the trade-off.
*** DONE Ten Common Hadoopable Problems: Real World Hadoop Use Cases (paper)
- State "DONE" [2012-09-18 Tue 14:03]
- State "STARTED" [2012-09-18 Tue 13:44]
I have a pretty intuitive feel these days for the kinds of problems that don't
work or don't work well on MapReduce, but this may help formalize it some.
I thought this was going to be a real white paper, but it's actually hype-heavy
Cloudera spam. There's some things wrong with it (e.g. data transformations do
not necessarily mean data loss). Even this title is a lie since these aren't
really "common" problems, they're specific examples. Most are pretty simple
too or even big data problems.

Maybe the private sector isn't as clueless as my environment, but I've only
ever seen clouds misapplied and projects fail because of it.
*** DONE ANSI Common Lisp
- State "DONE" [2012-09-18 Tue 14:15]
- State "STARTED" [2011-05-02 Mon 10:48]
I've read various parts of this in the past, but I'd like to start over and do
the whole thing.
Notes:
- eql compares if parameters reference the same object. equal compares if they
evaluate to the same value.
- Dotted lists: Normal lists are "proper lists", meaning the list x is proper
where it's nil or the cdr x is also a proper list. A dotted list is where
the cdr is just a value.
- Graham's suggested comment system is the same as mine, except I don't use ;;;
for function comments, but rather rarely for demarcating sections within
files.
Finished reading. Despite PCL's popularity, I still think this book is the
better CL intro in most ways. I've done some of the problems so far. I also
lost a few chapters worth of my solutions that were in my warzone notebooks
that are now gone, so redoing them would be needed.
Update 2012-09-18: I'm calling this done for now since I've been using Clojure
at work. I know all the fundamentals of Lisp variants. The only thing I'm
really missing is a lot of practice, ecological knowledge, and some of the
advanced topics. I'm currently trying to decide whether to switch to Clojure
as my primary Lisp. If so, I probably won't bother finishing these problems.
*** DONE Practical Common Lisp
- State "DONE" [2012-09-18 Tue 14:18]
- State "STARTED" [2009-08-29 Sat 18:10]
In the Lisp world, this book seems to have displaced "ANSI Common Lisp" as the
de facto introductory text. It's pretty good at that, provided the Lisp
amateur follows it up with a book that contains actual exercises or devises his
own. Macros, in particular, receive a well done survey herein.
(Mostly) SLIME tips picked up while coding here:
- In the REPL, use `,' then `cd' to change *default-pathname-defaults*
- C-M-q re-indents region. C-c M-q re-indents sexp at point.
- Setting *print-pretty* controls formatting of macro expansions. SBCL
defaults this to T.
- M-. navigates to function definition.
- Use (break) forms to insert breakpoints that SLDB will pick up.
- C-c C-w c: slime-who-calls. List functions that call the given function
(default: function under point).
- C-]: slime-close-all-parens-in-sexp.
Tried to program ahead of the examples some and took more detailed notes in
~/src/lisp/pcl. While otherwise good, the lack of exercises makes it more like
watching someone else code than learning it by doing. I intend to come back
and reread this later to make sure all the advice within sticks.
Update 2012-09-18: As mentioned in the ACL update, I'm currently undecided
whether I want to perma-switch to Clojure or not. Both CL and Clojure have
their pros/cons, so it's a tough choice. If I switch back to CL, I left off
here at the CLOS chapters.
*** DONE On the Cruelty of Really Teaching Computer Science
- State "DONE" [2012-11-28 Wed 19:28]
- State "STARTED" [2012-11-28 Wed 17:49]
Text from a speech by E.W. Dijkstra proposing introducing programming through
an uninterpreted formal system.
An okay read. Unfortunately, not only has this advice been ignored, we've
actually gone in the opposite direction since 1988.
*** DONE Hadoop Real World Solutions Cookbook
- State "DONE" [2012-12-10 Mon 10:03]
- State "STARTED" [2012-10-15 Mon 10:08]
Doing a technical review of this book. Also need to write a blurb about self
for inclusion in it somewhere.
This is a recipes book, and like pretty much all of them, it's really bad.
These are short shelf-life impulse buys for junior developers, complete n00bs,
and guys who just got a job in something they don't know anything about. In
retrospect, I'm a bit ashamed to be involved in making one and will not
participate in them in the future.
** Books: Math
*** CANCELED Elementary Number Theory
- State "CANCELED" [2012-09-17 Mon 11:58]
- State "STARTED" [2011-06-13 Mon 06:22]
This is an old (1920s) hard copy book I had laying around. Reading it on the
DC Metro, since I need a book to read and I didn't plan to do the exercises in
here anyway (they're okay, just suboptimal time investments). So, I'll get
what I can out of it with as close read as one can manage while seated within a
sweaty armpit of humanity.
Gave up on this as it just jumps from one random theorem to another without
much overall structure. This isn't a useless book, but I'm sure I can find a
better one on this subject. However, I've found that number theory doesn't
really interest me as much as it used to, so I'll probably at most do a quick
modern overview of it and call it done.
** Books: General Non-fiction
*** DONE The Science of Getting Rich
- State "DONE" [2012-01-31 Tue 14:52]
- State "STARTED" [2012-01-31 Tue 02:50]
Self-help nonsense and religious k00kskr33d. No useful info here.
*** DONE Almost Perfect
- State "DONE" [2012-02-09 Thu 15:29]
- State "STARTED" [2012-02-05 Sun 14:58]
The story of the rise and fall of WordPerfect. Online at:
http://www.wordplace.com/ap/
While not expertly written and not from the optimal perspective, this is still
a really good read. A good case study of corporate growth in the software
industry and the almost inevitable fall of empires within it.
*** DONE Future of Science
- State "DONE" [2012-03-03 Sat 20:29]
- State "STARTED" [2012-03-03 Sat 21:10]
By Ben Bova. More of an essay. A little over-optimistic and outdated, but
fusion reactors definitely rule.
*** DONE Ghost Wars
- State "DONE" [2012-03-10 Sat 05:45]
- State "STARTED" [2011-08-25 Thu 22:41]
A recent military history of Afghanistan up to 2001.
If I don't finish this by the time I leave Afghanistan, cancel it. I'm pretty
sure I won't ever care about the craphole again after this.
Update: Never finished this in time, which is okay by me.
*** DONE The Constitution of the United States of America
- State "DONE" [2012-03-09 Fri 15:36]
- State "STARTED" [2012-03-09 Fri 14:37]
Written in plain English, which always made me wonder why Constitutional
scholars were needed to interpret it. While a little too expansive in scope,
it seems like this would make for an okay country to live in (at least, by
comparison), were someone ever to try doing so.
*** DONE The Prince
- State "DONE" [2012-08-08 Wed 05:22]
- State "STARTED" [2012-01-20 Fri 15:11]
Recommended by an NGA rep I met in Afghanistan. He claims this is applicable
as a guidebook for interaction with groups and individuals in his work and side
businesses.
While most of these examples are no longer timely, there's some interesting
observations here. The parallels between conquering 16th century France and
modern Afghanistan are hard to miss. Though the reasoning is a bit sloppy,
it's certainly better than most modern texts in what's now considered political
"science".
Read most of this, and I think I get the gist of it enough.
*** DONE Phrack
- State "DONE" [2012-08-08 Wed 05:48]
- State "STARTED" [2012-03-09 Fri 12:19]
Read the whole collection, but skip anything obsolete or boring.
http://www.textfiles.com/magazines/PHRACK/
After reading a lot of useless garbage, decided to start reading backwards from
the latest issue instead and just quitting when stuff gets hopelessly
outdated. Gave up after finding only more garbage. My analysis is that there
really isn't much to learn here, unless you were really into security (which
I'm not). Even then, a lot of the actual info here is just lifted from other
sources, and I'm not convinced most of the writers of this aren't semi-n00bs
themselves. Like, if you aren't smart enough to convert all your linebreaks to
either the Unix or Windows version, then I probably don't have much to learn
from you.
*** DONE The History of the Decline and Fall of the Roman Empire
- State "DONE" [2012-08-08 Wed 05:59]
- State "STARTED" [2012-06-10 Sun 19:59]
Listening to the Librivox audiobook of this while in the car. Like all
audiobooks of any worth, I'll listen to this at least twice (my reasoning for
this is that since I only listen to audiobooks while multitasking, the second
listening fills in any attention gaps).
The main value I got from this was experiencing the really awesome writing.
I've also learned that I'm not very interested in the particulars of the
history of ancient Rome. I'm giving up about 75% in though, since I can't bear
to listen to some of the really annoying Librivox readers anymore. I'll just
go back to thinking in silence while driving.
*** DONE Getting to Yes: Negotiating Agreement Without Giving In
- State "DONE" [2012-08-28 Tue 00:16]
- State "STARTED" [2012-02-21 Tue 12:08]
This is short enough to be worth the risk of a couple nights of reading.
What I can maybe take away from this book is illustrated by this example of
negotiating for rent. I wouldn't haggle directly on price in the standard way.
Instead, I'd say something like, "Your employer wants to get this room
occupied. I would maybe like to occupy it, as it seems acceptable to me.
Let's work together on making this deal happen in a way that's acceptable to
all parties." This does two things: It separates the employee from his
employer and it makes it so you're both working together to make this happen.
This book has successfully convinced me that confrontational negotiating is
almost always unnecessary. The only exception to this is when the other party
insists on thinking that such a method is the only way and employs it. In most
of those situations, it's probably better to just walk away if explicitly
stating a cooperating alternative approach doesn't work.
*** DONE Die Broke: A Radical Four-Part Financial Plan
- State "DONE" [2012-08-28 Tue 00:16]
- State "STARTED" [2012-03-15 Thu 09:46]
Seemed like it might have an idea or two I could use, but I mainly started this
to pass the time on a 13 hour flight.
It's okay, but a lot of the info here is pretty basic and others I actively
disagree with. I didn't finish this, but read enough that I consider it done.
*** CANCELED Language, Truth, and Logic
- State "CANCELED" [2012-09-17 Mon 00:47]
This is the original philosophical work introducing the concept of
"verifiability". While of historical interest, it has since been superseded by
Popperian falsifiability.
Read a little, but this is pretty much crap.
*** DONE The Colt 1911 Pistol
- State "DONE" [2012-09-26 Wed 17:00]
- State "STARTED" [2012-09-26 Wed 12:58]
I had recently picked up a Colt Government Model. I'm already reasonably
familiar with standard 1911 operation, parts, and history, so this is just for
entertainment. This is an Osprey book, so I don't expect to learn much. They
tend to be rather shallow and picture-heavy.
This is about average for an Osprey book. It may be a little sloppier than
normal, since I spotted at one (very minor) technical error and it contains
personal references to the author.
*** DONE The True Believer: Thoughts on the Nature of Mass Movements
- State "DONE" [2012-09-26 Wed 17:50]
- State "STARTED" [2012-09-17 Mon 01:36]
A pre-memetics attempt at explaining mass movements, written by Eric Hoffer.
This is also on Allen Scarbrough's list of 25 books to "know just about
everything", which I may read more (but not all) entries from.
Despite lacking the benefit of decades of memetics thought, it's hard to find
much wrong with the content here, and this is full of great observations.
I've been thinking about how one would go about attacking a memeplex (either in
an individual or in society), and this book's emigration suggestion for
tackling it at a societal level is a good point I hadn't considered. Perhaps
in a world absent of travel restrictions, memeplexes would have a much harder
time taking root (though I might argue if a global parasitic memeplex arose, it
could be quite dangerous).
*** DONE Predictably Irrational: The Hidden Forces that Shape Our Decisions
- State "DONE" [2012-10-14 Sun 12:19]
- State "STARTED" [2012-10-01 Mon 10:30]
A analysis on irrational behavior that is fairly universal. The problem of not
just not questioning certain decisions, but not even thinking they are
something that is to be questioned, is something I come across regularly when I
discover yet another false or suboptimal implicit axiom I've been operating
under. Maybe this book will help some in finding any remaining ones, making it
easier to spot them, or at least provide useful models for thinking about them.
Notes:
- Relativity: Watch out for decoy comparison goods/services. These exist only
to frame the internal comparison being made by the buyer.
- Price anchors: Always be wary of these. It's probably safer to just default
to some near ridiculous value for any goods or services and use that as my
anchor, thus negating any externally introduced ones. Even question whether
something should be paid for at all. Perhaps the anchor should be zero or
maybe I should get paid for it (driving is a good example of something people
pay a lot of money for, but wouldn't accept a job doing).
- Remunerate people with small gifts instead of money. Money remunerations
open up market analysis of pay. Offering nothing makes the transaction based
on social norms. Giving a gift in exchange could be a way to get services
that ordinarily would only be done by paying. Gift value also matters
little, provided it's not mentioned.
- This claims the most effective counter-procrastination is to impose
artificial deadlines (preferably with actual penalties). I agree with this
and use this method sometimes for really hard stuff, but I still think it's
symptom-treating.
- Closing doors is often more a net benefit than keeping too many open.
Probably good advice for me with my many technical interests.
Complaints:
- The fact that actors (even a majority of them) in a market are misinformed or
unable to properly value goods does not mean that a free market is
impossible, it just means that it will be suboptimal proportional to the
stupidity of the individuals composing it. Furthermore, a free market
doesn't mean that you can count on the market as a signaling mechanism for
optimizing your own utility. A market is free simply when it's not distorted
by regulation, laws, and taxes. You'd hope an economist would know this.
- Too many personal narratives. The worst of this are personal stories and
opinions I really couldn't care less about. Less awful but still annoying is
the over-focus of experiments the author's been involved in. I want to hear
about the best illustrations of these ideas, not just ones that glorify one
guy's career.
- Too much useless side info. Stay on topic and stop wasting my time.
- Overall, I don't really appreciate the sloppy, casual writing here.
Overall this book is pretty good in some places, but not that useful (at least
for me) in others. The latter situations are partly because many of these
things are already concepts I'm viscerally aware of and have been thinking
about for years.
** Books: Fiction
*** DONE Rogue Moon
- State "DONE" [2012-01-07 Sat 15:38]
- State "STARTED" [2011-12-23 Fri 16:22]
Worth reading, but the ending just kind of drifts off. More of a character
study, with the hard scifi just being background.
*** DONE Eifelheim
- State "DONE" [2012-01-19 Thu 11:05]
- State "STARTED" [2012-01-02 Mon 04:03]
Well researched and well written, but also long-winded and boring.
*** DONE The Day the Aliens Came
- State "DONE" [2012-03-04 Sun 12:01]
- State "STARTED" [2012-03-03 Sat 21:15]
Not great, but the unpredictable writing style here is interesting. Might give
another work by Robert Sheckley a chance sometime. This was just a short
story, but he has some novels too.
*** DONE Neil Gaiman short stories
- State "DONE" [2012-03-04 Sun 19:06]
- State "STARTED" [2012-03-04 Sun 12:22]
Gave a few of these a try since I'm considering reading American Gods.
- Feeders and Eaters: Okay, but doesn't really go anywhere interesting.
- I, Cthulhu: Mildly entertaining, I guess. Could've been done much better,
but does have a few good examples of Lovecraftian writing.
- Snow, Glass, Apples: Kinda crappy.
- Eaten: Whatever the intent was here, it didn't work.
*** DONE Brian Aldiss short stories
- State "DONE" [2012-03-09 Fri 19:54]
- State "STARTED" [2012-03-06 Tue 13:09]
- Apogee Again: Meh.
- A Whiter Mars: A couple of random rants delivered in conversation form.
Doesn't work well at all. This author should just get a blog for stuff like
this.
- Beef: More shameless preaching.
- Dark Society: Not that great.
- Galaxy Zee: Mmph.
- Headless: Bleh.
- III: Okay.
- Marvels of Utopia: Same formula as A Whiter Mars. Still doesn't work.
- Sunlight: Crap.
*** DONE Who Needs Insurance
- State "DONE" [2012-03-09 Fri 17:41]
- State "STARTED" [2012-03-09 Fri 15:39]
Not terrible, but also not good.
*** DONE Understand
- State "DONE" [2012-05-16 Wed 00:07]
- State "STARTED" [2012-05-15 Tue 23:03]
A novelette by Ted Chiang.
http://www.infinityplus.co.uk/stories/under.htm
This is an awesome story and possibly one of the best pieces of fiction I've
ever read. Does a great job of getting around the "can't write a character
smarter than yourself" syndrome and is a creative speculation on the nature of
super-intelligence.
I'm impressed. I'll keep an eye on this author to see if he produces anything
else. I may also pick up a hardcopy of his book "Stories of Your Life and
Others".
*** DONE Scottish Folk and Fairy Tales
- State "DONE" [2012-05-20 Sun 03:35]
- State "STARTED" [2011-10-01 Sat 14:48]
These stories are pretty stupid, but this book came in handy while stuck with
dead laptop batteries, plus it was small enough to carry along as backup.
*** DONE The Stars My Destination
- State "DONE" [2012-05-25 Fri 09:00]
- State "STARTED" [2012-04-22 Sun 00:14]
Found this on a list of supposedly great hard scifi novels. It's not terrible,
but bad enough for me to quit at chapter 8.
This has a problem that kills a lot of books for me. The problem is with
unintelligent characters, especially main characters. A book that focuses on
the details of someone dumb just isn't interesting unless it makes up for it
significantly in some other way. The main problem with that is that stupidity
is universally accessible (I can just go outside or read Usenet if I want to
experience that). The books I really like all have in common some insight into
intelligent thought. Of course, this means that the author himself will have
to be someone intelligent too (reference my theory that it's impossible to
convincingly write a character smarter than you). This means that most books
are effectively trash, but that's just accepting reality.
While I'm changing my reading tasking rules, I'm also adding the requirement
that I have a rationale for adding any task. If I don't have an expectation
for what I intend to get out of it, then I'm probably wandering aimlessly.
This goal may not be met of course, but analyzing what went wrong in either my
expectations or its execution will allow optimization of future tasking.
Retroactively applying this to all un-started tasks.
*** DONE Destination: Void series
- State "DONE" [2012-05-25 Fri 09:01]
- State "STARTED" [2011-10-22 Sat 13:10]
A four part series by Frank Herbert.
- Destination: Void: Great book. Not perfect, has some technical anachronisms,
and I'm not sure the ending works, but reading this was definitely a
pleasure. Definitely among the best fiction I read in 2011.
- The Jesus Incident: A sad, unworthy sequel. This storyline probably should
have just ended. Quitting half-way in.
- The Lazarus Effect: Canceled.
- The Ascension Factor: Canceled.
*** DONE Destiny's Children series
- State "DONE" [2012-06-28 Thu 09:41]
- State "STARTED" [2012-06-24 Sun 00:29]
At least Coalescent looks like it might be interesting. I like BDO (artifact)
hard scifi, and since it's so rare, I'll give this a look. My other attempts
at Baxter works have all been disappointments though, so the hand will be on
the eject button.
- Coalescent: Has the overused trope of interleaved plots from different time
periods in alternating chapters. Some of this is okay, but it's mostly
dreadfully dull. A shame, since the subject matter (eusociality) is actually
interesting and deserves better than this.
- Exultant: Read 18% of this but it's garbage, so I'm quitting this series.
- Transcendent: Skipping.
- Resplendent: Skipping.
The generic titles of these books reflect the generic nothing that happens in
them. Occasionally, Baxter books deal with interesting subjects, but apart
from main idea selection, his writings pretty much suck.
*** DONE Incandescence
- State "DONE" [2012-07-16 Mon 01:57]
- State "STARTED" [2012-07-01 Sun 22:37]
The most potentially interesting of unread Greg Egan novels.
A bit dull and uneventful. Quite the letdown. Half of the novel involves a
society too far in the future, and the other half involves one too primitive to
be interesting. This probably could have worked had it been a mystery novel
regarding the enigmatic galactic core civilization.
*** DONE The End of Eternity
- State "DONE" [2012-08-01 Wed 09:06]
- State "STARTED" [2012-07-18 Wed 00:54]
Another Asimov book, which probably means it'll be worth reading. Normally, I
would give a book on time travel and social engineering a pass otherwise. This
seemed the most promising of his works unread by me.
Read 25% of this, but it seemed to be going nowhere and was in a thoroughly
non-compelling universe. Maybe it gets awesome later, but there's no
indication of that, so I'm giving up.
*** DONE Manna
- State "DONE" [2012-08-24 Fri 23:27]
- State "STARTED" [2012-08-24 Fri 21:56]
Speculation on the effects of increased automation.
http://marshallbrain.com/manna1.htm
Not a bad idea for a story, but is horribly written.
*** CANCELED Zendegi
- State "CANCELED" [2012-08-27 Mon 23:30]
This appears to be the least interesting of the remaining unread Greg Egan
books, largely because I don't care about Iranian politics. I'll give it a try
though.
Canceling due to my new rule about not reading politics fiction.
*** CANCELED Teranesia
- State "CANCELED" [2012-08-27 Mon 23:31]
The second most potentially interesting of unread Greg Egan novels. I'm a bit
tepid on the South-East Asian politics much of the book focuses on though.
Canceling due to my new rule about not reading politics fiction.
*** CANCELED The Sky Road
- State "CANCELED" [2012-08-27 Mon 23:34]
- State "STARTED" [2012-08-08 Wed 06:16]
I'd actually started this some unknown time last year. It's been rather
uninteresting so far though. Will give this a focused final effort. I may
cancel future efforts on MacLeod books though, due to his annoying politics (if
I cared about politics, I'd read books about that, not hard scifi).
Quitting due to the politics. This seems like it may have been okay, but I
can't seem to muster the motivation to wade through the leftist crap.

*** CANCELED The January Dancer
- State "CANCELED" [2012-08-28 Tue 00:58]
Found this on a "best of" list and it stuck out since it was potentially
another BDO scifi novel, though I'm prioritizing this lower due to it taking
place too far in the future.
Couldn't find a copy and it's not worth buying given the likelihood of suckage.
*** DONE Hull Zero Three
- State "DONE" [2012-09-11 Tue 23:40]
- State "STARTED" [2012-09-09 Sun 00:54]
Another generation ship novel.
This is okay, but not really my thing. It's less of a scifi novel, and more of
an epic journey type story. The resolution of the mysteries in it aren't all
that amazing either. Not really worth the time, at least for me.
*** DONE The Inverted World
- State "DONE" [2012-09-15 Sat 21:22]
- State "STARTED" [2012-09-11 Tue 23:59]
Looks like this could be an interesting concept for a hard scifi novel.
Competently executed, but not very interesting overall. Has the same problems
most post-apocalyptic novels have where any hard scifi is drowned out by
survivalism.
*** DONE The World at the End of Time
- State "DONE" [2012-09-17 Mon 00:46]
- State "STARTED" [2012-09-16 Sun 11:56]
Similar concept to Tau Zero. The author, Frederick Pohl, might have some other
good works too, if I like this one. In particular, Gateway looks good.
The ETI in the book is pretty annoying. Otherwise, this is pretty good and
filled with decent hard scifi. It's short of being really good though.
*** DONE Robopocalypse
- State "DONE" [2012-09-30 Sun 14:38]
- State "STARTED" [2012-09-26 Wed 20:46]
A hard scifi AI apocalypse novel.
Pretty much a direct rip-off of World War Z, and not really that great of one.
It's readable, but not worth the time.
*** DONE Forgotten Realms: Icewind Dale series
- State "DONE" [2012-11-09 Fri 13:52]
- State "STARTED" [2012-10-16 Tue 01:35]
I like the IWD lore in the games (mostly), so maybe give these a try.
Supposedly these are good for books in the ADnD genre, but I'm not sure I can
trust fanboi opinions.
- The Crystal Shard: Has some okay qualities but is mostly silly and juvenile
with a predictable plot and stereotypical, 1-dimensional characters. Decided
to finish this, but not read the other two. The other books in this series
don't actually take place in IWD either.
- Streams of Silver: Skipping.
- The Halfling's Gem: Skipping.
I think I'm maybe outgrowing this mythos.  The editions are also moving in the wrong
direction, towards a generic FF-style level grind. I guess I got into it
because of the BG and IWD series, but since no games like those have been made
since then, I probably have as much reason to follow it as before them. There
are more creative fictional universes. However, I don't seem to enjoy
immersion in any like I once did (like 10 years ago), mostly due to being able
to find so many glaring faults. In any case, I'll probably ignore ADnD from
now on except for a final IWD and BG series playthrough at some point.
*** DONE The Listeners
- State "DONE" [2012-11-27 Tue 02:50]
- State "STARTED" [2012-11-25 Sun 01:02]
Another hard scifi ETI signal novel.
Has some decent writing at points, but a lot of bland filler. More importantly
though, this is really more about the upright character of scientists and less
about anything scifi.
*** CANCELED The Virginian
- State "CANCELED" [2012-12-01 Sat 14:18]
- State "STARTED" [2012-11-29 Thu 09:35]
I've been meaning to at least try one western novel. This is supposedly a
classic example of it.
This is unreadable, dull pablum, so I'm quitting early.
** Technology and software
*** CANCELED Android SDK
- State "CANCELED" [2012-02-15 Wed 04:38]
- State "STARTED" [2010-09-03 Fri 10:45]
Got a Samsung Intercept with Android 2.1. While I have no intention of doing
any real development for the platform at the moment, I'll at least check it out
to see if it's something I might want to do for some spare cash later. Only
setting this up on Windows at the moment.
Remaining subtasks:
- Root phone. Supposedly this is a tutorial:
http://www.sdx-developers.com/sdx/how-to-root-a-samsung-moment-with-2-1-firmware/
- Delete lame apps from apps list.
Notes:
- Grab latest SDK from http://developer.android.com/sdk. Unpack and run
installer. Force download through HTTP if necessary.
- bsdroid is an Android SDK port for FreeBSD, but it's not yet complete. Might
install this just to do development on FreeBSD, since most everything is
working for that, but installs will have to be done from Linux or Windows.
Update: Canceling this due to not having a smart phone anymore.  The only way I'll reverse this decision is if one of
these things happens:
- I get into mobile development (which I'm really not interested in).

- I find myself with more than enough money to fund the ownership of one. This
can easily cost $50k in today dollars over the course of the rest of my life,
and I'm not currently willing to work that much more just for a phone with
crappy apps I never use.
*** DONE haskell-mode update
- State "DONE" [2012-04-01 Sun 20:48]
- State "STARTED" [2012-04-01 Sun 20:01]
Lots of nice new features were added. Read this:
http://www.haskell.org/haskellwiki/Haskell_mode_for_Emacs
This breaks my existing haskell-flymake. As a result, I'm going to stick with
the old version for now. However, I added a script called u_haskell-mode to
update to the new GitHub-hosted version later if I want though.
*** DONE urxvtcd
- State "DONE" [2012-05-02 Wed 16:14]
- State "STARTED" [2012-05-02 Wed 16:12]
Use this instead of urxvt. Add the -ls flag to it. Make changes in
~/xmonad/xmonad.hs. Remove -sl flag. Add `URxvt*saveLines 10000' to
~/.Xdefaults.
*** DONE unittest Python module
- State "DONE" [2012-05-03 Thu 13:36]
- State "STARTED" [2012-04-18 Wed 09:01]
http://docs.python.org/library/unittest.html
Example in practice/python/home_range.py.
*** DONE oh-my-zsh
- State "DONE" [2012-05-03 Thu 15:10]
- State "STARTED" [2012-05-03 Thu 13:53]
ZSH is my second most used user application after Emacs, so it makes sense to
dedicate massive amounts of time into tweaking it to perfection.
Cloned the project to ~/src/shell/oh-my-zsh.
Update 2012-05-03: Instead of using oh-my-zsh directly, I've decided to just
pull out of it the things I wanted. The reasons for this are:
- New shells start about as fast as before this way.  Apart
from saving time, I'm also not source-ing a ton of scripts and burning clock
cycles for nothing.
- The collection has many, many things I don't want. There's a provided
directory to override things with your custom settings, but instead of
setting things to things you don't want, then putting them back, it makes
more sense not to do what you don't want in the first place.
- I don't want to fork my own version of this repo. The only way the
collection was acceptable to me was to go in and modifying things in various
scripts.
- I don't want to have new installs depend on anything outside of .zshrc. Now
I get the functionality wanted but without the cost of all those external
dependencies.
So, .zshrc has been updated with git and SVN status support and a much better
prompt theme. These were really the only things I wanted. Created a follow-up
task for the next step in ZSH tweaking.
*** DONE PuTTY Unicode
- State "DONE" [2012-05-03 Thu 22:33]
- State "STARTED" [2012-05-03 Thu 22:30]
Just making a note here of this so I don't forget. Go to Change
Settings|Translation and set it to UTF-8.
This lets me switch back to using the » character in my prompt.
*** DONE Leiningen (setup)
- State "DONE" [2012-05-04 Fri 14:18]
- State "STARTED" [2012-05-04 Fri 13:19]
Despite Leiningen's popularity, the script itself is pretty sloppy, at least
right now. I don't have time for a full learning of it yet, but I want to lazy
load that anyway, in case I end up not using it much. From first glance
though, it seems to get the job done pretty good and has a nice CLI syntax.
Steps:
- wget https://raw.github.com/technomancy/leiningen/stable/bin/lein
- Put this in ~/bin and chmod u+x it.
- On FreeBSD, change the bash hashbang path.
- Run `lein', which does some setup on the first run.
- Systems without `shasum' will report a download error due to a failed
checksum validation when grabbing the Clojure jar. Just verify that
~/.m2/repository/org/clojure/clojure/1.2.1/clojure-1.2.1.jar and
~/.lein/self-installs/leiningen-1.7.1-standalone.jar are there.
- Make a test project somewhere to make sure everything works by running `lein
new test-prog'.
If I start using this, follow this up by reading Leiningen's README.md and
TUTORIAL.md here: https://github.com/technomancy/leiningen
This setup gives me 1.7.1, but it seems 2.x is much nicer, so I'll just use
that instead. The above is therefore deprecated.
2.x Steps:
- cd ~/bin; wget --no-check-certificate
https://raw.github.com/technomancy/leiningen/preview/bin/lein
- chmod u+x lein
- Edit lein and change hashbang path.
- lein self-install
- Run `lein new test-proj' somewhere.
- Change project.clj to use the Clojure version of 1.4.0 and set `:main' to
`test-proj.core'.
- cd to that directory and run `lein repl' to make sure everything works. Run
`(-main)' or `(doc -main)'.

*** DONE clojure-mode
- State "DONE" [2012-05-04 Fri 14:27]
- State "STARTED" [2009-11-29 Sun 16:02]
Major mode to understand Clojure. Needs swank-clojure to integrate with
subprocesses. Managed to get this working without installing ELPA and without
messing up my SBCL settings; SLIME can be activated with either Clojure or
SBCL now.
Notes:
- Add clojure directory to $PATH.
- On Windows, create a clojure.bat file in the clojure directory, containing
`java -cp C:\path\to\clojure.jar clojure.main'. Run this to ensure a working
REPL comes up.
- Add clojure-mode, clojure-contrib, and swank-clojure to ~/.emacs.d.
- Had to use an older version of swank-clojure. Latest wouldn't work for me.
- Can send a startup parameter to SLIME with M-- M-x slime clojure.
Has many of the same commands for normal SLIME, and some extras, like:
- M-TAB: Auto-complete symbol at point. Super useful.
- C-x C-e: Eval the form under the point.
- C-c C-k: Compile the current buffer.
- M-.: Jump to the definition of a var.
- C-c S-i: Inspect a value.
- C-c C-m: Macro-expand the call under the point.
- C-c C-d C-d: Look up documentation for a var.
- C-c C-z: Switch from a Clojure buffer to the REPL buffer.
- C-c M-p: Switch the REPL namespace to match the current buffer.
Update 2012-05-04: Since everything here has changed so much since I started
this, I'm going to redo it all from scratch. Technically, this does complete
the effort with clojure-mode. It's just swank-clojure that's messed up.
*** DONE EasyPG
- State "DONE" [2012-05-15 Tue 09:37]
- State "STARTED" [2012-05-15 Tue 08:54]
Switching to this instead of command line GPG, as it provides automatic
encryption of .gpg files. This is now included in Emacs 23.
 After trying to defadvice the EasyPG start function a few ways,
I'm giving up and downgrading to GnuPG 1.x, which is still available in
security/gnupg1. Installing this without NLS support.
Notes:
- To encrypt a file, use M-x epa-encrypt-file and enter a passphrase. GnuPG
1.x allows this to prompt properly for one in the minibuffer.
- To decrypt, just open the .gpg file and enter the passphrase.
- If I ever need access to the encrypted data outside of Emacs, `gpg -o outfile
somefile.gpg' still works.
With so much less typing to encrypt all personal data, there's no excuse to not
encrypt everything I wouldn't want to be public knowledge.
*** CANCELED SBT
- State "CANCELED" [2012-05-18 Fri 16:11]
- State "STARTED" [2010-07-02 Fri 02:31]
SBT is Scala Build Tool. Apparently this is a replacement for Maven or Ivy.
Probably will stick with Maven for now though, since that's what work uses.
http://code.google.com/p/simple-build-tool/
Apparently ENSIME provides an SBT shell with C-c C-a. Other stuff at:
http://ensime.blogspot.com/2010/05/sbt-and-ensime.html
Setup notes:
- Grab latest sbt-launch jar from: http://code.google.com/p/simple-build-tool/
- Put sbt-launch jar in ~/lib/archive.
- Ensure sbt.el is in ~/.emacs.d and load it in .emacs.
- Create an `sbt' script in ~/bin that contains stuff referenced here:
http://code.google.com/p/simple-build-tool/wiki/IntegrationSupport
- chmod u+x ~/bin/sbt
- Make sure a projectdir/project/build.properties file exists (otherwise sbt.el
will fail).
- Open a file in a Scala project and run M-x sbt-shell. This will prompt to
create a project. Enter info.
Usage notes:
- Run `help' for a full list of commands.
Canceling this task since I've decided to go with Clojure as my JVM language.
Redid this from the start. Much of the above isn't true anymore.
*** CANCELED sbaz
- State "CANCELED" [2012-05-18 Fri 16:11]
Just take a look around the repo with `sbaz available' to see if there's any
libs or programs I want (or just want to look at the source for). I doubt
there are though.
Canceling with other Scala tasks.
*** DONE Counterclockwise/Leiningen plugin beta
- State "DONE" [2012-05-18 Fri 16:11]
- State "STARTED" [2012-05-18 Fri 09:35]
Probably won't use this, but I'll put it in my work laptop's host OS anyway.
Setup:
- Grab latest Eclipse IDE for Java EE Developers.
- Go to Help|Eclipse Marketplace and search for "clojure". This returns
Counterclockwise, which provides Clojure support for Eclipse.
- Go to Help|Install New Software and add an update site for "Leiningen plugin
beta site" at: http://ccw.cgrand.net/updatesite-lein-betas
- Create a project from the CLI with `lein new'. Move this to the workspace
for Eclipse and use File|New|New Project. Select General|Project. Type the
project's name in and it'll load in the existing project previously created.
- Right click on the project name, go to Configure, and select "Convert to
Leiningen Project". The project.clj dependencies should now show up in a
"Leiningen dependencies" folder.
- Right click on project and toggle the Enable/disable clojure language
support. It's set to the correct setting if Run As|Clojure Application shows
up.
- Right click on project and select Run As|Clojure Application. This brings up
the Counterclockwise REPL.
- Use C-i to interrupt execution in the REPL.
*** DONE Leiningen (usage)
- State "DONE" [2012-05-22 Tue 10:24]
- State "STARTED" [2012-05-17 Thu 09:20]
Settled on using 2.x, even though it's not a stable release yet.
Using a few random websites and this document:
https://github.com/technomancy/leiningen/blob/preview/doc/TUTORIAL.md
Notes:
- Use `(require 'test-proj.core :reload)' to reload a changed file.
- `lein run' executes a project from the CLI with the `-main' function location
specified in projects.clj.
- Libraries don't need `-main' functions.
- `lein jar' packages up a project and `lein uberjar' creates a standalone jar.
Note that this requires `:gen-class' specified to create the .class file
ahead of compiling the jar. With the uberjar, this can then be run as `java
-jar proj-name-standalone.jar'.
- `lein search <pkg-name>' searches the Clojars and Maven Central repos. This
is useful for copying this info directly to the :dependencies vector in
project.clj.
- `lein install' installs the current project to the .m2 repo.
- Reference this sample project.clj file for viewing all available options:
https://github.com/technomancy/leiningen/blob/master/sample.project.clj
- `lein deps :tree' prints the project dependency tree.
I think I know enough Leiningen to be productive. There's more, but I need to
get stuff done and stop yak shaving.
I'm also switching to not installing Clojure from ports and will just use
Leiningen to pull it and anything else into my .m2 repo.
*** DONE ParEdit
- State "DONE" [2012-05-24 Thu 00:18]
- State "STARTED" [2012-05-23 Wed 23:59]
Try this out for awhile. I tried this before very briefly, but decided to stop
because some commands didn't fit my model for doing the most obvious thing.
Every Lisp-dialect Emacs programmer I see seems to use it, so I may be missing
out on some convenience that only comes through extended use.
http://mumble.net/~campbell/emacs/paredit-beta.el
Installed the beta, renaming it to paredit.el. Not sure I like overriding C-k
to stop at a delimiter. Also, the C-arrow key commands are great when they
work, but do weird things when they don't make sense. I'll have to use this
for awhile to see if these things gets annoying. Currently, some of it seems
counter-intuitive. Even if that feeling remains though, maybe it's worth it
for the mismatch detection (however, in that case, I should just extract that
code myself).
Update: Removed this as it gets in the way more than it saves me from
mismatched parens. However, I'm leaving it in ~/.emacs.d, for the rare case
where I have a pair mismatched that I can't find.
*** DONE remove ECB
- State "DONE" [2012-05-25 Fri 22:09]
- State "STARTED" [2012-05-25 Fri 21:35]
I haven't activated ECB in years, so I might as well remove it and spare myself
the dependency management and startup time cost.
Removed ECB and CEDET blocks in ~/.emacs. Removed now-unnecessary stuff from
custom-set-variables sexp. Archived both of these to unused_init.el.
Uninstalled ECB port on FreeBSD. Things like JDEE and nXhtml still require
EIEIO, which requires CEDET, so I can't remove that port until I upgrade to at
least 23.2 (it's included then).
Emacs starts up noticeably faster now. Then it was just nXhtml that was slow
(but I actually use that occasionally). Decided to look up how to byte-compile
nXhtml, which cut its start time down to nearly nothing. To do so: Activate
menu-bar-mode, go to nXhtml|nXhtml Help and Setup|Byte Compile nXhtml. Now
just CEDET and EIEIO are slow, but on modern hardware it's quite fast overall.
*** CANCELED jdibug
- State "CANCELED" [2012-05-25 Fri 22:24]
Look into using this to debug Java projects in Emacs.
http://code.google.com/p/jdibug/
Canceled due to my hope to not have to write any Java at work ever again.
*** DONE escreen
- State "DONE" [2012-05-25 Fri 22:42]
- State "STARTED" [2012-05-25 Fri 22:34]
Consider replacing elscreen with this. Supposedly better integrated. Worth a
try, since elscreen has a few issues (namely: the window lists getting cut off
by vertical windows, window lists duplicated on C-x 2, and dependency upon
apel).
http://www.splode.com/~friedman/software/emacs-lisp/src/escreen.el
Grabbed and rebound the prefix key with:
(setq escreen-prefix-char "\C-z")
(global-set-key escreen-prefix-char 'escreen-prefix)
Well, this works. The main difference though is that escreen doesn't have a
nice way to tell what's where. The different screens are just numbered, and I
think that at least for me, the elscreen tabs do prevent me from scrolling
around more than necessary. I can see myself using escreen and living without
that, but since the main elscreen feature is actually useful for me, why should
I? It's a close one, but I'll stick with elscreen for now. I may change my
mind later though. I do like the idea of getting that extra line of text back.
*** CANCELED malabar-mode (revisited)
- State "CANCELED" [2012-05-25 Fri 22:54]
This failed last time, but with as much JDEE-related suffering as I've been
enduring, and seeing as how there's no end to it in sight, I'd say it's worth
another try. Don't bother putting a lot of effort into it though, since I
intend to write much less to no Java in the future. I would like to keep some
at least minimal Java functionality in Emacs, since even if I'm not a Java
developer ever again, it's likely I'll still have to look at Java code on
occasion.
Update 2012-05-25: I was going to get started on this, only to discover
malabar-mode is now unmaintained. Since it's been 7 months now with no one
stepping forward to keep it going, I'm making a task to look into emacs-eclim
instead.
*** DONE helm, helm-ipython
- State "DONE" [2012-05-26 Sat 00:29]
- State "STARTED" [2012-05-26 Sat 00:14]
Previously called anything.el. I'm only using this for Python code
completion, though I may want to check out helm-slime later).
https://github.com/emacs-helm
Installed helm and helm-ipython and they both seem to work fine. The use
workflow is:
- Open Python source file.
- Use C-c ! to load an iPython shell.
- Use C-c M to load the source file imports into the iPython environment.
- Type something to complete (e.g. `sys.') and hit M-TAB.
- Canceling out of or completing something will hide the REPL. Just use C-c !
to get it back. May look into fixing this later.
*** DONE rework Emacs Python setup
- State "DONE" [2012-05-26 Sat 00:54]
- State "STARTED" [2012-05-25 Fri 23:13]
My Python setup is pretty decent, but it could be better. In particular, I'm
missing a decent completion mode (consider anything-ipython for this).
Note that anything.el may have been renamed to emacs-helm.
I'm basically starting from the base major mode and revisiting all decisions
made, then comparing the end results. It's hard to tell what's current out
there, and this is mostly Emacswiki's fault, but also the tools are a bit of a
ghetto as well.
Notes:
- Attempted to upgrade python-mode from 5.2.0 to 6.0.8. This seems to now
include a lot of extra stuff. The mode's page is pretty terrible and hard to
find information on. I think the README file was written by someone
illiterate too. In any case, it broke compatibility with iPython, so I'm
sticking with the old version.
- Edited ~/.ipython/ipy_user_conf.py and uncommented the import for
ipy_greedycompleter. This enables completion in the iPython shell.
- Created a separate task for emacs-helm, so I can document its setup. This
was successfully added and seems pretty nice.
- Apparently pyflakes wasn't installed. Downloaded this from
http://pypi.python.org/pypi/pyflakes and ran `setup.py install --user' (after
modifying the hashbang since they were too dumb to use env). Added
~/.local/bin to $PATH in ~/.zshrc. Activating flymake-mode for all Python
files by default.
- Noticed that python-describe-symbol is only in python.el, not python-mode.
It's a shame to lose this, but I never seemed to use it obviously, or I'd
have noticed it by now. I'd rather trade that for the iPython integration.
I think that does it. I now have flymake, source completion, and interpreter
completion.
If I ever really want to take it to the next level, I could add pylookup for
documentation browsing/searching and integrated debugging support. This guy's
blog post shows this:
http://pedrokroger.com/2010/07/configuring-emacs-as-a-python-ide-2/
*** DONE remove sqlplus.el
- State "DONE" [2012-05-26 Sat 01:01]
- State "STARTED" [2012-05-26 Sat 00:54]
Haven't used Oracle for years, and I'm definitely hoping I never will again.
Removed from ~/.emacs.d and archived setup to unused_init.el. Not sure how
that sat there unnoticed so long.
*** DONE UPenn Clojure exercises
- State "DONE" [2012-06-18 Mon 10:46]
- State "STARTED" [2012-06-15 Fri 12:15]
Some practice problems that would be too easy in Lisp, but will help get used
to using Clojure syntax.
http://www.cis.upenn.edu/~matuszek/cis554-2011/Assignments/clojure-01-exercises.html
These were entertaining problems to solve and doing them was rather useful
too. They're more of the pure algorithm problems though, so I still have some
work to do to get productive in the language as a whole.
*** CANCELED Rinari
- State "CANCELED" [2012-07-02 Mon 11:34]
Consider switching to this for Ruby in Emacs. Or I may just remove Ruby
integration all together, as there seem to be no applications in Ruby that I
like.
I've decided to ignore Ruby, so I'm skipping this.
*** DONE close MySQL port on macroexpand.com
- State "DONE" [2012-07-02 Mon 11:39]
- State "STARTED" [2012-07-02 Mon 11:36]
I had some plans for this, but better to close it until I actually am ready to
do them. Was also going to put the l1j-en db on here, but I can do that and
just run the server on the same machine, though I haven't decided where I want
it yet (reduced latency on cellblock vs. reduced local CPU/HD usage on muze).
Tasks:
- Check open ports with `sudo nmap -sS -F <IP_ADDRESS>'.
- Setup pf and create exclusive rule for port 3306.
- Once closed, ensure that `telnet macroexpand.com 3306' doesn't work from
outside.
- While I'm at it, check `SHOW GRANTS;' and use the REVOKE command to clean up.
Once I have pf (or some other firewall) setup, I can then easily block some of
the SSH brute force spamming and HTTP exploit attempts. Added a pf/altq task
for this.
Update 2012-07-02: I'm just disabling MySQL on macroexpand.com. However, if I
ever do get around to using it for something, I can just add
`bind-address=<IP_ADDRESS>' to /etc/my.cnf.
*** DONE Markdown
- State "DONE" [2012-07-20 Fri 09:20]
- State "STARTED" [2012-08-10 Fri 01:47]
Convert README files to README.md files.
http://daringfireball.net/projects/markdown/
Without really trying, I've kinda learned enough Markdown. There's some
Markdown files I've created in two Clojure projects so far.
*** CANCELED update NES emu
- State "CANCELED" [2012-08-10 Fri 01:57]
Using NESten currently. Supposedly Nestopia and Nintendulator are now better.
The former requires 800MHz, the latter 1.6GHz.
Update: Not sure why I bother scheduling this. Any time spent playing NES
games is certainly a waste.
*** DONE swank-clojure
- State "DONE" [2012-08-22 Wed 13:27]
- State "STARTED" [2012-05-04 Fri 14:27]
Since I'll be using Clojure for work, I need to get this running as smoothly as
my SBCL SLIME setup.
Some info is here (but it seems some of it is outdated):
http://dev.clojure.org/display/doc/Getting+Started+with+Emacs
Deferring to this instead:
https://github.com/technomancy/swank-clojure/blob/master/README.md
Setup:
- Deleted old clojure-mode, clojure-contrib, and swank-clojure setups.
- Use an existing project or create a test one and open the projects.clj file
and add `[lein-swank "1.4.4]' to the :plugins section.
- Run `lein repl' on the project to pull in the lein swank dependency.
- Open project.clj and run M-x clojure-jack-in. A SLIME REPL should eventually
come up and eval-ing the source buffer should allow one to call a function
like (test-proj.core/test-fn).
- To switch to the project's namespace, compile it first with C-c C-k, then use
C-c M-p.
- Alternatively, if you add a lein-swank dev-dependency, you can run `lein
swank' from the CLI and then M-x slime-connect to that REPL.
- For long running or complex applications, it might be a good idea embed a
swank server in the application.
Notes:
- Clojure REPLs take like a minute to start. SLIME with SBCL started up in a
few seconds.
- Once again, I have no way of using both SBCL and Clojure. This is an
unacceptable outcome and I'll have to resolve it some way or another.
- SBCL SLIME setup is commented out for the moment.
Update:
swank-clojure is now deprecated. Look into nrepl.el instead. Created new task
for this.
*** CANCELED psvn
- State "CANCELED" [2012-08-25 Sat 21:54]
I've sorta used this a little and have it installed, but haven't really managed
to figure out how to replace all my SVN needs with it and am still using the
command line for some things. First check if there's a superior SVN mode.
Canceling since, until recently, the only place I used SVN still was at work
and I'm now fully switched to git there. I'll still keep my existing SVN
integration as is, however.
*** CANCELED WebKit engine
- State "CANCELED" [2012-08-27 Mon 23:12]
This is just a reminder to check out Minno (and maybe some of the other WebKit
engine clients) around 2013 or later. Adblock's been ported to WebKit, making
this a viable xulrunner/Gecko replacement. In the case of Minno, another
benefit might be the fact that it's written in Scheme and should be easy to
modify (it looks like it'll be compiled gambit-c Scheme, which is a good thing,
IMO), but a downside is that it uses Qt, so I'm not entirely sold on it.
Project died.
*** DONE MINIX 2.0.4 VM
- State "DONE" [2012-08-28 Tue 00:31]
- State "STARTED" [2012-02-02 Thu 16:13]
Install this and check if it has the sources. If so, keep it around for
reading with Modern Operating Systems. Initially attempted this in VirtualBox
but it failed for some unknown reason. Since I switched to VMware Player, redo
it in that.
Got this working in VMware using the image provided here:
http://minix1.woodhull.com/pub/demos-2.0/VMWarePlayer/
Tested and this works. This includes a root user with no password. This
removes the only blocking task for reading the above book.
 The only things I can think of
wanting at the moment are rake and Haml, though I'm not sure if I even want
those.
Update: Decided against using either rake or Haml, and as a result, there's no
need to use gem. Additionally, I've been keeping anything Ruby-related off my
main workstation due to its bloat and low payoff.
*** CANCELED Haml
- State "CANCELED" [2012-09-23 Sun 17:32]
Consider using this. If so, check out html2haml. Hamlet is sorta like this as
well, but for Haskell.
I'm not sold on this idea, since this abstraction doesn't add anything, nor
does it provide anything the base language does not. SCSS is probably a better
option. Haml seems like an abstraction for the sake of abstraction.
Update: Replacing this with Sass/SCSS.
Update: On second thought, I may consider reopening this, since it seems to be
popular in combination with Sass now.
*** DONE NoScript in Conkeror
- State "DONE" [2012-09-23 Sun 20:11]
- State "STARTED" [2012-09-23 Sun 19:45]
Add this. http://conkeror.org/NoScript
Installed 2.5.5:
- wget --no-check-certificate
https://secure.informaction.com/download/releases/noscript-2.5.5.xpi
- Install via M-x extensions and restart.
- Open plugin preferences and add macroexpand.com, <IP_ADDRESS>, localhost, and
github.com to the whitelist.
The above steps give you a working NoScript setup. However, you're supposed to
be able to add `require("noscript");' to ~/.conkerorrc, and then have access to
the M-x ns-toggle-temp function. This is currently broken, requiring going
back into the preferences every time you want to turn it off (or adding the
site permanently to the whitelist). While inconvenient, I prefer this over
having arbitrary JavaScript being executed.
I talked to the developers on the Conkeror channel on Freenode and they claim
this works in the new version. I'm adding a task to manually update Conkeror
and run it from a user directory instead of ports.
*** DONE w3m bookmarks
- State "DONE" [2012-09-24 Mon 02:38]
- State "STARTED" [2012-09-24 Mon 00:31]
Consolidate all Lynx and Firefox bookmarks to w3m. The blocking issue of w3m
not saving the location of the last followed link when backtracking seems to be
resolved in the most recent 23.x release, so the next update will resolve that.
I'll be heavily trimming my bookmarks. With search engines so good these days,
there's no point in maintaining such a huge list for reference. The purpose of
my bookmarks will from now be to note stuff that I want to spend more time on.
Phew, that was a lot of work. I'm leaving lynx_bookmarks.html around for now
for unfiltered, junk bookmarks. I may start using the temp section in w3m for
that later though. I'll also give this one more pass to delete more stuff I'll
never look at.
*** DONE write repo update script
- State "DONE" [2012-09-27 Thu 10:56]
- State "STARTED" [2012-09-27 Thu 10:32]
Clean up all repos I track in ~/src. Write a script that auto-updates all of
them.
Stuff done:
- Wrote ~/bin/update_repos.
- Excluded stuff from ~/.emacs.d, since a lot of the time, I want the old
version. Will continue tracking these manually for now, though I may later
add ones that I always want to track.
- Excluded l1j projects. Need to address these later.
 Most of this was quick exploratory code and prototypes.
*** DONE write auto-clean LaTeX build files script
- State "DONE" [2012-09-27 Thu 11:12]
- State "STARTED" [2012-09-27 Thu 11:06]
Write a script that goes into the two directories that I write LaTeX in, and
recursively cleans out all the various intermediate files created building
documents.
Wrote ~/bin/latex_clean. This will save quite a bit of typing.
*** CANCELED sample interview questions
- State "CANCELED" [2012-09-27 Thu 11:34]
- State "STARTED" [2010-05-13 Thu 13:26]
Do most of these. Located in ~/src/repo/misc/sample_interview-answered.txt.
I did a few of the programming problems here. However, after reading over all
the questions, I'm sure this is a waste of time so it's getting canceled. The
only possibility for reopening this is if I'm doing a more extensive than
planned C refresher and want some good puzzles.
*** DONE packet radio
- State "DONE" [2012-09-27 Thu 12:42]
- State "STARTED" [2012-09-27 Thu 12:16]
Research feasibility of actually using this. For now, just read the Wikipedia
page on it and find a guide somewhere and read that. I'll need to learn more
about ham radio in general before I can understand all the lingo, but I'm
mainly just interested in whether this is something I'd be interested in first.
If not, I'm a lot less interested in ham radio in general and can de-prioritize
a whole set of potential upcoming tasks accordingly.
Packet radio is pretty interesting. However, there are some problems for what
I'd want to use it for:
- Most of the time, it's used to set up distributed local networks.
- I won't be able to get above 9600baud without special equipment. Apparently
normal speeds are often slower.
- This concept was far more popular back in the 80s. Hardly anyone uses it
now, so there usually won't be a network around.
- What I wanted to use it for (to access gateways to the real internet) isn't
possible. These gateways don't exist (or at least aren't common).
 However, I'm
lowering its priority based on info found here and I'd be fine with skipping it
altogether since it doesn't really add anything of value.
*** DONE redo Scala Emacs integration
- State "DONE" [2012-11-07 Wed 10:39]
- State "STARTED" [2012-11-06 Tue 10:37]
It looks like I will have to write some Scala after all, thanks to my
scatterbrained work environment. I'm going to do it (more) properly this time
though, starting from scratch:
- Install sbt. Ensure it can pull in specified versions of base Scala.
- Activate scala-mode from the latest Scala distribution, if it's still there.
- Install ENSIME.
- Get the ENSIME REPL up.
sbt (manual install):
- Grab latest sbt from
http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html
- Put somewhere and update my ~/bin/sbt script to point to the new
sbt-launch.jar.
- Create a test project with a directory containing a source file and a
project.sbt file. Run it with `sbt run'.
scala-mode: This seems to not be distributed anywhere, but I found a copy in
some SVN repo.
- git clone https://github.com/scala/scala-dist.git
- Grab the scala-dist/tool-support/src/emacs and move it to
~/.emacs.d/scala-mode.
ENSIME:
- Grab a recent distribution from:
https://github.com/aemoncannon/ensime/downloads
- Extract and move to ~/.emacs.d/ensime. For BSD, change the hashbang in
ensime/bin/server.
- Activate the sbt ensime plugin (which allows the `ensime generate' command to
create a .ensime file in an existing project from the sbt shell) by following
the instructions on: https://github.com/aemoncannon/ensime-sbt-cmd Use
"latest.milestone" for the version.
- Create the .ensime file in the above test project, open the .scala file in
Emacs and execute M-x ensime.
Scala (manual install): This is for running REPLs.
- Grab the 2.9.2 tarball. Edit the hashbang in all scripts in bin/.
- Check updates to $PATH, $CLASSPATH, and $SCALA_HOME in ~/.zshrc.
- Some systems might require a symlink to the interpreter binary in ~/bin in
order to get it on Emacs' exec-path.
- Test the REPL by doing the ENSIME test above, followed by C-c C-v z.
Still need to actually properly learn Scala, ENSIME, and sbt. From what I can
tell, this setup is good though.
*** DONE fix mutt
- State "DONE" [2012-12-01 Sat 15:29]
- State "STARTED" [2012-12-01 Sat 15:10]
Nothing changed on my end, but I can no longer send email via Gmail services
through mutt. Reading it works though.
Fixed. This was caused by not changing my password in my .msmtprc file.
*** DONE alternative ModeLine settings
- State "DONE" [2012-12-08 Sat 12:37]
- State "STARTED" [2012-12-08 Sat 12:29]
Try running cvt --reduced 1920 1200 60 and putting that in xorg.conf.
This seems like a slight improvement.
*** DONE w3m search engine redo
- State "DONE" [2012-12-08 Sat 13:32]
- State "STARTED" [2012-12-08 Sat 12:48]
Figured out a way to get custom w3m-search-engine-alist additions in place. My
problem was putting them in the mode-hook instead of an eval-after-load call.
Rolled back my original Blekko changes and added them in the new manner, but
there's some issues. The main one is that Blekko no longer accepts these
perfectly well-formed searches anymore, so I'm stuck with gg: until that
changes. Also, only the default search URIs are active at load, until you at
least do one successful search. As a result, I just added searches for Hoogle
and FreeBSD ports.
*** DONE set-face-attribute
- State "DONE" [2012-12-10 Mon 10:50]
- State "STARTED" [2012-12-10 Mon 10:45]
Consider using this for font setting in Emacs, e.g. `(set-face-attribute
'default nil :font "Anonymous Pro 16")'.
Added this, consolidated it with the Windows font setting, and commented out
the font line in ~/.Xdefaults.
*** DONE convert Virtual PC images to VMware
- State "DONE" [2012-12-13 Thu 13:22]
- State "STARTED" [2012-12-13 Thu 12:20]
I have 2 Windows XP VMs used for running older 32-bit Windows software (mainly
games). Converting these to VMware will consolidate all VMs under one
emulation platform and reduce the number of virtual network adapters and
system services.
Conversion requires VMware vCenter Converter Standalone. This works and I have
an XP VMware VM now, but unfortunately, I need VMware Workstation in order to
get the graphics display settings I want (stretching to fill the screen without
resolution change). Also, gameplay is a bit choppy in Lineage 1, so it looks
like I'm stuck with Virtual PC until I get a faster computer and emulator
upgrade. I'll use this VM for other things though, since I wasted a key
validation on it.
** Work-related topics
*** CANCELED RapidMiner
- State "CANCELED" [2012-02-15 Wed 05:18]
- State "STARTED" [2011-05-09 Mon 11:36]
Installed RapidMiner 5.1.006. Added Weka and R extensions.
Tasks:
- Install on GNU/Linux. Added a script to ~/bin to start it with `java -jar
/path/to/rapidminer/lib/rapidminer.jar'.
- Read Wikipedia article on it.
- Read RapidMiner Manual.
Going to try to get away without learning this. Seems like a boring end-user
application. My new project does use this though, so I may have to reopen it
later. Right now, it's low priority enough to be off the list.
*** CANCELED Tableau
- State "CANCELED" [2012-04-04 Wed 11:56]
- State "STARTED" [2011-05-24 Tue 06:20]
Tableau is an application that allows advanced visualization of datasets from
various sources (databases, cubes, spreadsheets, etc.).
Being an end-user application, I want to know as little of this as possible.
Just skimming the manual and using it for a day should be enough to gain
minimal familiarity. A lot of functionality is very well hidden here though,
so it'll take awhile to find it all. Calling this done since I know enough to
be work-productive in it, which is all I really needed.
Note: 7.0 (the next version) will include the ability to append new information
to existing Tableau datasets -- a useful feature for work application of it.
Suspending effort.
*** CANCELED Apache Mahout
- State "CANCELED" [2012-04-04 Wed 11:56]
- State "STARTED" [2011-05-20 Fri 11:31]
Mahout is a library of algorithms for classification, clustering, regression,
reduction, and other machine learning tasks, built on top of Hadoop.
Tasks:
- Read various documentation on: http://mahout.apache.org/
- Read all the algorithm descriptions here:
https://cwiki.apache.org/confluence/display/MAHOUT/Algorithms
Notes:
- Four main use cases: Recommendation mining, clustering, classification, and
frequent itemset mining.
- Grabbed the binary distribution for 0.4. `mahout' with no arguments lists
valid program names. `mahout <program_name>' lists program name arguments.
Did some work on this, but suspending further effort as it's no longer needed.
*** CANCELED Gephi
- State "CANCELED" [2012-04-04 Wed 11:57]
*** CANCELED NSA Cloudbase
- State "CANCELED" [2012-04-04 Wed 11:57]
Replacing this with Accumulo. Ghost Machine stacks will still have Cloudbase
in them for now though, so I may still encounter it occasionally.
*** CANCELED Apache Pig
- State "CANCELED" [2012-04-04 Wed 11:58]
*** CANCELED MRUnit
- State "CANCELED" [2012-04-04 Wed 11:58]
Unit test framework for MapReduce and JUnit.
*** CANCELED GDAL
- State "CANCELED" [2012-04-04 Wed 11:58]
Hopefully will be doing less geospatial stuff in the future.
*** CANCELED Apache Derby
- State "CANCELED" [2012-04-04 Wed 11:59]
A relational database in use with Hive as its metastore. Not using Hive
anymore, so don't need it.
*** CANCELED PostGIS
- State "CANCELED" [2012-04-04 Wed 12:01]
Was going to give this a quick glance, but I definitely don't need a relational
geospatial database now.
*** CANCELED Apache Hama
- State "CANCELED" [2012-04-04 Wed 12:02]
*** CANCELED GoldenOrb
- State "CANCELED" [2012-04-04 Wed 12:02]
The company working on this folded. Apparently Apache Giraph is filling this
void now.
*** CANCELED Storm
- State "CANCELED" [2012-04-30 Mon 10:17]
The plan:
- Find and read coworker's Storm slides.
- Watch this: http://www.infoq.com/presentations/Storm
- Read all links here: https://github.com/nathanmarz/storm/wiki
Check out ancillary Storm functionality:
- Storm Multilang:
- Storm Multilang Wiki:
- Use of ShellBolt:
- Topology using ShellBolt:
Switched projects again, so I don't need this for now. Might end up using it
later if any real-time ingestion is necessary. I really hope not though.
*** DONE home range
- State "DONE" [2012-04-30 Mon 10:17]
- State "STARTED" [2012-04-18 Wed 09:17]
Came up with a simple solution to this that makes sense in a non-biology
studies context. Committed to practice/python/home_range.py (though I didn't
upload the geohash dependency, since I didn't write that).
*** CANCELED Apache Accumulo
- State "CANCELED" [2012-05-15 Tue 10:11]
The plan:
- Read Google's original Bigtable paper.
- Read the intro to HBase: The Definitive Guide and maybe browse some of the
other chapters.
- Look around on the Accumulo site and find some docs.
- Install Accumulo on a clean system with dependencies.
- Try using it a bit and write a program to extract the data.
Switched projects again, so I don't need this for now. From what I learned by
osmosis, I'm quite glad about not having to work with this.
*** CANCELED Apache Thrift
- State "CANCELED" [2012-05-15 Tue 10:12]
*** CANCELED Apache Kafka
- State "CANCELED" [2012-05-15 Tue 10:12]
https://incubator.apache.org/kafka/index.html
Ugh, messaging frameworks. I'm quite glad I dodged this one.
*** CANCELED design patterns
- State "CANCELED" [2012-05-15 Tue 10:13]
Know most of these, but there's room for further mastery. Ideally, I'd not
have to deal with patterns, but knowing them makes work life easier. Having
sold my Gang of Four book, I'm reducing the scope of this task.
Do the following:
- Read through all patterns on the list on Wikipedia.
- Design patterns are actually workarounds for limitations imposed by OOP.
Review this list of functional/dynamic idioms that patterns were created to
emulate: http://norvig.com/design-patterns/ppframe.htm
- Maybe write a few more examples in Java in ~/repo/java/design_patterns.
Already did singleton, strategy, and visitor earlier.
With the light at the end of the tunnel visible, I'm going to predict I'll be
able to make it through my career without having to master these. Being
primarily a functional programmer now, I haven't encountered one of these in
years anyway.
*** CANCELED Scala
- State "CANCELED" [2012-05-18 Fri 15:49]
- State "STARTED" [2010-06-04 Fri 15:26]
Trying to use Scala at the current job, so going to try to learn it without
buying any hardcopy books.
Emacs setup:
- This just involves including some Scala setup in init. The scala-mode is
provided by the official Scala distribution. Note that this isn't included
in (at least the current) Arch Linux package. See arch_setup.org for
details.
- Also added sbt, but I'm not sure this actually does anything yet.
Scala IDE for Eclipse setup:
- Add update site: http://download.scala-ide.org/update-current
- Install Scala Eclipse Plugin.
Remaining subtasks:
- Look into getting flymake working with Scala.
- Find an e-book on the subject and read it.
- Write a couple practice apps.
Canceling this as I like Clojure more and don't have the bandwidth for both of
these.
*** CANCELED Scalaz
- State "CANCELED" [2012-05-18 Fri 15:51]
Video intro at: http://vimeo.com/10482466
Canceling this along with Scala in general.
*** CANCELED Functional Java
- State "CANCELED" [2012-05-18 Fri 16:15]
Glanced at the examples and I'm not that impressed. Plus, I'm hoping to avoid
Java programming for the rest of my career anyway.
*** DONE unit test writing
- State "DONE" [2012-05-26 Sat 01:05]
- State "STARTED" [2011-03-21 Mon 03:04]
Know this, but need to practice using JUnit some and integrating it with Maven
projects. Maybe check out QuickCheck (and possibly HUnit) on the Haskell side,
nose for Python, and either CLUnit or lisp-unit for Lisp. Since
non-Java/Python/Scala unit tests aren't work-related, defer those to a separate
task.
Python: Using nose. May use doctest as well later.
I've written enough tests by now that I'm pretty sure I know what I'm doing.
I'm not crazy about testing anything anymore anyway and I'm certainly against
the TDD methodology.
*** CANCELED Java debugging
- State "CANCELED" [2012-05-26 Sat 01:06]
- State "STARTED" [2011-03-21 Mon 02:30]
Need to research Java debugging tools some.
The JDK now includes jstat and jmap utilities which are only really useful to
see how the memory allocation is doing for a process. Using jmap -heap can be
a clue as to whether you need to increase the VM's memory maximum.
Also check out Java profiling.
I started this quite a while ago, but forgot to flag it started here.
Eclipse debugging:
- I generally use this for most debug tasks, which requires setting up a
project debug profile. After that, it's a standard IDE debugging experience,
minus the weirdness of the Display view.
- TODO: Add note here on how to debug webapps in Tomcat.
Don't need this anymore.
*** DONE google-refine
- State "DONE" [2012-07-19 Thu 08:35]
- State "STARTED" [2012-07-19 Thu 10:35]
Might be able to skip this.
http://code.google.com/p/google-refine/
Set this up on a Linux VM. Probably won't use it though. There really isn't
much to it.
*** DONE Rhipe
- State "DONE" [2012-07-19 Thu 10:38]
- State "STARTED" [2012-07-19 Thu 10:36]
A method for distributing MapReduce jobs directly from within R.
After much pain, I finally got this setup on Linux along with RHadoop (which
kinda does the same thing). While I'm sure they work for the creators, they're
both too flakey to use for real production code.
*** DONE cascalog-koans
- State "DONE" [2012-08-27 Mon 21:14]
- State "STARTED" [2012-08-27 Mon 21:07]
Clone this and take a look at them. Might learn something useful.
https://github.com/sritchie/cascalog-koans
This has a cool sh snippet that I might use:
for f in lib/*.jar lib/dev/*.jar resources/; do
CLASSPATH=$CLASSPATH:$f
done
java -cp "$CLASSPATH" clojure.main -i script/run.clj
This doesn't actually work or do anything. Looks abandoned.
*** DONE redo resume
- State "DONE" [2012-08-27 Mon 20:31]
- State "STARTED" [2012-08-27 Mon 19:20]
Maybe tweak the LaTeX template a little, but I think it's pretty good now. I
probably won't ever need it anyway, but I'd still like it to be up to date.
Might wanna think more about the professional objective. Sounds a bit hammy
still.
*** DONE Cascalog
- State "DONE" [2012-08-28 Tue 00:19]
- State "STARTED" [2012-06-22 Fri 11:19]
Cascalog promises to be a higher abstraction level means of managing all things
Hadoop-related. This includes workflow management that would normally require
something like Cascading (which Cascalog also builds upon).
If this lives up to its promises, it could be pretty awesome. It's hard to
tell without actually trying to use it first though. The potential is worth
looking into, as the alternative will be a mess of a cloud stack with analytic
workflow components in at least half a dozen languages.
https://github.com/nathanmarz/cascalog
The plan:
- Watch the LinkedIn Cascalog presentation video for a quick overview.
- Get at least competent with Clojure.
- Run through the included examples.
- Set up some tests using HDFS.
- Determine whether this can be scaled up to suit project needs.
- If so, write a minimal demonstration and/or one that includes something with
an outer join and post-join filter (these are horribly inefficient in Hive).
Cascalog's REPL is too slow on my home workstation (it's so bad, the servers
time out before they can connect), so I need to do this on VMs on my worktop or
beefbox. Setup is now complete.
Update: The timeouts are fixable by setting :repl-options {:timeout 60000}. I
now have working Cascalog analytics as well, and these are pretty nice. The
environment setup is a total pain, but part of that was getting used to
Clojure, though it was mostly the result of inadequate documentation.
Based on my success criteria for this task, I consider it done. There's still
a lot of more advanced features I'm not particularly familiar with here, but
hopefully that will come in time. If I'm having problems later, I'll create a
plan for more comprehensive learning (and that might not be a bad idea in
general, if this ends up being a integral part of the dev stack like I hope).
*** CANCELED install Debian on old worktop
- State "CANCELED" [2012-09-17 Mon 16:58]
- State "STARTED" [2012-07-13 Fri 11:08]
Since I have two work laptops, I'll put Debian stable on metal on the other
one. It has a Dell Wireless 1510 Wireless-N WLAN Mini-Card (this may be a
BCM4322) and an NVidia Quadro FX 770M video adapter.
Maybe look at this: http://wiki.debian.org/bcm43xx
Made some progress on this, but getting all the hardware to work was a pain so
I'm just returning it. The fans and screen on this laptop are all screwed up
from Afghanistan anyway.
*** CANCELED Gradle
- State "CANCELED" [2012-09-23 Sun 14:12]
Might have to learn Groovy for this. :\
Skipping. There's only one Gradle fanboi on the team and he's a chronic n00b.
Plus, it only makes sense for Java projects.
*** CANCELED Apache Camel
- State "CANCELED" [2012-09-24 Mon 02:51]
Looks like a boring Java library. Hoping to bypass this.
Don't need this, thankfully.
** Games to play
*** DONE Widelands
- State "DONE" [2012-02-15 Wed 09:21]
- State "STARTED" [2011-10-13 Thu 23:21]
Pretty good, though a bit generic. Not controlling individual units in a game
like this is definitely a better system than the AoE model.
Played this for a few nights, but got bored. There's just nothing compelling
enough about this game to make me keep playing it, especially with so many
obviously better ones out there.
*** CANCELED Revenge of the Titans
- State "CANCELED" [2012-03-21 Wed 09:08]
An indie tower defense game. Available on Steam. Not entirely sure I want to
play this one though, with creeps attacking towers and so much more mad
clicking.
Decided not to get this after watching some gameplay videos.
*** DONE Dungeon Siege
- State "DONE" [2012-03-22 Thu 06:08]
- State "STARTED" [2011-12-11 Sun 10:16]
Got a CD of this and the Legends of Aranna expansion.
To get this to work in Windows 7 x64, first run the DSVideoConfig.exe utility
and set the video card to whatever card is present. Don't use hardware TnL.
Now I remember why I quit this almost right away last time. This game is too
simple and generally isn't fun. Then since this won't even run on Win2k3r2
x64, I think I'll give up on it.
*** CANCELED Syndicate
- State "CANCELED" [2012-03-25 Sun 06:37]
A reboot of the Syndicate series. Coming out in 2012. This is just a reminder
to see what it turns out to be, but I'm not too crazy about it being remade
into an FPS, so the expectations are low and it's likely I'll pass on it.
Don't wanna play this. Syndicate should be RTT.
*** DONE Mass Effect 1
- State "DONE" [2012-04-28 Sat 21:31]
- State "STARTED" [2012-03-22 Thu 12:28]
Surprisingly good. A well-developed mythos and a solid hard scifi effort.
However, I do have a few complaints:
- The world is too non-interactive.
- Some minor consolitis, mostly in the UI and game world.
- The Frogger-style mini-game isn't any fun to play 1000s of times. Having to
play it to examine artifacts and such doesn't even make sense.
- Has fanservice.
- A more realistic way for weapon damage to work would be only being able to
take a few shots at most once shields were down. As it is now, shields can
go down and characters can take dozens of relativistic speed slugs.
*** DONE FO:NV: Dead Money
- State "DONE" [2012-06-02 Sat 18:31]
- State "STARTED" [2012-06-01 Fri 18:20]
Since I finished all of the in-game content, and generally enjoyed most of it,
I thought I'd try the first of the FO:NV expansion packs.
This was about average for Fallout content and not quite worth $10.
Complaints:
- Being cut off from the rest of the game world kinda sucks, but I guess it's
necessary for the story as it is. I'd rather FO:NV's main overland area be
expanded instead, since it's too small.
- Hardcore mode's HP depletion over time was just annoying instead of
challenging. I'd rather the cloud stuff be removed altogether and just have
the difficulty raised in some less arbitrary way.
- The plot misses the mark a little on immersion. It's close, but not quite
good enough to really get into.
- The new enemies have no variety at all. In fact, there's really only one
enemy you fight the whole time, over and over.
- Content is completely linear.
Also added the Louder Guns mod (the pleasantly quiet gunshots always annoyed
me). Unfortunately, it doesn't work with new DLC guns that have different
sound effects: http://newvegas.nexusmods.com/mods/35098
FO:NV is the last Bethesda or Bioware game I'll ever buy right off the presses.
The DLC milking is definitely out of control when they can cost more than the
original game (often a lot more). If I had just waited 2 years, I could have
bought it all combined for a fair price. I'd be okay with it if DLC content
was superior to original game, but it tends to be significantly inferior.
*** DONE Sacred Gold
- State "DONE" [2012-06-04 Mon 09:38]
- State "STARTED" [2012-02-16 Thu 00:52]
Includes the original and the expansion pack. Pretty mindless, but I had work
order a copy for me to play occasionally while in Afghanistan, since I figured
it would run on my work laptop.
After playing this quite a bit, it got painfully boring. I played the original
back in 2004 and quit after a few days. Now I remember why.
Complaints:
- My main complaint is the drop system that randomizes loot in the Diablo
model. This works in Diablo and Rogue-likes, but not here, probably due to
the lack of attention given to making it interesting. Since farming up items
is the main activity in this game, it has to get this right.
- Due to the drop system, there's no real motivation to explore far off the
main quest path or solve side quests. If you need more lever pulls to
upgrade gear, you might as well just kill the most accessible named trash
mobs.
- Side quest areas are all generic and boring.
- Serious performance issues are present, making the game nearly unplayable on
my laptop. It almost runs fine on my desktop, but I have to keep it in
windowed mode since alt-tab doesn't work.
- Shops are useless except to unload loot, though there's really no reason even
to collect stuff to sell since you don't need money for anything.
- Has the annoying leveled XP system that most modern MMORPGs have where XP is
scaled based upon the difference between the player character and the mob.
- Boring, too non-interactive of a world. Staring at dead backgrounds looking
for secret hiding places isn't fun either.
I'd have a hard time listing what this game does well. I guess the pixel art
is decent enough. This is just a really poorly executed knock-off of D2.
There's no good reason to play this instead of the real thing.
*** DONE Defense Grid: You Monster
- State "DONE" [2012-06-04 Mon 22:22]
- State "STARTED" [2012-03-21 Wed 09:17]
More of the same, with a few extra features.
Worth the $5. This includes some really unique maps that force you to solve
problems in completely new ways.
*** DONE Mass Effect 2
- State "DONE" [2012-06-16 Sat 01:44]
- State "STARTED" [2012-05-02 Wed 11:28]
Better graphics and more polish. Has another good (though inferior) storyline,
but so many of the RPG elements have been removed or simplified that it's hard
for me to even consider it an RPG, except in the most superficial way.
Complaints:
- Not as open of a game world as ME1.
- Even more fanservice.
- Even more consolitis.
- n00bification of several game elements like inventory management,
weapons/armor, and character skills.
- Combat encounters are too structured in a way that results in less overall
variety. You can always tell one is coming up when you see a certain
environment layout and each one plays out very much the same.
- Mission areas are nearly completely linear.
- Mini-games are better, but still not fun. Would rather such things just be
based on leveled skills and have the game itself be more interesting.
- Crouching was removed. Character movement in general feels sluggish (FO:NV
is so much nicer).
- No map in most places, though I guess you don't need one with such linearity.
- Includes QTE (and even considers it a feature).
- Your character meets up with just about everyone he ever left alive in ME1
despite the size and population of the universe.
While I had plenty of complaints about ME1, I still liked the game. I'm pretty
sure I actively dislike ME2 though. I really want to like it for its good
points, but the actual game playing experience is overall an unpleasant one.
Won't be playing ME3, since it's more of the same. Skimmed through an LP of it
just to get the story instead. The story has some well known problems and some
really deep flaws/inconsistencies, but is still pretty good in my opinion.
However, unlike most complaints, my biggest gripe with the ending was that the
revelation isn't one that forces the player to rethink something big and is a
missed opportunity. Lastly, I'd comment that this kind of result is inevitable
when you write a huge story as you go. At least some upfront outlining is
essential to make sure everything fits. This is why most JRPGs and televised
series are just a random walk through whatever.
*** DONE America's Army 3
- State "DONE" [2012-07-02 Mon 01:10]
- State "STARTED" [2012-07-01 Mon 23:43]
The latest AA game. I had a lot of fun playing AA:O years ago, and wanted to
check out the new version.
This new version is pretty much a failure and most of the bad press it got was
well deserved. The game mechanics are all clunky and it's missing all of the
cool stuff from the old game (like handguns and jump-tossing grenades).
Basically, I have no desire to play this game. Apparently AA 2.5 still exists,
so I'm switching to that and forgetting about 3.
*** DONE America's Army 2.5
- State "DONE" [2012-07-03 Tue 06:02]
- State "STARTED" [2012-07-02 Mon 02:27]
The old version of the AA game. 3 was kind of a let down, so I'll give the old
client a try again.
Setup:
- Download AA 2.5 Assist program from http://aao25.com/ and stick it somewhere.
- Run the installer.
- Setup an account on http://battletracker.com/
- Set the AA 2 name in the Tracker Settings in My Profile.
This is pretty much the state of the game the last time I played it. I wish
more people were playing it though, so I could just hang out on Bridge Crossing
defense for hours. This isn't the fault of the game or anything, but the
average skill level is very advanced, so there's no hordes of n00bs to kill.
Played this for awhile, but I think my tastes in milsims has changed such that
only something at least as realistic as ARMA works for me.
*** DONE DayZ
- State "DONE" [2012-07-08 Sun 03:58]
- State "STARTED" [2012-07-03 Tue 06:02]
An ARMA 2 semi-persistent world zombie mod.
Setup:
- Install ARMA 2: Combined Operations. I bought it on Steam.
- Get Six Updater: http://www.six-updater.net/p/download.html
- Install Six Updater and run Six Launcher. Find DayZ themed program in the
server browser and click the Update button.
- Start up both ARMA 2 and ARMA 2: OA from Steam to get all updates.
- Start up ARMA 2: OA and create a new profile (make sure it's selected) and
change settings.
- Turn off all anti-aliasing. On my Radeon, this causes all the graphics to be
messed up.
- Set video memory to default.
- To prevent random temporary freezing, close Six Updater after launching.
DayZ SP:
- Note that <IP_ADDRESS> will break the SP mod. I've backed up a copy of 1.7.3 for
this reason and a working SP .pbo. Launch with the beta enabled and enable
@DayZ in the expansions menu and restart. Cheat scripts seem to be
non-functional and restoring saves only partially works, so each game has to
be a single play through.
A great concept, but a horribly buggy and has some flaws. This game was fun
for awhile, but the perpetual death match aspect of the game is really all
there is to it, and that gets old eventually. It's quite easy to get awesome
gear and just go live in the woods, but that's even more boring. I'll come
back to the game later if updates fix some of the problems with it.
Single player is pretty much no challenge and lacks the main allure of the game
(the unpredictable nature of other players), but is okay for some item
collecting and trying out stuff. Another option are private hives like
DreamHive (see http://www.dayzhive.com) for connection info.
*** DONE ARMA 2 missions
- State "DONE" [2012-07-11 Wed 10:19]
- State "STARTED" [2012-07-09 Mon 10:28]
Various promising looking mods.
- Chernarus Apocalypse: A COOP mod for ARMA 2. This is supposed to be for 6-10
players, but I wanted to try it solo. However, it's pretty close to
impossible, but it can be a little fun to see how far you can get.
- Dawn of the Apocalypse: The single player prologue to the above. Not bad,
but too short and the spawn is too dense
- Ghosts of Chernarus: Not a big fan of racing against the clock in this game.
I want my missions to take hours, if possible.
None of these were really all that playable. I'll maybe try more mods later,
but I'll finish the included content first. I've mainly just been making my
own missions so I can play the way want to, however this does take away any
surprise factor as by the time it's complete, I've already tested it several
times along the way.
Update: After heavily editing Chernarus Apocalypse, it can be pretty playable
solo. However, it's still not that much fun.
*** DONE Bunny Invasion
- State "DONE" [2012-07-12 Thu 02:18]
- State "STARTED" [2012-07-11 Wed 21:49]
A flash game, but this works okay for barricade games (sometimes).
Bunny Invasion: Easter Special: Pretty good and reasonably well balanced.
Bunny Invasion 2: Not as good as the first.
Not quite as good as Last Stand, but still worth playing through once. Line of
sight is always implemented wrong in the games, for some reason. Guns are
completely unrealistic and have no relation to their real world counterparts.
*** DONE World of Tanks
- State "DONE" [2012-07-16 Mon 19:53]
- State "STARTED" [2012-07-15 Sun 14:42]
A F2P tank "sim" MMO. Has tons of actual and prototype tanks (mostly)
realistically modeled for the first time in any game.
Okay for what it is, but not worth spending money on for a lot of good reasons:
- Too arcade-like for my tastes.
- The main problem is with the microtransaction model that I'd rather not
participate in. I'd rather have just bought the game for a few dollars and
skipped all of the treadmilling and other artificial paywalls.
- Would be more fun if the distances were much greater and accuracy improved.
Then it wouldn't need the weird mechanic of enemy tanks being invisible until
"spotted".
- Getting placed in a random battle where you're completely outranked isn't any
fun since you have no chance of penetrating the hulls of most of the enemy.
I've been in matches where I'm literally the only tier 1 tank.
- Has massive amounts of grinding and weird leveling mechanics, like crew
losing tons of XP when switching vehicles.
I cannot fathom why anyone would spend actual money on this (or waste the
massive amount of time required for grinding), but apparently a lot of people
do just that.
Update: I kept this around to play very occasionally, sticking to a
Leichtraktor through 2 crew experience levels. From what I can tell, there's
no real point in trying to get a better tank. The game doesn't actually get
any better than this -- just more expensive.
*** CANCELED Cyber Dungeon Quest
- State "CANCELED" [2012-07-17 Tue 21:36]
A game in Clojure.
http://resatori.com/cyber-dungeon-quest
Doesn't seem to want to load in Conkeror (even on Windows). Since it's
probably not that great anyway, I'll skip this.
*** DONE War Inc. Battlezone
- State "DONE" [2012-07-21 Sat 19:50]
- State "STARTED" [2012-07-21 Sat 19:11]
A F2P shooter. Available on Steam.
Standard FPS schlock.
*** DONE DayZ (Lingor Island)
- State "DONE" [2012-08-03 Fri 11:11]
- State "STARTED" [2012-08-02 Thu 09:07]
Though I'm thoroughly bored of normal DayZ, there's a new variant of it up with
a completely different map. This is probably enough to make things interesting
again for awhile.
Setup (this will probably be out of date very soon):
- Grab this file<EMAIL_ADDRESS>- Extract the @dayz_lingor folder to the OA root folder.
- Download the Lingor Island map from here:
http://www.armaholic.com/page.php?id=10792
- Put the @lingor folder from that in the OA root folder.
- Grab the map patch from here:
http://www.icebreakr.info/files/lingor_sounds.pbo.lingor14.bisign
- Put that file in @lingor/addons.
- Manually (re)install the most recent beta in order to get a copy of the link
to launch OA with the Beta patch enabled.
- Got into Expansions and enable all Lingor Island content. Restart.
- Filter by "lingor" and at least a few servers should come up. Join one of
those.
- To play normal DayZ again, go back into Expansions and re-disable all the
same content.
The main good thing about this mod variant is that all buildings can be
entered. However, there are some serious downsides to it too:
- The map is much smaller. Survivor contact is way up as a result.
- Several additional bugs and more of an overall unpolished feel.
- There's currently only a few servers, so getting on is often impossible.
- If you want to loot an area no one is in, you have to wait several minutes
for the spawns to initialize.
- The jungle environment is probably great for other mods, but feels a little
wrong for DayZ. Chernarus is a far more convincing setting.
- Military-grade equipment is far too common. I'd actually prefer DayZ weapons
were 90% civilian, with military stuff being insanely rare and highly
contested for. More civilian weapons would be needed first though.
Played this for awhile, but got tired of it. Will possibly check back later if
a lot more progress occurs on this mod variant.
*** DONE Millennium Remake
- State "DONE" [2012-08-04 Sat 20:57]
- State "STARTED" [2012-07-30 Mon 01:06]
This is a remake of the 1989 game Millennium 2.2. I was thinking about playing
the original, but this version appears to be feature-complete and obviously
looks and sounds way better. This also includes some nice features that remove
some serious tedium present in the original.
http://glitch01.wordpress.com/
This remake still has a couple problems:
- The computer opponent cheats in order to artificially keep your average ship
count per colony below 30.
- Some sloppy programming in a couple places.
- Remote colony management is a bit clunky.

- Battles can't be skipped. Normally I'd want to watch them, but they're
pretty boring here.
This is an okay game, but needs more balancing and strategy to be truly
interesting.
*** DONE Immortal Defense
- State "DONE" [2012-08-07 Tue 11:51]
- State "STARTED" [2009-10-21 Wed 20:41]
Conceptually excellent tower defense game that includes active participation on
the player's part. Adds some story elements not typically seen in this genre.
Complaints:
- Map sizes too small and/or game a bit too fast. Not enough time for
strategic pondering.
- Would prefer just to place towers rather than engage enemy manually.
- Needs to support higher resolutions.
- Whatever sound lib is being used here errors when initialized.
- The final infinite wave level at the end of each chapter goes way too fast.
Even with infinite resources, it's impossible to get more than a couple
minutes into these.
Played quite a bit of this. I always intended to finish it, but I guess I lost
momentum, since I haven't touched it in years. I'll close it to clean up
what's probably an abandoned effort. I think the imprecise nature of the
towers makes me not actually drawn to it, despite its many good points.
*** DONE Photopia
- State "DONE" [2012-08-08 Wed 04:37]
- State "STARTED" [2012-08-07 Tue 14:08]
Supposedly a good story-based IF.
http://www.wurb.com/if/game/255
Worth playing (or rather, reading). One of the better story IF games and uses
the medium pretty well for that purpose.
*** DONE The Weapon
- State "DONE" [2012-08-09 Thu 23:25]
- State "STARTED" [2012-08-09 Thu 21:04]
Looks like an interesting one room scifi IF game. The virtual feelies in this
convinced me to give it a try.
http://ifdb.tads.org/viewgame?id=tcebhl79rlxo3qrk
Pretty good, with clever puzzles. It's short of great though, mostly due to
its length, lack of really excellent writing, and less than completely
satisfying ending.
*** CANCELED Red Orchestra 2
- State "CANCELED" [2012-08-10 Fri 22:42]
An FPS, but seems like it might be good enough.
Probably a fine game, but I've got my ultra-realism fix with ARMA 2, which
looks way more realistic.
*** DONE Violet
- State "DONE" [2012-08-11 Sat 03:40]
- State "STARTED" [2012-08-11 Sat 01:22]
A supposedly unique IF game.
http://ifdb.tads.org/viewgame?id=4glrrfh7wrp9zz7b
Though not my normal subject matter, this is well written enough and original
enough of a concept to be quite good in my opinion.
*** DONE 9:05
- State "DONE" [2012-08-12 Sun 02:52]
Supposedly a super-unique and replayable (although short) IF game.
http://ifdb.tads.org/viewgame?id=qzftg3j8nh5f34i2
Has one really good concept, but that's all it has.
*** DONE Death Off the Cuff
- State "DONE" [2012-08-12 Sun 14:35]
- State "STARTED" [2012-08-12 Sun 13:05]
An interesting concept.
*** DONE Shade
- State "DONE" [2012-08-13 Mon 11:46]
- State "STARTED" [2012-08-12 Sun 20:49]
Another supposedly creative one-room IF.
http://ifdb.tads.org/viewgame?id=hsfc7fnl40k4a30q
Not really that great. Too linear, nonsensical, and the mystery revelation is
pretty obvious within the first few moves.
*** DONE Ascii Sector
- State "DONE" [2012-08-14 Tue 14:47]
- State "STARTED" [2010-11-03 Wed 21:47]
A text-based Privateer-clone. Using the binary Linux port, which to my
surprise, actually worked. http://www.asciisector.net/
Complaints:
- It's impossible to tell NPCs apart in port, since they're all just dots. A
smarter system would've been to use special chars for all objects and letters
for the NPCs with a letter being their first name, maybe with colors used as
job type or something.
- Released binary-only for no good reason, with no FreeBSD port. Why anyone
feels the need to closed-source a text game is beyond me.
- "ASCII" is an acronym and as such, it should be in all capital letters.
Didn't really play this too much. It's an okay game, I guess, but missing
something that would make it particularly compelling. Will keep it on
netbooks for emergency boredom alleviation.
*** DONE ARMA 2
- State "DONE" [2012-08-18 Sat 20:48]
- State "STARTED" [2012-07-04 Wed 10:06]
Since I picked this up to play DayZ, I might as well play this some. I sorta
liked Operation Flashpoint, but got frustrated with flying helicopters, put it
aside with the intention of playing it more later, and then never got around to
it again.
Setup:
- Rebind flight controls like this: http://www.youtube.com/watch?v=mfciVb_rYHw
I apparently am unable to not suck at flying helicopters in this game, but
this control scheme at least makes it possible to not crash (usually with
multiple reloads).
This is definitely what I've been looking for in a milsim. I'm actually quite
glad I got this, and can ignore all other FPSes for the foreseeable future as
none can compare to ARMA's realism.
Giving up on the Harvest Red campaign on the final mission. Two tries of many
hours into it both resulted in bugged states. It's totally possible to avoid
these issues, but not worth all the retrying for me. I'm also skipping EW,
since I don't like flying helicopters. Finished all stock SP missions, minus
Freedom Fighters (which is too imbalanced to be fun, IMO). This concludes the
base ARMA 2 game for me. Though a sometimes buggy game, this was definitely
worth playing.
*** DONE ARMA 2: Operation Arrowhead
- State "DONE" [2012-08-19 Sun 23:08]
- State "STARTED" [2012-08-18 Sat 01:52]
The first expansion to ARMA 2. The missions here are supposedly superior in
quality to the base game campaign.
This was a better campaign than the original. I might pick up the Private
Military Company expansion too, since that looks the most promising by far.
I'll wait awhile though, since it's currently $10. Then if I'm really dying
for more content, I could also pick up the British Armed Forces expansion.
*** DONE ARMA 2 mods
- State "DONE" [2012-08-21 Tue 01:02]
- State "STARTED" [2012-08-20 Mon 14:53]
Though like any moddable game, most mods for this one are crap, but I've been
following ARMA 2 long enough now to notice some that are universally highly
regarded and thus probably worth trying.
- ACE: Mega-realism update and tons of extra stuff. Run the included
"aceclippi" application while changing settings. Be sure to at least remap
the interaction menu buttons. Follow these instructions (which includes some
of the following, plus others):
http://www.the-wrecking-crew.co.uk/page/installation
- ACRE: Improved radio. This is required if I play online (and I'd need a mic
too). Probably will skip this though, since I'm not really into MP.
- JSRS: Improved sound.
- ASR AI: Maybe use this to reduce the AI's insane ability to source
incoming fire. Installed this from Six Updater as well.
Modding existing missions: There's some missions I think could be good if
modified some. I don't want to go as far as learning how to create actual mods
though. See this site for pbo editing tools:
http://community.bistudio.com/wiki/ArmA:_Community_Tools
*** DONE Anchorhead
- State "DONE" [2012-08-27 Mon 02:04]
- State "STARTED" [2012-08-09 Thu 23:40]
- State "STARTED" [2012-08-09 Thu 08:49]
Another Lovecraftian IF game.
http://ifdb.tads.org/viewgame?id=op0uw1gn1tjqmjt7
One of the best IF games I've ever played, though not perfect. Also as some
bugs, but these seem not to be game-breaking.
*** CANCELED FO:NV mods
- State "CANCELED" [2012-08-29 Wed 00:43]
If/when I finish all the expansion packs, try the game with these mods if I
ever want to do another full play-through. There's a lot of potentially good
mods out there, but given how buggy the game is, it's probably best to keep
them to an absolute minimum.
A World of Pain: http://newvegas.nexusmods.com/mods/38719
NVInteriors: http://newvegas.nexusmods.com/mods/43534
DFB - Random Encounters: http://newvegas.nexusmods.com/mods/42793
Droppable Quest Items: http://newvegas.nexusmods.com/mods/35639
I may also want to find one that vastly ups the damage of firearms and reduces
ammo availability accordingly. Having played the game a lot, I'm pretty sure
this would work and make guns more realistic.
Skipping this.
I'll finish the last expansion pack I bought and call it quits here.
*** DONE more ARMA 2 missions
- State "DONE" [2012-09-10 Mon 11:03]
- State "STARTED" [2012-08-22 Wed 16:21]
Some promising looking missions/campaigns.
- Escape Chernarus: Turn off any AI mods before playing this. Trying this just
by myself. This is a really good mission to play solo. Finally beat it
after many tries, though it wouldn't have taken as many had I forgot to lock
my server and some n00b showed up and killed me. Always lock the server.
- The Forgotten Few (campaign): A Chernarus multi-part SP mission.
- Martyrdom 2: Requires Fallujah map. Install this from Six Updater. Seems
nice, but doesn't work properly with ASR AI or something, at least for me.
- Team Shadow (campaign): A sniper campaign. Looks good, but didn't get around
to trying it.
- Dynamic Zombie Sandbox: Best ARMA 2 zombie so far. There's little reason to
play the others with this available. I do, however, wish it had DayZ's blood
system and item collection. It also needs more stuff to do.
I've almost been defaulting to editing missions now, since there's always some
aspect of them I find unpleasant enough to be worth the effort.
I'm getting a bit bored with ARMA 2, so I'll shelve it until I buy the PMC
expansion.
*** DONE Nexus: The Jupiter Incident
- State "DONE" [2012-09-10 Mon 11:16]
- State "STARTED" [2012-05-15 Tue 08:46]
Gave up last time during this one mission I was having problems with (Titan),
but that was 8 years ago. The style of space combat here is really unique and
quite well thought out, so I'd like to give it another shot.
Pretty easily beat the Titan mission after a couple tries. It turns out I was
just getting unlucky before with computer-controlled ship positioning and siege
laser hits.
A few complaints:
- The control scheme could have used a bit more thought. I'm still not always
sure what orders override what.
- Some of the lore is a bit shallow/silly (though most of it is pretty good).
- Random stuff happens outside of your control that can ruin a mission. I
guess this isn't too bad though, since it's realistic.
- With such a nice universe, it's kind of a shame to experience it through a
completely linear plot. Once the missions are done, there's very little
reason to keep playing this.
- It's a bit difficult to experiment with different builds, since they require
installing components over multiple missions.
- A lot of realism is included (e.g., stopping requires thrust in the opposite
direction), but then there's oversights (e.g., continued travel in a single
direction at a constant speed requires constant thrust).
- Items that show up as available to mount on one ship sometimes aren't on
another ship of a different class.
- Owned ship shields are bugged in the second to last mission -- they drop when
you issue a move command. It's still possible to win without taking losses,
but struggling against bugs in the final significant battle sucks.
- The second to last mission is pretty bugged (shields randomly dropping and
getting sucked into the wormhole). After a dozen reloads trying to work
around them, I gave up and just watched the ending on a LP. As the last
mission isn't really a challenge, I didn't miss anything.
Nexus 2 is currently in development now and is slated for a Q4 2012 release.
I'll probably pick that up when/if it comes out, if it looks competently made.
*** CANCELED Alternativa
- State "CANCELED" [2012-11-10 Sat 14:26]
Wait until this is around $10 at most.
Watched some of an LP of this and decided I no longer want to play it.
*** DONE ARMA 2: Namalsk
- State "DONE" [2012-11-10 Sat 15:52]
- State "STARTED" [2012-11-03 Sat 23:06]
This is also a popular DayZ map, but I'm just trying out the single player
campaign.
This has thoroughly terrible writing and grammar.  However, this would be forgivable if not for the frustrating gameplay
issues, mostly involving the custom enemies. If this was just a milsim mod and
they hadn't bothered with monsters, it would probably be very excellent. As it
is now though, it's not really worth playing.
*** DONE The Temple of Elemental Evil
- State "DONE" [2012-11-23 Fri 21:37]
- State "STARTED" [2012-11-10 Sat 18:56]
I recall this being mostly panned by hardcore RPG addicts at the time it was
released due to being rushed to shelves, which is why I never bought it. The
problems are now mostly addressed by the Circle of Eight 7.5.0 NC modpack,
which adds new stuff, fixes some bugs, and activates areas that weren't
accessible in the retail version.
Complaints:
- Has lots of bugs, from minor graphical glitches to full crashes and save
corruption.
- Uses a much smaller subset of the rules system that NWN has.
- Starts off with a massive network of boring fetch quests. This is avoidable
by doing the modpack's Welkwood Bog instead, if you avoid a bug of it sending
you to the wrong place.
- The radial menu system sucks, as does most of the rest of the UI.
- Would've been much more fun as a 2nd edition rules game.
- The game's difficultly (or inability to change it) forces you to powergame
your party and stats, at least early on. Having the option to play on
slightly reduced difficulty and with a more challenging party build could
have convinced me to replay it (if also not for all the bugs).
- The roll history is vague to the point that you can't tell what's going on.
Notes:
- Activate new content by talking to the Hommlet smith.
- Add Craft Wonderous Item and Craft Magic Arms and Armor for both a wizard and
cleric. The loss of 4 feats is more than made up for with the awesome gear.
- Select all stat buff spells on level up since the scrolls don't exist.
- Always up base damage to +3 before adding bonus damage. Then add burst
damage before adding normal rolls of the same element. Elemental
enchantments max out at 4 types (3 for characters with sneak attack).
- It's lame, but it's best to follow a walkthrough if doing the Hommlet fetch
quests. If done in the wrong order you can get forced into getting married.
- Filling NPC party members up with level 0 scrolls is a good way to prevent
them taking loot, though they'll still take money. But with the level cap at
20, it's better to just stick to 5 PC characters.
Despite the problems, this is still a good game and is almost as entertaining
as IWD2, at least with the modpack. I left some of the new content unfinished,
but between this and NWN, I think I've had enough of the 3.5 ruleset for now.
*** DONE Project Zomboid 0.1.4c Demo
- State "DONE" [2012-11-23 Fri 20:30]
- State "STARTED" [2012-11-24 Sat 10:36]
Has a fully custom 2D isometric engine.
Has some promise, but needs a lot more stuff to do and more items. This a long
way from being complete enough of a game for me to buy. While the interface
leaves a little to be desired, the engine is really nice.
*** DONE Zork I
- State "DONE" [2012-12-05 Wed 10:23]
- State "STARTED" [2012-03-04 Sun 11:38]
The most famous IF game ever. Might as well give this a try finally.
Complaints:
- Some of the puzzles in this game are a bit counter-intuitive. A good IF
puzzle should require creative and/or lateral thinking. I guess this is
somewhat forgivable given that it was among the first.
- Too much trial and error. There should be clues in the text that make your
random actions make sense.
- Includes mazes.
- The room layout doesn't lend itself well to map-making.
- Normal play can result in un-winnable states with nothing to indicate such.
Gave up trying to blind-play this once I encountered the first of two mazes, as
randomly guessing directions in those is no fun. Just finished it with a
walkthrough to read the rest of the game text. Will be skipping the other Zork
games since they look like they have more of the same flaws.
*** DONE L2J
- State "DONE" [2012-12-16 Sun 16:22]
- State "STARTED" [2012-12-13 Thu 22:38]
Setup an L2J server and see how far it's come since then. I definitely won't
actually bother playing it more than just a little though. The last time I
looked, it was playable, but just barely.
Server guide: http://l2jserver.com/wiki/Setup_Server
Client guide: http://www.westknights.com/forums/viewtopic.php?f=34&t=2208
Tasks:
- Upgraded Java to 1.7. Updated JAVA_HOME and PATH.
- Upgraded Eclipse to Juno while I was at it. Note that the JDK upgrade
requires editing the specified JRE under "External Tools" in the drop-down
next to the "Run" button. This wipes out my Counterclockwise/Leiningen
setup, but I wasn't using it anyway.
- Grabbed an unstable snapshot of L2J server and datapack, since I probably
won't bother changing any code.
- Put database locally on Windows so as not to gunk up cellblock.
- Merged in the game client system directory changes.
- Updated hosts file to redirect to localhost.
- Respawn is way too fast. Running this fixes that: update spawnlist set
respawn_delay = (respawn_delay * 3);
Got the server up after some work. There's definitely still a lot of features
missing in the emulator, but the core game seems to be there.
Complaints about Lineage 2:
- Item tiers by level + enchanting doesn't really work.
- Has leveled XP and even drops. I've always felt this turned an otherwise
open world into one where you progress through small parts of it that were
worth visiting. It also has implications for farming needed drops.
- Enchanting is a huge timesink for no good reason.
- Has all kinds of random, weird systems that make no sense and are explained
nowhere. Basically, it's full of the wrong kind of complexity. I'm sure
it'd be fine for people that've played this for years, but much of the
mechanics of these are impenetrable for the newbie.
- Targeting and movement and are sloppy and imprecise.
- Too group-centric. In L1, almost everything was solo-able with the right
character, though grouping still had it's benefits. Here, if you want to
solo, you're simply locked out of the majority of interesting content,
especially late game.
- There's really no original ideas in this game. It's all been done before,
and with less mindless grinding.
There's a lot of little things wrong with L2, but these are the big ones.
Despite the problems, it's okay for a minor MMO fix, but there are far better
options out there.
*** DONE Angband
- State "DONE" [2012-12-26 Wed 10:44]
- State "STARTED" [2012-12-24 Mon 15:27]
Played a lot of Angband back in the 1990s. Giving it another look to see if I
want to keep playing it (or, more likely, its variants). Installed on FreeBSD,
but tiles and multiple windows don't work there. It's still playable, but the
other windows do make life easier, so I'm mainly using the Windows version.
This is still fun, but my main problem with it is that I'd prefer levels not be
regenerated when revisiting floors (I forgot how annoying that was). There are
also definitely better variants now that make the experience more interesting.
I've reviewed the entire list and am thinking about checking out (in order of
currently perceived likelihood of being good) Unangband, Z+Angband, and
Hengband (seems dead now). However, none of these seem as good as ToME.
*** DONE ToME
- State "DONE" [2012-12-27 Thu 10:44]
- State "STARTED" [2012-12-17 Mon 01:25]
One of the more actively developed Angband-variants. This has been recently
updated to a more original setting and renamed to Tales of Maj'Eyal, so I'm
playing that on Windows. http://tome.te4.org/
This is one of the best games I've ever played. There's some minor things
about it that could be improved, however:
- I grabbed the code for this and it looks clean enough, but the many
unforeseen interactions beg for some more formal way of modeling game state.
If done right, this would fix the many Lua errors, most of which seem to
involve operations on null values.
- Some of the gimmick dungeons, like the Sandworm Lair, get old after playing
them a zillion times.
- Stun/freeze and confusion immunity is a bit too important. Almost every
build has to prioritize finding items for this. In most games, death is
guaranteed by Darkfell due to not getting lucky on immunity drops. The only
recourse is then to farm up items for days in the Ruined Dungeon.
- Summoners and minion necromancers could be awesome, but are too annoying to
play due to pathfinding and space issues.
- While enemies scale in level with you, you still mostly fight the same ones
over and over. Towards the end of the game, you'll be encountering level 50
rats, wolves, and bears. I'd rather see new monster types at higher levels.
- The level cap is hit too quickly. I hit the cap on my winning run with still
many plot dungeons to go. Had I farmed the farportal, I could have easily
hit it before ever leaving for the Far East.
- I'd prefer the game be easier but only have rougelike mode. The game seems
to be designed around the assumption that you will use multiple lives.
This is so far removed from Angband, it's barely a variant at all apart from
some superficial similarities. I finally managed to beat it with a Cornac
Solipsist on easy mode. I'll come back some time in the future and try winning
with a different class. Development is still active, so there will be a lot
different in a couple years.
*** DONE GNU Typist
- State "DONE" [2012-12-28 Fri 22:20]
- State "STARTED" [2012-12-27 Thu 09:56]
A curses-based typing tutor. This might improve my speed/accuracy some.
This did help some with numbers and special characters. I noticed that I'm
faster with the Das Keyboard, but more accurate with the IBM Model M, probably
due to the difference in key pressure needed. This was mildly entertaining for
a few hours, but I'm uninstalling it now that I finished all the lessons that I
seem worthwhile.
*** DONE ZAngband (revisited)
- State "DONE" [2012-12-29 Sat 17:14]
- State "STARTED" [2012-12-28 Fri 01:37]
Several other Angband variants are better than this, but this is ported to
FreeBSD, so I'll play it some.
The port of this is much better than when I last played and, unlike normal
Angband, runs (mostly) properly on FreeBSD.
Zangband is pretty unforgiving. While I can consistently get a character to
around mid-level, getting the required setup to go deeper tends to be much
tougher. In the meantime, I'll usually die farming the mobs that could
potentially drop the stuff I need (typically from one of the effects I'm trying
to get resistance to). Add the low encumbrance, particularly of non-STR chars,
plus mobs that steal massive amounts of GP and this gets especially tiresome.
If it weren't for these things, it'd be a decent Angband variant. I'll keep
this around as my main game on the system until I get back into Nethack, but
probably won't play it much anymore.
** Math goals
*** DONE quantitative research
- State "DONE" [2012-09-10 Mon 11:22]
- State "STARTED" [2012-09-10 Mon 11:18]
Technically work-related, but I also want to know about this for my own
benefit. Might just get a mental outline of the subject and stop there.
Read the Wikipedia page and know enough to know I don't want to read any more.
QR is just statistics+sociology -- two fields I find pretty boring. I need to
know statistics, but I'd rather keep learning that independently of the
sloppiness of the sociology pseudoscience.
** General life goals
*** DONE survive Afghanistan
- State "DONE" [2012-03-20 Tue 17:23]
- State "STARTED" [2011-08-21 Sun 05:52]
The plan here was to stay in Afghanistan until 2012-11-26. I was fully aware
that it would be unlikely that this would work out as nicely for any number of
possible things that could go wrong. As suspected, something did, and I'll
have been in country for around 204 days. This is still plenty of time though,
as my original goal was to spend at least 6 months there.
I got what I wanted out of it, which was a large pile of money. While the pile
could have been bigger, as planned in ideas.org, I've been raising the bar on
what I'm willing to suffer in exchange for money now, and conditions there had
gotten really, really bad. Though I'm now technically financially independent,
I do still want to finish my targeted buffer before retiring completely, but I
intend to do that in a manner where I incur the least possible suffering for it
(time is not as much of a factor now, since I could realistically walk away
whenever I wanted to).
Events evolved after my leaving such that it became clear that I wouldn't have
been able to milk my position there for much more than I already did. So,
there's no regrets about anything that happened as I pretty much achieved a
near optimal outcome.
*** DONE write emergency resignation letter
- State "DONE" [2012-06-13 Wed 09:50]
- State "STARTED" [2012-06-06 Wed 02:46]
It's always a good idea to have one of these handy. That way if your employer
insists you do something you'd rather not, you just pull this out and the
problem is solved. In my case, I probably don't want another job and could
just say "I quit", but there's no sense in limiting options needlessly.
Besides, I'm pretty much beyond caring what impressions I leave on passing
scenery, like former coworkers.
Wrote a letter in LaTeX (which makes letter markup pretty painless) and waited
a few days and reviewed the wording. It's pretty much perfect now without
being too long. It's also written in a manner that lends itself to generic,
completely voluntary resignation. Will print this out, sign it, and carry it
around until it's needed.
*** DONE nootropics
- State "DONE" [2012-11-25 Sun 20:51]
- State "STARTED" [2012-09-17 Mon 11:47]
I'm skeptical about these, but I'll give the cheap ones a try first and see if
I notice results. I doubt I'm immune to the placebo effect, but since I do
track productivity very closely, I suspect I'm less likely to be fooled by it.
The fact that the better nootropics definitely have an effect isn't disputed.
The part I'm mainly skeptical of is whether or not they result in an increase
of the productive kinds of mental activity. For example, caffeine gives one a
stimulus boost, but unless I'm about to fall asleep, it doesn't really help me
write better code or retain more information, and too much of it just results
in useless scatterbrain non-thinking. There is also some definite snake oil in
the herbal/supplement side of nootropics, so I'm only sticking with stuff
confirmed by studies. A good self-study is here (though it's not
even single-blind): http://www.gwern.net/Nootropics
One impetus for this is that I currently like nicotine's (very mild) nootropics
effects and would like to replace that with something that doesn't murder me.
Apart from the physical addiction, I know from experience that absent nicotine,
I'm much lazier. If this works, it'll save money too.
First I want to establish effectiveness by targeting 2 nutrients essential for
mental health and then adding the most basic racetam.
- Supplemental intake of Choline Bitartrate of 500mg/day (2 doses). I'm
starting with GNC Choline 250. If I stick with this, find a cheaper source.
- Supplemental intake of Omega-3 of 850mg/day. Since I don't want to eat fish
oil, I'm going for flaxseed oil (which I got a ton of for cheap at the
grocery store). Flaxseed (not the oil) is super cheap and doesn't go bad.
If I stick with this, I'll order some bulk on Amazon.
- After 3 weeks of the above, add piracetam of 800mg/day (1 dose) and up the
Choline by 250-500mg. Do this for 2 weeks and if working well, go to 2
piracetam doses per day and up to double the Choline. After 3-4 weeks, take
the weekends off of piracetam and just take 250-500mg Choline.
After 1 month on piracetam, review stuff accomplished on it (both at work and
home). If improvement is noticeable, order bulk powder of piracetam and
continue use for another 6 months. Reevaluate at that time and consider trying
other racetams or otherwise redoing my stack.
Update: These don't seem to do anything for me. They do have an effect, but it
doesn't seem beneficial -- more just making me feel a bit spaz-like. At least,
they definitely don't increase focus for me.
** Macro-goals
*** DONE year-end review for 2012
- State "DONE" [2012-12-29 Sat 17:01]
Observations for 2012:
- This year's work life was divided into Afghanistan, a transition period on a
temporary project, and going back to DARPA for the rest of it.
- Due to being in Afghanistan, I lost a lot of time for doing stuff that's
actually interesting. However, since I made a ton of cash, it'll result in
earlier retirement and more stuff getting done overall in life.
- I've been incrementally increasing the minimal tolerance level for
work-related suckage. This has actually had excellent results. By clearly
stating that I'm not interested in bending over when an employers requests a
"favor", I ended up getting an extra +12% raise along with other
accommodations. My analysis here is that this is still risky for wage slaves
(you have to be ready to call a bluff, after all), but its risk/reward ratio
is a net gain and I wish I'd been doing this all along, even when I didn't
have the hand to back it up.
- Overall, this was yet another year of painful working, commuting, and putting
up with annoying employees and work bureaucracy. However, it was definitely
worth it. I can now quit working whenever I want, but my target date at
the current wealth gathering rate is early to mid 2014 (I'd quit earlier, but
getting some income in the next year makes sense for tax reasons).
Major goals for next year:
- The end is in sight. Start thinking about what I want to do post-work.
Prioritize all tasks here that have post-work value and minimize those that
are work-specific. If I'm still working by the end of year, this will change
to practically ignoring all work-specific skills. Organize my current ideas
into a written plan.
- Be ready to resign at any time. Despite engineering my work experience as
best I can from an employee position, there's only so much that can be done.
 While I don't have
everything planned out yet, I've thought more than enough about post-work
life to know I'll be okay. Taxes and other types of milking are increasing
starting next year anyway, so working is going to be much less worthwhile.
- Decide on which Lisp variant to commit to.
- Start on completing personal research tasks that involve languages I don't
want to use for the rest of my life. This includes the ML-variants, Scheme,
and logic-based language work.
* Project List (2011)
** Books: Computer Science/Programming
*** DONE Harnessing Hibernate
- State "DONE" [2011-03-11 Fri 10:24]
- State "STARTED" [2011-02-15 Tue 13:36]
Supposedly a rather crappy book, so just reading the introduction parts
(chapters 1-3). See the Hibernate entry under Work-Related Topics for how this
fits in to fully learning this topic. I only have this e-book as a .chm file,
making reading it especially inconvenient, but a coworker had a hard copy, so
I'm borrowing that. If I just skim this, I'll use the Hibernate Recipes book
for a more comprehensive read.
Update: Read some of this, but my gawd it's boring. I think I have enough of a
hang of Hibernate now that I can stop reading up on it in my spare time, but
this was mostly due to actually using it. One approach I didn't use was to
design my POJOs first and then have Hibernate generate my DDL from that. I
think I prefer it the other way though.
*** CANCELED Hibernate Recipes: A Problem-Solution Approach (1st Ed.)
- State "CANCELED" [2011-03-11 Fri 14:12]
Not using Hibernate anymore, so torturing myself with this book shouldn't be
necessary.
*** DONE Learn Python the Hard Way
- State "DONE" [2011-03-28 Mon 23:22]
- State "STARTED" [2011-03-14 Mon 23:51]
For me, this could have been called "Learn Python the Boring Way". It'd be a
marginally okay book for an absolute beginner though. Managed to slog through
the whole thing. Code is in ~/src/repo/python/lpthw.
Notes:
- Use `pydoc <identifier>' to get documentation on any built-in functions,
modules, packages, or dotted reference. These are pretty good, but really
need the exception info at the top.
- Creating a file full of functions with doc strings then running `import' in
the interpreter against the file name (minus extension) allows you to run
`help(file)' to get a full function list with documentation. Note that in
iPython in Emacs, this requires the key commands to scroll (f, b).
- Use `type()' to check types.
- Always at least declare classes with `class ClassName(object)', to inherit
from the object type.
- Created the project skeleton and copied it to ~/src/python/skeleton. Added a
README.txt file that lists the steps necessary to use it.
- To use nose, tests have to be in <project_dir>/tests/BLAH_tests.py. Each
module should have one test file (if needed).
- __init__.py files are needed in each directory that contains stuff in a
package. See ex50 for a proper example.
- To use setup.py on a per user basis, run something like `python setup.py
install --user'.
I made the mistake of assuming "hard" meant something similar to "theoretically
rigorous", and was disappointed to find it meant "repetitious" and/or
"tedious". This is my own fault though, since Python isn't that kind of
language, nor is the author that kind of person, and I knew both of these
things beforehand. The writing here also is pretty sloppy and needs some
serious proof-reading.  I'd also disagree with this method of even teaching programming,
since it focuses on language specifics and wrote memorization instead of
building up a framework of computer science fundamentals. Maybe if the target
audience was learning that stuff elsewhere, this book would be an okay intro to
Python syntax. The later chapters on how to structure a Python project are
pretty useful though.
*** DONE Python: The Essential Reference
- State "DONE" [2011-04-01 Fri 09:55]
- State "STARTED" [2011-03-14 Mon 13:46]
This book is really more of a desk reference, and I've been using it for that
for a few years now. I'm just giving Part I (chapters 1-11) a quick read to
complete my base Python knowledge.
Notes:
- A `,' at the end of a print skips the CR/LF, but it also inserts a space
between print output.
- `yeild' can be used to create "generator functions". An example given is a
program that mimics the `tail' Unix utility. Another thing it can be used
for is coroutines, which can save on creating threads.
- Use dir() to inspect objects, including (with no argument) the toplevel.
- __name__() functions implement language operations (e.g. __add__() on lists,
implement +). These are usually documented in the type's pydoc.
- __new__(): constructor, __init__(): initializer, __del__(): destructor.
Normally, __new__() and __del__() aren't declared in user-defined classes.
- Use the @staticmethod decorator just before a method to make it static.
- __name variables are private class members.
- If I'm writing code with Unicode string literals, use a comment at the first
or second line of the file with `-*- coding: UTF-8 -*-'.
- Use isinstance() to check types, as it is aware of inheritance.
- Use copy.deepcopy() to clone objects.
- Use range() for a sequence of numbers, xrange() is a lazy-evaluated version
of the same.
- Use `with' statements to execute a series of statements within a runtime
context controlled by an object that serves as a context manager. This
includes files, locks, and connections. For example:
with threading.lock():
<several statements here>