Thursday, August 26, 2010

SpeedFan - A tool to change your CPU Fan's Speed

SpeedFan is a free tool (made by Alfredo Milani Comparetti) that helps you to

  • change your computer's fan speeds

  • read the temperatures of your motherboard and your hard disk,

  • read voltages and fan speeds and

  • check the status of your hard disk using S.M.A.R.T. or SCSI attributes


It is fully configurable and you can create custom events to handle every situation in an automated way. SpeedFan works under Windows 9x, ME, NT, 2000, 2003, XP, Vista and Windows 7. SpeedFan works fine on 64 bit too.


Speedfan can be downloaded from Alfredo's website (http://www.almico.com/sfdownload.php)

Friday, July 16, 2010

Windows 2008 R2 and SQL Server 2008 R2 - DTC

First of all, I hit a Distributed Transaction Coordinator issue with my .NET application after deployed it on the network. The OS in client machine is Windows 7, and server machine is running on Windows 2008 R2 64 bit and SQL Server 2008 R2.

The error below would prompt once the client machine attempting to access database server machine:

The partner transaction manager has disabled its support for remote/network transaction.

I found out the cause is incorrect network access in component services on the servers. The network access of DTC in all servers should be enabled

Following is the procedure to enable it on Windows Server 2008 R2
  1. Click Start, click Run, type dcomcnfg and then click OK to open Component Services.

  2. In the console tree, click to expand Component Services, click to expand Computers, click to expand My Computer, click to expand Distributed Transaction Coordinator and then click Local DTC.

  3. Right click Local DTC and click Properties to display the Local DTC Properties dialog box.

  4. Click the Security tab.

  5. Set the following options on the Security tab of the Local DTC Properties dialog box and click OK



  6. Open the Control Panel, open Windows Firewall, and click Change settings to display Windows Firewall Settings.

  7. Click the Exceptions tab.

  8. Check the box for Distributed Transaction Coordinator and click OK.

Sunday, July 11, 2010

Use CoreTemp to check DTS (Digital Temperature Signal)

Don't underestimate overheating problem with your laptop/PC. Your computer would probably end up restarting itself, hang, white screen or shutting down!

I started worrying about my laptop, Dell Studio 15 when it's hang with white screen. Oh, yeah I didn't turn it off for a week and quite overheating...So, let's find out what the actually problem is causing it. My first shot would be installing temperature reading software, and I decide to use Core Temp.

Core Temp is a handy tool which is tiny and extremely accurate. Intel and AMD’s new technology known as DTS(Digital Temperature Signal) let these applications help monitor the temperature accurately.

See screen shot for example, need to shut down the laptop once the temperature reaches 49-50 degree




Core Temp lets you monitor Intel "Core Duo", "Core Solo", "Core 2 Duo", "Core 2 Solo", "Core 2 Quad", " Pentium", "Core i3", "Core i5", "Core i7", "Core i9", series, "Celeron" series (Conroe/Merom architecture and newer), "Xeon 3000/3200/5100/5300/5400/5500/5600/6500/7400/7500/7600" series (Woodcrest, Clovertown, Harpertown, Dunnington and Nehalem based architecture).
All AMD Phenom II, Athlon II, Phenom, Athlon, Opteron, Sempron, Turion II and Turion series series die temperature.

The temperature readings are very accurate as the data is collected from a Digital Thermal Sensor (or DTS) which is located in each individual processing core, near the hottest part. This sensor is digital, which means it doesn't rely on an external circuit located on the motherboard to report temperature, its value is stored in a special register in the processor so any software can access and read it. This eliminates any inaccuracy that can be caused by external motherboard circuits and sensors and then different types of programs trying to read those sensors.


This is how the program works:

Intel defines a certain Tjunction temperature for the processor. This value is usually in the range between 85°C and 105°C. In the later generation of processors, starting with Nehalem, the exact Tjunction Max value is available for software to read in an MSR (short for Model Specific Register).
A different MSR contains the temperature data. The data is represented as a Delta in °C between current temperature and Tjunction.

So the actual temperature is calculated like this 'Core Temp = Tjunction - Delta'

The size of the data field is 7 bits. This means a Delta of 0 - 127°C can be reported in theory. In fact the reported temperature can rarily go below 0°C and in some cases (Core 2 - 45nm series) temperatures below 30° or even 40°C are not reported.

--------------------------------------------------------------------------------

