Archive

Author Archive

Nginx and PHP on Ubuntu Lucid

To do some PHP development (read experimenting) on my laptop I wanted to get a web-server with PHP running on it. Since this is a laptop with limited resources, I decided to try Nginx instead of Apache. Nginx is known to use less memory as compared to Apache. I am hoping this will keep the laptop still usable while the web-server is still running in the background.

This is not an exhaustive how-to, but this is how I installed all that is needed to get my first PHP page up.

Let me begin by mentioning that this laptop currently runs the development build of Ubuntu Lucid (which will become Ubuntu 10.04 LTS sometime in April 2010).

To begin, I installed following packages from Ubuntu Lucid repositories:

  % sudo aptitude install nginx php5-cgi lighttpd

Although I am not using lighttpd, the package is required because it provides the spawn-fcgi script.

Nginx supports FastGI natively. PHP is served as a FastCGI process.

Modify /etc/php5/cgi/php.ini to include the following line:

cgi.fix_pathinfo=1

Setting this configuration makes sure that PHP sets path information of the executing script in a way that conforms with CGI specifications. The line may already exist in the file, but commented. Just un-comment it. This is an optional step (at least in Lucid version of PHP) since the default value of cgi.fix_pathinfo is 1.

To spawn FastCGI add the following line to /etc/rc.local every time the computer starts.

/usr/bin/spawn-fcgi \
    -a 127.0.0.1 -p 9000 -u www-data -g www-data \
    -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid

This script (spawn-fcgi) was installed via the lighttpd package.

Finally, I configured a website in Nginx and enabled PHP via FastCGI. This configuration would typically reside in /etc/nginx/sites-available/<website_name>:

server {
  listen   80;
  server_name  localhost;

  access_log  /var/log/nginx/localhost.access.log;

  root   /var/www/blog;
  index  index.php;
  fastcgi_index  index.php;

  #
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  #
  location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include /etc/nginx/fastcgi_params;
  }
}

When all is set up properly, you can test it with the phpinfo() command. It should look something like the following:

phpinfo() screen - Click for full size

phpinfo() screen with Nginx+PHP setup

All this, mostly a note to self. But hope it helps someone out there.

Tags: , , ,

Personas built into Firefox 3.6?!

So Firefox 3.6 was released recently, it has some nice features.

In the list, there’s one feature addition that bothers me – default support for Personas. This is not exactly a new feature, it has been around as a Mozilla Labs project.

I usually stick with the default theme of any application I use. It is the one that developers have put most effort in. But just for kicks, I have tried out Personas in the past. Each time, it did not last more than a few hours before I uninstalled it.

In my opinion, Personas – no matter how popular, or highly rated they are – mess up the readability of Firefox window. I am sure it is a great distraction for people who spend most of their time playing with themes. But isn’t that why there are extensions/add-ons? If someone is so inclined, install the Personas add-on and you are all set to hurt your eyes!

Here, you be the judge:

Firefox with one of the popular personas

Firefox with one of the popular Persona themes, hurts my eyes! (click to enlarge)

That is Firefox with one of the more popular Personas. And here is Firefox with it’s default theme:

Firefox with the default theme

Firefox with its default theme is much more readable… (click to enlarge)

Not sure about you, but I’d stick with the default theme.

But hey! no one is grabbing me by the collar and forcing me to use Personas. So it’s all good.

Only thing I am curious about is the thinking behind picking the Personas Labs project to be integrated into Firefox. Why not Prizm? Or Weave, that would be awesome! Or Ubiquity perhaps. All these add value to Firefox too. May be they all have the merit, but are not mature enough?

I hope Personas was not picked because Google Chrome has a developing themes ecosystem… (and bunch of folks claiming ‘Oh! look how cool my Chrome looks’).

Granted that Personas is still a work in progress (it does not theme buttons and icons, like actual themes do), and that it is a better way to implement themes. But in the end, I still maintain that Personas was great as an add-on, and it should have stayed that way.

With rants and opinions out of the way, what is your favorite Firefox 3.6 feature?



Blog Scare and Chrome OS Update

Today I had a kind of a scare. This morning, I noticed that this blog was down. My first guess was that it should probably be related to the intermittent outages my host was facing.

The blog was sending back 500 – Internal Server Error responses. The error.log file was filled with messages like these:

[Tue Nov 24 10:38:42 2009] [error] [client 149.117.7.28] Premature end of script headers: index.php
[Tue Nov 24 10:39:23 2009] [error] [client 149.117.7.28] Premature end of script headers: index.php
[Tue Nov 24 10:41:05 2009] [error] [client 209.85.238.214] Premature end of script headers: index.php
[Tue Nov 24 10:41:46 2009] [error] [client 209.85.238.214] Premature end of script headers: index.php

As usual, I looked for help on the WordPress Forums. When the initial suggestions did not resolve the problem, I decided to dig deeper. I downloaded WordPress and extracted a clean install. All I did was moved over this blog’s wp-config.php into this directory. It again resulted in the same 500 – Internal Server Error response. That almost certainly indicated a corrupt database.

Thankfully, reverting to the last good backup is fairly easy in DreamHost Panel. The Restore DB option is available under Actions for each database in the Main Menu → MySQL Databases section of the panel. After restoring the database, the blog was back up and running.

Now, only thing bothering me is – what caused the database corruption? Was it some server glitch, that would hopefully never happen again? Was it a plugin (like IntenseDebate, etc.) that misbehaved? Or a blog management client (like WordPress for BlackBerry, etc.)? Not sure. But the mystery does make me nervous. But for the time being, things look OK!

Chrome OS Update

In my last post about running Chrome OS in VirtualBox, there are some screenshots. As you can see, the default screen size of 800x600 is pretty tiny to do anything useful.

To increase the screen size, I tried two ways I would have tried for any other Linux guest:

Not sure why, but I could not install any Guest Additions to the Chrome OS running as guest.

