If you like this site, I would appreciate a gift from my wishlist.

Shlomi Fish’s Homepage

About this Site

Hi all, and welcome to the personal website of Shlomi Fish. I am an Israeli software developer, and writer of stories, articles, essays and presentations.

You can explore the site using the navigation bar to the left. Alternatively, you can traverse it page-by-page using the arrows at the top. There’s also a news feed for what is new on the site, which is updated periodically.

Here are some of the things you can find here:

Humour

You can read large-scope humorous stories (novellas), which I have written. The first (and still my favourite) one is The Enemy and How I Helped to Fight It, which is a political satire, inspired by mid-eastern politics, but with a more universal message. I also wrote The One with the Fountainhead, an episode of the television show Friends which parodies the book The Fountainhead by Ayn Rand. I consider it my funniest piece yet. You can also read The Human Hacking Field Guide, which is a not-so-realistic realism about teenagers who are open-source enthusiasts, but with many jokes.

I have some other unfinished stories.

You can also read many shorter bits, including some factoids about people and things (Chuck Norris/etc.), a collection of original aphorisms and quotes and a large collection of fortune cookies by myself and others.

Articles and Essays

You can read various essays and articles I wrote about politics, software development and software management, the Internet, psychology, and ideology.

Open Source Software

Links to software I wrote, and some resources with links to other software. Knock yourself out!

Presentations

You can find several technical presentations I have written or maintain here. Especially recommended is the Perl for Newbies series introducing the Perl programming language to absolute beginners.

Puzzles and Riddles

Some pages with Mathematical problems, with Logic puzzles and with other riddles. Some of these pages require a MathML-enabled browser.

Computer Art

You can find my lame attempts for art which I prepared, in the art section which includes graphic designs, photographs, and one piece of music.

There are many links on the site, but I also concentrated many of them in one place. Who doesn’t like links?

Enjoy!

I hope you enjoy my web-site. If you do, please link here, recommend it to your friends, and drop me a line that you enjoyed it.

News

28-Dec-2012: What’s New on Shlomi Fish’s Homepage

Here are the recent updates for Shlomi Fish’s Homepage. Most of the work this time was done on the look, feel, and infrastructure of the site, such as the navigation menus, but there is still some new (and hopefully interesting) content. So without further ado, here is what is new:

  1. The main navigation menu to the right now comprises of most of the pages that were navigable and previously were present only in the section navigation menus. Since its HTML markup was quite excessive, I decided to load most of the content using an AJAX (= “Asyncrhonous JavaScript And XML” or “XMLHTTPRequest”) fetch of a JSON document, while keeping a smaller subset still usable as plain HTML for browsers with JavaScript disabled and for search engines and other web user agents.

    I made sure that the expansion state of the navigation menu is preserved between the pages. Moreover, the much maligned section navigation menus are now hidden by default, but can be enabled using the button and should remember their state between pages.

  2. There is a new HTML Tutorial in Hebrew under work. Currently, there is only one section, and some aspects of it are lacking.

  3. There is a new list of text processing tools and a list of networking clients in the software resources section.

  4. I added new quotes to the fortune cookies collection:

    • Yaakov: I LOVE YOU ALL WITH A GREAT HUGE LOVE
    • rindolf: Yaakov: HOW MUCH DOES YOUR GREAT HUGE LOVE COST?
    • Yaakov: It's on offer half price today.
    • rindolf: Yaakov: I WILL OFFER YOU 200,000 VIRTUAL DOLLARS FOR YOUR GREAT HUGE LOVE.
    • Yaakov: The regular price is free of charge.
    • rindolf: Yaakov: oh nice.
    • * rindolf buys Yaakov's GREAT HUGE LOVE.
    • rindolf: I LOVE YOU ALL WITH YAAKOV'S GREAT HUGE LOVE.
  5. The third version of my essay “Open source, Free software, and Other Beasts” is now live. It was converted from DocBook 4 to DocBook 5 and greatly enhanced.

  6. Also new is the countdown program which is similar to the UNIX sleep command, only displays the amount of time remaining.

  7. There’s a new and open source solver for the so-called “Binary Puzzles”. It is still incomplete.

  8. There is a new geek song parody (under work) titled “Can I SCO Now?” sang to the music of Jennifer Love Hewitt’s “Can I Go Now?”:

    Can I SCO now?
    Sue who you wanna sue,
    it doesn't matter anyhoo,
    it's time to litigate.
    Can I SCO Now?
    Say what you wanna say,
    we don't care anyway,
    we're going to inflate.

    Can I, can I, SCO now….

  9. I now mirror The Fountainhead’s parody “The Fountainhead Starring Skull Force”, whose original link went offline, but which I was able to find a mirror of. Enjoy.

  10. There are now a page with some links against Java and a page with some links against “SOAP”.

  11. Support for the MathJax JavaScript library was added to the pages in the MathVentures section enabling most modern JavaScript-enabled browsers to pretty view the mathematical formulae there.

  12. There are some new additions to the original Aphorisms and Quotes page:

    The English Wikipedia: now you don’t see it - now you do.

  13. I restored the display of the images in my “There are Too Many Ways to Do it” lightning talk.

