It's sure bill's fault and seems that now i can't see what my friends are doing
just a fuzzy warm web 2.0 useless bloatware and with email notifications reenabled
No wonder people forget about digg and they use only reddit
Friday, August 27, 2010
#God hates #ipod in the book of Eli , jesus was born in San Francisco
product placement sometimes is stupid : in book of eli the hero can't live without his car battery and the juice for ipod
"The next morning, Eli wakes up and finds that his iPod is nearly out of power. The car battery rig he uses to charge it is almost out of power as well."
"As he continues his journey, his iPod runs out of juice."
it would make more sense that Eli would go to Israel not San Francisco
You know i had all the time this song in my head "if you go to san francisco" for the duration of the movie
Also from the movie it seems Shakespeare is more popular than the Bible that is why you have many Shakespeare books and NO Bible ! wtf moment : that doesn't compute I mean common the army should had saved some bibles/playboy magazine you know just for an apocalyptic end of the world
our hero is kinda of religious kunfu master with his apocalyptic-pod in the ears and with a big afro american knife and he is eating cats
the story and the scenario is quite weak and is quite booring to see an almost empty post apocalyptic world, heck i almost want to watch MadMAx
"The next morning, Eli wakes up and finds that his iPod is nearly out of power. The car battery rig he uses to charge it is almost out of power as well."
"As he continues his journey, his iPod runs out of juice."
it would make more sense that Eli would go to Israel not San Francisco
You know i had all the time this song in my head "if you go to san francisco" for the duration of the movie
Also from the movie it seems Shakespeare is more popular than the Bible that is why you have many Shakespeare books and NO Bible ! wtf moment : that doesn't compute I mean common the army should had saved some bibles/playboy magazine you know just for an apocalyptic end of the world
our hero is kinda of religious kunfu master with his apocalyptic-pod in the ears and with a big afro american knife and he is eating cats
the story and the scenario is quite weak and is quite booring to see an almost empty post apocalyptic world, heck i almost want to watch MadMAx
Thursday, August 26, 2010
It turns out that #JavaScript language is the VM of the internet
That is the quote of the day and it shows why Java is dead :
Douglas Crockford — The State and Future of JavaScript
http://developer.yahoo.com/yui/theater/video.php?v=crockford-yuiconf2009-state
Everybody thought that the Java VM was going to be the VM of the internet, but it turns out that JavaScript language is the VM of the internet. People are writing in Java, and Python, and lots of other languages, and then translating it into JavaScript because JavaScript, for all of its security problems, actually has a much better security model than everybody else. The CLR has a terrible security policy, Java has a terrible security policy — JavaScript is better than everybody else.
Douglas Crockford — The State and Future of JavaScript
http://developer.yahoo.com/yui/theater/video.php?v=crockford-yuiconf2009-state
Oracle case against Google :Winners real open source databases like FirebirdSQL and PostgreSQL
My response and commentary related to this article
I get now more and more questions for tools to migrate
mysql databases to Firebird sql
and the site traffic for firebirdsql.org is growing at a higher rate than before check the alexa stats
http://www.alexa.com/siteinfo/firebirdsql.org
So i guess the real opensource databases are now in right position now and the only thing that can gurantees that will stay this way is the fundations behind , it's community type process like the bazaar and not a cathedral type like in the mysql and solaris case
So replacements for oracle poisonous projects
Oracle DB -> FirebirdSQL , PostgreSQL
Mysql -> FirebirdSQL , Postgresql
BerkleyDB -> FirebirdSQL, Sqlite
Java -> php , qt , ruby , python ...
I get now more and more questions for tools to migrate
mysql databases to Firebird sql
and the site traffic for firebirdsql.org is growing at a higher rate than before check the alexa stats
http://www.alexa.com/siteinfo/firebirdsql.org
So i guess the real opensource databases are now in right position now and the only thing that can gurantees that will stay this way is the fundations behind , it's community type process like the bazaar and not a cathedral type like in the mysql and solaris case
So replacements for oracle poisonous projects
Oracle DB -> FirebirdSQL , PostgreSQL
Mysql -> FirebirdSQL , Postgresql
BerkleyDB -> FirebirdSQL, Sqlite
Java -> php , qt , ruby , python ...
Systemd From they guy who fucked your audio system and still does with #pulse audio . Yah unix sux
He presents you the new init systems that it will be by default in fedora 14
http://0pointer.de/blog/projects/systemd.html
If you wonder why is not in #ubuntu sthink again (bugs and other crap that it will introduce and it will not solve nothing like in the pulseaudio case introducing new problems)
Unix philosophy is stupid for the desktop why do i need the cupsd , postfix , anacron , and all stupid deamons (7 tty consoles) and 60 threads of console-kit-daemons on my small netbook ? and i didn't forgot the 7 or more layers of X.org with networking and all but that is so slow like a dog when starting and moving my windows
That is one of the weaknesses of Linux : xorg system : I don't need so many layers i need something fast
that starts in one second and after that it will start the printing , mail daemons as needed
kernel should wake up the cron daemon once a day or never if i use the laptop only for 10 hours a day and in the night is closed also it should wake up cups only when i push the print button in openoffice
and gdm/kdm/slim should start first and then the deamons in the desktop/laptop mode profile
I don't care if the maildaemon starts after a hour when i boot my system , in fact i don't really needed it on my laptop also i don't need any password and ring key (security should be optional) and i don't want a password when i configure my wireless and when i configure my printer or update the system
In fact i don't want a a password at all on my borkstation64 @ home
http://0pointer.de/blog/projects/systemd.html
If you wonder why is not in #ubuntu sthink again (bugs and other crap that it will introduce and it will not solve nothing like in the pulseaudio case introducing new problems)
Unix philosophy is stupid for the desktop why do i need the cupsd , postfix , anacron , and all stupid deamons (7 tty consoles) and 60 threads of console-kit-daemons on my small netbook ? and i didn't forgot the 7 or more layers of X.org with networking and all but that is so slow like a dog when starting and moving my windows
That is one of the weaknesses of Linux : xorg system : I don't need so many layers i need something fast
that starts in one second and after that it will start the printing , mail daemons as needed
kernel should wake up the cron daemon once a day or never if i use the laptop only for 10 hours a day and in the night is closed also it should wake up cups only when i push the print button in openoffice
and gdm/kdm/slim should start first and then the deamons in the desktop/laptop mode profile
I don't care if the maildaemon starts after a hour when i boot my system , in fact i don't really needed it on my laptop also i don't need any password and ring key (security should be optional) and i don't want a password when i configure my wireless and when i configure my printer or update the system
In fact i don't want a a password at all on my borkstation64 @ home
Wednesday, August 25, 2010
Prius in a an alternate Romanian Universe
I was talking with Dragos and Boti at lunch and i told them about this story on /. :
Toyota Adds External Speakers To Warn Pedestrians and we imagined some cool scenarios like adding the sound of Ferrari to your prius one day and then adding the voice that will tell you "Get away MoFo from my way" another concept would be to add augmented ireality recognition so if you see a biker then you can send him a message like "move on the left lane pls"
but in our romanian universe i think they would put Manele on the speakers or in the best case bmw engine sound on it.
Toyota Adds External Speakers To Warn Pedestrians and we imagined some cool scenarios like adding the sound of Ferrari to your prius one day and then adding the voice that will tell you "Get away MoFo from my way" another concept would be to add augmented ireality recognition so if you see a biker then you can send him a message like "move on the left lane pls"
but in our romanian universe i think they would put Manele on the speakers or in the best case bmw engine sound on it.
Monday, August 23, 2010
Installing firebird python power console
If you want to install the Firebird power console here are some steps on Debian/Ubuntu machines
under ipython shell
ipython -p sh
1. Install setup
tools
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
tar -zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
run setup.py install
2.install the power console
wget http://ibphoenix.cz/pwc/download/PowerConsole-0.7.5.tar.gz
tar -zxvf PowerConsole-0.7.5.tar.gz
cd PowerConsole-0.7.5
run setup.py install
3.install the firebird pack
wget http://ibphoenix.cz/pwc/download/pwcfb-0.9.1.tar.gz
tar -zxvf pwcfb-0.9.1.tar.gz
cd pwcfb-0.9.1/
run setup.py install
4. if you get that kinterbasedb is not installed just do an (This is on Debian sid and is quite recent 3.3.0)
apt-get install python-kinterbasdb
Some of the examples are here
under ipython shell
ipython -p sh
1. Install setup
tools
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
tar -zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
run setup.py install
2.install the power console
wget http://ibphoenix.cz/pwc/download/PowerConsole-0.7.5.tar.gz
tar -zxvf PowerConsole-0.7.5.tar.gz
cd PowerConsole-0.7.5
run setup.py install
3.install the firebird pack
wget http://ibphoenix.cz/pwc/download/pwcfb-0.9.1.tar.gz
tar -zxvf pwcfb-0.9.1.tar.gz
cd pwcfb-0.9.1/
run setup.py install
4. if you get that kinterbasedb is not installed just do an (This is on Debian sid and is quite recent 3.3.0)
apt-get install python-kinterbasdb
ipwc PowerConsole v0.7.5 [CLI version] Python 2.6.6rc2 (r266rc2:84114, Aug 18 2010, 07:33:44) [GCC 4.4.5 20100816 (prerelease)] on linux2 Installed packages: pwcfb(0.9.1) Type "help" for more information. >>> help To get help about specific topic, PowerConsole command or Python object/function/expression, type help. Simple PowerConsole commands: ============================= connect disconnect help list ready run set show Miscellaneous help topics: ========================== firebird python sql terminator >>> help firebird TODO: Help for topic Firebird. >>> help sql Firebird package for PowerConsole should support all valid DSQL statements and many ISQL commands as well (see Firebird documentation for details). However, there are some exceptions and additions: - SET TRANSACTION does not support table reservation options (yet). - CREATE DATABASE and CONNECT support addtional optional argument (must be last one): AS that makes the Database object accessible under specified name instead default alias "db". >>> >>> help connect Attach to the Firebird database. usage: CONNECT 'dsn or db' [HOST host][USER 'user'][PASSWORD 'password'] [CACHE int ][ROLE 'role'][AS var][;] If connection is sucessfuly established, this database connection is set as main working database. Database object is stored and accessible under default alias "db" or as alias specified by optional AS argument. If alias name is already used for other attached database, this database is disconnected.
Some of the examples are here
help connect connect 'employee' user 'sysdba' password 'masterkey' select * from country; xshow procedures xshow tables list name,owner_name in db.tables list name in (t for t in db.triggers if 'POST_EVENT' in t.source) list name in (i for i in db.indices if i.unique)
One cool thing leads to another replacing #bash with #ipython , and #vim with #pyroom
I always wanted to switch forever from a bash type console to a python/ruby based one
and Ipython seems the best replacement shell in my opinion for bash
but he journey brings me to another cool edior , yes i hate VIM but i kinda like it's power but i still hate it's stupid not friendly user interface and so many hidden things
You need to grow a beard or something to get used to it
And i found The GLPython package provides an OpenGL terminal that lets you run an IPython console inside OpenGL.
wow that is cool , want to embed the ipython in a opengl interface (xonotic hud) and that made a click in my head
until i found pyroom on that page
Pyroom is a fullscreen editor written in Python and GTK featuring full screen multidocument text editor, small set of shortcuts, simple help page for shortcuts and different styles / colorsets available. More recent versions are available at http://pyroom.org
and that is very nice editor , full screen with text on the center and without annoying notifications from the system , similar with my way of running the terminal
and Ipython seems the best replacement shell in my opinion for bash
but he journey brings me to another cool edior , yes i hate VIM but i kinda like it's power but i still hate it's stupid not friendly user interface and so many hidden things
You need to grow a beard or something to get used to it
And i found The GLPython package provides an OpenGL terminal that lets you run an IPython console inside OpenGL.
wow that is cool , want to embed the ipython in a opengl interface (xonotic hud) and that made a click in my head
until i found pyroom on that page
Pyroom is a fullscreen editor written in Python and GTK featuring full screen multidocument text editor, small set of shortcuts, simple help page for shortcuts and different styles / colorsets available. More recent versions are available at http://pyroom.org
and that is very nice editor , full screen with text on the center and without annoying notifications from the system , similar with my way of running the terminal
Saturday, August 21, 2010
Howto:Building #php 5.3.x Firebird driver (php_interbase.dll) with #VC9
I have finished my guide to build the Firebird (2.5) driver for php 5.3
I have spend two weekends but the results are great now anyone can build and compile
Firebird 2.5 from source on any windows machine and anyone can build a driver for php 5.3.x and greater after that.
Rebuilding of Firebird 2.5 is not normally necesarry for normal mortals but is necesarry so that firebird driver to be included in the main build scripts and testing machines for php.net
ps: it's a tinny dll but it took some hours to make it work (~two weekends) and in that time i have created also the firebird 2.5 compilation movie on windows
How can you show me support ? you can donate for firebird fundation and that would make me happy (core developers will be happy and they will work to squish the bugs in the core and drivers but that doesn't meat that is the only contribution you can do: there are other ways : spread the word about firebird 2.5 release , fix/triage some bugs , write some documentation , blog about firebird ...)
also you can test and comment if there are any errors in the steps
ps: i will try to revive my mingw firebird compilation guide and i will add the php instructions too
I'm sorry that php core develpers are NOT using the very good mingw compiler and that they are using and persuading the usage of visual studio from ... Microsoft ...doh
I have spend two weekends but the results are great now anyone can build and compile
Firebird 2.5 from source on any windows machine and anyone can build a driver for php 5.3.x and greater after that.
Rebuilding of Firebird 2.5 is not normally necesarry for normal mortals but is necesarry so that firebird driver to be included in the main build scripts and testing machines for php.net
ps: it's a tinny dll but it took some hours to make it work (~two weekends) and in that time i have created also the firebird 2.5 compilation movie on windows
How can you show me support ? you can donate for firebird fundation and that would make me happy (core developers will be happy and they will work to squish the bugs in the core and drivers but that doesn't meat that is the only contribution you can do: there are other ways : spread the word about firebird 2.5 release , fix/triage some bugs , write some documentation , blog about firebird ...)
also you can test and comment if there are any errors in the steps
ps: i will try to revive my mingw firebird compilation guide and i will add the php instructions too
I'm sorry that php core develpers are NOT using the very good mingw compiler and that they are using and persuading the usage of visual studio from ... Microsoft ...doh
Tuesday, August 17, 2010
New to #Ubuntu / #Linux ? start with the guides and the fine manuals
Start with ubuntu manual or the official ubuntu docs or debian docs
If the manual is not enough then there a nice shell guide where they learn you ancient unix commands in the terminal
What is next ? maybe some programming languages books like python or sql books if you are inclined to learn something new.
The next level would be drifting through the Linux manpages , this is what i did in my journey
At the end is nirvana learning the kernel internals and the source code (it's English slang and simple c) and can be tweaked at will and anyone can send patches upstream
ps: never ask why flash is slow on Windows , Linux , Mac : adobe bug she hates us "She's always hungry. She always needs to feed. She must eat."
If the manual is not enough then there a nice shell guide where they learn you ancient unix commands in the terminal
What is next ? maybe some programming languages books like python or sql books if you are inclined to learn something new.
The next level would be drifting through the Linux manpages , this is what i did in my journey
At the end is nirvana learning the kernel internals and the source code (it's English slang and simple c) and can be tweaked at will and anyone can send patches upstream
ps: never ask why flash is slow on Windows , Linux , Mac : adobe bug she hates us "She's always hungry. She always needs to feed. She must eat."
Firebird 2.5 compliation with Visual Studio C++ 2008 (aka VC9.0) on Windows
Watch it here
http://vimeo.com/14190827
http://vimeo.com/14190827
Firebird 2.5 compliation with Visual Studio C++ 2008 (aka VC9.0) on Windows from Marius Adrian Popa on Vimeo.
"Firebird 2.5 compliation with Visual Studio C++ 2008 (aka VC9.0) on Windows
1.Install the Visual Studio C++ 2008 Express .Skip the sql server install :)
http://www.microsoft.com/ express/downloads/#Visual_ Studio_2008_Express_Downloads
2.Download Firebird 2.5 source code RC3 Tar.bz2 .
http://firebirdsql.org/index. php?op=files&id=fb250_rc3
Open it and extract it with 7zip somewhere in C:\Firebird2.5_src
3.Download Sed from GnuWin I had to extract in c:\gnuwin32
http://gnuwin32.sourceforge. net/
4.Add gnuwin c:\gnuwin32\bin to the PATH envirnoment variable , test it from a new console if it works by typing sed it should show you something abut gnu sed help
5.Eliminate the fb2control from firebird2 solution if you are using Visual Studio EXpress (doesn't support MFC) and it's only the control pannel applet and try to build it , it should give you no errors when you build the solution.
6.From cmd in builds\src dir and run in order
make_icu
make_boot
make_all
If all is ok under output_Win32 you should have the bin folder include and lib
[HURRAY :) ]
ps: Video was done so that Firebird extension to be included into the next php release and it describe how to compile it on a windows machine
http://wiki.php.net/internals/ windows/libs/firebird# building_php_interbase.dll_ with_vc9
I have used the ie8 testing virtual machine for this video so the licence of the Windows machine is OK
psps: google sucks i couldn't upload there because is larger than 15 Minutes and i couldn't figure it out howto cut it with kdenlive , pitivi ...yet"
1.Install the Visual Studio C++ 2008 Express .Skip the sql server install :)
http://www.microsoft.com/
2.Download Firebird 2.5 source code RC3 Tar.bz2 .
http://firebirdsql.org/index.
Open it and extract it with 7zip somewhere in C:\Firebird2.5_src
3.Download Sed from GnuWin I had to extract in c:\gnuwin32
http://gnuwin32.sourceforge.
4.Add gnuwin c:\gnuwin32\bin to the PATH envirnoment variable , test it from a new console if it works by typing sed it should show you something abut gnu sed help
5.Eliminate the fb2control from firebird2 solution if you are using Visual Studio EXpress (doesn't support MFC) and it's only the control pannel applet and try to build it , it should give you no errors when you build the solution.
6.From cmd in builds\src dir and run in order
make_icu
make_boot
make_all
If all is ok under output_Win32 you should have the bin folder include and lib
[HURRAY :) ]
ps: Video was done so that Firebird extension to be included into the next php release and it describe how to compile it on a windows machine
http://wiki.php.net/internals/
I have used the ie8 testing virtual machine for this video so the licence of the Windows machine is OK
psps: google sucks i couldn't upload there because is larger than 15 Minutes and i couldn't figure it out howto cut it with kdenlive , pitivi ...yet"
Sunday, August 15, 2010
Movies to watch , Dreams from last night
When Youre Strange A Film About The Doors 2010 (my favorite on to do list)
Vampires Suck (recommended)
and of course
Twilight Eclipse (I saw that is at local cinema :Arta)
ps: last night i had a dream with Jim Morrison and he had something like 50 with wrinkles and all
and he wanted to play an old song in the studio but the sound engineers put him someone with a voice on the tape and he was really angry because he really know how to sing his song
anyway a strange dream , just because when i saw the movie
The U.S. vs. John Lennon i was wandering how Jim would look at 40-50 yearsand the John's fight with the state reminded me the Jim's fight with the state
In both cases we know what happened
The war is over , or it is ?
Why #ubuntu 64 bit not recommended for daily usage ? part two
if you think that 64 bit is not good for daily usage think again
some things like video decoding and encoding is faster even on atom based machines
and there is good reason because is so fast : the increased number of registers and
the registers are wider
http://x264dev.multimedia.cx/?p=499
Another thing is that all the apps are faster on 64bit than on 32bit and i can sense that speed
you know like when you overclock you cpu to gain something like 10% more in FPS
There is a feeling that system is faster on 64bit than on 32bit (more responsive)
Forget about flash , flash is slow on all systems be it quad or six core monsters
anyway is working without many issues on 64bit systems , So why the fark ubuntu is recomending
a slow operating system ?
http://tuxradar.com/content/ubuntu-904-32-bit-vs-64-bit-benchmarks
some things like video decoding and encoding is faster even on atom based machines
and there is good reason because is so fast : the increased number of registers and
the registers are wider
http://x264dev.multimedia.cx/?p=499
As these benchmarks show, ffvp8 is clearly much faster than libvpx, particularly on 64-bit. It’s even faster by a large margin on Atom, despite the fact that we haven’t even begun optimizing for it. In many cases, ffvp8′s extra speed can make the difference between a video that plays and one that doesn’t, especially in modern browsers with software compositing engines taking up a lot of CPU time. Want to get faster playback of VP8 videos? The next versions of FFmpeg-based players, like VLC, will include ffvp8. Want to get faster playback of WebM in your browser? Lobby your browser developers to use ffvp8 instead of libvpx. I expect Chrome to switch first, as they already use libavcodec for most of their playback system.
Another thing is that all the apps are faster on 64bit than on 32bit and i can sense that speed
you know like when you overclock you cpu to gain something like 10% more in FPS
There is a feeling that system is faster on 64bit than on 32bit (more responsive)
Forget about flash , flash is slow on all systems be it quad or six core monsters
anyway is working without many issues on 64bit systems , So why the fark ubuntu is recomending
a slow operating system ?
http://tuxradar.com/content/ubuntu-904-32-bit-vs-64-bit-benchmarks
At this point, using a 64-bit distro is rather like enabling hyperthreading on your CPU - you get a free performance boost for your PC, and if that means you can put off upgrading it for another six months then it's an easy win. As we said earlier, it's a nice bonus. Sure, 5-10% isn't a lot, but when it's across your whole desktop and comes at no cost, why not?
Saturday, August 14, 2010
building #arora-browser stable + latest stable sdk for #qt on #windows
1.install qt sdk (latest stable)
2.install arora src and extract it
3.open it with qt creator
arora build solution and it will give the error mingwm10.dll not found
i did a little googling and found the solution
But it still crashed both the console and arora application
i have openned the src.pro soulution and rebuilded
and i write this from it :)
What is next : building as static exe and eliminate the cmd.exe
console from mingw
2.install arora src and extract it
3.open it with qt creator
arora build solution and it will give the error mingwm10.dll not found
i did a little googling and found the solution
If you install QT on windows via
the install executable it creates a shortcut
in the start menu that is called "QT 4.X.X Command Prompt" that is a
call to your $ $COMSPEC (cmd.exe most likely) calling qtvars.bat which
sets up you env for you.
But it still crashed both the console and arora application
i have openned the src.pro soulution and rebuilded
and i write this from it :)
What is next : building as static exe and eliminate the cmd.exe
console from mingw
Life is good after #Oracle , see you in 10 years
OpenSolaris is dead kudos to Linux type fundations like debian , fedora ...(see the distrowatch to see the enemies of Solaris)
MySQL is dead kudos to the Firebird and Postgresql real open source fundations. No one that sane will ever touch mysql source code that will come from oracle . See the java patent patern from bellow.
Java is dead and replaced by native and scripting languages , I see google opening the native code floodgates
and maybe entering meego fundation and this way who knows in the future we will see a QT based android
There is is already a port of QT to android called android lighthouse
http://code.google.com/p/android-lighthouse/
and read the Qt on Android - the Bogdan Vatra interview
And you can watch some really interesting demos for qt on android , it really works well
http://taipan.blip.tv/
with better speed :C++ is always faster than any interpreted code (You read this with an C++ browser and NOT with a java based one). And already i see they push the scripting languages like python and ruby and php and javascript . You can build a real apk now with full power of scripting languges inside. May the lua force be with you .Mono is nice but there is another enemy at the gates: Microsoft and they do have a lot of patents on their war chest
Also community reacts and people leave the oracle'sopen source projects
Take a look at the map yes Firebird and Postgres is fighting a strong war against Microsoft and Oracle (there are Billions there in the middle )
Map should be updated with mysql code split inside of the oracle and some of it outside somewhere in the ubuntu's launchpad
Interesting that the browser war is a lost cause for microsoft , you can't do anything against webkit period
and to add salt to the injury you can't do anything against firefox
The same with open source databases you can't do anything against them it's lost war
Ahh and by the way SCO is dead , nginx is getting web market share and the army of IPhones and Androids
killed everything microsoft had put on the table in the mobile area : Do you want a Kin anyone
I'm wet after Android and nokia but i will never use a Windows based mobile phone .
http://www.theinquirer.net/inquirer/news/1602970/microsoft-won-t-dominating-os
Gartner's study shows Android to be the fastest growing mobile smartphone operating system (OS) in the second quarter .Android overtook Apple’s iPhone OS to become the third-most-popular OS in the world As has been confirmed by several other reports, the Linux-based Android overtook RIM’s BlackBerry OS to become the top selling smartphone OS in the U.S.,
http://www.linuxfordevices.com/c/a/News/Gartner-2Q-report-and-AndroidLinux-fork/
MySQL is dead kudos to the Firebird and Postgresql real open source fundations. No one that sane will ever touch mysql source code that will come from oracle . See the java patent patern from bellow.
Java is dead and replaced by native and scripting languages , I see google opening the native code floodgates
and maybe entering meego fundation and this way who knows in the future we will see a QT based android
There is is already a port of QT to android called android lighthouse
http://code.google.com/p/android-lighthouse/
and read the Qt on Android - the Bogdan Vatra interview
And you can watch some really interesting demos for qt on android , it really works well
http://taipan.blip.tv/
LightHouse is a project to make porting Qt easy. Essentially, you just need to create a plugin which moves your content to the screen of the device. In my case, I did that and ported the shared memory concept and semaphore model -> done.
with better speed :C++ is always faster than any interpreted code (You read this with an C++ browser and NOT with a java based one). And already i see they push the scripting languages like python and ruby and php and javascript . You can build a real apk now with full power of scripting languges inside. May the lua force be with you .Mono is nice but there is another enemy at the gates: Microsoft and they do have a lot of patents on their war chest
Also community reacts and people leave the oracle's
I can't continue to contribute to a project sponsored by a company that use an Open Source language to monetize the patents portfolio they got from the acquisition of another company. I will feel like I'm paying money to SCO to have the right to use Linux... Yeah, I'll feel that bad.
So, I choose to leave the team instead of going against my convictions.
Take a look at the map yes Firebird and Postgres is fighting a strong war against Microsoft and Oracle (there are Billions there in the middle )
Map should be updated with mysql code split inside of the oracle and some of it outside somewhere in the ubuntu's launchpad
Interesting that the browser war is a lost cause for microsoft , you can't do anything against webkit period
and to add salt to the injury you can't do anything against firefox
The same with open source databases you can't do anything against them it's lost war
Ahh and by the way SCO is dead , nginx is getting web market share and the army of IPhones and Androids
killed everything microsoft had put on the table in the mobile area : Do you want a Kin anyone
I'm wet after Android and nokia but i will never use a Windows based mobile phone .
http://www.theinquirer.net/inquirer/news/1602970/microsoft-won-t-dominating-os
Gartner's study shows Android to be the fastest growing mobile smartphone operating system (OS) in the second quarter .Android overtook Apple’s iPhone OS to become the third-most-popular OS in the world As has been confirmed by several other reports, the Linux-based Android overtook RIM’s BlackBerry OS to become the top selling smartphone OS in the U.S.,
http://www.linuxfordevices.com/c/a/News/Gartner-2Q-report-and-AndroidLinux-fork/
Labels:
android,
firebird,
goodbye-microsoft,
google,
oracle,
postgresql
Friday, August 13, 2010
network driver issues with #ie8 testing #windowsxp machine in #virtualbox
I compile both the firebird 2.5 and the php5.3.x snapshots for windows , no i don't use it at all but i needed to make the driver for firebird on windows machines for lazy people who don't know how to use virtualbox or install ubuntu on a separate partition
I couldn't find the amd driver on amd.com site , i really tried so instead i had to install
and choose the intel driver pro 1000 mt for my virtual box setup
Download the driver for intel board and windows xp in my case prowin32.exe
create the iso
genisoimage -o intel.iso ../../Desktop/PROWin32.exe
I: -input-charset not specified, using utf-8 (detected in locale settings)
37.41% done, estimate finish Fri Aug 13 21:35:53 2010
74.88% done, estimate finish Fri Aug 13 21:35:53 2010
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
13365 extents written (26 MB)
then mount it inside the virtualbox and then run the setup from there
after that the nework is up and i can continue to download the sdk from windows and from qt
I couldn't find the amd driver on amd.com site , i really tried so instead i had to install
and choose the intel driver pro 1000 mt for my virtual box setup
Download the driver for intel board and windows xp in my case prowin32.exe
create the iso
genisoimage -o intel.iso ../../Desktop/PROWin32.exe
I: -input-charset not specified, using utf-8 (detected in locale settings)
37.41% done, estimate finish Fri Aug 13 21:35:53 2010
74.88% done, estimate finish Fri Aug 13 21:35:53 2010
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
13365 extents written (26 MB)
then mount it inside the virtualbox and then run the setup from there
after that the nework is up and i can continue to download the sdk from windows and from qt
Counting ip addresses with #lua #mod_security and #Firebird
I will use lua and mod_security to log some ip or content activity to firebird database
also we can show them in real time if we want to (selecting the last 10 visits for example)
The basic architecture is depicted in the following diagram

