Monday, August 31, 2009

VIM, the little editor that could........

In the Python and MySQL class that I am taking this semester, all of our coding will be created in vim. Vim, for the uninitiated, is a text editor, but it is also much, much more.


Vim and the many derivitives based on it are based from the old Unix program vi. Since vi was originally written in the 1970's for use on large UNIX mainframes that had only terminal access and no pointing device such as a mouse or touchpad, all of the commands and functions contained within could be accessed through typing keyboard commands. At first, the thought of continuing to use a program such as this when you probably have a mouse less than a foot away from you right now seems a little esoteric and backwards. Not so. It is a perfect environment for coding, as it allows you to keep your hands on the keyboard at all times, which helps you create code faster (once you've gotten a hang of the keybindings).

A variety of resources exist to help you familiarize yourself with vim's interface and features. One such resource is the A byte of Vim website. If you need a dead tree version of this introduction, that is available, as well. Vim's own documentation page and vim's integrated help documents are quite helpful, as well.

Amongst the cool features of vim is programming language syntax highlighting, which is very good for coders of all skill levels, since it provides a colorful reminder of what you are creating.

Vim is considered "Charityware", as the software is free, but if you feel compelled to give money, the programming team suggests donating to the ICCF Holland Foundation, which helps youth in the country of Uganda.

Give it a try! You'll be glad you did!

Friday, August 28, 2009

Ubuntu working on App store for Ubuntu 9.10 and beyond


Phoronix has recently published an article concerning Canonical's implementation of an Ubuntu Software Store that they are working on to simplify the package management process for Ubuntu users. It is still in its early stages, but the goal of the project appears to be to unify the package management process using tools like Synaptic, the Ubuntu Update Manager, Gdebi package manager, and Computer Janitor.

A wiki page (from which these images originate) is available to discuss the Software store (formerly codenamed AppCenter). It looks like they are trying to get this unified and functioning reliably in time for Ubuntu 10.04LTS. I wish Canonical the best as they work to make Ubuntu easier and more friendly to use.

Thursday, August 27, 2009

Nokia announces N900 phone, and it runs Linux!



Looks like Nokia officially announced the N900 today. Good for them. I really like the ARM Cortex A8 SoC platform, such as Texas instruments OMAP 35x series, and I wish we had more devices on the market running it. Specs are awesome. Check them out:
Display
  • 3.5 inch touch-sensitive widescreen display
  • 800 × 480 pixel resolution
Language support

British English, American English, Canadian French, Czech, Danish, Dutch, Finnish, French, German, Italian, Norwegian, Polish, Portuguese, Spanish, Latin American Spanish, Swedish, Russian

Connectivity
  • 3.5mm AV connector
  • TV out (PAL/NTSC) with Nokia Video Connectivity Cable
  • Micro-USB connector, High-Speed USB 2.0
  • Bluetooth v2.1 including support for stereo headsets
  • Integrated FM transmitter
  • Integrated GPS with A-GPS
Battery

BL-5J 1320mAh

Processor and 3D accelerator

TI OMAP 3430: ARM Cortex-A8 600 MHz, PowerVR SGX with OpenGL ES 2.0 support

Memory

Up to 1GB of application memory (256 MB RAM, 768 MB virtual memory)

Size and weight
Volume:
Approx 113cc
Dimensions:
110.9 × 59.8 × 18 (19.55 at thickest part) mm
Weight:
Approx 181g
Mass memory
  • 32 GB internal storage
  • Store up to 7000 MP3 songs or 40 hours of high-quality video
  • Up to 16 GB of additional storage with an external microSD card
Keys and input method
  • Full QWERTY tactile keyboard
  • Full QWERTY onscreen keyboard
Colour

Black

Operating frequency
  • Quad-band GSM EDGE 850/900/1800/1900
  • WCDMA 900/1700/2100 MHz
Data network