I tried to update /etc/X11/xorg.conf to define screen modes (by first dropping to a shell using ALT + CTRL + t – which, by the way, does not always work for me :( ). But Chrome OS would not let me save the /etc/X11/xorg.conf, even with sudo. Is this normal?

In any case, I had to take the long route. Updating ~/chromiumos/src/rootfs_static_data/common/etc/X11/xorg.conf and re-building the image. But it worked! Now I am running Chrome OS in 1024x768 mode, which is so much better!

Chromium OS in VirtualBox in 1024x768 mode

Chromium OS build in VirtualBox, running Google Wave is so much better at 1024×768

That is it for now…

Chrome OS in VirtualBox

Ever since they made the Chromium source code public yesterday morning, I’ve been itching to build it and take it for a spin. I did not know it would take only a couple hours to do that!

Getting and Building

I am so impressed! The instructions on the Getting and Building a Chromium-Based OS page are precise, to-the-point and.. they work! I am not sure if this is brilliant scripting, great documentation, me having just right prerequisites (Ubuntu Karmic Koala), or a combination of all these. But it took me just over an hour or so to download source and build a ‘.vmdk‘ file for VirtualBox. I did not see that coming.

I’ve built other projects from source before. It always involves some figuring-out. Sometimes the documentation is not adequate – may be inadequate for my skill-set. Sometimes the prerequisites are not clearly specified/checked. Building an entire OS, I was preparing for a few days of reading up and figuring things out.

But it was none of that. I just followed the steps – mostly word-to-word – and I had a virtual disk image (.vmdk file) at the end of it all!

The only change I had to do was to BASE_FROM in ~/chromiumos/src/platform/chrome/copy_chrome_zip.sh to use build.chormium.org instead of chrome-web. I think this was because I chose not to build Chromium (browser) from source. I am sure this will be ironed out soon (may be it is already).

Using in VirtualBox

I followed the instructions to Convert the image for VMWare, which creates a .vmdk file. Instead of using VMWare workstation, I used VirtualBox to fire it up.

Impressions

I love the concept of Google Chrome OS. I think it is very relevant to how we use the computer these days. It would be even better if Chrome OS would coexist with a normal OS on any laptop. I agree that most often we only use the computer to access the web and do most of our things on the Internet. But I am not ready to give up the full-fledged OS, not quite yet. Does that remind me of SplashTop?

Here are a couple of obligatory screenshots:

Woo hoo! Build worked!

Chromium OS build in VirtualBox, running Google Wave

Following is the list of Apps currently on the home page. These showed up only today. Yesterday when I was trying the OS for the first time, one could only use @google.com usernames to sign in. I am sure things are going to be changing fast in the next weeks/months.

Apps on Chromium OS home page

Apps on Chromium OS home page

Next…

Next thing I am going to try is to get hold of a 4GB USB drive and see if this image works on my laptop.

Secondly, I am curious to see if the OS updates itself in the VirtualBox, like Google has mentioned. If it does, I should not be required to build another image… ever!

Back to more experiments.

Later…

Koalas are in!

It’s been around a week since Ubuntu 9.10 – Karmic Koala was released. Both my Linux systems are now up-to-date.

Linux systems

One of the two machines is a Sony Vaio Laptop (VGN-T140P) and other is a desktop built on a Asus P5K-e Wifi/AP motherboard with an Nvidia 8400GS video card.

Install strategy

In both cases I chose to do a clean install. I always keep /home on a separate partition, so clean installs are not much of a hassle. I usually move all the dot-files (and directories) from /home/me out of the way before a clean install. After the install, I bring the ones I need manually. This, I believe, prevents any configuration issues arising from new versions of applications adding/removing/changing any configuration items. I do have to configure some applications – like compiz – all over again, but it is not a big deal most of the time.

I also make a copy of /etc directory before a clean install, just in case I need to refer to the hacks that worked around bugs in the previous release.

Trends

If I look at the way thinks are working on the two of my systems since Ubuntu 8.10 – Hardy Heron, I see pretty consistent trends. My laptop was at its best in Hardy, things are not quite that good now. The desktop, however, is at its best in Karmic! I wonder if it has to do with the video hardware (Intel in laptop, Nvidia in desktop) or wireless usage (I use it in laptop all the time, never on the desktop).

Suspend/resume has gotten worse on the laptop, but almost perfect on the desktop.

Laptop is plagued with wireless issues, but I know I am not alone there (Launchpad bug reports as of today).

Sound, at least on my systems, has greatly improved. It worked out of the box on both of them.

Laptop experience

The general feel of the OS has definitely improved. With the new boot experience, artwork, new themes, Karmic looks pretty neat. It is snappier than ever, even on the laptop with mediocre specifications. All that good stuff is marred by the issues that have come up in this release – from back in the alpha days.

There has always been a problem with the laptop hardware, that when it resumes from suspend (to RAM), the backlight is missing. In the past, I have been able to work around it by setting quirks in suspend/resume scripts. Those hacks don’t work anymore. I haven’t found any work-around for Karmic yet. Launchpad bug #417599.

An even worse issue that has come up is with the wireless networking. In my case, it just doesn’t connect. Even when it does, it doesn’t stay connected for long. It is extremely annoying. Launchpad but #429035. So its mostly wired network for now. I know, laptop wired to the router? That sucks :(
I hope not for very long though.

Desktop experience

On the desktop, Karmic is just sweet. Out of the box, everything just worked. Sound, video, suspend/resume, everything!

The only thing worth mentioning is that when I first rebooted the system after installing Karmic, Windows entry was missing from the Grub2 menu. All I did to fix this was:

  % sudo update-grub

I wonder why it missed the Windows entry during installation. I am sure it runs update-grub as an installation step, doesn’t it? In any case, if you see Windows entry missing from your Grub menu after installing Karmic on a dual-boot machine, just run the above command.

One more thing I haven’t checked is if wake-on-lan works. If it doesn’t I’ll need to do what I usually do after clean Ubuntu installs – Howto: Wake on LAN with ASUS P5WDG2 WS Pro in Debian/Ubuntu. Hope it works this time too!

Well, there. Now that the computer are all working, time to get some work done!

Incidentally, I set up a github account for all my little hobby projects. Check it out. All the projects are purely experimental and educational. Nothing is going to blow your mind.

Tags: , ,

Opera Mini 5 Beta on BlackBerry Pearl

I’ve been using the next generation of Opera Mini browser – Opera Mini 5 beta – on my BlackBerry Pearl.

In a nutshell – in comparison with Opera Mini 4 – it looks slick, but usability sucks!

It is almost sacrilegious to comment on the quality of a Beta product, but I couldn’t find a way to pass on my feedback to Opera directly (comment, if you know how). May be folks at Opera haven’t tested this version with BlackBerry Pearl. May be the Pearl is just too old. But here is what’s been bothering me last few days:

Keyboard Shortcuts

I don’t know about others, but I use keyboard shortcuts extensively with Opera Mini. To access speed dial entries, to refresh, to go to bookmarks, etc.

In Mini 4, it was as easy as hitting * n to access speed dial entry n (e.g., * 1 for speed dial 1, * 2 for speed dial 2, etc.).

In Mini 5 beta, the ALT key must be used to use a symbol or number. So the keyboard not-so-shortcut to access speed dial entry n becomes ALT * ALT n (e.g., ALT * ALT 1 for speed dial 1, ALT * ALT 2 for speed dial 2, etc.). A little annoying!

Typing

The Inline Editing feature in Mini 5 beta allows you to use the multi-tap input method to edit text-box entries on web pages. I prefer using the SureType input method. So I turned off the Inline Editing feature.

Even without Inline Editing, the text box entries are edited right on the web page. Mini 4 would open a text entry dialog of a sort to edit text. This is cool!

Scrolling

Now this could be just that my Pearl is too old for the new generation of software, it doesn’t have enough resources to handle them. But scrolling performance is really poor. Every scrolling movement results in the hourglass (processor busy). I have a feeling that it still accepts trackball inputs while it is busy, though. Because when the hourglass is gone, its scrolls way too much. I must scroll back to get where I want to – which of course means another few seconds of hourglass.

This is not an issue in Mini 4.

Mobile view

Staying on the scrolling topic, what happened to the fast scrolling in mobile view by moving the trackball horizontally? That was so handy! In Mini 5, the mouse pointer is always visible. So moving the trackball horizontally only moves the pointer.

I loved how Mini 4 would go to next link or page down/up by moving the trackball vertically and scroll fast by moving it horizontally.

For now, I am just trying to get used to keyboard navigation. It results in a slightly better performance.

Fonts

Mini 4 fonts were almost perfect sized for me. Mini 5 beta fonts are either too big, or too small. In my settings, I’ve set the font size to medium. Which makes fonts a little bigger than what Mini 4 had. I guess I’ll get used to them.

However, the fonts on Mini 5 beta’s menu and other interface are a little too small. Wonder how to change them, I am sure there is a way.

All in all, I think Mini 5 beta is a neat looking browser for the phone, but seems a little resource hungry, which in case of an older phone like the Pearl is a problem. Most of the new features are targeted towards touchscreen devices and don’t apply to Pearl.

What’s been your experience?

IntenseDebate or Disqus?

This blog is, by no means, a heavy traffic blog that receives hundreds of comments. So managing comments is not one of my headaches! Akismet does a good job of filtering spam, and that is pretty much what I need for this blog.

I’ve been learning PHP lately (sounds off topic, but stay with me here). The project I’ve started, as a tool for learning PHP, is a blogging platform. Being just a study project, it is as simple as it can get. Posts are saved in text files – a la blosxom. PHP merely displays the posts in a readable/navigable manner.

In order to keep the project simple, I had no plans of implementing comments in the blogging platform. No database. I called it OnlyBlog.

I soon figured that a blog has no soul without comments. So I decided to support hosted comment services like Disqus and IntenseDebate.

As I became more and more familiar with these comment systems, I thought this WordPress blog could use enhanced comment system too. Immediately, the question was, IntenseDebate or Disqus? Since IntenseDebate is owned by Automattic, who also owns WordPress, I figured that IntenseDebate should be the best choice. Since then, comments on this blog are managed by IntenseDebate.

However, like many I came across the internet, I still haven’t found a good answer to the question IntenseDebate or Disqus? So I decided to read a little about both and do a fair comparison. Here’s what I found (note – this is in no way a comprehensive review or comparison of the comment systems):

I’ll start with the point of view of a blogger who uses one of the popular blogging platforms. Next, I’ll deal with the point of view of a developer who wants to integrate these comment systems into an unsupported blogging platform.

Blogger/Commenter point of view

Installation

Both Disqus and IntenseDebate have plug-ins for most of the popular blogging platforms – Disqus supports WordPress, Blogger, Tumblr, MovableType, while IntenseDebate supports WordPress, Blogger, TypePad, and Tumblr . This makes installation and management of the comment system very easy.

I tried both on my WordPress blog. Both Disqus and IntenseDebate add elaborate configuration panels to the WordPress Dashboard, where you can customize their behavior in great detail. Both Disqus and IntenseDebate also imported the existing native WordPress comments into their own systems. In my case, IntenseDebate imported the comments flawlessly. Disqus, however, had some (unspecified) error during import and could import only a handful of comments – but that may just be the case with my blog. I’ll give Disqus another shot sometime soon, hopefully with better results.

Features

Features of both comment systems are listed on their respective websites – Disqus / IntenseDebate. As you will find out, the features are comparable for all practical purposes. Both systems support threading of comments, notification when someone comments on your thread, the ability to reply by email, even moderate by email.

Authentication

One of the things I like about both Disqus and IntenseDebate is that they provide a variety of ways to authenticate a commenter. A Disqus/IntenseDebate account is great, but not required – being registered on your blog is definitely required. Visitor can use OpenID, Twitter or Facebook to authenticate. I do prefer some kind of authentication, to a guest comment.

Here’s a couple of screenshots that show how the comment entry interface in the two comment systems looks when you are not logged in.

Disqus comment entry - Click for full size

Disqus comment entry when you are not logged in
IntenseDebate comment entry - Click for full size

IntenseDebate comment entry when you are not logged in

Pretty similar, isn’t it!

Spam

Even a not-so-busy blog like mine accumulates thousands of spam comments over period. Both Disqus and IntenseDebate have effective spam filters. I was happy to know that Akismet can be used on both the systems – since I was already using it before I switched to enhanced comments, and was loving it.

Moderation

Again Disqus and IntenseDebate sport a similar comment moderation functionality. Comments can be edited, deleted, marked as spam, etc. They both support having multiple blogs under one account. This is very convenient if you manage multiple blogs. Like I mentioned before, comments can be moderated by replying to notification email with appropriate moderation command also.

Social

For visitors who have a wide social presence, both systems allow cross posting to different social networks – a comment can be sent to Twitter, a comment can be put on your Facebook wall, etc.

From my experience, IntenseDebate only allows you to tweet your comment if you used Twitter to sign in. Disqus always provides you with this option, no matter how you signed in – I like that!

Disqus comment entry - Click for full size

Disqus comment entry when you are logged in. Notice the option to send the comment to Twitter
IntenseDebate comment entry - Click for full size

IntenseDebate comment entry when you are logged in

Instead of posting more screenshots, I’ll encourage you to experience Disqus and IntenseDebate on their respective blogs.

Documentation

Both these comment systems are extremely feature rich, to the extent of being complicated. However, the documentation on both websites does not scale up to the level of complexity of the features. All features are listed with very few details. Specifics are left for you to figure out. It would be nice if the Twitter connection and the Facebook connection was documented in a little more detail – for the not-so-Web-2.0-savvy folks!

Support

Like I said, documentation on Disqus and IntenseDebate leaves a bit to be desired. However, both @disqus and @intensedebate are active and very responsive on Twitter.

Developer point of view

I am not a hardcore developer, merely a PHP newbie trying to get my hands wet in the web-tech. So the developer point of view I present is specific to the little project I described above.

There are two aspects of commenting that I want to incorporate into the project – how the visitor enters comments and display of comment count on the index page.

Comment entry

In both Disqus and IntenseDebate, adding a comment entry text box at the bottom of a blog post is as easy as including a short JavaScript snippet in the HTML. This small stub brings in all the goodness of rich comment system. You can adjust appearance and functionality of comment input from your Disqus Comments settings or IntenseDebate Dashboard. Comment systems know how to associate comments made on a page to the blog post based on the URL of the page (permalink).

Comment count

It is neat to have a little comment count next to the blog post title on the index page. Both Disqus and IntenseDebate have ways to do this. This is one place I think a little more detailed documentation would greatly help. I could somehow get Disqus to do what I want. But I am still struggling with IntenseDebate. Both sites don’t make it clear on how to achieve this – what happened to good-old examples??

Conclusion

Asking IntenseDebate or Disqus? is like asking Coke or Pepsi?. People have their reasons to pick one over the other (although I don’t get why people drink Pepsi when there’s Coke!… well, see? :) ).

