Forgot your password?
typodupeerror

Comment: Re:Anything but Vim, please (Score 1) 246

by yacoob (#32162030) Attached to: Hacking Vim 7.2

Code editor? Excellent. Let's make a python editor out of it. [1]

Syntax coloring? Check. Proper indentation? Check. Well, almost (backspacing over automatically inserted spaces doesn't seem to remove them in one go). Tab completion? Ch... hmmm. Omni completion is almost there. Almost, because it opens a scratch buffer with documentation. While this is understandable when running in terminal, it looks rather bad in GUI. It also doesn't seem[2] to be aware of local modules. There's some basic support for inspection, in the form of taglist plugin, but - again - separate buffer. And if you want something more IDE-like, ie. integrated debugger - good luck with that.

Don't get me wrong, I like VIM, and it's a fine editor. It's a good, ubiquitous tool. I'm just not exactly convinced that it's a decent programming editor. I've tried to use it as such, with various amount of success. Things probably look different for C, though.

[1] yes, I've read http://blog.dispatched.ch/2009/05/24/vim-as-python-ide/
[2] perhaps it can do this after flipping some option, but I haven't looked at it closer yet.

Comment: Re:Why (Score 1, Interesting) 228

by yacoob (#30827448) Attached to: Hiding From Google

It's a corporation. Corporation's goal is to make money. You'd be fool to think otherwise, because that what companies do. Is that evil? No.
Evil would be abusing law or users' trust for their own good. This particular corporation earns money, in an unusual way, while providing some unique services. Is that bad? I don't think so.

I'm having really good time, reading "Google should do X, Y, Z!" being pushed by people who clearly think that they should just receive all of the possible services for free. It's a simple deal, vote with your le^Wtraffic.

Comment: Re:speaking as a charity volunteer (Score 1) 796

by yacoob (#30498234) Attached to: UK Wants To Phase Out Checks By 2018

Yeah, I was about to mention that. It looks like having name, sort code and account number (which together with bank ID form IBAN) allows one to play with given account in some nasty ways. I think, however, that this is a result of poor security standards in those banks. Having moved from .pl to .ie some time ago, I was quite shocked to see how primitive and backwater Irish banks are. Oh well.

Comment: You'll be learning different things as you go. (Score 1) 537

by yacoob (#28669425) Attached to: Which Language Approach For a Computer Science Degree?

I believe that school should run you through...
* A bit about assembly. You're going to learn how CPU is built, right?
* C. To make you think about algorithms once you know how things run.
* Lisp. To make you understand functional programming.
* Java/Python. Probably the latter, to show you OO approach.

Apart from that, learn on your own whatever seems to be the current fad. You'll be changing the languages you write in anyway, but with some basics it should be easy.
Knowing the libraries and "ecosystem" of specific languages, well, that's totally different story. Can't give you an advice here, as I'm not a developer :)

Comment: How about... (Score 5, Informative) 342

by yacoob (#28629827) Attached to: What Would You Want In a Large-Scale Monitoring System?

Needed features in random order:
* Scalability - few k machines is minimum. This probably means smart, decentralized collection and aggregation of data.
* Flexible whitebox monitoring - for given class of devices, I should be able to configure how to fetch this device's data (http, smnp, ssh+command, rpc, you-name-it) and how to interpret it ("read the status page there, get this and that value").
* Flexible blackbox monitoring - for given class of devices, I should be able to configure a set of actions that should be performed on it (fetch a page, ssh into, ping) and how results of that action should be interpreted (ok/nok, time to complete, etc.).
* Easy way to tag (source/machine/network segment) and aggregate (max/min/mean/stddev/%ile/sum) of the monitoring data.
* Some language to easily calculate derivative values from the data above.
* Interface for defining graphs, using collected data.
* ...and a system for annotating the above. Raw data is neat, annotated data is even better.
* Alerting subsystem, which should allow for defining different destinations, together with escalation rules. And custom alerts - using the .
* (nice to have) HTTP server with a simple HTML templating, to allow for easy creation of arbitrary dashboards.
* (if you have the above) predefined templates for most of common things. Both detailed ("everything about device X") and general ("if the background of the page is green, you're fine! If it's not, here you'll find a concise list of what's broken").
* hooks/libraries to use collected data "outside" of the system

I realize that's a lot, but boy, such system would be very useful and flexible.

Never test for an error condition you don't know how to handle. -- Steinbach

Working...