GPRS class A, multislot class 32, maximum speed 107/64.2 kbps (DL/UL) EDGE class A, multislot class 32, maximum speed 296/177.6 kbps (DL/UL) WCDMA 900/1700/2100. Maximum speed PS 384/384 kbps (DL/UL) HSPA 900/1700/2100. Maximum speed PS 10/2 Mbps (DL/UL) WLAN IEEE 802.11b/g

Call features
  • Integrated hands-free stereo speakers
  • Call waiting, call hold, call divert
  • Call timer
  • Logging of dialed, received and missed calls
  • Speed dialing via contact widget
  • Virbrating alert (internal)
  • Side volume keys
  • Mute/unmute
  • Contacts with images
  • Conference calling with up to 3 participants
  • Internet calling
Email & Messaging
  • Supported protocols: Mail for Exchange, IMAP, POP3, SMTP
  • Support for email attachments
  • Support for rich HTML
  • SMS and Instant Messages as conversations
  • Support for Nokia Messaging service
  • Instant messaging and presence enhanced contacts
  • Multiple number, email and Instant Messaging details per contact, contacts with images
  • Support for assigning images to contacts
Web browsing
  • Maemo browser powered by Mozilla technology
  • Adobe Flash™ 9.4 support
  • Full screen browsing
GPS and navigation
  • Integrated GPS, Assisted-GPS, and Cell-based receivers
  • Pre-loaded Ovi Maps application
  • Automatic geotagging
Camera
  • 5 megapixel camera (2584 × 1938 pixels)
  • Image formats: JPEG
  • CMOS sensor, Carl Zeiss optics, Tessar lens
  • 3 × digital zoom
  • Autofocus with assist light and two-stage capture key
  • Dual LED flash
  • Full-screen viewfinder
  • Photo editor on device
  • TV out (PAL/NTSC) with Nokia Video Connectivity Cable (CA-75U, included in box) or WLAN/UPnP
  • Landscape (horizontal) orientation
  • Capture modes: Automatic, portrait, video, macro, landscape, action
Video
  • Wide aspect ratio 16:9 (WVGA)
  • Video recording file format: .mp4; codec: MPEG-4
  • Video recording at up to 848 × 480 pixels (WVGA) and up to 25fps
  • Video playback file formats: .mp4, .avi, .wmv, .3gp; codecs: H.264, MPEG-4, Xvid, WMV, H.263
Music and audio playback
  • Maemo media player
  • Music playback file formats: .wav, .mp3, .AAC, .eAAC, .wma, .m4a
  • Built-in FM transmitter
  • Ring tones: .wav, .mp3, .AAC, .eAAC, .wma, .m4a
  • FR, EFR, WCDMA, and GSM AMR
  • Digital stereo microphone
  • DLNA
Personalisation
  • Background pictures
  • Widgets on your desktops
  • Intelligent contact shortcuts
  • Shortcuts to your favourite websites
  • Shortcuts to applications
  • Themes
Operating system

Maemo 5 software on Linux

Applications
  • Maemo Browser
  • Phone
  • Conversations
  • Contacts
  • Camera
  • Photos
  • Media player
  • Email
  • Calendar
  • Ovi Maps
  • Clock
  • Notes
  • Calculator
  • PDF reader
  • File manager
  • RSS reader
  • Sketch
  • Games
  • Widgets
  • Application manager for downloads
Gaming
  • Bounce
  • Chess
  • Mahjong
What´s in the box
  • Nokia N900
  • Nokia Battery (BL-5J)
  • Nokia High Efficiency Charger (AC-10)
  • Nokia Stereo Headset (WH-205)
  • Video out cable (CA-75U)
  • Nokia charger adaptor (CA-146C)
  • Cleaning cloth
An interaction video is now available:


I've been waiting patiently for a similar (non-phone) device called the OpenPandora Console, but seeing a device like this with Linux (well, Maemo), GPS, as well as an integrated phone is pretty darned cool. I'm wavering on my singleminded determination towards purchasing the Pandora, although the unoffical Pandora blog has kept me informed well in the meantime.

