Archive for ‘January, 2008’

PodCamp Toronto….

datePosted on 12:13, January 29th, 2008 by Many Ayromlou

It’s that time of the year again, PodCamp Toronto is once again taking place at Rogers Communications Center in Toronto, Canada. If you’re in/around/close to toronto on the weekend of Feb 23-24 make sure you drop by and check it out…It’s FREE. The complete video archive of last years podcamp is also online so be sure to check it out. More info here.

Learn how to program your PS3

datePosted on 22:49, January 28th, 2008 by Many Ayromlou

Thanks to MIT, you can now learn how to program your PS3, and any other Cell Processor based gadget. Prof. Saman Amarasinghe and Dr. Rodric Rabbah have put together a wonderful free course on Multicore Programming using the PS3’s Cell Processor. Course 6.189, Multicore Programming Primer: Learn and Compete in Programming the PLAYSTATION®3 Cell Processor can be attended online here.

Course Description

The course will briefly cover the history of the microprocessor evolution, and discuss the reasons for the recent shift in architecture design toward multicores. Students will become familiar with the Cell processor that powers the PLAYSTATION®3, and how its design choices compare to other emerging architectures.

Students will also learn different programming models for parallel architectures. There will be small hands-on labs to experiment and understand the pros and cons of these different programming models, with an emphasis on stream-based computing. Student will also learn StreamIt, a new, simple, and natural to understand programming language for stream computing developed at the MIT Computer Science and Artificial Intelligence Laboratory (CSAIL). The course will explore broader implications of the stream programming model to various kinds of traditional parallelization technology.

Students will participate in a course long project that can impact one of several domains that include gaming engines, media applications, algorithms for molecular dynamics, and protein folding challenge problems. Students are expected to participate in small project teams. Course projects will be evaluated based on their performance, complexity, and completeness. Students will compete for exciting prizes to be awarded to the best project as selected by a panel of judges.

Open Source lovin’ for your Server….

datePosted on 12:12, January 11th, 2008 by Many Ayromlou

Continuing with our coverage of “Free your Apps”, here is how you can free your Server (and workstation) of those expensive (usually useless) so-called Enterprise Applications. BitNami stacks make it incredibly easy to install your favorite open source server software. Application stacks include an open source application and all the dependencies necessary to run it, such as Apache, MySQL and PHP or Ruby. All you need to do is download the Stack, provide a few pieces of information when prompted by the installation wizard, and that’s it. By the time you click ‘finish’, your new application will be ready to run. All stacks have been packaged using BitRock’s multiplatform installer.

Bitnami Infrastructure stacks are designed for developers and system administrators and provide you a way of installing a LAMP or Ruby environment, but do not include any extra applications. It is not necessary to download an infrastructure stack to use an application stack.

All this ofcourse for free, so again to recap, here is a complete list of what they offer:

So what are you waiting for… up those downloads :-)

Best Open Source apps at your finger tips….

datePosted on 11:52, January 11th, 2008 by Many Ayromlou

Are you constantly hearing about Open Source software and are wondering how to go about getting started. Do you want to cleanse your Mac or PC from all those so called advanced applications that don’t do what they advertise, yet take up all the diskspace on your computer. Or maybe you’re just sick of BSOD’n/Beachball’n apps that you brand new computer came loaded with and are ready for some Open Source Lovin’. Well WinLibre and MacLibre have your answer. Both are free to download and both offer you an easy way to install the best Open Source Apps that are out there.

MacLibre Featured applications

  • Create
    • Audacity
    • Blender
    • Gimp
    • Inkscape
  • Internet
    • Adium
    • Colloquy
    • Cyberduck
    • Fire
    • Firefox
    • Nvu
    • Thunderbird
    • Vienna
  • Multimedia
    • HandBrake
    • MPlayer
    • VLC
  • Office
    • AbiWord
    • NeoOffice
  • Utilities
    • ClamXav
    • DesktopManager
    • iTerm
    • VirtueDesktops
    • X11

WinLibre Featured applications

  • Create
    • Audacity
    • Blender
    • Gimp
    • Inkscape
  • Internet
    • NVU
    • Firefox
    • Gaim
    • Thunderbird
    • FileZilla
  • Multimedia
    • WinLAME
    • CDex
    • VLC
    • Zinf
  • Office
    • PDFCreator
    • OpenOffice
  • Utilities
    • ClamWin
    • Notepad2
    • 7-Zip
    • TightVNC
    • NetTime

Stream your Linux/Windows/Mac Desktop as video using VLC

datePosted on 17:54, January 8th, 2008 by Many Ayromlou

