Latest Entries »

Linux Games

A couple few ago i purchased my first linux game… X3 Reunion. the game itself is several years old already (maybe four or five at this point), but a really good, deep, involved game. None-the-less, I’m somewhat disheartened. For quite some time there have been once-A+ titles that have been ported to Linux and they are available for purchase, but those very few sites that sell these games (and, for the US, I think there’s only one), most, if not all, seem to have a complete lack of care in intising linuxites (I’m coining this!) to actually purchase them.

For instance, the site I purchased X3 from… Tux Games… has a website that looks to have been built back in the Web 1.0 days and rarely, if ever, updated since that point. In fact, when I first saw the site, I thought it was dead/abandoned until I noticed that one of the articles on the front page was only a couple of months old. On top of this, Tux Games seems to only be reselling games ported by the UK porting house Linux Game Publishing, whom’s website itself is only barely more modern than it’s US resellers.

Now, I know games for Linux is a difficult subject. If there are any porting houses interested in porting to Linux, getting a hold of the licence and source to do so is like trying to lovingly pet a hungry shark without getting bitten. Furthermore, even if they could get the licence, the time and money involved, in relation to the projection of financial return from doing so, makes porting A+ titles to Linux a more-or-less loose-loose proposition. Still, it doesn’t help that the small handful of A+ Linux titles sit on sites that don’t seem to be keeping themselves up to date (because, let’s face it… looks may not be everything, but when all you have is a website’s word for it and that website looks like a throwback, you may not be inclined to believe that site).

I throw out a suggestion to any one of group of people wishing to bring Linux gaming to the A+ world. It’s can’t be done overnight, that’s for sure, and waiting for any title to be Linux ported is more often than not, disappointing. However, Ubuntu has started a type of app store for Linux software (including games), which is great, but with the Ubuntu name associated with it, it may make newcomers to Linux question if they can use that store if they chose to go with a non-Ubuntu platform (I know this is not the case, but we’re talking perception of the common person). As such, a “LINUX APP STORE” needs to be created.

I’m picturing a website that would work much like the app stores for the fruit, and greed droid handhelds. Developers write their apps and put them up on the Linux App store, supplying all of the library requirements for the app. Then, when a user buys the app, their computer is checked (perhaps using a user installed extension) to confirm their distribution has the required libraries and system specs. If their computer fits the bill, then the app is downloaded onto the users computer and configured, either per-user or per-computer. Users should also be give a 30 minute grace period in which to test the app after installation, to confirm it runs (every distro is quirky that way… we all know that), and, if it doesn’t, the user can “return” the app in which it’s deleted from the system and the users money is returned.

Like with the handhelds, the Linux App Store should be relatively inexpensive (from free to 9.99, with exceptions made for ported A+ titles). Also, in Linux style, these Apps can be offered as Open Source (because, remember, Open Source, does not mean the compiled application or its resources have to be free, just the source code), in which case, the user will also receive a zip of the source tree for the app, if they so choose.

I know that Linux and the word Free often go hand in hand. The OS is free, and many high quality software packages (aka, Apps) are free, such as GIMP, Blender, Audacity, etc, etc… but that doesn’t mean Linux cannot be friendly with closed source, pay-for applications, and if we can mold a system similar to other App stores, then I think Linux would have a chance to be even more mainstream than it already is. And as more and more people start using Linux and it’s App Store, it may start inticing the bigger companies to port to Linux.

I am not a criminal justice major. In fact, if you read most of my posts, you know quite well, Im a computer science major (or, at least youre not surprised that I am). But I just recently read an article published in the Hartford Cournat on Sept. 28th entitled “Two Wrongs: Death Penalty Is Revenge, Not Justice” written by Jamil R. Ragland. In this article, Mr. Ragland talks against the death penalty, specifically bringing up the current CT case of one Joshua Komisarjevsky, one hof two men involved in a home invasion Four years ago in Cheshire Connecticut (a state in which I live, and a city I was working in at the time). During this invasion, a Dr. William Petit Jr. was not only beaten, but was rendered helpless as his wife and two daughters (11 and 17) were beaten, raped, and left for dead.

