You are not logged in.

#1 2008-03-31 07:27:01

Xilon
Member
Registered: 2007-01-01
Posts: 243

Need idea for uni project

I'm going to have a unit next (last, yay!) semester that is just one big project. I know I'm going to have difficulty getting an idea so I've already started thinking of one, but I'm having a hard time. Since most Archers will have a similar mindset (KISS), I thought it would be a good idea to ask you guys for ideas. I'm not exactly sure what's required of me in this unit, or whether they will force me to do a particular project or not (I doubt they would). By the description of the unit it seems that we'll be working in teams, which sucks since everyone I know uses Windows, with the exception of one Mac user. This uni pretty much sucks and I haven't really learnt anything. Atm I have a unit which is almost identical to a first year unit, it even has the same lecturer! Anyway I probably don't have enough experience to do some major project, so think small, but large enough to last me the semester.

So far the only good (decent) and useful idea I've thought of is to make a build system, yes another one. I have yet to find a good system that does what I want. Boost-Jam seems nice and concise in its language but it seems to be only for C++ (and possibly C), and it appears to not detect which libraries to link against, like autotools does. Ant seems pretty nice for java, but it runs on java itself, and it uses XML for the build scripts, which is overly verbose. Make is nice and simple but again, you need autotools for it to be more cross platform. SCons and waf just seem to require too much programming to get anything working, but I haven't actually tried to do anything with them.

My idea is to have a modular, plugin based, build system. Each language would have its own plugin which would define "tasks" (like in Ant). The build system would of course need to be cross platform, and run on at least Linux, Windows and OSX. It needs to be fast and track dependencies as well as build incrementally. It should act like autotools in the sense that it finds where libraries are and gets the appropriate compiler flags. This would probably also be implemented as a plugin so that each OS would have its own plugin if necessary (I'm not really sure how to do this though). The language in which build scripts are written should be very simple/concise and expressive. All of this should be implemented in a way so that it is still simple for the end user. Usually flexibility and simplicity is contradictory, so I don't know how that will work out.

Basically I want to make a build system which is simple, quick to write a build script for and get it working. For Java Ant comes pretty close, but the build script took me quite a while to write up. I constantly thought "In a Makefile I could just write 'foo: Bar.class Baz.class' instead of 4 lines and a bunch of attributes". It did automatically find where JUnit was though, so that was cool.

Having read the unit description again, if we do have a team of developers then that idea pretty much goes out the window because I doubt anyone even knows what a build system is - they all use Visual Studio. It is possible that by "team management" they mean that we will have students of Information Technologies (the business side, project management) working with students of Computer Science (implementation). I'd probably have to ask around to find out exactly what I required.

So if you guys have any ideas please do share. If it's up to me the project will obviously be under an OSS license, depending on the project it'll probably be BSD or GPL.

Offline

#2 2008-03-31 22:13:07

freakcode
Member
From: São Paulo - Brazil
Registered: 2007-11-03
Posts: 410
Website

Re: Need idea for uni project

You could do small, simple applications, but that are yet useful. There's a lot of lacking applications for some areas. For one, I can tell you that I haven't found any application for simple podcast recording and mixing. So, something like you start up Skype, start playing on the app, and it easily manages your interviews in different tracks, let you add initial, final and break musics, and so on...

It's a very simple app, interesting to do if you are into using multimedia, and there's a lot of open libraries that you can use for it. The only problem is that its a bit limiting if you can't work with multimedia, but could turn out as very fresh application  - instead of doing something that everyone has done before.

Offline

#3 2008-04-11 16:35:21

axion419
Member
Registered: 2007-04-12
Posts: 185

Re: Need idea for uni project

not trying to derail - I actually have a class coming up like this, and I was thinking of taking Linux From Scratch - building up a system, stick it in a small pda type device , and have it run a simple Full Screen window manager,  that launches a clock, datebook, note app, file manager, and scientific calculator, email app, and web browser,  that you could cycle through in a Alt+Tab fashion, and calling it a cheap, sstreamlined PDA.  I was thinking of adding more apps, and tailoring for my fathers business (masonry) so people in the field can quickly keep notes, check info, kep in touch, and do equations right on the job site, without paper or pencil.  And since the whole thing would be GPL, i Could def use LFS, Evilwm, galculator, etc.  So i guess its just a custom built OS, that sits on someones else's hardware, using someone elses programs. lol, I guess that isnt that good a project lol.

I would prefer it to run on a phone/pda/ mini laptop - small enough to carry in a pocket, but still has a keyboard and networking.

Last edited by axion419 (2008-04-11 16:37:12)

Offline

Board footer

Powered by FluxBB