AMD processors report the temperature via a special register in the CPU's northbridge. Core Temp reads the value from the register and uses a formula provided by AMD to calculate the current temperature.
The formula for the Athlon 64 series, early Opterons and Semprons (K8 architecture) is: 'Core Temp = Value - 49'.
For the newer generation of AMD processors like Phenom, Phenom II, newew Athlons, Semprons and Opterons (K10 architecture), and their derivatives, there is a differnt formula: 'CPU Temp* = Value / 8'.

The sensor in AMD CPUs can report temperatures between -49C and 206C.

*CPU Temp is because the Phenom\Opteron (K10) have only one sensor per package, meaning there is only one reading per processor.

Friday, July 09, 2010

Webservice Extension on IIS7 Windows Server 2008 R2

I hit a classic 404 error today.

The 404 error occurs if the Web Service Extensions - Active Server Pages are Prohibited or the ASP.Net v2.0.50727 is set to Prohibited

I just realized that on IIS6 there is a smart node for Web Services Extensions to setup ASP .NET, however this disappeared when I looked at IIS 7 which a default package on Windows Server 2008 R2.



After a few minutes, I found it has another name called 'ISAPI and CGI Restrictions'
Lastly, here's the tips on how to get the ASP .NET installed quickly :)

Go to command prompt and type aspnet_regiis.exe i

Wednesday, July 07, 2010

TRUSTWORTHY SQL Database Property

I frequently come accross with Trustworthy issue when moving database from one server to another server. Enabling Trustworthy will elevate the impersonation of security.

TRUSTWORTHY { ON OFF }
ON
Database modules (for example, user-defined functions or stored procedures) that use an impersonation context can access resources outside the database.
OFF
Database modules in an impersonation context cannot access resources outside the database.
TRUSTWORTHY is set to OFF whenever the database is attached.

In SQL 2008 and SQL 2000, By default, all system databases except the msdb database have TRUSTWORTHY set to OFF.

That's the background why we may receive an error message when trying to run an existing CLR object or create an assembly that has the external_access or unsafe permission set on a database that is attached or restored from a different server

Read more information at http://support.microsoft.com/kb/918040

The value cannot be changed for the model and tempdb databases. We recommend that you never set the TRUSTWORTHY option to ON for the master database.

To set this option, we must be a member of the sysadmin fixed server role.

The status of this option can be determined by examining the is_trustworthy_on column in the sys.databases catalog view.

For example:
ALTER DATABASE AdventureWorks2008R2 SET TRUSTWORTHY ON; .

Tuesday, June 15, 2010

SQL Server 2008 R2

We don't need to argue that Microsoft SQL Server technology is a leading database information system.

I discovered some cool resources relevant about SQL stuff today.


Professional Association for SQL Server
http://www.sqlpass.org/Community.aspx

Data Warehousing
http://www.microsoft.com/sqlserver/2008/en/us/fasttrack.aspx

Master Data Services
http://www.microsoft.com/sqlserver/2008/en/us/MDS.aspx

PowerPivot
http://www.powerpivot.com/

SQL Server 2008 R2 Update
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=fffaad6a-0153-4d41-b289-a3ed1d637c0d

Monday, May 28, 2007

The T-SQL Quiz

I was reading the latest Simple-Talk email that linked me to an article on Coding Horror, "Why Can't Programmers - Program?" In the article they talked about a simple test that they gave developers to verify their abilities and decide whether or not to continue the interview. Here's the test: Write code that counts from 1 to 100 For each number evenly divisible by 3, substitute 'Bizz' For each number evenly divisible by 5, substitute 'Buzz' For each number divisible by both substitute 'BizzBuzz'

I decided to try it out in TSQL. Once I had a solution (it took about five minutes, it would have been about two but I kept getting syntax errors on the CASE statement). I had so much fun that I sent it out to our team to see who else could meet the requirements and I added one more: no cursors are allowed

Before you read any further, try it out for yourself. It's not hard. A solution should take you less than 10 minutes.

Here are the various solutions that we came up with on our team.

First up, mine:


DECLARE @i VARCHAR(3) ;
DECLARE @s VARCHAR(8) ;
SET @i = 1 ;

WHILE @i < 101
BEGIN
SELECT @s = CASE WHEN ( ( @i % 3 = 0 )
AND ( @i % 5 = 0 )
) THEN 'BizzBuzz'
WHEN ( @i % 3 = 0 ) THEN 'Bizz'
WHEN ( @i % 5 = 0 ) THEN 'Buzz'
ELSE @i
END ;

PRINT @s ;
SET @i = @i + 1 ;
END ;


I didn't need to use the @s variable for the print statements, but overall, first pass, it was simple and worked fine. I'm assuming I'd still get interviewed although my pay scale may have dropped a grade because I introduced parameters that weren't really necessary.