Now, Mr. Komisarjevsky is on death row… his guilt in the matter beyond question (as Mr. Ragland would agree), and, it seems, this generates debate over capital punishment. Many people (including the articles author, Mr. Ragland) consider the death penalty revenge. Its often described as “eye-for-an-eye” and that its not true justice…

And so brings up the point of this post… What is Justice? I looked it up in the dictionary and I get Fairness/Rightness, Punishment and Reward, and Judge. Komisarjevsky was found GUILTY of engaging in a home invastion which left two children and a mother dead (after having been sexually abused) and a man not only beaten, but left without his family. Eye for an eye justice would say go out and do the same to Komiarjevskys family. Leave him beaten and broken and his family dead. No, putting a man to death in as quick and as painless a manner as humanly possible is NOT eye for an eye justice. Its rightful punishment. This man has demonstraited his ability and willingness to hurt and destroy others in viciously mortal ways, stripping away from the innocent any form of dignitythey may have before taking them from this earth. The man is a threat to any around him. Even life incarseration is a risk to the public. What if he gets out, escapes, or, lord forbid, a parole board lets him go (they are human and can make mistakes). The only way to guarentee Komisarjevsky can never harm another human being again, is his execution, which will be far quicker, more painless, and ultimately more dignified than what he and his partner gave the Petit women. Is this revenge? A lynch mob stringing him up without a fair trial is revenge. Komisarjevsky had his trial. All the facts and evidence lay bare and his guilt is beyond question. The system even gives him the right to fight the verdict… he can appeal. Good. Capital punishment should NEVER be taken lightly, but a court appointed death penalty is not revenge. Its no more revenge then when we put a dog down after it attacks a human being. We are keeping those around us safe from a danger that we could never confidently contain.

So, again… what is Justice? What is unjust about putting a human being to death who has been found, through a long and diligent investigation, and by a jury of ones own peers, guilty for multiple, long, slow, humiliating painful, terrifying deaths? Not accidental deaths. Not deaths for self defence or survival. These were deaths for fun. They did it because they could. They took their time and the family lived in utter fear. If i was one of those that had to choose if this man lived or died, I would accept his blood on my hands rather than the blood of all those innocent souls he may kill in the future because I let him live.

Ok… sooo… yeah, it’s been a year. What have I been up to? Until about this past February, I had been just working my part-time job and poking at random projects. Like those that I talked about on this blog a year ago, most of these random projects went nowhere. Not that they didn’t work, but more like I would work on them for about two or three weeks then feel the urge to move on. One such project… which I really don’t want to totally give up on, but I haven’t worked on in months now… is a python engine I call the Archetype engine. It was intended to be a clone of the NWN engine. Much of the code I had is still available Here at Gitorious.

My current project, however, has got me guardedly optimistic. See, on February of this year I finally obtained my first full time position as an Information Technology Analyst One for Connecticut’s Department of Correction’s educational department. The work is nothing overly exciting, but it does allow me some freedom to continue code projects that could help the department (of which I have one, but that’ll be another post). None-the-less, with the money I’m making, I was able to go out in short order and buy myself an Android Phone (a Droid 2 Global, to be specific). At the time, I wasn’t sure if I was just falling into fad and hype, but I quickly found I LOVED IT! So, what’s a computer geek to do when in possession of an awesome bit of technology they can program? *nods*

Tablet (Landscape mode) - Search and Show Information screen.

Tablet (Landscape mode) - Search and Show Information screen.

And so, starting at about the end of April (the day before Easter, as a matter of fact), I broke down, installed java and the Android SDK, and started working on an app. At the time, I hadn’t found a nice podcatcher that I liked, so that was the app I was going to develop. “Can’t take THAT long” I said to myself (lol… boy, if I knew then). Here I am, FIVE months later and I’m still plugging away at the application… Little Podder!  On average, I’m putting in about six to ten hours a week on it, and if I can keep up this pace, it should be ready for it’s initial beta release by December!

