<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Archive on BadproG</title>
    <link>https://www.badprog.com/archive/</link>
    <description>Recent content in Archive on BadproG</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 07 Jan 2023 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.badprog.com/archive/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>PostgreSQL - Setting up - Linux Ubuntu</title>
      <link>https://www.badprog.com/postgresql-setting-up-linux-ubuntu/</link>
      <pubDate>Sat, 07 Jan 2023 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/postgresql-setting-up-linux-ubuntu/</guid>
      <description>&lt;p&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt; is one of the most known and used SQL server.&lt;/p&gt;
&lt;p&gt;We’re going to see how to install it on a &lt;strong&gt;Linux&lt;/strong&gt; opearting system, to be precise on Linux &lt;strong&gt;Ubuntu&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;For this tutorial, our Linux distribution will be &lt;strong&gt;Ubuntu 22.04&lt;/strong&gt;: &lt;a href=&#34;https://ubuntu.com/&#34;&gt;https://ubuntu.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Then &lt;strong&gt;PostgreSQL 14.5&lt;/strong&gt;: &lt;a href=&#34;https://www.postgresql.org/&#34;&gt;https://www.postgresql.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As a bonus we&amp;rsquo;ll use &lt;strong&gt;pgAdmin 4 v6.15&lt;/strong&gt; to manage PostgreSQL as a GUI: &lt;a href=&#34;https://www.pgadmin.org/&#34;&gt;https://www.pgadmin.org/&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;lets-get-started&#34;&gt;Let&amp;rsquo;s get started&lt;/h2&gt;
&lt;p&gt;To install PostgreSQL on Ubuntu, just follow the documentation.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Creating a Spinner with colors as choices</title>
      <link>https://www.badprog.com/android-api-creating-a-spinner-with-colors-as-choices/</link>
      <pubDate>Sun, 22 Mar 2020 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-creating-a-spinner-with-colors-as-choices/</guid>
      <description>&lt;p&gt;With &lt;strong&gt;Android&lt;/strong&gt; we haven&amp;rsquo;t a classic &lt;strong&gt;ComboBox&lt;/strong&gt; like in other frameworks but we have instead a &lt;strong&gt;Spinner&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Actually it&amp;rsquo;s exactly the same and only the name differs.&lt;/p&gt;
&lt;p&gt;In this Android Spinner tutorial we&amp;rsquo;re going to create our own cutom Spinner by replacing classic texts with squares of color.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;The minimum SDK for this tutorial is the API 14 (Android 4.0 or also known as IceCreamSandwich).&lt;/p&gt;
&lt;p&gt;Spinner, Object class and 2&amp;rsquo;s complement will be see in this example.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Creating a GridView</title>
      <link>https://www.badprog.com/android-api-creating-a-gridview/</link>
      <pubDate>Sun, 17 Dec 2017 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-creating-a-gridview/</guid>
      <description>&lt;p&gt;The &lt;strong&gt;GridView&lt;/strong&gt; is a bit like the &lt;strong&gt;ListView&lt;/strong&gt;&amp;rsquo;s sibling.&lt;/p&gt;
&lt;p&gt;A lot of concepts are shared with those similar components.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;re going to see how to create an easy GridView with almost the same code as the &lt;a href=&#34;https://www.badprog.com/android-api-creating-a-listview&#34;&gt;ListView tutorial&lt;/a&gt; but with some differences.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s get started.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;The GridView is often used to displays images as in a portfolio.&lt;/p&gt;
&lt;p&gt;But in our tutorial we will use Strings and Integers because they are easier to use.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Creating a ListView</title>
      <link>https://www.badprog.com/android-api-creating-a-listview/</link>
      <pubDate>Sat, 16 Dec 2017 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-creating-a-listview/</guid>
      <description>&lt;p&gt;The &lt;strong&gt;ListView&lt;/strong&gt; is certainly one of the most used components by Android programmers in their applications.&lt;/p&gt;
&lt;p&gt;Why? Because the concept is easy to understand and the result looks nice.&lt;/p&gt;
&lt;p&gt;But a lot of tutorials are made with complicated ListView examples.&lt;/p&gt;
&lt;p&gt;In this tutorial we are going to see how to use it in the most easy way.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;We will display &lt;strong&gt;2 ListViews&lt;/strong&gt;, one with &lt;strong&gt;Strings&lt;/strong&gt; and the other one with &lt;strong&gt;Integers&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Classic methods during a life cycle with one activity</title>
      <link>https://www.badprog.com/android-api-classic-methods-during-a-life-cycle-with-one-activity/</link>
      <pubDate>Sun, 21 Aug 2016 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-classic-methods-during-a-life-cycle-with-one-activity/</guid>
      <description>&lt;p&gt;In this tutorial we will see how and when Activity main methods are called during a classic life cycle.&lt;/p&gt;
&lt;p&gt;Only one activity will be used in this example in order to have something easy to understand.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see that.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;During this video, I launched the application then I clicked on the home button to pause it.&lt;/p&gt;
&lt;p&gt;After I clicked the application again from the list and it came back with the methods called.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Life cycle of 2 activities with the Intent class</title>
      <link>https://www.badprog.com/android-api-life-cycle-of-2-activities-with-the-intent-class/</link>
      <pubDate>Sun, 21 Aug 2016 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-life-cycle-of-2-activities-with-the-intent-class/</guid>
      <description>&lt;p&gt;One important step in Android development is to understand how to deal with many activities.&lt;/p&gt;
&lt;p&gt;This is what we are going to see in this Activity tutorial with an example of the famous Intent class.&lt;/p&gt;
&lt;p&gt;Stop talking, let&amp;rsquo;s get coded.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;In the video you can see, in orange, the MainActivity and, in green, the Activity_2.&lt;/p&gt;
&lt;p&gt;The title also changes with the corresponding activity.&lt;/p&gt;
&lt;p&gt;To go to the second activity, I push the Button &amp;ldquo;GO TO ACTIVITY 2&amp;rdquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Getting the current method name with StackTraceElement</title>
      <link>https://www.badprog.com/android-api-getting-the-current-method-name-with-stacktraceelement/</link>
      <pubDate>Sat, 20 Aug 2016 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-getting-the-current-method-name-with-stacktraceelement/</guid>
      <description>&lt;p&gt;Always dreamed to see the stack without your debugger?&lt;/p&gt;
&lt;p&gt;Maybe this tutorial will help you with the StackTraceElement Java class.&lt;/p&gt;
&lt;p&gt;Of course we are going to use an Android application to see all that on our screen!&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s get started.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;I&amp;rsquo;ve created a while loop in order to use every element in the stack until the last one.&lt;/p&gt;
&lt;p&gt;A special classe has been created (BadprogHelper) in order to use a specific method to have a delay between each element.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Tips&#39;n Tricks - Hiding/Showing the Notification bar</title>
      <link>https://www.badprog.com/android-tips-n-tricks-hiding-showing-the-notification-bar/</link>
      <pubDate>Tue, 16 Aug 2016 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-tips-n-tricks-hiding-showing-the-notification-bar/</guid>
      <description>&lt;p&gt;Maybe you don&amp;rsquo;t know that but it&amp;rsquo;s possible to remove the Notification bar programmatically.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s quite useful if you don&amp;rsquo;t really need it for your custom application.&lt;/p&gt;
&lt;p&gt;It takes a little bit portion of your screen but why let it?&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see that in this Notification bar tutorial.&lt;/p&gt;
&lt;h2 id=&#34;first-of-all&#34;&gt;First of all&lt;/h2&gt;
&lt;p&gt;We&amp;rsquo;re going to create a Button to hide and display the NotificationBar.&lt;/p&gt;
&lt;p&gt;Each time you click the Button, the state changes by toggling the features of this Button.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Android Studio - Generating an unsigned release .apk</title>
      <link>https://www.badprog.com/android-android-studio-generating-an-unsigned-release-apk/</link>
      <pubDate>Mon, 15 Jun 2015 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-android-studio-generating-an-unsigned-release-apk/</guid>
      <description>&lt;p&gt;If you come from the Eclipse world, you should be lost because it&amp;rsquo;s not very clear how to generate a &lt;strong&gt;release&lt;/strong&gt; build version of an &lt;strong&gt;.apk&lt;/strong&gt; file.&lt;/p&gt;
&lt;p&gt;In this Android Studio tutorial, we are thus going to see how to resolve this release build generation.&lt;/p&gt;
&lt;h2 id=&#34;generating-the-debug-build-apk&#34;&gt;Generating the debug build .apk&lt;/h2&gt;
&lt;p&gt;First of all, click &lt;strong&gt;&amp;gt; Build &amp;gt; Make Project&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Then &lt;strong&gt;&amp;gt; Run &amp;gt; Run nameOfYourApp&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Your project should be built and of course in the debug version.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - SQLite - Basics</title>
      <link>https://www.badprog.com/android-sqlite-basics/</link>
      <pubDate>Wed, 17 Jul 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-sqlite-basics/</guid>
      <description>&lt;p&gt;A classic way to deal with database, with Android, it&amp;rsquo;s to use the &lt;strong&gt;SQLite&lt;/strong&gt; classes.&lt;/p&gt;
&lt;p&gt;What&amp;rsquo;s unique in SQLite is that you don&amp;rsquo;t need a server where running your database.&lt;br&gt;
Indeed, everything is already inside your Android application.&lt;/p&gt;
&lt;p&gt;And of course impossible to another application to read this database.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s have a look in this Android SQLite tutorial to learn basics with an example.&lt;br&gt;
A bit like an Hello World SQLite.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API Google Maps - Using MapType</title>
      <link>https://www.badprog.com/android-api-google-maps-using-maptype/</link>
      <pubDate>Sun, 07 Jul 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-google-maps-using-maptype/</guid>
      <description>&lt;p&gt;I think the MapType is certainly the most fascinating feature of GoogleMaps and also one of the most easy to understand and make alive in an Android application.&lt;/p&gt;
&lt;p&gt;With one click it&amp;rsquo;s possible to change the display of the map such as hybrid, none, normal, satellite or terrain.&lt;/p&gt;
&lt;p&gt;And this is exactly what we are going to see in this &lt;strong&gt;Android Tutorial 5&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id=&#34;explanation&#34;&gt;Explanation&lt;/h2&gt;
&lt;p&gt;The setMapType() method is the key of this feature.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API Google Maps - Using Google Maps API v2</title>
      <link>https://www.badprog.com/android-api-google-maps-using-google-maps-api-v2/</link>
      <pubDate>Sat, 15 Jun 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-google-maps-using-google-maps-api-v2/</guid>
      <description>&lt;p&gt;Google made a new version of its famous Google Maps API, called Google Maps API v2.&lt;/p&gt;
