Ouch, I hate that kind of bug; I've certainly run into my fair share of uninitialized variable bugs in PHP due to misspelling something or incompletely changing the name of a variable in a program. I figured it was probably something like that; I'm glad you got it resolved! Good luck, and onwards and upwards with the project, eh?
Indeed! Now that the tiSAX-enabled module has been written, now it's on to tackling components! Smile

I'll be writing a ton of components. After components are stable, I'll write a couple of them, along with modules to go with, and extensions, and then possibly have a public beta release. When the public beta is released, I'll have the bug tracker and wiki known to you all. The wiki is going to have some in-depth documentation on how everything works (from beginner to advanced) and the bug tracker is for everyone to use, of course Razz

For the PHP coders out there that may try the pub beta, I would greatly appreciate source criticism. I'm not the greatest PHP coder in the world (contrary to popular belief Cool Laughing ) and so there will be massive amounts of code available to criticize Very Happy


Before I jump into components, though, I've got to write up a spec for it. I'm going to also write a spec for the module system, and see if I can improve it a little more...
swivelgames wrote:
I'll be writing a ton of components. .... modules to go with, and extensions.
Components, Modules and extensions.

Components are core things?
Modules are bigger versions of extensions
Extensions are small thing sto change functionality?

Or, what's the real difference?
comicIDIOT wrote:
swivelgames wrote:
I'll be writing a ton of components. .... modules to go with, and extensions.
Components, Modules and extensions.

Components are core things?
Modules are bigger versions of extensions
Extensions are small thing sto change functionality?

Or, what's the real difference?
Hop over and read my long reply to your post that you never read or replied to... *cough* Very Happy

haha, I kidd, I kidd. Check it out: http://www.cemetech.net/forum/viewtopic.php?p=103320#103320

In short, Components are large systems (like blogs, forums, image galleries). Modules extend components. An example of a module would be like a SAX client. Extensions are features for Modules that aren't automatically included. An example would be a tiSAX extension for a SAX module. This connect the SAX client to tiSAX. Smile

swivelgames wrote:
Lemur's structure can be illustrated like so:
    Core/User Framework/Template Engine
    • Components
      • Modules
        • Extensions
    • Modules
      • Extensions


So, for instance. You have your base installation, and you install a forum. Now you've got a forum website. You install the SAX module and it slaps it on the sidebar. You want to connect to tiSAX, so you install the tiSAX feature on top of the SAX module after retrieving your API Key from Kerm Smile
Now you have a forum with a tiSAX-enabled SAX client Very Happy
I had a feeling it was in that post Neutral

Got it.
I like what you did with SAX a lot, Swivelgames. Smile Thanks for giving me the idea of highlighting for me to borrow. Very Happy
Thanks very much, Kerm Smile
I was joking earlier about how you stole it from me Mad Laughing

I've got to find some time when I'm not tired and taking a break from working my butt off around the house to work on the Components spec. Wink
Still working like crazy around the house to get it to sell! Trying to get a job and manage my school schedule. Hopefully I'll have some time to pick this project back up! I want this project to succeed Smile
swivelgames wrote:
Still working like crazy around the house to get it to sell! Trying to get a job and manage my school schedule. Hopefully I'll have some time to pick this project back up! I want this project to succeed Smile
Yay, good to see you again, and I'm glad that Lemur hasn't been entirely forgotten. Good luck with all the stuff you have going on in your life.
Well, I haven't updated this in a while, so I figured I'd throw up a post.

Right now I'm working on writing a spec for a MongoDB version of Lemur. It looks to me like there's going to be some increased performance, and I think I know just how to structure the document-oriented database for Lemur Smile

It looks like a document/object-oriented database like MongoDB will suit Lemur a lot better. I'm excited to see how well it progresses from here on out Smile
I hear your thoughts about why a document-oriented DB would be better, but I'm hesitant about forcing people to install a new type of DB host software when MySQL and/or other flavors of SQL are so widespread. Nevertheless, it's your prerogative, and I look forward to seeing where you go with this and if you decide to stick with MongoDB.
That's the only thing keeping me from using MongoDB. However, it looks like the MongoDB is becoming more and more popular. For the sake of Lemur, and other developers out there looking for a popular NoSQL database resource, I hope it continues to grow and expand.

