<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3649774551117530821</id><updated>2024-08-30T02:20:57.644-07:00</updated><category term="Tutorials"/><title type='text'>Deepak Kumar</title><subtitle type='html'>Hello there. Find posts on Java , Oracle, C++ , C , Data Structures , OS , and other useful stuff here.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-1157885246571560727</id><published>2012-10-22T10:42:00.003-07:00</published><updated>2012-10-22T10:43:40.901-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Tutorials"/><title type='text'>Java programming video tutorials</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;&lt;i&gt;&lt;span style=&quot;color: #3d85c6;&quot;&gt;Here is a Java video tutorial series for ya all by Arthur Griffith . It starts from the very beginning and will walk you through each and every minute concept you need to know in Java. It is an 8 hr 32 min course .&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;b&gt;&lt;i&gt;I will post each and every video in this tutorial in a serial manner post by post. As for now, i am posting half of the tutorial.&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;&lt;b&gt;&lt;i&gt;For every video, I have posted a link . I will post the source code for the programs explained in the videos in a later post.&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;b style=&quot;color: #3d85c6;&quot;&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I . INTRODUCTION&lt;/div&gt;
&lt;div&gt;
1. Introduction : &lt;span style=&quot;color: #3d85c6; font-style: italic; font-weight: bold;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=xGMSEkZO9OI&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;http://www.youtube.com/watch?v=xGMSEkZO9OI&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
2. What is java :&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=HlIAumW57Bw&amp;amp;feature=plcp&quot;&gt;http://www.youtube.com/watch?v=HlIAumW57Bw&amp;amp;feature=plcp&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
3. What you ll need : .&lt;a href=&quot;http://www.youtube.com/watch?v=hlBKdAqfau0&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;http://www.youtube.com/watch?v=hlBKdAqfau0&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
4.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=sc0qn_JiBGk&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;http://www.youtube.com/watch?v=sc0qn_JiBGk&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
5.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=H1tuOAyRmX0&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;http://www.youtube.com/watch?v=H1tuOAyRmX0&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2. TWO PROGRAMS NAMED HOWDY&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
6.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=Tgybb1RNeNc&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;http://www.youtube.com/watch?v=Tgybb1RNeNc&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
7.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=k1MnnklGpWA&amp;amp;feature=BFa&amp;amp;list=ULTgybb1RNeNc&quot;&gt;http://www.youtube.com/watch?v=k1MnnklGpWA&amp;amp;feature=BFa&amp;amp;list=ULTgybb1RNeNc&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
8.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=o0cxvbzeFTM&amp;amp;feature=BFa&amp;amp;list=ULk1MnnklGpWA&quot;&gt;http://www.youtube.com/watch?v=o0cxvbzeFTM&amp;amp;feature=BFa&amp;amp;list=ULk1MnnklGpWA&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
9.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=GDt_eElcmoY&amp;amp;feature=BFa&amp;amp;list=ULo0cxvbzeFTM&quot;&gt;http://www.youtube.com/watch?v=GDt_eElcmoY&amp;amp;feature=BFa&amp;amp;list=ULo0cxvbzeFTM&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
10.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=_z_zybQE5hM&amp;amp;feature=BFa&amp;amp;list=ULGDt_eElcmoY&quot;&gt;http://www.youtube.com/watch?v=_z_zybQE5hM&amp;amp;feature=BFa&amp;amp;list=ULGDt_eElcmoY&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3. DRAWING TEXT IN A WINDOW&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
11.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=u-8MOyrLUTU&amp;amp;feature=BFa&amp;amp;list=UL_z_zybQE5hM&quot;&gt;http://www.youtube.com/watch?v=u-8MOyrLUTU&amp;amp;feature=BFa&amp;amp;list=UL_z_zybQE5hM&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
12.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=b7WeuUwZ4Sk&amp;amp;feature=BFa&amp;amp;list=ULu-8MOyrLUTU&quot;&gt;http://www.youtube.com/watch?v=b7WeuUwZ4Sk&amp;amp;feature=BFa&amp;amp;list=ULu-8MOyrLUTU&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
13.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=JiAMyYT0Y8U&amp;amp;feature=BFa&amp;amp;list=ULb7WeuUwZ4Sk&quot;&gt;http://www.youtube.com/watch?v=JiAMyYT0Y8U&amp;amp;feature=BFa&amp;amp;list=ULb7WeuUwZ4Sk&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
14.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=M82IxLOV4XY&amp;amp;feature=BFa&amp;amp;list=ULJiAMyYT0Y8U&quot;&gt;http://www.youtube.com/watch?v=M82IxLOV4XY&amp;amp;feature=BFa&amp;amp;list=ULJiAMyYT0Y8U&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
15.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=xxhEMb3BYng&amp;amp;feature=BFa&amp;amp;list=ULM82IxLOV4XY&quot;&gt;http://www.youtube.com/watch?v=xxhEMb3BYng&amp;amp;feature=BFa&amp;amp;list=ULM82IxLOV4XY&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
16.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=xxhEMb3BYng&amp;amp;feature=BFa&amp;amp;list=ULM82IxLOV4XY&quot;&gt;http://www.youtube.com/watch?v=xxhEMb3BYng&amp;amp;feature=BFa&amp;amp;list=ULM82IxLOV4XY&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
17.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=7j2XZJuwuK0&amp;amp;feature=BFa&amp;amp;list=ULu0wPUouMCsU&quot;&gt;http://www.youtube.com/watch?v=7j2XZJuwuK0&amp;amp;feature=BFa&amp;amp;list=ULu0wPUouMCsU&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
4. A FEW LANGUAGE FUNDAMENTALS&lt;/div&gt;
&lt;div&gt;
18.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=Kre9-MvlwpA&amp;amp;feature=BFa&amp;amp;list=UL7j2XZJuwuK0&quot;&gt;http://www.youtube.com/watch?v=Kre9-MvlwpA&amp;amp;feature=BFa&amp;amp;list=UL7j2XZJuwuK0&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
19.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=XgmYj8tYm38&amp;amp;feature=BFa&amp;amp;list=ULKre9-MvlwpA&quot;&gt;http://www.youtube.com/watch?v=XgmYj8tYm38&amp;amp;feature=BFa&amp;amp;list=ULKre9-MvlwpA&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
20.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=XC7ZjZRZ280&amp;amp;feature=BFa&amp;amp;list=ULXgmYj8tYm38&quot;&gt;http://www.youtube.com/watch?v=XC7ZjZRZ280&amp;amp;feature=BFa&amp;amp;list=ULXgmYj8tYm38&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
21.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=SiZintYLss8&amp;amp;feature=BFa&amp;amp;list=ULXC7ZjZRZ280&quot;&gt;http://www.youtube.com/watch?v=SiZintYLss8&amp;amp;feature=BFa&amp;amp;list=ULXC7ZjZRZ280&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
22.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=jxSwSjTnuDE&amp;amp;feature=BFa&amp;amp;list=ULSiZintYLss8&quot;&gt;http://www.youtube.com/watch?v=jxSwSjTnuDE&amp;amp;feature=BFa&amp;amp;list=ULSiZintYLss8&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
23.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=CdZk5FpSbrk&amp;amp;feature=BFa&amp;amp;list=ULjxSwSjTnuDE&quot;&gt;http://www.youtube.com/watch?v=CdZk5FpSbrk&amp;amp;feature=BFa&amp;amp;list=ULjxSwSjTnuDE&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
24.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=8AjixkEnpw0&amp;amp;feature=BFa&amp;amp;list=ULCdZk5FpSbrk&quot;&gt;http://www.youtube.com/watch?v=8AjixkEnpw0&amp;amp;feature=BFa&amp;amp;list=ULCdZk5FpSbrk&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
25.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=afuH_kZxbt8&amp;amp;feature=BFa&amp;amp;list=UL8AjixkEnpw0&quot;&gt;http://www.youtube.com/watch?v=afuH_kZxbt8&amp;amp;feature=BFa&amp;amp;list=UL8AjixkEnpw0&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
5. CLASSES, DATA, AND ACCESS&lt;/div&gt;
&lt;div&gt;
26.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=0kWyAdGHy0A&amp;amp;feature=BFa&amp;amp;list=ULafuH_kZxbt8&quot;&gt;http://www.youtube.com/watch?v=0kWyAdGHy0A&amp;amp;feature=BFa&amp;amp;list=ULafuH_kZxbt8&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
27.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=LlxhMZQInSs&amp;amp;feature=BFa&amp;amp;list=UL0kWyAdGHy0A&quot;&gt;http://www.youtube.com/watch?v=LlxhMZQInSs&amp;amp;feature=BFa&amp;amp;list=UL0kWyAdGHy0A&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
28.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=LlxhMZQInSs&amp;amp;feature=BFa&amp;amp;list=UL0kWyAdGHy0A&quot;&gt;http://www.youtube.com/watch?v=LlxhMZQInSs&amp;amp;feature=BFa&amp;amp;list=UL0kWyAdGHy0A&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
29.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=rw92Titz_KE&amp;amp;feature=BFa&amp;amp;list=UL-RecbhMfodw&quot;&gt;http://www.youtube.com/watch?v=rw92Titz_KE&amp;amp;feature=BFa&amp;amp;list=UL-RecbhMfodw&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
30.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=PN4Tse-Dsww&amp;amp;feature=BFa&amp;amp;list=ULrw92Titz_KE&quot;&gt;http://www.youtube.com/watch?v=PN4Tse-Dsww&amp;amp;feature=BFa&amp;amp;list=ULrw92Titz_KE&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
31.&amp;nbsp;&lt;a href=&quot;http://www.youtube.com/watch?v=LA-ODPe-JpU&amp;amp;feature=BFa&amp;amp;list=ULPN4Tse-Dsww&quot;&gt;http://www.youtube.com/watch?v=LA-ODPe-JpU&amp;amp;feature=BFa&amp;amp;list=ULPN4Tse-Dsww&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/1157885246571560727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/java-programming-video-tutorials.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1157885246571560727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1157885246571560727'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/java-programming-video-tutorials.html' title='Java programming video tutorials'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-2478959768448602662</id><published>2012-10-21T02:19:00.001-07:00</published><updated>2012-10-21T02:44:24.006-07:00</updated><title type='text'>Java animation with AWT and threads</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Java can be used to do quite a bit of animation.. Java allows us to write programs for animating objects and all sorts of stuff . For this, we use AWT and threads.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;Here i am giving you some example programs that you might like to run on your Java IDE and see what happens. Also, i cant write the whole tutorial down here .. For basics on the AWT package and thread concept, refer to the Java video tutorial series by Arthur Griffith. I am putting down some links that might help. &lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=bUNO313BmDM&quot;&gt;https://www.youtube.com/watch?v=bUNO313BmDM&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=xQUNgv3JYHQ&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;https://www.youtube.com/watch?v=xQUNgv3JYHQ&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=cqV4DQORugo&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;https://www.youtube.com/watch?v=cqV4DQORugo&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=Q8ZiGPzujEU&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;https://www.youtube.com/watch?v=Q8ZiGPzujEU&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=vwX6agzpesI&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;https://www.youtube.com/watch?v=vwX6agzpesI&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=2barOY0leB8&amp;amp;feature=channel&amp;amp;list=UL&quot;&gt;https://www.youtube.com/watch?v=2barOY0leB8&amp;amp;feature=channel&amp;amp;list=UL&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
So, here is the first program for you.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;1. Pong Program - All this program does is to have a ball moving in the screen and bouncing off against the walls of the window. This program file has two classes one of which extends the Frame class and the other extends the canvas class. The frame used just to hold the canvas in which the whole animation action is going on.&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
import java.awt.Frame;&lt;/div&gt;
&lt;div&gt;
import java.awt.Canvas;&lt;/div&gt;
&lt;div&gt;
import java.awt.Graphics;&lt;/div&gt;
&lt;div&gt;
import java.awt.AWTEvent;&lt;/div&gt;
&lt;div&gt;
import java.awt.Color;&lt;/div&gt;
&lt;div&gt;
import java.awt.Image;&lt;/div&gt;
&lt;div&gt;
import java.awt.Rectangle;&lt;/div&gt;
&lt;div&gt;
import java.awt.event.WindowEvent;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
public class PongOne extends Frame {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public static void main(String arg[]) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new PongOne();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; PongOne() {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; enableEvents(AWTEvent.WINDOW_EVENT_MASK);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PongCanvasOne pcone = new PongCanvasOne();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; add(pcone);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pack();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; show();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void processWindowEvent(WindowEvent event) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(event.getID() == WindowEvent.WINDOW_CLOSING)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.exit(0);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
class PongCanvasOne extends Canvas implements Runnable {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int x = 0;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int y = 0;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int diameter = 12;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; boolean movingRight = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; boolean movingDown = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Rectangle rect = new Rectangle(0,0);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Thread looper;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Image image;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; PongCanvasOne() {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; setSize(150,100);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; looper = new Thread(this);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; looper.start();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void run() {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; try {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while(true) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Thread.sleep(33);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; repaint();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } catch(Exception e) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.out.println(e.getStackTrace());&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.exit(1);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void update(Graphics g) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(!rect.equals(getBounds())) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rect = getBounds();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image = createImage(rect.width,rect.height);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(movingRight) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if((++x + diameter) &amp;gt;= rect.width)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingRight = false;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(--x &amp;lt;= 0)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingRight = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(movingDown) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if((++y + diameter) &amp;gt;= rect.height)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingDown = false;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(--y &amp;lt;= 0)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingDown = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Graphics ig = image.getGraphics();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; paint(ig);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.drawImage(image,0,0,this);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void paint(Graphics g) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.cyan);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.fillRect(0,0,rect.width,rect.height);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.blue);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.fillOval(x,y,diameter,diameter);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.black);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.drawOval(x,y,diameter,diameter);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;2. Pong two program(Variable speed version) - This program is a modification of the last pong program that accepts 3 arguments on the command line as the pause(thread sleep time), horizontal &amp;nbsp;speed and vertical speed of the pong. You can enter different values and see what happens, Though the default values have been set already. &amp;nbsp;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
import java.awt.Frame;&lt;/div&gt;
&lt;div&gt;
import java.awt.Canvas;&lt;/div&gt;
&lt;div&gt;
import java.awt.Graphics;&lt;/div&gt;
&lt;div&gt;
import java.awt.AWTEvent;&lt;/div&gt;
&lt;div&gt;
import java.awt.Color;&lt;/div&gt;
&lt;div&gt;
import java.awt.Image;&lt;/div&gt;
&lt;div&gt;
import java.awt.Rectangle;&lt;/div&gt;
&lt;div&gt;
import java.awt.event.WindowEvent;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
public class PongTwo extends Frame {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public static void main(String arg[]) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int pause = 33;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int horizontal = 1;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int vertical = 1;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(arg.length == 3) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; try {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pause = Integer.parseInt(arg[0]);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; horizontal = Integer.parseInt(arg[1]);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vertical = Integer.parseInt(arg[2]);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } catch(Exception e) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.out.println(e);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.exit(1);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new PongTwo(pause,horizontal,vertical);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; PongTwo(int pause,int horizontal,int vertical) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; enableEvents(AWTEvent.WINDOW_EVENT_MASK);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PongCanvasTwo pctwo = new PongCanvasTwo(pause,horizontal,vertical);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; add(pctwo);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pack();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; show();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void processWindowEvent(WindowEvent event) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(event.getID() == WindowEvent.WINDOW_CLOSING)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.exit(0);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
class PongCanvasTwo extends Canvas implements Runnable {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int x = 0;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int y = 0;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int diameter = 12;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; boolean movingRight = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; boolean movingDown = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Rectangle rect = new Rectangle(0,0);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Thread looper;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; Image image;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int pause;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int vertical;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; int horizontal;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; PongCanvasTwo(int pause,int horizontal,int vertical) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; this.pause = pause;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; this.horizontal = horizontal;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; this.vertical = vertical;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; setSize(150,100);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; looper = new Thread(this);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; looper.start();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void run() {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; try {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; while(true) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Thread.sleep(pause);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; repaint();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } catch(Exception e) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.out.println(e.getStackTrace());&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.exit(1);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void update(Graphics g) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(!rect.equals(getBounds())) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rect = getBounds();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image = createImage(rect.width,rect.height);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(movingRight) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(((x += horizontal) + diameter) &amp;gt;= rect.width)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingRight = false;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if((x -= horizontal) &amp;lt;= 0)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingRight = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(movingDown) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(((y += vertical) + diameter) &amp;gt;= rect.height)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingDown = false;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if((y -= vertical) &amp;lt;= 0)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; movingDown = true;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Graphics ig = image.getGraphics();&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; paint(ig);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.drawImage(image,0,0,this);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; public void paint(Graphics g) {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.cyan);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.fillRect(0,0,rect.width,rect.height);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.blue);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.fillOval(x,y,diameter,diameter);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.setColor(Color.black);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; g.drawOval(x,y,diameter,diameter);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
}&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
See ya later.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;font-weight: bold;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/2478959768448602662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/java-animation-with-awt-and-threads.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/2478959768448602662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/2478959768448602662'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/java-animation-with-awt-and-threads.html' title='Java animation with AWT and threads'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-2095112593813338179</id><published>2012-10-20T03:52:00.003-07:00</published><updated>2012-10-20T03:52:34.500-07:00</updated><title type='text'>SCJP / OCP Java exam questions</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Hello. Here is a link that contains all the practice tests and loads of questions that you ll face in your OCP java exams. Its by far the best site to practice java that i ve come across lately.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://www.coderanch.com/how-to/java/ScjpMockTests&quot;&gt;https://www.coderanch.com/how-to/java/ScjpMockTests&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/2095112593813338179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/scjp-ocp-java-exam-questions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/2095112593813338179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/2095112593813338179'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/scjp-ocp-java-exam-questions.html' title='SCJP / OCP Java exam questions'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-3209991916112098944</id><published>2012-10-19T14:22:00.002-07:00</published><updated>2012-10-20T02:51:50.356-07:00</updated><title type='text'>Oracle 10g video tutorial series </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Heres the link to the video tutorial series.Found it on torrentz.eu. It covers all the important topics you need to know in oracle 10g. Grab it before the seeds decrease.. happy programming !&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Link:&amp;nbsp;&lt;a href=&quot;http://thepiratebay.se/torrent/6242524&quot; target=&quot;_blank&quot;&gt;http://thepiratebay.se/torrent/6242524&lt;/a&gt;&lt;br /&gt;
For downloading this, you ll need torrent client. So here it is.&lt;br /&gt;
utorrent client:&amp;nbsp;&lt;a href=&quot;http://www.utorrent.com/utorrent-plus/index/frmnvh&quot;&gt;http://www.utorrent.com/utorrent-plus/index/frmnvh&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/3209991916112098944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/oracle-10g-video-tutorial-series.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/3209991916112098944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/3209991916112098944'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/oracle-10g-video-tutorial-series.html' title='Oracle 10g video tutorial series '/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-9157995771827779061</id><published>2012-10-19T14:00:00.000-07:00</published><updated>2012-10-19T14:00:26.454-07:00</updated><title type='text'>Cool Java Programs</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;h2 style=&quot;background-color: white; color: #ff9900; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 20px; margin: 20px 0px 11px;&quot;&gt;
Introduction&lt;/h2&gt;
&lt;div style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;
This includes&amp;nbsp;&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;Java&lt;/span&gt;&amp;nbsp;&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;Programs&lt;/span&gt;&amp;nbsp;for:&lt;/div&gt;
&lt;ol style=&quot;background-color: white; border: 0px; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;&quot;&gt;
&lt;li style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;Typing on computer without physically typing&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;Screen capture&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;Auto Downloader&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;Listing all processes in task manager&lt;/li&gt;
&lt;li style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;Obtaining and setting Clipboard data&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 style=&quot;background-color: white; color: #ff9900; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 20px; margin: 20px 0px 11px;&quot;&gt;
Using the Code&lt;/h2&gt;
&lt;h3 style=&quot;background-color: white; color: #666666; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 18px; font-weight: normal;&quot;&gt;
1) Typing on Computer without Physically Typing&lt;/h3&gt;
&lt;div style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;
The first program opens an editor like Notepad where our program will start typing automatically. This is achieved by:&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;
&lt;/div&gt;
&lt;pre id=&quot;pre0&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;Runtime.getRuntime().exec(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;notepad.exe&quot;&lt;/span&gt;);                               &amp;nbsp;&lt;/pre&gt;
&lt;pre id=&quot;pre0&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;&lt;span style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;Now we make our program type in Notepad. For this, we use the&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;Robot&amp;nbsp;&lt;/code&gt;&lt;span style=&quot;background-color: white; color: #111111; font-family: &#39;Segoe UI&#39;, Arial, sans-serif; font-size: 14px;&quot;&gt;class:&lt;/span&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;  &amp;nbsp;&lt;/span&gt;&lt;/pre&gt;
&lt;pre id=&quot;pre1&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;2000&lt;/span&gt;);
Robot r=new Robot();
r.keyPress(KeyEvent.VK_T);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_H);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_I);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_S);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_SPACE);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_I);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_S);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_SPACE);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_F);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_U);
Thread.sleep(&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;500&lt;/span&gt;);
r.keyPress(KeyEvent.VK_N); &lt;/pre&gt;
A starting delay of 2 secs is introduced so that Notepad gets a chance to open and our program writes in Notepad and not anywhere else.&lt;br /&gt;
After each letter, we introduced a delay of .5 sec so that it looks like someone is typing.&lt;br /&gt;
&lt;h3 style=&quot;color: #666666; font-size: 18px; font-weight: normal;&quot;&gt;
2) Screen Capture&lt;/h3&gt;
For this also, we will make use of the&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;Robot&amp;nbsp;&lt;/code&gt;class:&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain2&quot; style=&quot;border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-width: 0px 0px 1px; color: #005782; font-size: 11px; margin: 0px; padding: 0px; text-align: right;&quot; width=&quot;100%&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre id=&quot;pre2&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;Dimension size = Toolkit.getDefaultToolkit().getScreenSize();
Robot robot = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; Robot();
BufferedImage img = robot.createScreenCapture(&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; Rectangle(size));
File save_path=new File(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;screen.jpg&quot;&lt;/span&gt;);
ImageIO.write(img, &lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;JPG&quot;&lt;/span&gt;, save_path);  &lt;/pre&gt;
Here&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;Dimension&amp;nbsp;&lt;/code&gt;gets your screen size and puts&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;dimension&amp;nbsp;&lt;/code&gt;in the&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;size&amp;nbsp;&lt;/code&gt;variable.&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;createScreenCapture&amp;nbsp;&lt;/code&gt;function takes a screenshot.&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;ImageIO.write&lt;/code&gt;&amp;nbsp;is responsible for writing the screenshot as a JPG file.&lt;br /&gt;
&lt;h3 style=&quot;color: #666666; font-size: 18px; font-weight: normal;&quot;&gt;
3) Auto Downloader&lt;/h3&gt;
Here is a simple&amp;nbsp;&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;Java&lt;/span&gt;&amp;nbsp;program to download a file with&amp;nbsp;&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;Java&lt;/span&gt;:&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain3&quot; style=&quot;border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-width: 0px 0px 1px; color: #005782; font-size: 11px; margin: 0px; padding: 0px; text-align: right;&quot; width=&quot;100%&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre id=&quot;pre3&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;System.out.println(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;Enter the url to download from:&quot;&lt;/span&gt;);
BufferedReader input = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; BufferedReader(&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; InputStreamReader(System.in));
String site = input.readLine();
System.out.println(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;Enter filename&quot;&lt;/span&gt;);
BufferedReader input1 = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; BufferedReader(&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; InputStreamReader(System.in));
String filename = input.readLine();
&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.io.BufferedInputStream in = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.io.BufferedInputStream(&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt;   
&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.net.URL(site).openStream());
&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.io.FileOutputStream fos = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.io.FileOutputStream(filename);
&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;java&lt;/span&gt;.io.BufferedOutputStream bout = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; BufferedOutputStream(fos,&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;1024&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;byte&lt;/span&gt;[] data = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;byte&lt;/span&gt;[&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;1024&lt;/span&gt;];
&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;int&lt;/span&gt; i=0;
&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;while&lt;/span&gt;((i=in.read(data,&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;0&lt;/span&gt;,&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;1024&lt;/span&gt;))&amp;gt;=0)
{
 bout.write(data,&lt;span class=&quot;code-digit&quot; style=&quot;border: 0px; color: navy; margin: 0px; padding: 0px;&quot;&gt;0&lt;/span&gt;,i);
} &lt;/pre&gt;
Here, first you need to give the URL of file to download. Now you have to specify the name by which it will be saved like a&amp;nbsp;&lt;em style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;.zip&lt;/em&gt;. Here&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;in&amp;nbsp;&lt;/code&gt;variable is used to read the data obtained from URL and then this data is written to your system with the help of&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;bout&lt;/code&gt;.&lt;br /&gt;
&lt;h3 style=&quot;color: #666666; font-size: 18px; font-weight: normal;&quot;&gt;
4) Task Manager Processes&lt;/h3&gt;
It is very easy to list all processes that are&amp;nbsp;active in task manager. Just use this program:&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain4&quot; style=&quot;border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-width: 0px 0px 1px; color: #005782; font-size: 11px; margin: 0px; padding: 0px; text-align: right;&quot; width=&quot;100%&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre id=&quot;pre4&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;String line;
Process p = Runtime.getRuntime().exec(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;tasklist.exe&quot;&lt;/span&gt;);
BufferedReader input =
                &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; BufferedReader(&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; InputStreamReader(p.getInputStream()));
