<?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-5010050740608224005</id><updated>2024-09-05T22:35:57.966-07:00</updated><category term="Linux on VM"/><category term="Ubuntu Linux"/><category term="Virtual Machine"/><category term="3"/><category term="Animation"/><category term="Application"/><category term="Buiding"/><category term="CRM"/><category term="Compiere 3"/><category term="Customer Relationship Management"/><category term="Database Report"/><category term="Developing"/><category term="Facebook"/><category term="Getting"/><category term="Product Management"/><category term="SketchUp"/><category term="Started"/><category term="SugerCRM"/><category term="WordPress"/><category term="iReport"/><category term="workflow"/><title type='text'>Learn At Home</title><subtitle type='html'>Learn everything you want from here because knowledge provided here through simplicity</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5010050740608224005.post-720688010991454729</id><published>2011-02-25T09:27:00.000-08:00</published><updated>2011-02-25T09:33:56.356-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3"/><category scheme="http://www.blogger.com/atom/ns#" term="Getting"/><category scheme="http://www.blogger.com/atom/ns#" term="Started"/><category scheme="http://www.blogger.com/atom/ns#" term="WordPress"/><title type='text'>Getting Started with WordPress 3</title><content type='html'>This article will guide you through the process of setting up WordPress and customizing its basic features. You can choose between a couple of options regarding where your WordPress installation will live. Keep in mind that WordPress is relatively small (under 10 MB), easy to install, and easy to administer.&lt;br /&gt;
&lt;br /&gt;
In this article, you will learn how to:&lt;br /&gt;
&lt;br /&gt;
* Create a free blog on WordPress.com&lt;br /&gt;
* Install WordPress manually on your web host&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
WordPress is available in easily downloadable formats from its website, &lt;a href=&quot;http://wordpress.org/download/&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://wordpress.org/download/&lt;/a&gt;. WordPress is a free, open source application, and is released under GNU &lt;b&gt;General Public License&lt;/b&gt; (&lt;b&gt;GPL&lt;/b&gt;).  This means that anyone who produces a modified version of software  released under the GPL is required to keep those same freedoms, that  people buying or using the software may also modify and redistribute,  attached to his or her modified version. This way, WordPress and other  software released under GPL are kept open source.&lt;br /&gt;
&lt;h1&gt;Where to build your WordPress website&lt;/h1&gt;The first decision you have to make is where your blog is going to  live. You have two basic options for the location where you will create  your site. You can:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Use WordPress.com&lt;/li&gt;
&lt;li&gt;Install on a server (hosted or your own)&lt;/li&gt;
&lt;/ul&gt;Let&#39;s look at some of the advantages and disadvantages of each of these two choices.&lt;br /&gt;
The advantage of using WordPress.com is that &lt;b&gt;they take care of all of the technical details for you&lt;/b&gt;.  The software is already installed; they&#39;ll upgrade it for you whenever  there&#39;s an upgrade; and you&#39;re not responsible for anything else. Just  manage your content! The big disadvantage is that &lt;b&gt;you lose almost all of the theme and plugin control&lt;/b&gt;  you&#39;d have otherwise. WordPress.com will not let you upload or edit  your own theme, though it will let you (for a fee) edit the CSS of any  theme you use. WordPress.com will not let you upload or manage plugins  at all. Some plugins are installed by default (most notably &lt;b&gt;Akismet&lt;/b&gt;,  for spam blocking, and a fancy statistics plugin), but you can neither  uninstall them nor install others. Additional features are available for  a fee as well.&lt;br /&gt;
The following table is a brief overview of the essential differences  between using WordPress.com versus installing WordPress on your own  server:&lt;br /&gt;
&lt;table align=&quot;center&quot; border=&quot;1&quot; cellpadding=&quot;4&quot; style=&quot;border: 1px solid rgb(0, 0, 0);&quot;&gt;&lt;tbody&gt;
&lt;tr&gt; &lt;td&gt; &lt;br /&gt;
&lt;/td&gt; &lt;td&gt;&lt;b&gt;WordPress.com&lt;/b&gt;&lt;/td&gt; &lt;td&gt;&lt;b&gt;Your own server&lt;/b&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Installation&lt;/b&gt;&lt;/td&gt; &lt;td&gt;You don&#39;t have to install anything, just sign up&lt;/td&gt; &lt;td&gt;Install WordPress yourself, either manually or via your host&#39;s control panel (if offered)&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Themes&lt;/b&gt;&lt;/td&gt; &lt;td&gt;Use any theme made available by WordPress.com&lt;/td&gt; &lt;td&gt;Use any theme available anywhere, written by anyone (including yourself)&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Plugins&lt;/b&gt;&lt;/td&gt; &lt;td&gt;No ability to choose or add plugins&lt;/td&gt; &lt;td&gt;Use any plugin available anywhere, written by anyone (including yourself)&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Upgrades&lt;/b&gt;&lt;/td&gt; &lt;td&gt;WordPress.com provides automatic upgrades&lt;/td&gt; &lt;td&gt;You have to upgrade it yourself when upgrades are available&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Widgets&lt;/b&gt;&lt;/td&gt; &lt;td&gt;Widget availability depends on available themes&lt;/td&gt; &lt;td&gt;You can widgetize any theme yourself&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Maintenance&lt;/b&gt;&lt;/td&gt; &lt;td&gt;You don&#39;t have to do any maintenance&lt;/td&gt; &lt;td&gt;You&#39;re responsible for the maintenance of your site&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Advertising&lt;/b&gt;&lt;/td&gt; &lt;td&gt;No advertising allowed&lt;/td&gt; &lt;td&gt;Advertise anything&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt; &lt;/table&gt;&lt;h1&gt;Using WordPress.com&lt;/h1&gt;WordPress.com (&lt;a href=&quot;http://wordpress.com/&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://wordpress.com&lt;/a&gt;)  is a free service provided by the WordPress developers, where you can  register a blog or non-blog website easily and quickly with no hassle.  However, because it is a hosted service, your control over some things  will be more limited than it would be if you hosted your own WordPress  website. As mentioned before, WordPress.com will not let you edit or  upload your own themes or plugins. Aside from this, WordPress.com is a  great place to maintain your personal site if you don&#39;t need to do  anything fancy with a theme. To get started, go to &lt;a href=&quot;http://wordpress.com/&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://wordpress.com&lt;/a&gt;, which will look something like the following:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_1.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;To register your free website, click on the loud orange-and-white &lt;b&gt;Sign up now&lt;/b&gt;  button. You will be taken to the signup page. In the following  screenshot, I&#39;ve entered my username (what I&#39;ll sign in with) and a  password (note that the password measurement tool will tell you if your  password is strong or weak), as well as my e-mail address. Be sure to  check the &lt;b&gt;Legal flotsam&lt;/b&gt; box and leave the &lt;b&gt;Gimme a blog!&lt;/b&gt; radio button checked. Without it, you won&#39;t get a website.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_2.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;After providing this information and clicking on the &lt;b&gt;Next&lt;/b&gt; button, WordPress will ask for other choices (&lt;b&gt;Blog Domain&lt;/b&gt;, &lt;b&gt;Blog Title&lt;/b&gt;, &lt;b&gt;Language&lt;/b&gt;, and &lt;b&gt;Privacy&lt;/b&gt;),  as shown in following screenshot. You can also check if it&#39;s a private  blog or not. Note that you cannot change the blog domain later! So be  sure it&#39;s right.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_3.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;After providing this information and clicking on &lt;b&gt;Signup&lt;/b&gt;, you  will be sent to a page where you can enter some basic profile  information. This page will also tell you that your account is set up,  but your e-mail ID needs to be verified. Be sure to check your inbox for  the e-mail with the link, and click on it. Then, you&#39;ll be truly done  with the installation.&lt;br /&gt;
&lt;h1&gt;Installing WordPress manually&lt;/h1&gt;The WordPress application files can be downloaded for free if you  want to do a manual installation. If you&#39;ve got a website host, this  process is extremely easy and requires no previous programming skills or  advanced blog user experience.&lt;br /&gt;
Some web hosts offer automatic installation through the host&#39;s online  control panel. However, be a little wary of this because some hosts  offer automatic installation, but they do it in a way that makes  updating your WordPress difficult or awkward, or restricts your ability  to have free rein with your installation in the future.&lt;br /&gt;
&lt;h2&gt;Preparing the environment&lt;/h2&gt;A good first step is to make sure you have an environment setup that  is ready for WordPress. This means two things: making sure that you  verify that the server meets the minimum requirements, and making sure  that your database is ready.&lt;br /&gt;
For WordPress to work, your web host must provide you with a server that does the following two things:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Support PHP, which must be at least Version 4.3.&lt;/li&gt;
&lt;li&gt;Provide you with write access to a MySQL database. MySQL has to be at least Version 4.1.2.&lt;/li&gt;
&lt;/ul&gt;You can find out if your host meets these two requirements by  contacting your web host. If your web server meets these two basic  requirements, you&#39;re ready to move on to the next step.&lt;br /&gt;
As far as web servers go, Apache is the best. However, WordPress will  also run on a server running the Microsoft IIS server (though using &lt;b&gt;permalinks&lt;/b&gt; will be difficult, if possible at all).&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;&lt;b&gt;Enabling mod_rewrite to use pretty permalinks&lt;/b&gt;&lt;br /&gt;
If you want to use &lt;b&gt;permalinks&lt;/b&gt;,  your server must be running Unix, and Apache&#39;s mod_rewrite option must  be enabled. Apache&#39;s mod_rewrite is enabled by default in most web  hosting accounts. If you are hosting your own account, you can enable  mod_rewrite by modifying the Apache web server configuration file. You  can check the URL &lt;a href=&quot;http://www.tutorio.com/&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://www.tutorio.com/tutorial/enable-mod-rewrite-on-apache&lt;/a&gt;  to learn how to enable mod_rewrite on your web server. If you are  running on shared hosting, then ask your system administrator to install  it for you. However, it is more likely that you already have it  installed on your hosting account.&lt;/i&gt;&lt;/div&gt;&lt;h2&gt;Downloading WordPress&lt;/h2&gt;Once you have checked out your environment, you need to download WordPress from &lt;a href=&quot;http://wordpress.org/download/&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://wordpress.org/download/&lt;/a&gt;. Take a look at the following screenshot in which the download links are available on the right side:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_4.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;The &lt;i&gt;.zip&lt;/i&gt; file is shown as a big blue button because that&#39;ll be  the most useful format for the most people. If you are using Windows,  Mac, or Linux operating systems, your computer will be able to unzip  that downloaded file automatically. (The &lt;i&gt;.tar.gz&lt;/i&gt; file is provided because some Unix users prefer it.)&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;A further note on  location We&#39;re going to cover installing WordPress remotely. However, if  you plan to develop themes or plugins, I suggest that you also install  WordPress locally on your own computer&#39;s server. Testing and deploying  themes and plugins directly to the remote server will be much more  time-consuming than working locally. If you look at the screenshots I  will be taking of my own WordPress installation, you&#39;ll notice that I&#39;m  working locally (for example, &lt;i&gt;http://wpbook:8888/&lt;/i&gt; is a local URL).&lt;/i&gt;&lt;/div&gt;After you download the WordPress &lt;i&gt;.zip&lt;/i&gt; file, extract the files, and you&#39;ll get a folder called wordpress. It will look like the following screenshot:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_5.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;h2&gt;Uploading the files&lt;/h2&gt;Now, we need to upload all these files to our web server using any  FTP client (or simply put them in our local server directory on our  local computer). FTP stands for File Transfer Protocol. There are  several FTP clients available on the Internet, which are either freeware  (no cost) or as shareware (a small fee). If you don&#39;t already have an  FTP client, try one of these:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Filezilla— &lt;a href=&quot;http://filezilla-project.org/download.php?type=client&quot; target=&quot;_Blank&quot; title=&quot;Filezilla&quot;&gt;http://filezilla-project.org/download.php?type=client&lt;/a&gt; (for Mac or Windows)&lt;/li&gt;
&lt;li&gt;Fetch— &lt;a href=&quot;http://fetchsoftworks.com/&quot; target=&quot;_Blank&quot; title=&quot;Fetch&quot;&gt;http://fetchsoftworks.com/&lt;/a&gt; (for Mac only)&lt;/li&gt;
&lt;li&gt;SmartFTP— &lt;a href=&quot;http://www.smartftp.com/&quot; target=&quot;_Blank&quot; title=&quot;SmartFTP&quot;&gt;http://www.smartftp.com/&lt;/a&gt; (for Windows only)&lt;/li&gt;
&lt;/ul&gt;You can also use the popular web-based FTP application net2ftp at &lt;a href=&quot;http://www.net2ftp.com/&quot; target=&quot;_Blank&quot; title=&quot;NetFTP&quot;&gt;http://www.net2ftp.com&lt;/a&gt;.  These services are useful if you don&#39;t want to install a desktop  application on your computer. You can also check if your host provides  browser-based FTP software.&lt;br /&gt;
In my screenshots you&#39;ll see that I&#39;m using Transmit, which is the  professional FTP software I use on my Mac. It works the same way as the  examples above.&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;A note about  security: whenever possible, you should use Secure FTP (called sFTP)  rather than regular FTP. If you&#39;re using sFTP, all of the data sent and  received are encrypted, whereas with FTP, data are sent in plain text  and can be easily nabbed by hackers. Check both your FTP software and  your hosting options, and select sFTP if it&#39;s available.&lt;/i&gt;&lt;/div&gt;Using your FTP client or service, connect to your FTP server using  the server address, username, and password provided to you by your host.  Next, open the folder where you want WordPress to live. You may want to  install WordPress in your root folder, which will mean that visitors  will see your WordPress website&#39;s home page when they go to your main  URL—for example, &lt;i&gt;http://yoursite.com&lt;/i&gt;. Alternatively, you may want to install WordPress in a subfolder; for example: &lt;i&gt;http://yoursite.com/blog/&lt;/i&gt;.&lt;br /&gt;
On the left side, you will see the files from your local folder, and  on the right side you will see your remote folder. (Note: the FTP client  you are using may have a slightly different layout, but this is the  general idea):&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; onmouseout=&quot;this.src=&#39;/sites/default/files/Article-Images/4101os_ch2_6.png&#39;;this.width=550&quot; onmouseover=&quot;this.src=&#39;/sites/default/files/Article-Images/4101os_ch2_6.png&#39;;this.width=750&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_6.png&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot; style=&quot;margin-left: 40px;&quot;&gt;&lt;i&gt;(Move the mouse over the image to enlarge.)&lt;/i&gt;&lt;/div&gt;Now select all of the WordPress files on your local machine from the  left pane, and drag all of them to the right pane. You can watch as your  FTP client uploads the files one at a time and they appear in the right  panel. This could take a few minutes, so be patient!&lt;br /&gt;
If you&#39;re installing WordPress on your local server, just be sure to  place the WordPress files in the correct webroot directory on your  computer.&lt;br /&gt;
Once all of the files are done uploading, you&#39;re ready to do the installation.&lt;br /&gt;
&lt;h2&gt;Installing WordPress&lt;/h2&gt;Now it&#39;s time to install WordPress. For example, I will be working on my local server and just put brand-new WordPress files at &lt;i&gt;http://wpbook:8888/&lt;/i&gt;.  So, this is going to be the URL of my WordPress website. If you access  your WordPress URL via your browser, it will look like the following:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_7.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;It says that you need to create a file named &lt;i&gt;wp-config.php&lt;/i&gt; before proceeding further. WordPress (and I) recommend that you do this manually, rather than using the &lt;b&gt;Create a Configuration File&lt;/b&gt;  link. If you do choose to use the config creator, you&#39;ll need the  information below as well (though there will be no opportunity for the  security phrases).&lt;br /&gt;
Open the &lt;i&gt;wordpress&lt;/i&gt; folder and find the file named &lt;i&gt;wp-config-sample.php&lt;/i&gt;. Make a copy of this file and name it &lt;i&gt;wp-config.php&lt;/i&gt;.  We&#39;ll modify this file together. Don&#39;t worry; you need not be a PHP  programmer. Just open this file with a simple editor such as Notepad.  The following is the copied text from the original &lt;i&gt;wp-config.php&lt;/i&gt; file. Note that I&#39;ve removed most of the comments, so that we can focus on the items we need to change.&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;/** The name of the database for WordPress */
define(&#39;DB_NAME&#39;, &#39;database_name_here&#39;);

/** MySQL database username */
define(&#39;DB_USER&#39;, &#39;username_here&#39;);

/** MySQL database password */
define(&#39;DB_PASSWORD&#39;, &#39;password_here&#39;);

/** MySQL hostname */
define(&#39;DB_HOST&#39;, &#39;localhost&#39;);

/** Database Charset to use in creating database tables. */
define(&#39;DB_CHARSET&#39;, &#39;utf8&#39;);

/** The Database Collate type. Don&#39;t change this if in doubt. */
define(&#39;DB_COLLATE&#39;, &#39;&#39;);

define(&#39;AUTH_KEY&#39;,                     &#39;put your unique phrase here&#39;);
define(&#39;SECURE_AUTH_KEY&#39;,   &#39;put your unique phrase here&#39;);
define(&#39;LOGGED_IN_KEY&#39;,         &#39;put your unique phrase here&#39;);
define(&#39;NONCE_KEY&#39;,                 &#39;put your unique phrase here&#39;);
define(&#39;AUTH_SALT&#39;,                   &#39;put your unique phrase here&#39;);
define(&#39;SECURE_AUTH_SALT&#39;, &#39;put your unique phrase here&#39;);
define(&#39;LOGGED_IN_SALT&#39;,       &#39;put your unique phrase here&#39;);
define(&#39;NONCE_SALT&#39;,               &#39;put your unique phrase here&#39;);

$table_prefix = &#39;wp_&#39;;
?&amp;gt;&lt;/pre&gt;&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;One  thing to know about PHP is that any text that comes after a double  slash (//), or between a slash-star and star-slash (/* */), is a  comment. It&#39;s not actual PHP code. Its purpose is to inform you what  that line or that section is about.&lt;/i&gt;&lt;/div&gt;As you can see from the previous code, there are a number of settings  that you can insert here. Let&#39;s walk through the most important ones.&lt;br /&gt;
As I mentioned in an earlier section, you need to have write access  to a database. Most large web hosts offer you a way to create your own  databases, with usernames and passwords, via an online control panel. If  you&#39;re not sure how to do this, just e-mail or call your hosting  provider for this information. You&#39;ll need four pieces of information  about your database for the WordPress configuration file. They are:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Database server—for example, &lt;i&gt;localhost&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Username—for example, &lt;i&gt;localdbuser&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Password—for example, &lt;i&gt;62dcx0hnm&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Database name—for example, &lt;i&gt;wpbookdb&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;Your database server might not be localhost. If it&#39;s not, you can ask  your hosting provider, or take a look at this handy cheat sheet: &lt;a href=&quot;http://codex.wordpress.org/Editing_wp-config.php#Possible_DB_HOST_values&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://codex.wordpress.org/Editing_wp-config.php#Possible_DB_HOST_values&lt;/a&gt;.&lt;br /&gt;
Once you have those four things, you can fill them into your &lt;i&gt;wp-config.php&lt;/i&gt; file. For example, see how mine is filled out here:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;// ** MySQL settings ** //
define(&#39;DB_NAME&#39;, &#39;wpbookdb&#39;);
define(&#39;DB_USER&#39;, &#39;localdbuser&#39;);
define(&#39;DB_PASSWORD&#39;, &#39;62dcx0hnm&#39;);
define(&#39;DB_HOST&#39;, &#39;localhost&#39;);&lt;/pre&gt;Next,  for security purposes, you really should put some unique phrases into  the unique keys. The secret keys are used by WordPress to add random  elements to your passwords and are also used in some other situations.  This will help to keep your WordPress installation uniquely protected.  No one else is likely to choose the same unique keys that you chose, and  therefore, breaking or hacking into your site will be more difficult.  You can get some secret keys generated by going to &lt;a href=&quot;https://api.wordpress.org/secret-key/1.1/salt/&quot; target=&quot;_blank&quot; title=&quot;WordPress&quot;&gt;https://api.wordpress.org/secret-key/1.1/salt/&lt;/a&gt;. Once I did that, I got the following, which I can paste directly over the default code in &lt;i&gt;wp-config.php&lt;/i&gt;:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;define(&#39;AUTH_KEY&#39;, &#39;uu|6#00Pc/3h?Pg5:Zc#:S=;&amp;lt;3mdw-ai&#39;);
define(&#39;SECURE_AUTH_KEY&#39;, &#39;vy1.@Nr@Zb^G|0Vfz-|TH5&amp;amp;W&#39;);
define(&#39;LOGGED_IN_KEY&#39;, &#39;sryMVd`jVpiMWWQqx~!v XE5@fJMTt2[Z&#39;);
define(&#39;NONCE_KEY&#39;, &#39;i,+UPpMR&amp;gt;Mj3o}(B**^&lt;t: );=&quot;&quot; md,yff76d]kf=&quot;&quot;&gt;
define(&#39;AUTH_SALT&#39;, &#39;n.8Li=9OjV+_p|}e5yN2k&lt;s{!kjs|[s&amp;amp;zh&#39;);&gt;
define(&#39;SECURE_AUTH_SALT&#39;, &#39;I#2vPT^u[5vLX|`MzPg/J*y]RTfr&#39;);
define(&#39;LOGGED_IN_SALT&#39;, &#39;gR%QP^c*jfFUy,iQ}-0g_%;%H)pN0B5&#39;);
define(&#39;NONCE_SALT&#39;, &#39;&amp;amp;L);.IH`v{]zYLO2:h_t#J0D-p)cvyc&#39;);&lt;/s{!kjs|[s&amp;amp;zh&#39;);&gt;&lt;/t:&gt;&lt;/pre&gt;The  only other thing you may want to consider is the table prefix. I  strongly recommend using a prefix. If you want to install WordPress more  than once, you&#39;ll need to use different prefixes in your different  installations. If you are using this same database for other things,  it&#39;ll be handy if the tables are grouped based on what they&#39;re being  used for. So either leave the following line as it is, or choose another  prefix:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;$table_prefix = &#39;wpbook_&#39;;&lt;/pre&gt;&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;Learning  more: The WordPress codex has a long and detailed page that describes  everything about editing your wp-config.php file: &lt;a href=&quot;http://codex.wordpress.org/Editing_wp-config.php&quot; target=&quot;_blank&quot; title=&quot;WordPress&quot;&gt;http://codex.wordpress.org/Editing_wp-config.php&lt;/a&gt;.&lt;/i&gt;&lt;/div&gt;Now, go back to your browser and reload the page that&#39;s pointing to  your WordPress installation. If your configuration file makes sense to  WordPress, you&#39;ll be taken directly to the installation page.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_8.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;(If you&#39;ve ever installed an earlier version of WordPress, you&#39;ll  notice some differences, like the ability to choose your first username  and password!) Now, fill out the installation form (you will be able to  change all of these later, so don&#39;t be too worried about getting locked  into your choices):&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Site title&lt;/b&gt;: Fill in the name of your blog (in my case it&#39;s &#39;Daily Cooking&#39;).&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Username&lt;/b&gt;: Note that the default username is &#39;admin&#39;, but for  security purposes, you&#39;re better off picking another username. If  someone ever tries to hack your blog, they will be halfway there if they  already know your username. I&#39;ve chosen &#39;ahsilver&#39;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Password&lt;/b&gt;: Choose a secure password, one that has both upper and lowercase letters, a number or two, and even a few punctuation marks.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Your E-Mail&lt;/b&gt;: Double-check that this is correct, because this  is the e-mail address WordPress will use to contact you about the blog,  comments, and so on. If you do not get an e-mail from your WordPress  site shortly after installing, check your spam folder.&lt;/li&gt;
&lt;/ul&gt;Now, click on &lt;b&gt;Install WordPress&lt;/b&gt;. You&#39;re done with the install!&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;WordPress 3 Complete&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/4101os_ch2_9.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;WordPress 3 Complete&quot; /&gt;&lt;/div&gt;You can click on &lt;b&gt;Log In&lt;/b&gt; to get to the login page. Or you can  always enter your WordPress Admin panel (also known as the WP Admin) by  pointing your browser to &lt;i&gt;http://yoursite.com/wp-admin&lt;/i&gt;. If you&#39;re not already logged in, this URL will redirect you to the login page.&lt;br /&gt;
&lt;h2&gt;Learning more&lt;/h2&gt;If you&#39;d like to see an even more detailed step-by-step guide for  manual installation, take a look at this page in the WordPress Codex: &lt;a href=&quot;http://codex.wordpress.org/Installing_WordPress&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://codex.wordpress.org/Installing_WordPress&lt;/a&gt;.&lt;br /&gt;
Also, you can find more detailed installation instructions—as well as  specifics on changing file permissions, using FTP, using languages,  importing from other blogging engines, and more—in the WordPress Codex  here: &lt;a href=&quot;http://codex.wordpress.org/Getting_Started_with_WordPress#Installation&quot; target=&quot;_Blank&quot; title=&quot;WordPress&quot;&gt;http://codex.wordpress.org/Getting_Started_with_WordPress#Installation&lt;/a&gt;.&lt;br /&gt;
&lt;h1&gt;Summary&lt;/h1&gt;In this article we took a look at how to create a blog on WordPress.com and install WordPress on a remote server.</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/720688010991454729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/getting-started-with-wordpress-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/720688010991454729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/720688010991454729'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/getting-started-with-wordpress-3.html' title='Getting Started with WordPress 3'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-4454183743345702726</id><published>2011-02-25T09:19:00.000-08:00</published><updated>2011-02-25T09:47:10.925-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Compiere 3"/><category scheme="http://www.blogger.com/atom/ns#" term="Product Management"/><title type='text'>Product Management with Compiere 3</title><content type='html'>Products are an integral part of the ERP transactional process, and thus require a detailed explanation in the setup process, not only from the master data point of view but also for transactional processes.&lt;br /&gt;
&lt;br /&gt;
We will therefore describe how Compiere handles Product. In this article we shall learn:&lt;br /&gt;
&lt;br /&gt;
* Give you an overview of the concept of a product&lt;br /&gt;
* Show you how to set up price lists and discount schemas&lt;br /&gt;
&lt;br /&gt;
&lt;h1&gt;The product definition&lt;/h1&gt;The concept of a product in Compiere is that it is something that you buy or sell and has a price. It would include:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Inventory items (items that you store and track)&lt;/li&gt;
&lt;li&gt;Non-stock items (still items, but you do not store or track them)&lt;/li&gt;
&lt;li&gt;Services&lt;/li&gt;
&lt;li&gt;Resources&lt;/li&gt;
&lt;li&gt;Expense types&lt;/li&gt;
&lt;/ul&gt;In addition to a product, Compiere allows for charges (account aliases), as well as customer assets on transactional lines.&lt;br /&gt;
&lt;b&gt;When to use a charge and not a product:&lt;/b&gt; It&#39;s logical to use  charges where a mere account entry is required and the many descriptions  that a product requires are not required for the transaction. An  example would be marketing or an admin expense.&lt;br /&gt;
&lt;b&gt;When to use a customer asset and not a product:&lt;/b&gt; Customer  assets are extended instances of a Compiere product. An example would be  where a Desktop PC is sold or purchased and becomes an asset or  equipment type that need to be tracked.Customer assets are therefore  used for asset or equipment related business process information.&lt;br /&gt;
Products allow for many descriptive attributes in its master setup.&lt;br /&gt;
&lt;h1&gt;Describing a product&lt;/h1&gt;Product information and features can be extended and described in Compiere in the following manner:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Basic Product Information:&lt;/b&gt; Basic product information includes  search key values, Descriptions, Unit of Measure, UPC, EAN. Critical  for basic product information are Product categories, which group  products into related products.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product BOM (Bill of Material):&lt;/b&gt; More advanced products would include BOM kits that are made up of other products (referred to as BOM components).&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Substitute / Related Products:&lt;/b&gt; This refers to products that may be related to the product being searched for.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Replenishment:&lt;/b&gt; This describes the rules of how a  product would be replenished. This would, for instance, include minimum  and maximum quantities to hold in stock.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Purchasing information:&lt;/b&gt; This refers to the set-up around how a product is purchased—for instance the default vendor and the vendor&#39;s product code.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Locator:&lt;/b&gt; Where products are currently located in the warehouse.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Business Partner:&lt;/b&gt; This describes additional information used when products are purchased.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Price:&lt;/b&gt; A product may have multiple price lists  attached to it, and depending on the Business Partner or transactional  document this can be defaulted as required.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Accounting:&lt;/b&gt; This describes which standard account  elements are to be used for a transactional document. Usually, similar  products have the same accounting rules and as such the accounting for  Product Categories would be setup and maintained, rather than individual  product categories.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Unit of Measure conversions:&lt;/b&gt; Where applicable,  products may have conversions applicable to them—for instance converting  a 6-pack quantity sold to an, each, quantity during purchasing.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Attributes:&lt;/b&gt; Attribute sets allow you to further  extend the product information into, for example, instance sets such as  lots and serial numbers.Non-instance sets are also catered for, such as  colour or size sets that can be used for searching the products.&lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;Setting up a Product&lt;/h1&gt;Prior to setting up a product, you should make sure that the following is set up:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Warehouse and Locators:&lt;/b&gt; The system logic here is that a  Product must be sold/delivered from somewhere within the organization.  Make sure that you set up your warehouse and Locators first. Use virtual  warehouse and locators where they are not physical.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Units of Measure:&lt;/b&gt; Review the system standard units of measure and add your own units of measure if applicable.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Product Categories:&lt;/b&gt; Define your groupings prior to setting up products since it will reduce data maintenance time.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tax Categories:&lt;/b&gt; Pre-define the applicable tax categories if they are product specific.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Price lists: &lt;/b&gt;In order to use a product it must have a price  which is set up through Price Lists (it includes sales and/or purchase  price lists).&lt;/li&gt;
&lt;/ul&gt;The above set-up is performed through the Product Setup menu items, which are grouped as follows in the main menu:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-01.png&quot; /&gt;&lt;/div&gt;You start entering a product through the Product window:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-02.png&quot; /&gt;&lt;/div&gt;&lt;/div&gt;The additional Product Descriptions (listed above) are added through the following tabs in the Product window:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-03.png&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;h1&gt;Price Lists&lt;/h1&gt;In order for products to be used in the sales or purchasing cycle,  they must have prices. A product can have the following three line  prices set up:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;List Price:&lt;/b&gt; The list price before discounts of a product.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Standard Price:&lt;/b&gt; The standard price of a product.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Limit Price:&lt;/b&gt; The lowest price at which a product can be sold  or purchased.Usually used by management as a pricing control limit for  sales reps.&lt;/li&gt;
&lt;/ul&gt;The product price information (in the context of the price list version) is accessed through the &lt;b&gt;Product  Price|&lt;/b&gt; window:&lt;br /&gt;
&lt;h2&gt;Pricing logic flow&lt;/h2&gt;Price lists determine the price to be used in the context of the  transaction(sales / purchase) and the chosen Business Partner. The basic  logic for determining the price is as follows:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;A price list has a version, and the latest version of a price list is used during sales or purchasing (or both).&lt;/li&gt;
&lt;li&gt;If a Business Partner (customer or vendor) is assigned a Price list,  then this Price List is used to determine the price for the  transaction.&lt;/li&gt;
&lt;li&gt;If a Business Partner is not assigned a price list, then the Business Partner Group&#39;s defined price lists is used.&lt;/li&gt;
&lt;li&gt;If the Business Partner Groups&#39; price list is not defined, then the  default sales or purchase price list is used (this is indicated throught  the isDefault checkbox in the price list window header).&lt;/li&gt;
&lt;li&gt;If a product is not assigned the relevant price list, an error is given and the user cannot continue.&lt;/li&gt;
&lt;li&gt;The system also considers that a price list is Tenant and Organization specific.&lt;/li&gt;
&lt;/ul&gt;In terms of price discounting, a product can be assigned to a  Discount Schema. In such a case, the following discount schema options  are available:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Price lists: &lt;/b&gt;This is the normal type of discount calculation,  and is based on the price list-that is—a discount off the list price  based on a distributor or reseller price list.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Flat Percentage:&lt;/b&gt; This refers to a flat percentage discount arrangement.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Quantity Discount Breaks:&lt;/b&gt; This discount schema refers to  quantity breaks, where items purchased at different quantity levels  attract more discount-for example,—100/10% or 1000/20%.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;Setting Up a Price List and version&lt;/h2&gt;As mentioned, a price list can have one or more versions, which are time based. This is set up as follows:&lt;br /&gt;
&lt;ol&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-06.png&quot; /&gt;&lt;/div&gt;&lt;li&gt; Enter a price list through the Price List window. Here, we enter a sales pricelist as follows:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-05.png&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;A price list may be  set up to be inclusive of tax. In this case the accounts posting on the  document is adjusted to reflect the inclusive tax accounting. Enforcing  price limits ensures that the end-user cannot enter a price lower that  the price lists, limit price for the product.&lt;/i&gt;&lt;/div&gt;&lt;li&gt; Create one or many price list versions through the Price List | Version tab, with the following options:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Dicscount Schema: &lt;/b&gt;This specifies the discount rules to be applied when creating or updating the price list.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Base Price List:&lt;/b&gt; This indicates a price list upon which to base the discount schema rules.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Valid from date:&lt;/b&gt; The price list will be used for new order or  invoice transactions from this date. Transactions prior to this date  will not be affected.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;A price list is either imported, manually entered, or updated based on another price list, through the discount schema.&lt;/i&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;h2&gt;Illustrating a price list increase&lt;/h2&gt;To illustrate the process of a applying a price list increase, we  will create a new price list version with a 10 percent increase on the  existing version.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt; One enters the discount schema detail through the Discount Schema  window. We will select a PriceList discount type, as the calculation  will be based on the price list values:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;How to Handle Products using Compiere 3&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-07.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;How to Handle Products using Compiere 3&quot; width=&quot;447&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt; The next step is to create the Price List line calculation paramaters for the discount schema:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;How to Handle Products using Compiere 3&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-08.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;How to Handle Products using Compiere 3&quot; width=&quot;329&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt; The pricing discount line for the increase is entered as follows:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;Select the Price Base:&lt;/b&gt; This defines which price base is affected (List, /Standard / Limit).&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Enter the List price Discount:&lt;/b&gt; A discount is normally entered as a positive, but because we are performing a price increase we enter a negative amount.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;List Price Rounding option:&lt;/b&gt; Compiere allows different  rounding methods, and as illustrated we selected the Rounding to the  nearest Ten (10,20,30) option, for pricing policy reasons.&lt;/li&gt;
&lt;/ol&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;How to Handle Products using Compiere 3&quot; border=&quot;0&quot; height=&quot;142&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-09.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;How to Handle Products using Compiere 3&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt; Finally, we run the increase for the Price List version illustrated as follows:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;How to Handle Products using Compiere 3&quot; border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-10.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;How to Handle Products using Compiere 3&quot; width=&quot;315&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;h2&gt;Discount Breaks&lt;/h2&gt;Discount breaks are trade discounts applied through different  quantity or value breaks/levels. Setting up a Discount Schema for  discounts break based on a quantity sliding scale is entered through the  &lt;b&gt;Discount Schema&lt;/b&gt; window, as follows:&lt;br /&gt;
In a sliding scale discount break, Compiere applies the first  discount break that meets the discount criteria, therefore for the  example above, an order of &lt;b&gt;1000&lt;/b&gt; or above would have a &lt;b&gt;40%&lt;/b&gt; discount, &lt;b&gt;500-999&lt;/b&gt; would have 20% discount, an order of between &lt;b&gt;10&lt;/b&gt; to &lt;b&gt;499&lt;/b&gt; would have &lt;b&gt;4%&lt;/b&gt; discount, and &lt;b&gt;0-9&lt;/b&gt; would have &lt;b&gt;0%&lt;/b&gt; discount&lt;br /&gt;
&lt;h2&gt;Pricing Decimal Precisions&lt;/h2&gt;Compiere allows for different pricing decimal precisions, which may  be a requirement in the enterprise during different transaction types:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Unit of measure:&lt;/b&gt; You can define pricing decimal precisions for accounting and cost calculation separately&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Currency:&lt;/b&gt; You can define pricing decimal precisions for accounting and cost calculation separately&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Price List:&lt;/b&gt; You can define the price precision&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;Managing Products as Services&lt;/h2&gt;Service items are not treated as stock and are usually not purchased.  Service items are managed as non-stocked items and have different  accounting entry implications,by default. Service items are set up  through the &lt;b&gt;Product&lt;/b&gt; window as follows:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/compiere-implementation-04-12.png&quot; /&gt;&lt;/div&gt;&lt;h1&gt;Summary&lt;/h1&gt;We covered the following in this article:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The basic characteristics of a product, and how to set up a product item&lt;/li&gt;
&lt;li&gt;How to set up and use price lists and discount schemas&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/4454183743345702726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/product-management-with-compiere-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/4454183743345702726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/4454183743345702726'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/product-management-with-compiere-3.html' title='Product Management with Compiere 3'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-5627283053929902183</id><published>2011-02-25T09:14:00.000-08:00</published><updated>2011-02-25T09:43:38.107-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CRM"/><category scheme="http://www.blogger.com/atom/ns#" term="Customer Relationship Management"/><category scheme="http://www.blogger.com/atom/ns#" term="SugerCRM"/><category scheme="http://www.blogger.com/atom/ns#" term="workflow"/><title type='text'>Developing a Simple Workflow within SugarCRM</title><content type='html'>Workflow is about getting the right work to the right people at the  right time, repeatedly—and knowing you have done so. Workflow is  human-centric. First and foremost, workflow is a human activity that is  made by and for those who use it: workflow is something that can easily  be handled and understood by human beings.&lt;br /&gt;
UK Enterprise Workflow National e-Government Project—Workflow from a Business Perspective&lt;br /&gt;
Well, that sounds good, but the problems start to occur when you ask  people to consider workflow in their organization, and there are usually  a few main issues to deal with:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;You&#39;ll find that people are normally experts in their own  fields—there are often very few people who have an overview of the whole  process that you&#39;re trying to map.&lt;/li&gt;
&lt;li&gt;Sections of a large organization will often have different ways of carrying out the same overall process.&lt;/li&gt;
&lt;li&gt;People don&#39;t really like to be told how to do their jobs—they  especially don&#39;t like to have any extra processes imposed on them for  now obvious reason—well, would you?&lt;/li&gt;
&lt;li&gt;Talk of &#39;improved utilization of resources&#39;, &#39;improved performance  monitoring&#39;, and such like can soon alienate the staff who are going to  be using the system. They&#39;ll soon start using terms such as &#39;Big  Brother&#39;.&lt;/li&gt;
&lt;/ul&gt;How you are able to deal with these will depend on your organization  and the people that are available to you. At least once you&#39;ve read this  article by &lt;b&gt;Dr. Mark Alexander Bain&lt;/b&gt;, you&#39;ll know that, once you&#39;ve overcome those problems, the workflow itself will be easy.&lt;br /&gt;
&lt;h1&gt;A Very Simple Workflow&lt;/h1&gt;In our simple workflow we&#39;ll assume that each task is carried out by  one person at a time, and that all tasks are done sequentially (i.e.  none are done in parallel). So, we&#39;ll look at the PPI Preliminary  Investigation which, as you remember, maps to the standard SugarCRM  Opportunity. Also, in this example, we&#39;re going to have a different  person carrying out each one of the Investigation stages.&lt;br /&gt;
&lt;h2&gt;Setting up the Process Stages&lt;/h2&gt;If you look at SugarCRM then you&#39;ll see that by default none of the  stages are related to investigations—they&#39;re all named using standard  CRM terms:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Developing a Simple Workflow within SugarCRM&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/sugarcrm-article-image1.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Developing a Simple Workflow within SugarCRM&quot; /&gt;&lt;/div&gt;Obviously the first thing to do is to decide what the preliminary  investigation stages actually are, and then map these to the SugarCRM  stages. You&#39;ll realize that you&#39;ll need to edit the  custom/include/langauge/en_us.lang.php file:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;$app_list_strings[&#39;sales_stage_dom&#39;]=array (
  &#39;Prospecting&#39; =&amp;gt; &#39;Fact Gathering&#39;,
  &#39;Qualification&#39; =&amp;gt; &#39;Witness and Subject Location&#39;,
  &#39;Needs Analysis&#39; =&amp;gt; &#39;Witness and Subject Interviews&#39;,
  &#39;Value Proposition&#39; =&amp;gt; &#39;Scene Investigation&#39;,
  &#39;Id. Decision Makers&#39; =&amp;gt; &#39;Financial and background Investigation&#39;,
  &#39;Perception Analysis&#39; =&amp;gt; &#39;Document and evidence retrieval&#39;,
  &#39;Proposal/Price Quote&#39; =&amp;gt; &#39;Covert Camera surveillance&#39;,
  &#39;Negotiation/Review&#39; =&amp;gt; &#39;Wiretapping&#39;,
  &#39;Closed Won&#39; =&amp;gt; &#39;Full Investigation required&#39;,
  &#39;Closed Lost&#39; =&amp;gt; &#39;Insufficient Evidence&#39;,
);&lt;/pre&gt;Don&#39;t  forget that you can also do this via Studio. However, once you&#39;ve added  your mapping into custom/include/langauge/en_us.lang.php file, and  refresh your browser, then you&#39;ll see the new stages:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Developing a Simple Workflow within SugarCRM&quot; border=&quot;0&quot; height=&quot;265&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/sugarcrm-article-image2.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Developing a Simple Workflow within SugarCRM&quot; width=&quot;371&quot; /&gt;&lt;/div&gt;Now that our stages are set up we need to know who&#39;ll be carrying out each one.&lt;br /&gt;
&lt;h2&gt;Deciding Who Does What&lt;/h2&gt;In our simple workflow there may not be the need to do anything further. Each person just needs to know who does what next:&lt;br /&gt;
For example, once Kurt finishes the &#39;Covert Camera surveillance&#39;  stage then he just needs to update the Preliminary Investigation so that  the stage is set to &#39;Wiretapping&#39; and the assigned user as &#39;dobbsm&#39;.&lt;br /&gt;
However, things are rarely as simple as that. It&#39;s much more likely that:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Investigations may be based on geographical locations, so that the  above table may only apply to investigations based in London.  Investigations based in New York follow the same process but with a  different set of staff.&lt;/li&gt;
&lt;li&gt;On Mondays Fran does &#39;Witness and Subject Location&#39; and William does &#39;Fact Gathering&#39;.&lt;/li&gt;
&lt;/ul&gt;This means, of course, that we need to be using some businesses rules.&lt;br /&gt;
&lt;h2&gt;Introducing Business Rules&lt;/h2&gt;There are six &#39;triggers&#39; that will cause the logic hooks to fire:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;after_retrieve&lt;/li&gt;
&lt;li&gt;before_save&lt;/li&gt;
&lt;li&gt;before_delete&lt;/li&gt;
&lt;li&gt;after_delete&lt;/li&gt;
&lt;li&gt;before_undelete&lt;/li&gt;
&lt;li&gt;after_undelete&lt;/li&gt;
&lt;/ul&gt;And the logic hooks are stored in custom/modules/&lt;module name=&quot;&quot;&gt;/logic_hook.php, so for &#39;Preliminary Inquiries&#39; this will be  custom/modules/Opportunities/logic_hook.php. You&#39;ll also remember, of  course, that the logic hook file needs to contain:&lt;/module&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The priority of the business rule&lt;/li&gt;
&lt;li&gt;The name of the businesses rule&lt;/li&gt;
&lt;li&gt;The file containing the business rule&lt;/li&gt;
&lt;li&gt;The business rule class&lt;/li&gt;
&lt;li&gt;The business rule function&lt;/li&gt;
&lt;/ul&gt;So, custom/modules/Opportunities/logic_hook.php needs to contain something like:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;#As always ensure that the file can only be accessed through SugarCRM
if(!defined(&#39;sugarEntry&#39;) || !sugarEntry) die(
     &#39;Not A Valid Entry Point&#39;);
$hook_array = Array(); #Create an array

$hook_array[&#39;before_save&#39;] = Array();
$hook_array[&#39;before_save&#39;][] = Array(1, &#39;ppi_workflow&#39;,
  &#39;custom/include/ppi_workflow.php&#39;,
  &#39;ppi_workflow&#39;, &#39;ppi_workflow&#39;);
?&amp;gt;&lt;/pre&gt;Next  we&#39;ll need the file that logic hook will be calling, but to start with  this can be very basic—so, custom/include/ppi_workflow.php just needs to  contain something like:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;#Define the entry point
if(!defined(&#39;sugarEntry&#39;) || !sugarEntry) die(
     &#39;Not A Valid Entry Point&#39;);
#Load any required files
require_once(&#39;data/SugarBean.php&#39;);
require_once(&#39;modules/Opportunities/Opportunity.php&#39;);

#Define the class
class ppi_workflow
{
  function ppi_workflow (&amp;amp;$bean, $event, $arguments)
  {

  }
}
?&amp;gt;&lt;/pre&gt;With  those two files set up as above nothing obvious will change in the  operation of SugarCRM—the logic hook will fire, but we haven&#39;t told it  to do anything, and so that what we&#39;ll do now.&lt;br /&gt;
When the logic hook does run (i.e. when any Primary Investigation is saved) we would want it to:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Check to see what stage we&#39;re now at&lt;/li&gt;
&lt;li&gt;Define the assigned user accordingly&lt;/li&gt;
&lt;/ul&gt;All of the relevant information (i.e. the new stage) is passed to the  logic hook by means of the $bean object, and we can obtain the stage  from $bean-&amp;gt;sales_stage. Now all we have to do is combine this with  PHP&#39;s switch statement into the ppi_workflow function:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;switch ($bean-&amp;gt;sales_stage)
{
    case &quot;Prospecting&quot;:
      $assigned_user = &quot;varadyf&quot;;
      break;
    case &quot;Qualification&quot;:
      $assigned_user = &quot;monkw&quot;;
      break;
    case &quot;Needs Analysis&quot;:
      $assigned_user = &quot;pittc&quot;;
      break;
    case &quot;Value Proposition&quot;:
      $assigned_user = &quot;brockd&quot;;
      break;
    case &quot;Id. Decision Makers&quot;:
      $assigned_user = &quot;brunettig&quot;;
      break;
    case &quot;Perception Analysis&quot;:
      $assigned_user = &quot;thanetl&quot;;
      break;
    case &quot;Proposal/Price Quote&quot;:
      $assigned_user = &quot;wallanderk&quot;;
      break;
    case &quot;Negotiation/Review&quot;:
      $assigned_user = &quot;dobbsm&quot;;
      break;
    case &quot;Closed Won&quot;:
      $assigned_user = &quot;bluek&quot;;
      break;
    case &quot;Closed Lost&quot;:
      $assigned_user = &quot;bluek&quot;;
      break;
}&lt;/pre&gt;You&#39;ll  notice from the code that we must use the original SugarCRM sales stage  terms and not our new mapping—that only appears on the screen.&lt;br /&gt;
Next we&#39;ll have to add the code to update $bean-&amp;gt;assigned_user_id with the ID of our new user:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;global $db;

$sql =
  &quot;select id from users where user_name = &#39;&quot; . $assigned_user .&quot;&#39;&quot;;
$result = $db-&amp;gt;query($sql);
$bean-&amp;gt;assigned_user_id = mysql_result($result,0,0);&lt;/pre&gt;With  the code in place, if you now change the Investigation (or Sales)  stage, and then save the Preliminary Investigation (or Opportunity) then  you&#39;ll see that the assigned user is automatically updated for you.&lt;br /&gt;
However, this is still only a semi-automatic process—the correct  person for the stage is selected correctly, but only if the stage is  selected manually. The process running correctly still depends on  someone telling SugarCRM what that next stage is. Obviously the next  step is to move from stage to stage automatically.&lt;br /&gt;
&lt;h2&gt;Completing the Automated Workflow&lt;/h2&gt;At the moment we&#39;re relying on a user telling the application which  stage to move to next. However, it would be much better for the user to  tell SugarCRM that the current stage has been completed, and then for  the business rules to decide which stage should be carried out next. We  want to keep it simple and therefore an &#39;Investigation Stage Complete&#39;  checkbox will do the job.&lt;br /&gt;
If you look at the edit view for any of the existing Opportunities  then you&#39;ll see that there&#39;s nothing that can really be renamed to  represent our &#39;Investigation Stage Complete&#39;:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Developing a Simple Workflow within SugarCRM&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/sugarcrm-article-image3.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Developing a Simple Workflow within SugarCRM&quot; /&gt;&lt;/div&gt;We can use the SugarCRM Studio to add the field that we&#39;re going to need:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Developing a Simple Workflow within SugarCRM&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/sugarcrm-article-image4.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Developing a Simple Workflow within SugarCRM&quot; /&gt;&lt;/div&gt;After adding the custom field itself we&#39;ll need to add text for the  field label into custom/modules/Opportunities/language/en_us.lang.php:&lt;br /&gt;
And then we&#39;re ready to see the new edit view:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;$mod_strings[&#39;lbl_chk_complete_c_10&#39;] = &quot;Investigation Stage 
Completed&quot;;&lt;/pre&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Developing a Simple Workflow within SugarCRM&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/sugarcrm-article-image5.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Developing a Simple Workflow within SugarCRM&quot; /&gt;&lt;/div&gt;We can now go back to our code (in custom/include/ppi_workflow.php),  and we can place all of our functionality within an if statement:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;if ( $bean-&amp;gt;chk_complete_c == 1 )
{
  switch ($bean-&amp;gt;sales_stage)
  {
    /* etc, etc, etc */
  }
}&lt;/pre&gt;Our logic hook will, of course, fire every time a save is made—but our business rule will only be implemented if the &lt;b&gt;Investigation Stage Completed&lt;/b&gt;  box is ticked. So now we need the code that will define the process  itself, and you would need to place this before the code for deciding  who the assigned user is:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;switch ($bean-&amp;gt;sales_stage)
{
  case &quot;Prospecting&quot;:
    $bean-&amp;gt;sales_stage = &quot;Qualification&quot;;
    break;
  case &quot;Qualification&quot;:
    $bean-&amp;gt;sales_stage = &quot;Needs Analysis&quot;;
    break;
  case &quot;Needs Analysis&quot;:
    $bean-&amp;gt;sales_stage = &quot;Value Proposition&quot;;
    break;
  case &quot;Value Proposition&quot;:
    $bean-&amp;gt;sales_stage = &quot;Id. Decision Makers&quot;;
    break;
  case &quot;Id. Decision Makers&quot;:
    $bean-&amp;gt;sales_stage = &quot;Perception Analysis&quot;;
    break;
  case &quot;Perception Analysis&quot;:
    $bean-&amp;gt;sales_stage = &quot;Proposal/Price Quote&quot;;
    break;
  case &quot;Proposal/Price Quote&quot;:
    $bean-&amp;gt;sales_stage = &quot;Negotiation/Review&quot;;
    break;
  case &quot;Negotiation/Review&quot;:
    $bean-&amp;gt;sales_stage = &quot;Closed Won&quot;;
    break;
}
//Now decide who the assigned user is...&lt;/pre&gt;And finally we need to reset the completed status back to 0:&lt;br /&gt;
&lt;pre style=&quot;margin-left: 40px;&quot;&gt;$bean-&amp;gt;chk_complete_c = 0;&lt;/pre&gt;You&#39;ll  notice that we&#39;ve not taken the process all the way to the final  stage—this is because the final two stages are &#39;Closed won&#39; or &#39;Closed  lost&#39; (in PPI speak—&#39;Full Investigation required&#39; and &#39;Insufficient  Evidence&#39;). Korora will need to make that decision herself.&lt;br /&gt;
However, the important thing is that you can see just how easy it is  to set up a simple process (not that any process is ever simple).&lt;br /&gt;
&lt;h1&gt;Summary&lt;/h1&gt;Before you start work on your workflow, ensure that: the people who  understand the processes in the organization are available to you; both  managers and staff agree that the process plan is correct; staff don&#39;t  feel that the process is being enforced on them; and that this isn&#39;t  another case of &#39;Big Brother&#39;.&lt;br /&gt;
When you do start building the work flow ensure that you&#39;ve correctly  mapped your organization&#39;s stages onto the SugarCRM stages and that you  have a complete listing of who does what and when.&lt;br /&gt;
Business rules are created by making use of SugarCRM&#39;s logic hooks.  The logic hook file contains the priority of the business rule, the name  of the businesses rule, the file containing the business rule, the  business rule class, and the business rule function.</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/5627283053929902183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/developing-simple-workflow-within.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/5627283053929902183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/5627283053929902183'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/developing-simple-workflow-within.html' title='Developing a Simple Workflow within SugarCRM'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5010050740608224005.post-5343566902642086325</id><published>2011-02-25T09:08:00.000-08:00</published><updated>2011-02-25T09:11:17.809-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Application"/><category scheme="http://www.blogger.com/atom/ns#" term="Developing"/><category scheme="http://www.blogger.com/atom/ns#" term="Facebook"/><title type='text'>Introduction to Developing Facebook Applications</title><content type='html'>In this article we will:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Learn what the big deal is about Facebook, and why you should be interested in developing an application for it&lt;/li&gt;
&lt;li&gt;Get you set up with a web host, which you&#39;ll need for developing any online Facebook application&lt;/li&gt;
&lt;li&gt;Establish how much AS3 you need to know already, and what to do if you don&#39;t&lt;/li&gt;
&lt;li&gt;Find out how to deal with the debugging complications that arise when developing a &quot;browser-only&quot; application like this&lt;/li&gt;
&lt;/ul&gt;So let&#39;s get on with it...&lt;br /&gt;
&lt;h1&gt;What&#39;s so great about Facebook?&lt;/h1&gt;Seems like everyone&#39;s on Facebook these days—people are on it to  socialize; businesses are on it to try to attract those people&#39;s  attention. But the same is true for other older social networks such as  LinkedIn, Friendster, and MySpace. Facebook&#39;s reach goes far beyond  these; my small town&#39;s high street car park proudly displays a &quot;Like Us  On Facebook&quot; sign.&lt;br /&gt;
More and more Flash games and &lt;b&gt;Rich Internet Applications&lt;/b&gt; (&lt;b&gt;RIAs&lt;/b&gt;)  are allowing users to log in using their Facebook account—it&#39;s a safe  assumption that most users will have one. Companies are asking  freelancers for deeper Facebook integration in their projects. It&#39;s  practically a buzzword.&lt;br /&gt;
But why the big fuss?&lt;br /&gt;
&lt;h2&gt;It&#39;s popular&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Facebook benefits from the snowball effect: it&#39;s big, so it gets bigger.&lt;/li&gt;
&lt;li&gt;People sign up because most of their friends are already on it,  which is generally not the case for, say, Twitter. Businesses sign up  because they can reach so many people. It&#39;s a virtuous circle.&lt;/li&gt;
&lt;li&gt;There&#39;s a low barrier to entry, too; it&#39;s not just for techies, or  even people who are &quot;pretty good with computers;&quot; even old people and  luddites use Facebook. In February 2010, the technology blog &lt;b&gt;ReadWriteWeb&lt;/b&gt;  published an article called &quot;Facebook Wants to Be Your One True Login,&quot;  about Facebook&#39;s attempts to become the de facto login system  throughout the Web. Within minutes, the comments filled up with posts  from confused Facebook users:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_01.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; width=&quot;305&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;(Source: &lt;a href=&quot;http://www.readwriteweb.com/archives/facebook_wants_to_be_your_one_true_login.php&quot; target=&quot;_Blank&quot;&gt;http://www.readwriteweb.com/archives/facebook_wants_to_be_your_one_true_login.php&lt;/a&gt;.)&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Evidently, the ReadWriteWeb article had temporarily become the top search result for &lt;b&gt;Facebook Login&lt;/b&gt;,  leading hundreds of Facebook users, equating Google or Bing with the  Internet, to believe that this blog post was actually a redesigned &lt;a href=&quot;http://www.facebook.com/&quot; target=&quot;_Blank&quot;&gt;Facebook.com&lt;/a&gt;. The comment form, fittingly, had a &lt;b&gt;Sign in with Facebook&lt;/b&gt;  button that could be used instead of manually typing in a name and  e-mail address to sign a comment—and of course, the Facebook users  misinterpreted this as the new &lt;b&gt;Log in&lt;/b&gt; button.&lt;/li&gt;
&lt;li&gt;And yet… all of those people manage to use Facebook, keenly enough  to throw a fit when it apparently became impossible to use. It&#39;s not  just a site for geeks and students; it has serious mass market appeal.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Even &quot;The Social Network&quot;—a movie based on the creation of  Facebook—held this level of appeal: it opened at #1 and remained there  for its second weekend.&lt;/li&gt;
&lt;/ul&gt;&lt;h3&gt;Numbers&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;According to Facebook&#39;s statistics page (&lt;a href=&quot;http://www.facebook.com/press/info.php?statistics&quot; target=&quot;_Blank&quot;&gt;http://www.facebook.com/press/info.php?statistics&lt;/a&gt;),  over 500 million people log in to Facebook in any given month (as of  November 2010). For perspective, the population of the entire world is  just under 7,000 million.&lt;/li&gt;
&lt;li&gt;Twitter is estimated to have 95 million monthly active users (according to the &lt;i&gt;eMarketer.com&lt;/i&gt; September 2010 report), as is MySpace. &lt;b&gt;FarmVille&lt;/b&gt;,  the biggest game based on the Facebook platform, has over 50 million:  more than half the population of either competing social network.&lt;/li&gt;
&lt;li&gt;FarmVille has been reported to be hugely profitable, with some outsider reports claiming that its parent company, &lt;b&gt;Zynga&lt;/b&gt;,  has generated twice as much profit as Facebook itself (though take this  with a grain of salt). Now, of course, not every Facebook game or  application can be that successful, and FarmVille does benefit from the  same snowball effect as Facebook itself, making it hard to compete  with—but that almost doesn&#39;t matter; these numbers validate Facebook as a  platform on which a money-making business can be built.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;It&#39;s everywhere&lt;/h2&gt;As the aforementioned ReadWriteWeb article explained, Facebook has  become a standard login across many websites. Why add yet another  username/password combination to your browser&#39;s list (or your memory) if  you can replace them all with one Facebook login?&lt;br /&gt;
This isn&#39;t restricted to posting blog comments. UK TV broadcaster,  Channel 4, allows viewers to access their entire TV lineup on demand,  with no need to sign up for a specific Channel 4 account:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; height=&quot;193&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_02.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;Again, Facebook benefits from that snowball effect: as more sites  enable a Facebook login, it becomes more of a standard, and yet more  sites decide to add a Facebook login in order to keep up with everyone  else.&lt;br /&gt;
Besides login capabilities, many sites also allow users to share  their content via Facebook. Another UK TV broadcaster, the BBC, lets  users post links for their recommended TV programs straight to Facebook:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; height=&quot;89&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_03.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;Blogs—or, indeed, many websites with articles—allow readers to &lt;b&gt;Like&lt;/b&gt; a post, publishing this fact on Facebook and on the site itself:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_04.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; /&gt;&lt;/div&gt;So half a billion people use the Facebook website every month, and at  the same time, Facebook spreads further and further across the  Internet—and even beyond. &quot;Facebook Messages&quot; stores user&#39;s entire  conversational histories, across e-mail, SMS, chat, and Facebook itself;  &quot;Facebook Places&quot; lets users check into a physical location, letting  friends know that they&#39;re there.&lt;br /&gt;
No other network has this reach.&lt;br /&gt;
&lt;h2&gt;It&#39;s interesting to develop for&lt;/h2&gt;With all this expansion, it&#39;s difficult for a developer to keep up  with the Facebook platform. And sometimes there are bugs, and  undocumented areas, and periods of downtime, all of which can make  development harder still.&lt;br /&gt;
But the underlying system—the &lt;b&gt;Graph API&lt;/b&gt;, introduced in April  2010—is fascinating. The previous API had become bloated and cumbersome  over its four years; the Graph API feels well-designed with plenty of  room for expansion.&lt;br /&gt;
&lt;h2&gt;Have a go hero – get on Facebook&lt;/h2&gt;If you&#39;re not on Facebook already, sign up now (for free) at &lt;a href=&quot;http://www.facebook.com/&quot; target=&quot;_Blank&quot;&gt;http://facebook.com&lt;/a&gt;. You&#39;ll need an account in order to develop applications that use it. Spend some time getting used to it:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Set up a personal profile.&lt;/li&gt;
&lt;li&gt;Post messages to your friends on their &lt;b&gt;Walls&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;See what all the FarmVille fuss is about at &lt;a href=&quot;http://apps.facebook.com/onthefarm&quot; target=&quot;_Blank&quot;&gt;http://apps.facebook.com/onthefarm&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Check in to a location using Facebook Places.&lt;/li&gt;
&lt;li&gt;Log in to some blogs using your Facebook account.&lt;/li&gt;
&lt;li&gt;Share some YouTube videos on your own Wall from the YouTube website.&lt;/li&gt;
&lt;li&gt;&quot;Like&quot; something.&lt;br /&gt;
Go native!&lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;Web hosts&lt;/h1&gt;If you&#39;ve already got a publicly accessible web server or are signed  up to a web host to which you can upload SWFs and HTML pages via FTP,  skip to the &lt;i&gt;How much AS3 knowledge is required?&lt;/i&gt; section.&lt;br /&gt;
&lt;h2&gt;What&#39;s a web host?&lt;/h2&gt;I&#39;ll assume that you roughly know how the Internet works: when you type a URL into a web browser on your computer and hit &lt;b&gt;Go&lt;/b&gt;, it retrieves all the pages and images it needs from another computer, the &lt;b&gt;web server&lt;/b&gt;,  and displays them. The exact methods it uses to find the web server and  the protocols for how the information gets back to your computer aren&#39;t  relevant here.&lt;br /&gt;
You could go out and buy a computer, install some server software,  and hook it up to your Internet connection, and you&#39;d have a functional  web server. But you&#39;d have to maintain it and keep it secure, and your  ISP probably wouldn&#39;t be very happy about you sending all those pages  and images to other people&#39;s browsers. A better option is to pay another  company to take care of all of that for you—a &lt;b&gt;web host&lt;/b&gt;.&lt;br /&gt;
&lt;h2&gt;Why do you need one?&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;In order to build an online SWF-based application or game that  allows users to log in with their Facebook account (with the SWF being  able to access their profile, list of friends, Wall, and so on), you  will require control over a web page.&lt;/li&gt;
&lt;li&gt;Technically, you could probably come up with some hack that would  allow you to get around this—perhaps by hosting everything on Google  sites and MegaSWF—but in the long run it&#39;s not going to be worth it.  Splash out on a web host for the sake of learning; you will definitely  need access to one if you do professional Facebook application  development in the future.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;How do you choose one?&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;There are a huge number of web hosts to choose from, and an even  bigger number of configurable options between them. How much disk space  do you need? How much bandwidth per month? How much processing power?  Some hosts will give you a server all to yourself, while others will put  your files on the same computer as other customers. And of course, you  have to wonder how good the customer service is and how reliable the  company is at keeping their servers online. Throw in a few terms such as  &quot;cloud hosting&quot; and it&#39;s enough to make your head spin.&lt;/li&gt;
&lt;li&gt;All you need is a host that allows you to upload HTML files and SWFs.&lt;/li&gt;
&lt;li&gt;Want to just get started without wasting time comparing hosts? Go  with Media Temple. The code was all tested using a Media Temple Grid  Service account, available at &lt;a href=&quot;http://mediatemple.net/webhosting/gs/&quot; target=&quot;_Blank&quot;&gt;http://mediatemple.net/webhosting/gs/&lt;/a&gt;.  It provides much more than what you&#39;ll need for completing the  projects, granted, and at $20/month. It&#39;s not the cheapest option  available, but the extra service and features will definitely come in  handy as you build your own Facebook applications and games.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;Useful software&lt;/h2&gt;You&#39;ll need an HTML editor for editing web pages. &lt;b&gt;FlashDevelop&lt;/b&gt; and &lt;b&gt;Flash Builder&lt;/b&gt; both do good jobs at this; otherwise, try:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Notepad++&lt;/b&gt; for Windows (free): &lt;a href=&quot;http://notepad-plus-plus.org/&quot; target=&quot;_Blank&quot;&gt;http://notepad-plus-plus.org/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;TextMate&lt;/b&gt; for Mac: &lt;a href=&quot;http://macromates.com/&quot; target=&quot;_Blank&quot;&gt;http://macromates.com/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Komodo Edit&lt;/b&gt; for Mac and Windows (free): &lt;a href=&quot;http://www.activestate.com/komodo-edit&quot; target=&quot;_Blank&quot;&gt;http://www.activestate.com/komodo-edit&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;And in order to transfer your files from your computer to your web  host, you&#39;ll probably need an FTP client. Check out FileZilla (it&#39;s free  and available for both Windows and Mac) at &lt;a href=&quot;http://filezilla-project.org/&quot; target=&quot;_Blank&quot;&gt;http://filezilla-project.org/&lt;/a&gt;. Documentation for this is available at &lt;a href=&quot;http://wiki.filezilla-project.org/Documentation&quot; target=&quot;_Blank&quot;&gt;http://wiki.filezilla-project.org/Documentation&lt;/a&gt;,  and your web host will almost certainly provide instructions on  connecting to it via FTP (Media Temple&#39;s instructions can be found at &lt;a href=&quot;http://kb.mediatemple.net/questions/131/Using+FTP+and+SFTP&quot; target=&quot;_Blank&quot;&gt;http://kb.mediatemple.net/questions/131/Using+FTP+and+SFTP&lt;/a&gt;)&lt;br /&gt;
&lt;h2&gt;What about domain names?&lt;/h2&gt;Web hosts will generally assign you a very generic address, such as &lt;i&gt;http://michaeljw.awesomewebhost2000.com/&lt;/i&gt; or &lt;i&gt;http://sites.awesomewebhost2000.com/michaeljw&lt;/i&gt;. If you want to have a more condensed personal address such as &lt;i&gt;http://michaeljw.com/&lt;/i&gt;, you&#39;ll need to pay for it. This is called a domain name—in this specific example, &lt;i&gt;michaeljw.com&lt;/i&gt; is the domain name.&lt;br /&gt;
Media Temple allows you to buy a domain name for $5/year at the point  where you sign up to their web hosting package. If you go with another  host, you may need to buy a domain name elsewhere; for this, you can use  &lt;a href=&quot;http://www.moniker.com/&quot; target=&quot;_Blank&quot;&gt;http://www.moniker.com/&lt;/a&gt;.&lt;br /&gt;
&lt;h2&gt;Have a go hero – get a web host, upload to it, test&lt;/h2&gt;Pick a web host, get your credit card out, and sign up for one of their packages.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Create a new directory called &lt;i&gt;/test/&lt;/i&gt; in the public path of your web host.&lt;/li&gt;
&lt;li&gt;Create a new plain text file on your hard drive called &lt;i&gt;index.html&lt;/i&gt;. (It&#39;s a good idea to create a new folder on your computer to store all your work, too.) Open this file in your HTML editor.&lt;/li&gt;
&lt;li&gt;Copy the HTML below into the file:&lt;br /&gt;
&lt;pre&gt;&lt;title&gt;Test&lt;/title&gt;
 
 
   &lt;h2&gt;Hello!&lt;/h2&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;Hopefully, you know enough HTML to understand that this just writes &lt;b&gt;Hello!&lt;/b&gt; in big letters.&lt;/li&gt;
&lt;li&gt;Transfer &lt;i&gt;index.html&lt;/i&gt; to the &lt;i&gt;/text/&lt;/i&gt; directory on your host. Again, you&#39;ll probably need to use an FTP client for this.&lt;/li&gt;
&lt;li&gt;Open a web browser and type &lt;a href=&quot;http://host.com/test/index.html&quot; target=&quot;_Blank&quot;&gt;http://host.com/test/index.html&lt;/a&gt; into the URL bar. Of course, you should replace &lt;a href=&quot;http://host.com/&quot; target=&quot;_Blank&quot;&gt;http://host.com/&lt;/a&gt;  with the path to your public directory, as given to you by your web  host. You should see Hello! appear in a glorious default font:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; height=&quot;108&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_05.png&quot; style=&quot;border: 1px solid black;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;If not, check the documentation and support for your host.&lt;/li&gt;
&lt;/ol&gt;&lt;h1&gt;How much AS3 knowledge is required?&lt;/h1&gt;&lt;ul&gt;&lt;li&gt;All of the code is written using classes inside AS files; there&#39;s no  timeline code at all. You don&#39;t have to be an OOP guru to follow it,  but you must be familiar with class-based coding. If you aren&#39;t, check  out these two resources: &lt;ul&gt;&lt;li&gt;How To Use A Document Class In Flash—A short tutorial to get you up  to speed with using document classes in Flash CS3 and above: &lt;a href=&quot;http://active.tutsplus.com/tutorials/actionscript&quot; target=&quot;_Blank&quot;&gt;http://active.tutsplus.com/tutorials/actionscript/quick-tiphow-to-use-a-document-class-in-flash/&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;AS3 101—A series of tutorials to walk you through the basics of AS3  development. In particular, read from Part 8 onwards, as these deal with  OOP in AS3: &lt;a href=&quot;http://active.tutsplus.com/series/as3-101/&quot; target=&quot;_Blank&quot;&gt;http://active.tutsplus.com/series/as3-101/&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;You should also know how to create and compile a SWF project, and be  familiar enough with HTML to be able to embed a SWF in it. We&#39;ll use &lt;b&gt;SWFObject&lt;/b&gt;  for this purpose (this is the default embed method used by Flash CS5);  if you&#39;re not sure what this means, familiarize yourself here: &lt;a href=&quot;http://code.google.com/p/swfobject/&quot; target=&quot;_Blank&quot;&gt;http://code.google.com/p/swfobject/&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Remember that you can always use &lt;b&gt;LiveDocs&lt;/b&gt; to look up unfamiliar code: &lt;a href=&quot;http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/index.html&quot; target=&quot;_Blank&quot;&gt;http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/index.html&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;Powered by…&lt;/h1&gt;In September 2010, Adobe released an official Adobe ActionScript 3  SDK for the Facebook Platform Graph API, which will remain fully  supported by Adobe and Facebook. Read more about it at &lt;a href=&quot;http://www.adobe.com/devnet/facebook.html&quot; target=&quot;_Blank&quot;&gt;http://www.adobe.com/devnet/facebook.html&lt;/a&gt;.&lt;br /&gt;
Besides the Adobe AS3 SDK for Facebook Platform, two other code libraries are used heavily:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;MinimalComps&lt;/b&gt;: Keith Peters&#39; excellent, lightweight user interface components, available at &lt;a href=&quot;http://www.minimalcomps.com/&quot; target=&quot;_Blank&quot;&gt;http://www.minimalcomps.com/&lt;/a&gt; under an MIT license.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;as3corelib&lt;/b&gt;: A collection of classes and utilities for working with AS3, including classes for JSON serialization, available at &lt;a href=&quot;https://github.com/mikechambers/as3corelib&quot; target=&quot;_Blank&quot;&gt;https://github.com/mikechambers/as3corelib&lt;/a&gt; under a BSD license.&lt;/li&gt;
&lt;/ul&gt;&lt;h1&gt;Debugging&lt;/h1&gt;There are a few tools that will help:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;De MonsterDebugger&lt;/b&gt;: Excellent tool for general AS3 debugging: &lt;a href=&quot;http://demonsterdebugger.com/&quot; target=&quot;_Blank&quot;&gt;http://demonsterdebugger.com/&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Flash Tracer for Firebug&lt;/b&gt;: This Firefox tool lets you see &lt;i&gt;trace&lt;/i&gt; statements from any SWF, as long as you have the debug version of Flash Player installed in your browser: &lt;a href=&quot;http://blog.sephiroth.it/firefox-extensions&quot; target=&quot;_Blank&quot;&gt;http://blog.sephiroth.it/firefox-extensions&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Vizzy Flash Tracer&lt;/b&gt;: Similar to Flash Tracer for Firebug, but also works for Internet Explorer and Chrome: &lt;a href=&quot;http://code.google.com/p/flash-tracer/&quot; target=&quot;_Blank&quot;&gt;http://code.google.com/p/flash-tracer/&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;SOS max&lt;/b&gt;: Creates a socket server on your computer to which an  AS3 project can send data; this data will then be logged and can then  be viewed: &lt;a href=&quot;http://www.sos.powerflasher.com/&quot; target=&quot;_Blank&quot;&gt;http://www.sos.powerflasher.com/&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;Watch out for caching&lt;/h2&gt;When you run a SWF using Flash Player on your desktop, it loads and runs the SWF. Well, of course, why wouldn&#39;t it?&lt;br /&gt;
When you run a SWF in a browser, this isn&#39;t always the case, though. Sometimes, browsers &lt;b&gt;cache&lt;/b&gt;  SWFs, meaning that they save a copy locally and then load that  copy—rather than the online version—the next time you request it. In  normal browsing, this is a great idea—it saves bandwidth and reduces  loading times. You can lose huge amounts of time trying to figure out  why your new code isn&#39;t working, only to finally realize that the new  code isn&#39;t being run at all because you were seeing only a cached copy  of your SWF.&lt;br /&gt;
Different browsers require different solutions. It&#39;s usually possible  to disable caching for one browsing session, and it&#39;s always possible  to delete some or all of the cache.&lt;br /&gt;
In Google Chrome, you can do this by clicking on &lt;b&gt;[Spanner] | Tools | Clear Browsing Data…&lt;/b&gt;, selecting &lt;b&gt;Empty the cache&lt;/b&gt;, and choosing an appropriate time period:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; height=&quot;238&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_06.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;Introduction to Developing Facebook Applications&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/0744ot_01_07.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;Introduction to Developing Facebook Applications&quot; /&gt;&lt;/div&gt;You should easily be able to find the equivalent option for your browser by searching Google for &lt;b&gt;«browser name» delete cache&lt;/b&gt;.&lt;br /&gt;
&lt;h1&gt;Summary&lt;/h1&gt;Facebook&#39;s developers are always tweaking the platform. This can make  it exciting to develop on because new features are being added all the  time, but it can also make it very frustrating to develop on because old  features can be removed, or their implementations changed; anything  could be altered at any time.&lt;br /&gt;
The new Platform API (the Graph API) is a strong foundation, and  looks likely to be around for a while—remember, the previous Platform  API lasted four years. But it&#39;s modular, and individual pieces might  change, or even be removed.&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/5343566902642086325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/introduction-to-developing-facebook.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/5343566902642086325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/5343566902642086325'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2011/02/introduction-to-developing-facebook.html' title='Introduction to Developing Facebook Applications'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-2089135100833141842</id><published>2010-07-09T05:38:00.000-07:00</published><updated>2010-07-09T05:38:27.672-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux on VM"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Virtual Machine"/><title type='text'>Creating Your First Virtual Machine: Ubuntu Linux (Part 2)</title><content type='html'>&lt;h1&gt;Running your Ubuntu Linux VM&lt;/h1&gt;This is going to be the most entertaining section of the article:  you&#39;ll get to play with your brand-new Ubuntu Linux virtual machine! If  you haven&#39;t used Linux before, I&#39;d definitely recommend that you browse  through the Ubuntu documentation at &lt;a href=&quot;https://help.ubuntu.com/9.10/index.html&quot; target=&quot;_blank&quot;&gt;https://help.ubuntu.com/9.10/index.html&lt;/a&gt;.&lt;br /&gt;
&lt;h1&gt;Time for action – running Ubuntu Linux&lt;/h1&gt;The best way to test your new virtual machine is experimenting, so  let&#39;s get on with it!&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open VirtualBox (in case you closed it after the last section&#39;s  exercise), select your &lt;b&gt;UbuntuVB&lt;/b&gt; virtual machine, and click on &lt;b&gt;Start&lt;/b&gt;  to turn it on:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_17.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Ubuntu will start to boot in your virtual machine. Eventually, the  Ubuntu logo will show up along with the progress bar and, after a few  seconds (or minutes, depending on your hardware), the Ubuntu login  screen will show up. Click inside the virtual machine screen to capture  the mouse and keyboard, type the username you assigned in the  installation process, and hit &lt;i&gt;Enter&lt;/i&gt; to continue.&lt;/li&gt;
&lt;li&gt;Now type the password for your username, and hit &lt;i&gt;Enter&lt;/i&gt; again.  Ubuntu will start to load. When finished, you&#39;ll see the Ubuntu GNOME  Desktop screen:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_18.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;One of the first things you&#39;ll notice is the &lt;b&gt;Update Manager&lt;/b&gt;  dialog. This dialog shows up when your Ubuntu system needs software  updates. Click on &lt;b&gt;Install Updates&lt;/b&gt; to start the updating process.  Normally, the Update Manager will ask for your administrator password.  Type it, press &lt;i&gt;Enter&lt;/i&gt;, or click on &lt;b&gt;OK&lt;/b&gt; and then wait for the  Update Manager to finish its job so you can work with your Ubuntu  system fully updated.&lt;/li&gt;
&lt;li&gt;If the Update Manager asks you to restart your Ubuntu system after  updating, click on the &lt;b&gt;Restart Now&lt;/b&gt; button, and wait for your  Ubuntu virtual machine to reboot.&lt;/li&gt;
&lt;/ol&gt;&lt;h2&gt;What just happened?&lt;/h2&gt;Isn&#39;t it cool to have a little Ubuntu system running inside your real  PC? Just like a pregnant mother feeling her baby&#39;s first movements!  Well, not as touching, but you get the point, right?&lt;br /&gt;
Ubuntu is one of the friendliest Linux distributions available.  That&#39;s why I decided to use it for this article&#39;s exercises. Now let&#39;s  go and test the Internet connection on your new Ubuntu virtual machine!&lt;br /&gt;
&lt;h3&gt;Web browsing with Mozilla Firefox&lt;/h3&gt;One of the best things about the Ubuntu Desktop edition is that you  can use Mozilla Firefox out of the box. And the Ubuntu Update Manager  keeps it updated automatically for you!&lt;br /&gt;
&lt;h2&gt;Time for action – web browsing in your Ubuntu VM&lt;/h2&gt;You have your virtual machine installed. What&#39;s next? Let&#39;s surf the  web! After all, what could be more important than that?&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open the &lt;b&gt;Applications&lt;/b&gt; menu on your Ubuntu virtual machine,  and select &lt;b&gt;Internet | Firefox Web Browser&lt;/b&gt; from the menu:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_19.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The Mozilla Firefox window will show the &lt;b&gt;Ubuntu Start Page&lt;/b&gt;.  Type &lt;i&gt;virtualbox.org&lt;/i&gt; on the address bar and press &lt;i&gt;Enter&lt;/i&gt;:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_20.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The VirtualBox homepage should appear as an indication that you have  Internet access in your virtual machine. You can close Mozilla Firefox  now.&lt;/li&gt;
&lt;/ol&gt;&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;If you cannot  connect to Internet from your virtual machine, check your host&#39;s network  settings. If you can connect from your host, try using another virtual  network adapter type in your virtual machine to see if the problem  disappears.&lt;/i&gt;&lt;/div&gt;&lt;h2&gt;What just happened?&lt;/h2&gt;Well, this exercise is not really hard, right? But this is a cool way  to test if your new virtual machine has Internet enabled by default.  Later on, we&#39;ll talk about the different settings related to virtual  network interfaces and VirtualBox. You can also know if your virtual  machine can connect to Internet through the Ubuntu Update Manager  because it will issue a warning if it cannot access the Ubuntu software  sources. For now, it&#39;s good to know we can surf the web! Now let&#39;s see  how you can do some real work inside your Ubuntu VM…&lt;br /&gt;
&lt;h3&gt;Using OpenOffice.org in your virtual machine&lt;/h3&gt;Ok, we have Internet enabled on our Ubuntu virtual machine; what else  could we ask for? How about some word processing, a spreadsheet, and  some presentations, for starters? I know it&#39;s boring, but some of us  also use VirtualBox to work!&lt;br /&gt;
&lt;h1&gt;Time for action – using OpenOffice.org&lt;/h1&gt;Ubuntu comes with &lt;i&gt;OpenOffice.org&lt;/i&gt;, the open source productivity  suite that has proven to be an effective alternative to MS Office for  Linux users. Now let&#39;s try it out on your new Ubuntu virtual machine...&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open the &lt;b&gt;Applications&lt;/b&gt; menu on your Ubuntu virtual machine,  and select &lt;b&gt;Office | OpenOffice.org Word Processor&lt;/b&gt; from the menu:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_21.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Untitled 1 – OpenOffice.org Writer&lt;/b&gt; window will appear.  You can use OpenOffice Writer as if you were on a real machine:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_22.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Now go to the &lt;b&gt;Applications&lt;/b&gt; menu again, and this time select  the &lt;b&gt;Office | OpenOffice.org Spreadsheet&lt;/b&gt; option.&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Untitiled 2 – OpenOffice.org Calc&lt;/b&gt; window will show up,  overlapping the Writer window. You can also work with it as in a real  PC:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_23.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;And now, go back to the &lt;b&gt;Application&lt;/b&gt; menu, and select the &lt;b&gt;Office  | OpenOffice.org Presentation&lt;/b&gt; option.&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Presentation Wizard&lt;/b&gt; screen will show up. Select the &lt;b&gt;Empty  Presentation&lt;/b&gt; option, click on &lt;b&gt;Next&lt;/b&gt; twice, and then click on &lt;b&gt;Create&lt;/b&gt;  to continue. The &lt;b&gt;Untitled 3 – OpenOffice.org Impress&lt;/b&gt; window will  show up, overlapping the other two windows:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_24.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Now you can close all the application windows inside your virtual  machine.&lt;/li&gt;
&lt;/ol&gt;&lt;h2&gt;What just happened?&lt;/h2&gt;How about that? A complete office productivity suite inside your main  PC! And Internet access too! So, if you always wanted to learn about  Linux or any other operating system but were afraid of messing up your  main PC, VirtualBox has come to your rescue!&lt;br /&gt;
Now let&#39;s see how to turn off your virtual machine…&lt;br /&gt;
&lt;h2&gt;Have a go hero – trying out Ubuntu One: your personal cloud&lt;/h2&gt;Now that you have an Ubuntu virtual machine, you would likely benefit  from trying out the Ubuntu One service, where you can back up, store,  sync, and share your data with other Ubuntu One users. And the best of  all, it&#39;s free! To open an account, select &lt;b&gt;Applications | Internet |  Ubuntu One&lt;/b&gt;, and follow the instructions on screen.&lt;br /&gt;
&lt;h2&gt;Have a go hero – sharing information between your VM and your host  PC&lt;/h2&gt;Use your Ubuntu One account to transfer some files between your  virtual machine and your host PC. If you&#39;re using Windows, you can work  with the Ubuntu One web interface at &lt;a href=&quot;http://one.ubuntu.com/&quot; target=&quot;_blank&quot;&gt;http://one.ubuntu.com&lt;/a&gt;.&lt;br /&gt;
&lt;h3&gt;Shutting down your virtual machine&lt;/h3&gt;I know you&#39;re thinking, &quot;Geez, I can&#39;t believe this guy! He&#39;s  actually going to spend an entire subsection of this article just to  show us how to shutdown a virtual machine! Aw, come on!&quot;&lt;br /&gt;
Now it&#39;s my turn: Remember we&#39;re talking about a virtual machine  here, not a real PC! You need to consider several things before shutting  this baby down!&lt;br /&gt;
&lt;div class=&quot;book-ad&quot;&gt;&lt;div class=&quot;node node-teaser node-type-books front-node&quot; id=&quot;node-4456&quot;&gt;&lt;div class=&quot;node-inner-0&quot;&gt;&lt;div class=&quot;node-inner-1&quot;&gt;&lt;div class=&quot;node-inner-2&quot;&gt;&lt;div class=&quot;node-inner-3&quot;&gt;&lt;div class=&quot;content clearfix&quot;&gt;&lt;table cellpadding=&quot;5&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td valign=&quot;center&quot; width=&quot;100&quot;&gt;&lt;/td&gt;&lt;td style=&quot;margin-left: 5px;&quot; valign=&quot;top&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;h1&gt;Time for action – shutting down your VM&lt;/h1&gt;Now it&#39;s time to stop whining and start learning how to shut down  your virtual machine...&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Make sure you close all the applications inside your virtual  machine, open the Mozilla Firefox Web browser, &#39;uncapture&#39; your keyboard  and mouse so that you can move to the VirtualBox main menu, and select  the &lt;b&gt;Machine | Close&lt;/b&gt; option.&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Close Virtual Machine&lt;/b&gt; dialog will show up with three  choices for shutting down your virtual machine. Select the &lt;b&gt;Save the  machine state&lt;/b&gt; option, and click on &lt;b&gt;OK&lt;/b&gt; to continue:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_25.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;VirtualBox will show the following dialog before shutting down the  virtual machine:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_26.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Once your virtual machine&#39;s state is saved, it will shut down  automatically, and you&#39;ll be returned to the VirtualBox main screen.  Also, your &lt;b&gt;UbuntuVB&lt;/b&gt; virtual machine status indicator will change  from &lt;b&gt;Powered Off&lt;/b&gt; to &lt;b&gt;Saved&lt;/b&gt;. If you start it again, it will  continue exactly where it was left off, with the Mozilla Firefox web  browser window open.&lt;/li&gt;
&lt;li&gt;Start your UbuntuVB virtual machine again, leave the Mozilla Firefox  window open, and select the &lt;b&gt;Machine | Close&lt;/b&gt; menu option from the  VirtualBox main menu again to open the &lt;b&gt;Close Virtual Machine&lt;/b&gt;  dialog.&lt;/li&gt;
&lt;li&gt;This time select the &lt;b&gt;Send the shutdown signal&lt;/b&gt; option, and  click on &lt;b&gt;OK&lt;/b&gt; to continue. This has the same effect as if you had  pressed the power off button on a real PC. The &lt;b&gt;Shutdown the computer&lt;/b&gt;  dialog from Ubuntu will show up:&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt; &lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_27.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Click on the &lt;b&gt;Shut Down&lt;/b&gt; button to continue. Your Ubuntu  virtual machine will shutdown without saving its state. This is the same  as using the regular shutdown process in Ubuntu: you select the &lt;b&gt;Shut  Down…&lt;/b&gt; option from the pull-down menu in the upper right corner of  your Ubuntu virtual machine. If you later start it again, the Mozilla  Firefox window won&#39;t open.&lt;/li&gt;
&lt;/ol&gt;&lt;h2&gt;What just happened?&lt;/h2&gt;Well, it was pretty much just a simple &#39;shutdown your virtual  machine&#39; exercise, don&#39;t you agree? In VirtualBox, you have three  choices when shutting down your virtual machines. We already saw the  first choice –&lt;b&gt;Save the machine state&lt;/b&gt; –in action. It&#39;s kind of  like suspending or hibernating a laptop computer. Your virtual machine&#39;s  state &#39;freezes&#39; and stays that way until you later start it again.  Then, it resumes normal operation as if nothing happened. All the  applications you left open will still be there.&lt;br /&gt;
The second choice, &lt;b&gt;Send the shutdown signal&lt;/b&gt;, acts as if you  pushed the power button on a real machine. Most modern operating systems  will try to use a proper shutdown mechanism.&lt;br /&gt;
The third choice, &lt;b&gt;Power off the machine&lt;/b&gt;, is like pulling the  power plug on a real PC, so be careful! You could lose sensitive data if  you use it carelessly! I only use this option when a virtual machine  crashes and I can&#39;t shut it down with the other two choices...&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;Always try to use  the guest operating system interface first to shutdown the virtual  machine. If that fails, you can use the &lt;b&gt;Send the shutdown signal&lt;/b&gt;  option instead, but it&#39;s better to treat your virtual machine as if it  were a real PC, don&#39;t forget it.&lt;/i&gt;&lt;/div&gt;Remember that the &lt;b&gt;Send the shutdown signal&lt;/b&gt; option only works  if your guest operating system supports ACPI events. For example, this  option is useless when your virtual machine is showing up the Ubuntu  GRUB loader boot screen.&lt;br /&gt;
&lt;h2&gt;Have a go hero – experimenting with a KUbuntu virtual machine&lt;/h2&gt;There&#39;s another Ubuntu-derived distribution around called KUbuntu.  Why the K? Well, the primary difference between Ubuntu and KUbuntu is  that Ubuntu uses the GNOME window manager (&lt;a href=&quot;http://www.gnome.org/&quot; target=&quot;_blank&quot;&gt;http://www.gnome.org&lt;/a&gt;),  and KUbuntu uses the KDE window manager (&lt;a href=&quot;http://www.kde.org/&quot; target=&quot;_blank&quot;&gt;http://www.kde.org/&lt;/a&gt;). And which one is better? Well,  that&#39;s what you need to try out for yourself...&lt;br /&gt;
Go and grab a copy of KUbuntu from &lt;a href=&quot;http://www.kubuntu.org/&quot; target=&quot;_blank&quot;&gt;http://www.kubuntu.org&lt;/a&gt;, create a virtual machine  named KUbuntuVB or something like that, and install KUbuntu on it. If  possible, try to run your Ubuntu and KUbuntu virtual machines at the  same time to compare them, so you can decide which one is better!&lt;br /&gt;
And if you&#39;re feeling reckless, you should definitely try out other  Linux distributions, for example: SuSE, Red Hat, Slackware, or Fedora.  Come on, I know you can do it!&lt;br /&gt;
&lt;h1&gt;Summary&lt;/h1&gt;I hope you enjoyed the exercises in this article, especially if  you&#39;ve never used Ubuntu Linux before (or any other Linux distro  whatsoever). Here you learned about the basic settings needed to create a  virtual machine, installed the Ubuntu operating system, ran the virtual  machine, and shut it down appropriately.&lt;br /&gt;
Specifically, we covered:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;How to download the Ubuntu Linux Desktop Live CD&lt;/li&gt;
&lt;li&gt;How to configure a new virtual machine in VirtualBox&lt;/li&gt;
&lt;li&gt;How to adjust your virtual machine&#39;s basic settings to install  Ubuntu on it&lt;/li&gt;
&lt;li&gt;How to install the Ubuntu Linux Desktop operating system on your VM&lt;/li&gt;
&lt;li&gt;How to use the VirtualBox host key and to &#39;capture&#39;/&#39;uncapture&#39; the  mouse and keyboard in your virtual machine&lt;/li&gt;
&lt;li&gt;How to run your Ubuntu virtual machine and test some basic functions  such as Internet access and &lt;i&gt;OpenOffice.org&lt;/i&gt; applications&lt;/li&gt;
&lt;li&gt;The different choices available when shutting down your virtual  machine&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/2089135100833141842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2010/07/creating-your-first-virtual-machine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/2089135100833141842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/2089135100833141842'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2010/07/creating-your-first-virtual-machine.html' title='Creating Your First Virtual Machine: Ubuntu Linux (Part 2)'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-7042640391797739726</id><published>2010-06-24T08:45:00.000-07:00</published><updated>2010-06-24T09:22:12.034-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Linux on VM"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="Virtual Machine"/><title type='text'>Creating Your First Virtual Machine: Ubuntu Linux (Part 1)</title><content type='html'>In this two-part article you shall:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Create your first virtual machine in VirtualBox, using Ubuntu Linux&lt;/li&gt;
&lt;li&gt;Learn about your virtual machine&#39;s basic configuration&lt;/li&gt;
&lt;li&gt;Download and install Ubuntu Linux on your virtual machine&lt;/li&gt;
&lt;li&gt;Learn how to start and stop your virtual machine&lt;/li&gt;
&lt;/ul&gt;So let&#39;s get on with it...&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Getting started&lt;/span&gt;&lt;/h1&gt;In this article, you&#39;ll need to download the Ubuntu Linux Desktop  Live CD. It&#39;s a pretty big download (700 MB approximately), so I&#39;d  recommend you to start downloading it as soon as possible. With a 4 Mbps  Internet connection, you&#39;d need approximately 1 hour to download a copy  of Ubuntu Linux Desktop.&lt;br /&gt;
That&#39;s why I decided to change the order of some sections in this  article. After all, action is what we&#39;re looking for, right?&lt;br /&gt;
&lt;h3 style=&quot;font-weight: normal;&quot;&gt;Downloading the Ubuntu Linux Live CD&lt;/h3&gt;After finishing the exercise in this section, you can jump straight  ahead into the next section while waiting for your Ubuntu Live CD to  download. That way, you&#39;ll have to wait for less time, and your virtual  machine will be ready for some action!&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Time for action – downloading the Ubuntu Desktop Live CD&lt;/span&gt;&lt;/h1&gt;In the following exercise I&#39;ll show you how to download the Ubuntu  Linux Desktop Edition from the official Ubuntu website.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open your web browser, and type &lt;a href=&quot;http://www.ubuntu.com/&quot; target=&quot;_blank&quot;&gt;http://www.ubuntu.com&lt;/a&gt; in the address bar. The &lt;b&gt;Ubuntu  Home Page&lt;/b&gt; will appear. Click on the Ubuntu Desktop &lt;b&gt;Download&lt;/b&gt;  link to continue:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_01.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Download Ubuntu&lt;/b&gt; page will show up next. Ubuntu&#39;s most  recent version will be selected by default (&lt;b&gt;Ubuntu Desktop 9.10&lt;/b&gt;,  at the time of this writing). Select a location near you, and click on  the &lt;b&gt;Begin download&lt;/b&gt; button to continue.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;br /&gt;
&lt;i&gt;The Ubuntu Download  page lets you download the 32-bit version automatically. If you want  the 64-bit version of Ubuntu 9.10, you&#39;ll need to click on the &lt;b&gt;Alternative  download&lt;/b&gt; options link below the &lt;b&gt;Download locations&lt;/b&gt; list box.  The exercises in this article use the 32-bit version.&lt;/i&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;You&#39;ll be taken to the download page. After a few seconds, your  download will start automatically. Select the &lt;b&gt;Save File&lt;/b&gt; option in  your browser, and click on &lt;b&gt;OK&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;Now you just have to wait until the download process finishes.&lt;/li&gt;
&lt;/ol&gt;&lt;h2 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;What just happened?&lt;/span&gt;&lt;/h2&gt;I think the exercise pretty much explains itself, so I just want to  add that you can also order a free Ubuntu CD or buy one from Ubuntu&#39;s  website. Just click on the &lt;b&gt;Get Ubuntu&lt;/b&gt; link at the front page and  follow the instructions. I ordered mine when writing this article to see  how long it takes to arrive at my front door. I hope it arrives before I  finish the book!&lt;br /&gt;
&lt;h2 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Have a go hero – doing more with the thing&lt;/span&gt;&lt;/h2&gt;You can try downloading other Ubuntu versions, like Ubuntu 8.10 Hardy  Heron. Just click on the &lt;b&gt;Alternative download options&lt;/b&gt; link below  the &lt;b&gt;Download locations&lt;/b&gt; list box, and explore the other options  available for download.&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Creating your Ubuntu Linux VM&lt;/span&gt;&lt;/h1&gt;Now that you installed VirtualBox, it&#39;s time to learn how to work  with it. I&#39;ve used other virtualization products such as VMware besides  VirtualBox, and in my humble opinion, the user interface in VirtualBox  is a delight to work with.&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Time for action – creating a virtual machine&lt;/span&gt;&lt;/h1&gt;At last you have the chance to use Windows and Linux side by side!  This is one of the best features VirtualBox has to offer when you want  the best of both worlds!&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open VirtualBox, and click on the &lt;b&gt;New&lt;/b&gt; button (or press &lt;i&gt;Ctrl+N&lt;/i&gt;)  to create a new virtual machine:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;275&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_02.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Welcome to the New Virtual Machine Wizard!&lt;/b&gt; dialog will  show up. Click on &lt;b&gt;Next&lt;/b&gt; to continue. Type &lt;i&gt;UbuntuVB&lt;/i&gt; in the  Name field, select &lt;i&gt;Linux&lt;/i&gt; as the &lt;b&gt;Operating System&lt;/b&gt; and &lt;i&gt;Ubuntu&lt;/i&gt;  as the &lt;b&gt;Version&lt;/b&gt; in the &lt;b&gt;VM Name and OS Type&lt;/b&gt; dialog.&lt;/li&gt;
&lt;li&gt;Click on &lt;b&gt;Next&lt;/b&gt; to continue. You can leave the default &lt;i&gt;384  MB&lt;/i&gt; value in the &lt;b&gt;Memory&lt;/b&gt; dialog box or choose a greater amount  of RAM, depending on your hardware resources.&lt;/li&gt;
&lt;li&gt;Click on &lt;b&gt;Next&lt;/b&gt; to continue. Leave the default values in the &lt;b&gt;Virtual  Hard Disk&lt;/b&gt; dialog, and click on &lt;b&gt;Next&lt;/b&gt; twice to enter the &lt;b&gt;Create  New Virtual Disk&lt;/b&gt; wizard. Leave the default &lt;i&gt;Dynamically Expanding  Storage&lt;/i&gt; option in the &lt;b&gt;Hard Disk Storage Type&lt;/b&gt; dialog, and  click on &lt;b&gt;Next&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;Leave the default values chosen by VirtualBox for your Ubuntu Linux  machine in the &lt;b&gt;Virtual Disk Location and Size&lt;/b&gt; dialog (&lt;i&gt;UbuntuVB&lt;/i&gt;  and &lt;i&gt;8.00 GB&lt;/i&gt;), and click on &lt;b&gt;Next&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;A &lt;b&gt;Summary&lt;/b&gt; dialog will appear, showing all the parameters you  chose for your new virtual hard disk. Click on &lt;b&gt;Finish&lt;/b&gt; to exit the  &lt;b&gt;Create New Virtual Hard Disk&lt;/b&gt; wizard. Now another &lt;b&gt;Summary&lt;/b&gt;  dialog will appear to show the parameters you chose for your new virtual  machine. Click on &lt;b&gt;Finish&lt;/b&gt; to exit the wizard and return to the  VirtualBox main window:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;235&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_03.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Your new &lt;i&gt;UbuntuVB&lt;/i&gt; virtual machine will appear on the  VirtualBox main screen, showing all its parameters in the &lt;b&gt;Details&lt;/b&gt;  tab.&lt;/li&gt;
&lt;/ol&gt;&lt;h2 style=&quot;font-weight: normal;&quot;&gt;What just happened?&lt;/h2&gt;Now your Ubuntu Linux virtual machine is ready to run! In this  exercise, you created a virtual machine with all the parameters required  for a typical Ubuntu Linux distribution. The first parameter to  configure was the &lt;b&gt;base memory&lt;/b&gt; or &lt;b&gt;RAM&lt;/b&gt;. As you saw in step  3, the recommended size for a typical Ubuntu Linux installation is 384  MB.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;Exercise caution  when selecting the RAM size for your virtual machine. The golden rule of  thumb dictates that, if you have less than 1 GB of RAM, you can&#39;t  assign more than one half of your physical RAM to a virtual machine  because you&#39;ll get into trouble! Your &lt;b&gt;host&lt;/b&gt; PC (the one that runs  VirtualBox) will start to behave erratically and could crash!&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;
With 2 GB, for example, you can easily assign 1 GB to your virtual  machine and 1 GB to your physical PC without any problems. Or you could  even have three virtual machines with 512 MB of RAM each and leave 512  MB for your host PC. The best way to find out the best combination of  RAM is to do some experimenting yourself and to know the minimum RAM  requirements for your host and guest operating systems.&lt;br /&gt;
&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;br /&gt;
&lt;i&gt;Don&#39;t assume that  assigning lots of RAM to your virtual machine will increase its  performance. If, for example, you have 2 GB of RAM on your host and you  assign 1 GB to an Ubuntu virtual machine, it&#39;s very unlikely there will  be a bigger performance increase than if you were assigning only 512 MB  to the same Ubuntu virtual machine. On the contrary, your host PC will  work better if you only assign 512 MB to the Ubuntu virtual machine  because it will use some of the extra RAM for disk caching, instead of  recurring to the physical hard disk. However, it all depends on the  guest operating system you plan to use and what applications you need to  run.&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;
If you look closely at the &lt;b&gt;Base Memory Size&lt;/b&gt; setting in the &lt;b&gt;Memory&lt;/b&gt;  dialog when creating a virtual machine, you&#39;ll notice that there are  three memory areas below the slider control: the green-colored area  indicates the amount of memory range you can safely choose for your  virtual machine; the yellow-colored area indicates a dangerous memory  range that you can choose, but nobody knows if your virtual machine and  your host will be able to run without any problems; and the red-colored  area indicates the memory range that your virtual machine can&#39;t use.  It&#39;s wise to stick with the default values when creating a new virtual  machine. Later on, if you need to run a memory-intensive application,  you can add more RAM through the &lt;b&gt;Settings&lt;/b&gt; button, as we&#39;ll see in  the following section.&lt;br /&gt;
&lt;br /&gt;
Another setting to consider (besides memory) when creating a virtual  machine is the &lt;b&gt;virtual hard drive&lt;/b&gt;. Basically, a virtual hard disk  is represented as a special file on your host computer&#39;s physical hard  disk, and it&#39;s commonly known as a disk image file. This means that your  host computer sees it as a &#39;large&#39; file on its system, but your virtual  machine sees it as a &#39;real&#39; hard disk connected to it. Since virtual  hard drives are completely independent from each other, there is no risk  of accidental overwriting, and they can&#39;t be larger than the free space  available on your real computer&#39;s physical hard drive. This is the most  common way to handle virtual storage in VirtualBox; later on, we&#39;ll see  more details about disk image files and the different formats  available.&lt;br /&gt;
&lt;br /&gt;
VirtualBox assigns a default value based on the guest operating  system you plan to install in your virtual machine. For Ubuntu Linux,  the default value is 8 GB. That&#39;s enough space to experiment with Ubuntu  and learn to use it, but if you really want to do some serious work  —desktop publishing or movie production, for example—you should consider  assigning your virtual machine more of your hard disk space.&lt;br /&gt;
You can even get two hard drives on your physical machine, and assign  one for your host system and the other one for your virtual machine! Or  you can also create a new virtual hard disk image and add it as if it  were a second hard drive!&lt;br /&gt;
&lt;br /&gt;
Before going to the next section, I&#39;d like to talk about the two  virtual hard disk storage types available in VirtualBox: &lt;b&gt;dynamically  expanding storage&lt;/b&gt; and &lt;b&gt;fixed-size storage&lt;/b&gt;. The &lt;b&gt;Hard Disk  Storage Type&lt;/b&gt; dialog you saw in step 4 of the previous exercise  contains a brief description for both types of storage. At first, the  dynamically expanding option might seem more attractive because you  don&#39;t see the space reduction in your hard drive immediately.&lt;br /&gt;
&lt;br /&gt;
When using dynamically expanding storage, VirtualBox needs to expand  the storage size continuously, and that could mean a slight decrease in  speed when compared to a fixed-size disk, but most of the time this is  unnoticeable. Anyway, when the virtual hard disk is fully expanded, the  differences between both types of storage disappear.&lt;br /&gt;
&lt;br /&gt;
Most people agree that a dynamically expanding disk represents a  better choice than a fixed one, since it doesn&#39;t take up unnecessary  space from your host&#39;s hard disk until needed. Personally, when  experimenting with a new virtual machine, I use the dynamically  expanding option, but when doing some real work, I like to set apart my  virtual machine&#39;s hard disk space from the beginning, so I choose the  fixed-size storage option in these cases.&lt;br /&gt;
&lt;h2 style=&quot;font-weight: normal;&quot;&gt;Have a go hero – experimenting with memory and hard disk storage  types&lt;/h2&gt;When creating a virtual machine, you can specify the amount of RAM to  assign to it instead of using the default values suggested by  VirtualBox. Create another virtual machine named &lt;i&gt;UbuntuVB2&lt;/i&gt;, and  try to assign the entire RAM available to it. You won&#39;t be able to  continue until you select a lower value because the &lt;b&gt;Next&lt;/b&gt; button  will be grayed out, which means you&#39;re in the red-colored memory range.  Now move back the slider until the &lt;b&gt;Next&lt;/b&gt; button is active again;  you&#39;ll probably be in the yellow-colored memory range. See if your  virtual machine can start with that amount of memory and if you can use  both your host PC and your VM without any problems. In case you  encounter any difficulties, keep moving back the memory range until all  problems disappear.&lt;br /&gt;
&lt;br /&gt;
Once you&#39;re done experimenting with the memory setting, use the &lt;i&gt;UbuntuVB2&lt;/i&gt;  virtual machine with the same exact settings as the one you created in  the previous exercise, but this time use a fixed-size hard drive. Just  take into account that since VirtualBox must prepare all the storage  space at once, this process may take a long time depending on the  storage size you selected and the performance of your physical hard  disk. Now go and try out different storage sizes with both types of  disks: dynamically expanding and fixed size.&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;Configuring basic settings for your Ubuntu Linux VM&lt;/h1&gt;All right, you created your Ubuntu virtual machine and downloaded a  copy of Ubuntu Desktop Live CD. Can you start installing Ubuntu now? I  know you&#39;ll hate me, but nope, you can&#39;t. We need to tell your virtual  machine where to boot the Live CD from, as if we were using a real PC.  Follow me, and I&#39;ll show you the basic configuration settings for your  VM, so you can start the Ubuntu installation ASAP!&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;Time for action –basic configuration for your VM&lt;/h1&gt;In this exercise you&#39;ll learn how to adjust some settings for your  virtual machine, so you can install Ubuntu Linux on it.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open VirtualBox, select your UbuntuVB virtual machine, and click on  the &lt;b&gt;Settings&lt;/b&gt; button:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;233&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_04.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;UbuntuVB – Settings&lt;/b&gt; dialog will appear, showing all the  settings in the &lt;b&gt;General&lt;/b&gt; tab.&lt;/li&gt;
&lt;li&gt;Click on the &lt;b&gt;Storage&lt;/b&gt; category from the list in the left  panel. Then select the &lt;b&gt;Empty&lt;/b&gt; slot located just below the &lt;i&gt;UbuntuVB.vdi&lt;/i&gt;  hard disk image, under the &lt;b&gt;IDE Controller&lt;/b&gt; element inside the &lt;b&gt;Storage  Tree&lt;/b&gt; panel, and click on the &lt;b&gt;Invoke Virtual Media Manager&lt;/b&gt;  button:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;234&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_05.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Virtual Media Manager&lt;/b&gt; dialog will appear next. Click on  the &lt;b&gt;Add&lt;/b&gt; button to add the &lt;b&gt;Ubuntu Linux Live CD ISO&lt;/b&gt; image:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;214&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_06.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Select a CD/DVD-ROM disk image file&lt;/b&gt; dialog will show up  next. Navigate to the directory where you downloaded the Ubuntu Desktop  ISO image, select it, and click on the &lt;b&gt;Open&lt;/b&gt; button to continue.&lt;/li&gt;
&lt;li&gt;The Ubuntu Desktop ISO image will appear selected in the &lt;b&gt;CD/DVD  Images&lt;/b&gt; tab from the &lt;b&gt;Virtual Media Manager&lt;/b&gt; dialog. Click on  the &lt;b&gt;Select&lt;/b&gt; button to attach the Ubuntu ISO image to your virtual  machine&#39;s CD/DVD drive.&lt;/li&gt;
&lt;li&gt;Next, the Ubuntu ISO image file will appear selected on the &lt;b&gt;ISO  Image File&lt;/b&gt; setting from the &lt;b&gt;UbuntuVB – Settings&lt;/b&gt; dialog. Click  on &lt;b&gt;OK&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;Now you&#39;re ready to start your virtual machine and install Ubuntu!&lt;/li&gt;
&lt;/ol&gt;&lt;h2 style=&quot;font-weight: normal;&quot;&gt;What just happened?&lt;/h2&gt;As you can see from the previous exercise, your virtual machine is  just like a real PC. You need to &#39;insert&#39; a bootable CD so that the VM  can boot and start installing Ubuntu. In this case, we used an ISO image  of Ubuntu Desktop instead of having to insert a real bootable CD.  That&#39;s one of the benefits of VirtualBox: you can forget about having to  burn a CD to test the new Ubuntu version or any other operating system!  You just need to download the ISO image and configure your virtual  machine to act as if there was a real CD inserted in the CDROM drive!&lt;br /&gt;
&lt;br /&gt;
You can also go the traditional way, in case you have a DVD or CD  ready to install your Ubuntu Desktop system. Just insert your DVD/CD,  click on your virtual machine&#39;s &lt;b&gt;Settings&lt;/b&gt; button, go to the &lt;b&gt;CD/DVD-ROM&lt;/b&gt;  category, and select the &lt;b&gt;Host CD/DVD&lt;/b&gt; drive option instead of &lt;b&gt;ISO  Image File&lt;/b&gt;.&lt;br /&gt;
Whichever option you choose, your virtual machine will start to boot  like a real physical PC! In the following section you&#39;ll get to see it  with your own eyes...&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;Installing Ubuntu Linux on your VM&lt;/h1&gt;Now everything&#39;s ready to start installing Ubuntu! At last you&#39;re  about to see this wonderful piece of software in action...&lt;br /&gt;
&lt;h1 style=&quot;font-weight: normal;&quot;&gt;Time for action – installing Ubuntu Desktop on your VM&lt;/h1&gt;Ok, it&#39;s time to try out our new toy! Get ready for the ride of your  life...&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Click on the &lt;b&gt;Start&lt;/b&gt; button to start your virtual machine:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;204&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_07.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;An Information dialog will appear to tell you that the &lt;b&gt;Auto  capture keyboard&lt;/b&gt; option is turned on. Enable the &lt;b&gt;Do not show this  message again&lt;/b&gt; option, and click on &lt;b&gt;OK&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;Another Information dialog will show up to tell you about the color  depth of your virtual machine. Enable the &lt;b&gt;Do not show this message  again&lt;/b&gt; option, and click on &lt;b&gt;OK&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;The Ubuntu menu screen will show up, along with a pop-up menu where  you can select the language of installation. Click anywhere inside the  virtual machine screen, and the following information dialog will pop  up:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;237&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_08.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Enable the &lt;b&gt;Do not show this message again&lt;/b&gt;, and click on &lt;b&gt;Capture&lt;/b&gt;  to continue. The mouse pointer will disappear, and you will be able to  move along the language menu. Select the &lt;b&gt;English&lt;/b&gt; option, and  press &lt;i&gt;Enter&lt;/i&gt; to continue.&lt;/li&gt;

&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;Remember you can  press Right-Ctrl, the default host key, at any time to uncapture the  keyboard and mouse so you can move your mouse pointer out of the virtual  machine screen.&lt;/i&gt;&lt;/div&gt;
&lt;li&gt;Now select the &lt;b&gt;Install Ubuntu&lt;/b&gt; option on the Ubuntu start-up  menu, and press &lt;i&gt;Enter&lt;/i&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;274&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_09.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Ubuntu will start to boot and, depending on your hardware, it will  take some time to boot up completely. A red bar below the Ubuntu logo  will appear to show the progress of the booting process (the bar should  turn completely yellow when it&#39;s finished).&lt;/li&gt;
&lt;li&gt;At the end of the Ubuntu booting process, the &lt;b&gt;Welcome&lt;/b&gt; screen  will appear, as shown below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_10.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Select the language you want to use for the installation process (in  this exercise, we&#39;ll stick with English). Click on &lt;b&gt;Forward&lt;/b&gt; to  continue. Select your &lt;b&gt;Region&lt;/b&gt; and &lt;b&gt;City&lt;/b&gt; in the &lt;b&gt;Where are  you?&lt;/b&gt; screen, and click on &lt;b&gt;Forward&lt;/b&gt; to continue.&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Keyboard layout&lt;/b&gt; screen will appear next. You can leave  the default option if you&#39;re using a typical QWERTY keyboard or choose  an appropriate layout for your keyboard. To be sure the layout you chose  works with your keyboard, type something into the test box. Click on &lt;b&gt;Forward&lt;/b&gt;  when you&#39;re ready to continue the installation process.&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Prepare disk space &lt;/b&gt;&lt;i&gt;Use the entire disk&lt;/i&gt;) to let  Ubuntu prepare the disk for you. Click on &lt;b&gt;Forward&lt;/b&gt; to continue.&lt;/li&gt;

&lt;div style=&quot;margin-left: 40px; margin-right: 40px;&quot;&gt;&lt;i&gt;Remember you&#39;re  using a virtual hard disk and not the physical hard drive of your real  PC; it&#39;s perfectly ok to use the entire virtual hard disk for your  Ubuntu guest operating system; the rest of the files in your real hard  drive won&#39;t be affected.&lt;/i&gt;&lt;/div&gt;
&lt;li&gt;On the next screen (&lt;b&gt;Who are you?&lt;/b&gt;), you need to fill in your  name, username, password, and your computer&#39;s name. You can also choose  to login automatically or require a password to login. Use the following  screenshot as a guide, but remember to replace my personal info with  yours! Click on &lt;b&gt;Forward&lt;/b&gt; when you&#39;re ready to continue:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_11.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Ready to Install&lt;/b&gt; screen will show up next with a summary  of all the settings you chose for the Ubuntu installation. Click on &lt;b&gt;Install&lt;/b&gt;  when you&#39;re ready to begin the installation process.&lt;/li&gt;
&lt;li&gt;Ubuntu will start to install in your virtual machine. An &lt;b&gt;Installing  System&lt;/b&gt; dialog will show you the installation progress:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_12.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;After some time (depending on your hardware speed), the &lt;b&gt;Installation  Complete&lt;/b&gt; dialog will appear. Click on &lt;b&gt;Restart Now&lt;/b&gt; to exit  the installer.&lt;/li&gt;
&lt;li&gt;Eventually, the Ubuntu logo will show up. In a real PC, you would  have to remove the installation disc and press &lt;i&gt;Enter&lt;/i&gt;. In this  case, you need to shutdown the virtual machine and change the CD-DVD Rom  drive setting. Hit the &lt;i&gt;Right-Ctrl&lt;/i&gt; key to &lt;i&gt;uncapture&lt;/i&gt; the  mouse so you can move it to select the &lt;b&gt;Machine | Close&lt;/b&gt; option  from the VirtualBox main menu:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;div style=&quot;overflow: auto; text-align: center; width: 500px;&quot;&gt;&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;208&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_13.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;The &lt;b&gt;Close Virtual Machine&lt;/b&gt; dialog will appear next. Select the  &lt;b&gt;Power off the machine&lt;/b&gt; option, and click on &lt;b&gt;OK&lt;/b&gt; to  continue.&lt;/li&gt;
&lt;li&gt;VirtualBox will shutdown the virtual machine, and you&#39;ll return to  the main screen. Now click on the &lt;b&gt;Settings&lt;/b&gt; button to open the &lt;b&gt;UbuntuVB  – Settings&lt;/b&gt; dialog, go to the &lt;b&gt;Storage&lt;/b&gt; category, select the &lt;i&gt;ubuntu-9.10-desktop-i386.  iso&lt;/i&gt; image in the &lt;b&gt;Storage Tree&lt;/b&gt; panel; then click on the &lt;b&gt;CD/DVD  Device&lt;/b&gt; list box, and select the &lt;b&gt;Empty&lt;/b&gt; option to remove the  Ubuntu ISO image:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;143&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_14.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;Click on &lt;b&gt;OK&lt;/b&gt; to close the &lt;b&gt;UbuntuVB – Settings&lt;/b&gt; dialog.  Your virtual machine is now ready to start Ubuntu Linux for the first  time!     &lt;/li&gt;
&lt;/ol&gt;&lt;h2 style=&quot;font-weight: normal;&quot;&gt;What just happened?&lt;/h2&gt;Ok, you mixed up all the ingredients, baked the mix, and now the cake  is ready to eat! Sorry about the analogy, but I was hungry at the time I  wrote this!&lt;br /&gt;
&lt;br /&gt;
Personally, I think this is one of the coolest things I&#39;ve seen in  the last few years... Installing a completely standalone guest operating  system inside a host operating system with just a few clicks... Whew!  Now we&#39;ll really start to squeeze all the juice out of our hardware! But  before jumping to the next exercise, there are a few things I want to  talk about.&lt;br /&gt;
&lt;br /&gt;
Every time you start a virtual machine in VirtualBox, it has to share  the keyboard and the mouse with your real PC. The &lt;b&gt;Auto capture  keyboard&lt;/b&gt; feature lets your virtual machine &#39;capture&#39; all the  keyboard action automatically every time you activate its window, and  it&#39;s enabled by default on every new virtual machine. As you saw in step  2, an information dialog shows up when starting a virtual machine for  the first time to tell you about this feature.&lt;br /&gt;
&lt;br /&gt;
Also, if you click with your mouse inside the virtual machine&#39;s  window, it will &#39;capture&#39; all your mouse movements, as the information  dialog in step 4 indicates. And how can we &#39;uncapture&#39; the keyboard and  the mouse to use it outside the virtual machine again? VirtualBox uses a  special key, called the &lt;b&gt;Host Key&lt;/b&gt;, for this purpose. By default,  the host key is &lt;i&gt;Right Ctrl&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
To redefine the host key, you need to go to the VirtualBox main  screen and select &lt;b&gt;File |  Preferences&lt;/b&gt; in the main menu:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;204&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_15.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;Then you need to select the &lt;b&gt;Input&lt;/b&gt; category in the &lt;b&gt;VirtualBox  – Settings&lt;/b&gt; dialog, click on the &lt;b&gt;Host Key&lt;/b&gt; field, and then hit  the key you want to use as the new host key. Finally, you just need to  click on the &lt;b&gt;OK&lt;/b&gt; button to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Once you define the key you want to use as the host key, you can use  it to &#39;capture&#39; and &#39;uncapture&#39; the keyboard and the mouse in your  virtual machine. Every VM shows the actual state of the host key at the  bottom-right part of its main window:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;VirtualBox 3.1: Beginner&#39;s Guide&quot; border=&quot;0&quot; height=&quot;159&quot; src=&quot;http://www.packtpub.com/sites/default/files/Article-Images/9140_02_16.png&quot; style=&quot;border: 0pt none;&quot; title=&quot;VirtualBox 3.1: 
Beginner&#39;s Guide&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;In short, to use your virtual machine, you need to move your mouse  inside its main window and click on it. You can also select the virtual  machine&#39;s window and hit the host key to &#39;capture&#39; the keyboard and the  mouse. Then, if you want to exit your virtual machine and use something  on your host PC, you just hit the host key, and you can move your mouse  out of the virtual machine&#39;s window, along with your keyboard. Simple  enough, right?&lt;br /&gt;
&lt;br /&gt;
The last thing I want to mention is the color depth of your virtual  machine&#39;s screen. In step 3 of the previous exercise, an information  dialog appeared on your virtual machine to tell you about this. Now  let&#39;s just try out your new Ubuntu virtual machine!</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/7042640391797739726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2010/06/creating-your-first-virtual-machine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/7042640391797739726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/7042640391797739726'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2010/06/creating-your-first-virtual-machine.html' title='Creating Your First Virtual Machine: Ubuntu Linux (Part 1)'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-1935109658028537650</id><published>2010-06-17T16:03:00.000-07:00</published><updated>2010-06-17T16:09:02.957-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><category scheme="http://www.blogger.com/atom/ns#" term="SketchUp"/><title type='text'>Walkthrough Tools within SketchUp 7.1</title><content type='html'>Walkthrough Tools within SketchUp 7.1:&lt;br /&gt;
In this article we will cover&lt;br /&gt;
* What to include in your animation&lt;br /&gt;
* How to create a simple walkthrough in SketchUp&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The same principles for stills and animation&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Creating moving images, or movies for architectural visualization, takes a slightly different but related mindset to still images (stills). That&#39;s because an animated sequence shows off more of the scene than in a still. For example, you might see the back of a building which you wouldn&#39;t have bothered modeling for a still. Now you have to model it.&lt;br /&gt;
&lt;br /&gt;
Here&#39;s a recap&lt;br /&gt;
&lt;br /&gt;
* If you can&#39;t see it, it isn&#39;t there (don&#39;t model it)&lt;br /&gt;
* If it&#39;s in the background, make it low poly or a 2D cutout&lt;br /&gt;
* Use interesting and varied camera angles&lt;br /&gt;
&lt;br /&gt;
But this time, all this has to be kept in mind for the duration of a 30-second, 5-minute, or even feature length presentation made up of many views of the model. This can quickly become an overwhelming premise. So, we need to do it like all good movie producers do it. And guess what? You already know what that is, and practice it just about every day, because we&#39;re simply talking about breaking it down into bite sized chunks.&lt;br /&gt;
&lt;b&gt;Rome wasn&#39;t built in a day&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Some architect didn&#39;t sit down one day and start sketching Rome, starting with the Coliseum and working outwards until he&#39;d finished the whole city. It took ages (literally) and involved many different designers and designs. So, Rome was made up of component parts, and each component part was made up of individual bricks. Just like you do every day with other design projects, home DIY, life goals, or even a holiday itinerary, you&#39;re going to break down your animation scene by scene and shot by shot.&lt;br /&gt;
&lt;b&gt;Making a start: Sketch it out&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Even if you already have a fully detailed model that you can quite happily view from any angle, you need to start by planning what you want to see in your animation. Actually, that&#39;s a complete lie. Why would the client want to see what you want to see? You&#39;re interested in buildings for pity&#39;s sake! So, we must start by filling the boots of the client or &quot;audience&quot; and from now on only think in terms of their wishes. If there was a switch to turn them on, what would it be?&lt;br /&gt;
&lt;b&gt;Time for action – write out your itinerary&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
If you were to visit the quaint English village of Bourton-on-the-Water, what would be the absolute &quot;must sees&quot; of your trip? If you have travelled for 17 days to get there, you knew you could never go back there again, and you were the last one to go with a film camera before it was leveled by hungry bulldozers? So, write out your itinerary. There&#39;s a method of doing this that&#39;s completely easy and foolproof. You can do it when you&#39;re on the train or eating your cornflakes:&lt;br /&gt;
&lt;br /&gt;
1. Take an A3 sheet of paper.&lt;br /&gt;
2. Start at the centre of the page and write down a feature of the building you&#39;re &quot;selling&quot; to your audience.&lt;br /&gt;
3. Rotate the page randomly and write another somewhere in a blank space.&lt;br /&gt;
4. Do it again and again&lt;br /&gt;
5. Go completely crazy and write down whatever pops into your head (such as &quot;dishwasher&quot;, &quot;great drainage&quot;, or &quot;south facing&quot;).&lt;br /&gt;
6. When you&#39;ve filled the page, collect them all up in a list.&lt;br /&gt;
7. Put three columns down the right-hand side, labeled Quality, Desirability, and a blank column.&lt;br /&gt;
&lt;br /&gt;
It doesn&#39;t matter if you spell desirability wrong. That&#39;s the point of the exercise, no wrong answers, don&#39;t worry about spelling or getting the best stuff down. Just get the flow going. When you&#39;re done, in the Quality column give a rating 1 to 5 for how &quot;nice&quot; this part of this particular development is:&lt;br /&gt;
8. Now do a valley fold to hide the first column.&lt;br /&gt;
9. In the Desirability column, give a rating 1 to 5 for how desirable such a building feature is to your audience. You need to divorce this from your particular building completely. Rate it purely on how your audience would view this feature on any building. Does anti-vandal paint on a bin store make someone want to buy a property?&lt;br /&gt;
10. When you&#39;re done, multiply the first and second column and put the total in the third.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;What just happened?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Without knowing it or finding it remotely difficult, you have written the itinerary for your animation. Easy wasn&#39;t it? You probably don&#39;t think you&#39;ve achieved much, but you have. By using this method you were forced to be dispassionate about your design or model. You were also forced to separate out what you like (as a building feature lover) and what your audience wants (as the ones wanting to be in it!). What you have in the third column is a definitive rating of the impact of each feature on your audience. Go ahead and label it &quot;impact&quot; now.&lt;br /&gt;
&lt;b&gt;Generating the story board&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
You are now ready to sketch out the storyboard, because you now know what to include in your animation and what to leave out. Take a pink marker and highlight everything with a score of 20-25. This is your prime real-estate. Take an orange marker and highlight scores of 12-16. And take a yellow marker to all the nines. Nines are just about tolerable. What you now have is a color coded scene allocation system. When deciding what to put into your animation, you should get all the pinks in as many times as you can. You should get the oranges in the rest of the time. And you should use the yellows to pad the content out where necessary and give an overall context to the presentation. And guess what? Anything you&#39;ve not colored will actually detract from the presentation and stop people buying the property.&lt;br /&gt;
&lt;br /&gt;
Don&#39;t you dare even model them!&lt;br /&gt;
&lt;b&gt;Dealing with detractions&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
As you&#39;ve discovered, anything in your list that didn&#39;t get colored could easily detract so much from your presentation that someone who would normally be enamored with it is left cold instead. So, these areas should be minimized if possible, but what do you do if they&#39;re a central feature and have to be included for context (or honesty)? For example the electricity enclosure, the bin store, or the plant room? Here&#39;s a quick list of ways to overcome this problem:&lt;br /&gt;
&lt;br /&gt;
* Leave non-critical areas blank and un-textured, giving the context but not the detail&lt;br /&gt;
* Cover or mask with entourage&lt;br /&gt;
* Leave unfocussed in the background (with moving images this only possible when using professional level compositing software)&lt;br /&gt;
* Use viewing angles that obscure these features&lt;br /&gt;
&lt;br /&gt;
Probably as much of your effort should be spent in minimizing bad features as promoting good ones. You should aim at showing the development in its best light and greatest potential.&lt;br /&gt;
&lt;b&gt;Time for action – the storyboard&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Now that you&#39;ve decided what needs to be included and what needs to be left out, you need to decide how long to allocate to each, and what the camera views should be. Do the following on paper with sketches.&lt;br /&gt;
&lt;br /&gt;
1. Split up your list into scenes, including wide views and close-up views.&lt;br /&gt;
2. Decide how long the whole animation should last. Add a couple of seconds for cutting out later.&lt;br /&gt;
3. What about transitions? Are you going to travel from one scene to the next, or cut to it?&lt;br /&gt;
4. Work out how long to spend on each scene, each transition.&lt;br /&gt;
5. Create a rough sketch for the start of each scene.&lt;br /&gt;
6. Scan them into your computer.&lt;br /&gt;
&lt;br /&gt;
The following steps are shown specific to Windows Movie Maker, but are similar to all basic video editing software (Adobe Premiere Elements, Final Cut Express, iMovie, or similar)&lt;br /&gt;
7. In Windows Movie Maker or similar, import each picture.&lt;br /&gt;
8. In Import Pictures hold Ctrl to select more than one then click Import.&lt;br /&gt;
9. The pictures will open in the Collections area.&lt;br /&gt;
10. Drag them one by one into the StoryBoard in the sequence you want&lt;br /&gt;
11. Click Show Timeline. Drag the edge of each image out to the correct time-length.&lt;br /&gt;
12. Press play on the preview viewer.&lt;br /&gt;
13. Keep adding scene sketches and editing the timing until you&#39;re happy.&lt;br /&gt;
14. Add voice or music to the audio channel if you want to key the scene transitions to that as follows:&lt;br /&gt;
15. Click Import Audio or Music. Navigate to the file, then drag into the storyboard as before.&lt;br /&gt;
16. Remember to save the project.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;What just happened?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
You just storyboarded your whole animation so that you now know exactly where and what you need to go and model. You did this in Movie Maker or something similar, creating place markers so you can easily import your moving clips later. This saves an enormous amount of time in the long run because you will only model, texture, animate, and render what you&#39;re going to see, not what&#39;ll get left on the cutting room floor. If you already have your SketchUp scene completed, you could take screenshots from that instead of sketching it out. You can use this later, as a template to insert the actual animations into.&lt;br /&gt;
&lt;br /&gt;
When you&#39;re doing a complex project such as an animation, it&#39;s vital to get a second or third pair of eyes onto it early on. Use your rough and ready movie to talk it through with a colleague, tutor, or a &quot;clued up&quot; friend. It&#39;s important to do it at this early stage because you haven&#39;t invested lots of time and emotion into it yet.&lt;br /&gt;
&lt;b&gt;Animating in SketchUp&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Now comes the really fun bit! We&#39;re going to look at the main ways you can get animation out of SketchUp. And don&#39;t forget, whatever you animate in SketchUp can be turned into a render in Kerkythea. So, SketchUp is a pre-visualization tool for rendering as well as a visualization tool in itself.&lt;br /&gt;
&lt;b&gt;Time for action – a simple walkthrough&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
1. Create the simple scene illustrated here in SketchUp. The tallest object is about 2 meters (6.5 feet) tall.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&amp;nbsp;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhewL3pzqNsEf2UhOUoF8lkaNfJeW3wZARAl9cjCAMpNnBGhTd1WeeCSru_Hml_k8xD5Uqyy4yRQt1yR3eInHxsTiwE0_3qpEBWAENe0OrOF52fqCNLsrJxhZvISykNcogZ3zFzniPcLkE/s1600/first.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;366&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhewL3pzqNsEf2UhOUoF8lkaNfJeW3wZARAl9cjCAMpNnBGhTd1WeeCSru_Hml_k8xD5Uqyy4yRQt1yR3eInHxsTiwE0_3qpEBWAENe0OrOF52fqCNLsrJxhZvISykNcogZ3zFzniPcLkE/s400/first.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
2. Texture all the faces differently so that you can recognize where you are at any time.&lt;br /&gt;
3. Now go to &lt;b&gt;View | Toolbars | Walkthrough&lt;/b&gt;.&lt;br /&gt;
4. Select the &lt;b&gt;Walk&lt;/b&gt; button.&lt;br /&gt;
5. Type in your &lt;b&gt;Eye Height&lt;/b&gt; and hit Enter (see the following screenshot).&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEje_sS9x5oNsjWYI6iswq03zHK-Q-nSvlUPMij4e35A7L4-h5Eeuc-GWZWIZCC4U4VTvtTJc6bNGePO7GxwwcBqr5PeXHz6s0lNGAD3YBa24CLYv262majHIH_NKr3FpeUn9q2_zFl6Pmw/s1600/Eye+hight.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEje_sS9x5oNsjWYI6iswq03zHK-Q-nSvlUPMij4e35A7L4-h5Eeuc-GWZWIZCC4U4VTvtTJc6bNGePO7GxwwcBqr5PeXHz6s0lNGAD3YBa24CLYv262majHIH_NKr3FpeUn9q2_zFl6Pmw/s400/Eye+hight.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
6. Click the &lt;b&gt;Look Around&lt;/b&gt; button to move your eyes around.&lt;br /&gt;
7. This can be the start of your walkthrough. Go to &lt;b&gt;View | Animation | Add Scene&lt;/b&gt;.&lt;br /&gt;
8. We&#39;re going to walk in between the boxes and look what&#39;s on one of the surfaces we can&#39;t see.&lt;br /&gt;
9. With the &lt;b&gt;Walk&lt;/b&gt; button selected, click on the screen, hold the left mouse button, and move the mouse forward. You start to walk! Move the mouse from side to side to steer.&lt;br /&gt;
10. Walk in-between the boxes. Now add another scene.&lt;br /&gt;
11. Use the &lt;b&gt;Look Around&lt;/b&gt; function to turn on the spot and look directly at the right hand box. Add another scene.&lt;br /&gt;
12. To see how you&#39;ve done, go to &lt;b&gt;View | Animation | Play&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;What just happened?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
You set up a simple scene and told SketchUp you wanted to view it from eye level. Using the &lt;b&gt;Walkthrough&lt;/b&gt; tool bar you simulated a person walking through your SketchUp model. This in itself is a highly effective presentation tool. You used the &lt;b&gt;Look Around&lt;/b&gt; tool to change your view without altering eye height or camera position. It&#39;s important to use these tools to change views rather than your usual &lt;b&gt;Pan&lt;/b&gt; and &lt;b&gt;Orbit&lt;/b&gt;, in order to maintain a level eye height. You then created scenes to act like key-frames for the animation.&lt;br /&gt;
&lt;br /&gt;
When you viewed it, you will have noticed the animation paused, flew quickly in-between the boxes, paused again, and then rotated the camera to the right. The settings that control the speed of a scene transition&#39;s length of pause are in the &lt;b&gt;View | Animation | Settings&lt;/b&gt; dialog box. Go there now for a look.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Use your laptop for real time walkthroughs&lt;/b&gt;&lt;br /&gt;
The walkthrough tools you&#39;ve seen right here are really useful for helping people visualise a design. There&#39;s nothing better than interacting with an environment and viewing it as you would see it in real life. Why not take your laptop to meetings and allow people to see your models first hand?&lt;br /&gt;
&lt;b&gt;Animation settings&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
The animation settings dialog box looks like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguUfnioDWQ1mzNI1pXYsl7BMMbpZDcpxJm0X5H9EF7F76sz6O2DHza2mEmIU1UJgjkOEU09QDZClKlnUe5Ki9u4NiVjO1cIO8YuRxSG7e1T36oQp9mQjnUy9uxZBSZxm8tE_-EMhKODfU/s1600/Animation+Settings.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;281&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguUfnioDWQ1mzNI1pXYsl7BMMbpZDcpxJm0X5H9EF7F76sz6O2DHza2mEmIU1UJgjkOEU09QDZClKlnUe5Ki9u4NiVjO1cIO8YuRxSG7e1T36oQp9mQjnUy9uxZBSZxm8tE_-EMhKODfU/s400/Animation+Settings.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
You&#39;ll notice there are very few settings here and it&#39;s not possible to control individual scene timings. That&#39;s a pity in one way, but it does help keep everything simple. You&#39;ll look at how to control individual scene timing using a plugin a little later in the article. Here&#39;s what each setting does.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRdF-2ZYx3X_RMa-H36P2EN1EzzPrNTiUrsdYKMKPW0sjG591OrMbzS2ZujH2e7Msl5wGJCWHIjmacZHp14tMNsps85-PFczpLy8WRDS4VThNaXuRCu8k9mVwLq0vsyHa1tBfKhxgh_90/s1600/Table.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;132&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRdF-2ZYx3X_RMa-H36P2EN1EzzPrNTiUrsdYKMKPW0sjG591OrMbzS2ZujH2e7Msl5wGJCWHIjmacZHp14tMNsps85-PFczpLy8WRDS4VThNaXuRCu8k9mVwLq0vsyHa1tBfKhxgh_90/s400/Table.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;For now, you&#39;re going to add some intermediate steps to your walkthrough to smooth out the movement, and also slow things down a little.&lt;br /&gt;
&lt;b&gt;Time for action – getting the timing right&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
1. Still in the settings dialog, change the scene transitions to 2 seconds.&lt;br /&gt;
2. Change &lt;b&gt;Scene Delay&lt;/b&gt; to 0.&lt;br /&gt;
3. Close the dialog box.&lt;br /&gt;
4. Click on &lt;b&gt;Scene 1&lt;/b&gt;.&lt;br /&gt;
5. Walk half-way between &lt;b&gt;Scene 1&lt;/b&gt; and &lt;b&gt;Scene 2&lt;/b&gt;.&lt;br /&gt;
6. Right-click on &lt;b&gt;Scene 1&lt;/b&gt; and select &lt;b&gt;Add Scene&lt;/b&gt;. &lt;b&gt;Scene 4&lt;/b&gt; appears between 1 and 2.&lt;br /&gt;
7. Play the animation again and note the difference.&lt;br /&gt;
8. Click to go back to &lt;b&gt;Scene 4&lt;/b&gt; and now move your position or eye view, then update &lt;b&gt;Scene 4&lt;/b&gt; (right-click and select &lt;b&gt;update&lt;/b&gt;).&lt;br /&gt;
9. Play the animation again and repeat until you get a smooth timing between scenes.&lt;br /&gt;
10. Now create further scenes as you walk around the back of the cylinder and back through to where you started.&lt;br /&gt;
11. Click on each scene tab to view, edit, and update as necessary.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;What just happened?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
You just learned how to adjust animation properties and create a regularly paced animated walkthrough. You set up the scenes and were able to go back and tweak each one to get the desired effect. You will have noticed that the animation can still be a little jerky, and we still want to alter individual transition timings. Thankfully, there&#39;s a plugin for that and we&#39;re going to look at it now.&lt;br /&gt;
&lt;b&gt;Time for action – adding individual timing to scenes&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
1. Get scenes_transition_times.rb from &lt;a href=&quot;http://morisdov.googlepages.com/&quot;&gt;http://morisdov.googlepages.com&lt;/a&gt;.&lt;br /&gt;
2. Drop the plugin into your plugins folder and restart SketchUp.&lt;br /&gt;
3. Go to &lt;b&gt;Plugins | Scenes Transition Times&lt;/b&gt;.&lt;br /&gt;
4. Type values (in seconds) into the boxes (-1.0 leaves it as default).&lt;br /&gt;
5. Play the animation again to see the difference.&lt;br /&gt;
6. Now find the scene in which you&#39;re turning your head to look at the box. Type 4 here.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNe_oSSJRkFhJULLNdKBOAlp3nbskmSvf0bdfva4V-GsRDEhP0Gu8f1_kQiy0pqod_ls6mvlPKrt5B5uAGTV-FVvYZyCg9G6avBFu-hfEtjesNPDnLlU2zOoPo1E8w9qZagfhn1tp26mY/s1600/9461_10_04.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNe_oSSJRkFhJULLNdKBOAlp3nbskmSvf0bdfva4V-GsRDEhP0Gu8f1_kQiy0pqod_ls6mvlPKrt5B5uAGTV-FVvYZyCg9G6avBFu-hfEtjesNPDnLlU2zOoPo1E8w9qZagfhn1tp26mY/s400/9461_10_04.png&quot; width=&quot;250&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
7. Play the animation again to see the difference.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;What just happened?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
You installed a plugin that allows scene transitions to be adjusted individually. You then increased the scene transition time to four seconds when you turn to look at the box beside you. You may have worked out that the value goes in the box relating to the scene after the one you need to edit.&lt;br /&gt;
&lt;br /&gt;
Note that the animation is still jerky. This may be good enough for your current project, especially if you stitch together different scenes into a collage of moving views in your video editing software. You just cut out the dodgy transitions. But for an altogether smoother animation there are some further techniques that you can work on now.&lt;br /&gt;
&lt;b&gt;Summary&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
In this article, you learned:&lt;br /&gt;
&lt;br /&gt;
* How to create walkthroughs&lt;br /&gt;
* Planning your animations the easy way&lt;strike&gt;&lt;/strike&gt;</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/1935109658028537650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2010/06/walkthrough-tools-within-sketchup-71.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/1935109658028537650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/1935109658028537650'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2010/06/walkthrough-tools-within-sketchup-71.html' title='Walkthrough Tools within SketchUp 7.1'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhewL3pzqNsEf2UhOUoF8lkaNfJeW3wZARAl9cjCAMpNnBGhTd1WeeCSru_Hml_k8xD5Uqyy4yRQt1yR3eInHxsTiwE0_3qpEBWAENe0OrOF52fqCNLsrJxhZvISykNcogZ3zFzniPcLkE/s72-c/first.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5010050740608224005.post-8433989503734163097</id><published>2010-03-26T10:26:00.001-07:00</published><updated>2010-03-26T10:32:49.274-07:00</updated><title type='text'>Protecting Your Kids Online Through IP Change</title><content type='html'>Protecting Your Kids Online Through IP Change&lt;br /&gt;
By Virender Labroo&lt;br /&gt;
&lt;br /&gt;
IP Change gives extra security for children while surfing the internet IP or internet protocol address is the answer when you are looking for identity protection in the internet. This article will show how we can protect our children on the internet from predators and other unsavory characters by a rather simple new piece of technology that involves rapid IP Change.&lt;br /&gt;
&lt;br /&gt;
Modern day living without internet is unattainable. This holds true for us as well as our children. Denying children with internet access in today&#39;s time is quite impossible. Internet is becoming essential for the achievement of quality education. Thus, schools need to provide internet access to the kids. Internet is very important towards a wonderful learning process for children. It is used for researches, communication, and other educational and interactive games.&lt;br /&gt;
&lt;br /&gt;
More mature children in their teens are now wired with their friends with Social Media Sites such as Face Book and My Space. Internet indeed dratiscally changed the teen world. .&lt;br /&gt;
&lt;br /&gt;
However, internet does not offer all great opportunities only. It can also be a very dangerous place for vulnerable children with many predators lurching around on the net.&lt;br /&gt;
&lt;br /&gt;
In order for us to safeguard our children, understanding of internet browsing is a must. We must have a knowledge as to where they hang out on the web. This includes forums, chat rooms, and other sites. Each of those should have rules to try to protect the young on the internet. For instance, you must make certain that for Face Book and My Space, only 13 years old and above can sign up. Are the forums and chat rooms controlled or not? Parents should be able to talk this out with kids to ensure that sites visited are safe.&lt;br /&gt;
&lt;br /&gt;
It is also a must that parents use software to prevent violent and sexual content from being viewed by the kids. Parents must support their children all the way. They have to educate their children about indentity protection online. This includes education as to what should and should not be included when giving information online. They should be educated early on the risks and outcomes of identity theft and how important it is to protect the identity to ward of dangers now and consequences later in life.&lt;br /&gt;
&lt;br /&gt;
Using simple language, children should understand how the internet works and how they can be protected when they are online. They should be reassured that their computer is firewall protected and has complete internet security suite updated and protecting them all the time. However, they must be reminded that they have to be extra careful about their identity online.&lt;br /&gt;
&lt;br /&gt;
Parents, should however be conscious that technologies change all the time and new security technologies are being developed for better security and privacy on the net. One of these technologies is frequent IP Change. This routes your internet connection through various servers termed as proxy servers placed across the globe with the use of software called IP Changer. This software conceals your real IP address given by your ISP or Internet Service Provider since only one of the various IP addresses of the proxy servers are shown to the sites you and your children may visit. Internet surfing can now be done anonymously. Combining this IP Change technology with data encryption you are making your browsing secure and private. You are keeping hackers away by denying them your real IP address which is the key to access your computer.&lt;br /&gt;
&lt;br /&gt;
Given this, when you put to practice good parenting , internet security software, and IP Change for anonymous browsing, you can be of great help for the security of children of children online.&lt;br /&gt;
&lt;br /&gt;
About the Author: For more information about this important topic which is &lt;a href=&quot;http://www.change-ip-proxy.com/&quot;&gt;IP Change&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Source: &lt;a href=&quot;http://www.isnare.com&quot;&gt;www.isnare.com&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/8433989503734163097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2010/03/protecting-your-kids-online-through-ip.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/8433989503734163097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/8433989503734163097'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2010/03/protecting-your-kids-online-through-ip.html' title='Protecting Your Kids Online Through IP Change'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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-5010050740608224005.post-370416836377194762</id><published>2010-03-05T08:25:00.000-08:00</published><updated>2010-03-05T10:15:37.189-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Buiding"/><category scheme="http://www.blogger.com/atom/ns#" term="Database Report"/><category scheme="http://www.blogger.com/atom/ns#" term="iReport"/><title type='text'>Building Your First iReport</title><content type='html'>&lt;strong&gt;Building Your First iReport&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;We will develop our first simple report using iReport, and before doing so, we will create a connection/data source that will be used to fill the reports.&lt;br /&gt;&lt;br /&gt;In this article by &lt;strong&gt;Shamsuddin Ahammad&lt;/strong&gt;, author of &lt;a href=&quot;http://www.packtpub.com/ireport-3-7/book/js/ireport3.7-abr1/0310?utm_source=js_ireport3.7_abr1_0310&amp;utm_medium=content&amp;utm_campaign=janice&quot;&gt;iReport 3.7&lt;/a&gt;, we will learn about:&lt;br /&gt;&lt;br /&gt;&gt;&gt; Creating a new data source or database JDBC connection &lt;br /&gt;&gt;&gt; Creating a report using the wizard &lt;br /&gt;&gt;&gt; Using the design query feature to produce the SQL query for the report &lt;br /&gt;&gt;&gt; Viewing and exporting the report using the built-in viewer&lt;br /&gt;&lt;br /&gt;So let&#39;s get on with it!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Creating a connection/data source&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Before going to create the connection, a database should be set up. The SQL query for the database used for creating reports can be downloaded from the Packt website. Now, we are going to create a connection/data source in iReport and build our first report in some easy to follow steps:&lt;br /&gt;&lt;br /&gt;You need to create the connection/data source just once before developing the first report. This connection will be reused for the following reports.&lt;br /&gt;&lt;br /&gt;1. Start iReport.&lt;br /&gt;2. Press the Report Datasources button in the toolbar. You will see a dialog box similar to the following screenshot:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5JYPsUEESlp-qHx-6MowYxj2-Sb8d11Nz0nNx_uoJoKRws9rxgfxZ9NBql8Y2F8ykOZkX4NMdasaSkjng3KgJHbTvJ80GvimEBX2psLX6f8D_O-lZJ0GGzOEXyoLhks5juizUjlU1-eQ/s1600-h/8808_02_01.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 189px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5JYPsUEESlp-qHx-6MowYxj2-Sb8d11Nz0nNx_uoJoKRws9rxgfxZ9NBql8Y2F8ykOZkX4NMdasaSkjng3KgJHbTvJ80GvimEBX2psLX6f8D_O-lZJ0GGzOEXyoLhks5juizUjlU1-eQ/s400/8808_02_01.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445192535613245570&quot; /&gt;&lt;/a&gt;&lt;br /&gt;3. Press the New button. Another dialog box will appear for selecting the data source type. There are several types to choose from, according to your requirement. For now, choose Database JDBC connection, and press Next &gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpRybrrbb0o1DUi1qCy9dlAdTNNCcCr3CcSL-Vhs2_w5ub2NfUZ_02ZktcAlysyixb9QW1HRCUyQuW1vZBKmrpdRp_V5LGSDmKT4rq5a7Xjv4jv_iuO33gMdtRAwDktjJyWTR8lDhfGCU/s1600-h/8808_02_02.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 347px; height: 400px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpRybrrbb0o1DUi1qCy9dlAdTNNCcCr3CcSL-Vhs2_w5ub2NfUZ_02ZktcAlysyixb9QW1HRCUyQuW1vZBKmrpdRp_V5LGSDmKT4rq5a7Xjv4jv_iuO33gMdtRAwDktjJyWTR8lDhfGCU/s400/8808_02_02.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445195022499634306&quot; /&gt;&lt;/a&gt;&lt;br /&gt;4. Another dialog box will appear to set up the Database JDBC connection properties. Give a sensible name to the connection. In this case, it is inventory.&lt;br /&gt;&lt;br /&gt;5. Choose the JDBC Driver from the list, according to your connection type and/or your database. In this case, it is MySQL (com.mysql.jdbc.Driver).&lt;br /&gt;&lt;br /&gt;6. Write the JDBC URL, according to the driver you have chosen. For this tutorial, it is &lt;strong&gt;jdbc:mysql://localhost/inventory&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;In the previous code for connecting to a database from a Java program using JDBC—jdbc is the connection protocol, mysql is the subprotocol, localhost is the MySQL server if it runs on the same computer, and inventory is the database name.&lt;br /&gt;&lt;br /&gt;7. Enter the Username and Password. Generally, for a MySQL server, the username is root and you have set a customized password during the installation of the MySQL server. The screenshot is as follows:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVM1EMMsY5oU6WwEeCXM2_80Dzfm4EtXQA8M4Xx2X68SO01gNj1nKT3VYcwYaaIU9JI0feBGjEYtXBUKDN5Nz9E9WgPaVHYZeh0W_T_vr2XHm8JV96ZrUslGuvebbBfQquxzu69EhpxEU/s1600-h/8808_02_03.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 391px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVM1EMMsY5oU6WwEeCXM2_80Dzfm4EtXQA8M4Xx2X68SO01gNj1nKT3VYcwYaaIU9JI0feBGjEYtXBUKDN5Nz9E9WgPaVHYZeh0W_T_vr2XHm8JV96ZrUslGuvebbBfQquxzu69EhpxEU/s400/8808_02_03.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445195938301939362&quot; /&gt;&lt;/a&gt;&lt;br /&gt;8. Press Test to confirm that you have set all the properties correctly. If all the settings are correct, then you will see a message that says Connection test successful!.&lt;br /&gt;      &lt;br /&gt;You can save the password by checking the Save Password checkbox, but be warned that iReport stores passwords in clear text. Storing passwords in clear text is a bad thing for us, isn&#39;t it? If you do not specify a password now, iReport will ask you for one only when required and will not save it.&lt;br /&gt;&lt;br /&gt;9. Now save the connection. You will see that the newly created connection is listed in the &lt;strong&gt;Connections/Datasources&lt;/strong&gt; window. If you have more than one connections, then you can set one as the default connection. In order to do this, select the connection and press &lt;strong&gt;Set as Default&lt;/strong&gt;. &lt;br /&gt;&lt;br /&gt;10. Enter the Username and Password. Generally, for a MySQL server, the username is root and you have set a customized password during the installation of the MySQL server. The screenshot is as follows:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip3-aY3R5UL9BaRj8j21dmPlPe7_gLZoP3KgT-EkI1svNVSG68RwWfdmn02ro8m8x0Ko6a-ce3q6p97pfP5trw41Tyt3-1xyKq-cktnxIvVYqgbquxvinhcPaklioGtBrWjcbt-bcDb9Y/s1600-h/8808_02_04.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 189px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip3-aY3R5UL9BaRj8j21dmPlPe7_gLZoP3KgT-EkI1svNVSG68RwWfdmn02ro8m8x0Ko6a-ce3q6p97pfP5trw41Tyt3-1xyKq-cktnxIvVYqgbquxvinhcPaklioGtBrWjcbt-bcDb9Y/s400/8808_02_04.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445200053492907730&quot; /&gt;&lt;/a&gt;&lt;br /&gt;When we execute the report with an active connection, the reports are filled with data from the database or other data sources. We can also see the report output with empty data sources, which has, by default, a single record with all fields set to null. An empty data source is used to print a static report. However, in order to choose the tables and columns from a database automatically using the Report Wizard, we need to connect to a database/data source first. To do this, we must create a connection/data source.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Building your first report&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Having set up a connection, we are ready to build our first report. We will keep it very simple, just to be familiar with the steps required for building a report. We will create a report that lists out all the products; that is, we will show all the rows of the product table of our database.&lt;br /&gt;&lt;br /&gt;Follow the steps listed and build your first report:&lt;br /&gt;&lt;br /&gt;1. Go to the File menu and click New…. You will see a dialog box like the following screenshot:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJo2w6e5TIJ4YNDprM1OCg3l2vFYCrKtTtYe5xhMdaqNW2Y7U50ODOa3D8jNqwdvvAOOAYKtszxr7Jhu3oVcVnSd4z4b-QQwXncPg_v59WZh2p8j-sBM_k9njQJSgxS-7KYEGvNmH8-So/s1600-h/8808_02_05.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 343px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJo2w6e5TIJ4YNDprM1OCg3l2vFYCrKtTtYe5xhMdaqNW2Y7U50ODOa3D8jNqwdvvAOOAYKtszxr7Jhu3oVcVnSd4z4b-QQwXncPg_v59WZh2p8j-sBM_k9njQJSgxS-7KYEGvNmH8-So/s400/8808_02_05.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445200577603882658&quot; /&gt;&lt;/a&gt;&lt;br /&gt;2. From the list of Report templates, select Simple Blue and press Launch Report Wizard.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeIL1MtC9LjdjhbdyAeG-UYA8jAmeqk3ZNbXgsPGL2Gk3FY-VbcRywiPW-z-lQUzYc1PxUUSi8tTa60vSM8tW-Bu5Z4g0JlqTqfIILe0gbW55d7uxl6CmWk-10pt_levOAx2sJbl-6NZE/s1600-h/8808_02_06.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 201px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgeIL1MtC9LjdjhbdyAeG-UYA8jAmeqk3ZNbXgsPGL2Gk3FY-VbcRywiPW-z-lQUzYc1PxUUSi8tTa60vSM8tW-Bu5Z4g0JlqTqfIILe0gbW55d7uxl6CmWk-10pt_levOAx2sJbl-6NZE/s400/8808_02_06.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445200833506373026&quot; /&gt;&lt;/a&gt;&lt;br /&gt;3. Enter &lt;strong&gt;Report name&lt;/strong&gt; as &lt;strong&gt;List of Products&lt;/strong&gt; and press &lt;strong&gt;Next&lt;/strong&gt; &gt;.&lt;br /&gt;4. Now you will specify the query to retrieve the report fields. Select your connection from the &lt;strong&gt;Connections / Data Sources&lt;/strong&gt; drop-down list.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0_txQChjO2CfrasZu8YjaFT1m3WOOBmC-q6OxuVmGnToPjliKNJy91IIcN-TEYJHeUAKSAEsQbCH9RQ5cuYbbZiWA4Re7kmW8miq8t5ek6RJvj2zp8bs5qaOhlvx_uo4WQAGMaSNVB-A/s1600-h/8808_02_07.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 268px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0_txQChjO2CfrasZu8YjaFT1m3WOOBmC-q6OxuVmGnToPjliKNJy91IIcN-TEYJHeUAKSAEsQbCH9RQ5cuYbbZiWA4Re7kmW8miq8t5ek6RJvj2zp8bs5qaOhlvx_uo4WQAGMaSNVB-A/s400/8808_02_07.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445201387425796818&quot; /&gt;&lt;/a&gt;&lt;br /&gt;5. Write the SQL query for the report you want to develop. In our case, it is&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;SELECT ProductCode, Name, Description FROM Product.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;iReport 3.7&lt;/strong&gt;&lt;br /&gt; &lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyLgNhc1QrcTpfYE-e44RZ12PrRi6MhUrMMDFKI81x9LfNPNv0yAQepFJFLoHQLOhY2c7iRNz_I12p9AXt5hGitdl8Ne_y3dqsUBDlhnNhv9sJx8I9v1Zn29iehtbumDuC9lWRI8dOto0/s1600-h/1847198805.png&quot;&gt;&lt;img style=&quot;float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 100px; height: 123px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyLgNhc1QrcTpfYE-e44RZ12PrRi6MhUrMMDFKI81x9LfNPNv0yAQepFJFLoHQLOhY2c7iRNz_I12p9AXt5hGitdl8Ne_y3dqsUBDlhnNhv9sJx8I9v1Zn29iehtbumDuC9lWRI8dOto0/s400/1847198805.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445202317499843682&quot; /&gt;&lt;/a&gt;  Learn how to use iReport to create, design, format, and export reports &lt;br /&gt;&gt;&gt; A step-by-step, example-oriented tutorial with lots of screenshots to guide the reader seamlessly through the book&lt;br /&gt;&gt;&gt; Generate enterprise-level reports using iReport 3.7&lt;br /&gt;&gt;&gt; Give your reports a professional look with built in templates&lt;br /&gt;&gt;&gt; Create master/detail reports easily with the sub-report feature&lt;br /&gt;&gt;&gt; Produce summary data and present them in a dynamic crosstab report&lt;br /&gt;   &lt;a href=&quot;http://www.packtpub.com/ireport-3-7/book/js/ireport3.7-abr1/0310?utm_source=js_ireport3.7_abr1_0310&amp;utm_medium=content&amp;utm_campaign=janice&quot;&gt;http://www.packtpub.com/ireport-3-7/book&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;6. Alternatively, you can use the &lt;strong&gt;Design query&lt;/strong&gt; option if you want to design the query graphically by selecting tables and columns easily, without writing the SQL commands. For this, double-click on the table name, select the fields from the table, and then press &lt;strong&gt;OK&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf2HnmL1PK3nlqzrCsLbizSPb0gMPlCWYeuDQW4oqOEeRM3Fy4v2uWPDBBmZT393MBILZLNl0z99_a7NG44GpHSyGxO4mM-Aym68z56sYPzlKAQMuB6GOSYw0VPyD6U-3zzkA2WIjvmnI/s1600-h/8808_02_08.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 295px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf2HnmL1PK3nlqzrCsLbizSPb0gMPlCWYeuDQW4oqOEeRM3Fy4v2uWPDBBmZT393MBILZLNl0z99_a7NG44GpHSyGxO4mM-Aym68z56sYPzlKAQMuB6GOSYw0VPyD6U-3zzkA2WIjvmnI/s400/8808_02_08.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445206158028097458&quot; /&gt;&lt;/a&gt;&lt;br /&gt;7. After writing the SQL query or designing the query, press &lt;strong&gt;Next &gt;&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRE-KNedrD3xmi4UaqNBPtKppRGrBo26HygijpNYZ6Q02B4veOkuI9lp8sZ-iB79Au_M2F0SYmFQ4IRgJn0aIAfn0STK0NpRln89jdC-Df8ojmiWQO5C_kVTz5DQTxbYzMm1xwkqGzj1s/s1600-h/8808_02_09.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 268px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRE-KNedrD3xmi4UaqNBPtKppRGrBo26HygijpNYZ6Q02B4veOkuI9lp8sZ-iB79Au_M2F0SYmFQ4IRgJn0aIAfn0STK0NpRln89jdC-Df8ojmiWQO5C_kVTz5DQTxbYzMm1xwkqGzj1s/s400/8808_02_09.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445206738090983362&quot; /&gt;&lt;/a&gt;&lt;br /&gt;8. In this step, we will select the fields that we want to show in the report. We may select all the fields or choose some of them. For this example, select all the fields (&lt;strong&gt;ProductCode&lt;/strong&gt;, &lt;strong&gt;Name&lt;/strong&gt;, and &lt;strong&gt;Description&lt;/strong&gt;) by clicking on &lt;strong&gt;&gt;&gt;&lt;/strong&gt; (double arrow). Note that the fields listed here are based on the query specified in the previous step. &lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhONMsE_BfAmJ26GU64fF1PwxDn847FwUEY7nMvZwWQ0mmxpE90-e7oRVL3hxJw2eXI2YrU4N5Httu4_V0uxaDFVKuXxqgOdAAO6pSVO-s7D2DU9nZn6ep9s_xQVIfxzy4XES4-AXGLSg8/s1600-h/8808_02_10.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 209px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhONMsE_BfAmJ26GU64fF1PwxDn847FwUEY7nMvZwWQ0mmxpE90-e7oRVL3hxJw2eXI2YrU4N5Httu4_V0uxaDFVKuXxqgOdAAO6pSVO-s7D2DU9nZn6ep9s_xQVIfxzy4XES4-AXGLSg8/s400/8808_02_10.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445208269258315954&quot; /&gt;&lt;/a&gt;&lt;br /&gt;9. After selecting the fields, press &lt;strong&gt;Next &gt;&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;10. Now we are in step &lt;strong&gt;5 (Group by…)&lt;/strong&gt; of the wizard. Ignore this just for now; we will learn about grouping later. Press &lt;strong&gt;Next &gt;&lt;/strong&gt; to proceed.&lt;br /&gt;&lt;br /&gt;11. We are at the last step of the Report Wizard. Now press &lt;strong&gt;Finish&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtMe-7FN4EWNGwCI1FNfeYL7PxA8KcKmlAmHjMnbvZkjP5TFM9LNYZa3BjJJxj7nAky0xecSwkF8nZ3LcDivzCMc8DjEi0K-aNvCItmBhNUEvOX0trSjG8kX28vqPEOxhk5hLAKwTpx0g/s1600-h/8808_02_11.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 233px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtMe-7FN4EWNGwCI1FNfeYL7PxA8KcKmlAmHjMnbvZkjP5TFM9LNYZa3BjJJxj7nAky0xecSwkF8nZ3LcDivzCMc8DjEi0K-aNvCItmBhNUEvOX0trSjG8kX28vqPEOxhk5hLAKwTpx0g/s400/8808_02_11.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445208830560106546&quot; /&gt;&lt;/a&gt;&lt;br /&gt;12. You will see the following output:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNyKdvgpVo_ZAtSEPDtB3NriAJqaBs35zEtvzVgcj_gft8yGzm1HCfr83Y-yrFHqdU4QOATp2V9L4rhoODeo2hTFB6krp3kvtdJRhLTEeOt4fNm-Qh6TskNe8Mo1uEwOS-Dodv8xCpdzo/s1600-h/8808_02_12.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 198px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNyKdvgpVo_ZAtSEPDtB3NriAJqaBs35zEtvzVgcj_gft8yGzm1HCfr83Y-yrFHqdU4QOATp2V9L4rhoODeo2hTFB6krp3kvtdJRhLTEeOt4fNm-Qh6TskNe8Mo1uEwOS-Dodv8xCpdzo/s400/8808_02_12.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445209053213787874&quot; /&gt;&lt;/a&gt;&lt;br /&gt;13. To change the title, select &lt;strong&gt;TITLE&lt;/strong&gt;, and enter &lt;strong&gt;List of Products&lt;/strong&gt; in the &lt;strong&gt;Text&lt;/strong&gt; box of the &lt;strong&gt;Properties&lt;/strong&gt; window, at the bottom-right corner. You can change the font name, size, and style according to your requirements from the same window. In this example, &lt;strong&gt;Font name&lt;/strong&gt; is &lt;strong&gt;SansSerif&lt;/strong&gt;, &lt;strong&gt;Size&lt;/strong&gt; is &lt;strong&gt;20&lt;/strong&gt;, and style is &lt;strong&gt;Bold&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCXwSwDlVXwiZyDPf-rl5i2QVLr-Bu9hmWlxwaVvrVT1RKNDQ3jYe4dWyDZU7vD3UQ7laQDOjYLi0LiWCXtUxllPzHQ6X2MLXmEaZUnEyPuNZadSo1iMTI1y5OYm9fK3exvWTbkaeJi88/s1600-h/8808_02_13.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 200px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCXwSwDlVXwiZyDPf-rl5i2QVLr-Bu9hmWlxwaVvrVT1RKNDQ3jYe4dWyDZU7vD3UQ7laQDOjYLi0LiWCXtUxllPzHQ6X2MLXmEaZUnEyPuNZadSo1iMTI1y5OYm9fK3exvWTbkaeJi88/s400/8808_02_13.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445210209329935458&quot; /&gt;&lt;/a&gt;&lt;br /&gt;14. It&#39;s time to see the output of your first report. Just press the &lt;strong&gt;Preview&lt;/strong&gt; button at the top of the report design. You will see a report similar to the following one:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh_7NQNEHHETQ8SF1DZj0UOLd0qcx93J3lmsH2bGnnkG3lqhh4qapapRjHjblsL_up6e-p8wBrhkju5jFc7u_cpDNCRMepmTtg5rcymJaaCQ6aF084ydwLZYzsUTpx3EkFRTqWXPazmt0/s1600-h/8808_02_14.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 237px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh_7NQNEHHETQ8SF1DZj0UOLd0qcx93J3lmsH2bGnnkG3lqhh4qapapRjHjblsL_up6e-p8wBrhkju5jFc7u_cpDNCRMepmTtg5rcymJaaCQ6aF084ydwLZYzsUTpx3EkFRTqWXPazmt0/s400/8808_02_14.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445210509214432786&quot; /&gt;&lt;/a&gt;&lt;br /&gt;To build the report easily, we can use the Report Wizard, where the database columns can be selected from the list, and the layout of the report can be set very easily by choosing templates. Note that for choosing the layout, the tabular format is generally suitable if your report shows more than one row from the database table, and the column format is suitable if the query returns only a single row. If the number of columns in the query result is quite large, then you can choose the landscape template.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Viewing and exporting the report&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;We can view our report using JRViewer or any other supported external programs, such as Acrobat Reader (PDF preview), Microsoft Word (RTF preview), any browser (HTML preview), and so on. You have seen the JRViewer preview. There is a built-in toolbar in the JRViewer; here you can save the report in various formats, such as PDF, RTF, HTML, CSV, XML, and so on. To do this, just press the &lt;strong&gt;Save&lt;/strong&gt; button, and then choose &lt;strong&gt;PDF/ RTF/ HTML/ CSV/ XML&lt;/strong&gt; or others from the &lt;strong&gt;Files of type&lt;/strong&gt; drop-down list.&lt;br /&gt;&lt;br /&gt;You can print the report from the viewer by just pressing the &lt;strong&gt;Print&lt;/strong&gt; button in the toolbar. If your report contains more than one page, then you can navigate through the report pages using these four buttons: &lt;strong&gt;First Page, Previous Page, Next Page&lt;/strong&gt;, and &lt;strong&gt;Last Page&lt;/strong&gt; from the toolbar. You can resize the page to &lt;strong&gt;Fit the page, Fit the page width&lt;/strong&gt;, or &lt;strong&gt;Actual size&lt;/strong&gt;. You can also zoom in or zoom out. All options are available in the toolbar—you just have to choose the appropriate button.&lt;br /&gt;&lt;br /&gt;You can change the report viewer from the &lt;strong&gt;Preview&lt;/strong&gt; menu to see the preview in another application. You can choose from PDF, HTML Java 2D, RTF, or other preview options. However, before seeing these previews, you have to set the external programs for the appropriate viewers. You can do this from &lt;strong&gt;Tools | Options | iReport | Viewers&lt;/strong&gt;. Browse the required programs for each viewer. Then choose the appropriate viewer from the &lt;strong&gt;Preview&lt;/strong&gt; menu, and preview the report again.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSEwgok8fi5UnXIJequwagClJAPPmAgG7FOUZiYFsZjJjfk9cVCQZZJg_FRT6GDxZH89aphEohd9-ZFumcnvv7GfglzYA8BXk7ryXZ5HV9h64TllOTGknxGbN04W8ggSSlb81zMq2Ibx4/s1600-h/Options.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 273px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSEwgok8fi5UnXIJequwagClJAPPmAgG7FOUZiYFsZjJjfk9cVCQZZJg_FRT6GDxZH89aphEohd9-ZFumcnvv7GfglzYA8BXk7ryXZ5HV9h64TllOTGknxGbN04W8ggSSlb81zMq2Ibx4/s400/Options.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5445211516865861938&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Summary&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;In this article, we had a look at creating connections and building simple reports.&lt;br /&gt;&lt;br /&gt;Specifically, we covered:&lt;br /&gt;&gt;&gt; Creating a database JDBC connection&lt;br /&gt;&gt;&gt; Using the Report Wizard&lt;br /&gt;&gt;&gt; Using the design query feature for designing a query without writing the SQL command&lt;br /&gt;&gt;&gt; Choosing the appropriate layout and template&lt;br /&gt;&gt;&gt; Viewing report in JRViewer and other external programs</content><link rel='replies' type='application/atom+xml' href='http://freelearn2fly.blogspot.com/feeds/370416836377194762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://freelearn2fly.blogspot.com/2010/03/building-your-first-ireport.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/370416836377194762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5010050740608224005/posts/default/370416836377194762'/><link rel='alternate' type='text/html' href='http://freelearn2fly.blogspot.com/2010/03/building-your-first-ireport.html' title='Building Your First iReport'/><author><name>High Tech</name><uri>http://www.blogger.com/profile/14547168598491208423</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><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5JYPsUEESlp-qHx-6MowYxj2-Sb8d11Nz0nNx_uoJoKRws9rxgfxZ9NBql8Y2F8ykOZkX4NMdasaSkjng3KgJHbTvJ80GvimEBX2psLX6f8D_O-lZJ0GGzOEXyoLhks5juizUjlU1-eQ/s72-c/8808_02_01.png" height="72" width="72"/><thr:total>0</thr:total></entry></feed>