Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Final Year CS Project Advice
5 points by Hirvesh on Feb 12, 2013 | hide | past | favorite | 13 comments
Hello HNers, I'm a Computer Science B.E student doing my final year.

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.

This limited my project choices massively. My programming skills are mostly web developments oriented.

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.

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?



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.


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.


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


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.)


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.


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.


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.


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.


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.


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?


Depends on the definition of database. It could rule out lots of projects working from large datasets.


That's what I spent a day discussing with the Head Of Department. Every student is disgruntled about this restriction.

I know about ninite.com - the concept is quite similar, except that this one if a bit more flexible - it would allow the system admins to create their own auto-installation modules.


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.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: