Sunday, June 26, 2011

Freenode and the Trends for LitteMan Power Abuse.

IRC is a wonderful technical resource available, for free, to anyone who has the
competence to set up an IRC client. One can be awed by the knowledge, freely
given, by people who have accumulated this knowledge through years of hard graft
despite sub standard documentation and lack of "google". Its hard to think to
back to the olden days ( a few years ago) when the only help you had were your
office colleagues and the dog eared tech manual. But sometimes, even now, Google
isnt enough. You want to communicate with living Gurus. And thats where IRC
channels come in. Once a haven but more often than not now a lair for small
minded, power hungry big heads with an agenda of self promotion. I also have a
theory that the closer you get to web technologies then the bigger the idiots
and the lower the real world competence of the self proclaimed experts that
haunt these channels and bully any nOOb unlucky enough to wander their way
looking for help and encouragement is. Frankly I have had enough of them, and I
know from private /msg-s so have many others.

Lets look at a typical example. The other day I was googling around for cheap
Linux/PHP/Mysql/Apache hosting options. Its hard to sort the wheat from the
chaff. Often the php installed is out of date or only supports a subset of core
modules you might need. Maybe their uptime isnt good. Or their admin UI
sucks. There are many things to consider. Now, I want to find recommendations
from competent PHP programmers who deal with this stuff all the time. real
people.. So I ask in the freenode #PHP irc channel. The resident troll and OP
who wields the "naughty stick" goes under the nym "TML". I had heard of him
before from someone who was complaining in another channel about some
intransigent show off who was getting too big for his boots. My Q went like
this : "Could any of you with experiences of reliable PHP hosting packages
please MSG me privately". One line. Polite. To the point. A request for
help. Our resident uber-Op pipes up "This is off topic go elsewhere". I reply
"oh sorry, I didnt know that but I asked people to privately msg me so it wont
be too much of a burden on the channel". Or words to that affect. In the
meantime I got about 7 recommendations (privately) with most of them telling me
how pompous and self important TML is. Firstly lets look at why it should be off
topic : Because it might be deemed commercial offering? Nah. Because its not
PHP related? Nah - after all hosting is directly linked to the language versions
and modules supported. Is it because some jobsworth decided it? Probably. The
channel was quiet too. Also ALL channels have an element of camaraderie and off
topic meandering - the maturer channels and OPs who dont have their head up
their own arses acceptthat. But that aside, lets not lose sight of the issue
here. One line. Polite. Asking for private replies so as not to flood the main
language reply stream. The channel is full of experienced PHP programmers the
kind that can, and did, quickly help and provide someone with their
experience. It takes a real low IQ to suggest that you should go to something
like #php-hosting where there is one person who is probably insane.. The huge
majority of PHP is linked with web hosted apps/sites. I needed help and people
are supposedly there to help. So I asked why this was so terribly "off
topic". Our self important operator promptly reminded it was off topic again, no
reason, and that "we" (dont you love people who claim to represent everyone else
whether they like it or not) cant help. I suggested that if he was there to help
he could do so, otherwise why would he flood the channel with so many topic
unrelated edicts and orders? He banned me. Banned from a PHP channel for asking
a simple PHP related question. TML if you're reading this : keep some
perspective and apply SOME common sense. If someone KEEPS coming back and asking
the same OT things then consider a temporary ban. You do not ban someone for
suggesting you're a jumped up little jobsworth who's a bit too fond of the red
card - you should take a deep breath and wonder if maybe, just maybe, that
person is correct.

I am working on a PHP project. I needed some help/pointers. I decided (before
posting this btw) to contact TML, make peace and request the ban was lifted. I
pointed out to him that I am not going to beg but if the rules were so strict
then I wont go off topic again asking about hosting. He refused to lift the ban
because he felt my apology was not "sincere enough" and that I might reoffend!
What a sanctimonious, self righteous little man some might think!. Unfortunately
he has the "F" flag, as founder, and I have no more redress. Fine. Maybe #php
will be better off without someone like myself. In all truthfulness, I doubt
it. Still, I am sure he is more than happy in own little world where his word
makes nOObs shudder and perps shake.. Fear the Op! For 'tis all they have….

My Emacs Files At GitHub

Saturday, June 11, 2011

enabling gtags auto tag completion in Global compatible modes

(require 'gtags)
(defun gtags-root-dir ()
"Returns GTAGS root directory or nil if doesn't exist."
(if (zerop (call-process "global" nil t nil "-pr"))
(buffer-substring (point-min) (1- (point-max)))
(defun gtags-update ()
"Make GTAGS incremental update"
(message "updating GLOBAL tags using gtags -i ..")
(call-process "gtags" nil nil nil "-i -f gtags.files")

(defun gtags-update-global ()
"Make GTAGS incremental update"
(message "updating GLOBAL tags!!")
(call-process "global" nil nil nil "-u")

(defun gtags-update-hook ()
(when (gtags-root-dir)
(when (memq major-mode (list 'php-mode 'c-mode 'org-mode 'javascript-mode 'js-mode 'emacs-lisp-mode))
(progn (message "global root : %s" (gtags-root-dir))(gtags-update-global)))))
(add-hook 'after-save-hook 'gtags-update-hook)

(defadvice gtags-find-tag (before gtags-make-complete-list activate)
"Make Global completion tags" (unless gtags-complete-list (gtags-make-complete-list)))

(add-hook 'php-mode-hook '(lambda () (gtags-mode t)))
(add-hook 'c-mode-hook '(lambda () (gtags-mode t)))

(provide 'rgr-gtags)

My Emacs Files At GitHub