Posts Tagged 'web'

On Electronic Chain-Letters

I’ve been sick, and I’ve felt like writing, but I didn’t know what to write. Funny thing about inspiration though, it can hit you at any time, and in any text box. I just happened to get the urge to write while responding to an email, and the result was something I wanted to share with everyone.

Blah

I'm not fat - I'm puffing my cheeks.

Hey there. I’m sick today, and I lack the will to do anything except sleep, sit at the computer or at the couch, and do almost nothing. I’ve been thinking for quite some time that I’d like to write an unnecessarily lengthy letter to someone in my immediate or extended family, and since you’re my father-in-law and we haven’t exchanged words in a while, you win the prize.

So, when you forwarded that “touching true story” I thought I’d take a look at it rather than AUA it (Archive Upon Arrival).

The fact of the matter is, that I don’t care for forwards. I’ve got one friend (that’s one person, in the whole of my 200+ email contacts) that has ever forwarded me anything I thought was interesting. Most of the forwards I receive are silly “touching stories” that really don’t mean much to me. I’ve had too much experience with fabricated and embellished stories on the Internet, I suppose.

Anyhow, a really good friend of mine introduced me to snopes.com last year, and ever since then I have used it when faced with something on the Internet that seems outlandish. A quick query on snopes.com revealed a most interesting article written specifically about the email you passed along today. Interestingly, this particular story actually has quite a few true elements in it (most of the stories I have seen circulated in email forwards are so exaggerated and embellished that they are rarely representative of any truth that may have served as their premise). However, several key facts were changed and exaggerated.

The story took place in the early eighties, the boy’s name was Frank, and the Make-a-Wish foundation actually granted this as a wish (along with a ride in a hot-air balloon, and a trip to Disneyland). The most touching part of the real story doesn’t even appear in the email, and to make it worse, the email is copied nearly word for word from one of the Chicken Soup for the Soul books. The night that the boy died, it was five firemen that climbed into his room, not sixteen.

Here’s the link to the true account (along with the version of the email that the author saw, which is slightly different still from the one you sent me):

http://www.snopes.com/glurge/fireman.asp

So, yes. The story is touching, but I hate reading these stories in email forwards because they are almost all full of embellishment and twisted truths. I find it much more satisfying to scour the news for heartwarming articles that are presented as a collection of facts with the purpose of informing the reader. That way I’m getting completely true stories, which are better than the big, bold, colorful words (usually in the Comic Sans font) that have been changed or invented to elicit an “oh, how darling” response and usually wrap up with a self-righteous plea from the author to get me to say a prayer for some cause (usually, something I don’t care about).

In my view, the Internet is only good for six things, and half of them I don’t want any part of (pornography, gambling and robbery). The only three things I use it for are (presented in order of the value I place on them):

  1. Humor/Entertainment
  2. Communication (keeping in touch with close friends and family)
  3. Access to accounts and services (banking, on-demand-self-publishing services, etc.)

Even getting factual news on the Internet can be a challenge. My father runs the Internet arm of a newspaper corporation in Arizona, and this is a problem they deal with on a regular basis. Sure, there are news sources on the Internet that can be trusted, but they are drowned out by all the chatter and clutter from sources like the mysterious writer of that email you sent me (who, again, did little more than poorly copy another “touching” email, which was nearly a direct copy of a segment of the Chicken Soup for the Soul book).

So, I just use the Internet to look at fun stuff, like this article and clip from Robert Downey Jr.’s acceptance speech. Occasionally there is some interesting news at those trusted sites, like this article about a group of apes that had never had human contact before. Mostly, the Internet loves things that are silly and irreverent, like this historical look at a group of entertainers known throughout history as fartistes, among other names.
The main reason I love the Internet, though, is because of people like David Thorne. I really can’t explain all that well what it is that I love about his work, but I would encourage you to read this email exchange he had with his renters, and this exchange he had with a Blockbuster employee. He is extremely irreverent and at times a tad inappropriate. However, he is a comedic genius. After one of his earliest email exchanges went viral a coworker told David that he would never be able to do it again. David bet him his Christmas bonus that he could, and two weeks later he had another email exchange that went viral.

Essentially, what I love about David Thorne is that he embodies the idea that the Internet is not to be taken seriously. He is quoted as saying, “the Internet is a playground.” I agree, and that is why I don’t like coming across stories that are supposed to be “touching” on the Internet, unless they come directly from trusted news sources. If they don’t come from a trusted news site, then I’m a sucker for believing them until I’ve researched the facts myself.

As you can see, between David Thorne, funny/interesting stuff that comes to me in my feed reader, and finding funny videos like these ones, the Internet provides me with far more entertainment than I even have time for. It barely even leaves me time to read email, especially forwards. However, next time I get a forward from you that claims to tell a “true” story, I’ll check the facts on fark.com and tell you what they say. Sometimes the truth is better than the lies that circulate in chain-emails.

I hope you enjoy the links I’ve provided you with, and we all here love and appreciate the effort you make to maintain a presence in our life. Your daughter and grandchildren send their love, as do I.

Love,

-Brian

Fun YouTube and Others

From Cell Phone Photos

So, this is for my friends. Specifically, I was talking to someone tonight about some fun stuff on YouTube and I decided to make a list of some of my recent favorite songs, videos and artists to share.