The next submission came in from Chris:


declare @i int
set @i = 1

while( @i < 101)
begin
if @i%3 = 0 print 'Bizz'
else if @i%5 = 0 print 'Buzz'
else if @i%3 = 0 and @i%5 = 0 print 'BizzBuzz'
else print @i

set @i = @i+1
end


He fixed my problem with the string, but he introduced a new one. Go back, reread the code and see if you can spot it. Give up? Because he checked for 3 then 5 then the combination, none of his code found the combination of 3 and 5. End of interview. Sorry Chris. It's also worth mentioning that the CASE statement resolves in a single pass where as the IF statements check each condition.

Next came one from Det:


CREATE TABLE Nums ( num int primary key )
GO

DECLARE @i int
SET @i = 1

WHILE @i <= 100
BEGIN
INSERT Nums ( num )
VALUES ( @i )
SET @i = @i + 1
END


SELECT CASE WHEN num % 3 = 0
AND num % 5 = 0 THEN 'BizzBuzz'
WHEN num % 3 = 0 THEN 'Bizz'
WHEN num % 5 = 0 THEN 'Buzz'
ELSE CAST(num AS nvarchar)
END
FROM nums


Det's worked very well, but he created a permanent table and didn't include a drop statement. When I went back to look at the query plan, I got an error. We'll continue the interview, but Det shouldn't count on getting a top spot on the team.

He submitted a second query as well:

DECLARE @i int
SET @i = 1

WHILE @i <=100
BEGIN
SELECT CASE WHEN @i % 3 = 0 AND @i % 5 = 0 THEN 'BizzBuzz'
WHEN @i %3 = 0 THEN 'Bizz'
WHEN @i %5 = 0 THEN 'Buzz'
ELSE CAST(@i AS nvarchar) END
SET @i = @i + 1
END


This worked in a repeatable fashion and instead of printing output lines to the message window, it returned actual results. 100 separate result sets, but even so, it worked. Points for perseverance.

Next came Scott Abrants:


DECLARE @int AS INT;
DECLARE @immdResult AS VARCHAR(100);

SET @int = 1;

WHILE @int < 101
BEGIN
SET @immdResult = CASE WHEN @int % 3 = 0
AND @int % 5 <> 0 THEN 'Bizz'
WHEN @int % 5 = 0
AND @int % 3 <> 0 THEN 'Buzz'
WHEN @int % 3 = 0
AND @int % 5 = 0 THEN 'BizzBuzz'
END ;

PRINT 'The number is ' + CONVERT(VARCHAR(10), @int);

IF LEN(@immdResult) > 0
BEGIN
PRINT @immdResult;
END

SET @int = @int + 1;
END;


Not at all surprisingly, Scott's is dead on accurate and extremely thorough.

One of the discussions that came up was, shouldn't there be a simple way to do this with a CTE? So after lunch, I set out to try it. This is what I came up with:


WITH Nbrs(n) AS (
SELECT 1
UNION ALL
SELECT 1 + n FROM Nbrs WHERE n < 100)
SELECT CASE WHEN n%5=0 AND n%3=0 THEN 'BizzBuzz'
WHEN n%3 = 0 THEN 'Bizz'
WHEN n%5 = 0 THEN 'Buzz'
ELSE CAST(n AS VARCHAR(8))
END
FROM Nbrs
OPTION (MAXRECURSION 100);



This worked well, looks neat, and it ran in 15ms.

Sunday, May 20, 2007

Windows Vista in Developer Eyes







Microsoft has to admit that Windows Vista fails to ring the bell in PC market. Major young people who are gamers might hold to upgrade to Windows Vista because of directX 10 games issue.
Talking about cost saving - Windows Vista offers a better power-management setting, which will put PC into sleep mode, after one/more hours of idle. Windows XP default setting will leave computer running idle and stand by. Stand by is not reliable compare to Sleep mode by Windows Vista. A better power management can do cost saving, and this benefit is taken by Notebook Vendors releasing their new laptops with Vista installed.

So why is Vista special in developer eyes?

  • Vista offers "speech recognition" -- it'll be a new challenge for developer
  • Known as Windows Workflow Foundation Application with new Visual Studio "Orcas"
  • Running under .Net Framework 3.5
  • Vista has Sync Center to help developer building Windows Mobile Application

Sunday, May 06, 2007

Google Docs

Well, if you asked me whether I am addicted to Google. The answer is Yes - Google Technology keeps kicking butt and knocking bells in the IT World.
It's not just I love the computing world, I saw another penetration by Google service this morning.
Called it as Google Docs

You can review this service at http://docs.google.com

I love it - the concept is building around word processing and spreatsheets as browser-based applications!
You don't need to have installed local application such as Microsoft Word and Excell, or Open Office inside your machine, as long as you have internet connection and google account, you can touch and work on documents.

I could mention many benefits using Google Docs.
  • Data Persistence - you won't get any pain/worry to look for and chase data. It's always a backup and you can put any trust in Google storage. It has a revision track changes! You keep your data in the office, then somehow your office move out/your harddisk fails to start/incorrect backup/no electrical, etc.
  • Eliminate Synchronizing Files - I believe that you have more than one machine, one at office, one or more at home. Document should be located in one place from the Get-Go, sync file may cause irritating problems, to eliminate conflict while you do synchronization of your file in many machines, misplaced files, or any accidental overwrites.

I would admit there's a few limitation on Google Docs (remember Beta version!) such as 5,000 files, max size = 1 MB for spreadsheet. It's still a brilliant collaboration tool for writer (may be blogger as well), and allowing instant communication to change between editorial team. Current Google Docs can allow maximum 11 users to open the file.

I can say that web-delivered application has a future, no doubt!

Tuesday, January 17, 2006

Google Earth




Google Earth is a product of Geographic Markup Language technology.
Geography Markup Language is an XML based encoding standard for geographic information developed by the OpenGIS Consortium (OGC). The objective is to allow internet browsers the ability to view web based mapping without additional components or viewers.

Friday, October 21, 2005

Free Pascal


Free Pascal (aka FPK Pascal) is a 32 and 64 bit professional Pascal compiler. It is available for different processors: Intel x86, Amd64/x86 64, PowerPC, Sparc.
Everyone who knows Delphi, Turbo Pascal should try this excellent stuff (I recommend)

Version 2.0.0 is the latest stable version the Free Pascal!

Regarding License, here's the information:
The packages and runtime library come under a modified Library GNU Public License to allow the use of static libraries when creating applications. The compiler source itself comes under the GNU General Public License. The sources for both the compiler and runtime library are available; the complete compiler is written in Pascal.

Features
The language syntax has excellent compatibility with TP 7.0 as well as with most versions of Delphi (classes, rtti, exceptions, ansistrings, widestrings, interfaces). A Mac Pascal compatibility mode is also provided to assist Apple users. Furthermore Free Pascal supports function overloading, operator overloading, global properties and other such features.

Requirements
x86 architecture:
For the 80x86 version at least a 386 processor is required, but a 486 is recommended.
PowerPC architecture:
Any PowerPC processor will do. 16 MB of RAM is required. The Mac OS classic version is expected to work System 7.5.3 and later. The Mac OS X version requires Mac OS X 10.1 or later, with the developer tools installed. On other operating systems Free Pascal runs on any system that can run the operating system.
ARM architecture
Only cross-compiling to ARM is supported at this time.
Sparc architecture
16 MB of RAM is required. Runs on any Sparc Linux installation.

To download from sourceforge.net
Click here



Sunday, October 09, 2005

Flashcyte (a flash for your website)

Just point and click. The built-in automatic publishing system lets you build websites with nothing but your web browser. It's that easy.
FlashCyte™ does all the hard work for you. The secret is in the revolutionary wizard-based interface...
Hundreds of ready-made templates, intros, and themes take your website beyond "the usual" with cool features like:
  • Live-action streaming video.
  • Custom-created Flash logos.
  • Sound files and embedded MP3 audio.
  • Digital pictures and stock photography.
  • Animated buttons and interfaces.
  • Contact forms, scrolling windows, and more!

Wednesday, August 31, 2005

FireBird Database



The new era of free database just begun!

