Testing out Lekhonee WordPress client

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, I’ve discovered a new WordPress blogging client packaged with Fedora – namely, Lekhonee. There aren’t a lot of formatting options, but it appears you can post using HTML, so that’s a plus, I think. Let’s see how it goes.

My first Fedora

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, to my pleasant surprise, I discovered that I started using Fedora personally with Fedora Core 4, and not 5 like I had previously thought.  This makes me feel better as I’m glad I started using Fedora earlier, because I like to think I recognized the importance of a completely (or as close as possible) free operating system (free here means freedom, not just free of cost).

Continue reading “My first Fedora”

Unfinished Projects

Bismillaahir Rahmaanir Raheem

I have the bad habit of starting things and not completing them.  This is bad for numerous reasons, just a few of which I’ll list shortly.  I will warn you now that as this post is meant to help me organize my thoughts, it will list-heavy, as I do find lists and other types of grouping structures to be beneficial and help in making relationships (e.g., database schemes).

I already know that as I type this I will revisit this post in the future as I will be unable, in one sitting, to be think of all of unfinished projects.  Therefore, I will come back and add to the list as I recall more things (and find the time and desire, a rare combination these days, to update the blog).

For

  • Unfinished projects tend to clutter your mind
    • I tend to turn to unfinished projects whenever I work (i.e., get paid to do something) and hit a stumbling block.  This severely hinders my progress on work, which ultimately leads to less getting done.
    • Time when I could be brainstorming solutions is usually spent wondering about these myriad unfinished projects, which, lacking much focus, tend to yield few to no tangible solutions.  This includes walking/riding to the masjid, showering, and other activities that tend to leave the brain free and, ideally, well-suited for addressing beneficial thoughts.
    • If I try to focus on something, I can have a hard time preventing my mind from wandering to these unfinished projects.  This is related to the point about work above.
    • It’s just not healthy to have so many things on the mind at once.  There is a point at which the benefit of multitasking is overshadowed by the overhead of just trying to keep track of everything.  It’s not efficient.
  • Having so many unfinished projects means that it can be hard to pick just one to work on.
  • Playing catch-up may give a false sense of achievement, because the value of these unfinished projects are not equal, and therefore, I may complete one that is really not that important while one that is more valuable was never completed.  Therefore, just trying to clear out the backlog of projects may yield a net result of close to zero.
  • There are many more, and I may amend this list in the future as I recall them.

So, here is the list of my unfinished projects (at least those that I can recall at one point or another).  I am including some thoughts on the different ideas as well.

  • Redesign the Audio Islam website
  • Write a script to automatically tag all the audio files, especially the ones containing Qurʾān recitation, with reciter & sūrah information
  • The Fedora Documentation manpage coverage project
    • This is basically an idea I had related to the Fedora Documentation project to ensure that all executables had an associated man page (manual page, a low-level documentation system for Unix-like operating systems such as GNU/Linux).
    • The first step in this is to canvass the existing packages & executables and see what already has a man page.  I have already started on this, but there is much work left to be done.
    • There are plenty of sources for documentation that can be used as baseline manpages, including the Debian project.  So, this project doesn’t require as much work as it does just coordinating and facilitating.
  • A Paltalk replacement
    • Paltalk is a voice conference & chat application (video is also supported, but I don’t care about that right now) that is widely used, but terribly proprietary.
    • My goal is to create or synthesize a replacement for Paltalk using only free software and open technologies
      • The best candidates for this are SIP (for multimedia) and Jabber/XMPP (for text chat).
      • The landscape for software that can do this in a simple fashion is rather bleak, but there are some solutions.
      • I’m currently focused on FreeSWITCH as the SIP server and ejabberd as the chat backend.
      • Linking them such that it will be one service will be quite challenging, and still requires a free software client that has solid support for both SIP & XMPP
        • I’ve been looking mostly at Qutecom, SIP Communicator, and Psi
        • On GNU/Linux, the Empathy client for the Telepathy framework is outstanding, but, is limited to free-software operating systems.  I think Windows support is a long way out still.
  • AlMaghrib in Malaysia
    • I am trying to catalyze the establishment of AlMaghrib Institute seminars in Malaysia (almost surely in Kuala Lumpur, at least at the beginning).
    • I’ve already purchased the domains almaghribinmalaysia.com/net/org, and I just need to get the site setup.
      • To start off, I think just a blog with some information about AlMaghrib is fine.  It can be fleshed-out later.
    • Alḥamdulillāh, there is already a lot of interest both within and without Malaysia.  I have several contacts here that are also excited and may be able to facilitate the first few steps.
      • I see the first step being getting a group of excited & enthusiastic locals to get behind the effort.
      • After that group is identified (and it is really an ongoing process), see about getting the support of existing organizations.
        • From an initial perspective, it seems like this is going to be easy, in shāʾ Allāh.
      • With this support, we will want to schedule some kind of event to gain a wider audience interest.  Something like a conference or teaser seminar, perhaps a week-long program with some of the AlMaghrib instructors.
        • Many of the AlMaghrib instructors are already known or well-known here
        • Having Suhaib Webb might be particularly nice, as his wife is Malaysian.
        • Waleed Basyouni has expressed an interest in coming to Malaysia, and some work is already in progress regarding that, but it may have stalled (temporarily only, in shāʾ Allāh)
        • Yasir Qadhi is another instructor that has some reknown here, apparently (from what I’ve been told).
  • HidayahTech
    • My own technology consulting business
    • Although HidayahTech is currently the name of my blog, I have also resolved to use this as the name for my own consulting business.
    • Services will include
      • Audio recording, editing, mastering, and production (I did this, for example, for the Texas Dawah Convention in 2007)
        • I am consider splitting this and other audio-related services into it’s own business, namely, Hidayah Audio
      • Web technologies
        • Hosting (this is generally quite easy)
        • Moodle (an open-source learning mangement system, for putting schools online, for example)
        • Audio services, including hosting my “replacement for Paltalk” solution above
      • Consulting
        • This will include a wide variety of services ranging from system administration, general IT, infrastructure, to web development
        • I may take some partners or hire some friends for this aspect of this business, as I will need help for some points of it
  • Global Homeschooling
    • This is my premiere project, if I had to pick one.  I consider this to be something great if I can achieve it, by the Permission of Allāh.
    • To sum it up, I want to develop a system whereby Muslims (and truly, anyone) can homeschool their own children easily.  Homeschooling may be too specific of a term, though, because I want the scale to include a plan that can be implemented by governments.  I would like children, and really anyone, to be able to be educated within their own homes, utilizing the bevy of technology that exists.
    • Technology creates options & opportunities, and this is a belief I take strongly.  Therefore, I think we should utilize it.  I see education as one of the most important investments that can be made, whether it is Islamic or related to the worldly sciences, both of which are important.  I actually believe the distinction to be artificial, but it will take time to get there.
    • So, to put it in a few words, I would like to develop a system of education leveraging technology that is globally accessible allowing education to be released from the confines of school buildings.
  • Learn the Python programming language
    • I think learning Python has a high return value on the types of applications I would like to write, including graphical ones.  Also, it is quite the preferred language for many platforms, not the least of which is Red Hat & Fedora.
  • Memorize the Qurʾān
    • Please keep in mind that this list isn’t in order of importance…;)
    • I think this is a goal every Muslim should have.  I started this goal, seriously, while I was staying in Egypt with my parents, even semi-regularly visiting the imān of the nearby masjid to review my memorization.  Sadly, since arriving in Malaysia I’ve not really resumed, and I am afraid I may start regressing.  This is the kind of project that can be achieved through a little, regular & constant work every day.  I really should commit to something, even if it is as simple as one āyāh per day.  That would be better than none.

$PATH in Fedora 10

[basilgohar@beta ~]$ echo $PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin\
:/home/basilgohar/bin

Note: This is for future reference as I try to make some progress on an old project.  I do not think the last value is a default for Fedora, but rather, something added later.  If someone knows otherwise, please correct me!

Update: I’m starting to dislike fixed-width templates…corrected the last $PATH value so it will fit on my blog without overflowing into CSS “Elsewhere”.

Update 2: Ahhh!  WordPress!  WYSIWYG, not WIWIWYG (What I Want is Why You Get)!

screen is my new best friend

Bismillaahir Rahmaanir Raheem

Note: This is a post I started writing back in November, but only got around to updating now.

Alhamdulillaah, I cannot believe I’ve lived for so long without knowing about screen (Wikipedia article).  To put it as simple as possible, think of screen as a “tabbed” interface for terminals/shells.  This is a weak analogy, however, because it enables so much more than tabs do for browsers, for example.  Onwards for more details.
Continue reading “screen is my new best friend”

LDAP for authentication back end

Bismillaahir Rahmaanir Raheem

For a long time now I’ve been wanting to setup an LDAP back end for various Hidayah Online Network resources, especially the Columbus Dawah project.  This has become particularly pressing as the Columbus Dawah website has three primary public services – the blog, the forums, the school.  Additionally, in the future I want to roll out webmail (publicly) for volunteers & administrators within the project.  The problem with running these disparate services is that they all have their own authentication built-in, which means someone needs to register on each site independently to access any services that require one to be logged-in.  Therefore, a system that would unify user authentication for all services (i.e., LDAP) would save a lot of hassle for both the users and myself.

Continue reading “LDAP for authentication back end”

Concatenating compressed files

Bismillaahir Rahmaanir Raheem

I have my new server (aalimraan.hidayahonline.net – the one hosting Audio Islam) setup to log web accesses each day to its own file which is then bzip2-compressed.  This is convenient for a variety of reasons.

  • Firstly, I can easily access statistics for each day by processing the appropriate file.
  • B, I can see the relative activity on each day at a glance by seeing the size of the file, keeping in mind it’s only a rough estimate since compression can skew the results (e.g., many requests for the same, exact URL may compress much more than fewer, disparate URL requests, resulting in a smaller file and a seemingly less active day)
  • 3, by being compressed text files, they take up very, very little space.

Continue reading “Concatenating compressed files”

Hunspell & enchant dictionary/spell-checking file locations

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, while waiting for an answer an #fedora for the question of where the custom spellcheck files for hunspell, the unified spellchecking engine for Fedora 9 and upwards, reside, I discovered that they are stored in .config/enchant, which isn’t very intuitive, but makes sense after discovering that enchant is related to the Fedora hunspell integration.  Click to see the link that lead to this discovery.

Unmatched search folder in Evolution

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, I’ve (finally!) installed Fedora 10 on my laptop, but it’s not been without its bumps.  I cannot blame this on Fedora 10 nor the anything else related to the release.  But, in the end, I don’t have a DVD to install from, only the LiveCD (which I booted from my SD card reader), and that left me without a lot of packages and also without Ext4!  And now, after having copied my Evolution profile directory over, I discovered that the new version does (2.24.1) does not supported the “unmatched” search folder feature which I had come to rely on in recent weeks.  This is a real bummer as it all but nullifies the advantage of using search folders (for me, at least) in Evolution.  Alhamdulillaah, at least there’s a bug report open with one developer sympathizing.  However, a fix for it may not be forthcoming until the next release.

I think the time has come to take a look at Thunderbird again…

Fedora 10 released

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, Fedora 10 has been releasedTorrents are available.  I have all of my servers seeding now (including the newest one).  Read up on the new features to find out what’s new.

Well, what are you waiting for?  Just go download it already!

If you don’t want to use the torrent (although you should), then you can also download both the x86-64 build as well as the i386 one from my new server.  My server should be able to deliver the files as fast as you can grab ’em, in shaaʾ Allaah.  Let’s find out.  😉

(Famous last words, eh?)

rTorrent let me down :(

For seeding the Fedora 10 release, I am using rTorrent on albaqarah & aalimraan (my two fastest servers), but I had to fall back to using the standard bittorrent client on alfaatihah because rTorrent isn’t available for its platform (RHEL3) – at least, not through yum nor up2date.  rTorrent is great, in general, but it really let me down when I was trying to seed on aalimraan, because it kept crashing.

Continue reading “rTorrent let me down :(“

New server for Audio Islam

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, following a recommendation from a close friend, I decided to start leasing a server from 10TB.com for Audio Islam.  As the name implies, they are big on bandwidth, which is exactly what Audio Islam needs.  Needless to say, I’m thrilled at having a new beefy server to play with and to meet the current & future needs of this food of the Islamic audio-consuming masses.  And the best part is they installed Fedora for me!  How awesome is that!

Read on for the specs & details on the transition.

Continue reading “New server for Audio Islam”

Naïve integer primality calculator in PHP

Bismillaahir Rahmaanir Raheem

Alhamdulillaah, while reading about integers and, subsequently, prime numbers last night, I decided the time had come for me to write a primality calculator in PHP.  The test I use in my implementation is about as a naïve as one can possible get, but it was fun, nonetheless.

Interestingly enough, I discovered that there already exists a primality calculator for *nix-based systems – primes.  It comes with the bsd-games package for Fedora.  I assume the same is true for other distributions.  Mine isn’t quite as fast yet…but it does accept, optionally, one or two arguments. If there are two arguments, then it will calculate all primes starting from the first going until the second. If there is only one argument, it will calculate from PRIME_START (defined to be 2) through to the largest integer PHP can handle on your platform (usually the maximum value of a signed int on your machine).

There are loads of potential optimizations that can be performed, and this was just something written on a whim as a proof of concept. It seems to be accurate, however. The code, released under the GNU GPL v. 3.0, can be found below.
Continue reading “Naïve integer primality calculator in PHP”