I’ve spent the last few minutes reviewing most of these videos because I tend to forget the presence of little offensive words here or there. For the most part, these songs or videos will be marked to warn you if you might want to watch before showing your children. However, my kids have seen most of these, so it shouldn’t be a problem.

All links open in a new window, so click away!

Robots

This song is by Flight of the Conchords, and as such has a curse word in it (wrong word for donkey/butt) so you may not want to show it to your kids. However, if you don’t mind them hearing that one word a few times in the chorus, this is a really funny song/performance. Check it out on YouTube.

Star Wars Rap

This song has a few mature elements that are reference but not explicitly talked about, and they use one word that you may not want your child repeating (a less than kind word for urine). To check it out, click through to Atom.com and watch this hilarious Star Wars themed rap. Even if you’re not a Star Wars fan, you should enjoy this.

Tighty Whities

Next I’ll share a song that may not be your style if you generally only listen to country music or classical, but the theme is too funny not to share the song. Plus, it’s completely clean as far as language and themes are concerned. It’s part of the “Pull ’em Up Campaign” aimed at getting people to pull their pants up and quit showing us their underwear. Even if you generally can’t stand rap, you’ve GOT to listen to this song. I didn’t let my son hear this one, but not because of the content.

OK, the rest should be fine for your children. Well, this first one might not be if you don’t want your children watching animals answer nature’s call. It’s completely natural though! This is Rhett and Link doing an “inappropriate” commercial for a small zoo.

Inappropriate Zoo Commercial

For a direct link, click here:

http://www.youtube.com/watch?v=kszzbkfJ-5Q

Jonathan Coulton

Jonathan Coulton is a musical comedic genius in my book, and here are two completely kid friendly songs (unless you strictly don’t expose them to violent themes, then the second one about zombies killing people probably won’t be good). These are both live performances (where you get to see his funny interactions with the audience) but he does studio recordings as well that are better sounding.

Skullcrusher Mountain

http://www.youtube.com/watch?v=5IBewKuV9BQ

Re: Your Brains

http://www.youtube.com/watch?v=9e3gngvFdxg

For more about Jonathan Coulton, please visit his website.

This one may only appeal to your children (or the child in you), but it’s a cute stop motion animation that I recently got a chuckle out of.

8-Bit Water Slide

http://www.youtube.com/watch?v=lkYVazguJCY

Also for the children, a few near-Pixar quality animations that are funny, entertaining and good for adults also!

Pigeon: Impossible

http://www.youtube.com/watch?v=jEjUAnPc2VA

The Passenger

http://www.youtube.com/watch?v=OGW0aQSgyxQ

The Magic Box

(Ultra sensitive parents be warned: This video contains partial nudity – butt cheeks.)

http://www.youtube.com/watch?v=sC7rIZ5dOPY

A Little More Fun and Then We’re Done

OK. I’ve embedded way too many videos, so the final four videos will just be links. They are all funny, so make sure you watch them, but the last two you might want to watch without your kids the first time you watch them. I’ll mark them with an asterisk (*) to remind you that you need to review them before showing them to your children.

Laughing Kids (very cute)

Kid Singing Britney Spears Scared to Death by his Mom (watch all the way through to the end)

No. No! NO!!!” – The Greatest Scare Prank *

Gun Scare Prank *

I know there is a lot here, but I don’t see how you couldn’t love most of these. 😀 Of course, if you don’t love them, I won’t be offended, but I do ask that you at least check them all out when you find the time.

Enjoy!

Boom De Yada

I’m writing a post mostly out of guilt today. My site has been untouched for far too long, and lately it’s been pulling in a lot of views. That makes me feel like a horrible person.

So, I’ve been thinking about sharing this little something for a few days anyhow, and today I decided to just do it.

A while ago I happened upon and fell in love with the wonderful world of xkcd. If you’ve found your way to my blog and have yet to check out his webcomic, you should be ashamed of yourself.

Anyhow, xkcd’s creator has done many fabulous comics that I love, but I recently discovered a fun video based on one of his comics that I wanted to share with you.

First, here’s the comic (titled “xkcd Loves the Discovery Channel”):

xkcd Loves the Discovery Channel

xkcd Loves the Discovery Channel

(Click the image to view it full size on the xkcd site.)

Next, here’s a video to explain the cartoon’s connection to the Discovery Channel:

Also, check out this other Discovery Channel video.

Finally, the moment you’ve all been waiting for… the new video I found!

(Note: The Vimeo player is great, and it’s one of my favorites, but on many browsers it plays a lot smoother if you let the whole video load before you play. To do this, press play, then pause as soon as you see it begin to load the video. Once the seek bar is full of solid grey, it is safe to play!)

Vodpod videos no longer available.

more about “I Love xkcd on Vimeo“, posted with vodpod

I hope you thought it was as cute as I did.

Thoughts on Chrome So Far

I was about to write all about my problems with Chrome and Google Docs, so I did a quick document in Google Docs from Chrome, sent it to my blog at WordPress and grabbed screen shots of everything, then went to Google Docs in Firefox to grab screen shots of how it performs there and write up a quick document to show how it formats everything, then I was going to post that document to my blog to show how my work flow had been running so smoothly from Firefox.