Stanford college courses .... for FREE!

Haven't you ever wanted to attend a class at Stanford? If so, the Internet wants to help you out. Stanford has released a variety of courses for free to the to public using youtube, showing us that youtube can be used for more than just reruns of He-Man, videos of Super Mario World speedruns, Harry Potter Puppet Pals, and the evolution of dance. The Stanford courses that I'd like to point out here are going to be computer related, because I'm that kind of guy. The first course I'd recommend looking at is Programming Methodology. It's Stanford's actual CS106A Programming Course from 2008. Following that, try out Programming Abstractions, which is Stanford's CS106B course. After watching those 55 videos, feel free to check out Programming Paradigms, which is Stanford's CS107 course. How cool is it to have this soft of information available for free? Rhetorical questsions aside, please take advantage of these wonderful resources. I've embedded the first CS106A video in this post to save you the trouble of clicking:

Wednesday, August 26, 2009

Lorem ipsum generator-

Whenever you are creating random content on the internet, Lorem Ipsum copy is sure to follow. To help generate appropriate filler text, try going to the Lorem Ipsum generator at www.lipsum.com. It makes life a little bit easier when looking at different templates, so that you can focus on the format of the page instead of the text. I wish they also had a random image generator as well, but alas, they do not. Still, it's useful at the job for which it's designed. Give it a try!

Monday, August 24, 2009

Problem Solving Skills

(This image comes courtesy of xkcd.com)

A large number of the problems that I fix for friends and family could be managed using this flow chart. If you're not a tech person by nature, consider printing this out.
Thank you to xkcd for your geek humor. It is always appreciated.
If you appreciate it too, then read more comics and buy stuff from their store.

There are a couple of interesting topics to dwell on here. xkcd is released under a Creative Commons license, proving once again that the biggest challenge facing a modern artist isn't piracy, it's obscurity.

Also, this particular comic helps explain that system administration isn't a group of facts as much as it is a mindset for solving problems. Granted, the sysadmin mindset tends to help you accumulate knowledge and experience that often come in handy in hairy situations, but the method of thought and reasoning that helps you find unknown or undocumented solutions is the true asset.

Thursday, August 20, 2009

JumpBox- Open Source for non-Techies and task-oriented Business people

Open source is a lovely thing. Getting open source software running, configured, backed up and functioning can be considerably less lovely. I hear some of you saying, "If only there was a company that could just configure the software for me so that I could use the program instead of spending my time installing it and resolving dependencies, I'd do cartwheels in the parking lot." Well, start stretching, because it's cartwheel time. Jumpbox is a company that specializes in making pre-configured application-specific open source software virtual machines that can be easily deployed in Windows, Linux, or Macs using virtualization technologies. JumpBox was founded in 2006 by Kimbro Staken and Sean Tierney. For a quick explanation on how Jumpboxes work, there is a 90 second introductory video available on their website, as well as a tour of the basic structure of each Jumpbox.

How Jumpbox works:
A wide variety of open source software is available and preconfigured into virtual appliances, called Jumpboxes. Jumpboxes are ready to be deployed with a minimum of configuration, and are designed to be stable and efficient. There are currently over 50 different Jumpboxes available, including software such as Drupal, SugarCRM, Nagios, Cacti, OpenFire, OpenLDAP, Wordpress, and others.
Jumpboxes tend to be pared-down versions of Linux with just the components needed to run that particular software package, and the distro/version is indicated on each Jumpbox's informational page (Example: The SugarCRM Jumpbox is based on Ubuntu 8.04LTS).
The virtual appliances can be run on a variety of different platforms, such as Parallels, VMWare, Virtual Iron, Xen, and others.