Firebird is a relational database offering many ANSI SQL-99 features that runs on Linux, Windows, and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers. It has been used in production systems, under a variety of names since 1981.
Firebird is a commercially independent project of C and C++ programmers, technical advisors and supporters developing and enhancing a multi-platform relational database management system based on the source code released by Inprise Corp (now known as Borland Software Corp) on 25 July, 2000 under the InterBase Public License v.1.0.
Moving to Firebird can be disconcerting for developers who have worked with other relational database management systems. In theory, relational databases separate the logical design of an application from the physical storage of the data, allowing developers to focus on what data they want their applications to access, rather how the data should be retrieved. In practice, the mechanics of each database management system make some styles of access much faster than others. Developers learn to use methods that work with the database management systems they know.
Developers who are familiar with Oracle or Microsoft SQL Server find that Firebird indexes, concurrency model, and failure recovery behave differently from the databases they know. Understanding and working with those differences will make your move to Firebird less stressful and more successful. This paper focuses on the unusual characteristics of Firebird indexes.
Index types
Firebird supports only one index type: a b-tree variant. Indexes can be unique or allow duplicates; they can be single key or compound key, ascending or descending.
Record location
Many databases cluster records on the primary key index, either directly storing the data in the index or using the key to group records. In a well-balanced system clustering on primary keys makes primary key lookup very efficient. If the full record is stored in the index, the data level becomes very wide, making the whole index deep and more expensive to traverse than a shallower, denser index. Record clustering can result in sparse storage or overflows depending on the design specifications and data distribution.
Firebird stores records on data pages, using the most accessible page with sufficient space. Indexes are stored on index pages and contain a record locater in the leaf node.
Access costs of primary and secondary indexes. When data is clustered on the primary key, access by primary key is very quick. Access through secondary indexes is slower, especially when the secondary key index uses the primary key as the record locater. Then a secondary index lookup turns into two index lookups.
In Firebird, the cost of primary and secondary index lookups is identical.
Index access strategy
Most databases systems read an index node, retrieve the data - This technique also leads to bouncing between index pages and data, which can be resolved by proper placement control, assuming that the DBA has the time and skill to do so. For non-clustered indexes this technique also results in rereading data pages.
Firebird harvests the record locaters for qualifying records from the index, builds a bitmap of record locaters, and then reads the records in physical storage order.
Index optimization
Because their access strategy binds index access and record access tightly, most database optimizers must choose one index per table as the path to data. Firebird can use several indexes on a table by 'AND'ing and 'OR'ing the bitmaps it creates from the index before accessing any data.
If you have a table where several different fields are used to restrict the data retrieved from a query, most databases require that you define a single index that includes all the fields. For example, if you are looking for a movie that was released in 1964, directed by Stanley Kubrick, and distributed by Columbia you would need an index on Year, Director, and Distributor. If you ever wanted to find all pictures distributed by Stanley Kubrick, you would also need an index on Director alone etc. With Firebird, you would define one index on Director, one on Distributor, and one on ReleaseDate and they would be used in various combinations.
Long duplicate chains
Some databases (Firebird 2 for one) are better than others (Firebird 1.x for one) at removing data from long (>10000) duplicate chains in indexes. If you need an index on a field with low selectivity for a Firebird 1.x database, create a compound key with the field you want to index first and a more selective field second. For example, if you have an index on DatePaid in the table Bills, and every record is stored with that value null when the bill is sent, then modified when the bill is paid, you should create a two-part index on DatePaid, AccountNumber, instead of a single key index on DatePaid.
Indexes in lieu of data
Non-versioning databases resolve some queries (counts for example) by reading the index without actually reading the record data. Indexes in Firebird (like Postgres and other natively versioning databases) contain entries that are not yet visible to other transactions and entries that are no longer relevant to some active transactions. The only way to know whether an index entry represents data visible to a particular transaction is to read the record itself.
The topic of record versions deserves a long discussion. Briefly, when Firebird stores a new record, it tags the record with the identifier of the transaction that created it. When it modifies a record, it creates a new version of the record, tagged with the identifier of the transaction that made the modification. That record points back to the previous version. Until the transaction that created the new version commits, all other transactions will continue to read the old version of the record.
In the example above, when a transaction modifies the indexed field DatePaid, Firebird creates a new version of the record containing the new data and the identifier of the transaction that made the change. The index on that field then has two entries for that record, one for the original null value and one for the new DatePaid.
The index does not have enough information to determine which entry should be counted in responding to a query like "select count (*) from Bills where DatePaid is not null".
Index key length
In Firebird Version 1.x, the total length of an index key must be less than 252 bytes. Compound key indexes and indexes with non-binary collation sequences are more restrictive for reasons described in the section on key compression. Firebird 2 allows keys up to 1/4 of the page size, or a maximum of 4Kb.
Index key representation
Firebird converts all index keys into a format that can be compared byte-wise. With the exception of 64bit integer fields, all numeric and date fields are stored as double precision integer keys, and the double precision number is manipulated to compare byte by byte. When performing an indexed lookup, Firebird converts the input value to the same format as the stored key. What this means to the developer is that there is no inherent speed difference between indexes on strings, numbers, and dates. All keys are compared byte-wise, regardless of the rules for their original data type.
Index key compression
Firebird index keys are always stored with prefix and suffix compression.
Suffix compression removes trailing blanks from string fields and trailing zeros from numeric fields. Remember that most numeric values are stored as double precision and so trailing zeros are not significant. Suffix compression is done for each key field in a compound key without losing key field boundaries. After removing the trailing blanks or zeros are removed, the index compression code pads field to a multiple of four bytes, and inserts marker bytes every four bytes to indicate the position of the field in the key.
Consider the case of a three field key with these sets of values:
"abc ", "def ", "ghi ""abcdefghi ", " ", " "
Simply eliminating trailing blanks would make the two sets of values equal. Instead, Firebird turns the first set of key values into "abc 1def 2ghi 3" and the second into "abcd1efgh1i 1 2 3".
Firebird version 1.x compresses the prefix of index keys as they are stored on pages in the index. It stores first key on a page without prefix compression. Subsequent keys are stored after replacing the leading bytes that match the leading bytes of the previous key with a single byte that contains the number of bytes that were skipped. The two keys above would be stored like this:
"0abc 1def 2ghi 3" "3d1efgh1i 1 2 3"
An index entry that exactly matches the previous entry is stored as a single byte that contains its length. Firebird 2 also performs prefix compression, but uses more dense representation.
The combination of compression techniques eliminates some of the rules about constructing keys. Suffix compression occurs on all segments of a key, so long varchar fields should be placed in their logical spot in a compound key, not forced to the end. On the other hand, if part of a compound key has a large number of duplicate values, it should be at the front of a compound key to take advantage of prefix compression.

