Outside access to the GAE-powered XMPP bots

Origin: Enabling chat outside Google AppsTo use XMPP bots, deployed on Google AppEngine (thanks to the new AppEngine SDK 1.2.5) from non-Google XMPP accounts (jabber.org etc.), in the DNS records for your domain (example.com) add: _xmpp-se…

[Web 2.0][Google][GWave] Google Wave Federation Protocol with Prosody XMPP server

To be “on the wave” I’ve done some experiments with Google Wave Federation Protocol. Other people already made it working with OpenFire (and another OpenFire install) and ejabberd, so I decided to try with Prosody - very easy to install Lu…

Ruby Sinatra: uninitialized constant Rack::File::MIME_TYPES

Original: rack newb problem w/ 0.9.0When tried to run a sinatra based application, I received an error message: ./sinatra/lib/sinatra.rb:1156:in `mime': uninitialized constant Rack::File::MIME_TYPES (NameError)According to Ryan Tomayko "..…

How to use Archlinux Pacman?

Packages installation: pacman -Sy package_name - packages installation and local packages db sync pacman -S package_name - packages installation along with dependencies pacman -Sl repository_name - display packages list of a given reposito…

GMail backup

After the rumors about locked GMail accounts, decided to backup my important emails. The article How to back up your Gmail on Linux in four easy steps helped me a lot. My setting in ~/.getmail/getmail.gmail are (IMAP, Maildir): [retriever]…

github error: failed to push some refs

When trying to push to github received: $ git push To git@github.com:zh/laconica.git ! [rejected] master -> master (non-fast forward) error: failed to push some refs to 'git@github.com:zh/laconica.git'The solution $ git pull .... $ git push

I moved my old blog

I converted my old Mephisto-based blog to WordPress and moved it to Freehostia.

Install merb-dev

Trying to install the development version of merb , i've got: no such file to load -- extlib/tasks/releaseSeems the extlib gem is too old for merb. Fix: $ git clone git://github.com/sam/extlib.git $ cd extlib $ rake gem $ sudo gem install …

TinyURL Ramaze Application

Created tinyurl ramaze application - everything in one file - model, view, controller. Required gems: sqlite3-ruby, sequel, validatable, ramaze.Even have an API: $ curl -O turl.rb http://zhware.net/code/ruby/ramaze/turl.rb.txt $ ruby turl.…

26th Ruby Kansai Workshop in Kyoto

On 17-May-2008 there was 26th Ruby Kansai Workshop in Kyoto. A lot of fun like always :) The chatlog from the presentations is available on lingr.I gave a presentation "Ruby off Rails" about developing web applications in Ruby, but without…

Online books

merb-book on github and Online Merb Book ramaze-book on github The Django Book

'X-Sendfile' for Rack, take 2

In the spirit of “Fork me if you like me" I forked the Rack project on github and applied my ‘X-Sendfile’ related changes. Now you can have download acceleration with: use Rack::Static, :urls => ["/files"], :root => "public", :extra => { '…

Rack::XStatic Middleware - 'X-Sendfile' for Rack

After I found the Rails X-Sendfile plugin, decided to code something similar for Rack (and Ramaze). The result: Rack::XStatic middleware. Example usage: xfile.ru rackup file. Start it with: rackup -s thin -p 7000 xfile.ruFor using it with …

Pushing and Pulling Branches on Github

Original articleWhat worked for me (tamanegi/open-uri branch): # create local branch $ git checkout -b open-uri # pushing branch $ git push origin open-uri # pulling remote branch $ git branch -d open-uri $ git branch -f open-uri origin/op…

Throttler Ramaze helper

After reading Rails Plugin: Throttler I created a Throttler Ramaze Helper . What is it for? ”...The throttling plugin monitors the load of your server and allows you to disable certain features of your app when the load is too high...” How…

Locale problems with Ubuntu-7.10 minimal install

Problem (after any package install i've got): perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LANG = "en_US.UTF-8" are supported and installed on your syste…

Rails on GIT

Semi-official Rails GIT repositories, maintained by Michael Koziarski (Koz): GitHub Gitorius $ git clone git://github.com/NZKoz/koz-rails.git

Second GIT origin

I made a mistake to clone from my GitHub Public Clone URL(git://github.com/zh/raplanet.git) . When trying to push the changes, there was a message: fatal: The remote end hung up unexpectedly error: failed to push to 'git://github.com/zh/ra…

Notes on MacWorld 2008

Mac

Last night I stayed from 2:00 to 4:00 o'clock, following the online coverage of MacWorld 2008 Conference and & Expo. Some thoughts: In fact all sites following the presentation was not fully functional - connection errors, slow refresh. Li…

Merb on Joyent Accelerator (part 1)

The Accelerator including almost everything by default - Ruby, gems etc. Adding the Merb framework was without any problems. Some tips: Pre-requirements: $ sudo gem install mongrel json json_pure erubis mime-types rspec hpricot mocha \ rub…

Joyent Facebook Developer Accelerator

Got my own Joyent Facebook Developer Accelerator . Will try to put some Merb application on it. To read: Merb and Data Mapper Merb & Datamapper: Getting Rolling Tutorial on developing a Facebook platform application with Ruby On Rails Usin…

Joyent Facebook Developer Accelerator

Got my Joyent Facebook Developer Accelerator. Will try to put some Merb application on it. To read: Merb and Data Mapper Merb & Datamapper: Getting Rolling Tutorial on developing a Facebook platform application with Ruby On Rails Using Rub…

Optimizing HTTP server performance on Linux

via DebianHelpDisabling the TCP options reduces the overhead of each TCP packet and might help to get the last few percent of performance out of the server. Be aware that disabling these options most likely decreases performance for high-l…

Create DVD from command line

original article (nixCraft)Tools: mencoder, ffmpeg, dvdauthor ### combine multiply sources $ cat file1.avi file2.avi > ccmovie.avi $ mencoder -o out.avi -noidx -oac copy -ovc copy ccmovie.avi ### set aspect ratio, ntsc $ ffmpeg -i out.avi …

Network upgrade for Ubuntu servers

The new server upgrade system: 1. Install update-manager-core: $ sudo apt-get install update-manager-core 2. Launch the upgrade tool: $ sudo do-release-upgradeLike usual, there is no step 3 ;)

Dump MySQL Database using ssh

via nixCraft mysqldump -u USER -p'PASS' DB-NAME | ssh user@example.com "dd of=/mysql/$(date '%d-%m-%y')"

Rails 2.0 Preview Release

Tried the new Rails version. After $ rails rls20PR && cd rls20PR $ rake rails:freeze:edge TAG=rel_2-0-0_PR $ rake rails:updatefor every rake task i've got: rake aborted! no such file to load -- active_resourceThe problem: edge_rails requir…

Jaiku using NginX

I've got today: 504 Gateway Time-out nginx/0.5.30when trying to access Jaiku. The error itself is not so rare, but the fact they using NginX and not for example apache is interesting.

Speedup Ruby on Linux

Origin: discussion on comp.lang.rubyIt appears that when compiled with --enable-pthread ruby will call sigprocmask MANY MANY more times than without. You can verify this with strace -c: $ strace -c ruby -e '1.upto(100000) {|i| i.to_s}' % t…

New OpenVZ for Linux 2.6.22 includes live migration

...The team behind the OpenVZ project will announce today (11-Sep-2007) the availability of its operating system virtualization software for the latest stable release of the Linux kernel. OpenVZ for Linux 2.6.22 now supports user ID namesp…