Archive
Amazon Kindle Application Development Tutorial – Part 2
![]()
Setting up your system for Amazon kindle
Hi,
Hope everyone is good and enjoying life.
Today is Sunday, i just get done with weekly cleanup of my room, reset my bookshelf, brought some useless things/papers out from drawer etc. I’m lil tired too. Now get free to have some talk to you.
Note : This is the 2nd part of my series of tutorial on Amazon Kindle Application Development. So far we have discussed following topics in this category.
- Amazon Kindle :: An Introduction
- Amazon Kindle Tutorial – Part 1 :: Basic Concepts
- Amazon Kindle Tutorial – Part 2 :: Setting up Your System For Amazon Kindle
- Amazon Kindle Tutorial – Part 3 :: Kindle Application Lifecycle
Today i will describe how to set development environment for Amazon Kindle application. It pretty simple. If you are already a java developer then you have done much already. In my last post i gave you an overview of kindle platform. Today you will learn how to install basic tools to start development.
Bring your coffee/tea with some snacks, play some good slow track at background and lets start.
Follow the step given below to install required tools for kindle development. As java developer, you can skip some of them.
Download JDK![]()
For those who are already doing java development skip this step, for those who are new to java, they must download and install java development kit (JKD). Currently version 6 is latest so you must use it. Download JDK.
Install JDK
After downloading JDK install it to your prefer location, then edit a “path” environment variable entry (right click My computer->properties->Advance tab and then click environment variable at bottom), append the [jdk-instal-dir]\bin … like in my case, I appended the entry c:\Program Files\Java\jdk1.5.0_06\bin in path variable after placing semi-colon in the previous entry.
Download eclipse
Next, we will use eclipse IDE for our development and debugging. As eclipse is free with many useful Plug-in available. Download eclipse.
After download, run eclipse. It will ask you the location of workspace. A workspace is a location where all your projects will be saved by default. You can choose the custom location for your projects too. When eclipse will start, you will see welcome page of your workspace.
Configure jdk with eclipse
its time to link your jdk with eclipse so that while compiling and building your projects
- Click Window > Preferences from the main menu in Eclipse

