Help The World By Hosting Academic Torrents

Reliable access to information is important. Like electricity, we don’t think about it much until it’s gone.

Just imagine how much harder your daily life would be if you weren’t able to access a given piece of information. Whether it’s because the server is down, workplace firewall rules, or some sort of government censorship, how would you get what you need in order to do your work? Is it even possible?

If you’re a student looking for data for your research paper, or you’re a automotive dashboard designer trying to reduce driver distraction, or you’re a marketer looking for data to analyze customer habits, you need access to quality information that will help you make decisions based on data.

It’s no secret that most academic and non-profit organizations are constantly strapped for cash, often requiring donations or tax breaks just to keep the lights on. While it’s always welcome to donate money, there are other ways you can help out.

Have you ever considered donating a bit of hard drive space to help host academic files for universities? Many of us (myself included) have a home theater computer connected to our living room TV. Whether it’s an old laptop with a broken screen, a Raspberry Pi, or an Intel NUC, we’ve got something that’s available for most of the hours of any given day and has a hard drive that is almost never used.

Why not donate 10 to 15 GB of space to host important and much needed legal torrents?

 

Torrent Academic Data

 

This is what I’ve started doing. Using Transmission, which is available for free on Linux, Windows, and Mac, you can easily set up a folder to host legal academic torrents.

 

Transmission Torrent Software

 

Worried about it killing your Internet speed or receiving hefty bandwidth bills? You don’t need to be. If you click the little turtle in the status bar, you can set sane speed limits. To not interfere with my Netflix streaming and gaming, I’ve got mine set to low speeds. It won’t be a deluge of data being sent, but just imagine if 50 of us all had these settings, the speed for the files will be fast, because that’s how Torrents work: splitting the file across multiple people to increase speed and reduce the chance of one down server stopping everyone.

Take a look at Academic Torrents to learn more about how you can help out.

Cloud Folders Increase Productivity

Being a web developer, I usually use several different computers on different operating systems across the lifetime of any project. Personally, I have 5 computers plus one server: Access to a Vista PC, a Windows 7 virtualized installation, my main Mandriva Linux desktop, a Eee 701 PC with Eeebuntu, a Mandriva Linux laptop, and a FreeBSD development server.

Moving files from one computer to the next used to be a time-consuming and ultimately prohibitive process. If I wanted to, say, take a break from working on my PC and work at the Red Brick Cafe for a few hours, I’d have to download my work files to a USB memory card then export the MySQL database and do the same transfer again to the USB memory card.

Or, I could burn a CD. Of course, how does one get the updated files back off the laptop and onto the PC when arriving back at home? This arduous process basically meant that freedom of choice in the work environment was severely hampered and was often more trouble than it was worth. But not any more.

Enter Dropbox.

Dropbox is a free service that is basically a shared folder in the cloud. It makes sharing files amongst any computer, whether it be Mac, Linux, or Windows, easy as drag and drop. And I really mean that. I love things that speed up my work processes because the less time I spend in administration mode the more time I can accomplish tasks in programming mode. Dropbox exemplifies this manifesto.

Any file you put in the Dropbox folder on a computer will instantly be available on any computer that install Dropbox on. Even better, revisions are kept so if you make a mistake with a file and don’t have backups, you can pull the file in question from the archives to restore it. What makes Dropbox different from any other revision or archiving setup is that this is all done without any administration by the user. Literally if you drag a file into the folder, all this stuff is done for you. No committing changes, no crazy hoops to jump through.

Oh, and the 2GB storage starter account is completely free. It’s the one I use daily. I don’t even think I’ve hit 25% capacity yet.

Nerd Overload: The Gecko Surfboard

There’s one thing I know for sure that I will be buying in 2010: The Gecko Surfboard.

It’s a $99 PC built inside a keyboard. How awesome is that?