At the moment, the basics are more or less to form. I can search for a podcast by keyword (obtaining the data from gpodder.net API). I can subscribe to a podcast, and I can stream in the episodes. This evening I even finished the initial work on a “Now Playing” screen. I know, none of that is all very exciting. You’d EXPECT that from a podcatcher. The question is, what will make my podcatcher different?

The big feature I was to put into Little Podder is “Channels”. A Channel is like a playlist. You can group podcast shows together into a channel (say, all your sci-fi podcasts into the “Sci-Fi” channel). Now, like a playlist, you can also choose to listen to your shows in order, in which the oldest unwatched episode is played from the first show in the list, then the oldest unwatched episode from the new show, and so on, looping back to the first show if it has any remaining unwatched shows. You can also choose to listen to your channels “Random by show”, in which the oldest unwatched episode of a randomly selected show is played then continues on to another randomly selected show. Finally, you could even choose full random, in which a random unwatched episode of a random show is played, then another, and so on. In all cases, you can let your channel play continuously until all shows are watched. At the moment, I haven’t started on the “Channels” feature, yet, but most of the core is there for it.

Oh… and that screenshot in the post is Little Podder running on my Acer Iconia A500 tablet (yes, this app is designed with BOTH phones and tablets in mind). The results shown (on the left hand list) is actually from a quick “Top 20″ search, which returns the top 20 podcasts on the gpodder.net directory service… which I utilize for my app.

I’ll be putting up a page on this site about Little Podder very soon, and when the app goes beta, you’ll be able to download it and give it a run! Keep an eye out everyone!!!

Hello again everyone!

So it seems I’ve let my blog just sit unattended for over a year… A year and 15 days to be exact. My track record with blogs isn’t the best, but I’m making yet another effort to keep this one going. I feel I need some sort of outlet to talk about the ideas and projects I’ve had and are working on. To that end… here I am, folks. Once more unto the breach!

As of this past February I’ve finally landed myself a FULL TIME JOB! I’m now an Information Technology Analyst One for the Department of Corrections and USD#1. I get to build and maintain databases. While they’re still working with M$ Access (’97 and 2003… gah), the position has been affording me the chance to explore alternatives. I’ve been working with Python to build a code library so that I may be able to develop application similar to those Access affords without requiring access (or technically Windows, but that’s more a geek bonus than a practical one). So far it’s been going well. I’ve developed an XML scheme that, when loaded, builds up a TclTk interface, a (currently) very simple Virtual File System (meaning I can compress files into a zip file and my applications can easily load the data from them as if they were on the local file system), a database system (thank you SQLite), and am currently working on a way of developing reports. We’ll see if this library leads me anywhere. Hopefully soon I’ll bring the library home so as to post it up.

Having this new job as afforded me the luxury of purchasing an Android phone (Droid 2 Global) and tablet (Acer Iconia A500) which, unsurprisingly, I have now started developing for. I’m starting off with a Podcatcher I call Little Podder and things are going well. I’ve had both the phone and tablet in mind while developing and so far no issues. It’s come quite a long way since I started it in April and hope to be able to release the first beta before December. This project will also be going Open Source soon through either GitHub or Gitorious (probably the former as EGit has more support and documentation for that). Keep an eye out on the site… I’ll be creating a page for this project very soon.

Well… here’s to bringing back #!Pug++ :)

If I take a lamp and shine toward the wall, a bright spot will appear on the wall. The lamp is our search for truth, for understanding. Too often we assume the light on the wall is God, but the light is not the goal of the search, it is the result of the search. The more intense the search, the brighter the light on the wall. The brighter the light on the wall, the greater the revelation upon seeing it. Similarly, someone who does not search, who does not bring a lantern with him, sees nothing. What we perceive as God is the by-product of our search for God. It may simply be an appreciation of the light, pure and unblemished, not understanding that it comes from us. Sometimes, we stand in front of the light and assume we are the center of the universe — God looks astonishingly like we do! — or we turn to look at our shadow and assume all is darkness. If we allow ourselves to get in the way, we defeat the purpose — which is use the light of our search to illuminate the wall in all its beauty and all it flaws, and in so doing, better understand the world around us.
– (G’kar, Babylon 5)

