My, The DailyWord program has jumped ship again. This time from Visual Basic .Net to C# and the .Net 2.0 platform. My enjoyment of learning C# grows and I think it is the best language to move The DailyWord to. As you may have noticed I have changed the name from “The Daily Word” to “The DailyWord.” More a style choice then anything else.
Design work continues in my head, and I should really document it on paper so I have a clear design goal to move to that isn’t just in my head. Here are a few things that I’ll share right now:
- Everything moves to a database.
The original VB 6.0 version had the verses and everything hard coded. This was done for time reasons only however, and had I more time to actually learn how to read and write to a database, I would have done it that way. Odds are this will be built on ADO.Net. I am working out table designs in my head now, and there are quite a few tables in use. One table will be for users and their preferences (originally this was going to be in an .ini file). One table for each Bible reading format. One table that links to the reading formats and is the master list of the formats available. I may need to make more, unfortunately, good and proper database design wasn’t one of the things they taught us in school. The database classes at school were for Access, not general database design, or SQL which would have been better, but I digress.
- Massive improvements to the user interface.
The original interface, while minimally functional, was the result of time constraints, and the limits of VB 6.0. Thanks to the improvements that Microsoft has made to Visual Studio since then, the user interface can be made better, that and fact I don’t have just a month to finish it…
- A “registered version” will be made available.
While the program will still be free to use and be fully functional. Additional features can be had by making a donation to help support the program’s further development. For example the registered version may include the ability to edit the database yourself, adding your own reading schedule.
- Develop program to become a portfolio piece.
This is the ultimate goal. To design, develop and build a program that stands as a portfolio piece.
These are just a few of the things I am toying around with at the moment.
As I said before The Daily Word is being redone from the ground up. Some of the changes one can expect:
Rather then put the daily reading onto a VB form, which has links to read the daily reading on the default browser, the new version puts the daily reading on a web page itself, which the user can click the link to read the daily reading online. Why this change? It makes it easier to customize the output. Say some church or somebody wants to have a customized version for them. If the web page is well designed, all I’ll have to do is change the CSS file and they would have their own page, or perhaps they could modify it themselves and distribute the results, depending on my final licensing scheme.
The user interface will be greatly refined. The user interface in the original alpha release wasn’t so great. It was functional, but it was too cluttered. The new interface will be much cleaner and nicer.
Some things that I plan on returning from the plans of the original design:
The program can customize itself for multiple users. So everyone in a home may choose their own reading options such as what they want to read, and in what translation the links should go to.
The program will minimize to the system tray, and the system tray menu hopefully will allow you to change users on the fly and perhaps even show the reading without links, and without having to open the browser, and hopefully the help text that pops up when you hover over the system tray icon will tell you which user the program is set for. All this depends on what exactly is possible with Visual Basic and system tray programs.
If you have been following the saga of my The Daily Word program, you know I am developing it in Visual Basic. The current Alpha uses Visual Basic 6, and I was about to move development over to Visual Basic .Net, then realized that Visual Basic .Net 2003 was the current version so was about to move it to that, when I learned that all of the Visual Studio programs were being upgraded to a new 2005 version. Visual Studio 2005, currently in beta testing, will be out this year, so The Daily Word will finally settle on Visual Basic .Net 2005 as the platform on which it will be developed.
For a moment there I was about to ask for Visual Basic.NET How to Program, Second Edition, but Deitel, is about to update that book according to a new press release from them. So, we’ll wait for that one to come out. Meanwhile I covet C++ How to Program (5th Edition) so badly it’s kind of sad, even though I already have C++ How to Program (4th Edition) already.
I believe the Deitel books are the best way to learn programming, and I wish they had been the textbooks at my school, perhaps then I would have actually learned a thing or two, but I digress… When I worked at Borders, and people wanted a book on learning programming, they were the books I recommended over the Dummies, In 24 Hours, and other such books. I personally like their style. If you read the reviews on Amazon, some people don’t like the style, but for me, and obviously many others, it works. (Incidentally, for those who a feeling generous, the other C++ book I covet is Object-Oriented Programming in C++ (4th Edition) 😉 hehe.)
Anyhow… As the Visual Studio 2005 Professional Edition I want will cost $549 (and that’s the upgrade price, the full version is $799, either way it is the cheap version of the Professional Edition) and even the Standard Edition has an upgrade price of $199 ($299 for the full version) cost issues will probably make me go for the Express Editions. Visual Studio includes C++, C#, Visual Basic, J# (Microsoft’s version of Java), and all I would really want is C++ and Visual Basic, though I guess technically I should learn C# as well since I have seen plenty of ads for C# developers. The Express Editions lack the power and features of the Standard and obviously the far better Professional Editions, but you can get just the language you want, and the cost will be only $49 per language. It looks like these are an upgraded version of their old Learning Editions. I downloaded the free Beta of Visual Basic Express. and will start the process of making The Daily Word in that to see if the Express Edition will work for that project. The nice thing is, if it does, it looks like the Express Edition license will allow me to actually distribute the application, which the Learning Editions did not.
It has been a long time since I updated about the status of the program I was making for a school project called The Daily Word. Well, it was finished, to a degree. The project as it is has been scrapped and I have gone back to the drawing board. I am building it anew from the ground up in Visual Basic .Net. If you really want to test the old version, I can email it to you. It is a 3GB file and is missing the help file, and as I said, it is finished just to a degree, so lots of it doesn’t work. It gives you the Carson reading for any given day, and makes a link so you can read it on many translations online, but that is the extent of it in that version.
An update on The Daily Word.
I was coding things to work in such a way that on each day you would have the same thing to read each day. That is, 16 February would have the exact same readings every year. This is fine for 2005, but in a later year, the 16th may not be on a weekday, and this creates a problem with some reading plans where you read from the New Testament only on weekdays (if you want to read the NT in a year, you read one NT chapter a day on weekdays). So, I had to research a new method of doing things. Where I was having things broken down by month, where the program looked at your reading plan, and displayed the reading, it now goes by reading plan and then finds the Julian date (the date of the year, so 16 February would be 47) and then gives the reading. It makes the program a bit less complex. In reality, it would probably be better to look it up in a database or separate files, but I am a bit aways from learning how to use a database, and I would prefer to keep the outside files to a minimum.
All my work on the Help file may go in another direction. I am not sure I want to use the normal Windows HTML Help format, and may just use regular HTML files that load in the default browser. That would take some work on learning how to get a menu item to launch a link, but would allow me greater control of the look of the help documentation.
I made an install using Nullsoft Scriptable Install System. This is a freely available install system that is used by many large projects, including Google, to install software and will give The Daily Word a more professional looking install then the default install system that comes with Visual Studio 6.
My The Daily Word program is working! I put in a test chapter and it linked to it’s reading at the Bible Gateway. It will take a long time before I finish coding in every day’s reading… tons of coding to be done there, but I am at least on the right track and can provide any translation Bible Gateway uses.
I did spend a long time trying to figure out how to get hyperlinks to work, but it seems that functionality wasn’t really added in VB 6.0 without a separate control, so my thanks to VB Clarity for their Hyperlink Control, which gives me all the control I need over hyperlinks. It is truly a great control.
For now, I am working on the Help file, then I’ll get back to the long coding that lies ahead. Then I’ll enter Beta stage. That is the official testing stage for those who don’t know what the word Beta means.
The Daily Word program that I am working on is progressing nicely. After many hours of research, I found a way to get the calendar portion of the program to work, and to pass the date the user selected to the program, and to get the current date when the program first starts. I also have an official client to act as a supervisor for the purpose of my school’s externship. I am also studying How to study the Word by Terry Lawson to give me further insight into what I want and need in this program. Perhaps soon I’ll post a screenshot.
Presently, the program is being made in Visual Basic 6.0, which means it will be Windows only. I hope to port a future version to C++, which would make it easier for somebody to port it to Mac or Linux. I would prefer to use Visual Basic .Net, but as I noted before, my computer can’t handle that level of programming tools. 🙁
The Daily Word is a new program that I will soon be developing. Presently under initial design stages, The Daily Word, will offer users which chapter(s) of the Bible they are to read from that day, deepening on which read through the Bible in a year plan they have chosen. Hopefully, The Daily Word will also include Help from the Word, where the user will select an issue such as, Healing, Grief Recovery, etc. and offer a randomly selected verse dealing with that issue.
Initially conceived as a project to qualify as my school’s externship project, The Daily Word, has grown in design to a much larger project. I will soon be taking applications for alpha and beta testers, so watch this site for more details.
For a variety of reasons, The Daily Word will be limited Windows. Also, my present computer is not the best platform to develop software on, and some planned features may have to wait until I can get a better computer and can upgrade my development tools to Microsoft Visual Studio .NET 2003 Professional Special Edition (the sad part about that is that the versions of Visual Studio tools that I have now do not qualify for the Upgrade version so I have to get the far more expensive full version, besides, Visual Studio 2005 will be out sometime later this year and looks, at this point so close to release, to be worth the wait… beyond the fact that neither would work on my current computer anyhow). Anyhow, I should be able to get it to the initial stages on my current computer and current development software.