Author Archives: Etay Cohen-Solal

About Etay Cohen-Solal

Development Specialist, Artist and Activist
Personal Website

cento tomcat

CentOS Tomcat server installation is easy!

CentOS Tomcat installation

CentOS Tomcat

centos tomcat

“Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed under the Java Community Process.” from Tomcat homepage.



  • CentOS 6.x (I haven’t tested this on older versions but it should probably work as well) 

Check your Java installation

before we’ll continue the installation of Tomcat, the JDK (Java Development Kit) should be installed on your CentOS machine. to check for Java support use the command:

java -version


if bash returns ‘command not found‘ then continue to the next step and install the JDK, else skip the step and continue to Tomcat server installation.


Install Java Development Kit (JDK)

To install the jdk we have 2 options:

  1. Install OpenJDK – Using YUM.
  2. Install Oracle JDK – Install manually.

I’ll explore both:

Option 1: Install Open-JDK using YUM

For beginners and testing purposes you should go with this option.

Why should I use the Oracle JDK over the OpenJDK, or vice-versa? [closed]

The command to install JDK using YUM is very simple:

yum install java

yuminstall java

  • Note: use sudo if you are not logged-in with root.
  • the command will install the latest jdk (1.7 as for this date). If you want to install older version use the full name (search using: $ yum search jdk)yum-search-jdk
    You can see you can install the 1.6 version by typing: yum install java-1.6.0

Check you have installed it right:



Option 2: Install JDK manually

Download your required JDK here.

Note: I can’t give you an WGET command to download, because you need to Accept License Agreement before downloading any file.

You can download and install using the RPM or the tar.gz (both with x86 or x64) on your CentOS machine:




In case of our CentOS we can download and install the .rpm file or the .tar.gz file.

RPM can be installed ONLY by the root.
TAR.GZ can be installed be any user on the computer.


Option A: Install using .rpm

make sure to uninstall older installations (if any):

rpm –e <package name>

To install the jdk using the downloaded rpm use the rpm command:

rpm –ivh jdk-7u45-linux-x64.rpm

If you just want to upgrade a package you’ve already installed use the -Uvh parameter.

rpm –Uvh jdk-7u45-linux-x64.rpm

Delete the .rpm file if you want to save disk space.

Read more about installation of Oracle Java on Centos here on ItekBlog


Use alternatives :

alternatives –install /usr/bin/java java /usr/java/latest/jre/bin/java 20000
alternatives –install /usr/bin/javaws javaws /usr/java/latest/jre/bin/javaws 20000


and config your default jdk (if you have more then one) using:


alternatives –config java



Test your environment

Just as in the first step: type java -version to see if your have jdk installed.



Option B: Install using tar.gz

The advantage of tar.gz installation of the JDK is that we can able to install multiple version of java if required.

The archive can be installed by anyone (not only root users), in any location that you can write to. However, only the root user can install the JDK into the system location.

You need to unpack the .tar.gz file (using tar -xzf) into the  the location where you would like the JDK to be installed.

Unpack the tarball and install the jdk:

tar zxvf jdk-7u<version>-linux-i586.tar.gz

Delete the .tar.gz file if you want to save disk space.


Use alternatives :

alternatives –install /usr/bin/java java /path/to/jdk1.7.0_45/bin/java 2
alternatives –config java

read more about installation of jdk in the oracle documentation.

for extended installation tutorial read this post by adam in this blog.


JDK 1.6 vs JDK 1.7

read more on What is the difference between jdk 1.6 and 1.7 ?


Environment Variables


 is a 


 variable (in Unix terminologies), or a PATH variable (in Windows terminology) you need to create to point to where Java is installed. ($JAVA_HOME/bin/java should execute the Java runtime).

Why doesn’t the Java SDK installer set JAVA_HOME?

To set it for your current session type at bash:

export JAVA_HOME=/usr/java/jdk1.7.0_05
export PATH=$PATH:$JAVA_HOME/bin

To set the JAVA_HOME permanently we need to add the commands to the ~/.bash_profile file of the user.
We can also add it /etc/profile and then source it to give to all users.


Test Environment Variables

use the echo command to check you’ve configured the variables:

echo $PATH



Installing Tomcat

After we have java installed and tested we can continue to the installation of the Tomcat server.

Download Tomcat

Since Apache Tomcat is distributed as binaries, all you have to do is to download it and start it.

Download apache-tomcat-x.x.xx.tar.gz (latest version or any) from Apache Tomcat Homepage

I’ll go with the tomcat 8 – tar.gz package.

centos tomcat

centos tomcat

and using command:

cd /usr/share


verify and extract the download using::

md5sum apache-tomcat-8.0.0-RC10.tar.gz
tar xvzf apache-tomcat-8.0.0-RC10.tar.gz

and I have a /usr/share/apache-tomcat-8.0.0-RC10 folder now.


Test Tomcat server

Tomcat by default start on port 8080 you can start the server now by typing at bash:

cd apache-tomcat-8.0.0-RC10



Now Access the tomcat by connecting your server with a web browser on port 8080.