Unfortunately, Google Docs wouldn’t post to my blog in Firefox for some strange reason (despite that I have always done things this way).  It’s always unsettling when things suddenly stop working the way they had been working consistently.

Overall, after using Chrome for nearly two weeks I have almost no complaints.  Of course, I was spoiled in Firefox with all of the ad blocking add-ons, bookmark synchronizing and other plug-ins that will surely be a part of Chrome in the future.  From an everyday use point of view, Chrome has met all of my needs and shown me a better way to browse the web in most cases.

On the features page for Google Chrome they list ten features that have been talked about since even before the browser launched a couple days shy of two weeks ago.  Taking a shortcut in writing my official initial review of the Google Chrome browser, I am going to list each of the ten features and write about my personal experiences with that feature.

One Box for Everything

AKA, the Omnibox.  Let me just say that I love the omnibox.  I have been trying to exploit all of its functionality since I began using the browser, and I think it may still be hiding cool features from me.  It just seems to be able to do everything.  You can type anything into it and when you hit “Enter” it just goes.  Sure, nothing is perfect, and I was hoping to be able to find a story I read earlier today somewhere by searching the omnibox, but it couldn’t find it (then, neither can I, searching the history, searching the web and retracing my steps, so I may just be dumb).

Of course, not much of what it does from a basic user standpoint is actually unique, it’s the fact that it is all combined into one place that makes it new.  It highlights the main domain URL, but so do some plug-ins and beta browsers.  It does both URL and search box jobs, which Internet Explorer has been doing with Microsoft’s own search when what you type doesn’t lead to a website.  Of course, the ability to search using a site’s search function before you ever load the page is a wonderful new feature.  The omnibox’s connection with your browsing history is extremely useful, and the fact that it has combined so many features into one place just makes me happy.

I’ve always loved Google’s approach to designing user interfaces, and they carried their ideas over to Chrome beautifully.  The omnibox is, of course, the very essence this philosophy.  If I didn’t have my bookmark toolbar turned on all the time the whole user interface would nearly disappear into my browsing experience.  Even with the slender bookmark toolbar I feel like Chrome is a much lighter browser than most of the competition.

New Tab Page

I use iGoogle as my homepage, but the new tab page in Chrome is so comfortable and useful, it’s almost like home.

It’s divided into four areas.  The first, and largest section being the Most Visited sites grid.  The grid contains thumbnails and titles of your nine most visited sites.  I’ve never used the Opera browser, but I guess this “dialer” approach is directly knocked off from Opera (I’ve also seen the feature offered by add-ons for Firefox).  Below the grid there is a link to your complete web history (also a nice looking, easy to use page).

The next section at the top of the right hand column is the Searches box.  Here search boxes grabbed right from sites you’ve visited and searched from are displayed for you to use.  This function is separate from the omnibox’s ability to allow you to search Amazon, for example by typing “amazon.com health and medicine” to search Amazon for “health and medicine.”  My Searches section has a search bar for my browsing history, Amazon.com, Wikipedia.com and YouTube.com, all places I’ve searched from lately.  Rather than loading those sites to search there, I can use the omnibox or the search box right on my new tab page.

The next box below the Searches box is the Recent Bookmarks box.  In my new tab page it lists the last nine bookmarks I saved.  I don’t know if it grabs those based on a time frame or will always list the last nine bookmarks.

Somehow, my current new tab page doesn’t have the final box (it’s usually there, and I’m sure there’s a good reason for it to be gone).  The final box displays recently closed tabs.  I have recently closed tabs, but by “recent” I mean a couple of hours ago.  I suppose this box is populated based on a time frame.  Either way, it’s the closest thing Chrome has to an “Undo Close Tab” function.

I use the new tab page frequently, though I don’t see it ever replacing my iGoogle homepage unless it can learn to display custom updates (new Gmail messages, new Reader feed content, messages and updates from other sites, etc.) from the sites I use most.

Application Shortcuts

Admittedly, I hadn’t used this function until just a few seconds ago, but it’s great!  I went to my site’s dashboard at WordPress and clicked on the “create application shortcuts…” menu item.  A box popped up showing me a preview of the icon and text for the shortcut, and below there were three check boxes for creating the shortcut on my desktop (checked by default), in my start menu and in the quick launch bar.  I left the default checkbox checked and hit OK.  Immediately, the WordPress tab jumped out of my main browser window and the whole Chrome interface disappeared.  At that point, the WordPress interface takes over and it behaves just like an application on my computer.

Just to try it out, I closed the WordPress window and opened the new shortcut.  I loaded quickly (Google Gears may have been playing a part in that) and worked beautifully.  I had originally worried that the shortcut might be an average Internet shortcut that opens in your default browser (still Firefox on my computer), but these shortcuts load in special, featureless windows designed to make the page feel like its own application.

Perfect.  I love this feature and will begin creating application shortcuts for all of my favorite web applications (and some I wasn’t using just because they weren’t accessible enough).

Dynamic Tabs

