Hayward’s Free Intranet Employee Photo Directory

Hayward’s Free Intranet Employee Photo Directory is the world’s first open source employee photo directory, and is free software, made available to you under your choice of the MIT and GPLv2/v3 licenses. It is an Ajax application powered by Django on the backend and jQuery on the front.

A screenshot of Hayward\s free intranet employee photo directoryIt includes:

  • Ajax design intended to crowdsource information from within your employees.
  • Search by name, skill, department, title, and tagging.
  • Status updates.
  • Local time clock for people and organizations who are not in the visitor’s time zone.
  • A simple, powerful, usable, unobtrusive user interface and a good user experience.

You are invited to download the Django project:

Version tar.gz tar.bz2 zip
1.1 directory1.1.tar.gz directory1.1.tar.bz2 directory1.1.zip
1.0 directory1.0.tar.gz directory1.0.tar.bz2 directory1.0.zip
1.0b2 directory1.0b2.tar.gz directory1.0b2.tar.bz2 directory1.0b2.zip
1.0b directory1.0b.tar.gz directory1.0b.tar.bz2 directory1.0b.zip

The Data Mine

Famous Software Download

The Data Mine is a search engine designed to give users an unusually powerful interface. It is designed around human-computer intelligent interaction (making the computer a tool so humans can use their intelligence). It divides the screen into two halves: one lets you find all the instances of your query’s keywords, and the other lets you look through a highlighted version of the results you choose.

The Data Mine
If you’re not sure which version to download, I suggest version 2.0.

License: This project is free software, available under your choice of the Artistic, GPL, and MIT licenses. If you like this software, you are invited to consider linking to CJSHayward.com.

 

Version RedHat RPM Unix/Linux tar.gz Unix/Linux tar.bz2
2.0, development datamine2_0.tar.gz datamine2_0.tar.bz2
1.0, development datamine-1.0-1.i386.rpm datamine1_0.tar.gz datamine1_0.tar.bz2
0.0, stable datamine-0.0-1.i386.rpm datamine0_0.tar.gz datamine0_0.tar.bz2
0.0 beta, development datamine-0.0b-1.i386.rpm datamine0_0b.tar.gz datamine0_0b.tar.bz2

 

CJSH: A Python 3 Based Experimental, Programmable Linux / Unix / Mac Shell

TL;DR

curl http://CJSHayward.com/wp-content/cgi/download-cjsh.cgi > ~/bin/cjsh && chmod 0755 !#:3

What is cjsh/CJSH?

cjsh, developed by CJSH (Christos Jonathan Seth Hayward) is an experimental Unix/Linux command-line shell, designed to search for files for the user instead of making the user search through directory heirarchies manually, and allow much of the power of Python as its command-line scripting language.

It can be downloaded, as in the TL;DR section above, and can be initialized (this takes some time, but it pays off in usage), by running:

dev ~/directory $ cjsh --update
Creating image of file heirarchy; please wait.
This may take some time; it may be worth the wait (but sorry...)
Note that the following works well in nightly crontab:

    cjsh --update --silent

The image is complete. You are free to use cjsh.
dev ~/directory $ cjsh
One moment, please; trying to load data...
Loaded.
Welcome to cjsh. Please visit CJSHayward.com! Hit '?' for help.
--
user @ dev.localdomain - Tue Oct  2 17:00:43 2012
/Users/user
cjsh> [TAB] for index in range(10):
----> echo %(index)d
----> 
0
1
2
3
4
5
6
7
8
9
user @ dev.localdomain - Tue Oct  2 17:02:24 2012
/Users/user
cjsh> 

Those echo statements are not built into the (cjsh) shell. They come from an os.system() statement, and it is possible in this way to interleave shell commands and Python, with Python variables accessible to the shell commands, at least at a basic level.

What are you waiting for? Try it!

License: This project is free software, available under your choice of the MIT and GPLv2 licenses. If you like this software, you are invited to consider linking to CJSHayward.com.

CFL: A Truly Unique Distributed Version Control System

TL;DR

curl https://CJSHayward.com/wp-content/cgi/download-cfl.cgi > ~/bin/cfl && chmod 0755 !#:3

What is CFL?

You’ve tried CVS, SVN (Subversion), Git, Mercurial, and others. Isn’t it time to try a little more green of a distributed version control system?

CFL is the first green distributed version control system (DVCS). Inspired by “twisted but brilliant” compact fluorescent lights, CFL offers full DVCS services at a download weight of a very green file size of just under 8k.

Download it now!

CFL in action

dev ~/directory $ cfl commit

CFL can be turned off for efficiency purposes, and comes turned off by
default.

Right now CFL is turned off.

To turn it on, type:

cfl on

Thank you for using CFL!

dev ~/directory $ cfl on

You have turned CFL on. Please remember to turn it off when you have finished
using it.