If you cannot access the above Tomcat page, make sure to stop iptables (since CentOS has iptables on by default set to block the Tomcat’s default listening port 8080).

service iptables stop

to permanently disable iptables (NOT RECOMMENDED AT ALL) use:

chkconfig iptables off

Change the Tomcat server port

Locate server.xml in {Tomcat installation folder}/conf/ which is at /usr/share/apache-tomcat-8.0.0-RC10/conf in our case

Find the following:

 <!-- Define a non-SSL HTTP/1.1 Connector on port 8180 -->
    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

and change the 8080 port to your required port.


Start on boot

To start the tomcat service on system boot create the file /etc/init.d/tomcat8 (I am using vi /etc/init.d/tomcat8) and fill it with:

# description: Tomcat Start Stop Restart 
# processname: tomcat 
# chkconfig: 234 20 80 
export JAVA_HOME 
export PATH 
case $1 in 
exit 0

Now set the permissions on the file and the file:

chmod a+x /etc/init.d/tomcat8
chmod a+x /usr/share/apache-tomcat-8.0.0-RC10/bin/

to start/stop/restart the service use:

service tomcat8 start
service tomcat8 restart
service tomcat8 stop

to start the service on boot use:

chkconfig --add tomcat8
chkconfig tomcat8 on

to disable it later you can use off instead of on:

chkconfig tomcat8 off



That’s it! you have your CentOS Tomcat server working and runing… 

DD-WRT set date manually

dd-wrt set date manually

dd-wrt set date manually – In this tutorial I’ll explain how to set the date and time in dd-wrt based routers.


dd-wrt set date manually

My dd-wrt system is dd-wrt v24-sp2 (11/02/09) std
(SVN revision 13064M VINT Eko).

It may not work on your system but I’ll explain the basics so you should be able to find your own way.


dd-wrt set date manually

in dd-wrt set date manually using command-line. you can do this by:

  • SSH to your dd-wrt machine, or
  • use the web interface to run command line

Becuase ssh is not opened by default on all dd-wrt machines I’ll explain how to set the date and time using the second method – using the web interface. but the same command and rules apply also to SSH connection.


Admin Panel

go to your dd-wrt admin managment panel on your browser and view the Administration / Commands page. it may be different in your system version but you should able to find quickly where the Commands page is.

dd-wrt set date

dd-wrt set date


You can use the Date command inside your dd-wrt box to read and set your system time and date.

View current date (NOW)

to view your current date as configured in your dd-wrt machine use the ‘date‘ command.
Just fill the commands input box with ‘date’ and click on the ‘Run Commands‘ button.




dd-wrt set date manually

Here it may be tricky. I’ve found several online blogs and manuals but nothing worked. to set the dd-wrt date manually I’ve succeded with the following command:

date 022720012014

Month Day Hours Minutes Year
02 27 20 01 2014





that’s it. I hope It helped you to configure your dd-wrt set date manually.


CentOS G-WAN server installation instructions

CentOS G-WAN Server

CentOS G-WAN server

G-WAN is a web server with scripts in Asm, C, C++, C#, D, Go, Java, Javascript, Lua, Objective-C, Perl, PHP, Python, Ruby and Scala.

G-WAN better uses CPU Cores
to make the Internet of Things
fly thousand times higher !

Leverage legacy servers and
low-consumption CPUs to
do more with less!

G-WAN works best on Linux distributions like Debian or CentOS, both of which offer ‘Desktop’ and ‘Server’ flavors.


CentOS G-WAN server installation instructions

CentOS G-WAN installation instructions



choose a location for your installation. for demonstration purposes we’ll install G-WAN to /opt

cd /opt
tar -xjf gwan_linux64-bit.tar.bz2; cd gwan_linux64-bit
sudo ./gwan
centos g-wan

centos g-wan

use the 32bit version instead ( if you need.


Then, type http://localhost:8080/ in your browser

centos g-wan

centos g-wan server default homepage

and play with the/gwan/.../csp samples.


Programming Languages

If you want to install more Programming Languages read the FAQ – Setup of Programming Languages

To install all 15 languages using the bash script donated by generous user on many Linux distributions (Debian, LinuxMint, CentOS, Fedora, RedHat, Manjaro, Arch Linux and Bridge) use:

cd /opt
tar -xjf G-WAN_full-install.tar.bz2

The installation menu is available in English, German, French and Spanish!


Service mode

To start G-WAN as a service (make it start automatically at boot time) use this instructions

with one exception for CentOS in the manual:

instead of:

sudo update-rc.d gwan defaults 95 5


sudo chkconfig gwan on

and you don’t need to restart.


What’s next?

check the API and Frequently Asked Questions.

Stackoverflow lists many more examples and will let you search for replies to common questions.


And that’s it. you have G-WAN server.

how to speed website

How to speed up website load time

How to speed up website load time

How to speed up website load time is important question for those that performance matters to them.

Nobody Likes a Slow Website!



How to speed up website?

Website optimization is a required step for production, and when is automated when possible correctly it can help you deliver your website as fastest as possible without compromising on development comfortability and code readability.


Test your website load time speed

How to speed up website question could be answered for your case better if you’ll use a website speed test tools. There several good websites load time speed tests available online for free. check out pingdom website speed test, Google PageSpeed tools. this are very good tools which also gives you important and valuable information and tips to speed up your website.



You can also check: WebPagetest, GTmetrix or PageScoring Website Speed Test.

Some of them rates your website and/or explain what could be done to make your site faster. you can learn also a lot from loading time graphs.collect information from all the above to optimize your website to maximum.

  • If it takes more then 10 seconds for your website to load. you are doing a very bad job optimizing your website (if at all).
  • If your page load time takes several seconds then you’re ok (but you can do better then that!).
  • if your page load time takes up to two seconds then your site is in very good shape!
  • if your page load time takes less then a second then your site is sooooo fast!! and you are doing a excellent job!

if your score is bad.. continue reading How to speed up website


How to speed up website load time

So, how to speed up your website load time?

You can do that using several tweaks.. one at a time…


1. learn the waterfall. where are your bottom neck ?

Use the mentioned websites speed test graphs to learn what are the slowest parts of your website and start with them. does the problem is with your webserver or maybe the infrastructure?

How to speed up website ? Does your static files load time is the problem?

And maybe it is the dns? processing request? loading the images? loading the scripts? maybe you have bad requests?

This extreme powerfull tool will help you learn your weaks and strongs.

how to speed website

how to speed website

2. Minimize redirects

If your website on load check if it’s mobile or not, then it redirect to another page when checks the language and then redirects to another page who check the cookies and then redirect… well you’ve got the idea. Bad design pattern!

Minimize redirects!


3. Browser caching

Set up your server to return Expire and Cache-Control headers with static files. Setup you expire date to be within week or more is a very good timeframe (depend on how frequently you update your website static files you can setup the expire date as required).


4. use CDN (if possible)

Content Delivery Network (CDN) can be an important tool in achieving decent page load and web application speeds. Providers such as AkamaiEdgeCast, Amazon (CloudFront), Rackspace (CloudFiles), Google (PageSpeed) and Microsoft (Azure CDN) are providing the means to distribute your content to locations geographically closer to your customers/users, which improves the responsiveness of the application or website.


5. put cache server between your server and your client when possible

Although using a CDN can help with page load speeds, a CDN is not always the best solution in terms of Cost–benefit.

when configuring a cache server before your website server, and no matter if it’s apache, tomcat, gunicorn or any other html generator you can boost up clients page load dramatically.


caching the compiled html pages is very important speed tweak. if you have any static and/or low-rate updated pages with no problem if some users will not see the lastest updates of the html when it changes (until cache reloads).. check varnish-cache or squid-cache or nginx (with HttpProxy module) or Apache with mod_proxy.

You should think of your webapp as in several seperate layers. where one layer could answering html requests and other serving your static files. always try to find the suitable tool for this mission in terms of speed (and taste). consider serving your static files (those not on CDN) using the fastest web server for static files you can find.


6. Minify

A very important stage is to minify data.

  • Minify CSS files for production! there are many simple gui or command tools to do that..
    if you are using LESS, SASS or other, Never compile on client side! compiler only on server side and setup your compiler to minify results.
  • Minify your JS files. if possible, insert them as scripts into the html, or better, minify and join them inside when processing the html (But don’t forget to use Cache server!).
    If you’re using Coffee-script and template engine it should be easier as you can compile the ,coffee file to minified version and include it within your template.
  • Minify HTML. if you have static html files use command or gui tool. if you have more advanced server like python or ruby – minify them before sumbit.
  • If your template engine support preprocessors. use them to minify HTML (and everything other you can). if not – use a library (if possible).


7. GZip

Configure you webserver (nginx, apache,etc)  to GZip response.

Set the Vary header (Vary: Accept-Encoding header) correctly for Internet Explorer.


8. Caching data

If you have data you can cache in memory for your application server – DO IT.

Use Redis, memcached or any other tool you find is suitable.

It can be small data (like the number of your followers you’ve just counted from facebook, twitter and youtube JSON calls) or the Entire processed HTML.

Put expire time for each resource on your store as needed.



How to speed up website

‘ How to speed up website ‘ tutorial ends here.

hope you’ll have fun optimizing your website and now you now few important tips on How to speed up website

Using those steps I’ve managed to reduced my website load time from several seconds to only 1-2 seconds (and sometimes less then second). It’s was worth the effort!!


Good day (or night),

VMWare Workstation start on boot CentOS

SSL handshake failed: SSL error: Key usage violation in certificate has been detected CentOS

SSL handshake failed: SSL error: Key usage violation in certificate has been detected CentOS


SSL handshake failed: SSL error: Key usage violation in certificate has been detected.

SSL handshake failed: SSL error: Key usage violation in certificate has been detected CentOS.

SSL handshake failed: SSL error: Key usage violation in certificate has been detected CentOS.



You may experience the issue if both of the following conditions are met:

  • VisualSVN Server has a self-signed certificate applied and
  • Subversion client is built against the GnuTLS library.

GnuTLS library is an open-source alternative to OpenSSL. Most Subversion clients for Windows are built against OpenSSL and are not affected by this issue. While some Subversion packages (available mostly on Linux-based operating systems – The subversion that comes with EL 6 is linked against GnuTLS which is a change from older releases which linked against OpenSSL) are built against GnuTLS and are affected.

The server is using an SSL cert was created with the ‘key usage’ extension, and the client is using the gnutls SSL library which doesn’t understand the extension. The solution is either to have the client use the openssl library or to have the server use a cert that doesn’t use the ‘key usage’ extension.

It’s recommended to fix the issue on your server side, but you can workaround it from the client side too.


Fix (Server side)

Here is what say:

It’s not recommended to use a self-signed certificate in a production environment. We advise to use a certificate issued by your domain or a third-party certificate authority instead of a self-signed one.

If you have to use a self-signed certificate please follow the instruction to generate a cerificate without specifying ‘Key Usage’ extension:

Add the following registry value to the Windows registry:

for 32-bit system:


for 64-bit system:


Start VisualSVN Server Manager.
Go to Action | Properties | Certificate.
Click Change certificate… and follow the wizard instructions to generate a new self-signed certificate.

The certificate will be generated without the ‘Key Usage’ extension and will be compatible both with GnuTLS and OpenSSL.


Fix (Client side)

The options for client side fix are:


That’s it.

Good SEO tips – Search engine optimization for your blog posts

Good SEO tips

Good SEO tips

Good SEO tips for your website / blog / posts /  etc.

Focus Keyword

The first thing you should do BEFORE writing your post is to choose a Focus Keyword.

  • A good Focus Keyword whould be the shortest and most common google search you would like to point to your post.
  • avoid using the same keyword in your website twice.

For example: The focus keyword of this post is “Good SEO“.

You can visit google and start typing “Good SEO” and you’ll see using the auto completion tool that this keyword search is the most common Keyword.


Note: you can actually use other then the most common keyword (in our example, we could use the “Good SEO Tips” keyword, and It could be a great keyword too. It depends on you to choose what you think would fit best your post and is more related to the content of your post.

I could use also “Best SEO” keyword but as you can see below, is not so common used keyword:



REMEMBER the keyword as you will need to use it in page title/url/content/etc.


Writing the article

Now you can start working on your article. Make sure you following:


Article Heading

In our example with the keyword “Good SEO“… our heading is:
“Good SEO tips – Search engine optimization for your blog posts

  • Your article heading should contain the keyword / Phrase. better when it at the beginning which is considered to improve rankings.
  • Remember that viewable limit of the heading in search engines is: 70 characters; some words will not be visible to users if it will be longer.
  • If you choose to set a longer heading, use a SEO Title


SEO Title

If you used title longer then 70 characters in your CMS (Like WordPress Page Title) use the HTML <title></title> to set a maximum of 70 chars title to your page.

this page title is:
<title>Good SEO tips – Search engine optimization for your blog posts</title>


Page titles

  • Your page title (<h1>) should contain the Keyword similar as the article heading.
  • Also make sure you have a sub header <h2> with the keyword.


Page URL

  • The keyword should appear in your page URL.

for example: this page URL is:



  • Make sure the keyword appears in your post content at least several times (at least 6+).
  • The keyword should appear in the first paragraph of the copy.
  • Write no less then 300 words in your copy.
  • run the Flesch Reading Ease test on your article. The copy scores 75.1 which is considered fairly easy to read.
  • add at least 1 outbound link(s). (<a href=””>)



  • Add images to your article. at least 1 or 2. insert the keyword to the Alt=””. Adding the keyword as a caption for the images would be great too. look in this example:
Good SEO Tips. This is how it should be done!

Good SEO Tips. This is how it should be done!


Meta Description

  • Meta Description is the <meta> tag on your html. the preview on google (and other search engines) will show the meta when available instead of showing the first 156 chars of the article (including titles).
  • Use your keyword inside the meta. Preferably at the beginning. More then once will be better.
<meta name=”description” content=”Good SEO: what is the best description for my post with the keyword inside?.”/>

This article Meta is:

First thing you should do BEFORE writing your post is to think of a good SEO plan. good SEO will help your copy to reach more visitors from search engines!.

Which is exactly 156 chars!.



Support Twitter too!! Using:

<meta name=”twitter:card” content=”summary”/>
<meta name=”twitter:site” content=”@ITekBlog”/>
<meta name=”twitter:domain” content=”ITek Blog”/>
<meta name=”twitter:creator” content=”@ITekBlog”/>
<meta name=”twitter:image:src” content=”×146.png”/>
<meta name=”twitter:image:src” content=””/>
<meta name=”twitter:image:src” content=””/>
<meta name=”twitter:description” content=”First thing you should do BEFORE writing your post is to think of a good SEO plan. good SEO will help your copy to reach more visitors from search engines!.”/>
<meta name=”twitter:title” content=”Good SEO tips – Search engine optimization for your blog posts”/>
<meta name=”twitter:url” content=””/>


Add link to your Google+ page. If authenticated right you will have your image near google searches.

<link rel=”author” href=”“/>


For WordPress users

If you use WordPress: “WordPress SEO by Yoast” will help you do the job right!

What is the best resolution for facebook images

what is the best resolution for facebook images

what is the best resolution for facebook images

what is the best resolution for facebook images ?

Using the recommended image size resolutions and aspect ratio (proportion) on your images when you upload to facebook, guarantees that users will see your images exactly as you intended – without crops and as large (and noticable) as possible.



The resolution for facebook Cover image is 851 Pixel on 315 pixels (851X315 pixels).
You can scale the image in proportion (for example:1702X630).



This will fit exactly the facebook cover:

Facebook Cover



Group Cover

For group cover in facebook, best resolution size is: 801X250.
You can scale the image in proportion (for example:1602X500).


Again, it will fit exactly in the group cover.

group example




what is the best resolution for facebook images

what is the best resolution for facebook images

When you upload a photo to facebook timeline, the best resolution would be with resolution of 359X399 pixels.
You can scale in proportion (for example:718X798 pixels).
This resolution is the maximum visible image size proportion on facebook timeline; other proportions will be cropped to fit either to the width (359) or the height (399).

This will shown in your friends/followers timeline as biggest as possible:



If you want to highlight the post – better use 843X404 aspect ratio.


Page’s profile

Page profile pictures are square and display at 160×160 pixels on your Page. The photo you upload must be at least 180×180 pixels. Rectangular images will be cropped to fit a square.


Quality Issues.

Facebook automatically resizing and formatting your photos. If you’d like to use more advanced techniques to make your photos look better, try these tips:

  • Resize your photo before you upload it.
  • If you use a 2048 px photo, make sure to select the High Quality option when you upload it.
  • To avoid compression when you upload your cover photo, make sure the file size is under 100 KB.
  • Save your image as a JPEG with an sRGB color profile.


Have fun.

Indiana Jones and the Fountain of Youth

Indiana Jones and the Fountain of Youth

indiana jones and the fountain of youth

indiana jones and the fountain of youth

“Indiana Jones and the Fountain of Youth is a freeware fan game project in a similar style to the 1992 classic Indiana Jones and the Fate of Atlantis. The game is in development and features brand new original art and animations in classic low-res style, a gripping story, advanced coding methods and original music. For Windows (XP, Vista, 7) PC.”

indiana jones and the fountain of youth

indiana jones and the fountain of youth

Indiana Jones and the Fountain of Youth – a fan made project that’s aimed towards the old-school gamers out there. simple point and click adventure like the style of the classic LucasArts game Indiana Jones and the Fate of Atlantis.

It feels like someone went back in time to the days of LucasArts game development and uncovered a never before made game. In development since 1999,




Download indiana jones and the fountain of youth demo at (Direct link)



Check the Text walkthrough or if you prefer it on Youtube:


When the full game will be released?

“Fountain of Youth” began as a concept and script by Jocke Andersson circa 1999. The game is being constructed for FREE by a group of people who are fans of the Indiana Jones films, games and literature. On completion, FoY will be completely free to download and play.

Indiana Jones and the Fountain of Youth seems like one of those  projects that may have delayed for a while but when it comes out it’ll be more than worth the wait.

You can reach the team about recuirtment or general questions via Stay updated in the community forum.

Check the game Facebook page.



Flash Animations (opens in new window) 2003 – 2004 – 2005 – 2006 – 2007
Mini-games (opens in new window) Passage of Saints – Temple of Spheres Wallpapers (opens in new window) “4 Corners” – 1024×768 – “Main Title” – 1024×768  


enjoy playing indiana jones and the fountain of youth.

VMWare Workstation start on boot CentOS

VMWare Workstation start on boot CentOS

vmware workstation start on boot centos

If you are like me, using VMWare workstation on Linux (CentOS 6.4), and you want to start your virtual machines on boot, I have the answer.


  • CentOS 6.x. – although the vmrun command may be working in other distributions too.
  • VMWare Workstation 4.0+


 VMWare Workstation start on boot CentOS

VMWare Workstation start on boot CentOS


The Solution

Edit rc.local

add to the end of the following file:


the following:

vmrun -T ws start /path/to/machine.vmx nogui

create new line for each machine you want to start on boot.


that’s it! that how you run vmware workstation start on boot centos


That’s it.

Google Web Designer review – It’s the future?

Google Web Designer review

I’ve met today with the new Google Web Designer Beta – the new tool Google released for building adaptive, universally usable rich HTML based designes including ads.

The main purpose appears to be to provide a way to produce Adobe Flash-style animated in HTML5/CSS3 without using Flash.

“We think that Google Web Designer will be the key to making HTML5 accessible to people throughout the industry, getting us closer to the goal of ‘build once, run anywhere,’” Google engineer Sean Kranzberg posted

The Google Web Designer Youtube page is full of examples:


Google Web Designer

Starting Google Web Designer for the first time…


Google Web Designer is available as a free (as in beer) download for Windows PC and Mac OS X, so at this stage, it won’t run on Linux, or Chromebooks.

Google Web Designer loading

Google Web Designer loading

Google Web Designer

Google Web Designer main screen

Product review

You have several presets to start from. You can start by creating a new Ad banner, or HTML / CSS / JS / XML as you can see:



The UI is slick, and yet powerfull. You have great tools to work with creating your HTML file.

gwb-tools3D Object tools: You can move/rotate any object in 3D mode.

Text tool: You can write wherever you want in the document and not in HTML oriented direction (Position: absolute;)

Tag tool: Create blocks (DIV) of objects.

Pen tool: You can draw vectors. Just like Flash or Illustrator.

You can also find the Stroke tool and Fill tool as expected. also you can find the normal Zoom tool, Selection tool and Hand tool

One idea. Any screen.

Google Web Designer helps you create a responsive HTML. everything you create is accessible on any screen – desktop, tablet or mobile – without compatibility issues.

Amplify with code

If you’re feeling more hands-on, all the code behind your designs is hand-editable.

Two animation modes

In Quick mode, build your animations scene by scene and google web designer take care of the frames in between. In Advanced mode, animate individual elements using layers, easily changing the location of elements within the stack.

Full 3D authoring environment

Create and manipulate 3D content utilizing an array of tools and the power of CSS3. Rotate objects and even 2D designs along any axis, visualizing 3D transformations and translations as you author.




Although other Hacker News users reckon the code that GWD generates compares unfavorably to Microsoft FrontPage 2000. I found the code to be somehow fine, if inspected and modified manually. This tool is great for creating HTML parts (widgets) that are cross browser responsible (like ads, menu, carousel, etc.).

I still gonna play with Google Web Designer for sometime, but I must admit I was never the ‘HTML generator’ guy.. I don’t think that tools like that will take the job for the great HTML/CSS designers out there… How write their code using decent IDE.

It’s worth noting that projects like Adobe Muse/Dreamweaver, Reflow and others include most of Web Designer’s features, too. But by making Web Designer available for free, Google is putting quite a bit of pressure on the competitors.


That’s it. What do you think about Google Web Designer?

Django CentOS 6.4 installation instructions for noobs.

Django Centos 6.4 installation instructions for noobs.

So you want to build your first django centos 6.4 based web site? This is quite easy to install and configure. I’ll cover how to install Python/Django on your centos.

Django Centos


  • CentOS 6.4 (For the matter of fact, this tutuorial is good for all the CentOS 6.x series)
  • Apache (httpd)


What is Python?

Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Its syntax is said to be clear and expressive.” from Wikipedia.



What is Django?

“Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.” from

Installing Python


you may need the EPEL repositories for Centos.

cd /opt/
rpm -Uvh epel-release-6-8.noarch.rpm
rm epel-release-6-8.noarch.rpm -f
cd /opt/
rpm -Uvh epel-release-6-8.noarch.rpm
rm epel-release-6-8.noarch.rpm -f


Installation Process

Simple as:

yum install python
yum install python

test python by typing: “python” and you should see something similar to: (CTRL+D to exit)

At the time of writing (September 30 2013), the version of python@EPEL is 2.6.6

Django works with any Python version from 2.6.5 to 2.7. It also features experimental support for versions 3.2 and 3.3. All these versions of Python include a lightweight database called SQLite so you won’t need to set up a database just yet unless you need other SQL


Installing SQL

Django works with several DB engines. for simplicity, Install SQLite:

yum install sqlite

If you need other SQL Server else then SQLite,  you can follow:
MySQL/MongoDB/CouchDB on RHEL/Centos 6.3
If you don’t need SQL and you installed Python 2.5 or later, you can skip this step for now.





Installing Django

You can install using EPEL repositories any yum (like in the old article I wrote), but I recommend to use the easy_install method from the python-setuptools package, which I’ll show next:

yum install python-setuptools
easy_install django
yum install python-setuptools
easy_install django


Testing Django

Test Django by typing python on your command and then:

import django
print django.get_version()
import django
print django.get_version()


As you can see, the RPM version is version 1.5.4, while the current release in the EPEL version is 1.3.1. Internationalization: in template code is not available in 1.3.1 for example but only from Django 1.4



Creating Project

From the command, cd into a directory where you’d like to store your app, then run the following command:

2 startproject mysite
cd mysite startproject mysite
cd mysite

 Note: if you are installing Django using EPEL repos, the command will be django-admin and not

Starting Server

python runserver
python runserver

You’ve started the Django development server, a lightweight Web server – easier to startwithout having to deal with configuring a production server — such as Apache — until you’re ready for production.

Browse to with your Web browser. You’ll see a “Welcome to Django” page. It worked!

To change port:

python runserver 8080
python runserver 8080

If you need to start the server to answer not only locally, use:

python runserver
python runserver


Remember: Apache loads Django environment when starting and keep running it even when source is changed! I suggest you to use Django ‘runserver’ (which automatically restarts on source code changes) in development sessions, unless you need some Apache-specific features.


Configure more…

Config Database

Edit mysite/ It’s a normal Python module with module-level variables representing Django settings.

Help here.


Django using Apache

To run your Django application inside apache – use either mod_python or mod_wsgi, Support for mod_python will be deprecated in a future release of Django. If you are configuring a new deployment, you are strongly encouraged to consider using mod_wsgi or any of the other supported backends.


OPTION A: Install mod_python (NOT recommended)

For this to work, you must have apache installed and configured.

yum install mod_python
yum install mod_python

python using mod_python

you need to configure you apache/VirtualHost to:

    AddHandler mod_python .py
    PythonHandler mod_python.publisher | .py
    AddHandler mod_python .psp .psp_
    PythonHandler mod_python.psp | .psp .psp_
    PythonDebug On</pre>

<h3>Testing mod_python</h3>
Create a '<em>'</em> file in your apache server. put inside:
[code lang="py"]<% req.write("Hello World!") %>[/code]

and browse to www.your.server/ and you should see the "Hello World!" there.
<h3>Django using mod_python</h3>
Edit your <tt>httpd.conf</tt> file:

[code lang="apache"]
<pre><Location "/mysite/">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE mysite.settings
    PythonOption django.root /mysite
    PythonDebug On

read more…



Option B: Install mod_wsgi (RECOMMENDED)

Deploying Django with Apache and mod_wsgi is the recommended way to get Django into production.

yum install mod_wsgi
yum install mod_wsgi


to use mod_wsgi, create an apache folder inside your project and create a django.wsgi file:

import os, sys
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()


and configure your apache with:

<VirtualHost *:80>

WSGIScriptAlias / /var/www/django/mysite/apache/django.wsgi

# Alias /robots.txt /var/www/django/mysite/static/robots.txt
# Alias /favicon.ico /var/www/django/mysite/static/favicon.ico
Alias /static/admin/ /usr/lib/python2.6/site-packages/django/contrib/admin/media/
Alias /static/ /var/www/django/mysite/static/
Alias /media/ /var/www/django/mysite/media/

<Directory /var/www/django/mysite>
Order allow,deny
Allow from all

<Directory /var/www/django/mysite/media>
Order deny,allow
Allow from all

<Directory /var/www/django/mysite/static>
Order deny,allow
Allow from all


read more on: multiple django sites with apache & mod_wsgi



That’s it!


You’ve Python / Django installed on your Centos 6.4 and a new project template waiting for you to work on.


Continue reading…

* this article is an edited version of an older article.

Larry Reloaded Walkthrough – Leisure Suit Larry: Reloaded 2013.

Larry Reloaded Walkthrough – Leisure Suit Larry: Reloaded 2013.

Warning: spoiler Alert!

Larry 2013 – Larry Reloaded Walkthrough – Leisure Suit Larry: Reloaded Walkthrough:


Continue to read the Larry Reloaded Walkthrough ….


Larry Reloaded Walkthrough

Larry Reloaded Walkthrough

Larry Reloaded Walkthrough - Leisure Suit Larry: Reloaded 2013.

Lefty’s Bar 

  • Open the door to enter and sit on the chair. Talk to the bartender and order Whiskey ($5.00).
  • Go through the entrance to the back. Give the whiskey to the drunk for his coaster.
  • Flip (Use) the coaster inside your invetory to find a number (7-24-46)
  • Take the rose. Open the door to enter the toilet.
  • In the toilet: take the ring from the sink. Turn on the hot water to reveal the password on the window.
  • Go to the other door in the bar and knock. Use the password on the door to get access.


  • Take the remote.
  • Use the coaster-with-the-code to open the safe in the top right corner.

  • Take a battery-operated-personal-massage-device from the safe.
  • Open the battery-operated-device on your inventory and take the batteries out. You need to try about 4 times before it will eventually open.

  • Use the batteries in the remote and use the remote on the TV.
  • Use it again seven more times to get the pimps attention.

  • Go upstairs.


  • Take the candy and open the window to get onto the balcony.
  • Walk left to fall into the dumpster. You will find a a hammer.
  • Walk to the front of the bar. If you see the guy with the barrel, buy an apple from him. If he is not there he will show up later here or in another place.
  • Call a taxi (use the sign) and enter it.
  • Talk to the driver and select the Casino. Use your wallet to pay and exit the cab.


Casino – Caesar’s Phallus

  • Go inside and make around $500 in Blackjack or Slots. (easy using save/load)
  • At the 2nd screen, pick up the pass in the ashtray.
  • Go right and sit down inside the cabaret. Take the tank of helium. Sit down when the comedian is around. You may need to go out and return if the comedian is not there.
  • Go to the Buffet. Clean the table of spilled food (Outside the fixtures). Once you complete this task you will get a bottle of Hot Sauce.
  • Go out of the Cabaret. Take the elevator to the 7th floor.

    Take the coveralls out of the bushes.

  • Use the hand on the coveralls to get the golden key.

  • Use the elevator to go back to the 1th floor and l

    eave the casino.

  • Walk right to “Weddin’ Ready”.



Weddin’ Ready – Wedding Chapel

  • Take a jasmine blossom from the bush.
  • Call a cab and get in. Talk to the driver and select the Come ‘n’ go Store. Use your wallet to pay and exit the cab.



“Come ‘n’ Go” Convenient Store

  • Use at the payphone and note the number. Call the number 555-6969 and answer the questions however you like. call also 555-1234.
  • Go inside the convenient store. Look at the magazine rack and take one.
  • Go towards the back and take a carton of wine. Pay for these items.
  • Use the sign in front of the clerk and he’ll offer you choices of lubbers (You can answer any of the questions about the size, flavor, etc). Pay for it.
  • Go outside. Give the bum the wine as exchange for a knife. If he doesn’t show up, go into the store and out until he does.
  • Read the magazine.
  • Go right to the Club 69.



Club 69

  • Show the pass to the bouncer to get inside.
  • Talk to the  lady on the right in blue named Fawn:
  • Introduce yourself.  /  Learn her name. “Fawn”  /  Learn more about her.  /  Lets leave  /  Gotta run… have things to find.
  • Give her the rose, ring, candy and finally money/wallet. She’ll leave so leave as well.
  • Take a taxi to the Wedding Chapel again. 


Weddin’ Ready – Wedding Chapel

  • Talk to the “flasher” while you stand in front of him/them.
  • Open the chapel door to get married.
  • Give your wallet to her so she can pay the $100 for the certificate.
  • Once the ceremony is over… Exit and go west to the casino again.


Casino – Caesar’s Phallus

  • Enter the casino and go into the elevator at the back. Use it to get to the 4th floor.
  • Use breath spray and enter the honeymoon suite with the heart at the door.
  • Tune on the radio several times and wait for the commercial (555-8039 service) to finish.
  • Go down the elevator to the first floor and call a taxi at the entrance.
  • Enter it and tell the driver you want to go to the Convenient Store, pay and exit.



“Come ‘n’ Go” Convenient Store

  • Use the phone and call 555-8039 to order wine.
  • Call another taxi, get in and head back to the Casino, pay and exit.



Casino – Caesar’s Phallus

  • Go back up to the fourth floor and into the honeymoon suite.
  • Grab the wine to pour 2 glasses. Then touch Fawn for some foreplay and then talk to her.
  • After the rumble, use the knife on yourself to get free.
  • Grab the cord (rope) afterwards as well.
  • Combine one short cord to the other short cord together.
  • Now you only have $5 so go to the casino and make enough for 2 more taxi fares ($50 ought to do it).  If you forgot to save and lost all your money, try going outside to get a bit of cash from a passer by.


The Pool

  • Take the lift to the 2th floor.Enter the private room, using the golden key.
    It will take you to the swimming pool.
  • Talk to the lady.Her name is Jasmine.
  • After you talked for a while you will learn she needs new perfume… something fresh.
  • Exit the conversation
  • Exit the pool area and come back in, using the key.
  • Now you will be with he whale. Take a squib from the basket. Use the hot sauce on the whale
  • Take the ambergris from the water.
  • Put the jasmine flower into the bottle.
  • Put the ambergris into the bottle.
  • Outside, call a cab and drive to Lefty’s Bar. Pay and exit.


Lefty’s Bar

  • Go inside and buy Vodka. Add the vodka to the perfume bottle.
  • knock at the right door again. Use the password to get in and go up the stairs.
  • use the hand on yourself to remove the clothes. Use the condom on yourself.
  • Use the hand on the bed to start censored scene.
  • When you are finished, Click on yourself to remove the condom.  (If you forget this step, the police will chase you later…and you will return to this point)
  • touch yourself to get dressed. Go outside the window. Here, tie the mixed short cord to the fire escape on the right.
  • Click on yourself to secure the other end to Larry.
  • Use the hammer on the window at the bottom right to get the Spanish fly pills.
  • Walk left to drop down and exit the dumpster.
  • At the front of the bar, call the last taxi in this game and head to your final destination: The Casino. Pay and exit.



  • You need to find the cat. If the cat is not here, go right.  If still not there go left…
  • Give the squib to the cat and you will then extract some cat gland fluid.
  • Add the civet into the bottle.Now the bottle of perfume is ready!.
  •  go to the 2nd floor, and open the Private Room with the golden key.
  • Give the bottle to Jasmine. After she chase you away, go back in. The locker will be open.
    Take the latex repair kit from the locker.



  • Go to the 8th floor.
  • Talk to the lady standing behind the counter. Give her the pills and press the button on the counter after she has left. Enter the elevator you have just opened.
  • Go left to the bedroom and open the closet. You will get a doll.
  • Fix the doll using the latex repair kit.
  • Go out. Enter the sliding door on the right.
  • Inflate the doll with helium.
  • Squeeze her a bit and then exit so the wind can take you off..
  • Talk to the lady. Her name is Eve.
  • Introduce yourself.
  • Talk about clothing.
  • Remind her of your spectacular entrance
  • “It’s like bathing in bubbly”
  • Keep going until you hear “Why don’t you slip into this water…”
    Then exit the conversation and click yourself to strip off (do it again) and jump in…
  • Give Eve the apple and watch the ending.


You have finished the Larry Reloaded Walkthrough!

Enjoy! And thank you Kick-Starters!.

I’ve hope the Larry Reloaded Walkthrough helped you.

That’s It! Larry Reloaded Walkthrough