Sooo… I’ve haven’t updated my blog in about a month. I should seriously be ashamed of myself! The sad truth is, I haven’t done much in that span of time. I’m still working on Spectrum.Whisp, for which the lexer and parser seem to be working and I’m just ironing out details when it comes to the interpreter. I wrote a simple little application that helps me with multiple monitor wallpapers in gnome. OH! And I’ve been switching over to a different window manager in linux!

I have, for the last couple weeks, been setting up Fluxbox. Why? Well, the catalyst to this move started when KdenLive wasn’t giving me any audio playback in gnome. For the life of me, I couldn’t figure out why! I poked my head into KDE itself and, while KDE had no issues giving me audio playback in KdenLive, KDE itself was very sluggish and KdenLive would halt on me before I could even do much of anything. Therefore, I tried Fluxbox. I wanted to see what would happen if I got all of the extra gruff out of the way and… wouldn’t you know it… KdenLive worked flawlessly. Seeing such a great result with KdenLive, I figured I’d try another application that had been giving me no end of pain in gnome. That application was Blender. I had read that compiz in gnome caused lots of trouble for Blender and everything I tried to disable compiz in gnome did nothing, it seemed, to the garbled graphics problem I had with Blender. When I ran Blender in Fluxbox though? Not one problem! Everything worked as I wanted it to.