It runs the Linux operating system and has beefy enough specifications to be able to run web and office apps with ease. I envision a great opportunity for these in the education sector. The devices are so inexpensive and capable, schools could literally hand them out each year to incoming students who would then take them home and bring them back and forth to classes. Data for their apps and school work could be saved in the cloud so teachers and assistants could mark work without ever printing a sheet of paper.

Seriously, it’s this sort of opportunity for a better world through technology that energizes me. It makes me happy to be a developer and happy to be a part of this awesome industry. I’d love to hear stories of cool instances of this hardware at work once it’s released. If you have something to share, please do.

For more information on the Gecko Surfboard keyboard PC, check out http://eeepc.net/the-gecko-surfboard.

Make Music With Schism Tracker

There exists an obscure music format that an entire generation of kids grew up with, most without ever realizing the sub-culture and community that had grown up around them. The file format is called Music Modules, or Mods for short. There are many different kinds of Mod formats, each with their own unique set of features, but they all work using the same basic principles: The Mod file contains the “patterns” (digital sheet music) as well as the “samples” (instruments) that play according to the patterns. In this way it is somewhat of a cross between a MIDI and an MP3 file. Because each Mod includes the instruments with the file, each Mod can have a unique sound.

Mods were frequently used in videogames and PC games during the 1990s. If you had a Super Nintendo, Sega Genesis, or Atari Jaguar, chances are you have listened to Mod music and never even knew it.

The Mod community has been around for a long time and includes some of the best Demoscene musicians in the world. Making your own mods is free and easy and when you’re finished with your masterpiece you can unleash it on the world for comment and rating via websites like The Mod Archive.

Schism Tracker Screenshot
Schism Tracker Screenshot

In order to make music modules you will need a computer with a sound card (if you bought a computer after about 1993 you should be okay :D) and a Tracker. The Tracker I use most frequently to make Mods is Schism Tracker. Schism Tracker is a remake of a classic DOS-based Mod Tracker known as Impulse Tracker. Schism Tracker will run on Windows, Linux, and Mac and is free to download.

If you’re interested in getting started with making music on your computer, check out this tutorial for Impulse / Schism Tracker and have fun!

Breathe New Life Into An Old Computer

My laptop is an Averatec 3260. 512MB of RAM, 80GB hard disk, and 1.6GHz processor. It’s had the front panel LCD and battery replaced, by me. It’s still missing the front bezel (I thought it looked cooler with it off.) Up until yesterday, the performance of the machine was just above what I’d consider to be “survivable” regardless of OS.

Then, everything changed.

While I was working with Cory Fowler at Red Brick Cafe and then later at my apartment, I was updating my copy of Mandriva Linux from 2009.1 to 2010.0. During installation something must have gone wrong because KDE4 no longer started properly. It kept bringing me back to the login screen. So, instead of using KDE4 I used IceWM.

I haven’t gone back to KDE4 since yesterday. And I’m the hugest KDE4 fan there is.

If you’ve got an old laptop or an old desktop that’s struggling under the weight of Windows XP or KDE4, grab a copy of Mandriva Linux for free and install the IceWM packages. Give it a go. I’m sure you’ll be impressed with the performance of your machine. I know I was! I remember running IceWM a few times when I first started using Linux quite a number of years ago but it has really come a long way since then.

IceWM runs all of the KDE4 programs I care about and even the Gnome programs, too. Watching a video on YouTube is made much easier with the lighter-weight desktop, as is just general browsing.

IceWM offers a lot of customization but some of it is complicated to configure. The easiest thing to do is to replace the God-awful default theme with something way cooler and easier on the eyes. The theme I’m using now is psicopoire.

The Box-Look.org website includes hundreds of awesome themes you can try out. And installing them is actually pretty simple. To install a new theme in IceWM, try this:

  1. Download the tarball
  2. Untar the tarball into the ~/.icewm/themes directory (if it does not exist, create it)
  3. Right-click on the desktop and go to Settings->Themes->Your New Theme’s Name

Does anyone else know any other neat, lightweight software to replace large-scale, heavy applications? I’d love to give them a try.

