Skip to main content

Posts

Why Magento sucks?!

p.p1 {margin: 0.0px 0.0px 13.0px 0.0px; font: 13.0px Arial; color: #1022a3} p.p2 {margin: 0.0px 0.0px 13.0px 0.0px; font: 13.0px Arial} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Arial} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Arial; min-height: 15.0px} span.s1 {letter-spacing: 0.0px color: #000000} span.s2 {text-decoration: underline ; letter-spacing: 0.0px} span.s3 {letter-spacing: 0.0px} span.s4 {text-decoration: underline ; letter-spacing: 0.0px color: #1022a3} This post was inspired by  http://www.commercestyle.com/e-commerce/magneto-sucks I don't agree on everything that wrote there, I won't say that is so sucky and hard. It's childish way to say system is too complicated, read the f**king manual, omg is this so hard?! So from perspective technical guy that have a lot of finished high loaded projects on the back, I want to explain my "sucky" point about it.  1) The thing that bothers me for last few weeks is news about Magento acquir...

How to kill old Resque workers and don't loose your face

In first thought trivial problem, `god gem` is keeping your Resque workers busy and when you deploy it just ask `god` to kill them by: god remove {group_name}. This is prety common misunderstanding thinking that workers will stop running at same moment, some of them can even live forever trying to establish their life inside your production server and continiously eating memory. One of walkarounds looked like this: in resque.rake create new task namespace :resque task :restart => :environment do    pids = Resque.workers.map(&:worker_pids) || []    pids.uniq!    if pids.any?        system("sudo kill -QUIT #{pids.join(' ')}")        puts "killed: #{pids.join(' ')}"    else        puts "resque wasn't running: #{pids.join(' ')}"    end end end It worked fine till one moment when rake stopped running initilizers before task and that cause ugly(hard) to find error...

Capture full screen in muti-screens Windows XP by Qt

I've just want to put some small solution here, I've spend few hours to find out why same procedure works fine in Linux and Mac OS,but always returns only first screen image in Windows XP. This is recommended use: QPixmap::grabWindow(QApplication::desktop()->winId()); And in windows XP it always capture only 1st screen, so this hack solution how same overloaded procedure works fine : QWidget *scr = QApplication::desktop(); WId w = scr->winId(); QPixmap pm = QPixmap::grabWindow(w,0,0,scr->width(), scr->height()); Just specify geometry of all screen and it works perfect.

My speech about Qt in Ciklum Speakers' Corner(RUS)

I wanted to share my speech that took place 21 Oct, it'a about how Qt helps to build cross-platform application. It was based on my experience building Owely.com for Windows, Mac OS and Linux. This presentation is based on russian, sorry eng speaking guys. And actual presentation on Eng: http://igorrac.blogspot.com/2010/10/qt-cross-platforming-rocks.html

Magento API + Java != Friends

Recently I've had a task to write small integration of Java to the Magento API, and meet a lot of troubles on the way. First of all Magento supports SOAP web-services that actually don't work well, I've found one solution http://code.google.com/p/magja I didn't tried because we spend much time trying to make them work with no result, so next was XML RPC based API that worked quite well on PHP examples, but caused more trubles. Login worked pretty well: XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); config.setServerURL(new URL("http://magento.dev/index.php/api/xmlrpc/")); XmlRpcClient client = new XmlRpcClient(); client.setConfig(config); Vector params = new Vector(); params.addElement( "defsan" ); params.addElement("123456"); String session = (String)client.execute( "login", params ); But other call's did worked, instead they show: Exception ...

Qt cross-platforming "rocks"!

Today I've made a topic about my experience of lunching Qt-based cross-platform product : Owely.com. In my presentation I've made few points about how C++ evolved during these years, and how it can become handy when you need high-performance cross-platform solution with high integration to the native API. Hopefully people that come to check this presentation was very interested in C++ and we had small but productive conversation. For thous who miss

Getting real presentation

this slides was prepared for Ciklum Speaker's Corner specially for developers. I've tried to squeeze only topics and quotes that's mostly important for new age application development. This slide prepared from "Getting real" book of 37signals Getting real in development View more presentations from defsan .