Posted
on May 29, 2009, 10:20 pm,
by Daniel,
under
inspiration.
Twitter is blogging for the masses.
Except, there is no requirement to write anything long, or that what is written should be of any great value. They are throwaway posts to be lost in the ether. Likewise, myspace etc.. were somewhat like websites for the masses. The user’s page on the web.
So can other geek-only things can be brought to the masses?
Criteria to identify suitable things:
- a thing that expresses a person’s identity on the web, allows them to communicate, voice their ideas
- and yet is geeky: requires high levels of technical skill, or great investment in time to use
Bringing those things to the masses:
- make the user generated content throwaway. Quick to create (with many avenues for creation, e.g. mobile devices)
- make the concept watered down and very easy to use, following the conventions of other systems
- easy to use “following” mechanic. Social links, a “friends” or “contacts” system.
- user followed content is easily accessible. All content from friends in one place. *Readable* from many avenues.
Ideas for things:
- forums? A simple way of mass discussions? Can they be made any simpler? (somehow simpler even than the Yahoo Answers types of things…)
- does a twitter-of-video exist? One would expect so… But is it as simple to use as Twitter? How can it be improved? (especially the act of creating videos – ease of use and different avenues…). Video blogging for the masses.
- a stat gathering system for social network websites. Would have to use embedded images or something, so stats would be limited. If the visitor uses the system too, maybe can get actual names…
Other thoughts:
- With Twitter, the throwaway nature of content is expressly enforced with the character limit. Anyone can achieve one line of text, nobody feels left out. No one can feel that their comments are inferior, with everyone limited in the same way.
- text based is the most common form of user generated content as everyone can write. Maybe that is required for mass appeal.
- Voice and video? In the real world, these are better than text, but in the world of computers they require the appropriate hardware, which may be difficult to set up. Thus they do not have *mass* appeal (although numbers could still be high).
- Surely, one day there will be a watershed when every gadget has a microphone and camera built in. When that day comes, there should be a lot of new possibilities. Then again, maybe a “killer app” is required to drive the gadget manufacturers. Something that’s amazing to use, but requires a camera. It’s a bit of a chicken and egg scenario. But progress will continue in its usual schizophrenic spurts.
- it is implied that there would be many avenues for creation or consumption of content. The main reason for this is so the user can use the avenue they are most comfortable with.
- different avenues, along with convenience, may be tied in with ease of use: content creation using a device the user is more familiar with, or a device that is designed for ease of use. A telephone to make voice posts. Updates by txt msg.
- there’s an interesting google talk about game mechanics in software
- it’s all simply about making technology more accessible
- Creation and consumption on a clear one-to-one basis. No overwhelming friend-me-friend-you malarkey, no interactions with non-friends, and thus no spam and less cruft.
This is an abandoned game project. I think it’s quite pretty :) Collision and movements are horrible though. Source is included but it is a mess.
Download: http://xzist.org/temp/WaterSky.zip
(windows only)
Requires some kind of shader support to run. Features per pixel point and hemisphere lighting! (ripped straight from the GLSL book!) Two executables, with and without bloom, obviously without bloom is much faster.
Use WASD to move, that’s about it. You can pick up fuel cans (white square things) and carry them to the generator (white cylinder thing) in order to start it up so that the lift will function. If you fall from a higher to a lower platform the lift will come back down. Turn on the sound for some SFX!
To access the level editor press E.
From there, hold the right mouse button to move the camera. Left click to select stuff, move selected things with WASD, RF to raise/lower. The black arrows between a moving platform and a generator indicates that the generator must be activated for the platform can move, this can be changed in the editor (and things can be set active or not by default).
LESSON LEARNED: The people who say “make a game, not an engine” are not necessarily correct. Here I tried to make an actual game and the resulting code is a complete mess and hacked together… I think I need the enforced discipline of making an Engine to ensure it is cleanly designed.
Sure, I’ve completed games before, but they were generally small mini-games for which it didn’t matter so much how well designed the code was. But most of my more ambitious 3D stuff has ended up abandoned like this :(
So for me it is: do make an engine, but with an eye to the type of game you want to make, and only add in the necessary features for the game. And maybe work on the game in parallel when the engine starts to progress.
Posted
on May 5, 2009, 11:07 pm,
by Daniel,
under
RANTS,
Vocaroo.
There are dumb questions and there are dumb questions
You get questions written in bad grammar with lots of spelling mistakes, where the person uses a roundabout route and the wrong terms to ask how to do something. But that’s not a dumb question; this person is just a bad typist and is not all that technically inclined.
The dumb question is that one short sentence phrased in perfect English. Asking how to do the obvious, the one thing that the entire interface is streamlined to make as simple and easy as possible.
“Hi, how do I record my voice?”
(at least provide some information about how you have failed in your attempts so far… grr!)
Posted
on May 4, 2009, 2:44 pm,
by Daniel,
under
software.
I posted about this a while ago on the Irrlicht forums. But I suppose it could go here as well hmm?
It is an app. I made for my final year project at university. The little vehicles evolve to pick up the “food”.

Download (both Linux and Windows binaries in each package):
http://xzist.org/temp/NN_Evolution.zip
http://xzist.org/temp/NN_Evolution.tar.gz
Edit: C++ Source code released:
http://xzist.org/temp/NN_Evolution_source.zip
I think the tar.gz version is a slightly older one, with more of a tendency for the vehicles to evolve to drive backwards.
There’s no great purpose to it, except as a demonstration. It uses a genetic algorithm to evolve the weights in a neural network. After 20 generations or so they should learn to pick up the food which they detect with their sensors (leave it in “fast forward” mode for a few minutes…) Tweaking the parameters can affect how they evolve.
Source code will be released after it is assessed…
Posted
on April 17, 2009, 9:18 pm,
by Daniel,
under
programming.
I needed to average a lot of large values and was afraid that the normal approach of a+b+c..etc/N would overflow or something.
So here’s a C++ class to keep a running average:
class InfiniteRunningAverage
{
double average;
double valueCount;
public:
InfiniteRunningAverage()
{
average = 0.0;
valueCount = 1;
}
void Add(double value)
{
average = average * ((valueCount-1.0)/valueCount) + value * (1.0/valueCount);
valueCount += 1.0;
}
double Get()
{
return average;
}
};
Hmm. I guess eventually valueCount will get so big that new values will have no effect. So it can’t really be considered an infinite running average.
Posted
on March 18, 2009, 3:47 pm,
by Daniel,
under
Vocaroo.
A small addition, the Vocaroo voice recording widget can now have its colour customised! It does require you to edit the embed code though.
Get the updated widget code as usual, in English or French.
Notes:
- There are three colours that can be customised, backgroundCol, buttonLineCol, and buttonFillCol. Their names should be explanation enough :)
- Colours must be specified as hex codes, and must start with “0x”, for example: “0xEDFAFB”.
- If you look in the widget code you’ll notice the colours are specified twice, in two different places, this is necessary so it works on all web browsers…
A nice online colour picker tool can be found here. Note that it gives the colours in normal HTML format starting with a #, so you must change this to “0x” for Vocaroo.
Here is a little gem of a quote from my sister:
“Most of the cleverest people I ever met were the ones who did middling but despised the system”
Not implying anything, of course. Ho hum.
Posted
on March 1, 2009, 5:09 pm,
by Daniel,
under
programming.
Hmm, I just got this error after running make:
process_begin: CreateProcess(NULL, cc -MMD -D_DEBUG -DdSINGLE -DWIN32 -DODE_DLL
-DdSINGLE -I../../include -I../../ode/src -I../../ode/src/joints -I../../OPCODE
-I../../GIMPACT/include -I../../ou/include -g -o obj/DebugSingleDLL/ode/fastlsol
ve.o -c ../../ode/src/fastlsolve.c, ...) failed.
make (e=2): The system cannot find the file specified.
make[1]: *** [obj/DebugSingleDLL/ode/fastlsolve.o] Error 2
make: *** [ode] Error 2
After unsuccessfully searching the ODE mailing list archives for “fastlsolve”, google revealed to me that the file which could not be found was actually cc not fastlsolve.c (and so CreateProcess was failing).
Evidently I don’t have cc on my system. I’m not even sure what cc is. The C compiler?
Anyway the quick and simple fix is to make a copy of gcc and name it cc. Is that an OK thing to do? Who knows. But it works!
Posted
on February 21, 2009, 8:32 pm,
by Daniel,
under
Vocaroo.
Just another Vocaroo tip!
A proper API and toolkit for adding voice recording functionality to websites is planned, but until it’s ready, here’s a way you can let people send you a voice message directly from your website, using an IFRAME:
<iframe src="http://vocaroo.com/?replyto=email@address.com" width="600" height="700"></iframe>
(replace “email@address.com” with your own email address)
This will give:
It’s a bit ugly though, so you might prefer just to link to Vocaroo, like this:
http://vocaroo.com/?replyto=email@address.com
Have a nice day :)
Posted
on February 20, 2009, 3:15 pm,
by Daniel,
under
nonsense.
Ahhh. I just did
rm -R /
It was strangely liberating.
I’ve just transferred Vocaroo from the VPS it was on to a dedicated server, the same one I run some web proxies on. So I no longer need the VPS.
But the command is hanging… surely it shouldn’t take this long. But the free disk space amount in the HyperVM VPS control panel is slowly going down. So it is doing something!
It’s on 497MB at the moment… 458… Wonder if I can still ssh into it?
Nope.
380MB.
It still responds to ping!
262MB… Still responding!
Oh! The terminal says something:
rm: cannot remove directory `//dev/shm’: Device or resource busy
rm: cannot remove `//dev/pts/0′: Operation not permitted
rm: cannot remove directory `//var/run’: Device or resource busy
:-(
It seems to have stopped at 262MB. rm isn’t giving any more output. But it can still be pinged and the original ssh session hasn’t cut off.
Now the space used has risen to 263MB! How curious.