Microsoft doing things the Linux way?
After reading this article on CrunchGear and particularly after gazing this inevitably quoted paragraph:
Still, it seems that MS has changed up the strategy for putting things together, emphasizing smaller teams with less higher-up input. Teams called “Triads” — one developer, one tester, and one program manager — chisel away at problems and work independently. The poster says this leads to a more integrated approach to creating a feature, and more transparency in management means decisions can be made in good time with enough visibility for the teams to accommodate them.
I can't help but wonder if the big Redmond Company is not trying to replicate the Open source way of doing things.
The old Cathedral model might be gone. And it might of took Vista for some companies to realize that Open Source and transparent development cycles are not a dreaded enemy but rather smart ways to tackle complex projects.
Please don't see this post as a "Windoze sucks, linux rulz" kind of thing. I'm keen to Linux, true enough, but I make this point as a mere observation of what could put Microsoft back into track.
My Wishlist for Windows 7:
- Don't make it a process hog.
(end of list)
Ubuntu vs. That Other OS
Before I turned in one of the R50e's I decided to do some testing. I had the "feeling" that Ubuntu was superior to that other OS in many ways, yet I wanted to back my words with some real life data. The most impressive difference was obtained on power-up. I was smart enough to capture it on Video:
Both machines have the same exact specs, both have been used for the same time (to be fair I have tweaked the OS on the left quite a bit to optimize it). Ubuntu is already idle by the time the video ends; while the other PC takes 30 seconds more than what I've uploaded to idle the hard drive.
Then I went for a Battery endurance test. I left both PCs running, but the results where somewhat disappointing. Battery life (screen always on, machine unused) was 2:42:12 and 2:43:28 from left to right, but, quite honestly the difference can be attributed to battery condition.
I need to do a similar head to head with a ThinkPad that has more advanced power options to see if there is an improvement on either way. Quite honestly I thought Ubuntu was going to beat the hell out of te other one in this Item as well, since I had been able to work longer far from a power source with the Linux machine. I guess this was either me wanting it to be that way or (quite possibly) that Linux and programs running on it require less resources and that disk cache is faster and better thought (due to that Cache partition one sets up, remember?).
Final test was starting up notes and SameTime (our internal IM system). Ubuntu runs Notes 8 ever Eclipse; the other OS runs 7. Notes 8 and Sametime took 1:56.6 whereas notes 7 took 2:44.1. Time was measured from click on the icon to the moment when I was able to compose a new email.
The more I learn the more I'm convinced I need to use just one OS: Ubuntu.
I’m sticking to Ubuntu
Recently I said I was eager for Distros. So I have spent a couple of weeks testing different Linux flavors on a ThinkPad R50e that I should of returned already. I installed Solaris, openSUSE and gentoo. Each had a couple of nice features; tweaks and lights to the gnome desktop, the way they handle repositories and installation.
Gentoo was, by far, the hardest piece of installation I've done in the last couple of years. I spent two afternoons looking at screens of this sort:

I'm quite certain that if my knowledge was far deeper than it currently is I could get a lot of optimizations specifically for the computer type I was installing to, but, for the time being I don't have the time or the patience to work out the dark arts of building a Kernel.
Solaris installed quite easily, but upon trying it for a couple of days it seemed a tad sluggish when compared to the sister ThinkPad running Ubuntu. I know I'll come back to Solaris to try some JSP and Java development some other time in my life. (Colour note: why "sister ThinkPad", you wonder. In Spanish "Computer" belongs to the feminine gender)
Finally came openSUSE. This was some sort of a comeback to me. Before Ubuntu and before Madriva I had SUSE enterprise installed for quite some time. One must agree that the Gnome looks very nice, the green background is slick and that the installer is flawless. Problems surfaced when I tried to configure the VPN dialer. Which was surprising, since installing my Belking – Atheros was quite easy using MadWifi drivers.
To be honest they started before that; upon right clicking the RPM package the system stalled. Twice. I found a workaround to that; so I went ahead and checked the dependencies. I needed to get IPsec running first and foremost. Up goes YaST, I search for IPsec, try to install and crush the system again.
I must be running out of patience… because I just killed the PC and went back to my trusty Ubuntu. I know such crashes have a way to be fixed (that unlike that other proprietary OS usually don't require a complete reinstall, just digging up the problem and fixing it through –quite certainly- a minor correction on a setting), but I just don't feel like it right now.
Now if I could only get rid of that other OS on my other two ThinkPads I'd be very happy on an Ubuntu-only environment.
Eager for Distros
For the past couple of months I have been a happy Ubuntu user. I run it on 2 PCs, a clone desktop (AMD processor) and on a ThinkPad R50e. Both installs went smoothly and I still have to face an unrecoverable crash on either computer. I've installed and uninstalled over 80 different packages, ranging from Apache (1.3 and 2) to eye-candy desktop management (like Beryl). Everything went pristine.
Thus, why on earth would I want to change what I've declared as the best OS I ever laid hands on? Sheer curiosity.
I have tried Mandrake (wasn't called Mandriva yet), SuSE and Red Hat, but that was some time ago already, thus I'm eager to see what has changed and what are the different goodies that are shipped with every one. Besides I also want to take Solaris for a ride, it has intrigued me for quite a long time (ever since it was made open source).
Yet I must say that deleting a perfectly good OS is not as easy as one might think. That was a problem I didn't have to face when I first installed Ubuntu.
But before killing the Ubuntu on the R50e (the desktop is far too tweaked as a file and webserver for me to delete it) I want to run some benchmarks against another R50e with a different OS installed (wink, wink).
Tutorializing
I have just started to write up a series of tutorials on Ubuntu and Apache. Not much is written so far, but I plan to make it grow as I find some time to spend on it.
You can access it here or through the link on the masthead of this blog.
My aim is to get a centralized step-by-step series of tutorials to get a fully working Apache under Ubuntu, providing some insights on different tweaks and adjustments.
As usual all comments and suggestions on what points to cover are more than welcome.
Some more tutorial ideas other than Apache are in the pipeline as well.
No extremes, thank you very much
The web in general and the blogsphere in particular is full of quite radical points of views on almost any subject you can think about. You have scientists vs. creationists, left wing vs. right, militarists vs. pacifists; you name it the contradicting positions are there.
My field of work is Internet. I use software to get the job done. Software runs on hardware, and I also happen to work for a PC manufacturing company. Thus my interests revolve around software (open vs. proprietary), standards (once again, open vs proprietary) and hardware (Mac vs. PC).
I have over 300 feeds running into google reader, feedreader and Akregator; many of which deal with some of the aforementioned confrontations either on a daily basis or every once in a while. What has been catching my eye is the factiousness of many of the points of view I've been reading.
Truth is: no extreme is the answer.
Take proprietary vs. open source. I'm pro-open; I use Linux (Ubuntu) for my personal things and I am trying to switch to it at work. This works for me for several reasons; the system works better, software availability is increasing, updates happen fast, and last, but not least; I can't possibly afford some software suits I'd need / like to use under Windows environment (as in Photoshop vs. The Gimp).
I also embrace the open source philosophy, I do believe knowledge should be freely available, distributable and alterable.
Yet I realize proprietary might fit into a lot of people's needs. This "concept confrontations" should not mutually exclude the other alternative(s); having the choice to install Windows, Linux, Solaris or Mac OS is all that matters in the end. Competition not only makes everything better, but also provides alternatives.
On the web standards scenario things are slightly different. Standard as a noun is a rule, test or requirement, and as an adjective it's Having recognized excellence or authority & Of a usable or serviceable grade or quality. Thus, per definition, a standard is a usable authoritative set of rules and requirements that comply with a certain quality level. Nice, right?
The key words (keywords) here are "usable" and "authoritative". Standards must be usable both by the technology that must render them (browsers), and by humans that will (hopefully) take advantage of them.
Browsers need full compatibility with the standards, which means that for a standard to be successful browser coders must accept them as valid and implement them. This can only happen if they don't have to pay for anything, if the ones setting up the standard have enough authority and if it adds a lot of value to what is already in place.
Humans need to understand and be able to make use of the standard from both ends. Developers and users. If a standard is mayhem for developers they just wont use it, no matter if the user experience is great. On the other hand users will hate a standard that does not make their life easier or more enjoyable.
All of this does not necessarily mean that standards need to be open. Flash is a good example of something proprietary becoming a standard. This only happened because users and developers loved it and Macromedia made life easy for browser developers by building compatible plugins. (Yes, yes, I know you might argue if Flash is a standard or not, but with over 90% of browsers with flash installed; I'll risk it and say it is)
So standards don't necessarily need to be open -in the "developed by a community" sense- but I truly believe it is the best route to get things done. Proprietary standards are built to fit it's developer needs (in Flash's case it was to make Macromedia wealthier), whilst community-tailored standards usually aim to benefit the entire web fauna (or at least they should). We have all benefited from flash -proprietary- but it the web exists thanks to (X)HTML -open-.
The good thing for us (users and developers) is that while the different factions compete with one another trying to prove they own the absolute truth and that the others are the devil, we get to be able to choose the best of what's around.
Oh... and I like ThinkPads better than Macs...
Kudos for notes 8
I'm not a notes-lover. If you have read this and some of my previous blog entries you already know this. Replication is a pain, the system becomes very slow when you replicate large mail and the space restrictions are a pain in the neck; 100MB is just a joke when you work with PSDs, large Flash presentations, videos and multimedia in general (although that particular thing has more to do with the admins than the program itself).
As part of my migration to Linux I signed up for the Notes 8 beta program. Although it still has quite a lot of "betaish" things going on I must admit it runs quite smoothly. The interface face lift is nice, and some features like built-in RSS feeds are a great improvement. When I made the switch from notes 6 to 7 changes on the user-side of things were minor; I'll risk my head and say it even lost some stability. On this instance I can say it seems more stable and fast. Maybe the fact of running Linux on the background helps as well. (I have the intention of writing up a post on the general improved performance of the R50e on Linux whenever I get some free time to run some benchmarks).
Some of the neat and improved Characteristics:
- Sametime actually Works (for those of you who don't know what sametime is: It's IBM's (and Lenovo's) own internal instant messaging system).
- You can now read feeds on Notes.
- Improved "day at a glance" and "activities" tools on the sidebar allow fast access to appointments and "to-dos"
- Reworked UI (Note: the UI had quite some glitches on Beta 1, all of them have been fixed for Beta 3)
- Less "stalling". One of note's worst "features" is that whenever you have it do some heavy synchronization the whole thing will become unusable until the task is completed.
- "Thumbnails" preview of open tabs. Allows quick access to every open tab.
So I still have to crush this thing for the first time (I can't feel comfortable until I have done so!) and I'm unwilling to test it on Windows; I'm afraid the neat first impressions will go down the drain if I do so.
Some thumbnails follow (I've blurred out some things in defense of privacy)
Notes Mail View (I like to use preview):
Embedded Sametime and "Get Started" page:
Embedded Feed Reader (Featuring This blog's feed)
Activating mod_rewrite on Apache @ Ubuntu
I can usually find my way through Server configuration files fairly easy, but upon installing a LAMP server on Ubuntu I noticed "mod_rewrite" wasn't working at all. The answer ended up being fairly simple, once you know where to look, but for others not to struggle as I did I'll post what and where to look.
Ubuntu's Apache is quite modularized; both in packages and in runtime senses. This has several advantages which I wont mention here, but forces you to edit several configuration files to make adjustments.
Here's the ABC to it:
- Add a loader to mod_rewrite module:
Execute (on the shell):
sudo a2enmod rewrite - Edit the apache2.conf by adding a call:
On ubuntu this file usually sits on: /etc/apache2/apache2.conf
<IfModule mod_rewrite.c>
RewriteEngine On
</IfModule>
Note: you can also add this on the .htaccess files. - Edit the virtual host file:
To know what hosts are enabled take a look at:
/etc/apache2/sites-enabled/
There you'll see a simlink to some file(s) sitting at:
/etc/apache2/sites-available/
which you'll have to edit.
You need to add the permissions for your directorie(s):
<Directory />Note: you can set this values for the root directory (as in this example) or for just 1 or more folders / sub-folders.
Options FollowSymLinks
AllowOverride All
</Directory> - Restart your Apache:
sudo /etc/init.d/apache2 force-reload
or
sudo apache2ctl restart
That should do the trick!
I’m in love
I was planning on spending a weekend working on a server configuration. Since SSH was the only option (the box stands on the opposite corner of the globe), and the connection wasn't all that great I expected to spend quite some time tweaking and configuring; I have set up servers before and although it is not rocket science it's no piece of cake either.
So, around 10:00 AM I start to send commands over... install software, toss in the programs I need, tweaking configuration files and setting up users and passwords.
With much surprise I got to the point I wanted to reach by 12, after only 3 (non-exclusive) short hours.
The OS that made my life easier? Ubuntu 6.10 Server Edition.
Every time I installed a package, most of the horrendous configuration job was done for me; I only needed minor adjustments and tweaks to get what I wanted.
I will never grow tired of stating to whoever wants to listen how great this OS is.
Note to self: I need to post more on my Ubuntu on ThinkPad R50e experience.
WTFM?
We all know "RTFM"; the world would be a better place if we all lived with that rule.
Now, what can you do when there is little, no, or outdated documentation?
I have always been a "do it yourself" type of guy. This requires quite some reading (yes, I know, the reading usually comes after a few hours of wasted time just diving into whatever project you face, failing up to the point where frustration drives us to that beautiful B&W manual). You learn along the way, you get smarter and more knowledgeable reading and working.
On my most recent Linux adventure I have hit my head against a wall. I won't disclose too much (I don't want to get myself into trouble!), but the struggle has been hard and demanding. Although I never studied programming (at a University that is), I can find my way around code in various languages. Thus, after playing around for hours and hours with "my problem" I decided I should go out and try to tweak some code... funny thing is, when I searched for documentation on what does what I found nothing, zero, zip, nada. There are a couple of FAQs, a couple of quite desolated forums and a couple of deprecated how-tos.... most of them dating back to 2004 (which in computers seems like the dark ages).
For the first time on quite a long time I'm clueless. I have tried out every smart move and configuration, and a couple of stupid ones as well. I missed the sot every time.
I won't give up on this, it has become personal. Yet... I need to pinpoint what the issue is, something that has evaded me so far.
I'll update you upon my success or my shameful failure...
Oh, and "WTFM" stands for "Where's The F***ing Manual"