&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;while&lt;/span&gt; ((line = input.readLine()) != null) {
 System.out.println(line); &lt;span class=&quot;code-comment&quot; style=&quot;border: 0px; color: green; font-style: italic; margin: 0px; padding: 0px;&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot; style=&quot;border: 0px; color: green; font-style: italic; margin: 0px; padding: 0px;&quot;&gt;&amp;lt;-- Parse data here.
&lt;/span&gt;}
input.close();&lt;/pre&gt;
Here&amp;nbsp;&lt;em style=&quot;border: 0px; margin: 0px; padding: 0px;&quot;&gt;tasklist.exe&lt;/em&gt;&amp;nbsp;gives us all the running processes. We store all results inside a variable&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;input&amp;nbsp;&lt;/code&gt;from which we later list the result to output console.&lt;br /&gt;
&lt;h3 style=&quot;color: #666666; font-size: 18px; font-weight: normal;&quot;&gt;
5) ClipBoard Details&lt;/h3&gt;
It is very easy to get and set clipboard data. Here is a sample:&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain5&quot; style=&quot;border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-width: 0px 0px 1px; color: #005782; font-size: 11px; margin: 0px; padding: 0px; text-align: right;&quot; width=&quot;100%&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre id=&quot;pre5&quot; lang=&quot;Java&quot; style=&quot;background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); color: black; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 9pt; overflow: auto; padding: 6px; white-space: pre-wrap; word-wrap: break-word;&quot;&gt;Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
&lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;if&lt;/span&gt; (t != null &amp;amp;&amp;amp; t.isDataFlavorSupported(DataFlavor.stringFlavor)) {
 String text = (String)t.getTransferData(DataFlavor.stringFlavor);
 System.out.println(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;Current ClipBoard data is:\n&quot;&lt;/span&gt;+text);
 text=&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;I changed clipboard text&quot;&lt;/span&gt;;
 StringSelection ss = &lt;span class=&quot;code-keyword&quot; style=&quot;border: 0px; color: blue; margin: 0px; padding: 0px;&quot;&gt;new&lt;/span&gt; StringSelection(text);
 Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
 System.out.println(&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot; style=&quot;border: 0px; color: purple; margin: 0px; padding: 0px;&quot;&gt;Changed ClipBoard data is:\n&quot;&lt;/span&gt;+text);
} &lt;/pre&gt;
This program first retrieves the current clipboard content, shows it and then changes it.&lt;br /&gt;
&lt;h2 style=&quot;color: #ff9900; font-size: 20px; margin: 20px 0px 11px;&quot;&gt;
Points of Interest&lt;/h2&gt;
The&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;Robot&amp;nbsp;&lt;/code&gt;class may also be used to get pixel information and can even simulate mouse click.&lt;br /&gt;
The&amp;nbsp;&lt;code style=&quot;border: 0px; color: #990000; font-family: Consolas, &#39;Courier New&#39;, Courier, mono; font-size: 11pt; margin: 0px; padding: 0px;&quot;&gt;Runtime.getRuntime.exec()&lt;/code&gt;&amp;nbsp;gives the power to&amp;nbsp;&lt;span class=&quot;search-highlight&quot; style=&quot;border-bottom-color: rgb(255, 153, 0); border-bottom-style: dotted; border-width: 0px 0px 1px; font-weight: bold; margin: 0px; padding: 0px;&quot;&gt;Java&lt;/span&gt;&amp;nbsp;to execute Windows application directly.&lt;br /&gt;
The clipboard program can be enhanced further which can help you make a good desktop app.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/9157995771827779061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/cool-java-programs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/9157995771827779061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/9157995771827779061'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/10/cool-java-programs.html' title='Cool Java Programs'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-3687803170647764617</id><published>2012-09-30T13:01:00.004-07:00</published><updated>2012-09-30T13:01:42.427-07:00</updated><title type='text'>Some Java keywords and their meanings</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;&lt;i&gt;Some Java keywords and their meanings&lt;/i&gt;&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;