Therefore, like I said, the last couple of weeks I have been working on the finer points of Fluxbox. I have xcompmgr enabled which gives me some decent window shadowing. I’ve setup a simple hotkey toggle so that I can enable and disable compositioning for when I want to use Blender (or any other application that does not do well with composition. I’m also working on other hotkeys. I already have one to bring up a terminal and one to bring up the nautilus file browser when I want. I have conky running. Haven’t yet done anything to configure it with the information I want, but it’s there and working well… also with a hotkey to toggle it on and off. I’m using cairo-dock as a place to hold all of my quick access applications. I chose it because it was one of the more feature rich docks that didn’t necessarily need compositing to work (it’s running in fake transparency mode; one so that I don’t need to worry about it going ape when I disable compositing and two because, even if I wanted to, compositing for true transparency doesn’t seem to work well in Fluxbox… my only real issue with the WM). All in all, I feel like I’ve got a faster response and a more stable window manager while working with Fluxbox.

On some other, random note… I was pleasantly surprised to get Morrowind working near flawlessly in WINE (1.2 rc6). I did have to make sure I selected OSS as my audio system and that I was using Windows 98, but otherwise, it runs very well! I even have the MGE installed and running with no issues (that I can tell). So, you might be wondering why I keep saying “near” flawlessly? Well, it does have the tendency to pause for a upto a second or two every few minutes. It can be annoying, but it hasn’t been a game stopped to me. I’ve already traveled up to Balmora, joined the Blades and the Fighters Guild and have done a number of quests for the Fighters Guild.

Well… I’m hoping to get back into a more regular posting cycle. Perhaps do some game reviews or something… who knows.

Ok… I admit… it is often hard for me to keep focus on projects when I don’t have people hounding me for them, or when I don’t have a deadline. As such, I can often fall behind on my projects. This is something I really am trying to fix about my personality, but it is hard.

In any case, it may seem that I’ve let Spectrum fall and be forgotten. If you’re the one or two people (*cough* If I’m not simply including myself) who are watching the project on Gitorious, it seems as if I’ve stopped any development on the library back in April. This is NOT the case.  In fact, since my last gitorious update, I have added a database manager which currently supports SQLite (but can be extended to use any other database system that has python hooks). I’ve added some improvements to the GUI; most noticable of which is that, as of this moment, I’m moving it heavily into an MVC design scheme. This move, of course, leads to addition number three which is the runtime-interpreted scripting language called Whisp.

Because I don’t want to trap anybody into using any specific graphical system when using Spectrum, I have been trying my best to develop the GUI so that there is a clear and distinct difference between the data tree model of the GUI and how it is rendered onto the screen. My initial idea was to use what I was calling a “context” renderer class which the widgets would create and draw to, then allow the underlying context that’s generated to determine if the drawing call is to be done in a 2D environment or a 3D environment. For all intents and purposes this works, but it still felt as if I was limiting the user to MY drawing calls (which I was) which is something I do not want to do. This lead me to the idea that, what if the user could write the drawing calls themselves without needing to know the intricacies of the data model of the GUI system? No problem, I thought! I could just let the user write the drawing code in python that would be loaded at runtime and interpreted using pythons eval function! Don’t panic. It didn’t take me long to realize attempting to do so would have lead to so many security issues as to be absurd. What if I developed a scripting language that interpreted at runtime and that I can have absolute control over?

WHISP! Don’t get overly excited. It’s far from done and probably the number one reason Spectrum has been taking a while between gitorious pushes. I’m using PLY as the lexer and parser for the language and, at the moment, I have the lexer pretty well developed, thanks to the wonderful examples given in the PLY download. What’s slowing me down is developing a BNF. I haven’t touched BNFs for almost a decade. On the surface I can read and understand a BNF, but its a difficult task to develop one from scratch. As such, Whisp is going to be, what I like to think of as, the bastard child of Python and Ansi C. In general, I want it to be type-less like python and use a lot of the python syntax but (and python people will hate me) it will NOT be white space dependent. Instead it will use the C {block} to organize code blocks. PLY comes with a wonderful example of a subset of the python language called GardenSnake, but, I’m not using it for two reasons. First, I don’t want to use someone elses work. Of course I could ask, but if they said no, I would have to write a new language anyway, and if they said yes I would still have to extend the language because it’s missing some key elements I wanted Whisp to have. The second reason I’m not considering GardenSnake is because I do want the challenge of developing my own scripting language.

Once Whisp is complete, I’ll be using it in the GUI system as a way for users to create their own rendering methods for GUIs. Of course Whisp can be used for other things than just the GUI system in Spectrum. It could be used to add run-time interpreted scripting to games and applications made with Spectrum. This is the other reason I’m working on Whisp. I have been working on a game along side Spectrum. I’m not going into details about it now, but, it’s based on an board game I played years ago.

Well… I do plan on finally pushing my master branch to gitorious soon, so keep an eye out everyone!!!

I’m going to say this right off the bat… Possible SPOILERS! You don’t want to read them, don’t read on…

——–

So I went to see Splice this evening… in fact, I’m writing this about 5 minutes after walking through the door. The premise is a simple one. Two genetic scientists (Elsa, the wife, and her husband who’s name I forgot) work for a company doing genetic “splicing” (See! There’s where the name comes from… *cough*) to develop new and exciting compounds which can be used to… well… make money (because, let’s face it… it’s really NOT about curing problems, it’s about money). Not to say the company is evil, as such. They’re just a business.

Basically, Elsa and her puss of a husband have just spliced these two… good lord, they looked like slugs… which have this enzyme that does… ummm… something that’s not really important. The fact that these two have created these stable new life forms is AMAZING for all involved. So, what’s next? Well, the company wants them to hunt through slug poo in an effort to synthesize the money making enzyme. I know… you thought I was going to say something about splicing human DNA. HA! The company is not THAT messed up (they are french, though… or, at least the CEO sounded french. Not that that has anything to do with anything, I’m just pointing it out).

No, no… the company is not interested in human splicing (trust me, the genetic duo suggested it as if it was the greatest idea since… the slugs). Their human splicing idea shot down, they bitch to each other for about a minute, thinking they could leave… but don’t because none of their work is their own… god bless company patents. So… before the company falls upon their lab and turns it into poo-hunting central, they… well… I think you KNOW what these two decide to do.

And so the horror ensues… ummm… no, not really. Not that it’s a bad thing, mind you, but if you’re going into this movie thinking is a horror movie through and through, you might be disappointed. There are instances where it looks like it could be headed in that direction, but it never quite get there (well it does, but I’ll mention that later). It’s all Elsa’s fault, by the way. Puss husband with no name (ok, I forgot it) bitches and moans through the whole splice. First he doesn’t want to do it, but hell, just to see if the splice will hold. Then, Elsa says “Let’s see if we can get an embryo”  and Mr. Puss hems and haws but, an embryo ensues. Only a week or two later, it’s born! Elsa wants to see how stable the life is (even though it almost kills her at birth [no... she wasn't pregnant with it]). Puss husband wants to dissect it. Guess who won?

Ok… I’m not going to give away every scene, but obviously, if you’ve seen the commercials you KNOW this splice life form… whom they (I mean Elsa) name DREN (read it backwards) grows up (in about a month or so). For all intents and purposes, Dren is an adorable creature, though, one must never forget she’s not completely human. What you do learn however, is that these splice parents are… well, we all have issues and quirks, but these two are just slightly on the coocoo side of life. With Mr. Puss being such a… puss… at the beginning of the movie, I was surprised to find I had more sympathy for him in the end… especially after Elsa goes psyco on Dren. No… I’m not going to explain.

See, that’s something I was happily surprised about. Dren is a full on character, not just a creature, and it’s the interrelationships between Elsa, Mr. Puss and Dren that make the show as unnerving as it is at times. That said, I was a little disappointed at the end. It’s a twist ending, so I won’t give it away, but with all of the interesting ideas they threw out within the movie, it did turn into a little bit of a classic horror at the end. I suppose some would like it, but I think they could have done something even more thought provoking.

Would I recommend this movie? This is a bit of a thinker. I would not recommend this for someone looking for pure horror, action, or sweat inducing suspense. That said, if you love to watch movies that make you think… would I recommend this movie? Absolutely!

Hey everyone!

Ok, well… technically this ISN’T “episode 001″ as I’ve posted about this before, but this post I’m trying something new. I decided to give my latest update on my arcade controller via VIDEO! YAY!
For those that don’t want to really sit through it… bought some networking cable, jacks, and got my iPac2 board. This is going to be fun!

You need to install or upgrade Flash Player to view this content, install or upgrade by clicking here.

Ok… so I decided I’m going to attempt the building of a Mame arcade controller. Of course, by controller, my mind is picturing a 3 to 4 foot bench-like stand for which the user will stand in front of as if they were standing in front of an actual arcade machine. The idea I have is, instead of a single cabinet where 1 to 4 people stand around the arcade cabinet, each player will have available a contoller bench with their own controls. If you want to play one player, you only need one bench out. If you want 4, take out four benches. I think of it as my idea for a “modular” arcade system. I know this defeats the purpose for the purests, but I’ve never been a purest and, besides, if this works and I actually learn something I may graduate to a more purest arcade machine.

In any case, I’ve already purchased an iPac2 which will allow me to connect two controllers (if I eventually build a second controller). I’m just waiting for it to arrive and decide on where I want to buy my controller joysticks and buttons. In the mean time, I’m experimenting with how I want to core computer to work. At the moment, my idea is to configure a OS on an SD card for use in my Eee PC (2G Surf, by the by). I don’t know if I’m being picky, but, I’m looking for Eee PC compitable OS, such as Eeebuntu, or Easy Peasy and install the emulators and Wah!Cade onto it.

At the moment, I’m downloading EB4 Beta 1 and am going to see how that works.
Well, I’ll update as the project continues.

Secured for spam by MLW and Associates, LLP's Super CAPTCHASecured by Super-CAPTCHA © 2009-2010 MLW & Associates, LLP. All rights reserved.