How much Jumpbox costs:
Here's the catch. While Jumpbox saves you in time, it does request some monetary compensation for the services it provides. Currently, Jumpbox works on a subscription-based service, with four levels of subscription varying from $149 to $999 per year, each level providing you more features and services, such as the ability to deploy a Jumpbox on the Amazon EC2 Cloud (additional usage rates may apply on EC2). Before you start throwing rotten vegetables at their company, consider the amount of time that is spent creating and administering these virtual machines, and consider how much you would have to pay someone to do this work for you in-house. For those of you that want to deploy these on a personal basis or work for organizations with more limited budgets, some of the Jumpboxes are available for free download and use, and ALL of the Jumpboxes are available to try out for 60 minutes on the Amazon EC2 cloud, free of charge. One positive result of these free 60 minute trials is that you can easily try out an open source project without committing time or computers to install the software on before trying it. That way, if you hate the software or it doesn't fit your needs, there is minimal loss of time, and you don't have to worry about uninstalling the software or having the removal affect your system configuration.

One point of contention from me about the pricing scheme- there are no accomodations made towards non-profit organizations. It would have been nice for them to create a different category for non-profits, as non-profits could surely benefit from Jumpbox, but may not have the budgetary resources to pay the subscription fees that are posted.


Conclusion:
Jumpbox is a wonderful service for task-based people or businesses who are looking to get work done using open source software with minimal fuss. It also is good for small business who do not have dedicated IT staff to administer several different services, or business that are looking to use software services without having to purchase hardware or obtain staffing to accomplish these tasks.
Linux geeks who love tinkering with operating systems may not love this service, but the free trials and free downloads that they offer may provide an easy way to try out the latest, greatest version of a software before you decide to undertake the install process yourself.
Visit the Jumpbox website, take a look at their wiki, or read their blog to find out more about Jumpbox!

Wednesday, August 19, 2009

Google Wave

Google is poised to change the Internet again, and it will revolutionize collaborative communication and sharing. The way that Google will accomplish this revolution is through a tool called Google Wave, created by Lars and Jens Rasmussen, the creators of Google Maps. Google Wave was built using the Google Web Toolkit.

If you haven't heard about Google Wave yet, do yourself a favor and go to wave.google.com to watch the informational video that was given at the Google I/O developer's conference.


A short description of Google Wave would be that it is a re-visioning of communication on the Internet to accommodate what technology and the Internet is capable of doing. Thinking in terms of electronic mail as an improvement on snail mail, Google wave is an improvement and combination of email, instant messaging, text messaging, and chat rooms like IRC. One Google developer describes it as "email on crack", which I would assume is a good thing.

The protocol will be an open protocol, and it will be natively multi-platform, including Linux geeks like me and developers on the ground floor of the development of this technology. Google has been very open about allowing developers to create using the platform and the surrounding APIs. In addition to the online collaboration, Google is also hosting in-person events, such as the upcoming Google hackathon which is occurring at 3PM on Friday, August 21st in Madison in cooperation with Madison Nonprofit Day.

If you don't yet appreciate the magnitude of this development, consider this: Google Wave will deploy not only on PCs, Macs, and Linux machines, but it will also come with a client for Android Phones and Iphones. If you had to choose between text messaging five of your friends about going out to a movie or starting one collaborative Google Wave to communicate with all of your friends at the same time from your phone, what tool would you choose?

Another cool thing about Google Wave: The name of the technology is a nod to Joss Whedon, as in the Firefly-verse (the fictional universe that is the setting for Firefly and Serenity) a wave is a real-time transmission of audio, video, or text. I am a big fan of Joss Whedon's works, and it's great that such a wonderful technology named after a fictional technology in one of his works.

Keep your eyes peeled, everyone. This launch will be very interesting to see unfold, as the applications are nearly endless, and the vast majority of this project will be open source to allow developers to innovate and create new uses for Google Wave as they see fit. Google really knows how to attract and motivate developers, and that bodes well for the future of this project.

Friday, August 14, 2009

Qimo - Linux for Kids!