Hello ! Now i dont know why i am doing this but..i just kinda felt the need to write a blog as i ve not written one for a long time now. Anyways, people keep asking me about java keywords and what they mean, especially the beginners. So here it is folks! I am putting together not all but the difficult keywords that you may come across in Java. &lt;br/&gt;&lt;br/&gt;  
&lt;b&gt;1. strictfp -&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;

      The IEEE standard IEEE 754, specifies a standard method for both floating-point calculations and storage of floating-point values in either single (32-bit, used in Java floats) or double (64-bit, used in Java doubles) precision, and, for intermediate calculations, also extended precision formats. Prior to JVM(Java Virtual Machine) 1.2, floating-point calculations were strict; that is, all intermediate floating-point results were represented as IEEE single or double precisions only. As a consequence, errors of calculation (round-off errors), overflows and underflows, would occur with greater frequency than in architectures which did intermediate calculations in greater precision. Since JVM 1.2, intermediate computations are not limited to the standard 32- and 64- bit precisions. On platforms that can handle other representations e.g. 80-bit double extended on x86 or x86-64 platforms, those representations can be used, helping to prevent round-off errors and overflows, thereby increasing precision. For some applications, a programmer might need every platform to have precisely the same floating-point behavior, even on platforms that could handle greater precision.&lt;br/&gt;&lt;br/&gt;
                 The strictfp modifier accomplishes this by truncating all intermediate values to IEEE single- and double- precision, as occurred in earlier versions of the JVM.&lt;br/&gt; 
              Programmers can use the modifier strictfp to ensure that calculations are performed as in the earlier versions; that is, only with IEEE single and double precision types used. Using strictfp guarantees that results of floating-point calculations are identical on all platforms.&lt;br/&gt;
