Friday, August 28, 2009

The OS decision!

This is going to one of the more controversial decisions I'll make so I decided to shunt all possible responsibility away from myself. I asked a /prog/graming message board that I frequent what OS would be best for my project (or is runtime differences so minuscule that I shouldn't care).

I got a wide variety of responses so I decided it would be worth spending a day or so looking into them.

Plan9 -> Inferno

This one grabbed my interest pretty quickly. A distributed OS created by Bell labs you say? One of it's main goals seems to be to to provide client machines as work places. It has GCC, gossip has that it'll run Java. Sounds good, too good. The one issue here is the lack of virtual environments for working with.

And being UNIX based everything is going to be an uphill battle to get working.


Solaris

This seem an unusual system to pick but I thought I'd look into it anyway. "Solaris is very Windows NT" was the first phrase my search turned up. Temped to write it off after just reading that, but no, I am too professional to walk away. Has all the compilers. But the main virtual environments I plan to use don't seem to able to run on it, or at least haven't been properly tested yet. (I realise now I haven't talked about my intended Virtual Environments yet, I'll fix that soon)

I can't see any reason why I would leave Windows for Solaris.

MINIX (For some unknown reason)
I figure this was thrown in as a joke. The one reason I'm mentioning it is because of the man, no, the LEGEND who made it, Andrew S. Tanenbaum. People who know of him know what I mean. People who don't need to read more.

And no, the OS doesn't have what I need.

Windows
What do I need to say here. I was raised in a DOS environment. For all it's flaws, It's were I'm most comfortable.

Tho I do kinda want to experiment.

Ubuntu/Mint (Or some other filthy linux swapout)
This is one of the better options. It'll have the compilers and platforms I need and the support I'll want. I'll also need to do a bit of research into WINE to see what it is possible to call and use. Definitely possible.



While a the professionals disagreed on the OS they all agreed that the structure of my distribution and the programs efficiency was far more important that niggling little differences between runtimes.

So the plan from here is:
Do some more research into Plan9
Once I decide that's a bust look a bit harder into Ubuntu

I'm not going to seal myself into an OS just yet. Deadline for that is September 14th.

Expect a post soon regarding my plan virtual environment test cases.

Thursday, August 27, 2009

Meeting

I got my first meeting with my supervisor last Monday.

It went pretty well. He seems pretty interested in the idea and will endorse it to the college. Chris is a good guy and it doesn't seem like he'll interfere with the development too much. I got a big speech on how I have to start working early and often. I think he has me confused with some sort of lazy student!

Now that I have confirmation that this is the idea I'll be moving forward with I can start thinking about the little things. As I'm looking at a multi treaded system I'll need to decide on an OS earlier rather than later. Going to do a bit of reasearch.

Saturday, August 22, 2009

First Swing

Ok, here is the first overview of the project. This is what I got provisionally accepted by my supervisor.

"In this project I plan to create a program that can be used to genetically create a controller for entities in a simulated environment. My goal is for it to be as independent as possible. The end user should be able genetically create any entity for any language for any virtual environment with out touching my code. All they should have to do is pass the program the structure of acceptable outputs, possible acceptable calls, a .cmd that will compile the created entities and a .cmd that will run the entities in the environment and return fitness. It is also my intention to make the system distributed allowing generations to be passed off to other systems potentially exponentially increasing run time."

Ignoring the poor English, vague descriptions and technical failings; you can see what I'm getting at. My hope is that it'll keep me interested and willing to code. While I have worked on projects this large before, i've never had one that going to be streched over this length on time. While I'm all keen now. Will I be willing to stay up till 4am in six months time to work on it?

We'll find out.

I have a meeting next Monday with my supervisor. It'll be the first chance I'll have to properly go over the technical specs with him. Lets see how that goes....

Tuesday, August 18, 2009

The Beginning

This is going to be a timeline of the development cycle of my FYP. It's mostly for my own note taking and to make report writing easier. Beware anyone who looks to this for a proper idea for how my project is going, it will be nothing but poorly formed ideas and half finished rants.

Project overview to come.