Dynamic is a good word for it.  Even just watching them move around so fluidly as I rearrange them, open new ones and close old ones, I love the way these tabs work.  Even better is the ability dock and undock tabs from different windows.  If I have three tabs open and I want to make sure one doesn’t get closed by accident while I am closing others, I can drag that tab down out of the tab bar and it separates into its own new window.  When I have the first window back in order, I can drag that separated tab back into the main window and I’m back to having only one browser window.  It’s fluid, it’s dynamic, it’s fast and it’s efficient.  I think it’s great.

Crash Control

Aah, what a relief.  Google Chrome runs each tab in a separate process on your computer so if something crashes one tab the rest of them can continue functioning.  In theory this should bog the system down a bit, but I haven’t noticed a drop in performance at all (and my system is OLD – 512 MB of ram, single core processor, and so forth).

Built in with these separate processes is a process manager.  I can’t figure out how to bring it up manually, but it comes up automatically if a tab is taking too long and gives you the option to shut it down.  I’ve heard the process manager can be viewed by bringing it up manually, but I haven’t cared to poke around enough to find it.

So far, after twelve days of continuous, daily use, I have yet to see any fatal errors, major problems or crashed programs.  The task manager has come up offering to let me wait on or close slow tabs only three or four times, and most the time I just choose to wait and the tab loads eventually (dumb slow ISP…).

Incognito Mode

True, this has been dubbed “porn mode” by many ever since the feature was made part of the new Internet Explorer and similar functions appeared through the use of plug-ins and third party applications.  Basically, this is a new browser window you can open that prevents any information from being stored on your computer (cookies, history, cache, browsing information of any kind, and more).

I don’t have much use for it as a “porn mode” but I did run some tests on it to see if it could indeed mask my web browsing activity as promised.  No sign of my incognito activity was recorded to the computer, just like they said.

Unless I’m trying to hide something from someone else who uses the computer, I really can’t see much of a use for incognito browsing (for me, personally).  I understand there are people who would want it for one reason or another, but it’s not really that exciting to me.

Perhaps the best part about this mode is the window that loads when you first open the incognito browser window.    

Click for larger view.

I love that last bullet point of things to be wary of – people standing behind you.  Especially with the nickname such a mode has earned, the idea of someone thinking they are safe looking at some dirty videos or images and someone else standing right behind them watching really tickles me.

Safe Browsing

Chrome is connected with Google’s directory of harmful sites and integrates this service into the browsing experience.  While my normal web browsing habits never take me to the darker corners of the net, I can see how such a service could be quite handy.

When you are about to view sensitive data over an insecure connection the browser warns you.  Also, as with any non-Internet Explorer browser, browser specific attacks are rare.  The separate processes for each tab also provide a certain degree of safety.  For a number of reasons, Google is entitled to claim that Chrome offers safe browsing.

Of course, security holes exist and a patch has already been issued in the form of an upgrade (an easy process once you know where to go – the About Google Chrome menu option).  No browser (to date) can claim to be 100% secure, but Chrome makes major strides in the right direction.

Instant Bookmarks

Bookmarking a page really is easy, especially since Google borrowed most of the process from already established models.  The star icon that I first saw in Firefox (though since I avoid Internet Explorer, Safari, Opera and Netscape I suppose it could have started in one of those) has reappeared in Chrome, and it has been improved upon.

While at a page you wish to bookmark, you click the star icon and a tiny menu box opens right there with options for renaming the bookmark and placing it in a folder.  There is an Edit button for more options, a Close button for if you don’t need to edit anything and there is a remove button to remove the bookmark (the same menu pops up every time you hit the star, even if the page is already bookmarked).  That’s it.  Simple, sweet and easy to use.

Importing Settings

When I installed Chrome it identified Firefox as my current default browser and offered to import my settings and data from Firefox.  I did, and it brought all of my bookmarks and cookies over, but I don’t think it brought my browsing history, which would have been nice.

Simpler Downloads

I really do like the download manager in Chrome.  There isn’t much to say about it though, because it’s just too simple and elegant to criticize or discuss.  It downloads things at the bottom of the window, the tab that initiated the download gets a little green down-arrow to signify that a download is being managed from there, the corner display has a percentage and bits downloaded progress circle, and the finished download display has a menu for interacting with the downloaded file.  That’s it.

The browser keeps a history of your downloads, which can be viewed like the browsing history.  A default download location can be set, and an option to “ask every time” can be enabled.

General Review

Again, this browser isn’t ready to replace my beloved Firefox browser as the default browser.  However, after twelve days of using it as my default browser, I have to say I’m only waiting for a few things to come together.

For one, if this post formats correctly after the transfer from Google Docs to WordPress, about 90% of my reason for leaving Firefox as the default browser will have disappeared.

If I have to go back and erase a bunch of DIV tags to get it to format correctly, I’m going to be quite annoyed and Chrome will have to start mowing my lawn before I’ll make it my default browser.

So I suppose we could consider the posting of this article the moment of truth between Chrome and me.  Of course, the formatting issue isn’t the only problem I’ve had with using Google Docs in Chrome.

Here is a summary of the problems I have encountered so far in Google Docs using Chrome:

1. It uses DIV tags to separate paragraphs in the HTML.  This does not happen in Firefox.  (See screenshot below.)  The DIV tag creats an issue in WordPress, and makes the whole thing format incorrectly.

Click for larger view.

