Archive for the ‘Technology’ Category.

iPod Touch Revisited: Hopeful Horizons

We recently acquired two iPod Touches…Touchs?…iTouches?…anyhow, we got two of them to test out and brainstorm ideas on how they could fit into coursework. With the announcement that there will soon be an iPhone/iTouch SDK this little gizmo is looking pretty promising. Though, there are still some things that could make it much better.

My big gripe, as of now, is that the QuickTime plugin that runs in the mobile Safari browser does not support RTSP streaming. This is unfortunate since our media server streams all the videos in RTSP from a Darwin Streaming Server, which can’t stream via HTTP because of port conflicts with Apache. **Grumble**. One has to wonder why this functionality was left out of the plugin. Browsing the web is fine on the device, and the multi-touch interface is easy to get used to. I can already see the widescreen display being much easier on the eyes when trying to watch films too.

What I am excited for most, however, is to see some of the 3rd party apps that will start popping up once the SDK is released. One of my personal “must see”s is iFlash on the iTouch. iFlash is a great app, especially for language learning, and the iTouch interface feels like it would fit like a glove with iFlash.

The iTouch has also spawned a whole host of “if I knew how to program better” ideas in my mind as well. For one, a web-based home media library to catalog video files on a media server that you can access on the road. No need to load up your iPod with huge files if you can stream them over Wi-Fi when convenient. You can already do this in a very manual sort of way if you set up a webserver in your house and manually edit the pages and files, but it would be great to have a WordPress-like system by which you could store and access the videos.

That also gets me wondering…why can’t one access a shared iTunes library via the iTouch? Perhaps the practicality of that isn’t as much as is I think. I could see situations where it would come in handy though.

You Need to Get Railed.

Throughout the later half of my life I’ve been flirting with programming technologies of one sort or another. HTML, JAVA, CSS, PHP, Applescript, and various proprietary scripting languages. Never, though, have I really felt that I could do anything really useful with any of these languages. I just didn’t have the head for programming, and it took too much coding before I could even get anything like a base that I could work from; a working model to tweak and configure. I’ve built some ok websites, and know enough Applescript to get stuff done that I need to, but beyond that I’ve always been very intimidated by programming.

Then I decided to take a look at Ruby on Rails. I had heard good things about Ruby, and I picked up Learn to Program by Chris Pine, which is an introduction to programming in Ruby. Compared to my CS 160 flirtation with JAVA during my freshman year (the class that ultimately led me to spurn CS in favor of Anthropology) Ruby was much more elegant, and required less headache to do simple tasks. Having decided that Ruby was actually approachable, I looked into Rails.

 

Rails is (as I understand it at this early point) an extension of Ruby that focuses on developing dynamic database-driven web apps. The kicker is that it does a LOT of the setup work for you, provided you can live with adhering to some simple naming and structure conventions. Within 15 minutes you can have a simple web app up and running. It does this by making a few basic assumptions about what you want to accomplish. You have a database, with tables, and in these tables you want to create, edit, and delete elements. Create the database, making sure you name it right, and add a table with some fields, then tell Rails to build the scaffold around that ( a one line terminal command). Presto! You have the basic structure from which to build off of.

I’m only at the point where I’ve been following in some online tutorials, but the ease with which one can create something that is actually functional is a big kicker for me. I don’t want to have to code for days on end in several programming languages just to be able to get to what I would consider a starting point.

Facebook is teh Evuhlz

I used to be mildly amused by Facebook. It was fun after they allowed groups and started making it more interactive (as opposed to the now defunct Collegefacebook.com). Then they added the apps, which made it slightly more amusing, or so I thought at first. I’ve added a few, but most of them seem really slow. Scrabulous is fun, but barfs out at least a couple times a day. I also get more Zombie, Slayer, Ninja, Pirate, etc requests than I can handle.

But the thing that irks me the most about Facebook, the thing that makes me want to reach out and strangle the developers, is this:

Why must my status updates take the form of “John is…” ?