- Click Java > Installed JREs
- Click Add.
- Fill the fields:
- JRE type = Standard VM
- JRE name = jdk1.6 [or any other name of your choice]
- JRE home = path to the JDK (eg. C:\jdk1.6.0_06)
- Default VM Arguments leave blank
At this point you are ready to start your java development.
Download Kindle Development Kit
Amazon made its Kindle Development Kit (KDK) available for download to software developers. But before download you’ve got to register and be approved by Amazon to download the Kit. You can apply here. The KDK is currently in a limited Beta phase.
After getting approval you will be sent a link to download kdk. Its ~13MB zip archive file name KDKv1.
Kdk comes with kindle application libraries, sample applications and kindle simulator. You can test your application over simulator before submitting to your client or kindle store.
Thats all for today. At this moment you are ready to start application development for kindle platform. In next tutorial you will learn basic constitue of kindle application, how to make hello world project and running your project on simulator.
In case of any query, confusion or you feel i missed something important, feel free to comment.
Have a blessed day.
Kindle For iPhone
The Kindle app is optimized for the iPad, iPhone, and iPod touch, giving users the ability to read Kindle books on a beautiful, easy-to-use interface. You’ll have access to over 725,000* books in the Kindle Store, including best sellers and new releases. Amazon Whispersync automatically syncs your last page read, bookmarks, notes, and highlights across devices (including Kindle), so you can pick up where you left off on another device.
Read Kindle books on your iPhone or iPod touch
- No Kindle device required
- Get the best reading experience available on your iPhone or iPod touch
- Access your Kindle books even if you don’t have your Kindle with you
- Automatically synchronizes your last page read between devices with Amazon Whispersync
- Adjust the text size, add bookmarks, and view the annotations you created on your Kindle
Shop for books in the Kindle Store optimized for Safari on your iPhone or iPod touch
- Buy a book from the Kindle Store optimized for Safari on your iPhone or iPod touch and get it auto-delivered wirelessly
- New! Experience Kindle Editions with Audio/Video
- Search and browse more than 725,000 books, including more than 107 of 111 New York Times bestsellers. If you are a non-U.S. customer, book availability may vary
- Find New York Times® Best Sellers and new releases from $9.99
- Get free book samples. Read the first chapter for free before you decide to buy
- Books you purchase can also be read on a Kindle
- Kindle newspapers, magazines and blogs are not currently available on the iPhone or iPod touch
- Kindle for iPhone is currently available for customers in Argentina, Australia, Austria, Belgium, Brazil, Canada, Chile, Colombia, Costa Rica, Croatia, Czech Republic, Denmark, Dominican Rep., Ecuador, El Salvador, Estonia, Finland, France, Germany, Greece, Guatemala, Honduras, Hong Kong, Hungary, India, Ireland, Israel, Italy, Jamaica, Japan, South Korea, Latvia, Lithuania, Luxembourg, Malta, Republic of, Mexico, Moldova, Republic Of, Netherlands, New Zealand, Nicaragua, Norway, Panama, Paraguay, Peru, Philippines, Poland, Portugal, Romania, Russia, Slovakia, Slovenia, South Africa, Spain, Sri Lanka, Sweden, Switzerland, Taiwan, Thailand, United Kingdom, United States, Uruguay, Venezuela, Vietnam
New Features on the Kindle for iPhone App
- Book Extras including character lists, plot summaries, and series information are available for many popular books. These are powered by the Shelfari.com community and can be accessed from the ‘Go To’ menu while reading.
- Instant word lookup on included dictionary with 250,000 entries and definitions
- Search inside the book
- Look up words on Google and Wikipedia
- Fast app switching on iOS4 devices
(source : http://www.amazon.com)
Silent Confession
I gaze into your eyes and I can see it all,
The sudden look in them is an alarming call
Your eyes say no words, yet my ears hear them shout,
They spell no language, yet my heart makes something out.
The affection your eyes reveals, so pure and unmistakable,
The confession in them, so abrupt and unpredictable.
This glorious moment is so majestic for one of all,
Said by everything when you’ve said nothing at all.
My life’s boat now floats only in your heart’s sea,
Immaculate love now we’ll share as long as eternity.
Amazon Kindle Application Development Tutorial – Part 1
![]()
Hello All.
hope everything is good.
From last few weeks i’m working on an application development of Amazon Kindle, an ebook reading device by Amazon. In my last post i introduce to you kindle device. Now its sdk is also available for custom applications. I’m probably the first in my region who is working on kindle. So as per my bad habit, i’m going to share what i have learned so far. So from today i’ll post 2, 3 tutorials covering basic concepts regarding application development on kindle platform.
Note : This tutorial is a part of my series of tutorial on Amazon Kindle Application Development. So far we have discussed following topics in this category.
- Amazon Kindle :: An Introduction
- Amazon Kindle Tutorial – Part 1 :: Basic Concepts
- Amazon Kindle Tutorial – Part 2 :: Setting up Your System For Amazon Kindle
- Amazon Kindle Tutorial – Part 3 :: Kindle Application Lifecycle
As its mid night, i will try to be concise and will focus mainly on key points. But i assure you as developer you will quickly get what you EXACTLY need to know… more details i will post in next tutorial. So as a tradition of my blog, have a cup of tea/coffee, sit relax in chair and for few min just forget everything around you. Read the rest of the post and get what you actually want to learn; in a simple and quick way.
i’m going to explain some very basic concepts first. then in later post will move to actual development process.
Orite lets go .. few general things need to know in start
- Kindle was basically an ebook reading device by Amazon. You can download books from Amazon, subscribes to blogs and can read contents on your kindle device.
- Kindle as application is also available for iPhone. You can install that app from AppStore and can use same features provided by standard kindle device.
- Then Amazon launched beta sdk for kindle platform; let the developer community to develop application for kindle device. Many application has been developed including games, productive apps etc. The kindle kdk team is continuously intouch with all developers and taking their platform to much more mature state by having feedback/suggestions.
- In this series of tutorial, we will learn how to develop application for kindle platform using kindle skd. We will test them over its simulator and then run over device.
Orite now something related development perspective.
- First of all, congratulations, kindle development is java based so thumbs up , take a relax breath and have little smile .. yesss that’s the way :) … (don’t forget to take sip of tea/coffee)
- As there is java development, me like many other developer community suggests you should use eclipse IDE for your development. Eclipse no doubt the best tool currently available. Here I’m not going to tell which features it provides else I need few years to tell everything in details. As we have already used eclipse for our Android and blackberry application development, so again I will prefer to use eclipse.
- The kindle sdk provides a simulator for testing your application. Though you can fully test your creativity over there but as a matter of fact you MUST need to run it over kindle device before submitting to your client or to launch publically. I used kindle that was cost nearly $150 (though it wasn’t mine at all) so if you wish you can have your own kindle else test it over simulator
Thats all from today’s lecture. In the next part I will describe how to set development environment on your system to start applications for kindle.
have good time.
Andrew Rubin