Google Chrome for Linux Now Available

The world’s fastest web browser, Google Chrome, has recently been released on the Linux platform. This is big news since it will greatly improve the web browsing performance of many of the world’s netbooks.

I’ve been a huge fan of Google Chrome since it appeared in the summer of last year, but haven’t used it heavily simply because of the lack of Linux support. It is installed on my Windows 7 virtualization, however.

Word on the street is that Google Chrome is also available for Macs, so if that’s your platform, take a look!

One thing that I think is important to note that I haven’t seen anyone pick up on is this line on the Official Google Blog post about Chrome being available for Linux and Mac:

“At Google, most engineers use Linux machines …”

Hmm.. No wonder they’re winning! ;)

Go for it -> Download Google Chrome for Linux

Develop Locally With Linux, Apache, MySQL, and PHP

If you’d like to develop PHP and MySQL web apps in Linux but you’re not sure how to get started then feel free to follow along with this blog post. For the most part, installation and configuration is simple and straightforward.

Though this article is directed toward users of Mandriva Linux (my Linux distribution of choice for a desktop / web-development PC), the same instructions can apply to many of the different Linux distributions including Fedora, Red Hat Enterprise Linux, Ubuntu, and Eeebuntu. For a huge list and up-to-date news of Linux distributions available to you, take a look at the Distrowatch news site.

The easiest way to install all of the software in the LAMP stack (Linux Apache MySQL and PHP) quickly is to do it using the command-line (also known as the console). Since many new users are uncomfortable with the command-line, feel free to do all of these installations graphically using the software installer from your respective distribution.

If you’d like to proceed using the graphical installer built into Mandriva Linux, use the “Install & Remove Software” icon located in the main menu.

To install apache, mysql, and php using the Mandriva command-line, follow these instructions:

  • Open up a terminal by clicking on the Mandriva star and clicking on Terminal
  • Type “su” and press enter (this will log you in as the administrator or “root” user)
  • Enter your root password
  • Type “urpmi apache php mysql phpmyadmin nano”
  • If asked which version of apache, select a stable version to install (likely the first choice)
  • If asked which version of php, select the apache module version (not CGI or CLI)
  • If asked for permission to install extra software that is required for proper operation of the LAMP stack, select “yes” and proceed

Once the software has been installed, you should be able to open up Firefox and navigate to http://localhost . This should bring up a screen that says “It works!”, meaning that apache has been properly installed.

For reference, Mandriva Linux puts your web files in the directory /var/www/html . Straight away you may not be able to access those folders with your regular user so feel free to change the permissions of the directory recursively by using the command

chown -R yourusername:yourusername /var/www/html

Note that this operation is definitely not secure if you plan on actually hosting your website on the live Internet using this computer, but for local development you should be okay. :) To learn more about file and directory permissions in Linux, take a look at the official documentation.

Before you are able to access your databases through phpmyadmin, you will need to set your MySQL root password using the following command (being sure to change NEWPASSWORD to a password of your choice):

 mysqladmin -u root password NEWPASSWORD

Using Firefox (or whatever browser you normally use) navigate to http://localhost/phpmyadmin . Log into MySQL with your “root” user and the password you just entered into the command-line. This should give you access to your MySQL databases. For more information on how to use phpmyadmin, take a look at the official website.

Let’s create a small Hello World PHP web application by navigating to our web directory and creating it. Use the following commands to achieve this:

cd /var/www/html
nano test.php

In the editor screen that appears, enter

<?php echo "Hello World!"; ?>

Press CTRL-X and save the file before quitting. You should now be able to navigate to http://localhost/test.php and see your hello world application :)

Hopefully this has given you enough information to get you up and running. Please feel free to post comments if you’ve run into problems and hopefully I or another person in the community will be able to help you out.

Have fun with PHP on Linux!

A Month With Mandriva