It is a matter of personal choice. What may seem like a minor feature missing may be a deal breaker for someone else. I use IntenseDebate on this WordPress blog, just because it worked out best. I don’t know how long it will stay – as new versions come out from Disqus and IntenseDebate.

If you are trying to decide between the two, it behooves you to at least try both. They are both free and easily available on most blogging platforms. And they are both awesome!

Incidentally, is there a third (or a fourth) hosted comment system out there waiting to be discovered?

Install Jolicloud without USB boot support (with PLoP)

Jolicloud, in their own words, is a cool new OS. It is mainly targeted towards netbooks and other small laptop devices. It is currently in an invitation only private alpha. You can get an invite by registering on their website. I was lucky enough to get an invite last week.

I spent almost entire last week, in trying to install it on my Sony VAIO VGN-T140P laptop. It is a small laptop, so I thought Jolicloud would be a good option to try. However, the laptop BIOS does not support booting from a USB drive. And Jolicloud only provides a .img file that can go on a USB drive.

During the past week, I tried various ways to convert the .img file into a good .iso file that I can burn onto a CD and boot from there – sadly to no avail. Among the many things I tried were ccd2iso, nrg2iso, mkisofs, plain renaming of the .img file to a .iso file. Nothing generated a CD that I could boot from. All I had was a full set of 12 bad-CD coasters!

