Inside HacDC Web/Twitter Portal Update

What’s new:

Inside HacDC has been updated such that if @insidehacdc is following you and you direct message @insidehacdc then your message will appear on the web portal.

In case you don’t already know, “Inside HacDC” is a location-based (of sorts) web application portal to Twitter that answers the question: “What are you doing at the HacDC space right now?”

The web portal, located at , is accessible from anyone that is connected to the HacDC space LAN. Therefore anyone with a laptop, connected to the HacDC LAN, can post to this Twitter account without using their Twitter client. What you post, will appear on

We created the web portal you can follow and get status tweets from people at HacDC space. Also if you’re at the HacDC space you can tell people know how long you will be at the space and/or what exactly you plan to be working on. The idea is to attract people to drop by the space and increase our space usage.

Next time you are at the HacDC space and you’re connected to our HacDC LAN, please access and post what you are working on or what ever is on your mind.

Be sure to tell your friends to follow @insidehacdc so they can follow what is going on at the HacDC space.

If you are interested in extending the functionality or capabilities of this Twitter gateway, please join the Software Projects forums on our Projects Server located at and feel free to post to this software project forum “Project InsideHacDC”

Posted in Uncategorized

Programming Challenge #3

This third challenge is adapted from an idea presented by Douglas Hofstadter in his book Metamagical Themas. At the end of this post, you can find a an embedded viewer to some helpful information, contained in Chapters 1 and 2 of the Metamagic Themas book. You are allowed to use any language, unless the challenge specifies a specific language that you are to use. Post your source code, compiler version, and OS as a comment.


1) A self-referential sentence is a sentence that describes itself in some manner.

2) The following sentence is an example of a self referential sentence (note that certain letter counts are missing): “This sentence has three a’s, two c’s, two d’s, nineteen e’s, six f’s, two g’s, five h’s, ten i’s, two l’s, twelve n’s, nine o’s, five r’s, twenty six s’s, sixteen t’s, four u’s, four v’s, eight w’s, four x’s, and two y’s.”


1) A function f1 that fills in the the blank in the following sentence: “This sentence, which is also the solution to HacDC’s third programming challenge, has _____.”

1a) f1 must fill in the above blank, with positive integer alpha-numeric phrases related to each letter in the sentence.

1b) f1 may generate a sentence that can contain missingle alpha-numberica phrases, if for example one or more letters are not contained within the sentence.

1c) f1 must return a self-referential sentence.

2) A function f2 that takes as input a self-referential sentence,that was generated by f1, and verifies the validity of the self-referential sentence


Write a program that uses f1, verifying the generated self-referential sentence by using f2, and then displays the valid self-referential sentence.

Language: Any

Difficulty: Metamagical

Posted in Uncategorized

Circuit Challenge #1

This is a series of blog posts that offers digital or analog circuit challenges as a diversion. You are allowed to use any Micro-controller and language, unless the challenge specifies a specific Micro-controller or language that you are to use. Post your circuit diagram, component list, source code, and describe what tool chain you used, as a comment. Any questions, ask via comment.


Create a circuit, using an Arduino, that determines the past ambient sound level of a room, by training itself continuously, using the last 1 minute of previous sound data. If a sharp increase in the current sound level is detected then an LED is lit during the increase in sound level; when the increase in sound level dissipates back to the previous ambient sound level then the LED should turn off. There should be a pushbutton to reset the training.

Microcontroler: Arduino

Components: Any

Language: Any

Tool Chain: Any

Posted in Uncategorized

Programming Challenge #2

This second challenge, based upon simple concepts such as encoding and decoding information, will also test how you deal with the psychological horror of the unknown (and possibly, the unknowable) ;) You are allowed to use any language, unless the challenge specifies a specific language that you are to use. Post your source code, compiler version, and OS as a comment.


Some definitions:

a) The root node of a tree is the node with no parents. There is at most one root node in a rooted tree.

b) A leaf node has no children.

c) The height of a tree is the length of the path from the root to the deepest node in the tree. A (rooted) tree with only a node (the root) has a height of zero.

d) A binary tree is a tree data structure in which each node has at most two children.



1) A function named f1 , which will take a rooted binary tree structure and encodes the binary tree structure and its values into a single dimension array, which is then returned.


2) A function named f2, which will take single dimension array (encoded by f1) and converts the array into a binary tree structure, which is then returned.


3) A function named f3, that will return a randomly generated rooted binary tree structure, such that the binary tree structure has:

3a) One root node

3b) Every node, other than a leaf node, will have randomly, one or two children

3c) Each node, including the root and leaf nodes, will randomly contain one of the following values: 1,2,3,5,7

3d) The height of the tree is greater than zero and less than six.



Write a program that uses the output of f3 as input into f1, which is then used as input into f2.

Your program must show that the output of f2, its structure and the values of each node, matches the output of f3.


Language: Any

Difficulty: In the Mouth of Madness

Posted in Uncategorized