I have finally got my project “Filmophile” up to what I am willing to call Alpha One stage. What is an alpha I hear anyone who hasn’t been disappointed by a video game release within the last five years or so. Alpha is the software development term for NOT READY YET or ABSOLUTE MINIMUM SO YOU CAN SEE WHAT I’M TRYING TO DO. Traditionally alpha’s never saw the light of day, it was synonymous with tech demo or proof of concept programming, never designed for the public to see.
These days alpha just means not done yet, after the alpha stage historically is the beta stage when you allow people to see what you have done and gather feedback on what has been made so far. Finally is the Release Candidate stage where you are giving people the chance to see not fully bug fixed products that are pretty much the same as what you will release as the vaunted version 1.0.
What happens now due to the open source community where those who program the code don’t really own it so you may as well get it up for all to see as soon as possible. The idea being that anyone who wants to can pull the code and get started working on it early as lets face it in my case anyone who would want to pick up the code after me will be better than I am a programming. The flip side to this is often games are released in an alpha state to encourage people to buy the game early, this helps gauge interest and help pay some bills early. The downside to this approach for games is it is often very tempting to never finish a project.
So what is Filmophile?
The project is a program all about old fashioned film photography development. Back in the days before digital and even before colour film you processed black and white film in all sorts of probably dangerous chemicals. For each probably dangerous chemical your film would require a different processing time and had the possibility of changing the image like how contrasty or how grainy It looks.
So the idea is that between myself and anyone who wants to help me I will collect a large amount of these times and their effects. Once that is done add them to the program and then anyone who does film processing won’t have to look up times online they can just use their stand alone program to do so. Filmophile integrates a timer so if you happen to have a computer in the same room that you process your film you can use it instead of a stand alone timer. Not the most useful feature but I might use it so why not.
As anyone who has programmed anything ever I have many feature ideas that I would like to make but I have no idea about how to do it and may never get around to doing so. Here are some of my ideas
- Add calculations like hyperfocal distance or push pull times.
- Make the program save what you were last up to.
- Add the ability for you to use a custom database or just use manufacturers/your own times.
- Make the whole thing look less like a program from 1998.
There are many other even more ambitious ideas but ill get to them in time. In all probably I will get Filmophile to a point that it is useful and then move onto making the project a little more in line with my degree which is based in databases. So the idea would be to recreate this idea but using a NoSQL database solution like MongoDB. Perhaps have a “cloud” version of the program or maybe even make the current one multi-platform. All of this Is just conjecture at this point however I will take this opportunity to ask people who know about film development to fill out my Google Form telling me of all the fantastic ways that you like to develop film.
You can check out this alpha Source Code here. Be forewarned that you need to have Python 3.3 installed and have some kind of understanding of how to use it also it currently
only works on windows. I suggest anyone who would like to look at the source code download something like PyCharm from Jetbrains or Sublime text to look at the code effectively.