CyberBoard Open Source Project Status Reports
From CyberBoard
This page is used to communicate the status of the CyberBoard open source port project. It is arranged in reverse chronological order to make keeping track easier.
--DaleLarson 09:28, 23 June 2007 (CDT)
Contents |
4 June 2007 Status Report
Subject: CyberBoard FOSS Port Status Report Hi everybody, I thought I'd drop a note to update you on the progress of the CB FOSS (Free Open Source Software) port. We have a project web site set up to manage the source and process surrounding the port. We've converted most of the source in a boilerplate fashion to use the open source, cross platform, wxWidgets library. Of course everything is busted so now comes the tough part (as I put it to the folks on the project)... We need to put Humpty Dumpty back together again. The second milestone (the first is done: to wit...set up the project process) is to get CBDesign working well enough to load and save GameBox files in the same format as used by CB v3.02. The third milestone is to fix the UI. Then it's on to CBPlay. =========================================================================== I want again put out another call for any developer types who would like to be a part of this project. If you're not a hard core C/C++ programmer the Help system needs to be reworked and ultimately expanded. Also, we will be needing someone to do installer work as we get toward to finish. There are other smaller programming tasks the don't require heavy Windows/wxWidgets knowledge so you can learn as you go (but you should have some programming background). =========================================================================== Thanks, Dale
25 May 2007 Status Report
Hi Everyone. The first milestone is complete. The porting can now begin. The Wiki has been updated with a lot of new information. I've added a development process framework. It's not perfect but it's good enough to get started. I've added a 5 minute windows/MFC primer to the SoftwareArchitecture page. I've expanded the tool installation and configuration information. I've updated the source code to build (but won't link) under Visual Studio 2005. The project now also includes and builds against wxWidgets. Make sure you set your work area up as suggested in the Wiki. The code is all merged into the trunk. I've started adding tickets for work items that need to be done. Most are unassigned and are wait for people to step up and take hold of them. When you chose a ticket just assign it to your log-in name. I've added some initial porting tips. You'll notice a couple critical tickets that need immediate attention to make everyone's life easier. I'll be adding many more Tickets as I analyze the code and try to pare it down to manageable bite-size chunks. If you see something that's missing... please add a ticket! Dale
22 April 2007 Status Report
Subject: wxWidgets is CB's future. Hi Bill, >When do you plan to make a final decision on library choice? Right now. wxWidgets is it. I've examined, built, and ran a variety of wxWidgets sample apps in VS2003 this morning and it's hard to imagine anything that could come as close to MFC as this. A few things might be tricky (Tabbed views come to mind) but I always figured CB wouldn't come through totally free. wxWidget has number of things that are nicer than MFC as well. Dale
16 April 2007 Status Report
Subject: Hi Everyone - Strategy Note
I know most of you but a couple folks are new to me. Implicit
in this project is some level of trust that the code will be
kept private until it's ready for public release. We also need
to avoid the feature creep. The time for feature expansion is
once the port is completed and the code is public.
-----------------------
My take on this project
-----------------------
Goals of the CyberBoard port:
1) Remove all dependency on Commercial software.
2) Make CB cross-platform.
3) The software must (as a minimum) be able to load files
from the last public release of the closed source version.
4) Release the resulting software under GPLv2.
General development philosophy (no doubt changes to come):
1) Source code is to be kept private until public release.
2) Programmers should follow the same coding conventions that
the code already follows (i.e., the same as MFC).
3) Frameworks used in software need to be GPLv2 compatible.
4) Avoid feature creep.
Rough general flow of development:
0) Set up mailing list (DONE :) )
1) Add GPLv2 references to source code file headers.
2) Set up source control and check source in. (Dale)
3) Create a backup strategy for the source control
repository.
4) Recruit backup moderator for mailing list (I'm glancing
toward you Gary ;) )
5) Start studying the code with me and others posting Q&A
to the mailing list.
6) Someone needs to collect those Q&A posts into a
coherent FAQ/document for later reference.
7) First port the MFC portions of the software and get running
under Windows.
8) Drink some beer.
9) Next port the graphics handling to remove use of GDI to
something more universal.
10) Drink some more beer and perhaps some shots of Vodka.
11) Get Linux port operating.
12) Create installers for the final software.
13) Final clean-up.
14) Public release of code and public opening of the CBDevelopers
mailing list.
15) Drink tons more beer with much rejoicing!
The hard core programmer types should probably start studying the
code as this will have the greatest effect on progress. Those
looking to get their feet wet more slowly can help out
with volunteering for items 1, 3, 4, & 6. Once source control
is up an running we'll need a backup admin for it.
It goes without saying that the above strategy will evolve
over time. This should get us rolling until we gain more
experience.
Thanks everyone!
Dale
P.S. After we get some of the organizational tasks done I'll be
sending out a ZIP of the source code to everyone.

