Home      Updates      RSS Feed      About      Code      Contact

  A long time coming June  3 2012  7:05 PM EST

So, as always it's been forever since I've made an update. There are several new bots (as always) and some other projects. It looks like the code page is still broken, at least on the front. Once you click on a repository, it's there, I promise ;) Latest project over there is cgis a simple CGI-like appserver I'm developing to make my life easier as I'm experimenting more with building an actual game in the browser. I've got a few pieces of webapps laying around my projects folder.

Yesterday I discovered the new Command and Conquer game Tiberium Alliances . It's been pretty fun so far. This is my first time playing a for-free game, and it's interesting. The benefits from paying real money are restricted by time nicely to not tip the advantage too much.

I've been working on a new version of the site, in C this time instead of D. You can see a small demo of it at jachapmanii.dyndns.org . There used to be a simple C/JS chat client running there, and there might be when you look at it. It didn't really go anywhere :) It was more of a fun proof of concept than anything. It's what started this whole CGI-ish webapp kick.

I'll end with the usual, "I'll be back later to add more to this" without ever really doing it.

  VPS move March 23 2012  4:26 AM EST

Notice anything different? Well, hopefully you don't ;) The company I buy VPS time (terminology?) from, FanaticalVPS Afterburst had their second birthday recently. To celebrate, they're offering a 30% for life discount until the end of the month. Being the savvy shopper I am, I went ahead and jumped on the offer ;)

So, currently there is hughes and frost . For a while both were pretty broken due to me updating the non-qualified domain to be frost instead of hughes. Right now, though, both should be pretty equivalent. I don't yet have all the git repositories copied over, so the code page is broken on frost.

So, besides not yet copying everything over, what are the other changes? Well, the VPS model is exactly the same, but it is on a different node. Still in Germany, however. Something that has changed is that I switch from Apache to lighttpd . Why? Well, I wanted to explore with FastCGI and decided to explore with servers too. So far lighttpd is living up to it's reputation of being lighter. As for speed, well, my website is not dependant on the server speed very much at this point. Being that I get one whole visitor (me) on the average week, I think either will do just fine :)

As always, there is a lot more I want to write. For now though, I'm stopping because I just saw a huge spider and freaked shit a little XD Also, it is like 2 in the morning and I should be sleeping.

  What's that horrible "Status" box? February 16 2012  4:32 PM EST

Hello! If you've looked at the code page at all, I'm sure you've noticed that it is often slower than it should be. One of the major issues, I think, is the rather low persistence of cached data. I think there may be some kernel option (some cat 0 > /proc/) that is doing this. I'm not entirely sure. Anyway, currently the page searches through all available repositories, finds out when their recent commits were and decides what three to display at the top. I decided that it would be neat to have some sort of API, and to use it in javascript to fill in this information dynamically.

There have been a number of commits to the code for this site over the last day or so. The /api URL has come into existence, and has had several features implemented. At the moment, there are:

  • status: to get various feed-like status updates I may start making. At this point it only ever returns the hard coded status above ;)
  • cat: to list repositories, branches, files/directories and to actually cat out the files within. The encoding of the returned files is a little funky (\n and \t have been escaped, among others) to have it be proper JSON.
  • clang: to list the repositories using a specific language, or all of them if no argument is given. This is just so that it is easier for me to have features without proper thinking out cat
  • commit: to list commits to a repository/branch, and to get the actual diff from a commit. This is the main thing I need to fix up the code page.

If you want, feel free to play around with the various functions. If you specify no arguments when it needs one, it will hopefully tell you. However, there is no real documentation besides the source, hehe. Perhaps there needs to be a help function added. Edit: I have added the page I was using in testing to the static directory. Check it out.

Some neat structural changes to the site have been made, such as automatically included javascript per directory, if it exists. So, if you request the dgi.d source file from dsrv , there might be several javascript files included. First and foremost, there is js/_.js which is included in all URLs (if it exists). Then, the next possible includes would be:

  1. js/code.js
  2. js/code/dsrv.js
  3. js/code/dsrv/files.js
  4. js/code/dsrv/files/master.js
  5. js/code/dsrv/files/master/src.js
  6. js/code/dsrv/files/master/src/dgi.d.js

and then finally, the old js/main.js file. Now, most of these will never be used, but the first level there might be used. For instance, the about page currently uses javascript that is defined in js/main.js. In the future, this will probably move to js/about.js file.

We now finally get to the glaringly ugly status box :) Essentially, I need some quick test of the API and of the module function system. The module function system is really just an array of functions defined in _.js which can be added to from the other included js files. The window.onload event is then hooked up to a function that calls them all in order. Now, why does the status box look so ugly? Well, I hear the entire site is ugly, without users overriding the CSS with their own (which is what I do). The current setup isn't the easiest to adjust the style with, and it doesn't look completely horrid. In essence, it looks ugly because it will anyway, but I do plan on getting it at least less horrid.

List of all updates


My name is Jeff Chapman; You can reach me at: jac@JAChapmanII.net