Last night, I found another free product that made me say WOW! aloud! During some intense googling, I came across this thing called PLoP Bootmanager. It claimed to do exactly what I wanted – boot from USB without the support from BIOS! I downloaded it and put it on a CD. With the Jolicloud USB drive in the USB port and PLoP Bootmanager CD in the CD drive, I restarted this laptop – it worked! PLoP Bootmanager came up, and showed me an option to boot from USB! I selected it and woo hoo! Jolicloud was booting!

I’ve installed Jolicloud on this laptop since, and am liking it. My laptop is not one of the supported devices, so I am sure there will be problems, but none so far. In fact, I am posting this from Google Chrome installed via Jolicloud Applications.

There are a few software titles that I swear by and always keep a copy handy – SuperGrubDisk, GParted, Ubuntu on a USB drive – to name a few. From today, I am keeping PLoP Bootmanager CD in that bag of goodies too! Kudos and many thanks to PLoP devs!

Can’t complain, it’s free!

I like to read blogs/news items on Open Source/Linux related topics. Far too often, mostly in the comments, I sense the following sentiment:

I use [insert Linux distribution / some Open Source Software] and I love it! It fails in [insert some scenario/hardware/etc]. But hey, I can’t complain, it’s free!

I don’t know if this is a result of someone misinterpreting the term free or just not being responsible enough.