Friday, August 05, 2005

Virtual Machine Technology

It took me years to grow into my role but I know what I'm supposed to do and I do it well. My job is to be an independent man and make my own money so I don't have to rely on montly income (life becomes hard day by day). It's my job to juggle my full time job, pain in the Boss, incompetent assistant, then come home, make homework, and do my "nite" dreams.
Long entry ahead....

I have known virtual machine for 2 years, it's a powerful technical professional tools. One of them is VMWare. (It's better in performance rather than Virtual PC).


VMware Workstation is powerful desktop virtualization software for software developers/testers and IT professionals who want to streamline software development, testing and deployment in their enterprise. VMware Workstation allows users to run multiple x86-based operating systems, including Windows, Linux, and NetWare, and their applications simultaneously on a single PC in fully networked, portable virtual machines — no hard drive partitioning or rebooting required.





How Does VMware Workstation Work?

VMware Workstation works by creating fully isolated, secure virtual machines that encapsulate an operating system and its applications. The VMware virtualization layer maps the physical hardware resources to the virtual machine's resources, so each virtual machine has its own CPU, memory, disks, and I/O devices, and is the full equivalent of a standard x86 machine. VMware Workstation installs onto the host operating system and provides broad hardware support by inheriting device support from the host.

Suse Linux on Windows 2000 Windows NT on Windows XP



What's new in VMWare 5

  • Multiple snapshot feature to easily capture and manage point-in-yestime copies of running virtual machines and "undo" changes
  • Teams feature to more easily manage connected virtual machines and simulate "real-world" multi-tier configurations
  • Full and linked clone capabilities to easily copy and share virtual machines
  • Support for new 32-bit guest and host operating systems
  • Support for certain 64-bit host OSs and 64-bit extended processors
  • Improved performance, especially for multi-virtual machine and networking workloads
  • Movie record and playback feature to capture all activity in a running virtual machine
  • Command line interface to automate certain repetitive tasks
  • Improved Linux user interface
  • Support for a class of streaming USB devices, including webcams and speakers
  • Support for NX bit and experimental support for Sun Solaris x86

Saturday, July 30, 2005

Key Performance Indicator in Business Intelligence


I am preparing my computer laboratory service for Business Intelligence using Key Performance Indicator Analysis. Sometimes, balancing life and work is a major issue for me. After joining a live meeting with my overseas comrades that focuses on Implementation of ERP, I'll definitely have to turn back in the original state as "guru" of Business Intelligence tomorrow.
Key Performance Indicators, also known as KPI or Key Success Indicators (KSI), help an organization define and measure progress toward organizational goals.

What Are Key Performance Indicators (KPI)

Key Performance Indicators are quantifiable measurements, agreed to beforehand, that reflect the critical success factors of an organization. They will differ depending on the organization.
  • A business may have as one of its Key Performance Indicators the percentage of its income that comes from return customers.
  • A school may focus its Key Performance Indicators on graduation rates of its students.
  • A Solution Service Department may have as one of its Key Performance Indicators, in line with overall company KPIs, percentage of support calls answered in the first minute.
