

Ask HN: Final Year CS Project Advice - Hirvesh

Hello HNers, I'm a Computer Science B.E student doing my final year.<p>At the end of last year, our Head Of CS department came to us with a restriction for last semester project ideas, We cannot use any database in our projects.<p>This limited my project choices massively. My programming skills are mostly web developments oriented.<p>However, after much thinking I decided to do a Windows batch software installation application - which would install multiple software on multiple PCs from a single admin PC.<p>I wanted to get your opinions on the project before going ahead with it. What do you guys think of it? Good enough? Any way I can improve it or any other ideas I can implement as project?
======
stevoo
There are many things that can be done with out a database.

I believe he set the restriction so you wont be going through a process of
building something simple with a database. He wants something different.

Mine was a chess playing Lego robot. Although there was no database involved
it was something unique.

You could still do a web-application that will do something specific. You
don't need a database for those, you just need to find something that needs
experimenting. It is not essential in completing your project ( although it
would be nice ) but you must show the work you have done, the obstacles you
have faced and what needs to be done next in order to be finished.

Also he said no database. So you can still save some basic stuff in a text
file or XML file.

But it is up to you, what you feel comfortable with. If you are good with
css,ajax etc you can do some jquery fancy stuff to display something. If you
are good with c/c++ you can do an opengl world. ... ...

Find your strong points and build something there.

------
akandiah
There's a fair amount of work to do if you want to involve yourself in Windows
installers. A Microsoft product which does this is System Center Configuration
Manager (formerly Systems Management Server). This may be a starting point for
your investigations of existing technologies.

~~~
Hirvesh
I heard about the software. I shall investigate more thoroughly :)

------
shail
Premise: You are in no need for batch software installation.

I would say why not build a tool which you can use in your daily life. And if
you find it useful, tell other hackers about it and see if it makes anyone
else's life easier too.

This way you can learn the non-technical aspect of product development too
(design, usability etc.)

~~~
Hirvesh
The batch software installation idea was not really my first choice. I was
thinking more about doing a web application - had many ideas already in place
- but this wretched 'no database' restriction has ruined nearly every
classmates' plans including myself.

The point is, I find it quite difficult to think of a project not involving a
database. That's one of the main reasons I'm asking for advice here.

I really had hoped to do something spectacular for my final year project.

~~~
alexhawdon
To reiterate what others are saying, you can do web stuff without necessarily
relying on a database.

Implementing computer vision techniques in Javascript seems to be quite
popular at the moment and could make for a good project. You could get a lot
of mileage out of exploring what techniques are feasible and which aren't and
what you can do to optimise things. Depending on what your eventual
application is it will likely need a user interface - make sure you back up
its design with HCI theory and methodical evaluation and that will also add to
your grade.

------
cpfohl
If you like web projects and you want a fun one, why not work on a few
visualizations of some common (but NOT sorting) algorithms? It'd be a great
teaching tool for the department later on, and it's a really nice tool to have
under your belt.

------
ravenp
I frequently use ninite.com which is similar. It's certainly a good idea.

I think "not using any database" is nonsense. Almost every piece of software
in existence has to work with some form of data.

~~~
logn
I think it's a great requirement. So many of the projects would turn into CRUD
apps. It's Computer Science and there are a lot of other interesting things to
do which students will never consider without making them stretch a bit. I
think too many programmers are devoting their efforts to
geo/social/commerce/blog apps and are losing sight of all other problems.

My senior project was on audio synthesis, granular synthesis in particular.
I'd recommend any project in the generative art or audio space.

~~~
alexhawdon
I think it's great that it makes sense to veto generic 'web applications' or
even 'business applications' in general, but I can't see why they need to
impose such a broad restriction in order to make it happen. Why isn't it
sufficient just to tell everyone "no basic applications - we're doing science,
not software engineering methodology" and leave it at that?

------
kape
You could bypass restrictions (not sure if it affects your grade though or
count having a database) by using some existing external APIs and build a web-
software on top of them.

