Saturday, June 28, 2008

A new project: A 'DVD Player' Computer

You know the feeling when you have stuff piling up on you, things you don't really need anymore but you can't just throw out or haven't gotten around to throwing out. Well that is the category my DVD player is in. It's a pretty good DVD player, a panasonic that I bought in 2003 when I first started buying my own DVDs. It probably still works well but it hasn't been hooked up for the better part of a year, it's twice as thick as the ones that have come out in the past 2 years, and it is just redundant as I use my PS2 as a DVD player.



I didn't want to just junk it since it does have some value. I figured I would possibly try to sell it but I suspect with the prices of DVD players I would probably get maybe 20 bucks for the damn thing. Not worth the effort. My third option ended up being the fun option. I am going to turn it into a PC. Since the player is so thick height-wise it wouldn't be very difficult fit the components in. The hard part will inevitably be, where to put them, keeping the components safe and stable but I am working on it.



First thing was first, I had to figure out how to open the damn thing. Machine drilled screws aren't fun when they make damn sure the screw won't budge without the torque of a car but I eventually got it open. I wished I would have thought of taking pictures of the painstaking process of gutting the DVD player of it's internals. All I can say about it is it wasn't that easy. What seemed like hundreds of latches, switches and tabs to deconstruct, I finally get every single piece of panasonic electronics out of there. At first I felt guilty about it but it was just collecting dust anyhow.



A couple of years ago I build a computer specifically designed to record television shows for me. I called it my mediabox and it was built before it became widely cool to do it. It was a nifty little machine that let me play super nintendo games on it using some extra software. One day that machine died and I hadn't messed with it since then. The actual computer inside of that machine was a very small 17cmx17cm (roughly 6 6/8" x 6 6/8"). It would be the perfect board to put into the DVD player for it's size. Here is a picture of the board next to my nokia N800 so you can see the relative size.




















Here are also a few pictures of the pieces of the DVD player I am working with:



The front panel



Front panel (left)




Front panel (right)



Bottom Panel

Now there are a few thing for me left to do at this point. Before even figuring out the placement of the motherboard, hard drive, dvd player (yeah, it HAS to have a DVD player right?), etc, I have to wire up the front panel's buttons to correspond with the computer's on/off switch as well as the power light to make it functional. I am not sure what I am going to do with the Play, Stop, Pause, and Eject buttons but I am sure I can figure out something interesting. Anyway with trial and error and a little tape (because I don't want to solder/glue anything wrong) I got found the power button and one to use for a power light. Here is a picture of the wires taped on, which isn't very pretty:



It is functional and at some point those wires will be permanent. I will keep you posted on the status of this project and hopefully a buyer.

Monday, September 3, 2007

Proprietary software on Linux

Tonight I finally satisfied my curiosity and decided to download and try out Nero 3 for Linux. Nero as most people probably know is a CD/DVD burning suite of software that is commonly run off of Windows. A couple of months ago I stumbled onto the fact that there was a Linux version. I had checked out the screen shots and read a little bit about the features of this version of Nero, expecting it to be some watered down piece of crap not worth the space it occupies. I was pleasantly surprised to see that not only did it use a native tool kit, but that it also used GTK+ 2.x and integrated nicely into the Gnome Desktop. It was something I hadn't expected, but screen shots are only half of the equation. I decided to take it for a little spin with the month trial it offered.
Another thing that I was actually blown away with was the way it was packaged. It offered 32 and 64 bit binaries in rpm and deb form. Rpm and Deb files are two of the most popular package managers for Linux, the Linux equivalent to a Setup.exe or a .msi file for Windows. Since I use the Ubuntu Linux OS, I decided to get the 32 bit deb to download and install. Installation was typical as most deb file installs are and running it was everything the website promised. I burned an ISO to test it out and it worked like a charm. It really appears that Nero 'gets it' in terms of writing GUI software for Linux.
This entry isn't really a review about Nero but I just wanted to open it up with an example of a piece of proprietary software done right for Linux. A lot of times it seems to save time and effort, proprietary software makers release a very watered down shit version of something that may be great for Windows or Mac. Some use a bundled version of wine to make it transparent while sacrificing performance, stability, and desktop integration while others may use a native toolkit or create their own from scratch but create a functionally crippled version. One has to ask themselves "what is up with this? ". It seems like they are paying lip service to Linux but not really taking it very seriously as something to write serious software on.
There are various complaints at to why proprietary makers don't bother with Linux or produce substandard work. One of these complains seems to be "We can't possibly support the 500+ distributions out there". To this I say that many people are looking at Linux the wrong way. There may be many many distributions out there but how many are the most popular. Things usually tend to even out into a duality or maybe with three popular implementations of the same thing. An example of this is the Desktop environments for Linux. The most popular desktop environments to date are Gnome/GTK+ and KDE/Qt. There may be many more out there but these are the two that most desktop oriented distributions ship with. A solution when picking a desktop environment is to look at these two and pick one. Most proprietary companies may be inclined upon reading into terms and conditions of using the tool kits based on these desktop environments to choose a Gnome/GTK+ implementation because of the licensing conditions of commercial usage differs between Qt and GTK+, with GTK+ being more permissive. Desktop problem solved. As far as Linux support goes companies should likewise choose the top two or three distributions out there and write their software based on their libraries, package managers, and criteria. In the case of Nero, rpm and deb files were used, which cater to the most popular demographic of Linux. Those that don't fit the most popular demographic will usually have to settle for a harder to install file or have to figure out a way to install the software and are usually the more technical users who have the ability to do so.
There are other more legitimate arguments as well such as the case against photoshop being ported to Linux. Standard Font support, toolkit enhancements, color display standardization come to mind. I believe that instead of ranting on Linux distributions not having these things or bashing Linux in these areas adobe should really bring the complaints to the dsitributions and the respective authors of the libraries and systems in question. Perhaps working with them and giving the authors of GTK+, Gnome, Xorg, popular distributions, etc constructive criticism, could hold a step in the right direction. I don't think the standardization problem is as big as many make it out to be.