&lt;p&gt;Things are new, such as the OpenGL ES version 2.&lt;/p&gt;
&lt;p&gt;But let&amp;rsquo;s try to create an application, in this Google Maps API v2 tutorial for Windows 7 and less or more.&lt;/p&gt;
&lt;h2 id=&#34;google-play-services-library&#34;&gt;Google Play Services library&lt;/h2&gt;
&lt;p&gt;Your &lt;strong&gt;Android SDK Manager&lt;/strong&gt; has to be updated.&lt;/p&gt;
&lt;p&gt;Especially you need to install or update: &lt;strong&gt;Extras &amp;gt; Google Play Services&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oracle - VirtualBox - A better resolution with a guest Ubuntu</title>
      <link>https://www.badprog.com/oracle-virtualbox-a-better-resolution-with-a-guest-ubuntu/</link>
      <pubDate>Sun, 02 Jun 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/oracle-virtualbox-a-better-resolution-with-a-guest-ubuntu/</guid>
      <description>&lt;p&gt;By installing a Ubuntu guest with VirtualBox on Windows, you likely found a basic resolution, such as 1024*768.&lt;/p&gt;
&lt;p&gt;Unfortunately, you have a screen with a 1920*1200 resolution, it&amp;rsquo;s impossible to let this like that.&lt;/p&gt;
&lt;p&gt;There is of course a solution to increase this basic setup, but with a maximum of 1440*1050.&lt;/p&gt;
&lt;p&gt;Better than nothing.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s do it.&lt;/p&gt;
&lt;h2 id=&#34;what-to-do&#34;&gt;What to do?&lt;/h2&gt;
&lt;p&gt;Open a Terminal and write it down this line:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;get&lt;/span&gt; install virtualbox&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;guest&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;x11
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Restart your Linux, and you&amp;rsquo;re done.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Installation - On Linux Ubuntu 64-bit with a 32-bit ADT version</title>
      <link>https://www.badprog.com/android-installation-on-linux-ubuntu-64-bit-with-a-32-bit-adt-version/</link>
      <pubDate>Sun, 20 Jan 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-installation-on-linux-ubuntu-64-bit-with-a-32-bit-adt-version/</guid>
      <description>&lt;p&gt;You can easily use the following &lt;a href=&#34;https://www.badprog.com/android-installation-on-windows-os-and-eclipse&#34;&gt;Windows Android setup tutorial&lt;/a&gt; to install the Android Development Tools on your Linux system except that you will need the &lt;strong&gt;32-bit libraries&lt;/strong&gt; and install a &lt;strong&gt;JDK&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Note that all these things, could be done by simply download a bundle especially made by &lt;a href=&#34;http://developer.android.com/sdk/index.html&#34;&gt;Google&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;the-32-bit-libraries&#34;&gt;The 32-bit libraries&lt;/h2&gt;
&lt;p&gt;So open your favorite shell and type this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-java&#34; data-lang=&#34;java&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;get install ia32&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;libs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;A huge list of libraries will be available. Select all and continue.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Arduino - Installation</title>
      <link>https://www.badprog.com/eclipse-arduino-installation/</link>
      <pubDate>Sun, 20 Jan 2013 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-arduino-installation/</guid>
      <description>&lt;p&gt;You would like to program with Arduino but you can&amp;rsquo;t do this with the Arduino Software provided.&lt;/p&gt;
&lt;p&gt;Instead you would prefer to use your favorite IDE: &lt;strong&gt;Eclipse&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s what we&amp;rsquo;re going to see in this Eclipse and Arduino setup tutorial from scratch.&lt;/p&gt;
&lt;p&gt;We are going to see settings for the &lt;strong&gt;Arduino ADK ATmega 2560&lt;/strong&gt; and the &lt;strong&gt;Arduino Uno&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id=&#34;installation-on-linux-ubuntu&#34;&gt;Installation on Linux Ubuntu&lt;/h2&gt;
&lt;h3 id=&#34;what-we-need&#34;&gt;What we need&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Linux Ubuntu 12.04&lt;/li&gt;
&lt;li&gt;The avr-gcc compiler&lt;/li&gt;
&lt;li&gt;Openjdk, the open source version of the JDK (Java Development Kit)&lt;/li&gt;
&lt;li&gt;Eclipse Juno CDT (or JavaEE)&lt;/li&gt;
&lt;li&gt;Arduino library&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;java&#34;&gt;Java&lt;/h3&gt;
&lt;p&gt;We need the JDK and we will use the open source version. I invite you to install the &lt;strong&gt;version 6&lt;/strong&gt; (and not the 7) due to security issues in the seventh one.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perl - OOP - Creating classes with methods</title>
      <link>https://www.badprog.com/perl-oop-creating-classes-with-methods/</link>
      <pubDate>Thu, 18 Oct 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/perl-oop-creating-classes-with-methods/</guid>
      <description>&lt;p&gt;As every language, OOP is a plus. And who says OOP, says classes and methods.&lt;/p&gt;
&lt;p&gt;Perl is able to manage such of things. That&amp;rsquo;s what we are going to see in this Perl tutorial.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s create classes and their methods.&lt;/p&gt;
&lt;h2 id=&#34;explanation&#34;&gt;Explanation&lt;/h2&gt;
&lt;p&gt;Our Perl program will show us who is the boss and who is the employee. And who the boss is hiring.&lt;/p&gt;
&lt;p&gt;In Perl, a &lt;strong&gt;class&lt;/strong&gt; is called a &lt;strong&gt;Package&lt;/strong&gt;.&lt;br&gt;
The name of the package is the same as the file name.&lt;br&gt;
Its extension is &lt;strong&gt;&amp;quot;.pm&lt;/strong&gt;&amp;quot;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perl - Native functions - Using print()</title>
      <link>https://www.badprog.com/perl-native-functions-using-print/</link>
      <pubDate>Thu, 11 Oct 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/perl-native-functions-using-print/</guid>
      <description>&lt;p&gt;The Perl print() function is used to display a string.&lt;/p&gt;