I count the ip addresses for one url and if it reaches certain threshold then i will trigger
an action (iptables) or deny access directly from lua (mod_sec rule)
I have a basic simple select example for lua and firebird database just to get a idea how it will look and how easy is to write one, also is good to test if lua + firebird installation is ok
First i have created a Security Rule Script in lua
also we can show them in real time if we want to (selecting the last 10 visits for example)
The basic architecture is depicted in the following diagram
I count the ip addresses for one url and if it reaches certain threshold then i will trigger
an action (iptables) or deny access directly from lua (mod_sec rule)
I have a basic simple select example for lua and firebird database just to get a idea how it will look and how easy is to write one, also is good to test if lua + firebird installation is ok
First i have created a Security Rule Script in lua
java script won the war ? or java/c++ sux
that is quote of the day
http://www.infoworld.com/d/developer-world/google-executive-frustrated-java-c-complexity-375
i think it doesn't matter in what you write , scaling is not a mater of language design but a architecture problem the way you make the application scale to thousands of servers
languages designed only for that task don't work , in fact any general purpose languge can scale be it c++ or freepascal or if you really want nodejs or gluescript combination
all it takes is doing the design with on a clean sheet
here is one cool demo with nodejs http://jeffkreeftmeijer.com/2010/experimenting-with-node-js/
At the USENIX annual conference last month, Gmail engineer Adam de Boor surprised the audience by noting that the company's Gmail service was written entirely in JavaScript, and that all of its code, around 443,000 lines worth, was written by hand.
http://www.infoworld.com/d/developer-world/google-executive-frustrated-java-c-complexity-375
i think it doesn't matter in what you write , scaling is not a mater of language design but a architecture problem the way you make the application scale to thousands of servers
languages designed only for that task don't work , in fact any general purpose languge can scale be it c++ or freepascal or if you really want nodejs or gluescript combination
all it takes is doing the design with on a clean sheet
here is one cool demo with nodejs http://jeffkreeftmeijer.com/2010/experimenting-with-node-js/
Wednesday, August 11, 2010
generating visitors stats with visitors and uzing gzip-ed logs
tip of the day using visitors stats
zcat /var/log/apache2/firebirdsqlro_access.log.*.gz | visitors - >stats.html
--
50345 lines processed in 2 seconds
0 invalid lines, 0 blacklisted referers
http://firebirdsql.ro/images/stats.html
I like the piwik stats interface and seems that is using html canvas instead of flash
http://piwik.org/
zcat /var/log/apache2/firebirdsqlro_access.log.*.gz | visitors - >stats.html
--
50345 lines processed in 2 seconds
0 invalid lines, 0 blacklisted referers
http://firebirdsql.ro/images/stats.html
I like the piwik stats interface and seems that is using html canvas instead of flash
http://piwik.org/
Friday, August 06, 2010
Wednesday, August 04, 2010
PHP 5.3 tests and why mysqlnd is useless
seems that mysql "new driver" for php is slower than the old one
http://brian.moonspot.net/php-5-3-mysqlnd
and is stupid that ORM people they overuse the fetch_all method they should filter the pages from views and stored procedures and not to fetch all the millions of records in objects and then to do the sorting and filtering
http://brian.moonspot.net/php-5-3-mysqlnd
and is stupid that ORM people they overuse the fetch_all method they should filter the pages from views and stored procedures and not to fetch all the millions of records in objects and then to do the sorting and filtering
Tuesday, August 03, 2010
I am going to FLOSSCamp 2010
I will quote Marius Voila
I can’t miss FLOSSCamp, it has become a tradition and everybody will be there. It will happen at Poiana Secuilor, near Predeal.
If you don’t know what is a FLOSSCamp for us, here is a description: an offline meeting for FLOSS contributors from all Romania, no matter their project affiliation, where we spend a week-end in the middle of the nature, with talks, distro-wars, camp fire, beer, grilled food, fun time and so on (a flamewar is so much better face to have with a beer in hand…).
Monday, August 02, 2010
On #debian : shortcutting circular dependencies in apt or forcing them
I wonder if is possible to detect and shortcut the circular dependencies in apt tree , the kind of shortcut we have in sql for some joins (i don't remember the post exactly)
http://people.skolelinux.org/pere/blog/Circular_package_dependencies_harms_apt_recovery.html
http://people.skolelinux.org/pere/blog/Circular_package_dependencies_harms_apt_recovery.html
Monday, July 26, 2010
Firebird legacy : stable core and api
What most of the people want these days from a RDBMS is a stable core and stable api
When i was at Firebird conference one of the people shocked me because he told me his is happy
with firebird on a single machine , these days we admins see the number of servers increasing from 10 to hundreds and then thousands so they are not big numbers for us but when i see a simple machine i'm shocked :all in only one machine ? yes the majority of Firebird ursers are simple developers and only the niche needs 10.000 machines : yah big shock ;)
but that doesn't mean we should stop at only one machine or at thousands
the big jump is from one machine to 2 or 4 the rest is simple
That was about my rant about the stable core and simple stupid machines and this is what perl community found it too:
the rant about the stable api is that firebird api is set in stone and doesn't change much with years, there are some quirks but is like posix there to stay forever : with bugs and all the animals
Here what firebird/interbase revolution did to the world: stable api for perl aka dbi
If you use perl and mysql/oracle you should thank to firebird/interbase first
When i was at Firebird conference one of the people shocked me because he told me his is happy
with firebird on a single machine , these days we admins see the number of servers increasing from 10 to hundreds and then thousands so they are not big numbers for us but when i see a simple machine i'm shocked :all in only one machine ? yes the majority of Firebird ursers are simple developers and only the niche needs 10.000 machines : yah big shock ;)
but that doesn't mean we should stop at only one machine or at thousands
the big jump is from one machine to 2 or 4 the rest is simple
That was about my rant about the stable core and simple stupid machines and this is what perl community found it too:
Most of the feedback I get from companies is that they want existing
things to just work, including core and CPAN modules. Most places I
visit aren't using most of the Perl features available to them, so new
features aren't very interesting, especially when they are stuck on
older versions of perl anyway.
the rant about the stable api is that firebird api is set in stone and doesn't change much with years, there are some quirks but is like posix there to stay forever : with bugs and all the animals
Here what firebird/interbase revolution did to the world: stable api for perl aka dbi
If you use perl and mysql/oracle you should thank to firebird/interbase first
Tuesday, July 20, 2010
Error: bad register name %sil
while compiling linux kernel 0.0.1 on lucid lynx or debian sid with gcc 4.4.4 i've got this error message
http://portabilityblog.com/blog/archives/11-Bad-register-name-dil-or-sil.html
how i fixed in asm/segment.h ? i have changed the registers used in function from "r" to "q"
so i limit the register usage only for general ones EAX, EBX, ECX and EDX
extern inline void put_fs_byte(char val,char *addr)
{
__asm__ ("movb %0,%%fs:%1"::"q" (val),"m" (*addr));
}
what is the next error ?
ld -s -x -M -Ttext 0 -e startup_32 boot/head.o init/main.o \
kernel/kernel.o mm/mm.o fs/fs.o \
lib/lib.a \
-o tools/system > System.map
kernel/kernel.o: In function `scrup':
console.c:(.text+0x1ea4): undefined reference to `columns'
console.c:(.text+0x1f6c): undefined reference to `columns'
kernel/kernel.o: In function `scrdown':
console.c:(.text+0x1fc5): undefined reference to `columns'
http://portabilityblog.com/blog/archives/11-Bad-register-name-dil-or-sil.html
how i fixed in asm/segment.h ? i have changed the registers used in function from "r" to "q"
so i limit the register usage only for general ones EAX, EBX, ECX and EDX
extern inline void put_fs_byte(char val,char *addr)
{
__asm__ ("movb %0,%%fs:%1"::"q" (val),"m" (*addr));
}
what is the next error ?
ld -s -x -M -Ttext 0 -e startup_32 boot/head.o init/main.o \
kernel/kernel.o mm/mm.o fs/fs.o \
lib/lib.a \
-o tools/system > System.map
kernel/kernel.o: In function `scrup':
console.c:(.text+0x1ea4): undefined reference to `columns'
console.c:(.text+0x1f6c): undefined reference to `columns'
kernel/kernel.o: In function `scrdown':
console.c:(.text+0x1fc5): undefined reference to `columns'
Hungary rejects IMF and maybe is a good idea
In Hungary they did it right and rejected the economy control
Here is what happened in Romania : we have now new increased VAT taxes and we do "enjoy" the IMF control
over our economy : we are totally fucked up ,the price for beer and cigarettes is increased and now everyone is looking on how to cut all the expenses ,no one is buying like before and the result : frozen and survival type economy , nobody borrows money from banks because the loans rates are increasing
...and so on
Mugur Isarescu (BNR chief) opposed the TVA increasing measure and i think we should rise a statue for him and he knows a thing or two about the Romanian economy
and yes the government cut wrong budgets and usually from weak economic zones : health, education ...etc
but continuing spending money on Microsoft licences (Siveco) and buying expensive cars like before (I want to see one one minister on bicycle, just once just one time , seriously)
ps:now they realized that VAT increases did a horrible thing for economy and all they see is how to cut expenses in short term but not aware with long term results
and all in the name of next elections
Here is what happened in Romania : we have now new increased VAT taxes and we do "enjoy" the IMF control
over our economy : we are totally fucked up ,the price for beer and cigarettes is increased and now everyone is looking on how to cut all the expenses ,no one is buying like before and the result : frozen and survival type economy , nobody borrows money from banks because the loans rates are increasing
...and so on
Mugur Isarescu (BNR chief) opposed the TVA increasing measure and i think we should rise a statue for him and he knows a thing or two about the Romanian economy
and yes the government cut wrong budgets and usually from weak economic zones : health, education ...etc
but continuing spending money on Microsoft licences (Siveco) and buying expensive cars like before (I want to see one one minister on bicycle, just once just one time , seriously)
ps:now they realized that VAT increases did a horrible thing for economy and all they see is how to cut expenses in short term but not aware with long term results
and all in the name of next elections
Wednesday, July 14, 2010
Compiling lazarus with qt interface on debian/ubuntu
install libQt4Pas library
I have installed it on debian sid with
apt-get install libqt4pas-dev libqt4pas5
check if is installed with
ldconfig -p | grep libQt4Pas
libQt4Pas.so.5 (libc6) => /usr/lib/libQt4Pas.so.5
libQt4Pas.so (libc6) => /usr/lib/libQt4Pas.so
checkout the lazarus source code from svn
svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus
cd lazarus
make PREFIX=/opt/lazarus clean all LCL_PLATFORM=qt
make install
or ./lazarus
check the qt string in the about box
What is the next step : configure the lcl include paths to use the new dirs
and adding the sql components
I have installed it on debian sid with
apt-get install libqt4pas-dev libqt4pas5
check if is installed with
ldconfig -p | grep libQt4Pas
libQt4Pas.so.5 (libc6) => /usr/lib/libQt4Pas.so.5
libQt4Pas.so (libc6) => /usr/lib/libQt4Pas.so
checkout the lazarus source code from svn
svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus
cd lazarus
make PREFIX=/opt/lazarus clean all LCL_PLATFORM=qt
make install
or ./lazarus
check the qt string in the about box
What is the next step : configure the lcl include paths to use the new dirs
and adding the sql components
Tuesday, June 22, 2010
#quake #sdl on #haikuos
wget http://www.libsdl.org/projects/quake/data/quakesw-1.0.6.tar.gz
wget http://www.libsdl.org/projects/quake/src/sdlquake-1.0.9.tar.gz
tar -x --strip-components=1 -f sdlquake-1.0.9.tar.gz
tar -x -f quakesw-1.0.6.tar.gz
wget http://gist.github.com/raw/448637/e43f70ff6e6e7bbdac1a26b4b0886d162a1ab7a2/sys_sdl.patch
wget http://gist.github.com/raw/448609/d077f11f4cb72e0044773bda2ce1a921389f508d/net_udp.patch
http://gist.github.com/raw/448637/e43f70ff6e6e7bbdac1a26b4b0886d162a1ab7a2/net_dgrm.patch
patch -p1 < sys_sdl.patch
patch -p1 < net_dgrm.patch
patch -p1 < sys_sdl.patch
./configure --host=i686-beos
or you can enable asm optimizations too if you want so
./configure --host=i686-beos --enable-asm
make
./sdlquake
Bellow is why i needed the patches and what they do
first i had this error
sys_sdl.c:16:21: error: sys/shm.h: No such file or directory
deleted the line with
#include sys/shm.h
I have reviewed the udp patches from native client to disable udp related communication
My next patches will be the ones with audio to make it usable and also the network should be reenabled somehow
wget http://www.libsdl.org/projects/quake/src/sdlquake-1.0.9.tar.gz
tar -x --strip-components=1 -f sdlquake-1.0.9.tar.gz
tar -x -f quakesw-1.0.6.tar.gz
wget http://gist.github.com/raw/448637/e43f70ff6e6e7bbdac1a26b4b0886d162a1ab7a2/sys_sdl.patch
wget http://gist.github.com/raw/448609/d077f11f4cb72e0044773bda2ce1a921389f508d/net_udp.patch
http://gist.github.com/raw/448637/e43f70ff6e6e7bbdac1a26b4b0886d162a1ab7a2/net_dgrm.patch
patch -p1 < sys_sdl.patch
patch -p1 < net_dgrm.patch
patch -p1 < sys_sdl.patch
./configure --host=i686-beos
or you can enable asm optimizations too if you want so
./configure --host=i686-beos --enable-asm
make
./sdlquake
Bellow is why i needed the patches and what they do
first i had this error
sys_sdl.c:16:21: error: sys/shm.h: No such file or directory
deleted the line with
#include sys/shm.h
I have reviewed the udp patches from native client to disable udp related communication
Question on #HaikuOs: why are my Alt and Control keys switched in functionality?
Answer is from #haiku irc channel archive ~ [21:22:22] :
MacOS heritage.. inspect a classic and modern Mac keyboard
Command keys where Alt is usually found on a PC keyb
BeOS keymap emulated a Mac keyboard using a PC keyboard
you can switch them if you prefer Ctrl as your shortcut key:
preferences/keymap there's a big button
MacOS heritage.. inspect a classic and modern Mac keyboard
Command keys where Alt is usually found on a PC keyb
BeOS keymap emulated a Mac keyboard using a PC keyboard
you can switch them if you prefer Ctrl as your shortcut key:
preferences/keymap there's a big button
Sunday, June 20, 2010
Firebird Database Porting progress on haikuos
Firebird Database Porting progress on haikuos
I have defined the platform first to be linux but there are big issues there so next one that i copy pasted is from NetBSD in configure.in
*-*-haiku*)
MAKEFILE_PREFIX=netbsd
PLATFORM=NETBSD
AC_DEFINE(NETBSD, 1, [Define this if OS is Haiku])
EDITLINE_FLG=N
SHRLIB_EXT=so
;;
There there are some issues with the ntpl ( posix with pthread but without ntpl ) this is why o get undefined reference to `___tls_get_addr'
/*Thread bug on haiku os */
#undef HAVE___THREAD
next thing that is missing
sys/shm.h
POSIX specification: http://www.opengroup.org/susv3xbd/sys/shm.h.html
Portability problems not fixed by Gnulib:This header file is missing on some platforms: mingw, BeOS.
g++ -I../src/include/gen -I../src/include -I../src/vulcan -DNAMESPACE=Vulcan -O -fno-builtin -DNDEBUG -pipe -MMD -fPIC -DBOOT_BUILD -c ../src/jrd/os/posix/isc_ipc.cpp -o ../temp/boot/jrd/isc_ipc.o
../src/jrd/os/posix/isc_ipc.cpp:94: error: 'siginfo_t' has not been declared
../src/jrd/os/posix/isc_ipc.cpp:127: error: 'siginfo_t' has not been declared
../src/jrd/os/posix/isc_ipc.cpp: In function 'bool isc_signal2(int, void (*)(), void*, ULONG)':
../src/jrd/os/posix/isc_ipc.cpp:186: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp:187: error: 'SA_SIGINFO' was not declared in this scope
../src/jrd/os/posix/isc_ipc.cpp:193: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp:199: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp: At global scope:
../src/jrd/os/posix/isc_ipc.cpp:347: error: 'siginfo_t' has not been declared
so i might need to study more about it
System calls from a user program are made in the traditional UNIX way of trapping into the kernel and then jumping to the real code. Since the only way a user program can get into the kernel is via a trap, our kernel is more robust because an errant or malicious program can't just jump into random kernel code and cause damage. The overhead to make a simple system call is quite low, coming in at just over three microseconds.
The mechanism for IPC in UNIX is traditionally through a pipe or the System V shared memory and message routines. The main mechanism for IPC under the Be OS is through named message ports that have a queue for incoming messages. Be message ports are unidirectional, and the incoming queue is limited in size to prevent run-away processes from gobbling all of system memory. We also support shared memory through the create_area() and clone_area() system calls, which allow one process to create an area and another to obtain a mapping to that area. The higher-level library code uses both message ports and shared memory to enable communication between threads in different teams.
I have defined the platform first to be linux but there are big issues there so next one that i copy pasted is from NetBSD in configure.in
*-*-haiku*)
MAKEFILE_PREFIX=netbsd
PLATFORM=NETBSD
AC_DEFINE(NETBSD, 1, [Define this if OS is Haiku])
EDITLINE_FLG=N
SHRLIB_EXT=so
;;
There there are some issues with the ntpl ( posix with pthread but without ntpl ) this is why o get undefined reference to `___tls_get_addr'
/*Thread bug on haiku os */
#undef HAVE___THREAD
next thing that is missing
sys/shm.h
POSIX specification: http://www.opengroup.org/susv3xbd/sys/shm.h.html
Portability problems not fixed by Gnulib:This header file is missing on some platforms: mingw, BeOS.
g++ -I../src/include/gen -I../src/include -I../src/vulcan -DNAMESPACE=Vulcan -O -fno-builtin -DNDEBUG -pipe -MMD -fPIC -DBOOT_BUILD -c ../src/jrd/os/posix/isc_ipc.cpp -o ../temp/boot/jrd/isc_ipc.o
../src/jrd/os/posix/isc_ipc.cpp:94: error: 'siginfo_t' has not been declared
../src/jrd/os/posix/isc_ipc.cpp:127: error: 'siginfo_t' has not been declared
../src/jrd/os/posix/isc_ipc.cpp: In function 'bool isc_signal2(int, void (*)(), void*, ULONG)':
../src/jrd/os/posix/isc_ipc.cpp:186: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp:187: error: 'SA_SIGINFO' was not declared in this scope
../src/jrd/os/posix/isc_ipc.cpp:193: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp:199: error: 'struct sigaction' has no member named 'sa_sigaction'
../src/jrd/os/posix/isc_ipc.cpp: At global scope:
../src/jrd/os/posix/isc_ipc.cpp:347: error: 'siginfo_t' has not been declared
so i might need to study more about it
System calls from a user program are made in the traditional UNIX way of trapping into the kernel and then jumping to the real code. Since the only way a user program can get into the kernel is via a trap, our kernel is more robust because an errant or malicious program can't just jump into random kernel code and cause damage. The overhead to make a simple system call is quite low, coming in at just over three microseconds.
The mechanism for IPC in UNIX is traditionally through a pipe or the System V shared memory and message routines. The main mechanism for IPC under the Be OS is through named message ports that have a queue for incoming messages. Be message ports are unidirectional, and the incoming queue is limited in size to prevent run-away processes from gobbling all of system memory. We also support shared memory through the create_area() and clone_area() system calls, which allow one process to create an area and another to obtain a mapping to that area. The higher-level library code uses both message ports and shared memory to enable communication between threads in different teams.
Friday, June 18, 2010
Tips for building #qt 4.7 and #AroraBrowser on #HaikuOs
Install qt 4.5 (needed for qmake and other devel tools)
then checkout qt 4.7 from gitoriuous
and configure it without phonon , without inconv (it crashes otherwise) and other crap like qt3support (you don't need it)
I wonder if i need to enable qt png
git clone git://gitorious.org/+qt-haiku/qt/qt-haiku-port.git
cd qt-haiku-port
~/qt-haiku-port> configure --prefix-install=no -no-pch -debug -opensource -confirm-license -no-largefile -qt-libjpeg -qt-libtiff -qt-libmng -qt-gif -no-qt3support -no-opengl -no-phonon -no-phonon-backend -optimized-qmake -fast -nomake examples -nomake demos -no-iconv -no-svg -no-ipv6 -no-ipv6ifname -no-multimedia
make
make install
then the same for
arora browser
git clone git://github.com/Arora/arora.git
cd arora
qmake
make
./arora
then checkout qt 4.7 from gitoriuous
and configure it without phonon , without inconv (it crashes otherwise) and other crap like qt3support (you don't need it)
I wonder if i need to enable qt png
git clone git://gitorious.org/+qt-haiku/qt/qt-haiku-port.git
cd qt-haiku-port
~/qt-haiku-port> configure --prefix-install=no -no-pch -debug -opensource -confirm-license -no-largefile -qt-libjpeg -qt-libtiff -qt-libmng -qt-gif -no-qt3support -no-opengl -no-phonon -no-phonon-backend -optimized-qmake -fast -nomake examples -nomake demos -no-iconv -no-svg -no-ipv6 -no-ipv6ifname -no-multimedia
make
make install
then the same for
arora browser
git clone git://github.com/Arora/arora.git
cd arora
qmake
make
./arora
Wednesday, June 16, 2010
rails on haiku os
install ruby 1.9 with haikuporter
haikuporter -i ruby
gem update --system
gem install rails
rails foobar
cd foobar
StyledEdit ./script/server
replace the first line with
#!/boot/common/bin/ruby
./server
=> Booting WEBrick
=> Rails 2.3.8 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-06-16 19:09:09] INFO WEBrick 1.3.1
[2010-06-16 19:09:09] INFO ruby 1.9.1 (2009-07-16) [i586-haiku]
[2010-06-16 19:09:09] INFO WEBrick::HTTPServer#start: pid=129249 port=3000
haikuporter -i ruby
gem update --system
gem install rails
rails foobar
cd foobar
StyledEdit ./script/server
replace the first line with
#!/boot/common/bin/ruby
./server
=> Booting WEBrick
=> Rails 2.3.8 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-06-16 19:09:09] INFO WEBrick 1.3.1
[2010-06-16 19:09:09] INFO ruby 1.9.1 (2009-07-16) [i586-haiku]
[2010-06-16 19:09:09] INFO WEBrick::HTTPServer#start: pid=129249 port=3000
sqlite doesn't load of course
strace is very nice on haiku
try with strace ruby
Monday, June 14, 2010
PHP Fragment Cache - an introduction
I love this quote from the following article (see at the bottom part)
"Treat every optimization task as if John Miles has just written to inform you that he’s made it faster than your wildest dreams, and you’ll be amazed at what you can do!"
So if web caching is not an option, what is the next best thing? To cache parts of the page, put them together, and serve that. You can use a caching tool for this, like Memcached. There's only one catch: the cached content may need to change when any of the things it depends on changes: data, code, user input, and the like. You can pass an expiration time when you add your content to Memcache. This will cause your cache to live only a certain amount of time and then expire. Nice, but we can do better.
This article will introduce you to that powerful new form of website speed optimization called Fragment Caching. It builds upon ideas used elsewhere to make the technique even more powerful. A PHP implementation is available for download.
"Treat every optimization task as if John Miles has just written to inform you that he’s made it faster than your wildest dreams, and you’ll be amazed at what you can do!"
So if web caching is not an option, what is the next best thing? To cache parts of the page, put them together, and serve that. You can use a caching tool for this, like Memcached. There's only one catch: the cached content may need to change when any of the things it depends on changes: data, code, user input, and the like. You can pass an expiration time when you add your content to Memcache. This will cause your cache to live only a certain amount of time and then expire. Nice, but we can do better.
This article will introduce you to that powerful new form of website speed optimization called Fragment Caching. It builds upon ideas used elsewhere to make the technique even more powerful. A PHP implementation is available for download.
Tips for building Arora / Qt on Haiku OS
Install latest qt for haiku from http://qt-haiku.ru/index.php?option=com_rokdownloads&view=file&Itemid=60&id=65:qt-4-5 then set the gcc version to 4
git clone git://github.com/Arora/arora.git
cd arora
setgcc gcc4
check to be 4
g++ -v
then
make -j2
./arora
seems there are some issues with png files on haiku alpha2 and with
gmail logging but i will install qt 4.7 from git and rebuild arora
libpng warning: Incompatible libpng version in application and library
libpng warning: Application was compiled with png.h from libpng-1.2.40
libpng warning: Application is running with png.c from libpng-1.4.1
git clone git://github.com/Arora/arora.git
cd arora
setgcc gcc4
check to be 4
g++ -v
then
make -j2
./arora
seems there are some issues with png files on haiku alpha2 and with
gmail logging but i will install qt 4.7 from git and rebuild arora
libpng warning: Incompatible libpng version in application and library
libpng warning: Application was compiled with png.h from libpng-1.2.40
libpng warning: Application is running with png.c from libpng-1.4.1
Sunday, June 06, 2010
playing ogg with SDL and freepascal
I have found this example for playing wav/ogg with sdl mixer using the pascal language
on ubuntu debian all you need is fpc/lazarus and then
install libsdl1.2-dev headers and shared library
sudo apt-get install libsdl1.2-dev
also you need the mixer
sudo apt-get install libsdl-mixer1.2-dev
wget http://www.freepascal-meets-sdl.net/seiten/kapitel/kap7/chap7.pas
fpc chap7.pas
also you need the samples
In my mind.ogg and dial.wav
./chap7
on ubuntu debian all you need is fpc/lazarus and then
install libsdl1.2-dev headers and shared library
sudo apt-get install libsdl1.2-dev
also you need the mixer
sudo apt-get install libsdl-mixer1.2-dev
wget http://www.freepascal-meets-sdl.net/seiten/kapitel/kap7/chap7.pas
fpc chap7.pas
also you need the samples
In my mind.ogg and dial.wav
./chap7
some new errors with karmic install under virtualbox 3.2.0 (debian sid 32/64)
I have noticed that there are some errors with the ubuntu install process under virtualbox , be it if is on 32 bit debian or 64 bit ones the errors are the same if you do the live cd and then install, I have reproduced the bug on 2 sid machines already , and the progress bar goes over 125%
Friday, June 04, 2010
Firebird saga continues What community did without the need for Interbase name and Inprise help
yes is that time when you start digging the Firebird/Interbase history and find the old building tips and source code overview and the battle between community and the corporate brainless drones aka : Inprise at that time : Read InterBase Saga Continues article to see how short minded they were by retreating in the Closed Source Cave
Here is how it was the situation in A.D. 2001
Well i will start with bottom up what community did all these years 2000 -> 201x
5. Interbase name : Firebird name is better than InterBase name and Firefox name
4. Testing suite : Is better than original and is written in Python , easier to parse and write for the brain
3. Building is easy these days and is packaged for major linux distros and compilers g++, vc++
2. On my linux i just type ./configure ; make ; make install so all is done for posix systems , win32/64 ok ok we don't have an HaikuOS port but that is easy :)
1. Release Notes : We have plenty
So in the end community filled all the missing gaps and it will finish the All the documentation too , It was a strategic mistake to ignore the community and the power of open source
Here is how it was the situation in A.D. 2001
At this time, although the latest source code and CVS tree have been released, some key pieces are still being held by Inprise. These include:
release notes
build instructions and makefiles
build documentation including known bugs list.
the testing suite
the InterBase name
A key issue for the community is the ownership of the documentation. Inprise is the copyright holder to the original documentation, But ISC had commissioned an outside company to update the documentation in anticipation of being transferred the copyright. According to Paul Beach, who was appointed VP of sales and Marketing at ISC, the new documentation is not 'derivative' enough (over 30% different) to allow them to release the new version without violating Inprise's copyright.
Well i will start with bottom up what community did all these years 2000 -> 201x
5. Interbase name : Firebird name is better than InterBase name and Firefox name
4. Testing suite : Is better than original and is written in Python , easier to parse and write for the brain
3. Building is easy these days and is packaged for major linux distros and compilers g++, vc++
2. On my linux i just type ./configure ; make ; make install so all is done for posix systems , win32/64 ok ok we don't have an HaikuOS port but that is easy :)
1. Release Notes : We have plenty
So in the end community filled all the missing gaps and it will finish the All the documentation too , It was a strategic mistake to ignore the community and the power of open source
Wednesday, June 02, 2010
Rails tip : joins without associations between models
seems that is possible to create complex joins with no associations between models
first i have tried to use the table name in the :joins/:include parameters area (see the Eager loading of associations in Active Record doc)
conditions[:joins] = "comments"
but doesn't work if there is no association between the model and even if is trough another table/model it doesn't work like i expected
so the solution is to add another join expression in the conditions arguments
conditions[:joins] = "LEFT JOIN comments ON comments.post_id = id"
and then you can filter on comments content or id
conditions[:conditions] ="comments.id=#{some_comment_id}"
then filter the model and use the results
Blog.all conditions
first i have tried to use the table name in the :joins/:include parameters area (see the Eager loading of associations in Active Record doc)
conditions[:joins] = "comments"
but doesn't work if there is no association between the model and even if is trough another table/model it doesn't work like i expected
so the solution is to add another join expression in the conditions arguments
conditions[:joins] = "LEFT JOIN comments ON comments.post_id = id"
and then you can filter on comments content or id
conditions[:conditions] ="comments.id=#{some_comment_id}"
then filter the model and use the results
Blog.all conditions
ubuntu 64 Not recommended for daily desktop usage ?
Common get real , i use ubuntu 64 on the desktop from the first version
and that was the main reason i installed it on the athlon64 box instead of debian at that time (there was no almost stable 64 bit installer or live cd with installer option)
I think the page should encourage 64 bit users not avoiding them , also i think the Windows Installer is NOT stable and usable
try to do some kernel upgrades and you will see the results.
In Fact 64 bit version is faster than the 32 bit one
and that was the main reason i installed it on the athlon64 box instead of debian at that time (there was no almost stable 64 bit installer or live cd with installer option)
I think the page should encourage 64 bit users not avoiding them , also i think the Windows Installer is NOT stable and usable
try to do some kernel upgrades and you will see the results.
In Fact 64 bit version is faster than the 32 bit one
Monday, May 24, 2010
hey stupid it's the sql and is better when it's free like free s_x
google allows you to use sql now but only for enterprise
you know you can build a simple machine with firebird sql and deploy it on amazon ec2
or in your private cloud for free , in fact you can build an infinity of machines and use a better framework than the one from google and i talk about django and you don't need their restrictions
ahh and for the java is the same , use tomcat (jruby) -> firebird + s3 and seems that is better for the long term than what google allows you for a premium price
you know you can build a simple machine with firebird sql and deploy it on amazon ec2
or in your private cloud for free , in fact you can build an infinity of machines and use a better framework than the one from google and i talk about django and you don't need their restrictions
ahh and for the java is the same , use tomcat (jruby) -> firebird + s3 and seems that is better for the long term than what google allows you for a premium price
Friday, May 21, 2010
When frameworks do fail use sexy sql
Imagine this scenario : is x AM in the morning your preferred framework model is starting to fail (Ruby On Snails )
Active Record model stinks when you start using multi monster joins so you got to stick with the old sql skills
something like ActiveRecord::Base.connection.select_all("select id from restaurants order by popularity limit 100")
and this will help even when at the same time when heroku rake db:migrate fails
what to do ?
Active Record model stinks when you start using multi monster joins so you got to stick with the old sql skills
something like ActiveRecord::Base.connection.select_all("select id from restaurants order by popularity limit 100")
and this will help even when at the same time when heroku rake db:migrate fails
what to do ?
$heroku consoleand start writing sexy sql statements like
>> ActiveRecord::Base.connection.select_all("ALTER TABLE xxx ADD COLUMN xxx_id integer")
>> ActiveRecord::Base.connection.select_all("select xxx_id from xxx order by xxx_id limit 100")
Tuesday, May 18, 2010
A weekend with Active Record and _why ruby guide
This weekend was dedicated to ruby and to other activities but specially in the programming field it was all about _Why guide (I have finished chapter 3 ) and A Guide to Active Record and if you really want some really cool hacks in firebird sql here is the XML Generator – Stored Procedure for Firebird (Portuguese)and that made me think why we don't have asXML/asJson in the Firebird engine directly ?
-Maybe because in Delphi we had asXML with no real work to be done on the engine part
-Maybe because in Delphi we had asXML with no real work to be done on the engine part
Friday, May 14, 2010
Day 2 on Debian - Revenge of the Squeeze on eeePC 1005p
in day two i have installed debian with usb image on eeepc
first i tried to use the lxde eeepc image but the kernel was a little bit older and it
wasn't recognized so i found that the best way is to install squeeze on it
and wireless works without issues and without the ndiswrapper! like is on ubuntu but i don't use encryption at home, only the trackpad does't quite respond to double click but i will find a solution to that
also the installer asked me the ESSID for the network while installing it over the wireless network it didn't detected the networks from around
Here is the obligatory screen shot and of course i will be evil and upgrade to sid . It doesn't look to bad isn't it ? and gnome is not so butchered by ubuntu people , yes it does come with epihphany browser and iceweasel
first i tried to use the lxde eeepc image but the kernel was a little bit older and it
wasn't recognized so i found that the best way is to install squeeze on it
and wireless works without issues and without the ndiswrapper! like is on ubuntu but i don't use encryption at home, only the trackpad does't quite respond to double click but i will find a solution to that
also the installer asked me the ESSID for the network while installing it over the wireless network it didn't detected the networks from around
Here is the obligatory screen shot and of course i will be evil and upgrade to sid . It doesn't look to bad isn't it ? and gnome is not so butchered by ubuntu people , yes it does come with epihphany browser and iceweasel
Thursday, May 13, 2010
Firebird documentation building (html/pdf) howto on Ubuntu Lucid Lynx or Debian
I always need to remember howto build the firebird documentation on my ubuntu/debian machines so i decided to
write a minihowto inspired by the great document Getting and building the Firebird manual module
or you can checkout anonymous mode from sourceforge's cvs repository
On debian is in non-free repository and must be added to apt/sources.list
Check the jdk content
cd ../../dist/html/
google-chrome ./index.html
there are some interesting files that are not yet on the main website so is good to dig around
something like isql-fb manual or the vpn guide
mkdir firebird_doc cd firebird_doc/ export CVS_RSH=ssh cvs -z3 -d:ext:mapopa@firebird.cvs.sourceforge.net:/cvsroot/firebird co -P manual cd manual
or you can checkout anonymous mode from sourceforge's cvs repository
cd lib/ cat _readme_libs.txt wget http://www.firebirdsql.org/doclibs/ALLJARS.ZIP unzip ALLJARS.ZIP cd .. cd tools cat _readme_tools.txt wget http://www.firebirdsql.org/doctools/docbook-dtd.zip wget http://www.firebirdsql.org/doctools/docbook-stylesheets.zip unzip docbook-dtd.zip unzip docbook-stylesheets.zip cd ..Install jdk
sudo apt-get install openjdk-7-jdk
On debian is in non-free repository and must be added to apt/sources.list
Check the jdk content
dpkg -L openjdk-7-jdkon Ubuntu
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64/on Debian sid (unstable)
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
cd src/build ./build.sh html ./build.sh pdfAt this point you should add some nice rendered documentation in pdf or html format
cd ../../dist/html/
google-chrome ./index.html
there are some interesting files that are not yet on the main website so is good to dig around
something like isql-fb manual or the vpn guide
Lxdebian is not for average people - Day one of pain
first nvidia proprietary drivers must be installed manually and then
if you get some errors with the debian way (i have tried to compile / use the nvidia driver that comes in testing) then the alternative is to upgrade to unstable "which contains the current drivers series" so you better replace in apt/sources.list the testing/squeeze word with unstable or sid like this
and
you can read more instructions on nvidia/debian wiki page.
Also i had some errors about the GTK+ icon set in squeeze and lxde setup but i hope they will disappear after squeeze -> sid upgrade
ps:what is wrong in debian by default?
1.exim by default
2.portmap, rpc.statd are started by default they should be removed by default
3.openoffice by default in lxde install image
that is huge i think some packages and themes from lubuntu should be added by default
like gnumeric, chromium ,abiword , pidgin but please avoid the bloatware likeopenoracleoffice
4.why i'm not in the list of sudoers by default? , also i don't need to know my root password if i create a admin type of user anyway
if you get some errors with the debian way (i have tried to compile / use the nvidia driver that comes in testing) then the alternative is to upgrade to unstable "which contains the current drivers series" so you better replace in apt/sources.list the testing/squeeze word with unstable or sid like this
and
apt-get update apt-get dist-upgrade
you can read more instructions on nvidia/debian wiki page.
Also i had some errors about the GTK+ icon set in squeeze and lxde setup but i hope they will disappear after squeeze -> sid upgrade
ps:what is wrong in debian by default?
1.exim by default
2.portmap, rpc.statd are started by default they should be removed by default
3.openoffice by default in lxde install image
that is huge i think some packages and themes from lubuntu should be added by default
like gnumeric, chromium ,abiword , pidgin but please avoid the bloatware like
4.why i'm not in the list of sudoers by default? , also i don't need to know my root password if i create a admin type of user anyway
Debian LXDE and faster systems - Yes i'm switching all my desktops to Debian x64 - Sorry Ubuntu your marketing failed
For simpler systems there is a special CD with LXDE as desktop environment, download the one for your system architecture for me is x86-64 on All systems (I wonder why the frack ubuntu gives you 32 bit version by default when you download the iso , 32 bit is legacy and 64 bit should be considered mainstream and for server is stupid to have 32 bit version)
Before the installation starts choose lxde instead of xfce from the install menu
ps:xfce/lxde on debian it's a little bit faster than what it's inside xubuntu
my reasons are that i want to become a debian developer to help the firebird packages and fixing bugs there this is why i need to use debian unstable/experimental
also i'm contemplating arch linux and haiku when i will have enough time
Sunday, May 09, 2010
Installing the latest ruby on rails on any ubuntu :lynx,karmic ....
I needed to have the latest rails on my ubuntu desktop : lucid lynx (the one that is by default in repository is too old)
and this command will not work on any debian based system because it's disabled and
it will break the debian way
if it's not in the path (I wonder why is not there by default when the gem package is installed)
you can do this
then you can install the latest stable rails
and this command will not work on any debian based system because it's disabled and
it will break the debian way
sudo gem update --systemanyway you can update and the replace the gem installed on the system this way
sudo gem install rubygems-update sudo update_rubygems
if it's not in the path (I wonder why is not there by default when the gem package is installed)
you can do this
sudo /var/lib/gems/1.8/bin/update_rubygems RubyGems 1.3.6 installed === 1.3.6 / 2010-02-17 changelog and notices -------------------------------- RubyGems installed the following executables: /usr/bin/gem1.8
then you can install the latest stable rails
sudo gem install rails
Installing jaws #php #cms on #ubuntu lucid and #firebird backend
This is tutorial on how to install jaws-cms on ubuntu and with firebird 2.1 backend
create a symlink , seems that if you put only jaws.fdb in the database field
then it needs to be located in jaws/data
start the installer http://localhost/jaws/install/
fill in the username for database and password
at database put jaws.fdb
Some screenshots created during the install process
All requirements are OK check the green results field
Also for php gd i had to install it this way
check if is installed with
and here is the administration area that you can access with
http://localhost/jaws/admin
If you play with the gadgets and add them to the Layout area in a few seconds you have a blog, rss feed (i have added firebirdnews rss feed) and visitor count and then a search box
So a community style of site can be created in a few steps and it's very easy to start it
cd /var/www sudo wget http://bits.jaws-project.com/releases/jaws-0.8.13/jaws-complete-0.8.13.tar.gz sudo tar -zxvf jaws-complete-0.8.13.tar.gz sudo mv html jaws sudo chmod -R g+rw jaws sudo chown -R www-data.www-data jawscreate an new database with flamerobin /var/lib/firebird/2.1/data/jaws.fdb
create a symlink , seems that if you put only jaws.fdb in the database field
then it needs to be located in jaws/data
cd /var/www/jaws/data ln -s /var/lib/firebird/2.1/data/jaws.fdb
start the installer http://localhost/jaws/install/
fill in the username for database and password
at database put jaws.fdb
Some screenshots created during the install process
All requirements are OK check the green results field
Also for php gd i had to install it this way
sudo apt-get install php5-gdand for firebird php driver
check if is installed with
sudo apt-get install php5-interbaseand then restart the apache server so that php driver to be really loaded after install
sudo /etc/init.d/apache2 restart
and here is the administration area that you can access with
http://localhost/jaws/admin
If you play with the gadgets and add them to the Layout area in a few seconds you have a blog, rss feed (i have added firebirdnews rss feed) and visitor count and then a search box
So a community style of site can be created in a few steps and it's very easy to start it
Friday, May 07, 2010
Transforming old interbase 6.0 docs from pdf to html using htmltopdf from ubuntu
wget http://www.ibphoenix.com/downloads/60LangRef.zip
unzip 60LangRef.zip
Archive: 60LangRef.zip
inflating: LANGREF.PDF
simple transformation with weird chars for quotes is done this way
pdftohtml LANGREF.PDF
then there is a LANGREF.html file
So i had to add the encoding type to be UTF-8
pdftohtml -noframes -enc UTF-8 LANGREF.PDF
you can see the results on this page
http://firebirdsql.ro/images/LANGREF.html
the interesting thing is -xml output
pdftohtml -noframes -xml LANGREF.PDF
with LANGREF.xml file as output
So in theory we can have simple interbase 6.0/ pre firebird 1.0 docbook document with language reference
unzip 60LangRef.zip
Archive: 60LangRef.zip
inflating: LANGREF.PDF
simple transformation with weird chars for quotes is done this way
pdftohtml LANGREF.PDF
then there is a LANGREF.html file
So i had to add the encoding type to be UTF-8
pdftohtml -noframes -enc UTF-8 LANGREF.PDF
you can see the results on this page
http://firebirdsql.ro/images/LANGREF.html
the interesting thing is -xml output
pdftohtml -noframes -xml LANGREF.PDF
with LANGREF.xml file as output
So in theory we can have simple interbase 6.0/ pre firebird 1.0 docbook document with language reference
Thursday, May 06, 2010
Firebird after 10 years - What a long trip, Long road ahead
For me it bring me tears when i read the old news from 2000 when interbase 6.0 was open sourced and later named Firebird [SQL]. Yes i read the old firebird related news from ibphoenix.
When it was open sourced there was no simple way to do on a linux system this style of building it :./configure make make install , it was weird and the code it was undocumented and weird
old weird c style with cruft from vax era and with limits from the same time , look now
on any linux system and any cpu firebird is build-able and is stable with no major crashes , ok ok there are some bugs but is usable on all platforms : macosx , windows32/64 and all linuxes and unixes (bsd) and you can do anything with it. Yes it's a major step to be easily to compile and to be available on all platforms. 10 Years ago build scripts were missing !! and they asked for something like 10M $ for them and for documentation source ! . This is why Firebird documentation is Achilles point and i think in the future we will replace the interbase 6.0 PDFs ! with something that is DocBook and that is opensource , Or maybe Embarcadero will donate the ib6.0 documentation under an OpenSource License , Who knows...? but the key is we need documentation that is easily searchable and in one place like on Postgresql guys and like on Mysql website
at least i can do an ib6.0 doc import from pdf to html and then publish them on another site like abandonware and include all the good changes made over the years to it fb1.0 fb.1.5 fb 2.0 fb2.1 fb 2.5 ....
Ahh and there is the website too old look : we know that something better will come so stay close to firebird community and you can support it by joining Firebird 2.5 Launch Campaign http://mindthebird.com/
ps: at first i couldn't understand anything about Firebird 1.0 C source code but these days
the code is in better shape and there are many documents that appeared on the webside or they are in the works : Wire Protocol , OnDisk Structure , Firebird Internals ...
So I think with great Past, Great future is laying ahead and we have good Architects and great core coders
When it was open sourced there was no simple way to do on a linux system this style of building it :./configure make make install , it was weird and the code it was undocumented and weird
old weird c style with cruft from vax era and with limits from the same time , look now
on any linux system and any cpu firebird is build-able and is stable with no major crashes , ok ok there are some bugs but is usable on all platforms : macosx , windows32/64 and all linuxes and unixes (bsd) and you can do anything with it. Yes it's a major step to be easily to compile and to be available on all platforms. 10 Years ago build scripts were missing !! and they asked for something like 10M $ for them and for documentation source ! . This is why Firebird documentation is Achilles point and i think in the future we will replace the interbase 6.0 PDFs ! with something that is DocBook and that is opensource , Or maybe Embarcadero will donate the ib6.0 documentation under an OpenSource License , Who knows...? but the key is we need documentation that is easily searchable and in one place like on Postgresql guys and like on Mysql website
at least i can do an ib6.0 doc import from pdf to html and then publish them on another site like abandonware and include all the good changes made over the years to it fb1.0 fb.1.5 fb 2.0 fb2.1 fb 2.5 ....
Ahh and there is the website too old look : we know that something better will come so stay close to firebird community and you can support it by joining Firebird 2.5 Launch Campaign http://mindthebird.com/
ps: at first i couldn't understand anything about Firebird 1.0 C source code but these days
the code is in better shape and there are many documents that appeared on the webside or they are in the works : Wire Protocol , OnDisk Structure , Firebird Internals ...
So I think with great Past, Great future is laying ahead and we have good Architects and great core coders
Thursday, April 29, 2010
Free (as in speech) Pascal / Lazarus History and Future
If you need a good intro to Pascal History and it's Successors then Wirth wrote a good paper
with the birth and evolution of the Pascal Language.
Another tutorial where there is a very good introduction to Pascal/Lazarus IDE history.
He seems a little too pessimistic about the pascal disappearing from history in the next 20 years !
but if you watch Tiobe language index you will see that Delphi+Pascal is growing over the years
and in terms of how fast you can build an application without writing too much (Rad way)
Lazarus is the fastest way to create desktop and in the near future web2.0 application
I think for web2.0 it needs a Webkit WYSIWYG form and designer + webcontrols
You don't believe me ? see what you can do with extjspascal and that is just the beginning
http://web.me.com/macpgmr/ObjP/MacXPlatform_Part7.html
http://prime.fmsoft.net/out/dbdemo.dll
Also another example app shows how to
create a Web app that's optimized for a mobile device like the iPhone.
Take a look at ExtPascal_Video2.mov:
http://web.me.com/macpgmr/ExtPascal/
I will highlight some good quotes and points for pascal and lazarus from the history
Pascal is free-flowing, unlike {insert other cryptic language}, and reads very much like a natural language, making it very easy to understand code written in it.
Turbo Pascal was truly revolutionary. It did take some shortcuts and made some modifications to standard Pascal, but these were minor and helped it achieve its greatest advantage: speed. Turbo Pascal compiled at a dizzying rate: several thousand lines a minute.
I still remember the old days at school watching how fast the x80286/x80386 based pc compiled the source code we wrote in TP
And today Free Pascal beats the s**t out of the gnu c++/gcc compilers ,
You don't believe me here are the times on compiling the FreePascal Compiler 2.4.0 itself with
the same version of the compiler (that comes in Ubuntu Lucid Lynx)
this compiles the units too
this on an old Intel Pentium CPU E2180 @ 2.00GHz
with the birth and evolution of the Pascal Language.
Another tutorial where there is a very good introduction to Pascal/Lazarus IDE history.
He seems a little too pessimistic about the pascal disappearing from history in the next 20 years !
but if you watch Tiobe language index you will see that Delphi+Pascal is growing over the years
and in terms of how fast you can build an application without writing too much (Rad way)
Lazarus is the fastest way to create desktop and in the near future web2.0 application
I think for web2.0 it needs a Webkit WYSIWYG form and designer + webcontrols
You don't believe me ? see what you can do with extjspascal and that is just the beginning
http://web.me.com/macpgmr/ObjP/MacXPlatform_Part7.html
http://prime.fmsoft.net/out/dbdemo.dll
Also another example app shows how to
create a Web app that's optimized for a mobile device like the iPhone.
Take a look at ExtPascal_Video2.mov:
http://web.me.com/macpgmr/ExtPascal/
I will highlight some good quotes and points for pascal and lazarus from the history
Pascal is free-flowing, unlike {insert other cryptic language}, and reads very much like a natural language, making it very easy to understand code written in it.
Turbo Pascal was truly revolutionary. It did take some shortcuts and made some modifications to standard Pascal, but these were minor and helped it achieve its greatest advantage: speed. Turbo Pascal compiled at a dizzying rate: several thousand lines a minute.
I still remember the old days at school watching how fast the x80286/x80386 based pc compiled the source code we wrote in TP
And today Free Pascal beats the s**t out of the gnu c++/gcc compilers ,
You don't believe me here are the times on compiling the FreePascal Compiler 2.4.0 itself with
the same version of the compiler (that comes in Ubuntu Lucid Lynx)
this compiles the units too
tar -zxvf fpc-2.4.0.source.tar.gz cd fpc-2.4.0 time make all real 2m9.143s user 1m46.835s sys 0m16.937s
this on an old Intel Pentium CPU E2180 @ 2.00GHz
Monday, April 26, 2010
Using lazarus ide with firebird in ubuntu lucid lynx
Start lazarus from command line or from main Menu Programming -> Lazarus
$sudo lazarus-ide or
SQLdb tab also contains a component TIBConnection that you can place it on the form
we will connect to /var/lib/firebird/2.1/data/employee.fdb
On the form put an TIBConnection, TSQLTransaction,TSQLQuery,TDatasource and an TDBGrid

TIBConnection is configured to have DatabaseName=/var/lib/firebird/2.1/data/employee.fdb
Password=masterkey
Username=sysdba
and Transaction=SQLTransaction1
You can put it to be Connected = True

Then configure SQLTransaction1
to use
Database=IBConnection1
Active =True;

Configure TSQLQuery this way
Database:IBConnection1
SQL=select * from employee;
Active = True;

Configure TDatasource
DataSet=SQLQuery1

Configure TDBGrid
DataSource = DataSource1

Next you can put an button and make them active from run time
procedure TForm1.Button1Click(Sender: TObject);
begin
SQLQuery1.Active:=true;
end;

ps: screenshots are from a previous article and by default now lazarus usese gtk2 so it looks nicer than the above ones
$sudo lazarus-ide or
SQLdb tab also contains a component TIBConnection that you can place it on the form
we will connect to /var/lib/firebird/2.1/data/employee.fdb
On the form put an TIBConnection, TSQLTransaction,TSQLQuery,TDatasource and an TDBGrid

TIBConnection is configured to have DatabaseName=/var/lib/firebird/2.1/data/employee.fdb
Password=masterkey
Username=sysdba
and Transaction=SQLTransaction1
You can put it to be Connected = True

Then configure SQLTransaction1
to use
Database=IBConnection1
Active =True;

