Sibisy, the Simple Billing System, is up for your perusal. Download it and take a gander. It’s more of an acid test to show just how much you can get done with Clarion, than an actual program. A prototype I suppose.
Here’s an excerpt from the project page ::
So as it stands I learnt a GREAT deal from doing this. I would recommend any and all developers to regularly give this a go. 2 hours is a seriously short amount of time, and you’ll come out the other side more buffed up than when you went in. Brain-Buffed â€¦ heh heh. Ahh, the “humor” is returning.
So go to and get downloading. Install. Come back and flame me because it doesn’t work from scratch.
Download Sibisy 0.1.0
The file is 1,324 KB … not much at all.
Sibisy is a Simple Billing System.
It’s projected functionality was to allow you to enter Creditors, Bills, Bill Payments, and report off the Bills and Payments.
Extra functionality looked at exporting data to XML (amongst other reasons, for the inclusion into other Account packages), and the ability to Email straight from the program.
In developing Sibisy I wanted to do a number of things.
- Shed light on Clarion, and just how good it is
- Experience a very short Development cycle
- Hopefully, get some feedback from the public at large
- Add a few more notches in the brain towards becoming a better Developer
The subject matter wasn’t all that important, although for a while now I’ve been thinking about doing a simple billing system for family and friends. A way to track your bills. Of course, the main problem is that we want someone else to do the work, and that someone else is usually an Accountant with MYOB or Quickbooks. But maybe not. Hopefully not.
Wednesday, 25th January, 2006
- c60dosx.dll added to the install exe – Thanks Lil!
Friday, 20th January, 2006
- Download :: Sibisy 0.1.0
- Initial Project was a test to see what could be done with Clarion in 2 hours. The rules were:
- Only thoughts beforehand, no writing down of ideas
- No Code, that is, no handcoding in the project
- Fully installable executable by the end of the 2 hours
I initially broke up the 2 hours as follows (in minutes):
- Phase 001, 1-15 … planning, writing, no use of Clarion
- Phase 002, 16-105 … creation of Sibisy, first the dictionary, then the app, with any dictionary changes as needed
- Phase 003, 106-120 … creation of installation exe, testing of this install
It actually was a blessing doing this. Even though by the end of Phase 002 I was panicking. I spent way too much time on unimportant things, although was able to realise this at certain stages and sharpen up. Although would drift back into that ill-disciplined mindset.
What a blast. This was a great idea, and is definately the way to become a better developer.
Here’s my notes from the 2 hours.
- Started by fleshing out the file structures on paper. First thing is that I spent too much time doing the individual fields, actually writing their names down. I’m not convinced this is necessarily bad, but when on a time-limit it should definately be avoided. Doing the actual design of the database should take priority. File names and keys, and how they relate together.
Noted here that I would like to export bills to XML using the excellent IQXML. I have it in my clarion template registry, but haven’t used it yet.
Also noted the inclusion of Error Logging. At this stage, I hadn’t realised that this can’t really be done without handcode. Not with any precision.
- Ten or so minutes in and I came to the first awakening. I wouldn’t be able to have child files. PeopleCreditors and BillEntries were gonna have to go by the wayside. Wasn’t enough time for BillEntries, and PeopleCreditors requires (the way I do it) a bit of handcoding.Also by the wayside went the Options file (for printer defaults, etc etc). Owner Details made it in.
Owner Details is mainly there for the reports, so when you print something out your name, etc etc, can appear on the report. In hindsight this was a pretty big mistake. For one thing, this is a Billing system, don’t really need to send anything out. But also it’s not really a core part of the functionality. And I spent a LOT of time on this. Good to know for next time.
- Then started thinking through the actual windows of the program. By this time, Time is running short. Need some Browses, a few update windows, and the reports.
- Not much to say here except that it went pretty smoothly. I use Tarma Installer (free version). It’s very simple and easy. Does the job, quick to open, probably not as powerful as others, but that’s not what I needed for this.
Used Depenency Walker to check for the needed Clarion dlls, and put them into the application’s directory.
Install went fine, but I did it on this, my development laptop. Not sure how it will go on a clean machine.
Further NotesThere are a lot more things I wanted to get into this, but with the restriction of No Code made impossible to achieve. However, this allowed me to actually get the product done. Looking back, if I had allowed code, I would have wasted more time on the inconsequential, rather than the core.
So as it stands I learnt a GREAT deal from doing this. I would recommend any and all developers to regularly give this a go. 2 hours is a seriously short amount of time, and you’ll come out the other side more buffed up than when you went in. Brain-Buffed … heh heh. Ahh, the "humor" is returning.
Clarion, by Softvelocity was my tool of choice for the development of this project.
The only third-party template that I used was File Manager 3.
Okay. I’m doing it. Tonight. The start of something special. Weekly, Bi-Weekly, Monthly, … whatever. It’s gonna start tonight. I’m being active instead of reactive. I’m pushing ahead where my mind doesn’t know what’s going to happen.
2 hours. Only thought beforehand. Fully installable executable.
- Project :: Simple Billing System
- Time :: 2 Hours
- Choice Of Poison/Development Tool :: Clarion, by Softvelocity
- Environment :: Dining room table, Wifey watching tv in the background, airconditioner at 20%, no earphones (usually on when working).
- Rules ::
- No Handcode, only use the templates, and any 3rd-Party templates installed at the time
- Fully Installable, using Installer of choice, with all dll’s required
- Initial Thoughts on Breakdown (in minutes)::
- (1-15), Writing down thoughts, breaking up project on paper, no use of Clarion, although maybe some websurfing
- (16-105), Fire it up, go for broke putting the project together, starting with the Dictionary (file structures), then the app
- (106-120), Installation creation, testing on networked computer
I’m going to write in my notebook during the 2 hours, and then scribe it to the blog afterward. The times might be a little out, I’ll be going by my laptop time.
Okay, Nuff said.
Am having trouble connecting to the site at work, which is probably a good thing for anti-distraction measures, but it also means less opportunity to blog the instant i get an idea, which means that idea usually gets lost in the great unknown void of memory.
I’ve decided to embark on a project. It’s purposes are many-fold. It’s going to (hopefully):
- Increase the public awareness of just how good Clarion is
- Allow the experience of a Development cycle in a short time
- Get other people debugging the project
- Other …
I’m planning to create a piece of software from go to woe in a short time period, probably 2 hours. The limits will be:
- I cannot write down any thoughts until the time begins
- It has to be a full solution, including Installable executable file
- Obviously, it’s a Desktop development, for Windows only
I was also weighing up whether, to show just how cool the basics of Clarion are, to not use any embedded code. Any coding to speak of, Clarion being a 4GL, Rapid Application Development suite. Not sure about this still. While the template generated stuff is good, and you can get something up and running in the shortest amount of time possible, a few embeds greatly, GREATLY, enhance the functionality of the program.
As it stands, I probably will go with a No-Code ruling.
The next step of the Project is to decide what I’m going to put together. There are quite a few possibilities, but I’m thinking of a simple Contact Management System. But that’s after only a little thought, so quite possibly it will change.
So, more on this later.
Enjoy the weekend everyone, and may your sideburns (or lack of) grow large and wiry.
Okay, so I’m done. 2 hours. I’m going to article this up, but I’ll outline some stuff right now.
- Got way too distracted on the small stuff. Got all the way through the Bills, and didn’t get to Bill Payments, which was the last file-part of the puzzle. Lots more that I wanted to do.
- The No-Code rule really narrowed down the options. Couldn’t really use .inc files to establish Base Types, File Paths, and other mandatory stuff. Really was good to clear out a few cobwebs.
- Got a little lost a few times, not really knowing where to go with the fields and other things. This was probably because the telly was on and distracting me :), but also need to have a better grasp of the material.
There is lots more, but I need to compose my thoughts, upload the file, and create the pages needed.
I read a very interesting article today, Web 3.0 by Jeffrey Zeldman. It’s cool. In fact, it’s good that there is balance to the force.
I’m a bandwagon kind of guy. I’ll jump on and get excited about the descent into the dragon’s maw … but I’m also open to the words of caution.
And these are not just words of caution. Well, really, they’re words of annoyance at fan-boys and how you can see where things are going because it’s happened before.
What’s good is that it’s not a raving article … in fact, it’s more lucid than most Web 2.0 fan writings. Jeffrey acknowledges that you can make a lot of money jumping on and developing the next big Ajax-y thing … but you can also fail. In the end, it’s almost as if the journey of the article has mellowed his feelings a little. Don’t be a fanboy who blindly grabs hold of a single idea that’s the hype of the day, but don’t stop developing in Web 2.0. Enjoy it.
At least, that seems to me to be how it finishes. I might be wrong. But it’s a good approach to take. There is always hype, and there are always nuggets of truth and excellence found buried in the hype.
There are quite a few blogging engines available today. It’s important to choose the one that will give you the best shot at doing what we are about … Blogging. Writing your own, or getting into a very complicated blogging tool, is all well and good, but when the purpose is blogging, being able to post without trouble, then it’s very important to look at what you are going to use.
I began my blogging by writing my own engine. At the time, I had no idea what I was doing. I didn’t know the word "blog", and didn’t realise what a "content management system" was.
But now I’ve progressed. This blog was the first on the road to enlightenment.
WordPress. It’s the engine of choice for many people. Myself included. It’s got the power I need with the simplicity I need. It’s moddable. This is a big selling point. In fact, it’s a point all in itself.
Modability is vital because … a single mind comes up with a good idea … but a community, coming up with one idea each, gives a massive increase in functionality. This is the reason why I continue to use WordPress. There are a wealth of mods (plugins/themes) available. Plugins and Themes. There’s even Themes that are more mods than plugins.
To clarify, a Theme changes the way your blog looks, and a Plugin adds/changes the functionality of your blog.
But then there’s K2 which is a Theme that’s so much more than a theme. Dev Dawn uses the K2 theme, along with Paul’s Style for that Theme. Confused yet … my mind is whirring with excitement :).