Thread: Any cool programming project ideas?

  1. #16
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    How do they control code quality? Are unit tests required and/or is code reviewed before it hits the repository and is incorporated into the next release?
    Your mileage may vary with the project, of course.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  2. #17
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by medievalelks View Post
    How do they control code quality? Are unit tests required and/or is code reviewed before it hits the repository and is incorporated into the next release?
    Most serious projects have a set of tests, as well as code-review (and that usually includes coding style guides, such as naming convention, placement of braces, spaces around expressions and most everything else like that).

    Normally, there is one person in control of the "master" source code, and everyone has to go through that person.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  3. #18
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Normally, there is one person in control of the "master" source code, and everyone has to go through that person.
    From what I understand, instead of a single human gatekeeper, Bazaar uses a patch queue manager that acts as an automated gatekeeper. So the PQM runs tests and such, and if the patch passes, it then merges the changes to the main line. Before the merge requests are sent to the PQM, they must be approved by some number of core developers, so they have another bot that tracks these merge requests and approval votes. The whole system works via the developers' mailing list.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  4. #19
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by laserlight View Post
    From what I understand, instead of a single human gatekeeper, Bazaar uses a patch queue manager that acts as an automated gatekeeper. So the PQM runs tests and such, and if the patch passes, it then merges the changes to the main line. Before the merge requests are sent to the PQM, they must be approved by some number of core developers, so they have another bot that tracks these merge requests and approval votes. The whole system works via the developers' mailing list.
    Ok, that's different from the projects I've worked on, but that's another way to do it.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  5. #20
    Registered User
    Join Date
    Jul 2007
    Posts
    88
    I have a cool idea for a programming project.

    On Windows it`s quite hard to migrate one install to another. You can not simply do this with a boot cd and explorer and two disks plugged in.

    You can copy anything... But... Stop. To copy the MBR (bootloader, partition table, signature, ...?) you need a full blown image tool just for this about 500 kb.

    So my idea is to make the MBR visible as files so we can backup, view, restore and migrate them easy.

    What do you think?

  6. #21
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by sept View Post
    I have a cool idea for a programming project.

    On Windows it`s quite hard to migrate one install to another. You can not simply do this with a boot cd and explorer and two disks plugged in.

    You can copy anything... But... Stop. To copy the MBR (bootloader, partition table, signature, ...?) you need a full blown image tool just for this about 500 kb.

    So my idea is to make the MBR visible as files so we can backup, view, restore and migrate them easy.

    What do you think?
    I think quite difficult. Mainly because Windows protection prevents you from opening the disk in "raw" mode when you have just booted from it, so there's no way to get directly to the sectors of the disk, so you can't get to the MBR.

    It woudl be TRIVIAL to write a piece of code in DOS that copies the MBR from one disk to another.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  7. #22
    Registered User
    Join Date
    Jul 2007
    Posts
    88
    Quote Originally Posted by matsp View Post
    I think quite difficult. Mainly because Windows protection prevents you from opening the disk in "raw" mode when you have just booted from it, so there's no way to get directly to the sectors of the disk, so you can't get to the MBR.

    It woudl be TRIVIAL to write a piece of code in DOS that copies the MBR from one disk to another.

    --
    Mats
    Yes, quite difficult. To difficult for me so I am suggesting this project. I am quite sure such an application would require installation + admin rights + restart.

    From what I know....
    - Some applications write inside the MBR for their copy protection. (I heard Adobe does this.)
    - Image applications can make 1 to 1 backups (live backup).
    - Perhaps the volume shadow service can do this.
    - Or we could just bash this protection against not to read in raw mode.

    Btw. I was thinking of seperate files for bootloader, partition table and so on...

    Very difficult yes. But it`s possible and imho this would be very useful application. (Especially when it comes to migration, backup or multi boot.)

  8. #23
    Banned
    Join Date
    Nov 2007
    Posts
    678
    Quote Originally Posted by cjmdjm View Post
    Recently I have been bored and have been writing random programs just for fun (and for practice). Mostly simple projects that can be finished in a day or two.

    But Im running out of ideas. First I wrote a basic 2D flight simulator. It was fun to experiment with weight, engine power, wing area, tail area, etc, and see how they affected performance and stability.

    Then I wrote a program which would take a pair of stereoscopic images and compare them to build a depth map. If you are not familiar with this, the fact that you have 2 eyes and can see the world from 2 slightly different points allows you to perceive depth. Your brain compares the images from the left and right eye. Far away objects look mostly the same in both eyes. Nearby objects are shifted left or right in one eye compared to the other. My program takes 2 photos taken from slightly different points and compares them. It produces a greyscale image, where black objects are far away and white objects are near the camera. Could be used by a robot with 2 cameras for eyes, to build a 3D map of the world around it. It didn't work as well as I hoped, but I didnt put much time into it before I got bored with it.

    Next I wrote an evolution simulator. There are a bunch of types of little creatures (represented as different colored dots on the screen) that can move around, eat bits of food randomly scattered on the map, eat other creatures if they are carnivorous, etc. They die if they don't eat for a certain amount of time. They each have properties like movement speed, sight radius, preferred food type, and a basic AI script. They can reproduce, with a few random mutations, and evolve. Its cool/fun to experiment and see which species goes extinct, or if an equilibrium is reached between 2 or 3 species, and how the creatures evolve.

    But now I need more cool ideas to experiment with. Any cool projects you have done or heard about that I could try to replicate, or any other random ideas?

    Thanks!
    Can you share you projects with us?
    If possible, post in this thread, so everyone can try them put.
    I am keen to have a look at them, I find them all very interesting, but source should be included (of course)

  9. #24
    Registered User
    Join Date
    Nov 2008
    Posts
    10
    I need help to generate asterisks randomly on the screen with a set boundary

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Final Project for HS, any ideas?
    By Conneticut#88 in forum C++ Programming
    Replies: 13
    Last Post: 05-24-2006, 09:22 PM
  2. Senior project ideas
    By Dr Spud in forum C Programming
    Replies: 3
    Last Post: 02-14-2006, 05:10 PM
  3. DSP (C6711) based project ideas?
    By Zeeshan in forum Projects and Job Recruitment
    Replies: 3
    Last Post: 01-26-2006, 06:16 AM
  4. Project ideas
    By subnet_rx in forum Game Programming
    Replies: 4
    Last Post: 01-06-2002, 03:48 PM
  5. Trying to be cool
    By Theologian in forum A Brief History of Cprogramming.com
    Replies: 20
    Last Post: 08-19-2001, 06:17 AM