A Key Performance Indicators for a social service organization might be number of clients assisted during the year.


Key Performance Indicators Reflect The Organizational Goals

An organization that has as one of its goals "to be the most profitable company in our industry" will have Key Performance Indicators that measure profit and related fiscal measures. "Pre-tax Profit" and "Shareholder Equity" or "Revenue Sharing" (got it from my boss) will be among them. However, "Percent of Profit Contributed to Community Causes" probably will not be one of its Key Performance Indicators. On the other hand, a school is not concerned with making a profit, so its Key Performance Indicators will be different. KPIs like "Graduation Rate" and "Success In Finding Employment After Graduation", though different, accurately reflect the schools mission and goals.

Key Performance Indicators Must Be Quantifiable

If a Key Performance Indicator is going to be of any value, there must be a way to accurately define and measure it. "Generate More Repeat Customers" is useless as a KPI without some way to distinguish between new and repeat customers. "Be The Most Popular Company" won't work as a KPI because there is no way to measure the company's popularity or compare it to others.
It is also important to define the Key Performance Indicators and stay with the same definition from year to year. For a KPI of "Increase Sales", you need to address considerations like whether to measure by units sold or by dollar value of sales. Will returns be deducted from sales in the month of the sale or the month of the return? Will sales be recorded for the KPI at list price or at the actual sales price?

Good Key Performance Indicators vs. Bad

Bad:

Title of KPI: Increase Sales
Defined: Change in Sales volume from month to month
Measured: Total of Sales By Region for all region
Target: Increase each month

Good:


Title of KPI: Employee Turnover
Defined: The total of the number of employees who resign for whatever reason, plus the number of employees terminated for performance reasons, and that total divided by the number of employees at the beginning of the year. Employees lost due to Reductions in Force (RIF) will not be included in this calculation.
Measured: The HRIS contains records of each employee. The separation section lists reason and date of separation for each employee. Monthly, or when requested by the SVP, the HRIS group will query the database and provide Department Heads with Turnover Reports. HRIS will post graphs of each report on the Intranet.
Target: Reduce Employee Turnover by 5% per year
KPIs give everyone in the organization a clear picture of what is important, of what they need to make happen.

Tuesday, July 05, 2005

Nightmare edition


Got all of these by experiences.

Worms — A worm is similar to a program but doesn't need to attach itself to another program to run. Trojans — A Trojan poses as a legitimate program but is designed to disrupt computing on the PC it infects. It is not designed to spread to other computers.
Backdoor Trojans — This type of code allows other computer users to gain access to your computer across the internet. Here are examples of viruses, worms and Trojans released over the past couple years and a description of the havoc they raised:
DLoader-L — This Trojan arrived in a seemingly legitimate e-mail, and then it downloaded and installed another program on a PC. This program then allowed computers to be controlled by a third-party to attack websites whenever they connected to the internet, all without the PC owner's knowledge.
Bugbear-D — The worm recorded keystrokes, including passwords, and gave the virus writer access to them. The Compatable virus made changes to data in Excel spreadsheets. And the Sircam worm deleted and overwrote data on hard disks on a specified date.
Chernobyl (CIH) — This virus overwrote system BIOS chips on PCs, rendering them unusable. The Netsky-D worm made computers beep sporadically for several hours. And the Cone-F worm displayed a political message and mailed itself to other computers.
MyDoom — This worm e-mailed itself to addresses found on the infected computers. This generated so much e-mail traffic that e-mail servers slowed to a crawl or crashed. Companies responded by shutting down servers and mail service.

Saturday, June 25, 2005

GA-8I915G Duo

Performance for Extreme Edition


That is my machine motto.




With Intel 915G chipset, GA-8I915G Duo member of GIGABYTE PX series skillfully designed with pack of features and dedicated to satisfying the needs of platform performance to the extreme. Experience next-generation processing with the latest LGA 775 Intel® Pentium® 4 Processor with Hyper-Threading Technolgy! The GA-8I915G Duo supports both DDR & DDR2 main memory providing a more flexible memory usage and ready for future memory upgrades.






Intel® Graphics Media Accelerator 900


Supporting RAID (0, 1, 0+1), JBOD function and ATA133 interface, delivers completely solution for storage interface to increase fault tolerance, improve data access performance and provides additional interface for more IDE devices

June 2005, this board has just gotten an award from in Ukraine as "Editor Choice"

Friday, June 24, 2005

common PC problems you may be able to fix by yourself

Folks, you have to ensure that your computer has been grounded, not only you get a electric shock but static electricity can kill the circuitry inside your computer.