It can be used on classes, interfaces and non-abstract methods. When applied to a method, it causes all calculations inside the method to use strict floating-point math. When applied to a class, all calculations inside the class use strict floating-point math. Compile-time constant expressions must always use strict floating-point behavior.&lt;br/&gt;
           It makes sure that floating point calculations result precisely the same regardless of the underlying operating system and hardware platform, even if more precision could be obtained. This is compatible with the earlier version of Java 1.1 . If you need that use it.&lt;br/&gt;&lt;br/&gt;
Syntax for classes:&lt;br/&gt;
public strictfp class MyClass &lt;br/&gt;
{ &lt;br/&gt;
  //...&lt;br/&gt;
}&lt;br/&gt;
Syntax for methods:&lt;br/&gt;
public strictfp void method() &lt;br/&gt;
{ &lt;br/&gt;
  ...&lt;br/&gt;
}&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;2. native - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
      The Java native method is a great way to gain and merge the power of C or C++ programming into Java. To use Java as a scientific and high performance language, when efficient native Java compilers are not fully implemented, use native method can boost the performance to at least the speed of C compiled code.&lt;br/&gt;
                       &quot; native&quot; is a Java keyword that is used in method declarations to specify that the method will not be implemented in another language, not in Java. This keyword signals to the Java compiler that the function is a native language function i.e. its implementation for is written in another programming language because of the native keyword. For example you can write machine-dependent C code and invoke it from Java.&lt;br/&gt;&lt;br/&gt;
The usual means of write such methods is JNI (Java Native Interface). The Java Native Interface (JNI) comes with the standard Java Development Kit (JDK) from Sun Microsystems. It permits Java programmers to integrate native code (currently C and C++) into their Java applications. The Java Native Interface (JNI) is also known as programming framework, which lets a native method utilize Java objects in the same way that Java code uses these objects. The primary goal of JNI is binary compatibility of native method libraries across all Java virtual machine implementations on a given platform.&lt;br/&gt;&lt;br/&gt;

  The signature of native method looks like this: &lt;br/&gt;
public native void method();&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;3. transient -&lt;/b&gt; &lt;br/&gt;&lt;br/&gt;
      It is important to learn what is serialization in java before getting to the concept of Transient. So here it is.&lt;br/&gt;&lt;br/&gt;
Serialization - &lt;br/&gt;
       Serilization is the process of making the object’s state persistent. That means the state of the object is converted into stream of bytes and stored in a file. In the same way we can use the de-serilization concept to bring back the object’s state from bytes. This is one of the important concept in Java programming because this serilization is mostly used in the networking programming. The object’s which are needs to be transmitted through network has to be converted as bytes, for that purpose ever class or interface must implements Serilization interface. It is a marker interface without any methods.&lt;br/&gt;