Well, it’s been just over a month since I made the switch to Linux from Windows. My distribution of choice for desktop PCs has always been the fantastic Mandriva Linux. Available for free with plenty of included software (Open Office suite, the Firefox web browser, Kopete messenger, Amarok media player, and much more), it’s always done the trick and looks wonderful doing so.

I have two physical hard drives in my PC. The first one is mounted ‘/’ for all my system files and programs. The second drive is my ‘/home’ directory, where all of my documents are kept. All of the system files are kept entirely separate from my documents.This sort of division is done even with one single hard drive automatically by Mandriva so that if I ever need to format or upgrade the operating system I don’t lose any of my pictures, movies, or music, ever.

Me playing Morrowind in Linux
Me playing Morrowind in Linux

Life without Windows is certainly possible. I’m living proof. And the stuff I use my computer for is likely more intense than your average Joe since I’m a web developer. All of the required software that I use on a daily basis is available and runs great in Linux.

All of my games worked out-of-the-box using the Windows games and software emulator* (Read more about the Wine project). I’ve included a screenshot of me playing Morrowind. It runs great. My girlfriend and I played through Max Payne on this PC, as well, and we’re a quarter of the way through the Quest for Glory 2 remake (which is a lot of fun, by the way) on my other Mandriva Linux PC (our media center).

If you’re considering running Linux or if you’ve heard about it and are curious, give Mandriva Linux One a try. It’s pretty simple: You download it and burn it onto a blank CDR. Reboot with the disc in the drive and you can use it right off the disc without actually installing it. If you like it, go ahead and install it. Otherwise, just take the disc out and reboot — nothing has been changed on your computer.

For more information about Linux, try reading some of these sites:

* I realize Wine is technically not an emulator, but when explaining what it does it helps to use that term.

Well, I’ve officially made the switch to Mandriva Linux.

After years of dual-booting between Windows XP and Mandriva, I made the decision to bring the hammer down and get rid of the former. My original intention was to make the switch when I bought a new PC but my hand was forced as I came home from work on Friday to a locked-up Windows XP desktop that never came back.

Fear not: no data was lost as Mandriva can read Windows drives. I backed up my things onto my /home partition and waved goodbye.

It’s been a roller-coaster past with Windows XP: When it first came out, I irrationally hated it. Once I got used to it, I found it actually worked pretty well. Mostly. Sure, it lacked some of the neat features Mandriva had (rotating cube desktop, wallpaper playlists, etc.) and you never quite knew when the next time it would fail was, but it got the job done. Facing a crashed system and being forced to format was always a wonderful experience. Windows doesn’t have separate partitions for your personal files and system files, meaning that when you begin again, you lose everything. Hope you made a backup! Going through the hassle of calling a Microsoft person in India to promise them you only had one copy of Windows installed was always a treat, as well.

When Vista came out I was put off by even more Digital Restriction Management (DRM) but wanted to see how it performed nonetheless. I can honestly say after using it at work for the past year and a half that it will never come close to being installed on my machines. So, that leaves us the little engine that could: Mandriva.

It’s been just over 2 days since breaking up with Windows XP and I have to say, I don’t miss a thing.

Mandriva 2009.0 Is Almost Here!

The newest version of Mandriva is almost here! Released just a few days ago, the second release candidate of Mandriva includes the long awaited switch to KDE4. A release candidate, for those not aware, is the versions of Mandriva (and other software) that are considered nearest to the final cut. Once these final few versions pass with a minimum of bug reports, the software is released in full.

If you’re interested in trying out Mandriva Linux, you should try last season’s stable 2008.1 version. If you’re a current Mandriva user and want to see the latest and greatest (at the risk of system stability), check out 2009.0 RC2.

For more information, check out the DistroWatch page for Mandriva Linux.

linuX-gamers – Boot n’Play Linux Games Disc

This thing is really, really cool.