2. The main Google Docs interface page is having troubles rendering correctly in Chrome (see screenshot below).  As of right now, the problem seems to be coming from a failed attempt to update the Google Docs application.  Right now I’ve got a red exclamation point where the little green circle should be.  That’s not good.

Click for larger view.

It never got past the 67% and now it says: “An error occurred while updating software. Failed to update software for the applications: Google Documents, Google Spreadsheets.”  If this isn’t Chrome’s fault, I don’t know who to blame.

3. When assigning text as a link, a space is often inserted after my selected text.  If my memory serves correctly, this may have been happening on occasion in Firefox as well.  May not be browser specific, but it can be annoying.

4. I don’t know whether to blame Chrome for this one, but Google Docs mysteriously quit posting to my blog from Firefox after I posted to my blog from Chrome just once.  Coincidence?  Maybe.

Conclusion

In conclusion, it is obvious that Chrome is having compatibility issues with certain web applications (eh hem, Google Docs; though others are probably out there) and that is to be expected.  For now, I forgive Google but I expect them to fix it, especially since my problems have to do with Google products.

To be completely fair, web standards play a huge role in this issue, and Microsoft’s near monopoly on the browser marked makes things difficult for smaller browsers (even Firefox).

Except for compatibility and web standard issues, I really don’t have many complaints about Chrome.  Google stripped the traditional browser of many features it felt were redundant, unnecessary or overly complicated and produced Chrome with all the features it needed wrapped up into a neat, efficient package.  I love the way it handles.  It feels like navigating the web in a technology demonstrator prototype vehicle.  Some things are a hundred times more efficient (Chrome does feel a little faster) and in other areas you’re bound to happen upon a bug or two.  I look forward to future releases and upgrades, and may soon make Chrome my default browser (especially if this post works out and I don’t have to redo the formatting).

*Update: The formatting issue remains an issue.  I suppose I’ll have to report this to the folks at Google. 

Game Progress

OK, here I am again with another update on that game I’ve been working on.

Lately, it’s been rough. I’ve been trying to balance my deep desire to work on my coding project and my family life. I think I’ve been doing OK, but I’m sure my wife wishes she could have me just a little bit more than she has had me.

If I must say so myself though, I think everything is turning out fairly nicely. Sure, I’m not really focusing on the graphics, so the pictures I’m sharing below shouldn’t be taken too seriously (they are for example purposes only), and I’m not really working on the story of the game yet (I have friends that are helping with that because they’re excited about it), so a lot of what is written in the instructions is bogus and silly, but the underlying code is working really nicely and I have a lot of ideas written down for making it even more efficient and flexible.

Some of the ideas include a more efficient system for handling the doors and linkages between maps (I think I can reduce the lines of code per door by up to 66%), I have to add support for conversations with different responses (the mechanics are all worked out, I just haven’t coded it yet), I have to add support for doors that lock now that my keys are working properly (I had a wonderful moment of genius yesterday where I figured out a simple, elegant way to handle the locking mechanism in code), and I want to explore the idea of having a border-less map system (where the walls around the edges would be unnecessary). Of course, I need to make tons of new maps (and I keep thinking that some kind of cool editor would be fun, for now I use Notepad), I have to do more with the part of the game where you die (we have some good ideas for a heaven/hell situation based on your choices in the game, the tracking system of which does not yet exist in the code, but I think I’m ready to add it), and I want to do a tutorial mode where you are sent on a brief, simple mission just to learn how to play.

Of course, if the actual game play is going to last more than five minutes it would be nice if the user could save their progress. Right now all of the progress information is stored in variables on the web page and all of the information is lost when you reload the page (close your browser, navigate away from the page and back to it, etc.). I know that cookies could help me save the key information and reload it when the page is loaded again, but I’ve never worked with cookies before so it would be a learning experience. I think I will wait until the game is done and playable before getting into that though, because it would be a pain to make changes to the game code that would require the cookie code to change.

Below I am sharing a few screen shots and the entire written portion of the instructions I’ve drafted up (they are more for fun that serious, and they have not been spell checked so have mercy). The version that is pulled up from the game shows the images associated with each ASCII character, but I didn’t want to upload all of them so you could see. If anyone is interested in playing around in my unfinished version (you can’t win because there is no story yet), just let me know and if I feel like it I’ll upload a .zip file with all of the images and .htm files you need to play. Really all you can do is walk around collecting stuff, talking to people (most of whom have nothing to say) and killing things. Most of the doors don’t work and most of the items don’t do anything. If you want to play around with it though, just let me know and I’ll upload it all. Just don’t go stealing my code! 😀

Click on the image to see the full sized version (I am especially proud of my water monster and the two headed dragon, and no, that woman does not have arms).

Help and Instructions


Story and General Instructions

For now, there isn’t much of a story. Just like any other game, you take control of the worthless and expendable life of some poor little man who needs you to tell him what to do all of the time. The rest of the story will become more clear as you play, or it won’t. Either way, it’s a game, not a movie.

This game is controlled entirely through the keyboard (which is impressive considering that most of the original code was written before I incorporated the keyboard controls). For details on which keys do what, see the table below titled “General Keyboard Commands” and the “Items” table as some items have a keyboard command associated with them.