What is Transient?&lt;br/&gt;
By default all the variables in the object are converted into the persistent state i.e. the stream of bytes when a class is declared as serializable. In some cases, you may want to avoid persisting some variables because you don’t have the necesscity to persist those varibale. So, you can declare those variables as transient. if the variable is declared as transient, then it will not be persisted. It is the main purpose of the transient keyword.&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;4. volatile - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
          If you are working with the multithreaded programming, the volatile keyword will be more useful. When multiple threads are using the same variable, each thread will have its own copy of the local cache for that variable. So, when it is updating the value, it is actually updated in the local cache not in the main variable memory. The other thread which is using the same variable doesn’t know anything about the values changed by the another thread. To avoid this problem, if you declare a variable as volatile, then it will not be stored in the local cache. Whenever thread are updating the values, it is updated to the main memory. So, other threads can access the updated value.&lt;br/&gt;&lt;br/&gt;
      
&lt;b&gt;5. static - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
         When you declare a method, a variable or even a nested class as static, it exists in that class independent of any object and more importantly, there exists just one copy of that entity. So whenever the static entity is used in the subclass it is called just by calling the Superclass.method()name and not by calling object.method() name. Whenever a change is made to the entity in any of the methods of extending class, the original entity itself is changed.&lt;br/&gt;
        The static keyword can be used in 3 scenarios.&lt;br/&gt;

   static variable&lt;br/&gt;&lt;br/&gt;
It is a variable which belongs to the class and not to object(instance)
Static variables are initialized only once , at the start of the execution . These variables will be initialized first, before the initialization of any instance variables&lt;br/&gt;
A single copy to be shared by all instances of the class&lt;br/&gt;
A static variable can be accessed directly by the class name and doesn’t need any object.&lt;br/&gt;
Syntax : &lt;class-name&gt;.&lt;variable-name&gt;&lt;br/&gt;&lt;br/&gt;

  static method&lt;br/&gt;
It is a method which belongs to the class and not to the object(instance)&lt;br/&gt;
A static method can access only static data. It can not access non-static data (instance variables)&lt;br/&gt;
A static method can call only other static methods and can not call a non-static method from it.&lt;br/&gt;
A static method can be accessed directly by the class name and doesn’t need any object&lt;br/&gt;
Syntax : &lt;class-name&gt;.&lt;method-name&gt;&lt;br/&gt;
A static method cannot refer to “this” or “super” keywords in anyway&lt;br/&gt;&lt;br/&gt;

   static blocks of code.&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;6. synchronized - &lt;/b&gt;&lt;br/&gt;
     The synchronized keyword is used in the multithreaded environment where more than one threads are to access an object, block of code or a method. By declaring the entity as synchronized, we allow only one thread to access it at a time, i.e. we aquire an exclusive lock on the entity. The methods used along with synchronized are notify() and wait(). This is useful when multiple threads are reading &amp; writing from a single file.&lt;br/&gt;&lt;br/&gt;
&lt;b&gt;7. final - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
       By declaring a variable as final, we declare it as a named constant which cannot be changed thereafter.&lt;br/&gt;
       By declaring a method as final, we mean that the method cannot be overriden.&lt;br/&gt;
          Whereas by declaring a class as final, we restrict any extension of the class, i.e there can be no subclasses.&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;8. finally - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
         The finally() method is mainly used with the exception handling in java.
      Now. Heres the deal. If you want a block of code to execute after the try() and catch() blocks have executed and you want that code to execute at all costs, even if the program throws an exception, then finally() method comes into action. Just put the code into the finally() block.&lt;br/&gt;&lt;br/&gt;

&lt;b&gt;9. instanceof - &lt;/b&gt;&lt;br/&gt;&lt;br/&gt;
           instanceof is a boolean operator and is used between two entities such that the object to its left is the type of the entity to its right. If the condition is met, it returns true.&lt;br/&gt;&lt;br/&gt;
 
&lt;b&gt;10. this -&lt;/b&gt; &lt;br/&gt;&lt;br/&gt;
             this keyword is used in java in the scenario where sometimes a method will need to refer to the object that invoked it. To allow this, Java defines the this keyword. this can be used inside any method to refer to the current object. That is, this is always a reference to the object on which the method was invoked. You can use this anywhere a reference to an object of the current class&#39; type is permitted.
For example look at the following code.&lt;br/&gt;&lt;br/&gt;

class A {&lt;br/&gt;
 ........&lt;br/&gt;
 B box = new B(width,height,length);&lt;br/&gt;
 .........&lt;br/&gt;
}&lt;br/&gt;
class B {&lt;br/&gt;
   int width;&lt;br/&gt;
   int height;&lt;br/&gt;
   int length;&lt;br/&gt;
   B(int width, int height, int length){&lt;br/&gt;
     this.width = width;&lt;br/&gt;
     this.height = height;&lt;br/&gt;
     this.length = length;&lt;br/&gt;
   }&lt;br/&gt;
 ............&lt;br/&gt;
}&lt;br/&gt;
  Here, three values are passed to the class B by class A as arguments. To, refer to the objects of the class B and not to the local variables inside the constructor, we use this keyword. Here we are storing the values of the arguments into the variables.