What if I don’t simply want to declare my immediate status? What if I’d like to give a more general impression of my status, or even *GASP* declare my PAST status? After all, as soon as it is posted it no longer represents my true immediate state of being, but rather my recently passed state. Facebook forces me to be a liar.

One way around this is to use the Twitter app, and have it update your status as well, thus the status takes the form of, “John is twittering ‘Take that facebook!’”. But that is limiting in another way, because then it would seem unnatural to say something like, “John in twittering, ‘John has consumed too much cereal and beer today’”.

Would it really be too much for Facebook to simply leave out the “is” in the status? Would that be too much to ask?

*EDIT* How timely, they just changed the status updates so that you can substitute “is” for anything you want! I take back everything I ever said bad about you Facebook.

*EDIT AGAIN* It seems they removed it as quickly as it had been changed. How…depressing. At least I tasted freedom for a few seconds.

More Neutered Technology

I’ve been developing a very solid opinion that this kind of thing is becoming the norm nowadays for technology. Companies release hardware that has great potential to do truly great and useful things, and then they completely drop the ball on the implementation of it. Another case in point:

The Elgato Turbo.264 H.264 Video Conversion Stick

Anyone who does video conversion knows that the process is long, boring, and wastes time that one could be doing getting more important things done. Video conversion is very hardware intensive, and anything that could make that process faster and less boring is very much appreciated.

Elgato had it right in concept: a USB add-on that would take the load off your processor for converting to H.264 video. Problem is they funneled its use through their severely limited software, which only allows a couple different conversion presets, does not support anamorphic or widescreen ratios, etc and so forth. Not only did they make a complete bottleneck of the interface software, but they couldn’t be bothered to release an API for independent developers to write more useful software, or make existing software integrate with it.

Boo-urns.

iPod Touch…Still a Crippled Half-Hearted Machine

While I love iPods, and wouldn’t really use any other player that is on the market right now, I grow less and less enthusiastic about the newest, bestest iPods coming out. I deal with iPods so much it sometimes makes me want to puke. I have at least 20 sitting on my living room floor right now waiting for student audio to be loaded onto them. I love the interface and the look, but honestly I can see so much more potential in these little boxes then Apple is currently putting out. The biggest problem is that even if someone saw potential, and had the means to create a program for the iPod, or even a new OS, they face big hurdles, mainly because everything that goes onto the iPod has to go through iTunes.

Why is this the big problem?

Because what this means is that everything, excluding songs that you yourself rip, is laden with the Apple DRM. This includes games and other programs that go onto the iPod. Now, to me this is simply ridiculous. If Apple has to kowtow to the music industry and cripple their music with DRM, fine, and if they want to do the same for programs bought through iTunes, I guess that makes a bit of sense too, but to completely lock out any third party programs that do not go through iTunes…that sucks. As such, anyone who wanted to make games or programs for the ipod would need to set up a licensing agreement with Apple, something I’m sure is beyond the scope of small developers, and almost certainly beyond the scope of open-source, freebie-producing one-off developers.

This is a shame, because if Apple didn’t cripple the iPod directly out of the factory then the iPod could be just as useful a tool as an Apple computer. If independent developers were not locked out of programming for the iPod then we could have just as robust a community of free software developers as we have for the Mac OS X operating system.

Until the day that Apple relinquishes the iPod from its development lock any version Apple puts out will be simply less-than it could be.

The ultimate option would be to simply replace the OS with an open-source one, but the current options, like Rockbox, and iPodLinux, are much too inadequate. Rockbox is drab and slow, with an interface that is still in B&W (which makes putting it on a 5G iPod Video a rediculous proposition) and iPodLinux is even slower, buggier, and seems like it was made simply for kids to do useless things like put DOOM on it. Also, good luck getting either to easily install on an ipod that is less than 2 years old unless you are relatively good with Linux.

Edit:

Altering Log has a good post about the possible reasons why there is no iPod SDK, however, there are a couple points which don’t bear out, such as freeware producers taking market share away from Apple. As of right now there are only 18 games available on the iTunes store. In the 2 years that games have been available for the iPod there have only been 18 games. Not only does that suggest a lack of enthusiasm on the part of Apple to make games, (heck, even with outside companies like EA getting in on the action there is still a measly selection) but it also suggests that the revenue from games is not exactly a huge selling point for Apple. Also, as someone mentioned in the forums, more options for games, or actual apps that could do low-level PDA stuff, would actually sell more iPods, and selling more iPods would net Apple much more dough than selling a few games for $5 here and there I’m sure.

It Begins…

Preparation for and execution of the beginning of the semester here has rendered my blogging non-existant. There has been no shortage of work to rend my sanity in twain. Despite this, this semester seems to have a good amount of potential. The faculty seem to have taken to the new opportunities that have presented themselves from our Mac conversion. The lab itself is slowly becoming more solid technologically, and things are coming together in general. I even finagled a brand new Mac Pro (Quad Core, 8 gig ram, ridiculous amounts of hard disk space) into the new purchases, and am aghast at the sheer power. I can’t wait for things to die down so I can really put it through its paces.

My personal projects, however, are languishing. I didn’t get anywhere near the amount of reading done I had hoped. I still haven’t been able to start learning Tibetan. My banjo lessons were going good until this past month when all the work came to a head. I can’t seem to shake all the little details that swim through my head about work projects. I know this is bad, and that I should leave work stuff at work, but I am a project-oriented individual, and to leave things half-finished just bugs the crap out of me.

I really wanted to do a video documentary project this summer. The plan was to do some filming and interviews with ONA (Otaku no Anime), the anime fan group here. Unfortunately, due to my awful planning it fell right smack-dab on the weekend of the IALLT conference. Bummer. Now I need to find something new to investigate.

WordPress: Not Just For Blogging Anymore

My history with WordPress, one of the most popular self-hosted blogging platforms, is admittedly not that long. Maybe a little over a year. I hadn’t fully appreciated the fact that one can make static pages in WordPress until I saw Kerim’s post on using it as a CMS. That was a few months ago, and at first it seemed a bit counter intuitive. Why use a blogging platform for creating static pages? Then, when the LRC decided to revamp its website, the concept suddenly became much clearer. If you want to have a blog as part of your website, it is much simpler to start with WordPress and adapt it to also use static pages, rather than the other way ’round. Building a blog from scratch is no easy feat. You need a good working knowledge of HTML, CSS, PHP, and MySQL or PostGreSQL. Most people who are into making websites can handle the first two, but the last two are more for advanced users.

I don’t know enough PHP or database scripting to build a blog from scratch, so WordPress is a necessity. I do, however, have enough know-how to edit a CSS template, and tweak existing PHP code to fit a WordPress template to my own needs. Thus, WordPress takes care of the hard part. This way all of your static pages retain the same CSS styling that the blog does, ensuring continuity between pages. Pages can then easily be added, deleted, or edited by any authorized users (thus the idea of CMS). This technique does require one to reverse-engineer a template, but I usually find that much more fun than building from scratch.

Leveraging WordPress also gives you access to easy to use plugins that do things like re-order your links, display Flickr feeds, display other RSS feeds, and any number of other niche tasks you can think of. In most cases there is no need to actually alter any code, rather you use the WordPress administrative interface to select the options for any given plugin. Basically, it is as extensible and flexible as you want it to be, for the most part, and it’s all free.

Teeny-Tiny MoBo

I want one of these. I don’t know what I’d do with it, but man would it be fun to play with.

Chinese Character Input for Apple

Apple’s IME system in OS X is about the most painless in existence as far as I have seen. Adding input support for different languages is as easy as checking a tick-mark in a box. Unfortunately, in practice, it proves to be a bit less user friendly when dealing with certain languages. In my case, the support for Chinese characters is a bit cumbersome. The standard Apple “International” IME only allows entry of one charcter at a time, while Microsoft’s IMEs will input multiple-character phrases (good luck figuring out how to set it up, though).