I saw on Distro Watch today the announcement of a new development version of the “boot n’play” Linux games DVD available for download and was instantly enthralled with the idea. It’s like having a free games console on your PC. You put the disc in, reboot, and play. Right off the DVD. You can save your savegame on your USB memory card. There are quite a few high-quality games included with this thing and a lot of them provide multiplayer fun. Check out the games list for further info.

If you’re looking for a change from the normal PC game scene, download the DVD torrent and start playing! Also, don’t forget to submit all the bugs you find in the bugtracker!

Have fun!

Using FFMpeg to Convert mpg or mov to flv

If you need to use a command-line program to convert between different movie or media formats, it’s likely you’ll end up using ffmpeg. ffmpeg is the de facto standard for converting file formats in *nix and FreeBSD environments.

Using the program from the command-line is like using any other program. There are a large amount of switches and options you can use to change the functionality of ffmpeg, including video resolution, video quality, audio compression and quality, framerate, and more!

There are many ways to download ffmpeg. Many vary on your distribution of Linux or other Operating System. In many cases, ffmpeg may already be installed and ready for you to use. For Mandriva users, ffmpeg is available using urpmi or the “Add/Remove Software” program in the control panel.

In case you simply need to convert a video from mov or mpeg format to Flash Video (flv) here is the command that I use:

# ffmpeg -i <filename.mpg> -deinterlace -ar 44100 -r 25 -qmin 3 -qmax 6 <filename.flv>

This will convert your movie to Flash video (.flv extension) at the same resolution it went in as (for example 480×392 pixels in width and height), deinterlace the video, set the audio frequency to 44100 (high quality), the video framerate to be 25 frames per second, and set the video quality between 3 and 6, which will give you very good yet quickly servable results. If you’re shipping this video on CD or DVD you can set the qmin and qmax values lower (lower = higher quality) but for streaming video this is very, very good and very close to the original without being massive in size.

In fact, the one thing that requires some explanation are the qmin and qmax values. It’s a slightly complicated subject but can be easily explained by thinking of qmin and qmax as how much quality you want to take away from your video, between those two numbers. The minimum qmin and qmax is 1 and the maximum is 31.

If the video size is too large after using this command example and you would like a smaller file, try increasing qmax first until you reach it’s maximum. It’s likely that you will find a happy number in there without having to adjust the qmin value.

If you need to convert several videos, say from a directory, you can use this script:

<?php
if ($handle = opendir('.')) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != ".." && strpos($file, "mpg") !== false) {
                $new_filename = str_replace(" ", "_", strtolower(str_replace("mpg", "flv", $file)));
                $file = str_replace(" ", "\ ", $file);
                exec("ffmpeg -i $file -deinterlace -ar 44100 -r 25 -qmin 3 -qmax 6 $new_filename");
        }
    }
    closedir($handle);
}
?>

It’s fairly self-explanatory, but the above script simply fetches a list of all of the files in the current directory and executes the ffmpeg program for each file in that list that has the extension “.mpg”.

It should be noted that converting between different video file formats may require a license to do so by the patent holders of that file format. Be sure that you have dotted your “i’s” and crossed your “t’s”.

Linux/Unix: Using split and cat to split large files for transfer

I learned about a really handy command-line tool today that you can use in Linux, Unix, or FreeBSD to split any large file to any size that you like. These two commands, split and cat, can work together to split your files for easy transfer or storage. Then, you can concatenate them back together again to make one file.

If you’ve got a small maximum filesize to your E-Mail attachments or your backups take up slightly more than a DVD or CD, then you can definitely use this. And, it’s really, really simple.

First, split the file using the command “split”, specifying how many megabytes you want to split your file into.

# split -b 1024m <filename>

This will split your file into as many parts as needed, in 1024MB chunks, typically with the name starting as xaa, xab, xac, and so on. You can then burn these files to a disc or E-Mail them (though if you’re E-Mailing it might be better to specify a smaller chunk size. For example, you’d use “-b 1m” for 1MB chunks).