&lt;br/&gt;
Thanks.&lt;br/&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/3687803170647764617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/09/some-java-keywords-and-their-meanings.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/3687803170647764617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/3687803170647764617'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/09/some-java-keywords-and-their-meanings.html' title='Some Java keywords and their meanings'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-4725341984751349797</id><published>2012-01-11T09:25:00.000-08:00</published><updated>2012-01-11T09:25:17.862-08:00</updated><title type='text'>10 questions on cloud computing: An interview with Accenture&#39;s Jimmy Harris</title><content type='html'>Takeaway: As cloud solutions gain traction in the enterprise, new challenges are emerging. Accenture’s managing director of cloud computing looks at how businesses should address these challenges and how cloud technologies are changing the role of IT.&lt;br /&gt;
&lt;br /&gt;
What is cloud computing if not outsourcing? In the same way that Detroit began to adopt robotics into the auto industry in the 70s and 80s (an upcoming Transformers storyline portrays the Motor City of the next century as a global robotics manufacturing hub), the information industry will automate and specialize as new capabilities are developed. Outsourcing to the cloud is increasingly viewed as a source of competitive advantage, both in increased agility and cost savings, allowing a company to concentrate resources on its primary business. But how is outsourcing a CRM application different from outsourcing the call center?&lt;br /&gt;
&lt;br /&gt;
Jimmy Harris has become an expert in cloud technology as an extension of his experience with outsourcing. After completing a degree in finance at the University of Virginia, he began applying his interest in technology at Accenture. He has stayed with the consulting giant through every technological trend since 1980, from punch-card programming to systems-integration consulting. He has directed major technology projects for insurance and mortgage companies, banks and utilities. He was also managing director of customer contact services, focusing on reducing contact rates and handle times, as well as increasing customer satisfaction. Jimmy ran the company’s infrastructure outsourcing business from 2003 through last year. That’s when he was asked to define and manage Accenture’s growing range of cloud solutions.&lt;br /&gt;
&lt;br /&gt;
Note: This article is also available as a PDF download.&lt;br /&gt;
&lt;br /&gt;
1. Jeff: Coming from your outsourcing background to now working exclusively with cloud technology, do you see cloud services being very different from other kinds of outsourcing? Is it more a difference in degree than in kind?&lt;br /&gt;
&lt;br /&gt;
Jimmy: Cloud services in their purest form are outsourcing. They move the responsibility for a process or service to a third-party provider. Once you accept it on those terms, you have to evaluate cloud services similarly to the way you evaluate other outsourcing. The first thing to get in place is the right business environment and migration path. The alternatives have to be competitive on the bases of cost, capability, and performance. There are also security and functional requirements to take full advantage of moving to cloud services.&lt;br /&gt;
&lt;br /&gt;
2. Jeff: The financial model shifts away from a large capital outlay that is annuitized with future value tables and then compared to a business-as-usual approach, toward a cloud model of a simple monthly or annual fee. What other financial considerations come into play with the cloud?&lt;br /&gt;
&lt;br /&gt;
Jimmy: With software as a service, for example, you need to look at total cost of ownership; what it takes to implement, deploy, and integrate into the existing business processes. Do I have the appropriate governance models in place? Will I be able to effectively integrate the data and services across multiple service providers? What cost, if any, do upgrades add? What we see is that while cloud technology itself is less capital-intensive, there is still a need to consider those other factors in the total cost of cloud-based services.&lt;br /&gt;
&lt;br /&gt;
3. Jeff: What kinds of criteria are you looking at to determine whether a particular service is a good candidate for cloud outsourcing?&lt;br /&gt;
&lt;br /&gt;
Jimmy: Actually, there’s a tool we’ve designed called the Accenture Cloud Computing Assessment Tool, which looks at the technology workload and helps determine which segments are good candidates for cloud services for our clients. We look at how computing-intensive it is, how storage-intensive, the performance requirements, variability of demand patterns, security, and privacy requirements. We essentially map out the characteristics of the application workload to see if it’s appropriate for a company given their requirements in a cloud services option. The criteria we use are somewhat different from the traditional ISV selection. We look at more than a dozen categories to determine the appropriateness of the workload, and we continue to refine the criteria in the model as well as update our understanding of what is becoming available in the marketplace. As you can imagine, it’s a very dynamic environment. It’s literally changing every day.&lt;br /&gt;
&lt;br /&gt;
4. Jeff: Has the cloud enabled a democratization of business process and technology away from the gatekeepers, the way Photoshop or legal software has put things in the hands of the end user? How does that affect corporate structure?&lt;br /&gt;
&lt;br /&gt;
Jimmy: The governance model for information technology in larger enterprises needs to be thoroughly evaluated because of the phenomenon you’re describing. The momentum is toward more of a business-services orientation, with the value being in the ability of the business to select services that match their requirements and then acquire and dispose of those services in a much lower-friction way than they do today. So the role of IT changes considerably from a purveyor of service to being an integrator of service. IT needs to be involved because there are still considerations related to cost management, performance, security, and data placement, but the changes enable the business to behave in a much more independent way with its use of technology.&lt;br /&gt;
&lt;br /&gt;
5. Jeff: Does the need for an IT manager who excels at aggregation, brokerage, and arbitration require a new job description? What kind of person have you found to be good at this?&lt;br /&gt;
&lt;br /&gt;
Jimmy: It’s a person who has a combination of traditional governance, service management, and service integration capabilities. I see some companies that are better at recognizing this than others. The skills that are needed are ones that allow a person to understand and manage a multi-sourced environment, closely link the supplier and technology functions in the business, and understand the business even better than they do the specifics of the technologies. The emphasis has moved from being digital craftsmen to being integrators and arbiters of services with the intersection of skills to know what is economical, what will technically work, and what approach best matches the specific business environment.&lt;br /&gt;
&lt;br /&gt;
6. Jeff: Along with compatibility between services, what are the key requirements for moving to a service aggregator model?&lt;br /&gt;
&lt;br /&gt;
Jimmy: This is interesting, because some people view the service aggregator as an operations function, which it is in part. But as important as that aspect is, the service aggregator should be the driver of the migration from conventional service capabilities to cloud service capabilities. As much as we talk about responsibilities for aggregation and brokerage, the role of the service aggregator should be working in concert with the business technologists and purchasers from a dynamic roadmap. It should not only be able to interact, but also to drive the migration of new services and decommission the existing services with a sharp eye to gaining the best cost and performance. Much is written about provisioning and end-to-end SLA management, service catalogs, and CMDBs, and those are certainly important. But it’s not as much about being there as getting there.&lt;br /&gt;
&lt;br /&gt;
7. Jeff: How realistic is the premise that a business can go to market faster using cloud services?&lt;br /&gt;
&lt;br /&gt;
Jimmy: Particularly among small to medium businesses, there is a considerable advantage to using cloud services to go to market, whether it’s introducing new products and services or being able to expand geographically. There are also opportunities for large clients, specifically global companies. We’re working with a variety of companies on the idea of “minimum business infrastructure,” which is cloud-enabled and allows businesses to set up operations in a new geography quickly. It also lets them better integrate the supply chain or compress or shorten it by using cloud-based services or to deploy those services into a mobile environment more quickly. So even while we’re still somewhat early on with this, it’s easy to see how the availability of a set of standard services being acquired and deployed more rapidly could speed products and services to market and also to new geographies and segments more quickly.&lt;br /&gt;
&lt;br /&gt;
8. Jeff: One of the ways service providers are addressing security concerns is with a private cloud that operates behind a company’s existing firewall. How well does this work, in your experience?&lt;br /&gt;
&lt;br /&gt;
Jimmy: Well, people tend to be binary about the way they assess this and say the private cloud is secure and the public cloud is not. I don’t believe that’s the case. Enterprises that operate behind the firewall may reduce the risk of security issues, but it doesn’t completely mitigate or eliminate all the issues. A highly virtualized environment within the firewall requires a new a new set of security tests. Suddenly it’s not possible to physically contain system applications and data behind virtual LANs or with a physical separation of devices. The private cloud does provide a greater sense of security because it is behind the firewall, but it’s not a panacea. In general, security is a real concern as it relates to publicly available cloud services, and the service providers are responding with innovative approaches like the virtual private cloud and client partitions within the public cloud environment. I still see security as the single issue that is precluding much more rapid adoption of cloud services.&lt;br /&gt;
&lt;br /&gt;
9. Jeff: Do you see governments moving to regulate cloud services as “information utilities” at some point?&lt;br /&gt;
&lt;br /&gt;
Jimmy: I think regulation will be driven less by cloud services as generic utilities and more on the basis of the business being transacted in those utilities. Banking and healthcare will continue to be highly regulated, and there will always be certain regulations around pharmaceuticals. I don’t see it being based on the technology they run on as much as the nature of the product or service. What we may begin to see are tests devised to ensure that the technology is able to maintain compliance with those regulations. I believe we will need to deal with that on a global level. The EU directives that are coming out are much different from those we see in the United State. We tend to look at the commercial relationships and maintain a highly regulated environment in certain industry segments. Then China, for example, has a very different regulatory landscape altogether.&lt;br /&gt;
&lt;br /&gt;
10. Jeff: How do you see the challenge of managing and monitoring the service levels at the endpoints where the users are involved?&lt;br /&gt;
&lt;br /&gt;
Jimmy: That will continue to become harder. It’s not easy today, and I think there will be a heightened requirement to be able to fully explain how to monitor and manage service level compliance as projects become more distributed, potentially over multiple service providers. The market understands this requirement, so in engagements with many service providers there are tools that allow you to monitor services being deployed via the cloud. It’s important to ensure that the service components are included in the CMDB and to be able to monitor performance and availability consistent with the end user’s needs.&lt;br /&gt;
&lt;br /&gt;
Managing the endpoints is not always done well in today’s environment because of the multiple layers of technology required to deliver a service. For example, consider a hotel reservation system. The hotel cares about the availability of the reservation system, but what it really cares about is filling rooms. You need an end device, a local area network, a router, a switch, a circuit, another router, another switch, a load balancer, an application server, and a database server. All those things need to be in place and working today to be able to say, “Yes, I can make that reservation.” We use synthetic transactions to make sure each of those components is available. Not only to represent the availability of the end service, making the reservation, but also to anticipate the denigration in service going on, seeing that the database is slowing down, or that a router starts to bog down.&lt;br /&gt;
&lt;br /&gt;
What’s next is that this entire process is contracted. The potential is for the activity across the business process, from the sale to booking it in the ERP system, entering the order, sending the order to the factory, scheduling the build of the product and shipping it out, all that is virtualized.&lt;br /&gt;
&lt;br /&gt;
I think we’re still just at the beginning of the cloud phenomenon. We’re going to see more services introduced, a greater amount of interest and demand in the market, and more innovative applications of the technology to business concepts. One of the continuing outcomes will be more emphasis on the services themselves and less on the hardware and technology underneath, which translates to a greater focus on doing business.&lt;br /&gt;
&lt;br /&gt;
Jimmy Harris is the Managing Director of Cloud Services at Accenture and is based in Reston, Virginia.</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/4725341984751349797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/01/10-questions-on-cloud-computing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/4725341984751349797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/4725341984751349797'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/01/10-questions-on-cloud-computing.html' title='10 questions on cloud computing: An interview with Accenture&#39;s Jimmy Harris'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-7816003641296089758</id><published>2012-01-11T09:22:00.000-08:00</published><updated>2012-01-11T09:22:13.069-08:00</updated><title type='text'>solutions to 5 common problems in ajax</title><content type='html'>The modern web developer who does not consider Ajax when planning or building their websites is potentially missing out on a powerful tool to enhance usability.&lt;br /&gt;
&lt;br /&gt;
There are however, challenges in implementing Ajax functionality on a web page.&lt;br /&gt;
&lt;br /&gt;
In this article we’ll discuss solutions to five of the most common challenges that a developer faces when using Ajax to enhance the content on their website.&lt;br /&gt;
&lt;br /&gt;
Although there is a lot more to discuss and research on all five topics, this post should give beginners and intermediate Ajax developers some solid tips on implementing Ajax functionality in a more user-friendly and accessible manner.&lt;br /&gt;
&lt;b&gt;Problem #1: Content Is Not Backwards-Compatible&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
This problem occurs when a designer has incorporated JavaScript and Ajax enhancements into their website’s architecture without making provisions for browsers that have disabled JavaScript.&lt;br /&gt;
&lt;br /&gt;
Nothing is wrong with planning a website with JavaScript and Ajax; in fact, in today’s market, JavaScript considerations should be integral to the planning process. But you should still ensure that the website is backwards-compatible (or that it degrades gracefully) upon launch.&lt;br /&gt;
Solution: Implement Ajax as an Enhancement to an Already-Functioning Website&lt;br /&gt;
&lt;br /&gt;
While Ajax may be integral to your planning of the website’s architecture, ensure that all content is accessible through conventional server-side methods.&lt;br /&gt;
&lt;br /&gt;
Let’s say you have an “Employee Information” page that has a separate link for each employee. Using server-side technology, you could display the content for a particular employee based on a value passed through the query string, like this:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;employees?view=CEO&quot;&gt;John Doe - CEO&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;employees?view=VP&quot;&gt;Frank Smith - Vice President&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;employees?view=Accountant&quot;&gt;Jim Williams - Accountant&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
All of the links above point to the same page, the “Employees” page, which changes according to the variable in the query string. Each employee’s information would be loaded from the server, which could be done in a number of ways: via server-side includes; through a database; or even using XML.&lt;br /&gt;
&lt;br /&gt;
Whichever employee link is clicked, the full page would have to load in order for the requested information to be delivered.&lt;br /&gt;
&lt;br /&gt;
So, the content is fully accessible before any Ajax enhancements are layered on top. Then, using JavaScript, the full page refresh could be interrupted and the content loaded instead via Ajax. The clicked link could be identified by an ID or by checking the value of the HREF attribute in the anchor.&lt;br /&gt;
&lt;br /&gt;
Although the content is fully accessible with JavaScript disabled, most users will see the enhanced Ajax-driven version.&lt;br /&gt;
&lt;br /&gt;
Problem #2: The Browser’s Loading Indicator Isn’t Triggered by Ajax Requests&lt;br /&gt;
&lt;br /&gt;
Almost every browser has a way of visually indicating to the user that content is loading. In current browsers, the indicator appears on the tab that’s loading the content.&lt;br /&gt;
&lt;br /&gt;
The images below show this animated indicator from a few popular browsers.&lt;br /&gt;
&lt;br /&gt;
IE Browser Loading&lt;br /&gt;
Internet Explorer’s loading indicator is a solid circle with a gradient that spins while the content loads.&lt;br /&gt;
&lt;br /&gt;
Firefox Browser Loading&lt;br /&gt;
Firefox displays a similar icon of small spinning circles in different shades of gray.&lt;br /&gt;
&lt;br /&gt;
Chrome Browser Loading&lt;br /&gt;
Google Chrome spins a half-circle.&lt;br /&gt;
&lt;br /&gt;
The problem is that Ajax requests do not trigger this “loading” indicator that is built into browsers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Solution: Insert a Similar Loading Indicator Near Content That’s Loading&lt;br /&gt;
&lt;br /&gt;
The common solution to this is to incorporate a custom progress indicator into the Ajax request. A number of websites offer free “Ajax loading” graphics.&lt;br /&gt;
&lt;br /&gt;
Preloader.net&lt;br /&gt;
Preloaders.net has a number of fancy, customizable animated graphics to choose from.&lt;br /&gt;
&lt;br /&gt;
Implementing this custom loading graphic, or progress indicator, into your website’s Ajax functionality is simply a matter of showing and hiding it at the appropriate times via JavaScript.&lt;br /&gt;
&lt;br /&gt;
Your Ajax code will include lines of code that tell you if the request is in progress or completed. Using JavaScript, you can show the animated graphic while the request is being processed and then hide it when the action has completed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problem #3: The User Doesn’t Know That an Ajax Request Has Completed&lt;br /&gt;
&lt;br /&gt;
This is related to the previous problem but is often overlooked, because the developer might assume that the disappearance of the “loading” indicator suffices to inform the user that the content has completely loaded. But in most cases, definitively indicating that content has been updated or refreshed is better.&lt;br /&gt;
Solution: Use a Distinct “Request Completed” Message&lt;br /&gt;
&lt;br /&gt;
This can be done similar to how form submissions are confirmed. After a link has been submitted on Digg, the page lets you know very clearly that your submission has been received:&lt;br /&gt;
&lt;br /&gt;
Digg&#39;s Form Submitted Indicator&lt;br /&gt;
&lt;br /&gt;
Although this particular indicator does not point out a completed Ajax request, the principle is the same: the “Success” box appears after the page that submits the form has finished loading, and the box is colorful and distinct.&lt;br /&gt;
&lt;br /&gt;
A similar graphic or indicator could be used at the end of an Ajax request to tell users that content has been updated. This would be implemented in addition to, not instead of, the progress indicator proposed for the previous problem.&lt;br /&gt;
&lt;br /&gt;
A similar but subtler way to indicate that an area of content has been updated is the yellow fade technique. This method is familiar to users, unobtrusive and works well with Ajax-loaded content.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problem #4: Ajax Requests Cannot Access Third-Party Web Services&lt;br /&gt;
&lt;br /&gt;
The XMLHttpRequest object, which is at the root of all Ajax requests, is restricted to making requests on the same domain as the page making the request. But there are instances when you would want to access third-party data via an Ajax request. Many web services make their data accessible via an API.&lt;br /&gt;
Solution: Use Your Server as a Proxy&lt;br /&gt;
&lt;br /&gt;
The solution to this problem is to use your server as a proxy between the third-party service and browser. Although the details of this solution are far beyond the scope of this article, we’ll go over the basic principle at work.&lt;br /&gt;
&lt;br /&gt;
Because an Ajax request originates in the client’s browser, it must reference a file at another location but on the same domain as the source of the request.&lt;br /&gt;
&lt;br /&gt;
Your server, however, unlike the client’s browser, is not limited in this way. So, when the page on your server is called, it runs in the background as it normally would but with access to any domain.&lt;br /&gt;
&lt;br /&gt;
This doesn’t present any security risk to the user because the requests to the third-party service are made on your server. So, once the information has been obtained at the server level, the next step in the Ajax call is to send a response back to the client, which in this case would include the data obtained from the third-party web service.&lt;br /&gt;
&lt;br /&gt;
Using Your Server as a Proxy to Access Web Services&lt;br /&gt;
&lt;br /&gt;
If you want more details on this powerful method of combining web-service access with custom Ajax, definitely check out other resources, some of which are listed below.&lt;br /&gt;
Further Reading:&lt;br /&gt;
&lt;br /&gt;
    Use a Web Proxy for Cross-Domain XMLHttpRequest Calls&lt;br /&gt;
    Cross Domain Ajax: a Quick Summary&lt;br /&gt;
    Cross domain AJAX querying with jQuery&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problem #5: Deep Linking is Not Available&lt;br /&gt;