I'm still doing a lot of planning and such, and I'm trying to figure out if I can do the same stuff that I'm trying to do with MongoDB using a MySQL database. Object-oriented seems so much more convenient, though, and it's going to cut down a lot on overhead and source size.
Just to clarify, are you considering replacing *SQL with MongoDB, supplementing it, or still choosing between the two options?
That's what I'm trying to figure out at the moment, actually. I'm trying to see if I can add some support for *SQL databases, but offer MongoDB as the primary option. Because they're different database types, it could be interesting to see how well it turns out, but I might be able to write a universal database class (like I used for all my previous projects) which would allow me to write specific code for interacting with each database type. I'll need to brainstorm a way to do all these in the most optimal format. I might be better off with just supporting MongoDB, but I really like the idea of supporting *SQL databases along with MongoDB.
It sounds to me like the thing that appeals to you most about MongoDB is the fact that it's object-oriented, so if you had to make anything you could do with MongDB also fit into the confines of MySQL, there would be very little point in using MongoDB at all. Of course, then again you might discourage a lot of users who wanted to use a more tried-and-true database server. Just my USD0.02 and devil's advocacy. Smile
I agree completely. Which is also what I was thinking originally, but I was thinking I'd use it as an excuse to write something with MongoDB support (if MySQL would fit the bill as well as MongoDB) so I'd have a reason to get my feet wet.

I'll have to do some more planning, as well as some benchmarks. So long as what I'm hoping to do works better in MongoDB, I'll stick with it. If I can structure it to work with both, then it'll depend on the benchmarks. Regardless of the benchmarks, because MySQL is more widely supported I'll probably support it as an option and advertise support for both types (along with benchmark results).
swivelgames wrote:
I agree completely. Which is also what I was thinking originally, but I was thinking I'd use it as an excuse to write something with MongoDB support (if MySQL would fit the bill as well as MongoDB) so I'd have a reason to get my feet wet.
A fair point; I didn't think of that.

swivelgames wrote:
I'll have to do some more planning, as well as some benchmarks. So long as what I'm hoping to do works better in MongoDB, I'll stick with it. If I can structure it to work with both, then it'll depend on the benchmarks. Regardless of the benchmarks, because MySQL is more widely supported I'll probably support it as an option and advertise support for both types (along with benchmark results).
Excellent, that should work well; I look forward to seeing the benchmarks and planning notes when they progress.
I lost the most up to date version of Lemur. But since then I have accumulate a large sum of ideas on how to incorporate many new, and old, functions and features. Razz I've recently made my way towards a stable project.

Template System has been rewritten
  • Much faster
  • Utilizes new syntax
  • "Compiles" templates into PHP
I have take a very conservative approach to "compiling" templates into PHP, taking note of security as well as making sure dynamic content stays dynamic. Security, speed, and usability were my main goals. The user system has also been rewritten. The previous system was quite buggy and many of you had some persistent problems with the previous one.

I am excited to almost have a functional version of Lemur that I can deploy on Swivelgames.com. My main goal is to write something that's easy to customize for the new-to-PHP programmer, but flexible enough to stretch for more advanced programmers. I hope to release some vanilla source soon so that I can get some constructive criticism.

Disclaimer: I am fully aware that some of the code in this package might like somewhat novice or intermediate. Many of the more advanced programmers, with more experience then just a few languages, will probably take a look at this code and scratch their heads. That's actually very much what I look forward to!
Compiling templates is an excellent idea. Cemetech uses an advanced style/template mod for its forum (and therefore whole-site templating) that creates caches of templates, so I think that that's a good idea. I notice you mention code and packages, but I don't see a download link. Sad Great job!
Not yet! I'll be releasing it soon. At the moment I'm really trying to just fill it with content. Example pages mainly; Showing how to use the template system and such. I'm also working out a couple last few kinks that I know of and adding any last minute features and such before I release something like a beta source Razz
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 4 of 5
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement