About Free and Open Source Software (FOSS)

How can I become an open-source contributor?

See what I wrote about it on my homepage. I’m giving instructions there. You may also wish to read my “Advice for the Young” essay.

Can you help me intrude into/exploit (so-called “crack” or “hack”) someone’s server/instagram account/IRC account/Twitter/Facebook/etc.?

No, and that is because I am not a computer intruder or a “cracker”, and even if I were versed in that, I wouldn't try to get myself and other people in trouble by trying to exploit vulnerabilities on useful, ethical, services.

There are better ways to handle your online problems than to try to do cracking. For more insights, see:

  • “Master Foo and the Script Kiddie” - a modern UNIX koan by Eric Raymond.

  • Q: Would you help me to crack a system, or teach me how to crack?

    A: No. Anyone who can still ask such a question after reading this FAQ is too stupid to be educable even if I had the time for tutoring. Any emailed requests of this kind that I get will be ignored or answered with extreme rudeness.

    Q: How can I get the password for someone else's account?

    A: This is cracking. Go away, idiot.

    Q: How can I break into/read/monitor someone else's email?

    A: This is cracking. Get lost, moron.

    Q: How can I steal channel op privileges on IRC?

    A: This is cracking. Begone, cretin.

    From Eric Raymond’s “How to Become a Hacker”

Are you a hacker?

The word "Hacker" can mean several things. It can mean a computer intruder, in which case, see the question above - I am certainly not one. Otherwise, it can mean a clever and competent enthusiast of a certain field of endeavour, primarily used by and for computer workers, but not exclusive to them. As I note, by inspiration from other sources, hacking is at least several millennia old.

Anyway, a "hacker" is something that normally other people call you rather than something you call yourself. I aspire for excellence and continuous improvement in several fields of endeavour (including software development), but only other people can judge whether I am indeed a hacker of them. And my policy is to encourage criticism rather than fanboy/fangirl-ism.

You’re using Mercurial (on Bitbucket.org/etc.) for some of your projects. How can I learn how to use it?

There are some links to tutorials on the Mercurial page of the Better-SCM site. More can be found in a web search for “mercurial tutorial”. Mercurial is not too hard to learn.

When building some of your CMake-based projects, I am getting an error for a missing “Shlomif_Common.cmake” file

Yes, you can find it in this repository. Just put it in the source directory. Such a problem should not be encountered when building a source release from the source archive downloads.

How many Projects are you Working on?

I have originated, maintain, or contribute to more than one project and keep switch-tasking between them. Some of them have sub-projects or individual tasks. You can find some lists and activity logs on this page.

Do you have a GitHub account?

Yes, see this link for more information.

Why are you working on this non-Perl 5/6 project? I thought you were a Perl guy!

While I have written a lot of Perl 5 code, and often still maintain it because it cannot be all reimplemented in something else overnight, Perl is not the only language I know and use. Perl is not exactly a religion that requires full devotion to its belief, and I actually met a woman who considers herself both a Christian as well as a Buddhist so…

For more information, see:

Why did you publicly share your solutions to Project Euler problems despite their request to avoid doing that?

For several reasons:

  1. Making the GitHub project public allows me to use Travis-CI and other CI services free of charge.

  2. I enjoy sharing my work with others.

  3. I think that Linus Torvalds’ quote that Only wimps use tape backup: real men just upload their important stuff on FTP, and let the rest of the world mirror it ;) has a grain of truth in it.

  4. It may be useful as evidence of the fact I solved these for prospective employers and other interested parties.

Do you solve the Project Euler problems in their order?

No, I don't. I often skip problems which I find too difficult or not interesting enough. I did solve 149 out of the first 150 problems (excluding No. 143).

How do you keep organised? What do you use for To-Do lists?

First of all, see this post I wrote about why E-mail is not only a to-do list and other resources that serve as virtual to-do lists. For my proper to-do lists, I use gvim/vim, either using plaintext or using the vim-quicktask plugin.

What is the “Expat License”?

It is what the FSF calls the so-called MIT License (or SPDX: MIT ). The original X11 licence has an extra clause.