See comments and comment on this.

03-Oct-2012: What’s New on Shlomi Fish’s Homepage

Here are the recent updates for Shlomi Fish’s Homepage. The first item of note is that I implemented an automated test suite for the site, with a test for lack of trailing whitespace, and a spell checking test (powered by Text::Hunspell and Hunspell). The many problems pointed by these checkers were fixed, resulting in a very large patch to review this time.

Aside from the spelling corrections, here are the items of interest:

The meta section now has a section navigation menu.

I added the incomplete geek parody song “I’m the Real Tim Toady”:

May I have your attention, please?
May I have your attention, please?
Will the real Tim Toady please match up?
I repeat: will the real Tim Toady please match up?
We’re going to have two problems here.

jnoakes’ page about Graduate Student Jokes, which I have enjoyed, and which has gone offline, has been restored on the site:

You know you’re a grad student when…

  • you can identify universities by their internet domains.
  • you are constantly looking for a thesis in novels.
  • you have difficulty reading anything that doesn't have footnotes.
  • you understand jokes about Foucault.
  • the concept of free time scares you.
  • you consider caffeine to be a major food group.
  • you've ever brought books with you on vacation and actually studied.
  • Saturday nights spent studying no longer seem weird.

A page with a List of Text Processing Tools has been added to the software resources sub-section.

There are new additions to the Aphorisms and quotes collection:

If it isn’t in my E-mail, it doesn’t exist. And if the whole world says one thing and E-mail says another, Email will conquer

(Said to me in a private conversation by an Israeli Linux enthusiast.)

There are also some new quotes in the Chuck Norris Facts page:

Chuck Norris is the reason why the Knights who until Recently Said “Ni”, are no longer saying “Ni”.

Finally, there are some new fortune cookies:

Enjoy!

See comments and comment on this.

14-Jun-2012: New and Updated Material on My Homepage

Here are the recent updates for Shlomi Fish’s Homepage. There are quite a few changes this time.

The humorous document “It’s not a Fooware - it’s an Operating System.”, mostly written by me, was restored from the perl.net.au wiki which is currently down:

Lots of people heard Emacs haters complain that “Emacs is not an editor - it’s an operating system” or something along these lines. So here we're trying to concentrate other such programs that are no longer limited only to their original purpose, but rather expanded to cover lots of other stuff. So you'll know that Emacs is not alone.

I also added a a new aphorism:

We agree. But do we agree to agree?

There are some new Factoids:

If the mountain will not come to Muhammad, then Muhammad will go to the mountain. If the mountain will not come to Chuck Norris, then the mountain will suffer Norris’s wrath for not complying with his whims.