A buddy of mine (thanks Mike) showed me this today. There is a input Access module in the newer versions of VLC (0.8.6+) called “screen” which makes this possible. To stream your desktop to another machine (ip address: in this case) just use the following command in Linux (sorry command line only):vlc screen:// :screen-fps=30 :screen-caching=100 --sout '#transcode{vcodec=mp4v,vb=4096,acodec=mpga,ab=256,scale=1,width=1280,height=800}:rtp{dst=,port=1234,access=udp,mux=ts}'or in Windows (slightly different syntax) use this command:vlc screen:// :screen-fps=30 :screen-caching=100 :sout=#transcode{vcodec=mp4v,vb=2048,scale=1,acodec=mpga,ab=192,channels=2}:duplicate{dst=std{access=rtp,mux=ts,dst=}}This is one massive command, so lets take a look at it in more detail:

  • screen:// is our input module selection (if you just run vlc screen:// you’ll see your own screen on the server inside vlc….kinda cool)
  • :screen-fps=30 specifies that we want to screengrab at 30 fps (from default 5 fps)
  • :screen-caching=100 sets the internal caching to 100ms (from default 300 ms)
  • –sout is our output chain.
  • #transcode tells vlc that we first want to transcode the input using parameters to follow
  • {} contains our transcoding parameters
  • vcodec=mp4v sets the video codec to mpeg4 video
  • vb=4096 sets the bitrate of the transcoded video (4Mb/s)
  • acodec=mpga sets the audio codec to mpeg audio (mp3). Audio does not work yet, this is a place holder.
  • ab=256 sets the bitrate of the transcoded audio (256 Kb/s)
  • scale=1 sets the scaling value
  • width=1280 sets the width of the transcoded video to 1280 pixels
  • height=800 sets the height of the transcoded video to 800 pixels
  • :rtp tells VLC that we want to use rtp protocol to send the encoder output to our receiver machine using Real Time Protocol.
  • dst= is the ip address of our destination/playback machine
  • port=1234 is the default port on the destination/playback machine
  • access=udp specifies UDP protocol
  • mux=ts sets multiplexing to mpeg-2 Transport stream

Now on the destination machine just open vlc, goto File/Open Network and by default the Media Resource Locator on top of the window should read udp:// and UDP/RTP with port 1234 should be selected. If it’s not select UDP/RTP (option 1) and put 1234 as the port number. Press Okay and you should see the video stream from the other machine (your server machine). That’s it….Opensource comes to rescue again :-)

How to uninstall almost any application in OSX manually

datePosted on 22:02, January 4th, 2008 by Many Ayromlou

Well, you learn something new everyday. Here is what I picked up today….If you ever install an application that came as a OSX package, there is a good chance that the installer has installed files all over your machine. There is also a good chance that the installer has left you a little gift — a way out if you like — in /Library/Receipts folder on your mac.

You see, if the author/packager has done their job correctly (most do), there is a Bill Of Material (known as a bom file) that is copied onto your system. In the example below I wanted to check the files that got installed on my machine by the MacFUSE installer so here are the commands I issued:
Brainiac:/ mayromlou$ cd /Library/Receipts/MacFUSE\ Core.pkg/Contents/
Brainiac:Contents mayromlou$ ls Info.plist PkgInfo Resources
Brainiac:Contents mayromlou$ lsbom

So in this case I cd to the folder for the application in question (under the /Library/Receipts folder) and go directly to the Contents Folder. Then I get a directory listing and notice that there is a Bill of Material file there. Then I proceed to issue the lsbom command which will decode the bom file and shows me the following output:
. 40755 0/0
./Library 41775 0/80
./Library/Filesystems 40755 0/0
./Library/Filesystems/fusefs.fs 40755 0/0
./Library/Filesystems/fusefs.fs/Contents 40755 0/0
./Library/Filesystems/fusefs.fs/Contents/Info.plist 100644 0/0 2591 1626887788
./Library/Filesystems/fusefs.fs/Contents/Resources 40755 0/0
./Library/Filesystems/fusefs.fs/Contents/Resources/English.lproj 40755 0/0
./Library/Filesystems/fusefs.fs/Contents/Resources/English.lproj/InfoPlist.strings 100755 0/0 6092 580475608
./Library/Filesystems/fusefs.fs/Contents/version.plist 100644 0/0 456 3975516369
./Library/Filesystems/fusefs.fs/Support 40755 0/0
./Library/Filesystems/fusefs.fs/Support/fusefs.kext 40755 0/0
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents 40755 0/0
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents/Info.plist 100644 0/0 1032 1833265120
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents/MacOS 40755 0/0
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents/MacOS/fusefs 100644 0/0 282292 3125657523
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents/Resources 40755 0/0
./Library/Filesystems/fusefs.fs/Support/fusefs.kext/Contents/Resources/MacFUSE.xcconfig 100644 0/0 42 965707547
./Library/Filesystems/fusefs.fs/Support/load_fusefs 104755 0/0 29212 3910787877
./Library/Filesystems/fusefs.fs/Support/mount_fusefs 100755 0/0 52008 3511781209
./Library/Filesystems/fusefs.fs/Support/ 100755 0/0 4419 3035817197
./usr 40755 0/0
./usr/local 40755 0/0
./usr/local/include 40755 0/0
./usr/local/include/fuse 40755 0/0
./usr/local/include/fuse/fuse.h 100644 0/0 28075 1689529217
./usr/local/include/fuse/fuse_common.h 100644 0/0 6623 3278924455
./usr/local/include/fuse/fuse_common_compat.h 100644 0/0 738 1569919976
./usr/local/include/fuse/fuse_compat.h 100644 0/0 8749 3548531510
./usr/local/include/fuse/fuse_darwin.h 100644 0/0 2304 4217317508
./usr/local/include/fuse/fuse_lowlevel.h 100644 0/0 40397 1846692219
./usr/local/include/fuse/fuse_lowlevel_compat.h 100644 0/0 7572 2140056707
./usr/local/include/fuse/fuse_opt.h 100644 0/0 7307 3645063899
./usr/local/include/fuse.h 100644 0/0 246 2097503619
./usr/local/include/ulockmgr.h 100644 0/0 701 3653182913
./usr/local/lib 40755 0/0
./usr/local/lib/libfuse.0.0.0.dylib 100755 0/0 272548 3600984730
./usr/local/lib/libfuse.0.dylib 120755 0/0 19 2829363220 libfuse.0.0.0.dylib
./usr/local/lib/libfuse.a 100644 0/0 861224 2222446251
./usr/local/lib/libfuse.dylib 120755 0/0 19 2829363220 libfuse.0.0.0.dylib
./usr/local/lib/ 100755 0/0 804 1483864331
./usr/local/lib/libulockmgr.0.0.0.dylib 100755 0/0 38900 610654515
./usr/local/lib/libulockmgr.0.dylib 120755 0/0 23 4013380549 libulockmgr.0.0.0.dylib
./usr/local/lib/libulockmgr.a 100644 0/0 41056 3770607053
./usr/local/lib/libulockmgr.dylib 120755 0/0 23 4013380549 libulockmgr.0.0.0.dylib
./usr/local/lib/ 100755 0/0 832 341285231
./usr/local/lib/pkgconfig 40755 0/0
./usr/local/lib/pkgconfig/fuse.pc 100644 0/0 276 3834070396

