Sunday, March 18, 2012

Back to writing on my Ubuntu blog

Wow, I can't believe my last post was in December 2009 - about 27 months ago. The main reason is because I did all my blogging for my employer and was in a role that required very little use of Ubuntu.

Anyways, now that I am back doing development, I am back to using Ubuntu. I am currently have a ruby and rails development environment setup on 11.10.

By far the best resource I found for getting up and running with ruby and rails on Ubuntu is this guide - absolutely spot on. The only thing missing was a recommendation for a good editor/IDE. I ended up using Aptana Studio for the past month, mainly because everyone who I know writes in rails uses TextMate on a Mac, and Aptana is the closest. I have heard a lot about Sublime Text 2 also, and might consider giving it a try.

I also needed a crash course in git as I had never used it before and 'gitg' is an absolute must.

Glad to be back...

Thursday, December 10, 2009

osalt.com



Simply one of the most useful websites I have come across in recent time. It is a resource to find the open source alternatives to commercial software.

Wednesday, December 9, 2009

about time - Chrome for Linux

Google announced Chrome for Linux (and Mac today).
In the true Google tradition, it's a beta version.

I have been waiting for this since Firefox 3.0. The frustrations with Firefox 3.0 and later have been well documented by many. Personally, I would really appreciate if my browser does not use more than 75% of memory on my system. This is regardless of if I have 512MB or 4 gigs.

The challenge for Chrome is to get the quality and number of extensions that Firefox has. With this version of Chrome, there is support for extensions and the market place claims to have over 300 extensions. How well this works on Linux needs to be seen.

The first thing I will need however is the ability to import and manage my bookmarks. I have been using Xmarks in Firefox and can't believe how I would manage without this tool. Hopefully there is something equivalent with Chrome.

On a relevant note, a while back I saw a commercial or a video where random people in New York were asked if they knew what Chrome was. As expected, it was interesting to see that most people did not know. In the bay area, we are blind-sighted by the access to new technology and information and we rarely think in terms of what real consumers experience, know and think. Google seemed to understand that and hopefully that understanding shows in Chrome's usability.

In terms of product development, Seth Godin had an interesting post a while back regarding what Firefox should be/could be doing to be a better product. Let's hope the world is relieved from the curse of Internet Explorer soon.

Sunday, November 15, 2009

cobbler

A headache for most network administrators or engineers setting up labs is the installation process of numerous servers and systems. With Fedora, PXE-installation and kickstart files takes some of the manual challenges out of the process, but it is still fairly task intensive.

Cobbler takes care of this issue and does it in style (Cobbler is an install server; batteries not included). It automates several of the tasks so that user doesn't end up switching between commands and applications when building new systems.

I personally liked a feature that I didn't think the system would have. One of the systems I was setting up did not have the BIOS updated to be able to do a PXE install. Cobbler has an option to create an installable CD/DVD and your system matches the rest that you have installed doing the automated PXE-install.

Fairly useful for organizations running a Linux servers network.

Saturday, October 24, 2009

tips for baby steps in kernel debugging

Even if you have been a programming in C for a while, getting into kernel debugging can be intimidating. If you are used to c-tags or using an IDE for your development, the task is even more challenging. However, a few tools listed below help you get started very quickly:

Obviously the first step is getting the kernel, and depending on what kernel you are running and/or what Linux distribution you have, this can be tricky. For Fedora systems, there are simple ways to get the kernel source.

LXR - Linux Cross Reference
This is a very useful resource if you want to get a quick idea about the flow of code, structures. LXR is a toolset that has the entire kernel source indexed. It's an Ajax interface and makes it very easy to browse source code.

printk()
This is the printf of the kernel. The syntax is similar to printf. The useful argument is the loglevels that can attach a level of importance to your messages. The definition of the loglevels are in include/linux/kernel.h

dump_stack()
Sometimes, tracking the code flow is easier if you can show the program stack. Most architectures have dump_stack() implemented. This can be a very useful weapon in a newbie kernel debugger's arsenal.

There are some good tutorials that do some hand-holding for writing kernel modules, but if you have to track an issue in the core kernel or just want to get a better understanding, the tools described above are very useful.

Go on, get your feet wet in kernel debugging.

Wednesday, October 14, 2009

handling the cross-compiling nightmare

If you have ever faced the challenge of running your code on different platforms with need to support different system libs (glibc/uClibc), you probably know it's not a simple task building the toolchains. Very simplistically, a toolchain is what makes up the tools that compile, assemble and link the code being developed.

For this case, crosstool-NG comes to your rescue. It's a versatile toolchain generator that is very simple to configure. You simply fill in the appropriate values with the adequate options in a configuration file. Then point your compiler option in the Makefiles to the right compiler.

There is a decent tutorial on how to use crosstool-NG here, but it has not been updated for the newer releases. The current release is version 1.5.2.

Saturday, September 12, 2009

linux in msft search


I read about this somewhere else, but I had to try it out myself...

The first two links in Microsoft Search when looking for Linux is "how to remove Linux". Elegant.