Keep in mind that once you’ve split your files, in order to put them back together again you’ll need all of the files. If you’re missing one of the files, this operation will not work. But that makes sense, doesn’t it? :)

Once you’ve split your files you can easily put them back together again using the command “cat”.

This is even simpler.

# cat xa* > <filename>

This command tells cat to concatenate all the files starting with “xa” and put them into one new file.

Many zip, rar, or other archiving tools will allow you to split the file you’re zipping across multiple volumes, but the benefit of this is that you can split any file you like, even MP3 or jpg files. Split to your heart’s content!

Render Your Sites In IE6 With Free Software

If you’re a web developer like me or even a web designer, there comes a time in the development of your site when you need to verify that everything works with Internet Explorer. For small sites or minor tweaks this can wait until the end of the day without much worry. On larger sites, it’s likely you’ll be checking for IE 6 or IE 7 compatibility several times throughout the project.

For those of us who have moved to greener pastures by switching to Linux or for others who have updated their system to Internet Explorer 7, several options exist to view your website in everyone’s favorite web browser: Internet Explorer 6.

In order of success I’ve had with this software, some of the options for Mandriva Linux users are listed below:

#1 – Wine, Wine-Doors, and Internet Explorer 6.

Wine-Doors is a graphical, easy-to-use point and click program that uses Wine. For those unfamiliar with Wine, it is a Windows “compatibility layer” that, in layman’s terms, allows you to run Windows programs like Internet Explorer and Microsoft Office in Linux.

Installing Wine and Wine-Doors in Mandriva Linux is a breeze. Simply open up the software installer in type Wine in the search box. Install both Wine and Wine-Doors.

Once they are installed, open Wine-Doors and click on Internet Explorer 6 to install it. Wine-Doors will take care of everything, including downloading Windows fonts and the Internet Explorer program itself.

Internet Explorer 6 works great for me this way. IE loads quick and displays websites just as it would if it were running on a Windows computer. With some of the other options listed below, the fonts and performance were not as smooth.

#2 – IE NetRenderer – Web-Based Browser Screenshot

This is a unique solution that is truly cross-platform. It’s not perfect – sometimes divs, table widths, or images are off by a few pixels, but for the most part this is a really reliable and quick solution.  The process is simple: You go to their website, paste your website’s address in a form and it will refresh with a screenshot of what your website looks like in IE5.5, IE6, IE7, and IE8 beta (still in beta as of this article’s creation).

Similar, but not free service: Browsershots. Well… It’s free, but you get put into a queue and it could take hours to get your screenshot. Unless you pay. :)

#3 – IEs4Linux

This is another project that is based off of Wine and installs easily on Mandriva Linux as well. You are able to download and extract the installer program from their homepage, but some of the fonts were off for me and it only loaded once. Once I closed the browser it never re-opened.

Also, the program is able to install IE5, IE5.5, and IE6 though I personally was only able to get IE6 installed. All other options resulted in an error. Your mileage may vary.

Crossover Games, PlayOnLinux, Wine, and Cedega

If I had a lot of money…

I’d buy PlayOnLinux and Cedega and Crossover Games (while maintaining a great working relationship with the good folks still at Crossover working on apps) and put together (with some hefty funds behind them) a crack team of DirectX hackers and previous Microsoft DirectX programmers to put together a fully-functional, working DirectX emulator for Mac and Linux. Then, port all those changes back into the Wine trunk while promoting an off-the-shelf Windows games player.

I truly believe that if games worked on Linux flawlessly there would be a greater adoption of Linux on desktops worldwide. I know locally it is a huge hurdle to jump. All of my friends are interested in Linux, two of them have the ISO sitting on their desktop. Why are they not making the switch? One: Games. The other: Sony Vegas. People want to use it but they want their games too!

Game development and publishing companies wouldn’t have to write games to be cross platform if the emulator worked perfectly. They would go on making Windows games while Linux continues to grow in installed user base.

Making games for Linux is not the answer, making Linux work for games is!