Well, let's try to describe some common PC that can be fix by ourself

We turn on the computer and nothing happens

No lights, no beeps, no fan noise. What is the first thing you do? Be sure the darn thing is plugged in! Even if you're absolutely certain that it is connected, double check.
Assuming that it is plugged in, you probably have a bad power supply. This is a metal box located in the top and back of the computer. It is usually held in by four screws and the power cable connects to it. A fan blows air out the back.
A wiring harness exits the power supply inside the computer. Numerous power connectors are attached to the ends of the wires. These plug into drives, fans and possibly other gizmos. The harness also will have connectors to the motherboard. It doesn't matter which wire connects where, as long as the connector fits.
When you open the computer, this mess of wiring can be very intimidating. Study it, and you'll find it less mysterious. Note the connections in writing, if necessary. Disconnect the wires and remove the power supply. Take it to the computer store and get a replacement with the same wattage.

The computer comes on, but nothing appears on our monitor.
In other words, Windows never shows up. You may have a monitor problem. Try using another known-good monitor on the computer and see if anything shows up on the screen. If the second monitor works, the first one is bad. Monitors are not worth repairing. Just buy a new one. Never open the back of a monitor to fix it. The capacitors inside monitors store electricity. You could be injured or even killed.
If the screen is dark, it could be a video card problem. First, find the video card. This is a circuit board that fits into a slot in the motherboard. The cable from the monitor connects to the VGA (video graphics adapter) port, which sticks out through the back of the computer. If the VGA port is part of the motherboard, the video is built-in. You can't fix that. Otherwise, it will be part of the video card.
Assuming you have a separate card, be sure it is firmly seated. The front end of the card can rise out of the slot inadvertently when the back end is screwed down to the computer frame.
If you have a computer that is working perfectly, turn it off and remove the video card. Put the card that works in the problem computer. If the system works, you need a new card.

If We regularly get the "Blue Screen of Death," we may have a random access memory (RAM) problem.
Note the message on the blue screen, especially the numbers. Check it in Microsoft's Help and Support Knowledge Base. Also, put the text of the error message in a search engine and check the Internet.
Assuming you can diagnose it, a memory problem is easy to fix. If you can't find the diagnosis information you need online, you can try swapping out memory sticks from another computer. But that memory must be the same type. If all else fails, take the old memory to a computer store. The people there may be willing to test it.
Sticks of memory go in slots near the microprocessor. They're about four inches long. Remove the old memory and match it at the store. Memory prices are all over the map, depending on type and speed. Be sure you get the same type.
When you press the new memory into the slot, you will probably have to use some force. The clips on each end will snap into place when the memory is seated properly

If we boot up, and the computer cannot find the C: drive, we might have a bad hard drive.
If you have another computer, swap hard drives to diagnose the problem. If your computer boots with the other drive, yours is probably bad.
Sometimes, a reboot will work. Your drive might have enough life to spin up occasionally. If this works, transfer your data to another drive, pronto.
According to techie lore, you can seal a nonworking drive in a bag and put it in a freezer overnight. That could shrink things enough to free them up. I've used this trick a few times and it's worth a try.
A regular backup regimen will save you in case of hard-drive failure, assuming you aren't backing up to the same hard drive. If the drive is dead and you don't have a backup, a computer shop may be able to save your data.
Hard drives are cheap. Get one boxed for retail, which will include instructions and any hardware needed.
Your hard drive is in the front of your machine. It will be about the size of a paperback book and is probably held in by four screws, two on each side. Power and ribbon cables connect to the back.
Put the new drive in and install it as the master. Reconfigure the old drive as the slave. The instructions that come with the new drive should explain that. Boot the computer and install Windows on the new drive. If you're lucky, the computer will see the old drive (it will be D:). You can then transfer your data to the new drive.
Replacing a hard drive is more difficult than the other operations. However, if you pay to have the work done, it may not be cost effective. You might be better off buying a new machine. So if you are adventuresome, and you have the time, changing the hard drive may be worthwhile.

Monday, June 20, 2005

Navision 4 C/Side Solution Development

I have passed Navision 4 C/Side Solution Development
Date : 20 Jun 2005

Required score : 80%
My Score : 83%

Scored with percentage:
  • C/Al Programming 100%
  • Solution Design 87%
  • Solution Implementation 70%
  • Specific Programming Topic 88%
  • Development Scenario 71%

Authenticate this score report at http://www.pearsonvue.com/authenticate

Registration Number: 211915566

Validation Number: 844471413