Computers can be wonderful tools for education if they are configured properly. Configuring them to be kid friendly, safe, educational, and fun can be a difficult task. Not so if you use Qimo for Kids! Qimo for Kids is a distribution designed for kids ages 3 and up. It's based on Ubuntu and uses the XFCE window manager, so it can be installed on slower machines, as it isn't as resource intensive as other OSes. I'm currently working on a Qimo install for a Sony PCG-9241 laptop- an ancient laptop with a P3 500 MHz laptop, 192 MB RAM, NeoMagic NM2200 MagicMedia 256 onboard video, Yamaha DS-XG sound, 20 GB hard drive, Toshiba 8X DVD-ROM drive, but no wired or wireless network adapter. It does, however, have a rather large screen (14.1 inches). I figured it would be a great candidate for Qimo, as it's just above the minimum requirements. If you're interested, the minimum requirements for Qimo (as indicated on the Qimo 4 Kids FAQs) are:

Qimo needs a minimum of 256MB of memory to run from the CD, or 192MB to install. At least 6 GB of hard drive space is recommended, and a 400MHz or faster CPU.
Installation was rather straightforward, although it took longer than expected, as I didn't burn my Qimo install CD correctly. Since the laptop had a relatively slow optical drive, it moved slowly, but it wasn't a difficult install. A word of warning: The installation process will ask you to create a user, enter a password, and ask you if you want to log in automatically. DO NOT CHOOSE TO AUTO-LOGIN. The Qimo install has already created a customized autologin, and the information you are entering is for the parent/administrator account. All in all, the install went well. Sound and graphics configured themselves automatically.

If you've got kids, or are working on a computers for people who have kids, give Qimo 4 Kids a try. The kids will thank you for it.

Monday, August 10, 2009

ULTILEX- The Ultimate Linux Experience?

I'm a big fan of liveCD tools. They allow me to interact with systems that normally would be either unusable, such as machines with no OS, or difficult to use, such as a PC with an unstable or virus-ridden Windows install. As far as utilities are concerned, I'll take as many as I can get, and apparently Ivan Davidov agrees with me.

ULTILEX, which stands for "Ultimate Linux Experience", is a liveCD with a variety of different projects all crammed on to the same CD. Ivan Davidov was able to fit Slax, Puppy Linux, Tiny Core Linux, System Rescue CD, Parted Magic, FreeDOS, the Ranish Partition Manager, AIDA hardware recognization, Windows password viewing utilites, and hard drive diagnostic and wiping utilities on the same CD (as of Version 4.0). Oh, there's a RAM tester, too. This CD can also act as a PXE server for other machines on your network, if you wanted to try out PXE network booting.

A CD such as this one is invaluable when working on donated computer equipment or used equipment that you are trying to get back in shape, as it allows you to easily test the hardware and run a useful live environment without having to permanently change the hard drive partitions (unless, of course, if you WANT to change the hard drive partitions).

This is another tool that has worked itself into my computer toolkit. Good stuff.

Thursday, August 6, 2009

ClamAV Live CD project

Recently, while attempting to resurrect a Windows laptop that was no longer booting due to viruses and trojans, I stumbled upon an excellent project, and that project is the ClamAV LiveCD. The ClamAV LiveCD project is based on Clam AntiVirus, which is a GPL'd antivirus software that is available for Linux, BSD, and Windows. Since packages are freely available for Linux, Brandon Perry decided to create a LiveCD with ClamAV packages, so that computers that are unable to boot successfully can be scanned for viruses in a LiveCD environment. The project is based on Ubuntu, and has been posted to Launchpad and his personal website, which is volatileminds.net. For those that are not familiar with ClamAV, an excellent tutorial has been made available in English, German, and Polish.

This project is now up to version 2.0, and is based on Ubuntu 9.04. The LiveCD also features a Department of Defense (DoD) compliant hard drive erasing utility called Darik's Boot and Nuke (DBAN), a tool used to remove pesky Windows passwords called chntpw, a hard disk and partition verification and recovery tool called testdisk, as well as a variety of other Linux utilities.