From what I understand, Free Software is software licensed such that anyone can freely copy, extend and redistribute it. It just so happens that with such a license, the software is easily available free of charge – so you don’t need to pay anyone any amount to install and use it.

What keeps free software alive is the community behind it. The community of developers (God bless them!) who make the software. Also the community of responsible users, who take it upon themselves to contribute in one way or the other. Many choose to make monetary donations to keep the development of free software funded, others choose to make contributions in form of testing. Using the software, reporting bugs when something doesn’t appear quite right, helping the project evolve and stay healthy.

Being free doesn’t mean it is any less in quality. In fact, price has nothing to do with quality. Look at Microsoft Windows and on the other end of the spectrum, look at Mozilla Firefox, Ubuntu or VLC to name a few good quality free software projects.

So when someone says – so what it’s broken, it’s free. You get what you pay for – it really bugs me. If you find something broken in any free software it should be reported to the developers. Most free software projects make it fairly easy to report bugs. Consider it your contribution to the software you use.

Users of free software who talk about the software they use on various platforms – blogs, comments, news websites, etc. – are also the marketing force for the free software. When we users are not careful of what we say about the free software we use, love and support, it is the project that is getting negative publicity.

Although free software is free of cost, it is – IMHO – not free of moral responsibility.

Kind of a rant, but had to say it!

Firefox 3.5 Released! Moving on…

As you probably know from tons of different sources, Firefox 3.5 was released yesterday. For all the new features and security updates, I would highly recommend you to update to the latest release, if you already use an older version of Firefox. If you don’t use Firefox, this is as good as any other time to try it. So go grab a copy…

Upgrade the Web

Upgrade the Web – Firefox 3.5 is released!

Like many of the past Firefox releases, I used this release (code named Shiretoko) from its pre-alpha stages. It has developed into a solid release.

Now that this release is out, there will be many users to use it and report bugs. For me, it is time to grab the latest nightly builds and start using them. Hopefully file some bugs to help with testing.

Plans for the next version of Firefox – called the Firefox.next – are already in the making.

Congratulations to the Firefox developers on yet another great release. Now back to work on the next one…

Tags: ,