&lt;br /&gt;
This is a trickier issue but may not be required depending on your type of website or application. The problem occurs when content is loaded via Ajax and then the “state” of the website is changed without the URL that points to the page being affected.&lt;br /&gt;
&lt;br /&gt;
If the user returns to the page via a bookmark or shares the link with a friend, the updated content will not be automatically displayed. The website would instead revert to its original state. Flash websites used to have the same problem: they did not allow users to link to anything but the initial screen.&lt;br /&gt;
Solution: Use Internal Page Anchors&lt;br /&gt;
&lt;br /&gt;
To ensure that a particular “state” on an Ajax-driven web page is linkable and bookmarkable, you can use internal page links, which modify the URL but don’t refresh the page or affect its vertical position.&lt;br /&gt;
&lt;br /&gt;
This simple code demonstrates how this is done:&lt;br /&gt;
&lt;br /&gt;
var currentAnchor = document.location;&lt;br /&gt;
currentAnchor = String(currentAnchor);&lt;br /&gt;
currentAnchor = currentAnchor.split(&quot;#&quot;);&lt;br /&gt;
&lt;br /&gt;
if (currentAnchor.length &gt; 1) {&lt;br /&gt;
 currentAnchor = currentAnchor[1];&lt;br /&gt;
} else {&lt;br /&gt;
 currentAnchor = currentAnchor[0];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
switch(currentAnchor) {&lt;br /&gt;
 case &quot;section1&quot;:&lt;br /&gt;
 // load content for section 1&lt;br /&gt;
 break;&lt;br /&gt;
&lt;br /&gt;
 case &quot;section2&quot;:&lt;br /&gt;
 // load content for section 2&lt;br /&gt;
 break;&lt;br /&gt;
&lt;br /&gt;
 case &quot;section3&quot;:&lt;br /&gt;
 // load content for section 3&lt;br /&gt;
 break;&lt;br /&gt;
&lt;br /&gt;
 default:&lt;br /&gt;
 // load content for section 1&lt;br /&gt;
 break;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
The above is not a functioning piece of code but rather a theoretical example to demonstrate the main steps involved.&lt;br /&gt;
&lt;br /&gt;
The first two lines of code put the current page location (URL) in a variable. Then the location is converted to a string so that we can manipulate it.&lt;br /&gt;
&lt;br /&gt;
Next, we “split” the string into two parts via the anchor symbol (#) and subsequently check to see if the array that is created from the split is greater than one item. Greater than one item means that the URL has an anchor.&lt;br /&gt;
&lt;br /&gt;
If the URL has only one part, that means no anchor is present. The subsequent “switch” statement loads content according to the value of the anchor. The switch statement has a “default” option in case no anchor is present, which would be the same as loading the page in its original state.&lt;br /&gt;
&lt;br /&gt;
Furthermore, we would apply code to deal with links that point directly to specific content through internal anchors. A link that points to “content2″ would load the content in “content2,” and the string “#content2″ would be appended to the current URL.&lt;br /&gt;
&lt;br /&gt;
This would change the URL by adding an internal anchor, without changing the view of the page but preserving an identifier that indicates the desired state of the page.&lt;br /&gt;
&lt;br /&gt;
This explanation is only theory. The concept works, and it works very well. But I haven’t explained all of the possibilities, drawbacks and other subtleties of building a website or page in this manner.&lt;br /&gt;
&lt;br /&gt;
Follow the links below for a more comprehensive discussion of the topic, or experiment with it yourself. Also, note that this can be tested using content that changes with JavaScript alone, and doesn’t need to utilize Ajax.</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/7816003641296089758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/01/solutions-to-5-common-problems-in-ajax.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/7816003641296089758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/7816003641296089758'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2012/01/solutions-to-5-common-problems-in-ajax.html' title='solutions to 5 common problems in ajax'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-8630957581157546146</id><published>2011-10-21T08:17:00.000-07:00</published><updated>2011-10-21T08:17:54.912-07:00</updated><title type='text'>exams knocking the door..</title><content type='html'>&lt;i&gt;Life is going good. Semester exams start on 3rd nov. &lt;br /&gt;
&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/8630957581157546146/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/exams-knocking-door.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/8630957581157546146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/8630957581157546146'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/exams-knocking-door.html' title='exams knocking the door..'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-1770216797771293554</id><published>2011-10-05T15:29:00.000-07:00</published><updated>2012-10-21T12:57:44.649-07:00</updated><title type='text'>Those who run body shops should not comment on IITs: Chetan Bahagat to Narayana Murthy</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h6 class=&quot;uiStreamMessage&quot; data-ft=&quot;{&amp;quot;type&amp;quot;:1}&quot;&gt;
&lt;span class=&quot;messageBody translationEligibleUserMessage&quot; data-ft=&quot;{&amp;quot;type&amp;quot;:3}&quot; style=&quot;font-size: small;&quot;&gt;Mr.  Bhagat. Its great that you have come to the rescue of the IIT  fraternity and its students. Before you fireball people like Mr. Narayan  Murthy i think its time for you to realise what he means to the nation.  He does far more important job compared to writing storybooks or being a  loudmouth.&lt;br /&gt;
You say that IITans are very smart people. Well i dont think so ! I mean you can take the example of your&lt;span class=&quot;text_exposed_show&quot;&gt;self.&lt;br /&gt;
You were an IITan too, a person from engineering background. What use  did you make of it? You became a writer eventually. Thats so stupid !  Making money is not everything. Sometimes making sense with what you do  matters more..&lt;br /&gt;
And as far as your comments on Mr. Narayan Murthy are  concerned , He is running an IT company as big as Infosys...  not writing storybooks !!You should think 100 times before questioning  his comments.&lt;br /&gt;
I think he is totally right.&lt;/span&gt;&lt;/span&gt;&lt;/h6&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/1770216797771293554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/those-who-run-body-shops-should-not.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1770216797771293554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1770216797771293554'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/those-who-run-body-shops-should-not.html' title='Those who run body shops should not comment on IITs: Chetan Bahagat to Narayana Murthy'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-4811838682567909808</id><published>2011-10-05T12:53:00.000-07:00</published><updated>2011-10-05T12:53:30.906-07:00</updated><title type='text'>IITs...THE BEST??? or just a SHOW OFF !!</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Controversial topic .Isnt it? IITs have created such a havoc in the young minds that every single school student dreams about getting into it. Truely speaking , i just want to ask one question to all . Is it really worth it? Arent the IITs over rated?I surely would say so.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I mean if you look at the education system of the IITs , they do not lay stress on innovations and research unlike other lower ranking colleges like Anna University CEG ,BHU ,BITS Pilani and some others.How many awards have the IITS got on the global level for their contribution in science and technology? I guess none. In my opinion, IITs are places where people with extraordinary hardworking capabilities and somewhat good brains converge under one campus to compete for 4 years of long run which ends with either an overpaid job or with preparations for the MBAs.Its not that they are the best. The best are out there on the streets struggling in average colleges with low grade faculties and insufficiency of engineering infrastructure and guidance.&lt;br /&gt;
If you look at the IITans , they are spoon feeded in each paper and they do have backup support of some of the finest engineering faculties of the nation! So why wouldnt it create some difference? Oh yes it does !&lt;br /&gt;
 &lt;br /&gt;
Even then , every year , IITans face tough rivalry from other low ranking institutions when it comes to being technically sound, presenting papers on technologies, international seminars and technical fests.&lt;br /&gt;
&lt;br /&gt;
As if this wasnt enough, the companies going in the IITs have made the situation worse. Flawless packages..this is what makes the difference. Do i still have to explain why IITs are peoples favorite?&lt;br /&gt;
 &lt;br /&gt;One could see clear difference between the treatment that an IITan and a student from low ranking institution gets from the company when they go in for recruitment. I mean .. this is insane! This needs to be stopped. The blame is on the companies. They are responsible for all the imbalance caused. You cant ignore 4 years of hard work in engineering just because the guy is not an IITan.&lt;br /&gt;
The bottom line is, we should stop seeing the tag , and start looking at the quality.&lt;br /&gt;
&lt;br /&gt;
thanks.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/4811838682567909808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/iitsthe-best-or-just-show-off.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/4811838682567909808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/4811838682567909808'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/iitsthe-best-or-just-show-off.html' title='IITs...THE BEST??? or just a SHOW OFF !!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-7754372439232457946</id><published>2011-10-04T13:07:00.000-07:00</published><updated>2011-10-04T13:07:58.872-07:00</updated><title type='text'>Far ahead... i see the shore.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;As time flies by... i see we have lived our four years of engineering. The last sem is knocking the doors, and all we got ahead is the road to the dead end..&lt;br /&gt;
&amp;nbsp;Busy with all the pressures, CGPAs , tests ,job preparations and stuff..we all ..somewhere or the other, do realise that this time... this very moment that we are sharing ... will not come back.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;So ..lets give it a cheers.Let us celebrate for what awesome time we had together... My friends...Kaushal ,Kunal, Pawan , and all others... friends i am lucky to have you all , and i wish we could be together always like we have always been. Far ahead in time, when you all would be sitting in your cabin in your office..that phone on your desk would ring...i promise. Saalo pehchaan lena. Nahi to marunga pakad ke.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/7754372439232457946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/far-ahead-i-see-shore.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/7754372439232457946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/7754372439232457946'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/10/far-ahead-i-see-shore.html' title='Far ahead... i see the shore.'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3649774551117530821.post-1657306067727234787</id><published>2011-08-30T14:35:00.000-07:00</published><updated>2011-08-30T14:35:13.549-07:00</updated><title type='text'>The dark</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;all he could see was dark... had no idea where he was heading..sadness stirred inside him and a teardrop trickled down his face.. then a meteor shot up into the sky as he looked up. A fire raged in his heart as the fireball passed the horizon... As he looked up in the sky ,you could see a faint reflection in his tearful eyes.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepaktrivedi1.blogspot.com/feeds/1657306067727234787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/08/dark.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1657306067727234787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3649774551117530821/posts/default/1657306067727234787'/><link rel='alternate' type='text/html' href='http://deepaktrivedi1.blogspot.com/2011/08/dark.html' title='The dark'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/08387026931405234263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>