Equipped with this disk, you are well on your way to sanitize those virus-ridden machines that end up on workbenches of computer system admins and volunteer techs across the globe.

Tuesday, August 4, 2009

Phoronix Releases PTS Desktop Live 2009.3 - Benchmarking Live-DVD

Good news for all of you benchmarking junkies out there. Phoronix has recently released PTS Desktop Live 2009.3, a live-DVD version of the Phoronix Test Suite for use in benchmarking Linux, BSD, OpenSolaris, and Mac OSX systems. Along with the live-DVD, they have also announced version 2.0 of the Phoronix Test Suite. A link to the changelog is here.

To provide a little history about the Phoronix testing suite, Phoronix has been on the forefront of Linux benchmarking for several years. The original intent of the testing suite was to provide a uniform set of benchmarking tools for the Linux/BSD/OpenSolaris/OSX crowd, as the tools that were previously available, such as glxgears, were not as informative as Phoronix would have liked. Since no tools existed, they decided to make their own internal tools in 2004. Eventually they realized that the public had the same needs, so they decided to release a public version of the testing suite, as well. Their initial public release (0.2.0) of the Phoronix testing suite was released on April 2, 2008, and they have been providing a steady stream of updates to the testing suite since then. I had used early versions of this testing suite, and I had found it a little clunky and difficult to manage on an installed Linux system, so this live-DVD provides a real landmark in the usability of these benchmarking tools. Also, since every system will be running the live DVD, it provides a certain measure of standardization to the testing process, as the Live DVD makes the test environment standardized among different systems.

System Requirements of the PTS Live DVD are:

- Intel / AMD x86_64 CPU
- 2GB+ of RAM Recommended
- Internet Connection Recommended
- ATI, NVIDIA, or Intel Graphics

A link to the download is here. Hosting is being provided by Softpedia at the moment. The MD5 is 93a7a9cc202b146162c211d41bbeaa99.


Phoronix is not resting on its laurels, either. They are planning on releasing the Phoronix Certification & Qualification Suite (PCQS), a stress test for use in validating system hardware on Linux system, sometimes later this year. It will be another useful tool for Linux system administrators.

Another tool that is in beta testing with Phoronix is Phoromatic, a remote management tool for the Phoronix Testing Suite. Starting with version 2.0 of the Phoronix Testing Suite, remote management will be available through an account on phroromatic.com (or via a LAN version of the phoromatic software). No news on the intergration with the live DVD, but I'm thinking there is a good chance it will be able to do that, too. The following description comes directly from the site:
Phoromatic is a remote management system for the Phoronix Test Suite. Phoromatic allows the automatic (hence the name Phoromatic) scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. The test results are then available from this central, secure location.

Phoromatic is able to communicate with any system running Phoronix Test Suite 2.0 or newer whether it be running Linux, Mac OS X, BSD, or OpenSolaris. Creating a single-user account at Phoromatic.com is free, easy, and can then connect to one or even dozens of test systems running the Phoronix Test Suite. Phoromatic can also be installed on a LAN / intranet for professional support customers of the Phoronix Test Suite.

Sunday, August 2, 2009

SUSE Studio officially launched! Hooray!

If you've read the title, you probably guessed that Novell recently launched SUSE Studio officially. Well, you're right! The press release is here.

They've also released a very comprehensive press kit for SUSE Studio and the SUSE Appliance Program to provide a great deal of information about the services and their features. This should provide me with quite a bit of reading in the near future.

Cornelius Schumacher's blog also describes the SUSE Studio launch process in detail. While you are there, feel free to check out the rest of his blog. He seems like an interesting guy to follow.

I've been very impressed with SUSE Studio so far. It is an impressive online build service. I continue to use it for several builds that I am planning, and it has been working very well so far.

One feature that I would like to see implemented: MD5 sums! SUSE Studio has yet to implement the ability to check MD5sums of the created appliances before downloading them, so that downloads can be verified before deployment. I assume that they will implement this feature shortly.