Also, you could previously buy tablets and third-party software for hand-written character recognition, such as PenPower, but those have been discontinued as far as my research on the subject has shown. With InkWell being integrated within OS X one would think that character recognition would be a breeze to implement (just license an algorithm from a third party), but it looks as if Apple only cared enough to include support for European languages in InkWell, which is a shame, because a Modbook with Chinese character recognition would be super-sweet.

The best answer I have found to date to the first problem, that of keyboard input, is to install OpenVanilla, but even that has its drawbacks. First, it defaults to Simplified Chinese input in pinyin, even though OS X supports both Traditional and Simplified. Why not have a preference item to select the default input? Odd. Also, the input system itself is a bit clunky, unless I’m just doing something wrong. When you input a pinyin word that has more than ten possible character matches, hitting the space bar, which would normally select the first match, takes you to the next set of ten matches, so there is no way to select the first match, which is usually the one you want. It just keeps cycling through the match sets. Annoying.

Apple needs to get their buns in gear. With Leopard coming out soon, better IME support is going to be a big factor in my impression of it. InkWell needs to be updated to include popular non-Euro languages, like Arabic, Chinese, Japanese, etc. Especially the Asian, non-phonetic scripts, which certainly seem like the more logical choice for handwritten input, as opposed to languages like English which work just fine via keyboard input.

Also, with OS X having been out for eons the third-party developers need to get cracking with more software too. Too many companies never left the dustbin of OS 9 since Classic was there in OS X to fall back on, then Apple yanked it in 10.4. Heck, even the Vistas Spanish text still comes with an outdated piece of multimedia software that isn’t technically supposed to run on OS X (but does if you don’t follow the instructions) which is actually kind of ridiculous since I assume most of these multimedia CD-ROMS are built with Macromedia software like Flash, and would only mean they’d have to re-export the previous file on a new system. One more reason for Language technology specialists to get in gear and actually start producing more software instead of just using what is given to them by the consumer market.

Audio Streaming with Firefly Media Server

Our Language Lab currently serves up its foreign music collection via an iTunes server that is built in to our Infrant ReadyNAS 1100. The NAS itself is a great piece of hardware, especially for the price, and allows us to archive media, student projects from iMovie and Garageband, and store backup images of our application servers. So far the only issues we’ve had have been so-so AFP performance, and some spotty issues with Samba transfers. These seem to have been cured with a memory upgrade to 1 Gb from the standard 512 Mb.

The biggest disappointment with the iTunes server, however, has been its less than full-featured nature. Specifically its inability to create playlists. With large collections of Spanish and French music students are a bit annoyed to have to sift to get what they’re looking for. Because of this, and probably for other reasons as well, Infrant has decided to ditch the iTunes server for a Firefly Media Server when it rolls out its next firmware update (speculated as sometime in August).

Being the impatient perfectionist that I can be at times, I decided to build a test Firefly server on my laptop at home. The setup couldn’t be simpler, really, and on Linux that is saying a lot. All one need do is install Ubuntu on a box with fairly large disk space (for the media) and then install the mt-dappd package through the Package Manager. Then point a browser to the right port on localhost and configure the media server’s directories and behaviors. Voila! You have a full-featured music server capable of streaming all popular formats, including Ogg and Flak, converting them on the fly for iTunes clients. You can create smart playlists that update automatically using certain criteria, or create an m3u playlist for specific files. I havn’t gotten an m3u to work yet, but I suspect it is because the program I exported the playlist from did not use a relative directory structure.

One could easily throw a large hard drive in an unused PC with decent specs, install the server, and breathlessly serve up audio to anyone on the local network. I need to wait a week to see how the server performs under a substantial load, but I don’t anticipate much of a problem. The thing is VERY zippy even on my older, bottom of the barrel, HP laptop. Streaming lossless Flak files to my Powerbook G4 (which requires on-the-fly transcoding as iTunes does not support Flak) was just as fast as if I had loaded a song from the local drive. Very cool.