&lt;p&gt;In our example, we are going to display the content of two variables previously declared and initialized.&lt;/p&gt;
&lt;p&gt;So, let&amp;rsquo;s go to our first Perl HelloWorld! tutorial!&lt;/p&gt;
&lt;h2 id=&#34;explanation&#34;&gt;Explanation&lt;/h2&gt;
&lt;p&gt;We have to create a file named &lt;strong&gt;helloWorld.pl&lt;/strong&gt; because we will use this file with the &lt;strong&gt;perl&lt;/strong&gt; command.&lt;/p&gt;
&lt;p&gt;All comments are beginning by a sharp (&lt;strong&gt;#&lt;/strong&gt;).&lt;/p&gt;
&lt;p&gt;The code is quite easy, we have two &lt;strong&gt;pragmas&lt;/strong&gt; (&lt;em&gt;strict&lt;/em&gt; and &lt;em&gt;warnings&lt;/em&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oracle - VirtualBox - Installation</title>
      <link>https://www.badprog.com/oracle-virtualbox-installation/</link>
      <pubDate>Mon, 24 Sep 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/oracle-virtualbox-installation/</guid>
      <description>&lt;p&gt;VirtualBox is a virtualization manager that enables to add different OS on other OS.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s admit you have a PC with Windows 7 installed. In the past, if you wanted to have a Linux, you were obliged to install it like any OS with a DVD and boot on it.&lt;/p&gt;
&lt;p&gt;And then, reboot each time you wanted to use one of them.&lt;/p&gt;
&lt;p&gt;Now, with virtualization, you just have to download a software and while you are still on an OS you can install another one, without rebooting your machine!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Debugger - An easy example</title>
      <link>https://www.badprog.com/eclipse-debugger-an-easy-example/</link>
      <pubDate>Sat, 02 Jun 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-debugger-an-easy-example/</guid>
      <description>&lt;p&gt;Using the debugger is just essantial in a huge complex project.&lt;/p&gt;
&lt;p&gt;But even for a tiny program, it is also useful.&lt;/p&gt;
&lt;p&gt;For this Eclipse debugguer tutorial we are going to test it with the C++ programming language.&lt;/p&gt;
&lt;p&gt;Of course you know how to install Eclipse on Windows, if not, follow this &lt;a href=&#34;https://www.badprog.com/c-eclipse-installation-of-c-c-development-tools-cdt-and-cygwin-for-windows&#34;&gt;Eclipse installation tutorial for Windows&lt;/a&gt;.&lt;br&gt;
If you prefer GNU/Linux or MAC it is a bit much easy because all libraries are already installed on your OS.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Errors - While coding</title>
      <link>https://www.badprog.com/eclipse-errors-while-coding/</link>
      <pubDate>Thu, 08 Mar 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-errors-while-coding/</guid>
      <description>&lt;p&gt;This section will gather all errors found when you were coding in Eclipse.&lt;br&gt;
It is really hard sometimes to find what is the problem when you get an exception.&lt;/p&gt;
&lt;p&gt;I will also give a solution of the problem.&lt;/p&gt;
&lt;h2 id=&#34;error-1-javalangarrayindexoutofboundsexception&#34;&gt;Error 1. java.lang.ArrayIndexOutOfBoundsException&lt;/h2&gt;
&lt;p&gt;I had a hard reboot and when I came back to Eclipse (it was opened during this reboot), completion didn&amp;rsquo;t work anymore.&lt;br&gt;
I trying some stuff, but nothing.&lt;br&gt;
Finally I erased the &lt;strong&gt;.metadata&lt;/strong&gt; directory included in all projects generated by Eclipse.&lt;br&gt;
I know it is a bit radical, but it works. 😜&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - List - Creating a list</title>
      <link>https://www.badprog.com/ocaml-list-creating-a-list/</link>
      <pubDate>Wed, 29 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-list-creating-a-list/</guid>
      <description>&lt;p&gt;As all programming languages, it is possible to create lists in OCaml.&lt;/p&gt;
&lt;p&gt;So, let&amp;rsquo;s see this, right now with new examples.&lt;br&gt;
We will indeed create two functions, one of &lt;strong&gt;ints&lt;/strong&gt; and another of &lt;strong&gt;strings&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;For the ints:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; number &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;1&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 2&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 3&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 4&lt;span style=&#34;color:#f92672&#34;&gt;];;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;For the strings:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; fruits &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;apricot&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;raspberry&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;cherry&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;tomato&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;];;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;As you can see, there is no need to tell to the interpreter the type of elements in the list.&lt;br&gt;
It&amp;rsquo;s automatic! 😊&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - List - Iterating through a list and displaying all elements inside</title>
      <link>https://www.badprog.com/ocaml-list-iterating-through-a-list-and-displaying-all-elements-inside/</link>
      <pubDate>Wed, 29 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-list-iterating-through-a-list-and-displaying-all-elements-inside/</guid>
      <description>&lt;p&gt;As you already saw it, creating a list in OCaml is not so difficult.&lt;br&gt;
But this time, we will see how to iterate through a list and display all elements inside.&lt;/p&gt;
&lt;p&gt;We will create two arrays, one of ints, the other of strings.&lt;br&gt;
Once done, we will display their elements.&lt;br&gt;
Let&amp;rsquo;s see it with this OCaml list tutorial.&lt;/p&gt;
&lt;h2 id=&#34;creating-lists&#34;&gt;Creating lists&lt;/h2&gt;
&lt;p&gt;List of ints:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; number &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;[&lt;/span&gt;1&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 2&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 3&lt;span style=&#34;color:#f92672&#34;&gt;;&lt;/span&gt; 4&lt;span style=&#34;color:#f92672&#34;&gt;];;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;List of strings:&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - Function - Creating a getter to retrieve an element of a tuple</title>
      <link>https://www.badprog.com/ocaml-function-creating-a-getter-to-retrieve-an-element-of-a-tuple/</link>
      <pubDate>Tue, 28 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-function-creating-a-getter-to-retrieve-an-element-of-a-tuple/</guid>
      <description>&lt;p&gt;OK, this is not really a getter implementation like we can have it in other object-oriented programming, but it is close of it.&lt;/p&gt;
&lt;p&gt;We have first to create an human variable with a tuple (&amp;ldquo;name&amp;rdquo;, age).&lt;br&gt;
Then we have to create two getter functions to retrieve the first and the second parameter of this human variable.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s begin by the human variable:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; human &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;John&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;,&lt;/span&gt; 50&lt;span style=&#34;color:#f92672&#34;&gt;);;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;val&lt;/span&gt; human &lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;string&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;John&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;,&lt;/span&gt; 50&lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Let&amp;rsquo;s continue by the getName function:&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - Function - Creating an easy function</title>
      <link>https://www.badprog.com/ocaml-function-creating-an-easy-function/</link>
      <pubDate>Tue, 28 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-function-creating-an-easy-function/</guid>
      <description>&lt;p&gt;In this tutorial we will see how to create a function in OCaml language.&lt;br&gt;
It will be an easy function to understand how it works.&lt;/p&gt;
&lt;p&gt;We will create a function that returns an int + 1.&lt;br&gt;
Here the code:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; myFunc myVar &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; myVar &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; 1&lt;span style=&#34;color:#f92672&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Notice that you can also create a function like this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; myFunc &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;fun&lt;/span&gt; myVar &lt;span style=&#34;color:#f92672&#34;&gt;-&amp;gt;&lt;/span&gt; myVar &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; 1&lt;span style=&#34;color:#f92672&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Press enter, it will display:&lt;/p&gt;
&lt;p&gt;val myFunc : int -&amp;gt; int = &lt;fun&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - Function - Using recursion</title>
      <link>https://www.badprog.com/ocaml-function-using-recursion/</link>
      <pubDate>Tue, 28 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-function-using-recursion/</guid>
      <description>&lt;p&gt;OCaml is a fully recursive language. So using recursion is completely natural.&lt;br&gt;
We will see in this example how to create an easy recursion of a classic factorial. This in two different manners.&lt;br&gt;
These two ways of using recursion are strictely the same, the type of the function and the result as well of course.&lt;/p&gt;
&lt;h2 id=&#34;the-first-manner-to-create-a-recursion-function&#34;&gt;The first manner to create a recursion function&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;rec&lt;/span&gt; factorial n &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; n &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; 0 &lt;span style=&#34;color:#66d9ef&#34;&gt;then&lt;/span&gt; 1 &lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt; n &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; factorial&lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt;n &lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt; 1&lt;span style=&#34;color:#f92672&#34;&gt;);;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You can split it to have a better indentation:&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - Utilities - Using the rlwrap command</title>
      <link>https://www.badprog.com/ocaml-utilities-using-the-rlwrap-command/</link>
      <pubDate>Mon, 27 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-utilities-using-the-rlwrap-command/</guid>
      <description>&lt;p&gt;When you use OCaml on Linux for example, you cannot by default using the arrow from your keyboard, neither the completion.&lt;br&gt;
If you try to use them you will have something like that:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;A&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;D&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;C&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;B&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;D&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;A&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;C&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;D&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;B&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;^[[&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;C&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;But there is readline wrapper named rlwrap that will help us in this task!&lt;/p&gt;
&lt;p&gt;Just write it before starting your OCaml interpreter, like this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ rlwrap ocaml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Thus your arrows will work and completion too.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OCaml - Variable - Creating variables</title>
      <link>https://www.badprog.com/ocaml-variable-creating-variables/</link>
      <pubDate>Mon, 27 Feb 2012 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ocaml-variable-creating-variables/</guid>
      <description>&lt;p&gt;For creating variables in OCaml we need to use the &lt;strong&gt;let&lt;/strong&gt; keyword.&lt;/p&gt;
&lt;p&gt;The syntax to create a variable is the following:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;#&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;let&lt;/span&gt; myVar &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; 90&lt;span style=&#34;color:#f92672&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;When you type enter, it will be displayed the type of your variable:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ocaml&#34; data-lang=&#34;ocaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;val&lt;/span&gt; myVar &lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;int&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; 90
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The OCaml interpreter will find the type by itself.&lt;br&gt;
This mechanism is called the inference. 😊&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - MediaPlayer - Example of playing sounds</title>
      <link>https://www.badprog.com/android-mediaplayer-example-of-playing-sounds/</link>
      <pubDate>Fri, 23 Dec 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-mediaplayer-example-of-playing-sounds/</guid>
      <description>&lt;p&gt;Maybe you are wondering how to play a MP3 sound by clicking a simple Button on Android.&lt;/p&gt;
&lt;p&gt;Eh, you know what? You are in the right place!&lt;/p&gt;
&lt;p&gt;Note that this tutorial for MP3 sounds works as well with MP3 musics and of course a lot of different types of format such as WAVE or MIDI.&lt;/p&gt;
&lt;p&gt;A complete list can be found on the official website of Android developpers:&lt;br&gt;
&lt;a href=&#34;http://developer.android.com/guide/appendix/media-formats.html&#34;&gt;http://developer.android.com/guide/appendix/media-formats.html&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;After a presention of which MP3 we will need, we will show the source code needed for this tutorial.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Ant - Errors</title>
      <link>https://www.badprog.com/apache-ant-errors/</link>
      <pubDate>Thu, 08 Dec 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-ant-errors/</guid>
      <description>&lt;p&gt;You were compiling on Windows 7 when suddenly you are getting this error:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;[ERROR] com.sun.tools.javac.Main is not on the classpath.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;[ERROR] Perhaps JAVA_HOME does not point to the JDK.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then maybe something like that:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;[ERROR] It is currently set to &amp;#34;C:\soft\java32\jdk1.7.0\jre&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;So the JRE instead of the JDK?&lt;br&gt;
What&amp;rsquo;s going on?&lt;/p&gt;
&lt;p&gt;Ant needs a file named &lt;strong&gt;tools.jar&lt;/strong&gt; that it searches in the JRE but this file is in the JDK!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Continuum - Configuration</title>
      <link>https://www.badprog.com/apache-continuum-configuration/</link>
      <pubDate>Wed, 30 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-continuum-configuration/</guid>
      <description>&lt;p&gt;After &lt;a href=&#34;https://www.badprog.com/apache-continuum-installation&#34;&gt;installing Apache Continuum continuous integration tool&lt;/a&gt;, you may want to configure it and of course, build your first project with Maven and Continuum.&lt;br&gt;
But you already have a project on SVN, and you wish to use it as well.&lt;/p&gt;
&lt;p&gt;No problem you are in the right place.&lt;/p&gt;
&lt;p&gt;Software used in this tutorial:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Apache Maven 3&lt;/li&gt;
&lt;li&gt;Apache Continuum 1.4.0&lt;/li&gt;
&lt;li&gt;Subversion 1.7&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;configuration-of-continuum-with-maven-and-svn-on-windows&#34;&gt;Configuration of Continuum with Maven and SVN on Windows&lt;/h2&gt;
&lt;h3 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h3&gt;
&lt;p&gt;If you don&amp;rsquo;t have a project built with Maven, I suggest to follow this &lt;a href=&#34;https://www.badprog.com/apache-maven-what-is-maven&#34;&gt;tutorial of &amp;ldquo;What is Maven?&amp;rdquo;&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Continuum - Installation</title>
      <link>https://www.badprog.com/apache-continuum-installation/</link>
      <pubDate>Wed, 30 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-continuum-installation/</guid>
      <description>&lt;p&gt;Apache Continuum is a continuous integration tool.&lt;/p&gt;
&lt;p&gt;You can download a copy on the official webpage of Apache Continuum:&lt;a href=&#34;http://continuum.apache.org/&#34;&gt;http://continuum.apache.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Or with one of mirrors with this Apache mirrors&amp;rsquo; page: &lt;a href=&#34;http://www.apache.org/dyn/closer.cgi&#34;&gt;http://www.apache.org/dyn/closer.cgi&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;installation-of-apache-continuum-on-windows&#34;&gt;Installation of Apache Continuum on Windows&lt;/h2&gt;
&lt;p&gt;We will take the &lt;strong&gt;apache-continuum-1.4.0-bin.zip&lt;/strong&gt; version.&lt;/p&gt;
&lt;p&gt;It will be installed by the console with the JVM.&lt;br&gt;
And of course, you need a JDK, who do not have it?&lt;/p&gt;
&lt;p&gt;I extracted all files, from the .ZIP, in this directory:&lt;br&gt;
&lt;strong&gt;C:\soft\apache\continuum-1.4.0&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Maven - What is Maven?</title>
      <link>https://www.badprog.com/apache-maven-what-is-maven/</link>
      <pubDate>Tue, 29 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-maven-what-is-maven/</guid>
      <description>&lt;p&gt;Maven is a tool, mainly developed for Java developments.&lt;br&gt;
This is a complete software so it is not so easy to understand when you start developing, even with the official website of Maven: &lt;a href=&#34;http://maven.apache.org/&#34;&gt;http://maven.apache.org/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;But I will try to reduce the explanation of what is Maven with some examples.&lt;/p&gt;
&lt;p&gt;You can start by following this tiny &lt;a href=&#34;https://www.badprog.com/apache-maven-installation&#34;&gt;installation tutorial of Maven for Windows&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;OK, let&amp;rsquo;s see in details what Maven is.&lt;br&gt;
First of all, every project with Maven has a &lt;strong&gt;pom.xml&lt;/strong&gt; file.&lt;br&gt;
POM means &lt;strong&gt;Project Object Model&lt;/strong&gt;.&lt;br&gt;
With this XML file, a team manager can configure a project and how Maven will interact with this project.&lt;br&gt;
It means that if a project contains subprojects, we will have more than one pom.xml.&lt;br&gt;
In fact, one for each project.&lt;br&gt;
The POM into sub projects will inherite from the S&lt;strong&gt;uper POM&lt;/strong&gt; and so on for others child projects.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Archiva - Installation</title>
      <link>https://www.badprog.com/apache-archiva-installation/</link>
      <pubDate>Mon, 28 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-archiva-installation/</guid>
      <description>&lt;p&gt;To download the last stable &lt;strong&gt;Archiva&lt;/strong&gt; release, let&amp;rsquo;s go on the official website: &lt;a href=&#34;http://archiva.apache.org/&#34;&gt;http://archiva.apache.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For this Archiva installation tutorial, we will install the &lt;strong&gt;Archiva 1.3.5 Standalone&lt;/strong&gt; version.&lt;/p&gt;
&lt;p&gt;Do not hesitate to test the &lt;strong&gt;MD5&lt;/strong&gt; checksum.&lt;/p&gt;
&lt;h2 id=&#34;installation-of-archiva-on-windows&#34;&gt;Installation of Archiva on Windows&lt;/h2&gt;
&lt;p&gt;OK, extract the files into a directory, I chose this one:&lt;br&gt;
&lt;strong&gt;C:\soft\artefact-manager\apache-archiva-1.3.5&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Now open this file:&lt;br&gt;
&lt;strong&gt;C:\soft\artefact-manager\apache-archiva-1.3.5\conf\jetty.xml&lt;/strong&gt;.&lt;br&gt;
And go until the line &lt;strong&gt;66&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You will have something like that:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Just change the &lt;strong&gt;8080&lt;/strong&gt; by &lt;strong&gt;8082&lt;/strong&gt;.&lt;br&gt;
You are probably wondering why?&lt;br&gt;
This is because the default port, in our case 8080, is often already taken by another device or software.&lt;br&gt;
So to be sure it works, we change this for 8082.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - CppUnit - Installation</title>
      <link>https://www.badprog.com/eclipse-cppunit-installation/</link>
      <pubDate>Wed, 23 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-cppunit-installation/</guid>
      <description>&lt;p&gt;It is a bit complex to know how to install CppUnit and how to use it with Eclipse.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why I make this tutorial about CppUnit and Eclipse.&lt;br&gt;
I hope it will be easy enough even for beginners, if not, do not hesitate to post a comment, I will help if I can.&lt;/p&gt;
&lt;p&gt;This installation will be done on Windows OS, I am sure if you are a Linux addict or a Mac fan, this explanation will help you as well.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Tips&#39;n Tricks - Adding flags to the GCC compiler</title>
      <link>https://www.badprog.com/eclipse-tips-n-tricks-adding-flags-to-the-gcc-compiler/</link>
      <pubDate>Sat, 19 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-tips-n-tricks-adding-flags-to-the-gcc-compiler/</guid>
      <description>&lt;p&gt;You may want to add some commands to your GCC flag settings.&lt;/p&gt;
&lt;p&gt;No problem, Eclipse can allow you this.&lt;/p&gt;
&lt;p&gt;Right click on your project &amp;gt; &lt;strong&gt;Properties&lt;/strong&gt; &amp;gt; &lt;strong&gt;C/C++ Build&lt;/strong&gt; &amp;gt; &lt;strong&gt;Settings&lt;/strong&gt; &amp;gt; &lt;strong&gt;Tool Settings&lt;/strong&gt; &amp;gt; &lt;strong&gt;GCC C++ Compiler&lt;/strong&gt; &amp;gt; &lt;strong&gt;Miscellaneous&lt;/strong&gt;.&lt;br&gt;
On the right, there is an input with the name &lt;strong&gt;Other flags&lt;/strong&gt;.&lt;br&gt;
Enter your command there.&lt;/p&gt;
&lt;p&gt;For example, if when you compiling you have this error:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;&lt;em&gt;deprecated conversion from string constant to &amp;lsquo;char&lt;/em&gt;&amp;rsquo; [-Wwrite-strings]&lt;/em&gt;*&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can add this command to remove it:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Java - Source attachment</title>
      <link>https://www.badprog.com/eclipse-java-source-attachment/</link>
      <pubDate>Mon, 14 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-java-source-attachment/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s really annoying when you want to browse throw a javadoc but Eclipse doesn&amp;rsquo;t know where to find these sources.&lt;/p&gt;
&lt;p&gt;The more difficult thing is to find these source files.&lt;/p&gt;
&lt;p&gt;But with the JDK7 it is now easy.&lt;br&gt;
Go until your directory where you have installed it.&lt;br&gt;
For example, let&amp;rsquo;s assume it is &lt;strong&gt;C:/soft/java32/jdk1.7.0.&lt;/strong&gt;&lt;br&gt;
You will find a &lt;strong&gt;src.zip&lt;/strong&gt; file.&lt;/p&gt;
&lt;p&gt;This is the file to open all classes present in your, for example, &lt;strong&gt;rt.jar&lt;/strong&gt; file.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - JUnit - Installation</title>
      <link>https://www.badprog.com/eclipse-junit-installation/</link>
      <pubDate>Mon, 14 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-junit-installation/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s time for you to play with Unit testing, especially with JUnit.&lt;/p&gt;
&lt;p&gt;OK, let&amp;rsquo;s see how to install it on Eclipse.&lt;/p&gt;
&lt;p&gt;First of all, you need a version of JUnit.&lt;br&gt;
Let&amp;rsquo;s go on the official website to download it: &lt;a href=&#34;http://www.junit.org/&#34;&gt;http://www.junit.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In the last version, for our example, the &lt;strong&gt;junit4.10&lt;/strong&gt; one.&lt;/p&gt;
&lt;p&gt;Open the .zip. Inside there is a &lt;strong&gt;junit-4.10.jar&lt;/strong&gt; file.&lt;/p&gt;
&lt;p&gt;In Eclipse, select a project then &amp;gt; &lt;strong&gt;Project&lt;/strong&gt; &amp;gt; &lt;strong&gt;Properties&lt;/strong&gt; &amp;gt; &lt;strong&gt;Java Build Path&lt;/strong&gt; &amp;gt; &lt;strong&gt;Libraries&lt;/strong&gt; tab &amp;gt; &lt;strong&gt;Add Jars&lt;/strong&gt; &amp;gt; Select the &lt;strong&gt;junit-4.10.jar&lt;/strong&gt; &amp;gt; &lt;strong&gt;OK&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - SDL (Simple Directmedia Layer) - Installation</title>
      <link>https://www.badprog.com/eclipse-sdl-simple-directmedia-layer-installation/</link>
      <pubDate>Fri, 11 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-sdl-simple-directmedia-layer-installation/</guid>
      <description>&lt;p&gt;You like C and C++ but you need some help to access audio, joystick, keyboard, video framebuffer, etc.&lt;br&gt;
That&amp;rsquo;s why you would like to use the SDL library.&lt;/p&gt;
&lt;p&gt;But, there is still a problem, you don&amp;rsquo;t know how to install it with Eclipse.&lt;/p&gt;
&lt;p&gt;OK, let&amp;rsquo;s try it with this tutorial installation.&lt;/p&gt;
&lt;h2 id=&#34;1-installation-of-sdl-with-eclipse-on-windows&#34;&gt;1. Installation of SDL with Eclipse on Windows&lt;/h2&gt;
&lt;h3 id=&#34;a-outside-eclipse&#34;&gt;A. Outside Eclipse&lt;/h3&gt;
&lt;p&gt;We assume that you have already installed &lt;strong&gt;MinGW&lt;/strong&gt; in this directory: &lt;strong&gt;C:\soft\mingw&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Maven - Installation</title>
      <link>https://www.badprog.com/apache-maven-installation/</link>
      <pubDate>Tue, 08 Nov 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-maven-installation/</guid>
      <description>&lt;p&gt;Maven is a great tool that can really help you to manage a project.&lt;br&gt;
Its main goal is to building projects, publishing project information and a sharing JARs across several projects.&lt;/p&gt;
&lt;p&gt;We will see, in this tutorial, the installation of Maven 3 on Windows.&lt;/p&gt;
&lt;h2 id=&#34;installation-of-maven-3-on-windows-operating-system&#34;&gt;Installation of Maven 3 on Windows operating system&lt;/h2&gt;
&lt;p&gt;Let&amp;rsquo;s first download the latest version from the official website of Apache Maven: &lt;a href=&#34;http://maven.apache.org/download.html&#34;&gt;http://maven.apache.org/download.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Then extract files in the directory of your choice.&lt;br&gt;
For our example, we will assume this one: &lt;strong&gt;C:\soft\apache\maven-3&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML - Diagram class - Relationships</title>
      <link>https://www.badprog.com/uml-diagram-class-relationships/</link>
      <pubDate>Wed, 26 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/uml-diagram-class-relationships/</guid>
      <description>&lt;p&gt;This is not so easy to know which relationships and graphic to use to describe a situation.&lt;br&gt;
But what we know for sure, is that the classes are linked.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see this in details.&lt;/p&gt;
&lt;h2 id=&#34;association&#34;&gt;Association&lt;/h2&gt;
&lt;p&gt;An association is graphically represented by a simple line.&lt;br&gt;
This is a weak link between two or more classes.&lt;br&gt;
For example a customer can make an order.&lt;br&gt;
In this case, the customer is linked by this order, and the order as well by the customer.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Tips&#39;n tricks - Open Element</title>
      <link>https://www.badprog.com/eclipse-tips-n-tricks-open-element/</link>
      <pubDate>Tue, 25 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-tips-n-tricks-open-element/</guid>
      <description>&lt;p&gt;This &lt;strong&gt;Open Element&lt;/strong&gt; option allows to find a specific element in a project with the beginning of its name.&lt;/p&gt;
&lt;p&gt;For that, open a class and type &lt;strong&gt;SHIFT + CTRL + T&lt;/strong&gt; and a popup will open to find the correct element of your dreams.&lt;/p&gt;
&lt;p&gt;Very useful.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Standard Widget Toolkit (SWT) - Installation</title>
      <link>https://www.badprog.com/eclipse-standard-widget-toolkit-swt-installation/</link>
      <pubDate>Fri, 21 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-standard-widget-toolkit-swt-installation/</guid>
      <description>&lt;p&gt;SWT, the Standard Widget Toolkit, will help us to draw windows for the Java platform.&lt;/p&gt;
&lt;p&gt;On this webpage you will find links to download last stable releases &lt;a href=&#34;http://www.eclipse.org/swt/&#34;&gt;http://www.eclipse.org/swt/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once downloaded, open Eclipse, right click on the Explorer tab, then : &lt;strong&gt;Import&amp;hellip;&lt;/strong&gt; &amp;gt; &lt;strong&gt;General&lt;/strong&gt; &amp;gt; &lt;strong&gt;Existing Projects into Workspace&lt;/strong&gt;.&lt;br&gt;
Click Next then select the &lt;strong&gt;Select archive file&lt;/strong&gt; option and browse until, for example for Windows OS, your  &lt;strong&gt;swt-3.7.1-win32-win32-x86.zip&lt;/strong&gt; file.&lt;/p&gt;
&lt;p&gt;Click &lt;strong&gt;Finish&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Now in your Package Explorer you can see the &lt;strong&gt;org.eclipse.swt&lt;/strong&gt; project.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Tips&#39;n tricks - Open Type</title>
      <link>https://www.badprog.com/eclipse-tips-n-tricks-open-type/</link>
      <pubDate>Fri, 21 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-tips-n-tricks-open-type/</guid>
      <description>&lt;p&gt;This &lt;strong&gt;Open Type&lt;/strong&gt; option allows to find a specific class in a project with the beginning of its name.&lt;/p&gt;
&lt;p&gt;For that, use the &lt;strong&gt;SHIFT + CTRL + H&lt;/strong&gt; and a popup will open in front of your eyes.&lt;br&gt;
Start writing and all types with matching name will appear.&lt;/p&gt;
&lt;p&gt;😭&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Qt Framework - Installation</title>
      <link>https://www.badprog.com/eclipse-qt-framework-installation/</link>
      <pubDate>Tue, 18 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-qt-framework-installation/</guid>
      <description>&lt;p&gt;You like Qt framework and you like Eclipse as well.&lt;br&gt;
So you already developed with Qt Creator, but your favorite IDE is missing you.&lt;/p&gt;
&lt;p&gt;I understand.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why I will show you how to use Eclipse to compile a project with Qt framework.&lt;/p&gt;
&lt;h2 id=&#34;1-using-eclipse-and-qt-framework-on-windows-os&#34;&gt;1. Using Eclipse and Qt framework on Windows OS&lt;/h2&gt;
&lt;h3 id=&#34;a-qt-for-open-source-c-development-on-windows&#34;&gt;A. Qt for open source C++ development on Windows&lt;/h3&gt;
&lt;p&gt;Let&amp;rsquo;s start by install the open source Qt libraries.&lt;br&gt;
I suggest you to downlod the &lt;strong&gt;.exe&lt;/strong&gt; with this link: &lt;a href=&#34;http://qt.nokia.com/downloads/windows-cpp&#34;&gt;http://qt.nokia.com/downloads/windows-cpp&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Tips&#39;n tricks - Creating a Code Style</title>
      <link>https://www.badprog.com/eclipse-tips-n-tricks-creating-a-code-style/</link>
      <pubDate>Tue, 11 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-tips-n-tricks-creating-a-code-style/</guid>
      <description>&lt;p&gt;You can easily manage the &lt;strong&gt;Code Style&lt;/strong&gt; of your pages in &lt;strong&gt;Eclipse&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;For example, for C++ (this is exactly the same for all others languages), simply do this:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Window&lt;/strong&gt; &amp;gt; &lt;strong&gt;Preferences&lt;/strong&gt; &amp;gt; &lt;strong&gt;C/C++&lt;/strong&gt; &amp;gt; &lt;strong&gt;Code Style&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Under classic built-in choices, click &lt;strong&gt;New&amp;hellip;&lt;/strong&gt; and create your own &lt;strong&gt;Code Style&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;Yeah!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Tips&#39;n tricks - Generating getters and setters from the Source menu</title>
      <link>https://www.badprog.com/eclipse-tips-n-tricks-generating-getters-and-setters-from-the-source-menu/</link>
      <pubDate>Tue, 11 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-tips-n-tricks-generating-getters-and-setters-from-the-source-menu/</guid>
      <description>&lt;p&gt;An easy way to &lt;strong&gt;generate getters and setters&lt;/strong&gt; is to use the &lt;strong&gt;Source&lt;/strong&gt; option within &lt;strong&gt;Eclipse Indigo&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;For example, create a new file, add the following lines and &lt;strong&gt;select them&lt;/strong&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;int nbPeople;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;int nbAnimal;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then right click.&lt;br&gt;
On the menu select &lt;strong&gt;Source&lt;/strong&gt; &amp;gt; &lt;strong&gt;Generate getters and setters&lt;/strong&gt;.&lt;br&gt;
On the new window, click on the right &lt;strong&gt;Select All&lt;/strong&gt;, then Next and &lt;strong&gt;Finish&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Your getters and setters are generated for you as follows:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Ant - Installation</title>
      <link>https://www.badprog.com/apache-ant-installation/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-ant-installation/</guid>
      <description>&lt;p&gt;Ant is a &lt;strong&gt;Java&lt;/strong&gt; tool that can help you building projects and setting them correctly.&lt;br&gt;
It can generates files and directory from simple XML files.&lt;br&gt;
So, let&amp;rsquo;s get started with this tutorial of &lt;strong&gt;Apache Ant&lt;/strong&gt; on Windows operating system.&lt;/p&gt;
&lt;h2 id=&#34;1-apache-ant-installation-on-windows&#34;&gt;1. Apache Ant installation on Windows&lt;/h2&gt;
&lt;p&gt;So, we will install Ant on Windows and for that we will use in this tutorial:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows 7&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://ant.apache.org/&#34;&gt;Ant 1.8.2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Two things are important, the &lt;strong&gt;path for the directory&lt;/strong&gt; and the &lt;strong&gt;path for the environment variables&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Oracle - GlassFish Server Open Source Edition - Installation</title>
      <link>https://www.badprog.com/oracle-glassfish-server-open-source-edition-installation/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/oracle-glassfish-server-open-source-edition-installation/</guid>
      <description>&lt;p&gt;A new tutorial to explain how to install the &lt;strong&gt;Oracle GlassFish server Open Source Edition 3.1.1&lt;/strong&gt; on &lt;strong&gt;Windows&lt;/strong&gt; directly by running it and with the &lt;strong&gt;Eclipse&lt;/strong&gt; IDE.&lt;/p&gt;
&lt;h2 id=&#34;1-installation-on-windows-by-running-it&#34;&gt;1. Installation on Windows by running it&lt;/h2&gt;
&lt;p&gt;Let&amp;rsquo;s start by download it on the official website: &lt;a href=&#34;http://glassfish.java.net/&#34;&gt;http://glassfish.java.net/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once downloaded, run it.&lt;br&gt;
Choose: Custom Installation &amp;gt; Next &amp;gt; Install and Configure &amp;gt; Next &amp;gt; Select a directory &amp;gt; Next &amp;gt; Select your Java SDK folder &amp;gt; Next &amp;gt; Check Install Update Tool and Enable Update Tool &amp;gt; Install&lt;/p&gt;</description>
    </item>
    <item>
      <title>Security - Checksum - MD5</title>
      <link>https://www.badprog.com/security-checksum-md5/</link>
      <pubDate>Tue, 04 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/security-checksum-md5/</guid>
      <description>&lt;p&gt;You just download a new file and you want to know if this file is really the good one.&lt;/p&gt;
&lt;p&gt;How to do that?&lt;/p&gt;
&lt;p&gt;With checksum of course!&lt;/p&gt;
&lt;p&gt;Of course, this is not a 100% secure way, but it is better than nothing!&lt;/p&gt;
&lt;p&gt;Why it is not a perfect secure way?&lt;br&gt;
Because someone may have hacked the website where is the file to download, and generate the checksum of its own hacked file.&lt;br&gt;
So if you try to check this checksum, you will have exactly the same, but the file will be hacked.&lt;br&gt;
But as I said, this is better than nothing!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Subversion - Installing SVN on Windows</title>
      <link>https://www.badprog.com/eclipse-subversion-installing-svn-on-windows/</link>
      <pubDate>Sun, 02 Oct 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-subversion-installing-svn-on-windows/</guid>
      <description>&lt;p&gt;You already have Eclipse Indigo, but you want more. That is a good thing.&lt;br&gt;
Indeed, you want be able to connect your projects with a software versioning and a revision control system, and this directly from Eclipse.&lt;/p&gt;
&lt;p&gt;You need SVN!&lt;/p&gt;
&lt;p&gt;Open Eclipse:&lt;/p&gt;
&lt;p&gt;Help &amp;gt; Eclipse Market Place&amp;hellip; &amp;gt; Write Subclipse in the Find input area.&lt;/p&gt;
&lt;p&gt;Click Install on the right of the Subclipse details.&lt;/p&gt;
&lt;p&gt;Accept all and restart Eclipse.&lt;/p&gt;
&lt;p&gt;If you have a 64 bits Java Virtual Machine, you must download the JavaHL for 64 bits.&lt;br&gt;
Here the website: &lt;a href=&#34;http://www.sliksvn.com/en/download&#34;&gt;http://www.sliksvn.com/en/download&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - Tomcat - Installation</title>
      <link>https://www.badprog.com/apache-tomcat-installation/</link>
      <pubDate>Sun, 25 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-tomcat-installation/</guid>
      <description>&lt;p&gt;Today a new tutorial for installing Tomcat 7 on Windows 7.&lt;br&gt;
You must have, at least, the JRE 6.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Apache Tomcat installation on Windows 7&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let&amp;rsquo;s get started by downloading the last version on the official Apache Tomcat website:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://tomcat.apache.org/&#34;&gt;http://tomcat.apache.org/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Choose the &lt;strong&gt;32-bit/64-bit Windows Service Installer&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Run it and in the Choose Components choices, select the type of install &lt;strong&gt;Full&lt;/strong&gt; in the combo box.&lt;br&gt;
Click Next and in Configuration, let all ports by default.&lt;br&gt;
In the Tomcat Administrator Login set a User Name and a Password if you want, or let it empty.&lt;br&gt;
Then Next &amp;gt; Next &amp;gt; Install.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 2 - Installation - On Windows Operating System</title>
      <link>https://www.badprog.com/symfony-2-installation-on-windows-operating-system/</link>
      <pubDate>Sat, 24 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-2-installation-on-windows-operating-system/</guid>
      <description>&lt;p&gt;You already played with Symfony 1 or you never used it (SHAME ON YOU), and you want to install a fresh new 2.0.1 version of Symfony2 on Windows 7.&lt;/p&gt;
&lt;p&gt;You are in the right place!&lt;/p&gt;
&lt;p&gt;To be honest this new version is really easy to install.&lt;/p&gt;
&lt;p&gt;Download a copy on the official website of Symfony2: &lt;a href=&#34;http://symfony.com/download&#34;&gt;http://symfony.com/download&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We will install the 2.0.1 in the ZIP format.&lt;/p&gt;
&lt;p&gt;Symply open the ZIP file and place all in the root of your web server, generally it is &lt;strong&gt;C:\www&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Error - DeviceMonitor</title>
      <link>https://www.badprog.com/android-error-devicemonitor/</link>
      <pubDate>Fri, 16 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-error-devicemonitor/</guid>
      <description>&lt;p&gt;The following error occurs when you try to restart your Android Virtual Device too quickly during another launch, with the Run command of Eclipse:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-java&#34; data-lang=&#34;java&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;This application has requested the Runtime to terminate it in an unusual way.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Please contact the application&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;&amp;#39;&lt;/span&gt;s support team &lt;span style=&#34;color:#66d9ef&#34;&gt;for&lt;/span&gt; more information.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Error during Sync: timeout.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Adb connection Error:An existing connection was forcibly closed by the remote host
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Connection attempts: 1
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Connection attempts: 2
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Connection attempts: 3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Connection attempts: 4
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Connection attempts: 5
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To resolve it, close your ADV and restart your application. 😜&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Error - ActivityManager</title>
      <link>https://www.badprog.com/android-error-activitymanager/</link>
      <pubDate>Thu, 15 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-error-activitymanager/</guid>
      <description>&lt;p&gt;There, errors took from the ActivityManager within the Eclipse Console for the Android plugin and of course some explanations.&lt;/p&gt;
&lt;h2 id=&#34;1-error-1&#34;&gt;1. Error 1&lt;/h2&gt;
&lt;h3 id=&#34;11-the-console-text&#34;&gt;1.1. The console text&lt;/h3&gt;
&lt;p&gt;ActivityManager: Starting: Intent&lt;br&gt;
{&lt;br&gt;
act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.badprog/.Tutorial&lt;br&gt;
}&lt;br&gt;
&lt;strong&gt;ActivityManager: Warning: Activity not started, its current task has been brought to the front&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id=&#34;12-the-solution&#34;&gt;1.2. The solution&lt;/h3&gt;
&lt;p&gt;This error occurs when you run your application without modifying anything before.&lt;br&gt;
To remove it, just add a space in your code and save it.&lt;br&gt;
Restart your application and this error should have gone. 😊&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Tips&#39;n Tricks - Creating components</title>
      <link>https://www.badprog.com/android-tips-n-tricks-creating-components/</link>
      <pubDate>Thu, 15 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-tips-n-tricks-creating-components/</guid>
      <description>&lt;p&gt;Today I will show you how to create 3 Buttons with 3 different ways and how to display them on the layout.&lt;/p&gt;
&lt;p&gt;It will be the &lt;strong&gt;Tuto 3&lt;/strong&gt; that can be found on the Android Market for free, of course.&lt;/p&gt;
&lt;p&gt;First of all, let&amp;rsquo;s explain what we will do.&lt;br&gt;
We want to display 3 Buttons.&lt;br&gt;
For this example, I will use &lt;em&gt;BadprogTutorial&lt;/em&gt; instead of the complete one I used to create the application (&lt;em&gt;Tuto_3_BadprogTutorialCreatingComponentsActivity&lt;/em&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API Google Maps - Using MapView</title>
      <link>https://www.badprog.com/android-api-google-maps-using-mapview/</link>
      <pubDate>Fri, 09 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-google-maps-using-mapview/</guid>
      <description>&lt;p&gt;This is the Tuto 2 of the Android tutorial series. You can find the application made here on the Android Market.&lt;br&gt;
Just follow the link on your right.&lt;/p&gt;
&lt;p&gt;The MapView class of the Android Google Maps API is designed to display a map with data obtained from the Google Maps services.&lt;br&gt;
If you never created a Google Maps application on Android, and for a full description and files needed, take a look at this tutorial:&lt;br&gt;
&lt;/android-application-using-google-maps&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Application - Using Google Maps</title>
      <link>https://www.badprog.com/android-application-using-google-maps/</link>
      <pubDate>Thu, 08 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-application-using-google-maps/</guid>
      <description>&lt;p&gt;&lt;strong&gt;As the Google Maps API v1 is now obsolete, I could recommend to check this &lt;a href=&#34;https://www.badprog.com/android-api-google-maps-using-google-maps-api-v2&#34;&gt;tutorial for the new version of Google Maps API v2&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This &lt;strong&gt;Tuto 1&lt;/strong&gt; could be found on the Android Market and the direct link is on your right, in the menu.&lt;/p&gt;
&lt;p&gt;The Android API allows us to use the Google Maps library.&lt;/p&gt;
&lt;p&gt;So, in this tutorial, for beginners, we will create a first application with some examples of the Google Maps.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - CharSequence</title>
      <link>https://www.badprog.com/android-api-charsequence/</link>
      <pubDate>Wed, 07 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-charsequence/</guid>
      <description>&lt;p&gt;CharSequence is a native Java Interface.&lt;br&gt;
Its path in the package is &lt;strong&gt;android.content&lt;/strong&gt;.&lt;strong&gt;Context.getText(resId)&lt;/strong&gt;&lt;br&gt;
The class &lt;strong&gt;Context&lt;/strong&gt; extends &lt;strong&gt;Object&lt;/strong&gt;.&lt;br&gt;
We will see this with an Hello World! example.&lt;/p&gt;
&lt;h2 id=&#34;1-charsequence-gettext&#34;&gt;1. CharSequence getText()&lt;/h2&gt;
&lt;p&gt;The Android API uses it to create a &lt;strong&gt;getText&lt;/strong&gt; method.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s take an example.&lt;/p&gt;
&lt;p&gt;The Java class:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-java&#34; data-lang=&#34;java&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// src/com.badprog.mobile/BadprogActivity.java&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;package&lt;/span&gt; com.badprog.mobile;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; android.app.Activity;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; android.os.Bundle;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;import&lt;/span&gt; android.widget.TextView;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;public&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;class&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;BadprogActivity&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;extends&lt;/span&gt; Activity {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;/** Called when the activity is first created. */&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;public&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onCreate&lt;/span&gt;(Bundle savedInstanceState) {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onCreate&lt;/span&gt;(savedInstanceState);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;TextView tv &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; TextView(&lt;span style=&#34;color:#66d9ef&#34;&gt;this&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;CharSequence myString &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; getText(R.&lt;span style=&#34;color:#a6e22e&#34;&gt;string&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;hello_world_smile&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;tv.&lt;span style=&#34;color:#a6e22e&#34;&gt;setText&lt;/span&gt;(myString);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;setContentView(tv);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then the XML file:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - API - Activity</title>
      <link>https://www.badprog.com/android-api-activity/</link>
      <pubDate>Sun, 04 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-api-activity/</guid>
      <description>&lt;p&gt;Each Android application has one or more Activities.&lt;br&gt;
Each Activity has a lifecycle.&lt;br&gt;
Each screen we want to use as an interactive component is an Activity.&lt;br&gt;
So this application component must extends the Activity class.&lt;br&gt;
Interactive component is a component that the user uses to do something, for example, send an email, take a photo, etc.&lt;/p&gt;
&lt;h2 id=&#34;1-lifecycle-of-an-activity&#34;&gt;1. Lifecycle of an Activity&lt;/h2&gt;
&lt;p&gt;There is below their fundamental methods:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-java&#34; data-lang=&#34;java&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;public&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;class&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;ExampleActivity&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;extends&lt;/span&gt; Activity {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;public&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onCreate&lt;/span&gt;(Bundle savedInstanceState) {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onCreate&lt;/span&gt;(savedInstanceState);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// The activity is being created.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;protected&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onStart&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onStart&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// The activity is about to become visible.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;protected&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onResume&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onResume&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// The activity has become visible (it is now &amp;#34;resumed&amp;#34;).&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;protected&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onPause&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onPause&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// Another activity is taking focus (this activity is about to be &amp;#34;paused&amp;#34;).&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;protected&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onStop&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onStop&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// The activity is no longer visible (it is now &amp;#34;stopped&amp;#34;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@Override&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;protected&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;void&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onDestroy&lt;/span&gt;() {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;super&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;onDestroy&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// The activity is about to be destroyed.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;So an activity may be used in interaction with several activities.&lt;br&gt;
When an activity starts another one, the first is always in the stack (the &lt;strong&gt;back stack&lt;/strong&gt;).&lt;br&gt;
The second one may send data to the first with, for example, a return value and after the end of the second one, the first activity receives this data to use it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Application - First application for beginners with an Hello World tutorial</title>
      <link>https://www.badprog.com/android-application-first-application-for-beginners-with-an-hello-world-tutorial/</link>
      <pubDate>Sun, 04 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-application-first-application-for-beginners-with-an-hello-world-tutorial/</guid>
      <description>&lt;p&gt;Let&amp;rsquo;s play a bit with Android and create our first application, in this tutorial for beginners.&lt;br&gt;
We can call this tutorial: &lt;strong&gt;Tuto 0&lt;/strong&gt;.&lt;br&gt;
You could find it on the Android Market.&lt;/p&gt;
&lt;p&gt;Open Eclipse.&lt;/p&gt;
&lt;p&gt;On the Package Explorer, right click and select:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;New &amp;gt; Other &amp;gt; Android &amp;gt; Android Project &amp;gt; Next&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Write the Project Name: &lt;strong&gt;HelloWorld&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;On the Build Target area, select the version of Android you would like to use.&lt;br&gt;
We are selecting the Android 3.2 one for this example.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Android - Installation - On Windows OS and Eclipse</title>
      <link>https://www.badprog.com/android-installation-on-windows-os-and-eclipse/</link>
      <pubDate>Sat, 03 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/android-installation-on-windows-os-and-eclipse/</guid>
      <description>&lt;p&gt;Let&amp;rsquo;s get started with the installation of Android on Windows 7.&lt;/p&gt;
&lt;p&gt;First of all, you must have a JDK (Java Development Kit) on your OS, the &lt;strong&gt;version 6&lt;/strong&gt; is the most secure one, so I recommand it.&lt;br&gt;
If you do not have one, let&amp;rsquo;s download it on the official website of Oracle:&lt;br&gt;
&lt;a href=&#34;http://www.oracle.com/technetwork/java/javase/downloads/index.html&#34;&gt;http://www.oracle.com/technetwork/java/javase/downloads/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Then download the Android SDK (Software Development Kit) on the official website of Android:&lt;br&gt;
&lt;a href=&#34;http://developer.android.com/sdk/index.html&#34;&gt;http://developer.android.com/sdk/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Once installed on your computer, launch the SDK Manager on the Android SDK directory if it does not start automatically.&lt;br&gt;
On the left panel, select the &lt;strong&gt;Available packages&lt;/strong&gt; and select all packages you want.&lt;br&gt;
Then click &lt;strong&gt;Install Selected&lt;/strong&gt; &amp;gt; &lt;strong&gt;Accept All.&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Python - Installation of PyDev with a Python Hello World tutorial</title>
      <link>https://www.badprog.com/eclipse-python-installation-of-pydev-with-a-python-hello-world-tutorial/</link>
      <pubDate>Fri, 02 Sep 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-python-installation-of-pydev-with-a-python-hello-world-tutorial/</guid>
      <description>&lt;p&gt;Once you finished your &lt;a href=&#34;https://www.badprog.com/python-3-installing&#34;&gt;installation of Python on your Windows OS&lt;/a&gt;,  &lt;strong&gt;GNU/Linux or Mac OS&lt;/strong&gt;, let me tell you how to install it on your favorite IDE, Eclipse.&lt;/p&gt;
&lt;p&gt;First of all, you have to &lt;a href=&#34;https://www.eclipse.org/downloads/&#34;&gt;download Eclipse on the official website.&lt;/a&gt; I suggest you to choose the JavaScript version.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s go.&lt;br&gt;
Open Eclipse then:&lt;/p&gt;
&lt;p&gt;Help &amp;gt; Eclipse Marketplace.&lt;br&gt;
On the Find input, type &lt;strong&gt;PyDev&lt;/strong&gt; and click the &lt;em&gt;search&lt;/em&gt; icon.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;PyDev - Python IDE for Eclipse&lt;/em&gt; appears.&lt;br&gt;
Click the Install button on the right.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Helper - UrlHelper</title>
      <link>https://www.badprog.com/symfony-1-helper-urlhelper/</link>
      <pubDate>Sun, 14 Aug 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-helper-urlhelper/</guid>
      <description>&lt;p&gt;Symfony UrlHelpers add some features to the URL management.&lt;/p&gt;
&lt;p&gt;In this Symfony UrlHelpers tutorial, we will see how to use them with some examples.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start with the &lt;strong&gt;link_to&lt;/strong&gt; UrlHelper:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;php&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;link_to&lt;/span&gt;(    &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;My page&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;level/index&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    &lt;span style=&#34;color:#66d9ef&#34;&gt;array&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;confirm&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;go?&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;absolute&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;query_string&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;foo=32&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;anchor&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;hello&amp;#39;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                        &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;post&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;=&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                    ));
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;?&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This PHP code will produce this HTML one:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;[&lt;span style=&#34;color:#a6e22e&#34;&gt;My&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;page&lt;/span&gt;](&lt;span style=&#34;color:#a6e22e&#34;&gt;http&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;://&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;myproject&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;frontend_dev&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;php&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;level&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;?&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;foo&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;32&lt;/span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#hello)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;It will ask you if you accept to continue or not.&lt;br&gt;
You have to use the right syntax such as &amp;ldquo;&lt;em&gt;module/action&amp;rdquo;&lt;/em&gt;, otherwise this will not work correctly.&lt;br&gt;
As you can see, it will create a lot of JavaScript code.&lt;br&gt;
You will have less code if you remove the &lt;em&gt;post&lt;/em&gt; option and will can add the &lt;em&gt;popup&lt;/em&gt; option and set it to &lt;em&gt;true&lt;/em&gt; to open a new window when clicking.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Routing - Creating a URL with dashes (manually)</title>
      <link>https://www.badprog.com/symfony-1-routing-creating-a-url-with-dashes-manually/</link>
      <pubDate>Tue, 09 Aug 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-routing-creating-a-url-with-dashes-manually/</guid>
      <description>&lt;p&gt;A great way to display URLs is to using dashes.&lt;/p&gt;
&lt;p&gt;Indeed, it is always better for an human being to see a reading URL instead of a succession of symbols.&lt;/p&gt;
&lt;p&gt;That is what we will see in this Symfony 1 tutorial about routing.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s take an example.&lt;br&gt;
We want to create a module that represents a tutorial for beginners.&lt;/p&gt;
&lt;p&gt;Our application is named Badprog.&lt;br&gt;
Our model might be called : BadprogBeginnerTutorial.&lt;br&gt;
So the module might be called : beginnnertutorial.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Security - Authentication</title>
      <link>https://www.badprog.com/symfony-1-security-authentication/</link>
      <pubDate>Mon, 01 Aug 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-security-authentication/</guid>
      <description>&lt;p&gt;Symfony 1 uses the YAML files to secure the application.&lt;/p&gt;
&lt;p&gt;For example, in this tutorial, we can see with the backend side how to secure the entire application.&lt;br&gt;
But we can also secure only the index of a module or all others webpages excepted the index.&lt;br&gt;
This, with an authenfication.&lt;/p&gt;
&lt;p&gt;By default, in your backend side, you have a &lt;em&gt;security.yml&lt;/em&gt; file:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// apps/backend/config/security.yml
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;default&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;is_secure&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;false&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Change the boolean &lt;strong&gt;false&lt;/strong&gt; into &lt;strong&gt;true&lt;/strong&gt; and save it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PHP 5 - PEAR - Installation</title>
      <link>https://www.badprog.com/php-5-pear-installation/</link>
      <pubDate>Sun, 31 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/php-5-pear-installation/</guid>
      <description>&lt;p&gt;In this tutorial, we will see how to install PEAR with PHP 5 on Windows 7.&lt;/p&gt;
&lt;p&gt;We, of course, assume that you already installed PHP.&lt;/p&gt;
&lt;p&gt;For example, the PHP path installation is:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;C&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;\Program&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;Files&lt;/span&gt; (&lt;span style=&#34;color:#a6e22e&#34;&gt;x86&lt;/span&gt;)&lt;span style=&#34;color:#a6e22e&#34;&gt;\PHP\php&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;5&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Inside there is a file named:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;go&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;pear&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;bat&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Double click it.&lt;/p&gt;
&lt;p&gt;A black window appears asking you what installation do you prefer.&lt;/p&gt;
&lt;p&gt;Write:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;system&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;A suggestion appears asking you if the default directories for the PEAR installation.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Test Unit - With Doctrine and a database</title>
      <link>https://www.badprog.com/symfony-1-test-unit-with-doctrine-and-a-database/</link>
      <pubDate>Sun, 31 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-test-unit-with-doctrine-and-a-database/</guid>
      <description>&lt;p&gt;In this test unit tutorial of the Symfony 1 framework, we will take examples to show how it works with Doctrine and a database.&lt;/p&gt;
&lt;p&gt;First of all, you have to set up a database to test and create some fixtures.&lt;br&gt;
If you have not done it yet, take a look at this tutorial:&lt;/p&gt;
&lt;/symfony-1-doctrine-set-up-a-new-database&gt;
&lt;p&gt;Then we can create a special database for tests.&lt;/p&gt;
&lt;p&gt;For this new test database, we can either copy/paste all fixture files from /data/fixtures/* in /test/fixtures/* or use directly the fixtures of the /data/fixtures/*.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PHP 5 - Installation - On Windows</title>
      <link>https://www.badprog.com/php-5-installation-on-windows/</link>
      <pubDate>Wed, 27 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/php-5-installation-on-windows/</guid>
      <description>&lt;p&gt;I made a tutorial with examples for the installation of Apache HTTP, PHP, MySQL, phpMyAdmin and some virtual host explanations, for Windows.&lt;/p&gt;
&lt;p&gt;You can find this tutorial by following this link:&lt;/p&gt;
&lt;/windows-7-installing-php-apache-http-mysql-phpmyadmin-on-windows&gt;
&lt;p&gt;Enjoy&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Routing - Creating a basic route</title>
      <link>https://www.badprog.com/symfony-1-routing-creating-a-basic-route/</link>
      <pubDate>Thu, 21 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-routing-creating-a-basic-route/</guid>
      <description>&lt;p&gt;In this tutorial of the Symfony 1 framework, we will see how to create a new easy basic route.&lt;/p&gt;
&lt;p&gt;The &lt;em&gt;url_for()&lt;/em&gt; method will help us to create this routing.&lt;br&gt;
In the layout, let&amp;rsquo;s first add a link to our new page, called B&lt;em&gt;apdroG&lt;/em&gt; and its corresponding route, called &lt;em&gt;routingBadprog&lt;/em&gt;.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;// frontend/templates/layout.php- [BadproG](&amp;lt;?php echo url_for(&amp;#39;routingBadprog&amp;#39;) ?&amp;gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;If you try to refresh your webpage, you will have a 500 error, saying that the route &amp;ldquo;routingBadprog&amp;rdquo; does not exist.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Indigo - PHP installation with PHP Development Tools (PDT)</title>
      <link>https://www.badprog.com/eclipse-indigo-php-installation-with-php-development-tools-pdt/</link>
      <pubDate>Sun, 17 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-indigo-php-installation-with-php-development-tools-pdt/</guid>
      <description>&lt;p&gt;With the last Eclipse version, Indigo, there is no special IDE for PHP.&lt;br&gt;
So you have either to install the Helios PDT version or install Indigo and then install PDT.&lt;/p&gt;
&lt;p&gt;I love innovation, so I will show you how to install, in this tutorial, the new Indigo version and then PDT within.&lt;/p&gt;
&lt;p&gt;First of all, download the Indigo Eclipse version on the official website: &lt;a href=&#34;http://www.eclipse.org/&#34;&gt;http://www.eclipse.org&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ckick Download and choose the right version you want. I suggest you the Eclipse IDE for JavaScript Web Developers.&lt;br&gt;
Once downloaded and installed, open Eclipse and click:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - MVC - How does it work?</title>
      <link>https://www.badprog.com/symfony-1-mvc-how-does-it-work/</link>
      <pubDate>Sun, 17 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-mvc-how-does-it-work/</guid>
      <description>&lt;p&gt;In this tutorial I will show you how the symfony framework works with the MVC pattern.&lt;/p&gt;
&lt;p&gt;Each application, for example the frontend, has one or several modules.&lt;/p&gt;
&lt;p&gt;Each module has one or several Controllers and Views.&lt;/p&gt;
&lt;p&gt;The first Controller of a module is in the &lt;em&gt;actions&lt;/em&gt; directory and the &lt;em&gt;actions.class.php&lt;/em&gt; file that can be found there:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;symfony&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;apps&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;frontend&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;modules&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;moduleName&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;actions&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;actions&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;class&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;php&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The Views in the &lt;em&gt;templates&lt;/em&gt; directory and they are suffixed by the &lt;em&gt;Success&lt;/em&gt; word, except for the &lt;em&gt;_form&lt;/em&gt; file.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MySQL - Installation - On Windows</title>
      <link>https://www.badprog.com/mysql-installation-on-windows/</link>
      <pubDate>Wed, 13 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/mysql-installation-on-windows/</guid>
      <description>&lt;p&gt;I made a tutorial with examples for the installation of Apache HTTP, PHP, MySQL, phpMyAdmin and some virtual host explanations, for Windows.&lt;/p&gt;
&lt;p&gt;You can find this tutorial by following this link:&lt;/p&gt;
&lt;/windows-7-installing-php-apache-http-mysql-phpmyadmin-on-windows&gt;
&lt;p&gt;Enjoy&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse - Explorer - Removing all .svn folders</title>
      <link>https://www.badprog.com/eclipse-explorer-removing-all-svn-folders/</link>
      <pubDate>Mon, 11 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/eclipse-explorer-removing-all-svn-folders/</guid>
      <description>&lt;p&gt;You maybe wondering how to remove .svn folders from your Eclipse explorer.&lt;br&gt;
In this tutorial we will see how to hide .svn directories.&lt;/p&gt;
&lt;p&gt;Open your Eclipse.&lt;br&gt;
Click the project name in the explorer.&lt;br&gt;
Right click it.&lt;br&gt;
Then:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Properties &amp;gt; Resource &amp;gt; Resource Filters
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Click the Add button on the right.&lt;/p&gt;
&lt;p&gt;Select:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Exclude all
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Folders and All children (recursive)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then write in the input:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;.svn
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Click OK.&lt;br&gt;
Click Apply.&lt;br&gt;
Click OK.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Error - SQL and Doctrine with the command line</title>
      <link>https://www.badprog.com/symfony-1-error-sql-and-doctrine-with-the-command-line/</link>
      <pubDate>Sun, 10 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-error-sql-and-doctrine-with-the-command-line/</guid>
      <description>&lt;p&gt;In this page, I&amp;rsquo;m gathering all errors that I will find while playing with Symfony and SQL requests.&lt;br&gt;
And of course I will bring some explanations to resolve these errors.&lt;br&gt;
It will be sliced by an example of each error and with its own solution.&lt;br&gt;
So, let&amp;rsquo;s start it because a problem has always a solution!&lt;/p&gt;
&lt;h2 id=&#34;example-1&#34;&gt;Example 1&lt;/h2&gt;
&lt;p&gt;For example you typed this in your command line:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ php symfony doctrine:build --all --no-confirmation ; php symfony doctrine:data-load
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;And you have this error:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Doctrine - Set up a new database</title>
      <link>https://www.badprog.com/symfony-1-doctrine-set-up-a-new-database/</link>
      <pubDate>Sat, 09 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-doctrine-set-up-a-new-database/</guid>
      <description>&lt;p&gt;In this tutorial we will see how to set up a database with Symfony 1 and doctrine examples.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start by writing some code in the &lt;em&gt;schema.sql&lt;/em&gt; file.&lt;br&gt;
We will create the &lt;em&gt;Hello&lt;/em&gt; project with this &lt;em&gt;hello&lt;/em&gt; database.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# config/doctrine/schema.yml
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;HelloCategory&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#a6e22e&#34;&gt;actAs&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; { &lt;span style=&#34;color:#a6e22e&#34;&gt;Timestampable&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;~&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#a6e22e&#34;&gt;columns&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a6e22e&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; { &lt;span style=&#34;color:#a6e22e&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;string&lt;/span&gt;(&lt;span style=&#34;color:#ae81ff&#34;&gt;255&lt;/span&gt;), &lt;span style=&#34;color:#a6e22e&#34;&gt;notnull&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;unique&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;HelloBook&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#a6e22e&#34;&gt;actAs&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; { &lt;span style=&#34;color:#a6e22e&#34;&gt;Timestampable&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;~&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#a6e22e&#34;&gt;columns&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a6e22e&#34;&gt;category_id&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;  { &lt;span style=&#34;color:#a6e22e&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;integer&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;notnull&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a6e22e&#34;&gt;email&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;        { &lt;span style=&#34;color:#a6e22e&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;string&lt;/span&gt;(&lt;span style=&#34;color:#ae81ff&#34;&gt;255&lt;/span&gt;), &lt;span style=&#34;color:#a6e22e&#34;&gt;notnull&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a6e22e&#34;&gt;expires_at&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;   { &lt;span style=&#34;color:#a6e22e&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;timestamp&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;notnull&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;true&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;relations&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#a6e22e&#34;&gt;HelloCategory&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; { &lt;span style=&#34;color:#a6e22e&#34;&gt;onDelete&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;CASCADE&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;local&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;category_id&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;foreign&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt;, &lt;span style=&#34;color:#a6e22e&#34;&gt;foreignAlias&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;HelloBooks&lt;/span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;We continue by typing a command line for connecting to the database.&lt;br&gt;
The name of your project will be also the name of the database:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Symfony 1 - Set up - A new project</title>
      <link>https://www.badprog.com/symfony-1-set-up-a-new-project/</link>
      <pubDate>Sat, 09 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/symfony-1-set-up-a-new-project/</guid>
      <description>&lt;p&gt;In this tutorial of Symfony 1, we will set up a project from scratch.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start it by downloading the project that you can find on the official web page of Symfony: &lt;a href=&#34;http://www.symfony-project.org/installation&#34;&gt;http://www.symfony-project.org/installation&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This tutorial will use the 1.4.12 version.&lt;/p&gt;
&lt;p&gt;Once done, come back there.&lt;/p&gt;
&lt;p&gt;Just before starting, do not forget that for Windows, you have to use a SLASH (/) and for GNU/Linux a BACKSLAH () for you PATH.&lt;br&gt;
And of course, replace &lt;em&gt;yourProjectName&lt;/em&gt; by yours.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - HTTP - Installation</title>
      <link>https://www.badprog.com/apache-http-installation/</link>
      <pubDate>Wed, 06 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-http-installation/</guid>
      <description>&lt;p&gt;I made a tutorial with examples for the installation of Apache HTTP, PHP, MySQL, phpMyAdmin and some virtual host explanations, for Windows.&lt;/p&gt;
&lt;p&gt;You can find this tutorial by following this link:&lt;/p&gt;
&lt;/windows-7-installing-php-apache-http-mysql-phpmyadmin-on-windows&gt;
&lt;p&gt;Enjoy&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache - HTTP - Errors</title>
      <link>https://www.badprog.com/apache-http-errors/</link>
      <pubDate>Tue, 28 Jun 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/apache-http-errors/</guid>
      <description>&lt;p&gt;If all your web installation was working fine and you do not know why now nothing is working anymore, with a beautiful error such as: &amp;ldquo;Could not connect to localhost&amp;rdquo;, let&amp;rsquo;s try this solution.&lt;/p&gt;
&lt;p&gt;First of all, try to stop your Apache HTTP server manually.&lt;br&gt;
Left click on it on your tray icon in your taskbar:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Apache 2.2 &amp;gt; Stop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;If nothing happens, this is because your server is still running in an infinite loop.&lt;br&gt;
So do not panic and wait around one minute.&lt;br&gt;
Normally the server would stop.&lt;br&gt;
So restart it with left click and:&lt;/p&gt;</description>
    </item>
    <item>
      <title>phpMyAdmin - Installation - On Windows</title>
      <link>https://www.badprog.com/phpmyadmin-installation-on-windows/</link>
      <pubDate>Tue, 21 Jun 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/phpmyadmin-installation-on-windows/</guid>
      <description>&lt;p&gt;I made a tutorial with examples for the installation of Apache HTTP, PHP, MySQL, phpMyAdmin and some virtual host explanations, for Windows.&lt;/p&gt;
&lt;p&gt;You can find this tutorial by following this link:&lt;/p&gt;
&lt;/windows-7-installing-php-apache-http-mysql-phpmyadmin-on-windows&gt;
&lt;p&gt;Enjoy&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zend - Framework 1.11 - Using the zf command line tool</title>
      <link>https://www.badprog.com/zend-framework-1-11-using-the-zf-command-line-tool/</link>
      <pubDate>Tue, 21 Jun 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/zend-framework-1-11-using-the-zf-command-line-tool/</guid>
      <description>&lt;p&gt;An easy way to create a new Controller is by doing this with the command line.&lt;/p&gt;
&lt;p&gt;On Windows, open a new terminal (SHIFT + right click on your project directory) and write this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ TheProjectDirectory&amp;gt; CompletePathUntil&lt;span style=&#34;color:#ae81ff&#34;&gt;\Z&lt;/span&gt;endFramework-1.11.7&lt;span style=&#34;color:#ae81ff&#34;&gt;\b&lt;/span&gt;in&lt;span style=&#34;color:#ae81ff&#34;&gt;\z&lt;/span&gt;f.bat create controller Menu
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;It will create:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;A controller in /application/controller/MenuController.php&lt;/li&gt;
&lt;li&gt;An indexAction in the MenuController file&lt;/li&gt;
&lt;li&gt;A view script in /view/scripts/menu/index.phtml&lt;/li&gt;
&lt;li&gt;An update for the project file: .zfproject.xml&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;All that in a single line.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zend - Framework 1.11 - Using Zend_Controller</title>
      <link>https://www.badprog.com/zend-framework-1-11-using-zend-controller/</link>
      <pubDate>Tue, 21 Jun 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/zend-framework-1-11-using-zend-controller/</guid>
      <description>&lt;p&gt;Let&amp;rsquo;s explain, with this tutorial, how this Zend_Controller works.&lt;/p&gt;
&lt;p&gt;I added some examples in addition of the official documentation, even if most of my text is taking from the Zend documentation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Zend_Controller_Front&lt;/strong&gt; is the heart of this MVC framework.&lt;br&gt;
It intercepts all requests and dispatches them to all adequate controllers.&lt;br&gt;
Each controller has one or several action methods and each action has a view script.&lt;br&gt;
It means that if we have a MenuController with a method named firstAction(), we will have the template /view/scripts/menu/first.phtml to display content of the firstAction() method.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Objective-C - Design pattern - Delegation</title>
      <link>https://www.badprog.com/objective-c-design-pattern-delegation/</link>
      <pubDate>Wed, 06 Apr 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/objective-c-design-pattern-delegation/</guid>
      <description>&lt;p&gt;Delegation principle is that an object sends messages to its delegate to ask or to notify it that something is occuring.&lt;/p&gt;
&lt;p&gt;The main example is the Application that sends messages to its delegate to tell it that the routines are ready and the custom configuration can start.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Objective-C - Design pattern - Model-View-Controller - MVC</title>
      <link>https://www.badprog.com/objective-c-design-pattern-model-view-controller-mvc/</link>
      <pubDate>Wed, 06 Apr 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/objective-c-design-pattern-model-view-controller-mvc/</guid>
      <description>&lt;p&gt;The MVC pattern is certainly the most famous one.&lt;br&gt;
It allows to dispatch the work in 3 concepts: The Model, the View and the Controller.&lt;br&gt;
This concept exists in all programming languages.&lt;br&gt;
So it&amp;rsquo;s easy, when you understood it, to apply your knowledge with all others languages.&lt;br&gt;
That&amp;rsquo;s why this design pattern is really important for a good developer, and I am sure you are one of them.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s beginning by the Controller.&lt;/p&gt;</description>
    </item>
    <item>
      <title>PHP 5 - array() - Using is_array()</title>
      <link>https://www.badprog.com/php-5-array-using-is-array/</link>
      <pubDate>Tue, 22 Feb 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/php-5-array-using-is-array/</guid>
      <description>&lt;p&gt;How to know if a variable is an array() or not?&lt;br&gt;
Easy with the is_array() function.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see an example of the is_array() function:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;php&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$my &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;array&lt;/span&gt;();
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; (&lt;span style=&#34;color:#a6e22e&#34;&gt;is_array&lt;/span&gt;($my))
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;This is an array().&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;echo&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;This is not an array().&amp;#34;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;?&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Result:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;This&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;is&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;an&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;array&lt;/span&gt;()&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Zend - Framework 1.11 - Create a new project</title>
      <link>https://www.badprog.com/zend-framework-111-create-a-new-project/</link>
      <pubDate>Sat, 19 Feb 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/zend-framework-111-create-a-new-project/</guid>
      <description>&lt;ol&gt;
&lt;li&gt;Dowload the &lt;a href=&#34;http://framework.zend.com/&#34;&gt;Zend framework&lt;/a&gt; To easily create a new project with Zend framework we have to go until the bin/ directory of the framework package. 2) Once downloaded from the official website, go until this directory:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;ZendFramework&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1.11&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;bin&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In this directory we have the binaries for UNIX like and Windows OS, named respectively zf.sh and zf.bat. 3) Open a shell (this black screen you like so much) and write this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ zf.sh create project &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;/home/login/www/test&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;or&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails 3 - Console options - Create a project</title>
      <link>https://www.badprog.com/ruby-on-rails-3-console-options-create-a-project/</link>
      <pubDate>Mon, 14 Feb 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ruby-on-rails-3-console-options-create-a-project/</guid>
      <description>&lt;p&gt;To create a project in Ruby on Rails 3 with a console you have to go until the parent folder of your future project. The command line is:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-ruby&#34; data-lang=&#34;ruby&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;rails &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; myProject
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;For example, if you are in this path:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ C:/ror3/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;And you want to create a project named site1. Write this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ C:/ror3/ rails new site1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;All files will be created.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails 3 - Console options - Display version</title>
      <link>https://www.badprog.com/ruby-on-rails-3-console-options-display-version/</link>
      <pubDate>Mon, 14 Feb 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ruby-on-rails-3-console-options-display-version/</guid>
      <description>&lt;p&gt;To know the version of your Ruby just write on your console:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ruby -v
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Ruby on Rails 3 - Server - Start the (native) Webrick server</title>
      <link>https://www.badprog.com/ruby-on-rails-3-server-start-the-native-webrick-server/</link>
      <pubDate>Wed, 19 Jan 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/ruby-on-rails-3-server-start-the-native-webrick-server/</guid>
      <description>&lt;p&gt;To start the native server of Ruby on Rails, WEBrick, you have to open a shell and go until the path of your website and write &amp;ldquo;rails server&amp;rdquo; to start it.&lt;/p&gt;
&lt;p&gt;Example on Windows:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ C:/rubyOnRails/site1&amp;gt; rails server
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Same for GNU/Linux:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ home/name/rubyOnRails/site1&amp;gt; rails server
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You will see the server start and show all what is happening when there is activity on your website. To display something on your server, just go on &lt;a href=&#34;http://localhost:3000/&#34;&gt;http://localhost/3000/&lt;/a&gt; and some information will be displayed.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MySQL - Commands - Pager</title>
      <link>https://www.badprog.com/mysql-commands-pager/</link>
      <pubDate>Thu, 13 Jan 2011 00:00:00 +0000</pubDate>
      <guid>https://www.badprog.com/mysql-commands-pager/</guid>
      <description>&lt;p&gt;There is a way on GNU/Linux to change the display of the result of the SQL query. Just type:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ pager less -i -n -S
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Now make a command and look this new display!&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