Andrew Rubin is a technology pioneer, co-founder and former CEO of both Danger Inc. and Android. He is currently VP of Mobile Platforms at Google, where he is reported to be overseeing the development of Android, an open-source operating system for smartphones.
Rubin got his start as an engineer at Apple Inc., and a later spin-off General Magic, where he worked on Magic Cap, an operating system and interface for hand-held devices. When Magic Cap failed to be successful, Rubin and others from General Magic formed Artemis Research, which became WebTV and was eventually acquired by Microsoft. After several years, Rubin left, and he and his collaborators formed Danger, Inc, which was later also acquired by Microsoft in February, 2008. Danger, Inc. is most notable for the Danger Hiptop (often branded as the T-Mobile Sidekick), which is phone with PDA-like capabilities. Disillusionment with his ouster as CEO of Danger led him to found Android, which was later acquired by Google and led to Rubin’s current position. Andy earned a Bachelor of Science degree in Computer Science in 1986 from Utica College in Utica, New York.
(source : http://www.crunchbase.com/)
Gmail Security Checklist
Whether you just regained access to Gmail, or you want to make sure your account is secure, take a minute to complete Gmail security checklist to make sure your mail security measures are up to date.
Step 1 – Your Computer
Check for viruses and malware
While no virus scanner can catch 100% of infections, it is still important to run a scan on your computer with a trusted anti-virus software (or install a program that runs in the background and scans continuously). If the scan detects any suspicious programs or applications, remove them immediately. Find virus scanners
Make sure your operating system is up to date
Operating systems release patches to repair security vulnerabilities. Whether you use Windows or Mac OS, we recommend protecting your computer by enabling your automatic update setting, and updating when you get a notification.
Make sure to perform regular software updates
Some software updates aren’t included in your operating system updates, but they are just as important. Software such as Adobe Flash, Adobe Reader, and Java release regular updates that may include repairs for security vulnerabilities.
Step 2 – Your Browser
Make sure your browser is up to date
To check for browser updates in Internet Explorer, select the Tools tab and click Windows Update. In Firefox, just click the Help tab and select Check for Updates. Google Chromeautomatically updates when a new version is released
Check your browser for plug-ins, extensions, and third-party programs/tools that require access to your Google Account credentials
Plug-ins and extensions are downloadable computer programs that work with your browser to perform specific tasks. For example, you may have downloaded a plug-in or extension that checks your Gmail inbox for new messages. Google can’t guarantee the security of these third party services. If those services are compromised, so is your Gmail password.
Step 3 – Your Google Account
Change your password
If your account has been recently compromised, you should update your password now. In general we suggest you change it twice a year, following these guidelines:
- Pick a unique password that you haven’t previously used on other sites or on Gmail. Just changing one character or number still counts as reusing your password.
- Don’t use a dictionary word or a common word that’s easily guessable. Use a combination of numbers, characters, and case-sensitive letters.
Check the list of websites that are authorized to access your Google Account data
Make sure that the list of authorized websites are accurate and ones that you have chosen. If your Google Account has been compromised recently, it’s possible that the bad guys could have authorized their own websites to access your account data. This may allow them to access your Google Account after you have changed your password.
To edit the list of authorized websites:
- Sign in on the Google Accounts homepage.
- Click the My Account link displayed at the top right of the page.
- Click Change authorized websites. This page will list all third-party sites you’ve granted access to.
- Click the Revoke Access link to disable access for a site.
Update your account recovery options
We all may forget our passwords at some point, so we strongly encourage that you update your account recovery options. To update these options, sign in to your Google Account by going to https://www.google.com/accounts and click Change password recovery options.
- Recovery email address: We can use your recovery email address to communicate with you if you lose access to your account. Learn more.
- SMS: We can send you a recovery code to your mobile phone number, which you can use to reset your password. Learn more.
- Secret question: This option is only available if you can’t use the above recovery options and only if haven’t tried to sign in during the past 24 hours. An ideal answer to your security question is easy for you to remember, but hard for others to guess.
Step 4- Your Gmail Settings
Use a secure connection to sign in.
In your Gmail settings, select ‘Always use HTTPS.’ This setting protects your information from being stolen when you’re signing in to Gmail on a public wireless network, like at a cafe or hotel. Read more.
Check for any strange recent activity on your account.
Click the Details link next to the ‘Last Account Activity’ entry at the bottom of your account to see the time, date, IP address and the associated location of recent access to your account.
Confirm the accuracy of your mail settings to ensure that your mail stays and goes where you want it to.
Sign in to your account and click on the Settings link at the top to check the following tabs:
- General: Check Signature, Vacation Responder, and/or canned responses for spammy content
- Accounts: Verify your Send Mail As, Get mail from other accounts, and Grant access to your account are all accurate.
- Filters: Check that no filters are sending your mail to Trash, Spam, or forwarding to an unknown account.
- Forwarding and POP/IMAP: Ensure your mail isn’t sent to an unknown account or mail client.
Step 5- Final Reminders
- Watch out for messages that ask for your username and/or password. Gmail will never ask for this information.
- Never give out your password after following a link sent to you in a message, even if it looks like Gmail’s sign-in page. Access Gmail directly by typing https://mail.google.com in your browser’s address bar.
- Don’t share your password with other websites – Google can’t guarantee the security of other websites and your Gmail password could be compromised.
- Keep secrets! Never tell anyone your password, or your secret question and answer; if you do tell someone, change it as soon as possible.
- Clear forms, passwords, cache and cookies in your browser on a regular basis – especially on a public computer.
- Only select ‘Stay signed in’ if you’re signing in from a personal computer.
- Always sign out when you’ve finished reading your mail.
(source : Gmail help center)
Run Windows and Android Simultaneously
Although this is a video of a Nokia N800, which isn’t even a smartphone, VMWare’s MVP hypervisor virtual machine is enabling it to run both Windows and Android simultaneously. The virtual machine runs in the background of the native OS and allows a user to install different OSes as applications, then run them at the same time, if desired.
According to VMWare, the MVP is headed for smartphones sometime in the near future. The challenge they may face is the fact that they must partner with smartphone manufacturers and persuade them to install hypervisor on their handsets in order for MVP to work. It’s difficult to imagine handset manufacturers wanting to open their device to multiple OSes, but then again, it could expand market appeal without adding much cost, if any. Would you want a handset enabled to run several OSes?
What’s New in Internet Explorer 8
Hello All.
hope doing well.
This post introduces the platform features of Windows Internet Explorer 8. Click here to download Internet Explorer 8 for Windows XP, Windows Vista with Service Pack 1 (SP1), Windows Server 2003, or Windows Server 2008. The currently released version of Windows 7 includes Internet Explorer 8.
This topic contains the following sections:
- 64-Bit Downloads
- Accelerators
- Accessibility and ARIA
- ActiveX Improvements
- AJAX Enhancements
- CSS Compliance
- Developer Tools
- Document Compatibility Mode
- DOM Storage
- HTML and DHTML Improvements
- Mutable DOM Prototypes
- Protected Mode Improvements
- RSS Features
- Search Suggestions
- Security and Privacy
- Selectors API
- Web Slices
- Zoom Enhancements
- Related Topics
64-Bit Downloads
Internet Explorer now supports download of files whose size exceeds 4 gigabytes (GB). Users of Internet Explorer 8 can take advantage of this functionality by default. Third-party extensions need to implement IBindStatusCallbackEx and return BINDF2_READ_DATA_GREATER_THAN_4GB from their GetBindInfoEx callback method. Download progress is reported through OnProgress by using the BINDSTATUS_64BIT_PROGRESS flag. These callback methods are supported by IMoniker::BindToObject and IMoniker::BindToStorage.
Accelerators
Because the Internet has become increasingly interactive, Internet Explorer 8 makes it easier to interact with content on a Web page. Accelerators are a type of browser extensions that act on Web page content by sending the information to a service of the user’s choosing. Services then perform actions on the content (such as “email” or “bookmark”) or provide more information (“translate” or “map”). Users can install and access Accelerators from the browser shortcut menu, making their browsing experience more efficient.
For more information, see:
Accessibility and ARIA
In response to the increase in UI complexity on the Web, the Web Accessibility Initiative
group has defined a roadmap for Accessible Rich Internet Applications (ARIA), which introduces ways for Web site authors to define how custom UI elements are accessed. ARIA accomplishes this by defining a set of HTML attributes that map back to common UI controls. As a result, users with disabilities can access Web sites with a rich interaction model. By exposing ARIA through the Microsoft Active Accessibility API in Internet Explorer 8, assistive technologies that already use Microsoft Active Accessibility can also support ARIA easily.
- The alt attribute is no longer displayed as the image tooltip when the browser is running in IE8 mode. Instead, the target of the longDesc attribute is used as the tooltip if present; otherwise, the title is displayed. The alt attribute is still used as the Microsoft Active Accessibility name, and the title attribute is used as the fallback name only ifalt is not present.
- ARIA attribute syntax is the same in both IE8 mode and IE7 mode. Earlier releases of Internet Explorer 8 required a legacy property syntax when setting ARIA attributes in compatibility view. For cross-browser compatibility, always use the WAI-ARIA attribute syntax to access and modify ARIA properties, for example
object.setAttribute("aria-valuenow", newValue).
For more information, see:
- ARIA Implementation Guide for AT Vendors: Internet Explorer 8
- Mapping ARIA Roles, States, and Properties to UI Automation
- What’s New for Accessibility in Internet Explorer 8
ActiveX Improvements
Internet Explorer 8 offers greater control over your Microsoft ActiveX installation and debugging.
- Per-site ActiveX — Nearly half of all ActiveX controls meant to run on only one site do not use any form of site locking technology. This means that many controls are not secure by default and could be misused by malicious Web sites. To prevent this in Internet Explorer 8, users can decide whether to allow ActiveX controls to run on a site-by-site basis. For more information, see Per-Site ActiveX Controls.
- Non-administrator installation — Standard users (those without administrator privileges) can install ActiveX controls to their user profiles without a UAC prompt or administrator involvement of any kind. In the event that a user does install a malicious ActiveX control, only the user profile is affected; the system itself is not compromised. For more information, see Non-Admin ActiveX Controls.
- ActiveX Logging — Internet Explorer 8 can report the most common installation and instantiation failures, such as security restrictions preventing an ActiveX control from being instantiated properly. ActiveX logging is performed the same as other Internet Explorer compatibility logging, by using the Internet Explorer Application Compatibility Toolkit. For more information, see Using the Internet Explorer Compatibility Test Tool.
AJAX Enhancements
Asynchronous JavaScript and XML (AJAX) is changing the way Web applications are built. Internet Explorer 8 brings new functionality to the XMLHttpRequest object that enables AJAX applications.
- AJAX Navigation — Client requests that do not trigger traditional Web page navigation can now update the hash property, which allows the Back button to function appropriately.
- Connection Events — Where data reliability is a priority, AJAX applications can choose to save data locally if they are disconnected from a network. See onoffline, ononline.
- Connections Per Server — Internet Explorer 8 raises the number of connections per host by default, for a potential drop in Web page load times and increased parallelism in AJAX scenarios.
- Cross-document Messaging — Documents in different domains can securely exchange data using postMessage. Documents that receive messages listen for theonmessage event.
- Cross-domain Request (XDR) — To allow developers to more safely combine services from different Web sites, the XDomainRequest object restricts and secures communication between untrusted modules in a Web page. The browser shields the user from potential threats while allowing powerful cross-site interaction.
- Timeout Requests — Internet Explorer 8 adds the ability to set a timeout property on server requests.
- Sanitize HTML — Easily remove event properties and script from HTML fragments with window.toStaticHTML.
- Native JSON Support — JavaScript Object Notation (JSON) objects (used widely in AJAX scenarios) can now be serialized and parsed directly in Microsoft JScript. UseJSON.stringify to transform object data to a string and JSON.parse to revive JSON-formatted text. You can also fine-tune your object’s output by implementing a toJSONmethod. These new methods are much faster than script, and safer than using
eval.
For more information, see:
- An Introduction to Cross-Document Messaging in Internet Explorer 8
- Connectivity Enhancements in Internet Explorer 8
- Introducing AJAX Navigations
- XMLHttpRequest Enhancements in Internet Explorer 8
The following videos are also available:
- (Video) How Do I: AJAX Navigation
- (Video) How Do I: Native JSON
- (Video) How Do I: Cross Document Messaging (xdm)
- (Video) How Do I: Cross Domain Requests (xdr)
- (Video) How Do I: HTML 5 Networking Events
- (Video) How Do I: Increased Security Using Cross Document Messaging (XDM)
- (Video) How Do I: Increased Security Using Cross Domain Requests (XDR)
- (Video) How Do I: Internet Explorer 8 Increased Connection Limit
CSS Compliance
- Table Layout — For many years, tables were the preferred layout mechanism on the Internet. With Internet Explorer 8, it is now possible to apply table-style formatting to non-table elements using the display attribute. In practice, CSS tables are more permissive than HTML markup; tables created with CSS rules will nest elements to become valid, whereas tables created with HTML will close containers to avoid unexpected nesting.
- Data URI — This mechanism allows a Web page author to embed small entities directly within a Uniform Resource Identifier (URI), rather than using the URI to identify a location from which to retrieve the entity. This is primarily of interest for small images (such as bullets) used within CSS or layout. See data Protocol for an example.
- Generated Content — Web page authors can render content that does not come from the document tree:
- :before and :after — In conjunction with the new content rule, authors can describe dynamic content to appear before and after most elements.
- counter-reset and counter-increment — Automatically insert numbers into your document.
- quotes — Easily insert language-dependent quote characters or smart quotes.
- outline — Enables elements to be highlighted without affecting their size. The outline is a shorthand property for outline-color, outline-style, and outline-width.
- Printing — The following properties have been added:
- page-break-inside — Avoid page breaks inside an element’s box; if necessary, Internet Explorer will move the element to the following printed page.
- widows and orphans — Control how many lines appear at the bottom and top of each printed page.
- Additional pseudo classes — The following pseudo classes are supported by Internet Explorer 8:
- Browser-specific attributes — Cascading Style Sheets (CSS) properties that apply only to Internet Explorer are named with the -ms- prefix, such as -ms-writing-mode.
For more information, see:
The following videos are also available:
- (Video) How Do I: Box-Sizing and Vertical Text
- (Video) How Do I: Internet Explorer 8 Data URI
- (Video) How Do I: Internet Explorer 8 Generated Content
For CSS test cases used by Internet Explorer, see Windows Internet Explorer Testing Center.
Developer Tools
The built-in Developer Tools of Internet Explorer 8 expose the internal representation of Web pages to help research and resolve problems that involve HTML, CSS, and script. Some features might be familiar to users of the Developer Toolbar released as an add-on to previous versions of the browser,
- CSS Tool — Display various rules defined by style sheets loaded by your Web page.
- Script Debugging — The built-in lightweight debugger enables you to set breakpoints and to step through client-side script without leaving Internet Explorer.
- Script Profiler — Visually determine where your script is taking most of its time.
- Version Mode Switching — Switch into different browser modes to test content for standards compliance.
For more information, see:
- Discovering Internet Explorer Developer Tools
- Debugging Script with the Developer Tools
- Developer Tools User Interface Reference
- Profiling Script with the Developer Tools
The following videos are also available:
- (Video) How Do I: Debugging JavaScript
- (Video) How Do I: Developer Tools
- (Video) How Do I: JavaScript Profiler
Document Compatibility Mode
With full CSS 2.1, strong HTML 5 support, and interoperability fixes for the Document Object Model (DOM), Internet Explorer 8 has made deliberate investments in a new layout engine. The highest level of standards support is on by default for sites that specify a strict !DOCTYPE. Web site authors can select the highest compatibility with Internet Explorer 7 by using the following meta tag:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
The Emulate IE7 button of Internet Explorer 8 Beta 1 was replaced by the Compatibility View button
next to the Address bar. Click the button to quickly change between browser compatibility modes; you do not need to restart the browser.
For more information, see:
- Defining Document Compatibility
- Standards by Default: What Does It Mean?
- How Do I Fix My Site Today?
For setting up compatibility mode on a server, see:
The following videos are also available:
- (Video) How Do I: Document Compatibility Mode – Apache
- (Video) How Do I: Document Compatibility Mode – IIS 6
- (Video) How Do I: Document Compatibility Mode – IIS 7
- (Video) How Do I: Internet Explorer 8 Meta Tag
DOM Storage
The ability to store and retrieve large amounts of data directly to a user’s hard disk is important to browser-based applications that want to extend their reach beyond client-server interactions. Local storage is also comes in handy when disconnected from the Internet, and synchronize local changes when an active Internet connection returns. Scriptable online and offline connectivity events fire when connection status changes.
For more information, see:
HTML and DHTML Improvements
The new HTML 4.01 implementation is now much more interoperable. The improvements include:
- The object tag image fallback is interoperable with other browsers. For example, an object tag without dimensions is now the same size as the image, instead of 0 x 0 pixels.
- The button element submits its value attribute instead of its innerHTML, which means you can use the button element for cross-browser FORM scenarios.
- The getElementById method is now case-sensitive, and it no longer incorrectly performs searches using the NAME attribute.
- The setAttribute method is now case-insensitive; you do not need to use “camel case” (for example, “camelCaseWord”) to specify attributes. It also correctly identifies HTML attributes such as CLASS and FOR.
For more information, see:
The following videos are also available:
Mutable DOM Prototypes
JScript now offers a way to override existing object methods and create new methods that apply immediately to all instances of objects. This tight binding allows scripts to manipulate DOM objects natively, as if they were actually JScript objects. By providing native DOM prototypes for elements, circular references, such as those sometimes created between Internet Explorer Component Object Model (COM) infrastructure and the scripting engine, can be managed directly by the JScript engine to alleviate hard-to-detect memory leaks.
For more information, see:
- Document Object Model Prototypes, Part 1: Introduction
- Document Object Model Prototypes, Part 2: Accessor (getter/setter) Support
- (Video) How Do I: Mutable DOM Prototypes
Protected Mode Improvements
In Windows Vista, Protected Mode restricts file writes to low-integrity locations, including cookies. In Internet Explorer 8, medium-integrity applications can access low-integrity cookies without user interaction, by using IEGetProtectedModeCookie and IESetProtectedModeCookie. As always, applications that use cookies downloaded from the Internet should assume that these cookies contain malicious data.
With Internet Explorer 8, you can control the browser after launching it from a medium-integrity process, even if it opens in Protected Mode. After invoking Navigate2, theNewProcess event will return a reference to the new WebBrowser object that has just opened.
RSS Features
- Authenticated Feeds — the Windows RSS Platform can now perform authentication without user interaction. User name and password can be set in the Properties dialog box of the feed.
- Effective ID — A hash algorithm is used to produce a unique ID for feed items. You can use this value to synchronize an item’s read and unread states between computers, or to compare items in the Common Feed List with items stored by other programs.
For more information, see:
Search Suggestions
Internet Explorer 8 significantly improves the search experience of Internet Explorer 7 with the following features:
- Search Suggestions — Help users search for the right term as quickly as possible. Both JSON and an extended OpenSearch XML format are supported.
- Visual Suggestions — Integrate image search and other descriptive content.
- Improved User Experience — Using the Quick Pick drop-down list box and the Accelerator shortcut menu, you can easily select and switch between installed search providers. Also, using History Search, automatically find recently viewed Web pages without leaving the search box.
To learn how to integrate your search provider with Internet Explorer 8, see Search Provider Extensibility in Internet Explorer and (Video) How Do I: Search Suggestions Providers.
Security and Privacy
The following features help to protect your security and privacy when browsing the Web:
- Clickjacking Defense: Some hackers try to trick users into clicking buttons that appear to perform safe or harmless functions, but instead perform unrelated tasks. Clickjackers embed malicious code or “redress” the user interface by using transparent frames that overlay specific UI elements with misleading text and images. To help prevent clickjacking, Web site owners can send an HTTP response header named
X-Frame-Optionswith HTML pages to restrict how the page may be framed.X-Frame-Options: Deny
If the
X-Frame-Optionsvalue contains the tokenDeny, Internet Explorer 8 prevents the page from rendering if it is contained within a frame. If the value contains the tokenSameOrigin, Internet Explorer will not render the page if the top level-browsing-context differs from the origin of the page containing the directive. Blocked pages are replaced with a “This content cannot be displayed in a frame” error page. - Cross-site Scripting (XSS) Filter: This new Internet Explorer 8 feature makes “reflected (Type I) XSS” vulnerabilities harder to exploit. Script can be reflected when a portion of the HTTP request is used to generate the server’s response, allowing malicious script in the request to run with the same level of access as the rest of the page. The XSS Filter monitors all requests and responses flowing through the browser. When the filter detects script in a cross-site request, it identifies and disables the script if it is replayed in the server’s response. When this happens, a “Internet Explorer modified this page to prevent a potential cross-site scripting attack” message is displayed. Web developers who wish to disable the filter for their content can set the following HTTP header.
X-XSS-Protection: 0
- Delete Browsing History: As a user browses the Web, Internet Explorer stores user preferences, typed data, and information about places visited. It is possible that some extensions are doing the same thing. Previously, there was no way to for an add-on to know when a user cleared the Temporary Internet Files (TIF) folder or removed cookies and history. Now, by implementing the IDeleteBrowsingHistory interface, extensions can be notified when the user clears the browser cache, which enables them to delete their own stored data at the same time.
- InPrivate Filtering: It’s possible for Web sites to track users without using cookies. Internet Explorer 8 can ensure that a user’s browsing habits are not disclosed by blocking content from and preventing communication with third-party content (images and script from another Web site that are incorporated into the Web page being viewed). InPrivate Filtering keeps a record of third-party items while a user browses, and (when enabled by the user) can automatically block Web sites that have provided third-party content to more than 10-30 first-party sites. Add-on and toolbar developers can detect whether the user has enabled InPrivate Filtering by callingIEInPrivateFilteringEnabled, or with script as follows:
var enabled = window.external.InPrivateFilteringEnabled();
For more information, see:
- IEBlog: IE8 Security Part IV: The XSS Filter

- IEBlog: IE8 Security Part VII: ClickJacking Defenses

- IEBlog: Privacy Beyond Blocking Cookies: Bringing Awareness to Third-Party Content

The following videos are also available:
- (Video) How Do I: Circular Memory Leak Detection
- (Video) How Do I: Developing Securely with Cross-Site Scripting (XSS) Filter
- (Video) How Do I: InPrivate Browsing
Selectors API
Use the power of CSS selectors to rapidly locate DOM elements. The API introduces two methods, querySelector and querySelectorAll, that take a selector (or group of selectors) and return the matching DOM elements. With these methods, it is easier to match a set of element nodes based on specific criteria. The Selectors API provides significantly faster performance over non-native implementations.
For more information, see:
Web Slices
Web Slices enable users to subscribe to specially marked content on a Web page. When the content changes, the user receives a notification on the Favorites bar where the content can be previewed without additional navigation.
For more information, see:
- Authenticated Web Slices
- Subscribing to Content with Web Slices
- Web Slice Format Specification
- Web Slice Tutorials
- (Video) How Do I: Web Slices
Zoom Enhancements
Internet Explorer 8 provides a higher-quality, more predictable and persistent zooming experience than does Internet Explorer 7. In addition to introducing more persistent zoom states, Internet Explorer 8 eliminates horizontal scroll bars for the majority of mainstream scenarios. New windows, dialogs, and pop-up windows automatically inherit the zoom level of their parent.







Recent Comments