And there are also some new fortune cookies:

  • Su-Shee: SO I TURNED TO YOU FOR HELP IN TIMES OF DESPERATION…
  • Botje: desperation is for wimps
  • anno: prosperation?
  • Altreus: deprecation is an outdated concept and we prefer not to do it
  • Su-Shee: let’s deprecate deprecation.
  • alpha--: agreed.
  • alpha--: oh wait.
  • Su-Shee: that would be a deprecation
  • rindolf: Who will watch the watcher?
  • rindolf: Who will deprecate deprecation?
  • Su-Shee: shouldn’t someone deprecate the deprecator in that case?
  • * rindolf deprecates the deprecator who is deprecating deprecation.
  • Altreus: that's OK, it's not deprecated yet

I found many typos in the fifth part of the Perl for Perl Newbies series before and during giving the talk at the Tel Aviv Perl Mongers and also prepared some notes for it in Hebrew (which can be found in the series’s front page).

The Transcript of the Perlcast interview with Tom Limoncelli, about his book Time Management for System Administrators has been restored from the currently offline perl.net.au wiki:

Josh: Getting back to where we had started on that planning your day at the beginning of the day, before you check your email. You claim there, that whenever you're prioritising your activities, you really only need three categories and not, you know, a top-ten list, or anything like that. Could you explain that a little?

Tom Limoncelli: that comes from the fact that I used to try to really be specific about the priorities of my action items. So I put something in my to-do-list, and I'd say well, you know I'm ranking their importance from 0 is not important, and a 100 is the world is going to explode if I don't do it right now. And I spent so much time calculating "Wow, is this more like a 63 or a 67, is it a 67? Wow!". And I just spent so much time trying to get an exact priority. In some cases, the task would have been done already. You know I've spent too much time prioritising.

I'm not sure where I picked this up, but someone recommended three priorities: A - it's due today; B - it's important; and C - everything else. Generally, if it's a day where I have any A's at all - that's all I'll be working on. And the way projects go, I'm generally working on that for the whole day. So that's sort of the exception. Most of the time I'm working on B's, which are things that are important, and C's are sort of those would-be-nice-kind-of-things.

And the nice thing about breaking it into this a simple A, B, C priority scheme is that first of all, you're spending less time picking your priority. And secondly, when you're planning your day, in that 5-minute planning period, you can look at your tasks and say "You know, I wanna work 8 hours today, I have one hour of meetings, so I'm down to 7 hours", and then you can look at your tasks and say "Is this more than 7 hours worth of work?". Because it's written, I can start actually doing this kind of planning, and say "That's more like 14 hours worth of work, so those C priorities and B priorities - I'm gonna move them to the next day's to-do-list." Or maybe, OK, I have time for my A's and my B's and the C's get moved.

The third version of my essay, “The Case for Drug Legalisation”, is now live, with several major improvements. They are in large part, thanks to someone who commented on my essay, and allowed me to use their text, and who chose to remain anonymous.

I have set up project pages for MikMod, a module files player, which I now maintain, and for Website META Language, a sophisticated HTML preprocessor, which I have also been maintaining and recently released its 2.2.0 version.

Also in the software section is a How to Contribute to my Projects sub-section with a concentrated and ongoing “HACKING” document.

And, naturally, there are also many smaller enhancements, such as new links, fixes for broken links, new <meta name="description" /> tags, and corrections of typos. I’ve also moved the site’s version control repository from a Subversion repository that required a username and password to access to a publicly-accessible Mercurial repository. More details can be found on the Site's Source Code page.

See comments and comment on this.

19-Feb-2012: Fifth Part of Perl for Perl Newbies and New Humour Items

Here are the recent updates for Shlomi Fish’s Homepage. I know I have not posted an update to this blog in a while, and in part it’s due to the fact that I have not done as much work on the site as I have before the previous update. But there is still some new things to look forward to.

There are some new items on the original aphorisms page:

Sophie: I’m hungry today.
Jack: well, wait until tomorrow - maybe this feeling will pass.

I’m now mirroring the “English is a Crazy Language” bit I found somewhere.

The fifth installment in the Perl for Perl Newbies series of presentations is now available online. This part covers good programming practices such as using a version control system, writing automated tests, and using accessors for objects. As with the previous parts, this talk is licensed under the Public Domain/CC-Zero.

There are new factoids in the factoids collection:

Larry Wall can make shit up, and the computer will understand what he means.

There are also many new UNIX-like fortune cookies:

  • buu: PKRUMINS
  • rindolf: pKrumins
  • pkrumins: BYY
  • rindolf: pkrumins: BUU
  • rindolf: pkrumins: buu is back.
  • pkrumins: rindolf: i know
  • rindolf: pkrumins: he said he was close to disappearing.
  • pkrumins: WHAT
  • pkrumins: buu, is that true
  • rindolf: pkrumins: he was sick.
  • pkrumins: HE WASNT
  • buu: =[
  • buu: I was
  • pkrumins: HOW
  • buu: Genetic defects!
  • pkrumins: OH NO
  • pkrumins: OH NO NO NO
  • mauke: substance abuuse
  • buu: Owch
  • buu: That joke almost qualifies as abuse
  • mauke: now that I've hurt mst and buu, my work for today is done
  • pkrumins: you still havent hurt me
  • rindolf: mauke: hold on! You haven't hurt me yet.
  • buu: haha
  • * rindolf is hurt that mauke didn't hurt him.
  • rindolf: Oh wait.
  • mauke: just as keikaku.
  • rindolf: mauke: OK, now your work for today is done.
  • pkrumins: NO

I have added a review of Kent Beck’s Test Driven Development: By Example to the recommended books page.

The ABC Path game's generator module is now being mentioned in the Games ABC Path page, and the solver and generator were also ported to JavaScript.

More prominent editors and IDEs were added to the editors and IDEs page.

And as usual, there are many additional links on various pages of the site.

See comments and comment on this.

23-Jul-2011: New Translations of Stories

Here are the recent updates for Shlomi Fish’s Homepage. The first highlight is that I’ve gone over the site and converted most ASCII single quotes and double quotes I could find to their Unicode equivalents. In the process, I corrected many typos, XHTML validation problems, and other issues.

There are new fortune cookies:

The worst way to waste your time is to never waste it.

There’s a translation of the of Human Hacking Field Guide to Written Arabic. This was done by Vieq - thanks!

The Hebrew translation of the screenplay Humanity - the Movie is now complete.

Furthermore, the XML-Grammar-Fiction page was enhanced with examples and links.

There’s a new Test.pm to Test::More partial converter, which may be of interest to programmers maintaining legacy Perl code.

See comments and comment on this.

27-May-2011: Translations of Stories to Hebrew (For the Alternative Book Week)

Here are the recent updates for Shlomi Fish’s Homepage. Most of these are ongoing translations of various English stories to Hebrew. These were done in preparation for the “Alternative Book Week” in Tel Aviv University (see its Facebook page). It is going to take place on Tuesday, 31 May 2011 between 09:30 and 16:30 in Tel Aviv University, next to the Gilman building, the department of Humanities. Several independent writers are going to read from their prose there, including me. You are welcome to attend, listen to the participating writers, and provide us with welcome support and input. Hope to see you there!

There’s a new joke in the aphorisms and quotes page:

In Soviet Russia, cats own you. No, wait! Cats own you everywhere.

I posted the first part of my Selena Mandrake - The Slayer screenplay to its place in FanFiction.net where one can rate it and post comments. There is some new text in the ideas for the future document.

I started preparing a Hebrew translation of my Humanity - The Movie screenplay.

There are two new fortunes in fortune collection.

We now mirror the web parody “Uncomfortable Questions: Was the Death Star Attack an Inside Job?” (via Websurdity and Debunking 911).

The various screenplays in English in the stories section now have better capitalisation, punctuation and grammar, and their visual style was also improved. There are also many grammatical corrections to the story The Human Hacking Field Guide and a lot of progress was made in its Hebrew translation.

The XML-Grammar-Fiction page now contains coverage of Screenplay-Text and Screenplay-XML, as well as examples for the grammars and their outputs.

Enjoy!

See comments and comment on this.

13-May-2011: “Selena Mandrake” and Improvements to Other Stories

Here is what’s new on Shlomi Fish’s Homepage since the last update. It’s been a month and there are many major changes.

A new work-in-progress screenplay titled Selena Mandrake - The Slayer can be found in the stories section. This is a supernatural dramedie, that is a parody/tribute/spin-off of Buffy the Vampire Slayer and some other works of fiction and non-fiction. I have a pretty good roadmap for what I’d like to write there so I hope to get the first draft soon.

Selena: This reminds me. I really should update my Mandriva system at home. I have not in several days, now. And to think I originally had my friend Aaron install Mandrake Linux for me, because I thought it was cool that it was called the same as my last name.

Jessica: Heh, maybe you should become Selena Mandriva now.

Jonathan: Or Selena Mageia.

[ Selena bursts out laughing. ]

Selena: That sounds like a name of a vampire slayer… or a vampire.

Jonathan: Or both.

Selena: Yeah. I told you about how I was nicknamed “Puffy” and then “Buffy” during one summer camp, right?

Jessica: Yes, many times.

Selena: Yeah, I found it amusing at the time. For a while afterwards, I insisted that my friends call me “Buffy” until I realised it was silly, and reverted back to “Selena”.

I’ve also began translating the second version of my novella The Human Hacking Field Guide to Hebrew. One can find the ongoing Hebrew translation and its Fiction-Text source, under CC-by-sa - same licence as the English original. In addition, I can say that the story is being translated to Modern Standard Arabic in the OpenDocument format by an Egyptian enthusiast of open-source software, and more translations will be welcome.

In addition to all that, version 7 of my novella The Enemy and How I Helped to Fight It, in Hebrew and English, with many improvements is now available online. I especially would like to thank Miriam Erez Translations for providing some copy-editing work.

Moreover, I explicitly marked many of the the works of fiction on the site, the essays, and the software resources with a Creative Commons licence. Share and enjoy!

There are some style tweaks, I’ve documented the use of the EvilPHish emblem, and there are some new fortune cookies:

  • rindolf: Mithaldu: I think most contemporary T.V. kinda sucks.
  • rindolf: Mithaldu: it seems very phony.
  • Mithaldu: rindolf: same, i haven’t actually switched on my tv in five years
  • rindolf: I prefer a YouTube video of a kitten riding on a turtle.
  • rindolf: Mithaldu: :-)
  • Mithaldu: :D
  • rindolf: Mithaldu: yes.
  • rindolf: Mithaldu: there is one, BTW.
  • Mithaldu: oh i do not doubt that
  • rindolf: Don’t know if it’s authentic.
  • rindolf: I saw a friendly cat today, and he purred after I scratched his head.
  • rindolf: I like Friendly cats.
  • rindolf: I think lolcats are very subversive.
  • rindolf: Or were.
  • rindolf: “Ceiling cat is watching you”
  • Mithaldu: cats are the definition of subversive
  • Mithaldu: they adopt you
  • rindolf: Mithaldu: heh.
  • rindolf: In Soviet Russia, cats own you!
  • rindolf: In Soviet Russia, cats are your master!
  • rindolf: Well, in Soviet Russia and everywhere.
  • kent\n: rindolf: you got it backwards.
  • kent\n: In soviet russia, cats are actually your pets.
  • Mithaldu: hahaha
  • rindolf: kent\n: heh.
  • rindolf: kent\n++
  • rindolf: I feel better now.
  • rindolf: Empowered but calm.
  • rindolf: Thanks to the cats jokes.
  • Mithaldu: world healing by cat jokes
  • rindolf: Hopefully, I’ll sleep well tonight.
  • kent\n: Next on the agenda. DICK JOKES!
  • rindolf: Mithaldu: cats are good for healing I think.
  • rindolf: kent\n: NO!!!!!
  • kent\n: ( don’t worry, this won’t take long )
  • Mithaldu: yes, as long as you do not own cables
  • Mithaldu: kent\n: you mean it won’t BE very long
  • Mithaldu: hurr hurr
  • rindolf: kent\n: I’ve got 99 problems but kent\n ain’t one.
  • kent\n: ;)

Hope you enjoy the new stuff on the site and stay tuned for more.

See comments and comment on this.

Old News Items