Most spaces in the game can be walked on, some cannot. The “Terrain” table contains details about that. If there is anything you’re curious about, try to step on it and see what happens. Most item, character and enemy interaction is handled this way.

Look over the tables below to learn more details, then get back to playing the game! This screen can be called up any time throughout the game by pressing the “h” key on your keyboard. To return to normal gameplay, press the space bar. Good luck and have fun!

General Keyboard Commands

Key Action
h Displays this help file. Can be used at any time during the game.
space Function varries based on the situation. If pressed now, it will return you to the game.
t Currently, pressing this key causes the rendering code to switch from using image tiles to using ASCII letters and from ASCII to image tiles.
arrow keys These are the keys you use to move around. You can press an arrow key once to move one space, or hold one of them down to travel a greater distance. While holding down a directional key you cannot change directions without releasing the key you are already holding down. By standing next to an interactive item, such as an enemy, another character or an item, and pressing the arrow key toward that item you will interact with it.
numbers 1-4 These are used in conversation to select your response.
Y/N Sometimes, rather than a complicated response, a character will simply ask a yes or no question, in which case you will hit “y” or “n” to respond.
F5 Pressing the F5 key refreshes the page and starts everything over completely. Your progress is not saved, though a saving system is being considered. Can only be used during game play, not now.

Items

ASCII Key Name Description
a backpack The backpack is used for carrying items. It is required before you can start the game (officially) and carry other items.
o small orb The small orb adds a little attack power to your weapon attack power. The orb is carried in the backpack.
i c candle The candle is used to light up dark rooms. Some rooms have areas of darkness which the candle can also light up, but only momentarily. The candle is carried in the backpack.
# raft Once you have the raft, you can travel over water. The raft is also carried in the backpack.
small stick The small stick is the least effective weapon. Choosing it at the beginning of the game may give you certain advantages however. The backpack is required to carry the small stick.
_ big stick The big stick is a little more powerful than the small stick, though less powerful than the sword. The backpack is required to carry the big stick.
t basic sword The basic sword is the most powerful weapon you can choose at the beginning of the game, though you may find yourself in a disadvantage sometimes throughout the game should you choose it. The backpack is used to carry the basic sword.
/ arrows As of right now, arrows don’t do anything. You carry them in your backpack.
D bow Currently, the bow just sits there and looks pretty. You carry it in your backpack.
~ w gummi-worm The gummi-worm is carried in the backpack until you need it. Pressing the “w” key causes you to eat one from your inventory and restore health.
O big orb The big orb adds even more attack power to your weapon. Requires the backpack.
C lucky horseshoe The lucky horseshoe is useless. You carry it in your backpack.
l k key The key is required for opening locked doors. You need a backpack to carry them in. An inventory is kept for when you have more than one.
B b bomb Bombs blow some things up, but not everything. Use with caution – if you blow one next to another bomb you will get hurt. You carry them in the backpack.
* health star Find one of these to restore some health.
$ money Collect lots of cash. Mostly just because you never know what you’ll need it for.

Terrain

