![]() |
|
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Expert Programmer
|
Project Ideas
I thought I'd post this here as the Project Ideas forum is for sayign your ideas rather than askign for them.
In a week I am going to do my Work Experience with a programming company. Basically for 2 weeks I work there to get experience. They said I need to think of a project to complete in the 2 weeks that I am there. The trouble si I can't think of a project and I need your help. They said that teh last person made a php/mysql system for managing phone calls (to give you an idea of the complexity that they want). So I've given it some thought and haven't managed to come up with any ideas. I want to write an application that runs on the desktop rather than browser based. And I want to use Python to do it. The project will need to take me 2 weeks to complete and I want it to make me learn something new. I will take any suggestions that you can give. So far I only thought of making a MSPaint clone but that seems boring and not very imaginative :-( ~Cold
__________________
Join us at #programmingforums @ irc.freenode.net! My software never has bugs. It just develops random features.
|
|
|
|
|
|
#2 |
|
Unverified User
Join Date: Aug 2006
Location: UK
Posts: 3
Rep Power: 0
![]() |
Well if you want something to do that is visual then making a basic vector drawing program will be more challenging than just a bitmap editor. It will make you have to think about some basic maths, simple 2D drawing, printing(which might involve scaling) and designing a file format to store your drawings in. There is plenty of opportunity to add other festures too. Python would be ok, even java would do. Dont get all bogged down in what language to use. Use a language you are most productive in and that enables you to do what you want. Dont try to learn a new language or API from scratch as it will slow you down too much. If you make something that is visual then you will have something nice to show for your efforts when you finnish the work experience so you can show off.
Two weeks is quite short for a project so dont spend too much time thinking about what to do. Get an idea and do some planning. First think what you can reasonably achieve in two weeks, so dont go overbaord on the features. Then come up with a basic plan with maybe some UML diagrams. You can skip most of the details such as UI design and a testing plan. Then start coding and try to test as you go along. When I did my two weeks of work experience a few years back I was set a project. You are quite lucky that you can make your own choice. If you decide to make something that is too complex you might not have something that works by the end of the two weeks. Start simple and you can always add features if you find you have time. Have fun. ![]() |
|
|
|
|
|
#3 | |
|
Programming Guru
![]() Join Date: Aug 2005
Location: England
Posts: 1,499
Rep Power: 4
![]() |
Quote:
You could construct a "diff" like program that compares two files together via a GUI, highlighting the differences. You could use wxWidgets or PyQt for that. You could make a GUI to apply PIL image transformations to a user-selected list of files (for instance, one could select a set of photos to be rotated through 90 degrees, or convert a set of PNGs to JPEGs). |
|
|
|
|
|
|
#4 |
|
Programming Guru
![]() Join Date: Apr 2005
Posts: 1,799
Rep Power: 5
![]() |
A multi-threaded chat client and chat server that uses your own protocol? You'd learn a great deal about programming if you did that.
|
|
|
|
|
|
#5 | |
|
Hobbyist Programmer
Join Date: Jun 2006
Location: at my computer desk
Posts: 138
Rep Power: 3
![]() |
Quote:
__________________
my site: www.sreenathpillai.tk #include<iostream>
using namespace std;
int a=1;
int main()
{while(a<=500, a++)
{cout >>"I will not throw paper airplanes in class";}
return 0;
} |
|
|
|
|
|
|
#6 | |
|
Programming Guru
![]() Join Date: Apr 2005
Posts: 1,799
Rep Power: 5
![]() |
Quote:
Days 1-3 : Basic Sockets Days 4-9 : Single Threaded Server & Client Days 10-12 : Add Multi-Threading Days 13-14 : Testing/Debugging Assuming Jack's got 3-6 hours of uninterrupted work every day, he should be able to get it done. If he keeps focused. ![]() |
|
|
|
|
|
|
#7 |
|
Expert Programmer
Join Date: Jun 2005
Posts: 816
Rep Power: 4
![]() |
What about a disk space viewing tool, something like spacemonger (except that you can scan just subdirectories
) |
|
|
|
|
|
#8 |
|
Unverified User
Join Date: Aug 2006
Location: UK
Posts: 3
Rep Power: 0
![]() |
I think whatever you decide to do dont just jump in and code. If you do that you will waste time as you will be changing things all the time. Spend a few hours at least thinking about how the program will be structured and what the specification will be. Keep it simple. You can always go back and add more features if you find you have time. Also try to write something in an area that you are intested in. The ideas other people have put forward have been good but try to think about what you enjoy. If you like grahics do a game or some sort of drawing app. If you like networks then do some sort of client server app. If you like writing useful utilites then do that.
Another option is to think of a program you have used and found to be poorly designed or buggy and then write your own version based on how you want it to work. Or maybe draw your inspiration form a non computer related hobby. Maybe you are a musician and then for example you could write an app that lets you compose music. The best projects are always ones where the author has a passion for what they are doing. They have a need for the app they will think about what they want it to be and it will be done to the best of their ability. It will end up being a usefull program that works well. If you just choose an idea at random you might find after a few days that you have little interest in it and then the standard of the program will be poor and you will not enjoy your work experience as much. |
|
|
|
|
|
#9 | |
|
Hobbyist Programmer
|
Quote:
__________________
Pain is just weakness leaving the body.
|
|
|
|
|
|
|
#10 |
|
Expert Programmer
|
Thanks for all of the input. I'm not that interested in networking, and the paint clone was only though of because I couldn't think of much else. I don't really have any inspiration right now.
The main thing is I want to be able to complete it before 2 weeks is up, but I don't want it easy enough to be completed in 2 days. Come to think of it I think I do want to do the paint clone. Or something to do with modifying images. So wxPython and PIL is the way to go I think. Maybe I'll design it to be simple and then improve on it if I have time, the only thing is I'm not great at maths.
__________________
Join us at #programmingforums @ irc.freenode.net! My software never has bugs. It just develops random features.
|
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| School Project Ideas? | bigguy | Visual Basic | 19 | Mar 26th, 2006 3:24 PM |
| Project ideas | OpenLoop | Coder's Corner Lounge | 7 | Nov 8th, 2005 7:32 AM |
| help! project ideas needed | kevin | Coder's Corner Lounge | 3 | Apr 5th, 2005 11:16 AM |
| Python project ideas | andy_m | Python | 4 | Apr 5th, 2005 5:24 AM |