How to Build Your First SaaS

I remember the time when I was a part of the team to provide our web-based applications as service (SaaS). We had ideas, of course, based on our previous experience in the web development area. But it was really difficult to start.

This time the situation is changed. Many web apps are SaaS-based now. And you can find not just short posts about SaaS but the articles for long reading. One of these is The SaaS Handbook – How to Build Your First Software-as-a-Service Product Step-By-Step.

The article describes a tech stack (it’s JS – Node.js + Preact – an alternative version of the React), structure, design, integrations with third-party services, and deploy and gives tips and ideas to build your version of the SaaS..

Installation of Oracle client to Ubuntu 10.04 Lucid

Recently I moved from Fedora 13 to Ubuntu 10.04 on my work laptop. So, I faced again with problem to setup Oracle PHP interface. Oracle provides RPMs only and not DEBs. So, to install the client RPMs should be converted to the DEBs. It can be done easily using utility alien:
sudo alien oracle-instantclient11.1-basic-
sudo alien oracle-instantclient11.1-devel-
sudo alien oracle-instantclient11.1-sqlplus-

They can be installed then with sudo dpkg -i.
Don’t forget to install PHP interface to Oracle:
sudo pear install pecl/oci8
That’s it. I spent no more 15 minutes to setup PHP Oracle interface under Ubuntu. Thanks to that post!

Organize devices on the desk

After we moved to the new flat I decided to put my computer devices more efficient on the my small desk. I followed by brief guide of Van Mardian and mounted an ADSL modem and WiFi router under my desk. I don’t have so much devices which can be mount such manner but I got some free space on the desk. The next step is to mount power extender there as well.

Thanks to Lifehacker for a good point.

Embperl and %ENV

Recently I faced with problem to incorrect displaying none-latin characters on the HTML page generated by Embperl. This happened because Embperl escapes all output symbols by default. To avid it it’s needed to specify a parameter EMBPERL_OUTPUT_ESC_CHARSET = 0. For web application is works fine because Embperl check %ENV and changes its parameters according to it. But if you need to run Embperl script from command line it doesn’t work. The solution is following: add into %ENV desired parameter


and pass additional parameter to the Embperl::Execute – use_env

Embperl::Execute( { inputfile => my-test-file.epl,
param => [<some data>],
use_env => 1,

Nokia 770 Laptop Conversion


I came across this howto which describes a way to convert your small Nokia 770 into laptop. The idea is good but what the meaning to buy Nokia if you need a laptop? I agree that it’s useful to have external keyboard but no more than it (IMHO).
But anyway maybe it’ll be helpful for someone who has different opinion 🙂