The listing above shows all the files that were installed by the MacFUSE installer, so now I can easily go through the list and remove the files (either command line or with Finder). Have fun uninstalling those uninstallable beasts :-).

ItunesFS….MacFUSE rocks!!!

datePosted on 13:43, January 4th, 2008 by Many Ayromlou

Okay so hot on the heels of my MacFUSE install, I find iTunesFS which is a FUSE module for iTunes written by Marcus Müller…..YUMMY :-). Now it’s a read-only module (ie: it lets you take stuff out of itunes/ipod/iphone storage, but most of the time that’s all you want to do anyways. If you want to try it just download the FUSE module from Mulle KybernetiK. Make sure you have the MacFUSE core package installed first.

MacFUSE….ready for primetime?

datePosted on 12:32, January 4th, 2008 by Many Ayromlou

I think so, you see I’ve been waiting for about a year — since last years Mac World announcement — to try MacFUSE, but to be honest I’ve been a bit of a chicken. In my book you rarely, if ever, play around with the filesystem. Specially with ported beta code and all the “uncertainties” of Apple’s latest feline.

Anyways, today I finally got up the courage and had enough time to try out MacFUSE 1.1.1 (specially compiled for leopard). You can download the required files from the Google Code’s download page. For those of you who don’t know, FUSE stands for Filesystem in USErland, and it provides a generic interface that lets the operating system see virtually anything as a filesystem. FUSE provides a single interface that filesystem modules use to interface with the OS. Best of all, anything that provides the correct interface can be interpreted as a filesystem. There are a bunch of modules out there for FUSE and most of them work nicely under MacFUSE.

To start you have to install either one of the core packages. MacFUSE-Core-10.5-1.1.1.dmg for Leopard or MacFUSE-Core-10.4-1.1.0.dmg for Tiger. Once you’ve got this installed and rebooted, you’re ready to use any MacFUSE module to access services as filesystems. I’m gonna talk about sshfs (which you can download from the same google code page). There are quite a few modules out there that you can start using, examples of file systems that work and have been tested (to varying degrees) include sshfs, ntfs-3g (read/write NTFS), ftpfs (read/write FTP), wdfs (WebDAV), cryptofs, encfs, bindfs, unionfs, beaglefs (yes, including the entire Beagle paraphernalia), and so on. You can try these once you get comfortable with the basics. Let’s take a look at getting sshfs module working:

  1. Download sshfs module from google code download page.
  2. Save it somewhere on your mac and double click the dmg file to mount the disk image.
  3. Once the image is mounted you’ll find a single file inside called sshfs.
  4. For my own use I created a macFUSE folder in Applications where I’m planning to keep all my FUSE modules.
  5. Double clicking on the sshfs will run it and bring up the following dialog. I’m going to specifically mount just my Sites folder during this setup. This will allow me to run iWeb and have it natively save my website changes directly to the server. Web developers and anyone else who manages files via SFTP/SCP should rejoice. Using SSHFS means no more synchronizing files with an SFTP client.
  6. Next you’ll be prompted to enter your ssh server password.
  7. Now you should have a new network mounted disk that gives you secure ssh access to your directory on the remote server (in my case my website folder).

Notice that all the files on the server are treated as local files, you get the preview icons, you can drag and drop them on to your desktop or even double click on the files and edit them right on the server, through a secure connection. Now that’s power. Hope you have fun with this, also try out the other modules that are around and let us know which ones you like, which ones work nicely with the mac and so on…..