Thank you for using CFL!

dev ~/directory $ cfl commit

CFL needs some time too warm up after you have turned it on. Please try again
in a few seconds.

Thank you for using CFL!

dev ~/directory $ cfl commit

CFL needs some time too warm up after you have turned it on. Please try again
in a few seconds.

Thank you for using CFL!

dev ~/directory $ sleep 5; cfl commit

To encourage efficient use of resources and a green footprint in terms of bytes
taken by commits, CFL has disabled editor-based commit messages in favor of
command-line inline commit messages, e.g.

cfl commit -m 'Last commit before adding experimental feature.'

Please try again using an inline commit message.

Thank you for using CFL!

dev ~/directory $ 

Testimonials

“Whoa, CVS is so much better than CFL it’s not even funny.” -Jane Q. Hacker

“Every programmer needs time to percolate, and slow down enough to be productive. That is why I consider CFL an essential programmer productivity tool.” -John Q. Hacker

“Every so often you run across a tool that changes the way you think about technology. CFL is that tool.” -A former environmental activist

“How did you get in here? Who let you past security? Guard!” -A Fortune 500 CTO

Apps and Mobile Websites for the Orthodox Christian Smartphone and Tablet: Best iPhone, iPad, Droid, Samsung, Android, Kindle, and Blackberry Mobile Websites and Apps

Apps that are directly useful for ascesis

There are not many apps formally labeled as Orthodox Christian, but there are some apps and mobile websites that can be used in the pursuit of the spiritual discipline of ascesis. Among these apps are:

Ancient Faith Radio
The value of this app goes more or less without saying, but there is one caveat.

I visited a monastery whose rules included not playing recorded music, and I saw outside the nave an old man, with headphones on, listening to Byzantine chant, moving to its beat and off in his own world.

It struck me, if anything, as an act beneath the dignity of an old man. Being off in your own world is not good for anyone, but there are some things tolerated in youth that are just sad in a mature adult. And as best I can surmise the rule was not a rule against certain types of prohibited music (though acid rock would be a worse violation), but using technology to be off in your own world in the first place. And it is because of this that I rarely listen to recorded liturgical music: it is easily available, but there is something about it that is simply wrong. (And this is not just a matter of how digital music sounds to someone with perfect pitch.)

I know of nothing better in terms of Orthodox Internet radio than Ancient Faith Radio, and really have very little if anything to say how Ancient Faith Radio could better do the job of a radio station (or, as the case may be, two stations providing access to lectures, sacred liturgical chant, and access to past broadcasts). But I have some reservations about why Orthodox need to be doing the job of a radio station—as, for that matter, I have a cautious view of my own website. The ironically titled The Luddite’s Guide to Technology lays out the attitude where a radio station with crisply rendered sacred song available on one’s iPhone or Android should be used that much.

CJSHayward.com/psalms/?mode=mobile (bookmark for iPhone, iPad, Droid, Samsung, Android, Kindle, and Blackberry; tablet users may prefer CJSHayward.com/psalms/)
The Psalter is the greatest prayerbook of the Orthodox Church. This page selects a Psalm at random, until you click a link and it provides another Psalm at random. They seem to be helpful, chiefly because the Psalter is helpful.

JonathansCorner.mobi (bookmark for iPhone, iPad, Droid, Samsung, Android, Kindle, and Blackberry; tablet users may prefer CJSHayward.com)
I hate to hawk my own wares, but I’ve put quite a lot into the two sites linked above, and perhaps reading them may be of some use.

Your smartphone’s built-in note-taking application, or Momento for iPhone or iPad (with many diary applications for Droid, Samsung, and Android, and perhaps other offerings for other devices.
Some monks in the ancient world kept a notebook, and something to write with, by their belts. They would stop at intervals to write down their thoughts: not brilliant ideas to think about, but take moral stock of where they were and how they were doing.

Such a practice was not mandatory in the ancient world and to my knowledge no one requires it now. However, since I started doing it, I have besides some very stupid struggles come to a higher level of awareness, of nipsis, of how much goes on in my head and heart that is simply silly.

If you do this, it would be better to have an application that stores your information locally in your smartphone instead of uploading it to the cloud where others may more easily find it. That is why I don’t recommend Evernote for this purpose; it is a very attractive app in many ways, but not as strong on privacy as your smartphone’s built-in note taker or a diary app.

The Kindle app for iPhone, iPod Touch, Droid, Samsung, Android, and Blackberry (not to mention PC’s)
I wouldn’t want to denigrate paperback books, but you can buy some of the greatest classics on Kindle: the Orthodox Study Bible (an edition I discussed in my Orthodox bookshelf), the Philokalia, and My Orthodox Prayer Book. Plenty of lesser works are available too: see my own Kindle offerings at CJSHayward.com.

Wants and Needs
Having this app is a want and not a need, but there are legitimate wants.

This is a simple but very well-executed app to help appreciate what are our wants, what are our needs, and what we have to be grateful for.

Apps that are generally useful

G.K. Chesterton said, “There is more simplicity in the man who eats caviar on impulse than the man who eats grape-nuts on principle.” And there is more Orthodoxy in just using an iPhone as a tool for being human than going to the app store and looking for apps endorsed as religious.

Do a Google search for best iPhone apps, for instance, and you will find a wealth of app recommendations. And many of these can work as a support for an Orthodox life of ascesis: Orthodoxy did not invent the pot, the belt, or the hammer, and yet all of these can have a place. Not, perhaps, the same place as a book of prayers, but a legitimate place. Secular tools and activities are holy when they are used by a life out of ascesis. And there are some excellent apps; among them I would name PocketMoney, a personal finance tool;mSecure, a password manager; Things, a to-do list; GPS MotionX Drive, a navigation tool; Flashlight, which lets you use the LED as a flashlight; and the main Google app, a search app optimized for the web by the company that defined search. All of these have their place.

But there are many apps on those lists that are unhelpful. Games and entertainment apps are meant to kill time, which is to say that they are meant to provide a convenient alternative to the spiritual discipline that tolds monks, “Your cell [room] will teach you everything you need to know.” And I suggest asking, in considering an app, “Does this support ascesis?” A to-do list helps with nuts and bolts of a disciplined life. An app to show a stream of new and different restaurants feeds gluttony. It is fine for Orthodox Christians to use apps that are not branded as Orthodox or ascetical, but the question “Does this support ascetical living?” (which is in no way a smartphone-centric question, but a basic question of Orthodox life, to be settled with one’s priest or spiritual father perhaps), applies here.

A closing note: When do you call 9-1-1 (or 9-9-9)?

There is a good case to be made that the most important number for you to be able to call on any phone is 9-1-1. However, this does not mean that your first stop in dealing with boredom is to call 9-1-1 to just chat with someone. It may be the most important number for you to be able to call—and the only number that may save your life—but using 9-1-1 rightly means using it rarely.

I would not speak with quite equal force about smartphones, but I would say that if you really want to know how to use your smartphone in a way that supports Orthodox spiritual discipline, the biggest answer is not to use one more app or one more mobile website. It is to use your phone less, to visit people face to face instead of talking and texting, and to use apps a little more like you use 9-1-1: to get a specific task accomplished.

And this is without looking at the problem of an intravenous drip of noise. The iPhone and Android’s marketing proposition is to deliver noise as an anaesthetic to boredom. And Orthodox use of the iPhone is not to deliver noise: all of us, with or without iPhones or Android devices, are to cultivate the ascesis of silence, and not make ourselves dependent on noise. And it is all too easy with these smartphones; they are designed so that it is too easy.

The Fathers did not say “You cannot kill time without injuring eternity,” but on this point they could have. Killing time is the opposite of the ascesis of being present, of being attentive of the here and now that God has given us, and not the here and now that we wish to be in or the here and now we hope to get to. Contentment and gratitude are for here now, not what we imagine as better conditions. We are well advised to live astemeniously, and that is where the best use of iPhone and Android smartphones and tablets comes from.

Smartphones have many legitimate uses, but don’t look to them for, in modern terms, a mood management tool.

Ajax without JavaScript or Client-Side Scripting

The Ajax application included in this page implements a legitimate, if not particularly useful or even usable, “proof of concept” with partial page updates based on server communication. It accepts a string, and then lets you click on one of a few buttons to see that string styled the way the button is styled, appending a link from the server. But it demonstrates one interesting feature:

It works just the same if you turn off JavaScript and any other client-side scripting completely.

How does it work?

Ajax partial page updates don’t need to manipulate a monolithic page’s DOM; the reason browser back buttons work in Gmail is an invisible, seamless use of iframes that create browser history. And not only can you do partial page updates via iframes without DOM manipulation, you can do it without client side scripting.

The source code to the server is available here, but it is simple, stateless, and doesn’t really hold any secrets; it could be fairly well reconstructed simply by observing what is going on in the demo app above. The basic insight is that a webpage that talks to a server and makes partial updates can be made by the usual Ajax tools, but at least a basic proof of concept can be made with old HTML features like frames and iframes, links and targets, forms, and meta refresh.

This Ajaxian use of old web technologies may or may not produce graceful alternatives to standard Ajax techniques, either alone or in a “progressive enhancement”/”graceful degradation” strategy, but it may allow graceful degradation to be just a little more graceful, and JAWS might at least know when something on the sceen has changed. But here is a proof of concept that it is possible to implement a webapp with partial page updates and server communications that works in a browser that has JavaScript and any other client-side scripting turned off.