ASCII Name Description
X wall Walls cannot be stepped on or passed, but some are easy to blow up with a bomb.
H/I doors Some doors are locked, others take you random places. Have fun with doors.
= bridge/wooden floor Some of the bridge sections may blow up when you use a bomb. Be careful.
| railing On occasion you will find a rail that can blow up. It never hurts to check, unless there are other bombs nearby.
w water Once you have the raft, you can travel over water.
! tree Some trees can be blown up, but that’s not a very nice thing to do.
A/M mountains Mountains cannot be crossed for now, but some funny people often live among them.
^ hill You can walk on these with no problem.
P flag I’m not sure what these are for.
grass Feel it between your toes…
E darkness You can’t even see yourself in the darkness, you need light.
`/./,/: sand For walking in. Not good for eating.

Characters

ASCII Name Description
@ hero This silly moron doesn’t know how to think for himself and needs you (of all people) to guide him through every little aspect of his meaningless 2-dimensional life.
& old man Usually friendly, these people just want to have a word with you.
K woman Maybe she needs your help, maybe not. You never know which woman will turn out to be the princess in your life.
e basic enemy These are weak, but not the weakest of enemies. The small stick will not kill one alone.
s small snake These are among the weakest of all the enemies. Even a smack from a small stick will beat one to death.
Q “Q” enemy These are a little more fearsome. You’ll need more than just the sword to take these out.
S big snake These are a gamble, even with the sword. Once you’ve got an orb or two though, they’re hardly worth mentioning.
Z “Z” enemy These are some of the strongest enemies made so far.
F water monster These mysterious enemies are strong, so watch out.
N horse monster These are as strong as the “Z” enemies, but harder to find.
Y two-headed dragon These ultra-strong enemies are dangerous, and even a few orbs and a sword cannot kill them. You’re going to have to find something else that may be effective against them.

Where I Went

Occasionally I may disappear from time to time. I should hope that anyone who knows me at all would realize that my disappearing does not mean that I have ceased to be actively engaged in something. In fact, when I neglect something like my “thing” here it’s usually because I have something more exciting going on.

In fact, over the last week I have had several more exciting things happening than this.

In small news, we rented a fun game over the weekend. I loved the movie “Wall-e” so much that I just had to try the Wii game. Overall, my impression of the game was a good one. I think the developers rushed through parts of the game, but the majority was well thought out and fun.

The real time sucker for me the last week or so has been related to my last post about the game project. Shortly after writing that post, I came up with the bright idea to set the actual game portion aside and continue with an aspect of my original idea – the part where simple games could be made even by a novice or child.

I remembered the days when I had a TI-eighty-something graphing calculator that allowed for some simple code writing (scripting) in its native language. I was able to program it to play a number guessing game. It would print out on the screen “guess a number between 0 and 100” or whatever two numbers I chose, then I could guess. It would tell me “too high” or “too low” until I got the answer and it reset to “guess a number…” The experience with programming that simple application was enough to spark my interest in computer and web programming and has led me to better learn linear/sequential-thinking skills (I guess I’m a visual/spatial person, and linear or sequential thinking is difficult for me).

What I’m getting at is this: I thought, “wouldn’t it be great if I could write a program that would ease my son into the world of programming!?!” My son is definitely sequentially challenged and could certainly benefit from a bit of computer interaction at the programming level. How do you teach a five-year-old to write code though? So, I devised a plan (like I always do).

The plan was only complicated because of how elegantly simplistic and straightforward it was. It would be able to teach anyone the basics of a simple web programming language known as JavaScript. I developed an outline for a set of lessons that would walk the user through various levels of difficulty in programming functions. The program itself would adapt its interface to grow with the user as he progressed through the lessons and became more proficient.

I may or may not create the JavaScript teaching program, but I am already nearly done with one of the projects the program would walk the user through creating.

In fact, the project has grown into something far more complicated than anything I would ever ask a new programmer to attempt. It has even stumped me a couple of times in big ways.

When I finish it, I’ll try to upload it to my Google page so you can try it out. Quickly, before I go off to bed, I’m going to explain what it is and ask for your input and suggestions.

I’m making a simple game that will be played in the web browser. It is programmed entirely in JavaScript and is (as of right now) designed to be played in one sitting, though each time you play it your choices will create a different experience. If I go back and review techniques for writing and reading cookies to your local machine, I may be able to allow you to save your progress, but for now the entire game resets when you close the browser, refresh the page or load the page.

Right now, the entire look of the game is achieved with text. Here are a couple of screen-shots to illustrate:

Eventually I may take screen-shots like these into Photoshop and modify each individual character to better represent its item (saving the modifications as small images and having the program assemble the images in the same manner as it assembles the text).

For now, I would simply have to explain what each character represents for a person to be able to play the game. The @ symbol represents the main character. The & represents other people, the s and S are snakes, the $ is money, * is health and the C is a lucky horseshoe. Of course, the e is an enemy, as are the Q’s and the snakes. The H’s at the tops and bottoms of the screens are doors, and the I’s are also doors on the sides. The ^ represents a hill that can be walked on, but an A is a mountain and cannot be initially transversed (perhapse special shoes could be obtained allowing one to scale a mountain). The w is water, and a raft (#) is required before one can cross rivers that do not have a bridge (=). Sand and grass are represented by periods, semicolons and commas, and trees are exclamation points.

Of course, there are many other characters that I have used, but it would be a simple job to have the Javascript replace each letter or character with an image and thus create a much less jarring visual experience for the user.

Essentially, I have too many ideas (just for the game engine, the inner-workings of the code that drives the game) to outline everything here. The room on the right in my example was dark (represented by a screen full of E’s) until I used my candle to light it up (many ideas are drawn from games like the Zelda and Link series). I have set my code up to be flexible enough to do almost anything. All I need now are more ideas.

What kinds of stories would you tell if you had an open ended game like this? What kind of adventure would you go on? You can’t bring any friends with you, and your items may be limited (with no features for animating, enemies don’t move and it would be nearly impossible to actually use the bow and arrow – for now I don’t plan on animating anything), but many quests and adventures are still possible. Send me your best ideas and I’ll see if anything sounds fun to me.

My wife has already contributed (Burt and the gummi worm are her handiwork). What ideas will you contribute?

Once I’ve finished the basic game engine I’ll try to post it online somewhere so you can see what it’s capable of. I won’t have a story fully developed by then, of course, but everything should function properly (as of right now, it is possible to lose a battle and end up with negative health points, but you don’t die). I’ll work out the bugs and you can come up with ideas for me. If your idea requires a reworking of the basic engine, but it’s good, I’ll see what I can do. Remember, I’m keeping things fairly simple, but complicated enough to be fun.

Oh, and in case you’re wondering… The portion I expected an intermediate beginner to be able to code was finised within the first day. It consisted of a few lines of code to draw the map and some buttons that moved the little man around in the map. From there I just kind of went crazy… And what if you could collect items? Oh, and what if you could have a raft? Wow, and how about doors? Let’s put some enemies in! We need weapons, and battles, and candles for darkness, and keys for doors, and guys to talk to, and boss battles, and stores, and dynamic items and terrain, and conversations, and why won’t he die?, and, and, and… … …

Web-Enabled Community Spell-Checker Dictionary

I want to share with you a web-enabled community spell-checker dictionary idea I had this morning.

The technical details may bore you, but the simple description should help generate interest. How many times have you written a word that you knew was spelled correctly, like “blog”, and had your spell-checker tell you it’s wrong? What do you do? You can either ignore the “error” and leave it there, with the squiggly red line under it, or you can add the word to your user dictionary (and in a lot of cases, like new Internet words, that means hoping you didn’t spell it wrong).

The user dictionary, I’m sure you know, is simply a database of words stored on the local machine (your computer) that is compared against each word you type in that program. A separate user dictionary is generated by each individual spell-checking program you use (the word processor, the web browser, etc.), and there are no safeguards in place to prevent you from adding a wrong word to one of your user dictionaries. Have you ever tried to go in and remove an incorrect word from a user dictionary? I have. It’s not any fun. Plus, adding a word to one user dictionary doesn’t add it to another one so if you frequently use a new word, you’ll end up being told it’s spelled wrong by all of your spell-checkers until you add it to all of their dictionaries.

What if you could download one program that would check all of you spelling in every program and website? What if that program was linked to other computers running the same spell-checker so it could collect data on misspelled and unknown words from a large number of people and figure out which words belong in the dictionary and which ones really are just spelled wrong?

Such a program could easily exist with current technologies, but as far as I know it remains only an idea in my head. Just imagine a dictionary that maintains itself updated with all of the newest, correctly-spelled vocabulary! A service could be offered to export the master dictionary to other spell-checkers’ native formats as a download on-line for people who don’t want to use the actual spell-checker program but want updated and accurate dictionaries to check their spelling. Periodically, fun statistics could be generated and shared via RSS, including the most frequently misspelled words, most popular words of the day, and a yearly list of new vocabulary generated by progress and technology.

Here is a more technical description of how the program could work:

First, the main functions, in order, would be:

  1. Track and monitor all spelling in all programs on a user’s computer.

  2. Use that data to calculate a score for the user, giving more weight to situations where more people use correct spelling and less weight to situations where less is expected (like chats).

  3. On-line, the program allows users to endorse words that are not in the dictionary but frequently marked as correct. The higher the user’s score is, the more weight his/her endorsement will have.

  4. Words endorsed by enough trusted users are incorporated into the dictionary.

Locally, the dictionary integrates with all programs and tracks user spelling habits, counting each time he/she misspells a word found in the dictionary (the user writes the word, the dictionary says it’s wrong, and the user corrects the spelling) and each time he/she writes a word not found in the dictionary (the user writes the word, the dictionary generates suggestions, and the user selects the option to ignore the misspelling). The particular words misspelled, spelled correctly and unknown to the dictionary are stored in a database on-line.

The program calculates, then, certain statistics for the user based on these numbers. For example, a user may have an overall spelling accuracy of 70% but frequently misspells the same 15 words, though the misspellings only represent 3% of everything the user writes.

The program also tracks where and in what situations the user is using correct spelling, punctuation and structure (capitalization, etc.), giving less weight to the chat sessions with poor structural performance, greater weight to e-mail writing, and the greatest weight to blog entries, Wikipedia articles, local word processing, Google Docs, etc. If a high percentage of people use correct punctuation and spelling in a specific program or at a specific website, the program knows to give a higher weight to the performance of other users in the same situation. If the spell-checking program is unsure of a situation (there is little data about a program’s weight, for example) the weight of the situation is calculated based on the length of the written material. This data would be stored on-line and be incorporated into a central algorithm for calculating a user’s spelling proficiency.

Words frequently not found in the dictionary but deemed by users to be correct (i. e. modern terms) can be reviewed by users with a low frequency of misspellings of known vocabulary, high number of words written per day, and high total proficiency score. Words endorsed by enough trusted users are then automatically added to the central user dictionary database. Admittedly, this is a difficult calculation. How much endorsement would be needed and what percentage of the endorsements would need to be from users with a high score? What constitutes a high score? An algorithm would need to be developed that would permit words to be added to the dictionary without too much delay, but not without first receiving enough endorsement to ensure the word is proper.

I believe that a dictionary maintained by such an algorithm would be invaluable to society. Even current institutions such as dictionary publishers could benefit from such data being collected. The idea could be applied to dictionaries in other languages. This idea represents the movement of dictionary maintenance techniques from the 20th century into the new 21st century era of community efforts and social data.

I think it’s the next logical step. What do you think?

As a final note, I was doing some searching and digging around to see if anyone else has done this or written about it, and I stumbled upon a great way to handle the dictionary database. I also found that programs to check spelling in any application also exist, but I found no mention of a community enabled program collecting data via the Internet to append the dictionary rather than trusting the user when he/she decides to “add to dictionary.”


Subscribe to Me

What I’m Reading

When I Post

April 2017
M T W T F S S
« Sep    
 12
3456789
10111213141516
17181920212223
24252627282930

RSS My Favorite Quotes

  • Quote #60
    "The greatest minds are capable of the greatest vices as well as the greatest virtues." - Rene Descartes
  • Quote #59
    "There is nothing noble in being superior to your fellow man; true nobility is being superior to your former self." - Ernest Hemingway
  • Quote #58
    "The fool doth think he is wise, but the wise man knows himself to be a fool." - William Shakespeare

I have had:

  • 50,214 page views (so far)

I’m a Twit