Tuesday, November 14, 2006

Freelance Projects

So working as a freelancer is not so ugly. :)
Finally I have enough free time for my friends and family.

These days I had to add new MSSQL db layer to my framework. All went fine and I did it in no time.
hm... wasn't thinking that using my frame will save me so much time.

Tomorrow I am going to code some project for google adwords api. Should be interesting. ;-)

Wednesday, October 25, 2006

My Framework

As I decided to leave my ex-company I started to freelance.
Now I'm working on my own framework. I tried Zend's framework, but unfortunately it work only on PHP5 platforms and PDO enabled modules for DB access.

I need something universal. Some of the projects are hosted on PHP4 platforms that's why I can't use those different PHP5 frameworks that have come up these months.

Anyway, I always prefer to use my own code. :)

Tuesday, August 22, 2006

work on new payment system

I am working on a new payment system for my current company.
It should work with multiple payment gateways (e.g. Worldpay, Paypal) and be easily extensible.

Till now I've coded a couple of PHP classes and all seems fine, although there are some hindrances.

Hope I will release it soon :)

http://databg.svilen.com fully automated

After moving http://databg.svilen.com to a new server, collocated in Bulgaria, I started coding the automated crawl and update scripts.

Finally all is done and set. Now this search engine is working all alone, without any support from me. :)

Hope users will like it more and more since the database will be fully updated once a week.

Monday, August 14, 2006

Lucene Search

Zend Framework has one great module called Zend Search Lucene, which I'm going to try for a new project :) :

"Zend_Search_Lucene is a general purpose text search engine written entirely in PHP 5. Since it stores its index on the filesystem and does not require a database server, it can add search capabilities to almost any PHP-driven website. Zend_Search_Lucene supports the following features:

Ranked searching - best results returned first

Many powerful query types: phrase queries, wildcard queries, proximity queries, range queries and more [5]

Search by specific field (e.g., title, author, contents)"

Tuesday, August 01, 2006

Zend Framework

Playing around these days with Zend Framework I found very useful modules, except controllers, views and so.

People from Zend have made a very good RewriteRoute module.
It allows you to use URIs like http://mydomain.com/section/action/var1/key1/var2/key2, which are very good for SEO (Search Engine Optimizations).

Zend Db and it's submodules are great, too. They present the DB as an object (many table objects), which you can manipulate with their methods (insert, delete, select, update...).
I want to try them for obicham-te.com. Seems that this will make me work against time. We'll see :)

Monday, July 31, 2006


Some time ago I wanted to build a dating website, so I registered obicham-te.com

The time has come! :) My friend and I started to examine what we would need about such a website.
Mainly we will use Mysql <-> XMPP Server <-> PHP driven website
Why XMPP? Because it's something new & interesting & easy to recreate in future.

We've choosen Djabberd (http://www.danga.com/djabberd/ - Perl XMPP server) & Zend Framework for base tools.

Till now I have excellent observations on Zend Framework and these days will start coding a XMPP module.

Friday, July 28, 2006

PostgreSQL Fulltext Search

After I decided that mysql's fulltext search is pretty slow I wanted to try PostgreSQL as DB for http://databg.svilen.com

In my current company we are successfully using PostgreSQL as a Database for our billing and hosting systems and it's perfect!

So there is a fulltext search extension for PostgreSQL called Tsearch2 (http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/)
It wasn't so easy to install it. :) Although everyone says it's almost as easy as playing with your *** :)

Anyway. Finally Tsearch2 is installed.
Test shows that PG isn't much faster and it has no query cache ?!?

I'm going to revert to MySQL unfortunately.

Wednesday, July 26, 2006

Load Balance

It's becoming harder and harder to handle databg's on one server only.
I started to look for some load balance scheme.

Seems that DNS load balance is the easiest way to achieve a load balance and most popular one.
I am going to try it and then will share my experience.

Friday, July 21, 2006

Free Data.bg Search Engine (http://databg.svilen.com)

After I tuned up the search engine of http://databg.svilen.com I made a full update of the database.
The new rewritten crawl script is doing fine. I am able to index all files for around 5-6 days.

Here are my advices about MySQL FULLTEXT SEARCH optimizations based on my experience with the Free Search:
1) try using defult "my-huge.cnf" as mysql config file. It is tuned for server with lots of RAM 1-2GB

2) play some with "key_buffer" and "key_buffer_size". These values are the most important. I've set them to:
key_buffer = 576M
key_buffer_size = 448M

3) turn on mysql query cache:
query_cache_size = 64M

4) try to avoid counting the results from a given fulltext search:
exp.: SELECT count(*) FROM table WHERE MATCH(filename) AGAINST('+keyword' IN BOOLEAN MODE) > 0;

5) remove any unnecessary characters such as dot, comma from the searched keywords. Remember that mysql fulltext index only words!!!

6) lower your index size as much as possible. Means that you have to leave only necessary indexes! This is critical as mysql tries to load indexes in RAM before searching and if you have less free RAM memory than your index file you get slow queries

7) use persistent connections!

8) use prepared statements if possible. PHP5's PDO supports prepared statements (http://bg.php.net/manual/en/ref.pdo.php)

That's it! :)

Although my server gets usually loaded, but I think it's because of the traffic. It's pretty much. WOW!

Wednesday, March 29, 2006

XGL (Linux) vs. Virtue (Mac OS X)

So what do you think?

Which one is better? :)

I personally prefer Virtue. Easier for install and includes everything you may what. Even the biggest idiot can install and use it. No need to know anything specific for your hardware or your system.

Have tried installing XGL? It's kind a mess. So many things you have to do ... compire, recompire... baf, stuff that not everyone knows and even what to know.

Buy MAC and make you life easier ;-).


I made the paging of the results today.

This search engine I wrote a month ago to index the free hosting servers located in Bulgaria, because may of their search engines became payed. Especially www.data.bg - the biggerst one.

Some can help with the google ads? I do need advices about setting up a good ads.

Sunday, March 19, 2006

Back on the road

I bought my first MAC OS X computer - iBook G4. It's great. I love the way of navigation and so...

The widgets are so useful. :)