Thursday, June 14, 2007
Wednesday, June 13, 2007
Tuesday, June 12, 2007
Wednesday, June 06, 2007
Thursday, May 31, 2007
Wednesday, May 30, 2007
How about Microsoft Visual Studio? Will Google be trying to give a blow to that too? Well, Google has already started this by releasing the Google Web Toolkit. What's interesting is Google's between-the-lines announcement today that it needs to hire engineers at its Chicago branch to join other "Chicago engineers [who] are currently working on Open Source and developer tools." So it seems Google is focusing more and more on releasing developer tools. Let's see if that will have any effect on Microsoft Visual Studio's future.
Friday, May 25, 2007
Let's say you are doing land reclamation in some part of the Egyptian desert and want to have Internet access in this future farm of yours. Forget about getting ADSL there, so the practical solution could be one of Vodafone's 3G solutions. As for pricing, a 300 LE monthly fee for 2 GB of data transfer is not bad at all, given you'll just be browsing of course and not doing the heavy downloads you are used to back at home with your ADSL connection.
Google has particularly made this idea clear by it's then revolutionary design decision to drop folders and go for tags in gmail. In its beta verson of Yahoo! Bookmarks, Yahoo has decided to let both folders and tags coexist. The nice thing about tags is that you can apply a whole bunch of them to a single element: a single email, a single bookmark, a single blog post. Yet folders still have the advantage of being able to nest them within each other and thus creating a hierarchy, something which are not possible in the flat world of tags. Users are also used to folders, which is something convenient to give them. Perhaps tags would do something about their flatness in order to be more competitive against folders. Or are we going to see more web stuff having both tags and folders coexisting with one another?
Wednesday, May 23, 2007
Hot Trends aren't the search terms people look for most often -- those are pretty predictable ... . Instead, the Hot Trends algorithm analyzes millions of searches to find those that are deviating the most relative to their past traffic. And the outcome is the Hot Trends list.The part I like the best about Hot Trends is showing an amalgam of information about a hot query: a graph showing the spike in the number search queries, news articles and blog posts related to the query as well as web results for the query. Makes the idea of mashups resurface again in our minds as a viable hot 'trend' possibly marking the future of the web.
I just hope this list does not become to popular that it would make a loopback effect similar to the one experienced at Google Video due to the presence of the popular videos list.
Tuesday, May 22, 2007
Saturday, May 19, 2007
Thursday, May 17, 2007
Unlike in the case of gmail where you can chat from within your gmail account and still be signed in at your Google Talk, Yahoo signs you out of Yahoo Messenger in order to be able to chat from within your Yahoo mail. I love the chat interface in gmail way better. Perhaps Yahoo email chat will evolve over time, but right now I find it very poor in turms of usability.
Monday, May 14, 2007
Thursday, May 10, 2007
Google is now offering AdSense Referrals Beta for select group of its publishers. The idea is not a new one, it has been out there long time ago and I remember Yahoo HotJobs was one of the companies that made use of such true performance-based ads by which it paid publishers only if they managed to refer users to the hot job web site and those users actually signed up at the Hot Jobs site or submitted their CV. I believe it was Commission Junction that Yahoo used back then for such referral opportunity.
I consider this as the peak of advertising and that it would entice many advertisers into using AdWords as they will be paying for actual results with zero doubt in the process. It is like paying a commission to a sales man without paying him any salary.
Wednesday, May 09, 2007
As for Egypt, software testing is considered a relatively new domain. Most fresh university graduates in Egypt specialized in computer science or IT are not interested at all in working as testers or are not even aware of the existence of such career. Due to increased demand on software testers in Egypt during the past two years, educational institutions such as the ITI as well as scholarships offered by the Egyptian government started to offer programs for software testing to cater for the growing market need for testers in Egypt. We still have a long way to go.
One of the main obstacles facing the software testing career in Egypt is the misconception in the minds of most IT professionals in Egypt about the software testing career. It is viewed as a lower category job lower than software development. That's why many fresh graduates do not like to work as testers. Yet that is only one part of the problem. The other part of the problem, which might actually helped in growing the misconception, is that there have been, and still are, software companies in Egypt whom hire some sort of data entry people and call them testers. Those 'testers' are not really testers, for they do not write any test scripts nor really know anything about the software testing or quality assurance process. All they do is just try to find bugs in the system in a haphazard way without any process. This practice has given a bad reputation for software testing among IT professionals in Egypt, specially that those type of data entry people get lower salaries than software developers.
As demand for software testers increases in Egypt and as more real software testers graduate from current educational programs designed for software testers, I believe the software tester career will start to get its due recognition in Egypt. This will have a positive impact not only on the testing field, but on the software industry as a whole in Egypt as it would mean increased quality of software developed and tested in Egypt.
Monday, May 07, 2007
Friday, May 04, 2007
It's interesting that their presence in Cairo is at Masaken El Sheraton.
Wednesday, May 02, 2007
Tuesday, May 01, 2007
Now Microsoft is fighting back with Silverlight, a new technology from Microsoft that allows the development of rich web applications. Microsoft is hoping that it can make people dependent on its technology once again.
Monday, April 23, 2007
As PHPTriad was ditched and not maintined, it was no longer an option, since it did not keep up with new versions of PHP, MySQL and Apache. Despite a recent renewed interest in the resurrection of PHPTriad under the new name of Sokkit, which is a commercial alternative, yet another free open source alternative seems to be on the rise.
XAMPP is the strong PHPTriad alternative, adequately replacing it and filling the gap. It is available for a number of different platforms.
Nile University is "dedicated primarily to excellence in technology-related fields with focus on business development and applied research."
Sunday, April 22, 2007
Saturday, April 21, 2007
Thursday, April 19, 2007
So have some fun, find your own street using Google Earth then use the ruler feature to measure how long it is. Amazing!
Wednesday, April 18, 2007
Tuesday, April 17, 2007
I wish I'd known abou this nifty function before when I was struggling with creating tutorial web pages that included HTML code and I longed find a way to highlight such code easily.
Monday, April 16, 2007
The alternative syntax I just knew about today is like this:
foreach($list as $item)
foreach($list as $item):Quite cool. Other control statements as well can be closed in a similar manner. Check out the alternative syntax for control structures from the PHP manual.
Sunday, April 15, 2007
Saturday, April 14, 2007
Some time before Google launched its calendar service, there were reports of aggressive activity by Google bots chewing up ferociously on calendar sections found on people's web sites. I was startled two days ago when I found the googlebot repeatedly reading my resume at emurse. I believe that could be an indicator that Google is planning to enter into the online job market as has Yahoo!
Yet as Google Calendar is no where the same as Yahoo Calendar, I expect Google Jobs to be way different and cool. So let's wait and see when and if this will turn out to be true. After all, Google's mission is to organize the world information, and sure resumes and job vacancies are a large part of highly sought after information in this world.
Friday, April 13, 2007
AJAX is another hot topic these days which I did want to make use of in my application. The interesting thing is that by default an AJAX based application does not change its URL while the user interacts with it. Gmail uses AJAX extensively and its URL never changes.
Those two concepts, clan URLs and AJAX seemed to collied with one another at first. Then after some research and thought I came up with the logical conclusion. For parts of your web site which you want search engines to see and index and which you want your users to be able to bookmark and exchange its link with others, use clean URLs. For other parts of your application where a user interacts with the system to display specific information for that user as a result of his or her interaction with the system, then use AJAX for such parts of the system and do not change the URL while the user interacts with the system.
I came across this interesting wiki about unique URLs which discusses in some detail how to use AJAX while at the same time making your web application have more than a single URL so that people can bookmark specific parts and search engines can index those parts as well.
Thursday, April 12, 2007
With Yahoo!'s browser based authentication, you can relieve yourself from building a registration component for your web application and relieve your members from having to go through yet another registration process. Yahoo! allows you to authenticate users using their Yahoo! IDs. So you only need to ask users to log in, without ever needing them to register at your web site.
Wednesday, April 11, 2007
It's more interesting that as of October 2005, Guido van Rossum, creator of Python, has been hired by Google and became a Google software engineer.
Tuesday, April 10, 2007
Monday, April 09, 2007
In my opinion, making things easy and clear makes things more popular. Just think how popular the For Dummies computer book series has been. I believe that the Simple English Wikipedia will gain more popularity with time and might even eclipse the main edition of Wikipedia itself.
Saturday, April 07, 2007
His article shows how to build a web application designed on the MVC pattern without having to use one of the popular PHP frameworks. His message is essentially that you better evolve your own framework that is best suited to your own needs than spend your time trying to learn a ready-made framework that might turn out to be tough to tame for your needs as your web application grows.
At the end of his article The no-framework PHP MVC framework, Lerdorf concludes that:
Many frameworks may look very appealing at first glance because they seem to reduce web application development to a couple of trivial steps ..., but these same shortcuts are likely to be your bottlenecks as well since they achieve this simplicity by sacrificing flexibility and performance. ... Instead of starting by fixing the mistakes in some foreign framework and refactoring all the things that don't apply to your environment spend your time building a lean and reusable pattern that fits your requirements directly. In the end I think you will find that your homegrown small framework has saved you time and aggravation and you end up with a better product.Instead of relying on a canned framework, Lerdrof applies "an MVC approach with clean and simple views and still have all the goodness of fancy Web 2.0 features" using the following technologies:
Here are some coding standards for PHP that have been set forth by the PEAR group. Even if you are not writing code for PEAR, it might be a good idea to incorporate some or all of their coding standards while writing your own code.
So what makes the above mentioned web page tick? I believe it is the presence of the following elements:
- The page is not cluttered with a lot of content.
- Three steps of action are clearly indicated: Creat, Send and Share.
- Background color of the three actions is distinct and clear.
- Simple navigation is kept at the bottom with a small font size.
- The funtion of the site is clearly spelled out: "emurse means resumes, improved."
- Sign in and sign up forms are clearly shown.
I believe such clear design would lead to many visitors taking action because they can easily grasp the intention of the site and know what action to take. Confusing the user with a complex and obscure design is nothing to be proud of.
Friday, April 06, 2007
Breadcrumbs are so useful in web sites that have a deep navigation of 4, 5 or more levels. In such web sites, it would be really confusing to the user if breadcrumbs were absent and would look really messy if the navigation was implemented using nested menus.
Thursday, April 05, 2007
How does Google achieve this? Easy. I have created a small map including Genena Mall, Fatma El Zahraa Mosque and a small garden not far from them called Al Ferdaws Garden. I then put this map over at Google Maps. You will find blue rectangles that I have drawn around each of these three places.
But how have I managed to do this? Well, Google has just announced the ability to create your own maps very easily over at Google Maps. This new interesting feature makes it so easy to creat your own map and put it at Google Maps for everyone to see. It even appears in the search results as mine appears when you search Google Maps for Genena Mall. Here is how to use Google's exciting new My Maps feature.
Wednesday, April 04, 2007
The two main obstacles facing Linux when trying to gain ground in the desktop area are first that a large number of users are already familiar with using Windows and second because there is a huge amount of software applications that run on Windows yet does not run on Linux.
Enter ReactOS. ReactOS attempts to become an open source alternative to Microsoft Windows. An alternative in the real sense of the word, that is it can run all software applications that have been developed for Windows! That's a freakingly interesting idea. If they succeed in achieving their goal, I believe that could deal a heavy blow to the Windows operating system. I wonder then how will Microsoft React.
Tuesday, April 03, 2007
What interested me most was that the developers of Seaside boldly stated that their framework is breaking with common accepted best practices in web development. Usually a new framework tries to use all sorts of buzz words and tell you it conforms with all widespread as well as new best practices, yet finding a framework that is bold enough to state upfront that it is breaking with common accepted best practices is something that would attract my attention. I'll try to learn more about Seaside, not in order to develop web applications with Smalltalk, but perhaps to learn some concepts on which that framework is build hopefully to carry them over to other languages which I do use.
Finally there is hope. Vodafine Egypt is introducing a new service in Egypt called Vodafone Cash. The service is basically a method for money transfer by which subscribers can transfer money, currently with an upper limit of 1000 LE, to one another. A subscriber can deposit money in his or her Vodafone Cash account and withdraw money from it via any 123 ATM machine. Depositing or withdrawing from one's account costs 2% of the amount.
With some money transfer services inside Cairo costing up to 7%, Vodafone Cash turns out to be an interesting and perhaps more convenient alternative. I believe such a move would dramatically nourish the budding ecommerce marketplace in Egypt.
UPDATE: Check out the Vodafone Cash FAQ at the bottom of the page.
Friday, March 30, 2007
Although I have looked at SQLite with some interest in the past, yet I had never took it seriously as an option when creating a web application. Under "Situations Where SQLite Works Well" at the official SQLite web site, they mention the following:
SQLite usually will work great as the database engine for low to medium traffic websites ... . The amount of web traffic that SQLite can handle depends, of course, on how heavily the website uses its database. Generally speaking, any site that gets fewer than a 100000 hits/day should work fine with SQLite.Not bad. Not bad at all.
Although such claims should still be verified, yet I just tend to believe them. Now if you are thinking BIG of your next killer web application which will attract millions of users, perhaps even in this case it would not hurt if you start out small at first with SQLite then switch later on to MySQL when you need to scale. As Getting Real suggest, it is better to start with a simple solution and then scale later.
Thursday, March 29, 2007
Wednesday, March 28, 2007
The open source code has always been there, but the idea of instantly having access to any part of it and having Google pinpoint the exact piece of code you are looking for from among this enormous body of code is what makes the whole idea amazing. No need to reinvent the wheel anymore. Now that's what I call real usability of code.
Saturday, March 24, 2007
Monday, March 19, 2007
Sunday, March 18, 2007
Thursday, March 15, 2007
Wednesday, March 14, 2007
Yahoo's user interface library is an attempt to answer back to Google's GWT or Google Web Tookit. Here is where you can download GWT.
Monday, March 12, 2007
Saturday, March 10, 2007
The reason behind my excitement was that Google Calendar did offer support for SMS notification before, yet I found they only supported US carriers at the beginning. I had failed to add my mobile number to recieve SMS notification from Google Calendar in the past. Today, as I tried again, it worked. I was amazed. If you are in Egypt, you can use Google Calendar to keep track of your appointments and get free SMS notification for each appointment sent directly to your mobile phone. Here is how to register your mobile phone with Google Calendar.
Thursday, March 08, 2007
Sunday, March 04, 2007
Now Google is taking a qualitatively different and massive step towards machine translation that might spell the difference between success and failure in this difficult field of research that has proved hard for over 50 years. Google is now allowing users to suggest better translation themselves to the systems! Google's system will learn from such suggestions in order to avoid mistakes in future translation. The great wight I am giving to this approach is because of Google's huge user base. Imagine all those people using Google Translate being able to fix and enhance the translation of the system. Google again is harnessing the power of the people as it did when it made use of the Open Directory and the blogging community and fed on links from both. I think with some time Google will be able to achieve what over 50 years of research in machine translation has failed till this very day to achieve, which is high quality automatic translation of unrestricted text. I am highly excited about this move the the possibilities it would open.
Thursday, March 01, 2007
Wednesday, February 28, 2007
Tuesday, February 27, 2007
<a href="section-name">Some Link Text</a>I just by coincidence while scanning the W3C documentation for anchor tags discovered that there is another method which in my case proved to be easier and more compact.
Let's say you have a section in your web page titled as follows:
<h2>My Section</h2>If I wanted to link to such a section, I would modify it as follows:
<h2><a name="section-name">My Section</a>But I discovered that I can alternatively write it as follows:
<h2 id="section-name">My Section</h2>This has the exact same effect as the first method and looks neater and easier to write.
By the way, using internal anchors and linking to them from the same web page helps a lot in search engine optimization (SEO). Google seems to love web pages that have such links in them. They give spiders many clues and Google just loves this and usually ranks such web pages high.
Monday, February 26, 2007
Sunday, February 25, 2007
I wanted to also track how many people who are visiting my blog click on a specific link I have on the blog. The link I want to track clicks on points to an external site and not to a web page in the blog itself. I have just discovered by mere coincidence that Google Analytics allows you to do this as well using a function called urchinTracker. Now I can know how many people visiting my blog have clicked on that specific link and visited the external site it is pointing too.
Saturday, February 24, 2007
AJAX now is a new contender to the mix and enters as an interesting method for enabling chat on the web. Here is a very simple AJAX chat room created with PHP code.
Thursday, February 22, 2007
The premier edition of Google Apps is costs $50 per user account per year. The standard edition is free and is supported by ads. Here is a comparison between the two editions.
Wednesday, February 21, 2007
Monday, February 19, 2007
IBM is a great supporter for open source. Google is another strong supporter of open source as well. I wonder when or if ever will Microsoft follow suit. Probably not.
Sunday, February 18, 2007
Sure Google aims to pushing open source to the limits by doing so. I've had a look at Google's open source hosting service and found it to be very clear and clean. It is easy to use and I believe would be so convenient for hosting open source projects. I believe this would give a boost to the open source community. Unlike with SourceForge, you do not have to wait till your project gets approved when hosting it with Google. I remember trying to host an open source project at SourceForge before, when it finally got accepted, I found it extremely difficult to know how to get about performing any sort of actions on their site. I believe the simplicity Google is introducing for open source project hosting would create a positive boom in the open source community helping it expand dramatically.
Saturday, February 17, 2007
Thursday, February 15, 2007
The key here is that database migrations in Ruby on Rails make very easy to go back and forth between more or less functionality in the system you are building. I really hope that PHP would have some similar easy way that supports migrations. That way going truly agile with PHP would be possible as is the case with Ruby on Rail.
Wednesday, February 14, 2007
Monday, February 12, 2007
That was until I got, by chance, across the most clearly stated answer I have ever seen. Here is the difference between ID and class in CSS. Not only does this make clear the difference between them, but it also gives direction to when to use each.
Base uses the HSQL database engine to achieve its work. HSQL looks interesting. I wonder if it will expand and have more uses than just being the database core of the OpenOffice.org suit.
Sunday, February 11, 2007
Today I discovered yet another word processor that seems to have been out there for quite a while but I just did not happen to know about it. AbiWord is it's name for those of you wh0 would still like to use an offline word processor and want a free alternative to OpenOffice.
In the meantime, I just came across an interesting open source system that does open source. It is called Elgg. My dream can now come true without having to worry about coding a social network from scratch. All I have to do now is just install it and my social networking site is ready!
Saturday, February 10, 2007
What I really loved about this tutorial was the method by which it guided you through the steps. It's really an excellent example of what a good tutorial should be made of. First of all, it follows a gradual approach to building the final thing. It goes only one small step at a time. It uses very simple, short and clear titles for each step. It shows how the outcome of each step would look like. Finally, it shows the code needed for each step, clearly pointing out the newly added code in that step with a different color. Googling through this tutorial was a peaceful and lovely trip, I didn't even need to read the instructions written in it, just following the title of each step, the code and its highlighted section and seeing the outcome of that step was enough to make me understand and absorb all the information. Hands up for this tutorial. I hope others creating tutorials would use this one as an ideal model for how excellent tutorials should be done.
Friday, February 09, 2007
Wednesday, February 07, 2007
The problem with this is that I do not get to track how many CVs my client has received as a result of the job ad I had put for him. I get no idea about the results of the job ad. Each time I have to ask my clients about the results, and even then I do not get a full picture still.
I later thought of putting my own email address in the job ad instead of the email address of my client. Now CVs will all come to me first. But given the large number of CVs that each job ad I send creates, manually forwarding each CV that arrives to each client would be a tedious job, not to mention error prone.
Now gmail's filter feature comes to the rescue. First of all, I have set up an auto forward to forward all email coming to my cv @ egypt-it-jobs.com email to go to my gmail account. From there, I have set up a filter for each job ad I post. The each filter forwards all incoming email that was sent to cv @ egypt-it-jobs.com to the appropriate client depending on a numeric code that candidates write in the subject line. Each job ad has a different numeric code and in the job ad I instruct candidates to write it in the subject line of the email that contains their CV.
The only problem with this system is that some candidates do not follow the instructions I have given in the job ad and do not write the job ad code in the subject line of their email when sending their CV to me. Of course in this case the automatic forwarding of the filter does not work and I have to manually forward their email to the correct client. Yet again the percentage of those whom do not follow my clear instructions in the job ad is small. Moreover, usually such candidates either do not possess the ability to read, understand and follows instructions or are not interested enough in the job ad to read it carefully. In both cases such candidates are not really a desirable type of candidates to be selected for the job, so missing their CVs is not a big loss, actually it is a gain, for it saves my client from going through bad CVs.
Other than that, the system has worked great automatically forwarding the incoming candidate CVs to the appropriate client and keeping a copy in my inbox for later review or just to count the number of CVs that have been sent as a result of each job ad.
Tuesday, February 06, 2007
If Google Base allowed users to store their structured data there privately and access such data securely then maybe in the future no one will need to keep his own database any more, one can just use the massive Google Base to store his application's structured data! What a thought.
Before getting too excited though about this idea, I don't see any reason why Google might be interested in offering such ability to store their structured data privately in Google Base. However, if Google finds out a way to make this option available to users, then this will change the whole landscape of databases and applications that use databases extensively.
With Google Code Search around, one can very easily find a programming function that performs what he needs. I think that such ease of search might entice many computer science students into using it to help them out with their programming assignment. It's a brave new world, I believe it will change the way things are done in the software development world. Google is giving another massive push to open source which is qualitatively different from any other push open source had ever been given.
Refer to the Google Code Search FAQ for more info about its functionality.
Sunday, February 04, 2007
The catch, however, is in their GPU (grid performance unit) which charges their customers extra monthly fees if they happen to use more CPU resources. Their model though sounds interesting and is nice to examine.
Friday, February 02, 2007
Jimmy Wales' idea is to develop a search engine that relies heavily on users to refine the search results. Google introduced Co-op to do just that, using users as a source for search results. Yahoo aims at building the same network of users who are building search results through its My Web initiative. Both Yahoo My Web and Google Co-op are still in beta.
My personal opinion is that the push given by Amazon to Jimmy Wales' idea will still not be able to dethrone Google or Yahoo from their high thrones in the search engine kingdom. They will just fight back ferociously with the same idea of Jimmy Wales, using the knowledge of users in an online social networking setting to build and refine their search engine results. The good news is that the push by Jimmy Wales and Amazon however will make the move towards this take place sooner, which means a better search experience for users.
Have a look at Jimmy Wale's budding search engine.
One of the interesting features for instance of ISO HTML is that if you use an <h1> tag you cannot use an <h3> tag directly after it, but you must follow the <h1> tag with an <h2> first then you may use an <h3> after that. I think this gives you the picture and a taste of what ISO HTML is all about. It tries to make HTML more neat by removing deprecated elements and adding some restrictions to come up with a tighter HTML than that of the W3C.
The question remains however on who will be using such a standard and whether it will ever gain popularity on the web. I personally believe it will not, yet still I find it interesting to use it.
Thursday, February 01, 2007
Google seems to calculate the popularity of a video by counting the number of users who have clicked on it to view it. Perhaps they have a more complex algorithm for determining popularity including how many people viewed the video till the end as well as other criteria. Yet still the resonance effect dramatically accelerates some videos and keeps them at the top much longer than they deserve.
To counter this effect, Google introduced the Movers & Shakers video list which lists videos that are gaining popularity quickly even if their popularity has not reached a high level, but what counts here is speed of increase in popularity and not the popularity rank itself. This has helped a lot in reducing the resonance effect by giving a higher chance for new videos to climb up the popularity ladder and shake down old videos which had clung for long to the top 100 list due to the resonance effect.
Google then introduced yet another feature to help reduce the resonance effect. If a user is signed in with his Google account when visiting Google Video, his popular list is customized to reflect his own interests depending on his search and video viewing history. This again helped reduce the resonance effect.
The final push that Google has made till now to reduce the resonance effect even more was to introduce Recommendations which again rely on each users video search history yet rely less on the popularity of a video and more on the users own interests.
Although social networks and community driven content, which are said to be part of the buzz word Web 2.0, are expected to give even more democracy to the Internet by letting people decide what is good and what is bad, what is popular and what is not, yet it looks like Google should also work on developing a more robust algorithm to determine the popularity or the 'niceness' of a video on not just rely on simple calculations of how many users have viewed a video.
Perhaps Google should consider adding a feature similar to the fascinating interestingness feature found at Flickr which is able to automatically discover marvelous photos using a complex algorithm.