Configure TSQLQuery this way
Database:IBConnection1
SQL=select * from employee;
Active = True;

Configure TDatasource
DataSet=SQLQuery1

Configure TDBGrid
DataSource = DataSource1

Next you can put an button and make them active from run time
procedure TForm1.Button1Click(Sender: TObject);
begin
SQLQuery1.Active:=true;
end;

ps: screenshots are from a previous article and by default now lazarus usese gtk2 so it looks nicer than the above ones
Friday, April 23, 2010
Getting started with #firebird and #lua on #ubuntu
I needed lua for a work related project and for database persistence i use firebird
So on ubuntu lucid lynx i have installed this way the Firebird Lua client
Tested with my local django db , Here is my test script for firebird connection
Then i wanted to insert some values
for that i have used exec_imediate and the interesting fact you must use double quote for insert statement otherwise you wil get Column unknown JACK if you try to put the name in single quote
The complete example would be with insert and read like this
So on ubuntu lucid lynx i have installed this way the Firebird Lua client
sudo apt-get install luarocks sudo luarocks install fbclient
Tested with my local django db , Here is my test script for firebird connection
Then i wanted to insert some values
for that i have used exec_imediate and the interesting fact you must use double quote for insert statement otherwise you wil get Column unknown JACK if you try to put the name in single quote
The complete example would be with insert and read like this
Monday, April 05, 2010
Dirty Socks and Dirty Woman
This is dedicated to Csaby
Yes the cat it was crying in the night and i couldn't sleep after reading some vampire book (twilight)
and the original idea for Dirty Socks was to be more happy but i think the happy version will be in Romanian language only :)
No cats were harmed during the writing and inspiration but only some spiders (rip)
and some persons can feel that i described them here , maybe is false and it's only fictional
and yes i have a washing machine and wash my clothes :)
Dirty Socks and Dirty Woman (Blues for Csaby v 1.0 )
I'm really Lonely and my socks are Dirty
She really left me with my Laundry Dirty
Can You sense that she is really Dirty
I Can Cray but she is really Flirty
I feel the pain but she really doesn't care
She really left me with the cat only
I'm really drunk but she really doesn't care
The only love i have is from the cat only
I feel the socks and i know i'm lonely
I know for sure she is not lonely
Can you sense that now i'm lonely
I can cry but i'm still sadly
She broke my heart but she really doesn't care
I sing my song in front of the cat only
She is still hot but she really doesn't care
The only care i've got is from cat only
(here the rithm is more intense and rocky )
I'm really lonely and i washed my socks
She really left me i know my life sucks
Can you sense that she really sucks
I can't cry now because i washed my socks
(the rhythm intensifies here it's the end after all )
I don't feel the socks
and i don't feel nothing for you
I know for sure that i won't be lonely
I washed my socks and washed my soul
I'm not really Lonely and my socks clean
She really left me but my Laundry is clean
Can You sense that who is really Dirty
She Can Cry now but i'm really Flirty
[guitar scratches and you can burn it after is finished :)]
Yes the cat it was crying in the night and i couldn't sleep after reading some vampire book (twilight)
and the original idea for Dirty Socks was to be more happy but i think the happy version will be in Romanian language only :)
No cats were harmed during the writing and inspiration but only some spiders (rip)
and some persons can feel that i described them here , maybe is false and it's only fictional
and yes i have a washing machine and wash my clothes :)
Dirty Socks and Dirty Woman (Blues for Csaby v 1.0 )
I'm really Lonely and my socks are Dirty
She really left me with my Laundry Dirty
Can You sense that she is really Dirty
I Can Cray but she is really Flirty
I feel the pain but she really doesn't care
She really left me with the cat only
I'm really drunk but she really doesn't care
The only love i have is from the cat only
I feel the socks and i know i'm lonely
I know for sure she is not lonely
Can you sense that now i'm lonely
I can cry but i'm still sadly
She broke my heart but she really doesn't care
I sing my song in front of the cat only
She is still hot but she really doesn't care
The only care i've got is from cat only
(here the rithm is more intense and rocky )
I'm really lonely and i washed my socks
She really left me i know my life sucks
Can you sense that she really sucks
I can't cry now because i washed my socks
(the rhythm intensifies here it's the end after all )
I don't feel the socks
and i don't feel nothing for you
I know for sure that i won't be lonely
I washed my socks and washed my soul
I'm not really Lonely and my socks clean
She really left me but my Laundry is clean
Can You sense that who is really Dirty
She Can Cry now but i'm really Flirty
[guitar scratches and you can burn it after is finished :)]
Build me a Woman that will ...
Last night i couldn't sleep to well so i had to write these verses from my mind
it's a blues and some words might be too harsh but this is how the things are in this
world rough and uncut (the style of blues sound i had in my mind it was something like Johnny Lee Hooker and maybe combined with some Doors )
ps: i know is a little too dark but this is v 1.0 and i hope to improve the verses over time
it's a blues and some words might be too harsh but this is how the things are in this
world rough and uncut (the style of blues sound i had in my mind it was something like Johnny Lee Hooker and maybe combined with some Doors )
ps: i know is a little too dark but this is v 1.0 and i hope to improve the verses over time
Saturday, April 03, 2010
Crazy Fishy Pasta - The Road to Hell
Inspired by the song The Road to Hell here is one kind of recipe for pasta
What you need :
-one onion
-some garlic
-2x fish cans (I have some RioMare PerPasta all'Arrabbiata that contains already a lot of paprika )
-one pack of spaghetti barilla
-dolmio or any tomato sauce would do
I brought double tomato paste made in Italy (made of real tomatoes not some fake shit that you can find in Romanian shops) also i have some sauce with some olives (Made by Baneasa again in Italy!)
-celery
-parsley
-paprika
-basil
-lovage
-chili
more
-chili
and yes more
-chili
This is the road to hell after all
The mixing and the process
First you need to chop the onion and garlic and put it the pot with some olive oil for a few minutes. Then put the tomatoes sauce in the pot and stir Put the fish from cans over and stir until it does have some nice color for about 5 minutes . At this point you can season the food with the condiments from above and others. And you can put the pasta in the same pot and mix it after it was boiled and washed or you can put the above mix on top of pasta when you serve it in
the dish.
To make things more interesting i have added for diversity some Sage , Cinnamon, All spice
For wine i have some Tokay and i think i need a beer (Siva Black edition) to wash my mouth burns
Tomorrow i will see if it burns twice yes I love Paprika :P and Chili and you can't eat it without thinking what will happen in second day
I will get out with my bike after this meal just to burn the calories and oxygenate my brains
For music I recommend for this food
Cris Rea - Road to hell
Dire Straits :Money for Nothing and Sultans of Swing
And this should work too AC/DC Highway to Hell
What you need :
-one onion
-some garlic
-2x fish cans (I have some RioMare PerPasta all'Arrabbiata that contains already a lot of paprika )
-one pack of spaghetti barilla
-dolmio or any tomato sauce would do
I brought double tomato paste made in Italy (made of real tomatoes not some fake shit that you can find in Romanian shops) also i have some sauce with some olives (Made by Baneasa again in Italy!)
-celery
-parsley
-paprika
-basil
-lovage
-chili
more
-chili
and yes more
-chili
This is the road to hell after all
The mixing and the process
First you need to chop the onion and garlic and put it the pot with some olive oil for a few minutes. Then put the tomatoes sauce in the pot and stir Put the fish from cans over and stir until it does have some nice color for about 5 minutes . At this point you can season the food with the condiments from above and others. And you can put the pasta in the same pot and mix it after it was boiled and washed or you can put the above mix on top of pasta when you serve it in
the dish.
To make things more interesting i have added for diversity some Sage , Cinnamon, All spice
For wine i have some Tokay and i think i need a beer (Siva Black edition) to wash my mouth burns
Tomorrow i will see if it burns twice yes I love Paprika :P and Chili and you can't eat it without thinking what will happen in second day
I will get out with my bike after this meal just to burn the calories and oxygenate my brains
For music I recommend for this food
Cris Rea - Road to hell
Dire Straits :Money for Nothing and Sultans of Swing
And this should work too AC/DC Highway to Hell
Subscribe to:
Posts (Atom)
















