Yongshin Yu's Blog

Sunday, December 06, 2009

How a Browser Works

Here is a good post that I found on the Internet that describes the specifics of how a browser actually works. I remember getting asked this by a Google interviewer 3 years ago. I never was really curious or learned in school these things and usually took the technical aspects of a browser for granted.

http://cnx.org/content/m12851/latest/

Wednesday, September 30, 2009

XSLT Transformation Example: Replacing Node Values in XML

Here's a useful tip that I just recently discovered.

If you want to transform the following XML document to hold different values for elements such as name and phoneNumber,



to an XML document such as the following:




Use the following XSLT variation of the identity transform:



Hope you found this useful. Thanks! Sorry for being MIA, if you need me to update the CDT/Eclipse posting please reply back here.

Tuesday, September 11, 2007

Money brings happiness?

Although this picture seems to suggest that money won't make you any happier than you are, it is probably skewed towards people who are already living comfortable lives. I think that in dire circumstances money does come into play. Also in some cases, because of the level of anxiety and stress that follows a terrible situation, money will bring a temporary avenue of relief.

Saturday, May 05, 2007

The Greatest Software Ever Written

Read this fascinating article on Information Week about BSD UNIX and its history: What's the Greatest Software Ever Written. I skipped to the end because I didn't feel like reading three pages of fluff to find out the real answer.

Tuesday, March 28, 2006

US CS Bachelor’s Degree Production Drops in 2004/2005

Although the statistics might seem quite alarming, I believe that the drop in interest and degrees awarded would be instrumental in promoting the underpaid salaries of software engineers in America.

Link: http://www.cra.org/CRN/articles/march06/vegso.html

Saturday, November 12, 2005

HOW TO: Use CDT and MinGW for Eclipse (i.e. develop C/C++ applications in windows)

I've made these instructions due to the difficulty of finding any documentation that was sufficient enough to help me setup Eclipse using MinGW on Windows. I would recommend using MinGW because of the higher success rate and better compability issues for C/C++. If there are any errors or questions please leave comments.

Step 1:

Download MinGW from mingw.org the following:

Step 2:

Extract the files to the following directory c:\mingw\ and install mingw32-make-3.80.0-3.exe to c:\mingw\.

Step 3:

Add c:\mingw\ to the Paths in System Variables of Environment Paths. Make sure you can run gcc -v in the command prompt.

Step 4:

Install CDT for Eclipse using Help-> Software Updates -> Find and Install -> Search for new Features to Install. Add a new remote site with name "CDT" and URL "http://download.eclipse.org/tools/cdt/releases/eclipse3.1". Accept the license agreements to install both CDT packages.

Step 5:

Create a new Managed Make C Project named "Hello World". I prefer managed make because I like the IDE to worry about the details of a make file.

Step 6:

Create a file called main.c with the following contents:

#include "iostream"
#include "string"
using namespace std;

int main()
{
string yourName;

cout << "Enter your name: ";
cin >> yourName;
cout << "Hello " + yourName << endl;
return 0;
}

Step 6:

You should see an error in the console view. Go to the properties menu for the "Hello World" project and Select C/C++ Build. In the Tool Settings tab, for GCC C compiler and GCC C Linker, set the command to "C:\mingw\bin\mingw32-g++.exe ". In the Build Settings tab, uncheck "use default command" for the build command, and replace the command with "C:\mingw\bin\mingw32-make.exe -k". Also change the Artifact name to "HelloWorld". Press OK.

Step 7:

You should now see a screen like the following in the console (click to enlarge):



Step 8:

There should also be a binaries folder that contains "HelloWorld.exe." Run the program by clicking on Run -> Run... Then click on C/C++ Local Applications and click new. Browse for the "Hello World" project and click on "Search project..." to find "HelloWorld.exe". Click Run.

Step 9:

You should a screen like the following in the console, after you finished running the application:

Saturday, November 05, 2005

Google now pays to help spread Firefox!

It seems that now Google has given the Firefox community a boost of support by paying publishers $1.00 for every Firefox download with Google Toolbar from their website. As Firefox 1.5RC1 is now available for download, the race to gain serious market share in the browser market has now been reborn. At 11% marketshare (read ZDNet news), Firefox is determined to show signs of continued progress. Support Firefox! For more information on how to do add the Adsense Functionality to your site and support Firefox go to the AdSense FAQ or click on one of the buttons under the "Google Stuff" sidebar, on the bottom right, to try out Firefox or Adsense!


Credit: spreadfirefox.com

Friday, October 21, 2005

OpenOffice 2.0 is out!

Although its been long due, OpenOffice is now poised to be one of the premier office suites with the release of version 2.0. I've made my mind to completely switch to OpenOffice about 6 months ago when betas were rolling out. Surprisingly, I found it very easy to use and intiutive just like Microsoft Office. There are so many new features in OpenOffice that shouldn't be overlooked. One of my favorites happens to be Microsoft Office compatibility. I usually view all my PowerPoint, Excel, and Word documents from Google using OpenOffice. The greatest thing that I believe OpenOffice will have to offer is cross-platform compatibility, in particular Linux compatability. Until now Linux has lacked a legitimate office suite that would allow users to do what could be done with an office suite like Microsoft Office. Sooner or later I wish to transition over to Kubuntu, although I know the maturity of Linux applications is still not comparable to current Microsoft Windows applications. However, Linux still seems to be growing substantially, one giant step at a time. Here are more screenshots of of OpenOffice!


Credit: openoffice.org

Monday, September 26, 2005

Dine for America

I saw this link on a friend's blog and it seems to be on October 5th, restaurants all across the country are giving up proceeds during the dinefest to the Hurricane Katrina /(Rita?) fund. Click on the link below for restaurants in Austin, TX or go directly to www.dineforamerica.org for details. It seems like a great way to raise money for a special cause. As for the hurricane posts, you can see that there was a anticlimax as Rita didn't even touch Austin and caused Louisiana some more damage. How much more can Louisiana take? It seems like the agony there is unbearable. Please have them in your thoughts and prayers.


Credit: dineforamerica.org

Thursday, September 22, 2005

A sigh of relief as the storm shifts its path

The parking lots are full at my apartment complex as Rita evacuees come in and take shelter. I saw people carrying bags of personal belongings out of their cars. It makes me wonder what these people are thinking right now that they are hundreds of miles away from their home. There is good news however, for the residents of Texas in the Gulf. Rita has taken a shift of course and is heading in a slightly more northern path than predicted. It may make landfall near the border but it seems as though the path would begin to curve more eastward toward the state of Louisiana. Hurricane winds have died down to 140mph but there is an indication that the storm may grow back to a category 5 in any time. However, there is always hope in the face of a tragedy...


Credit: National Hurricane Center


 
Site Meter