Thoughts on Yii

I’ve been working with Yii for a while now, and my original, positive opinion of it, has only gotten stronger since then, to the point where I feel comfortable starting on one of my larger, paying projects in it. I’ve decided to write down my progress as I move along, hopefully resulting in a tutorial, to complement the Yii Blog tutorial. I’m not sure why it’s always a blog tutorial with these frameworks, maybe because so many would like their own blog, or maybe because they cover a lot of the basic elements, but personally I would like to see more advanced tutorials, that better showed off the depths of the framework, but that’s one of the reasons I really like Yii.. I feel like I can actually make a difference, and help out with it. Continue reading

Posted in CakePHP, PHP, Yii Framework | 10 Comments

Very simple source control for personal projects

I think that most developers have small projects, be they pet projects, or just ones made to test a specific programming language / framework, to get to know it more in depth by using it more practically, making the experiences that are often needed to make decisions, and avoid common pitfalls when working on larger, possibly commercial projects.

Personally I’m all for source control, but there are cases where my goals are not so much to keep a strict versioning information about the files, but rather just to make sure I have the source backed up, and I’m able to work on it from both my desktop workstation, and my laptop, without a lot of hassle, and while I normally prefer Subversion for my versioning needs, I find that it’s like shooting birds with a cannon when it comes to small projects.. It works, but it’s a lot of unnecessary work, especially since I’m the only one working on the project, I don’t need to do extensive testing of it before I commit the source. It also happens sometimes, that I forget to commit the changes when moving from one computer to the other, meaning I’ll either have to resolve conflicting commits later, or find another way to get it done.. Continue reading

Posted in General, Other, Projects | Leave a comment

My last slice of cake

For a long while now, I’ve been trying to approach CakePHP, and have somewhat enjoyed working with it, but it has been a long and rather troublesome path. CakePHP is a great framework, that much is certain, but it kept getting in my way, being a bit too automagic for my tastes, bugging me down with a lot of requirements in regards to conventions, and while those are good for many things, I found them to be in my way.

So when Daniel Hofstetter wrote about other possible frameworks, I decided to check them out, and I fell in love with one of them. Namely Yii Framework, which is another PHP framework based on the MVC design, and it has a lot of features that I like, but what I love about it is, that it took me only 2-3 days to understand how it’s all connected, and while CakePHP has a really nice community of people ready to try and help, with Yii, it seems that the main developer spends a lot of his time helping, getting people up and running with the framework, which I assume will enable the users to start helping with support, although I must admit that the documentation is excellent, and whenever a sensible suggestion to the documentation is made, it is carried out rather fast, usually within a few hours.

Now that I have a tool I feel comfortable using, I’ll probably start updating again more.

Posted in CakePHP, PHP, Yii Framework | 2 Comments

Missing documentation

I’ve been reading up on the CakePHP documentation (as I have mentioned a few times before), and I’ve noticed that there are some sections missing from it. Not a whole lot, but enough that one can miss some things. I have also noticed a lot of people complaining about it, or at least commenting on it, but I’m of the belief that one shouldn’t complain about things that one can change, and since they enable people to edit the manual, I’m determined to do so once I feel secure enough in my knowledge of CakePHP.

That being said, I’m almost done reading the manual, or the bits I need anyway, so I’m going to get started on the actual development. Also, a quick side-note here.. The Containable behaviour is brilliant and quite definitely one I’m going to use for my projects.

Posted in CakePHP, PHP | Tagged , , | Leave a comment

Regarding the CakePHP manual

I have to admit that I am very impressed with the manual for CakePHP v1.2. Back when I was using v1.1 it was lacking in a lot of areas, and my guess is that enabling users to edit it has done quite a bit, although from I understand, there are still a lot of people who use the Trac to suggest updates to the manual, rather than just adding them, but I guess that’s likely to happen.. After all, we are dealing with users here.

I’ve been reading the manual, and I’m about halfway through, reading it page-to-page, but I have a feeling I’ll be going back to some of the areas when I need them, until I get a hang of it again. I’m also thinking about going back to the CakePHP IRC channel, which is a really nice place, with friendly, helpful people.

Actually, I think that’s one of the things I like best about CakePHP, the friendly community. Of course, the structure of CakePHP and the way it works has a lot of say as well, but the community is what makes me stay there, and especially what makes me want to help out if I can. It’s also why I donated a while back, and why I’m going to donate more once I finish with this project and get paid for it. It’s one of those projects that I feel deserve donation. :)

So anyway, I will be posting more about CakePHP and my experiences with it, as I get further, but for now, I have set up my database tables, baked the application as well as models, controllers, and views for it. I’ve also added the tables needed for ACL, but I’m not entirely sure I will be using ACL for this project, so I’m skipping that bit for now. Once I actually know if I need it, or I need it for another project, I will return to it.

Posted in CakePHP | Tagged , | Leave a comment

CakePHP major minor version

I was discussing this with a dear friend, and fellow CakePHP enthusiast, the other day, and I felt like writing about it in my blog..

Over the past couple of years or so, CakePHP v1.2 has been developed, and while it isn’t officially ready for production use, I have to say I have found little to no problems with it, that would prevent me from using it.. So I am.. But what baffles me, as well as my friend, is the fact that this is a minor version change.. Going from v1.1 to v1.2 is supposed to be a minor version jump, and perhaps it is, but the number of changes, and the importance of these changes, are astronomical. I recently installed OpenOffice.org v3.0, after having used the v2.x range for a while, and I thought to myself, that this is actually the magnitude of changes found in that minor version update in CakePHP..

This, of course, beckons the question.. If so much goes into a minor release.. What sort of changes would then go into a major release? I’ve looked at the CakePHP Roadmap and it doesn’t even have a v2.0 yet.. There’s the v1.2, and some Bakery versions, as well as the usual Manual stuff, so I guess we won’t really know what the plans are for v2.0.. Unless of course we ask.. ;)

Posted in CakePHP, General | Tagged , , | 2 Comments

Change of plans.. Focus changed to Swimulator

I know I recently posted about getting started on another project, and I’m probably still going to be working on it once in a while, but I tend to push personal projects aside whenever I have a paying assignment I can focus on (who wouldn’t, right?) Continue reading

Posted in CakePHP, J2ME, Java, PHP, Swimulator | Tagged , , , , , , , , , , | Leave a comment

BSCurrency – Eve Edition

So I started coding today. I haven’t really gotten very far, as I have been out most of the day, but still, I’ve decided to write the Eve VM edition of my BS Currency application.

But why did I choose this over the other projects I had in mind? I guess it was a combination of things, really. The main being that I would really like the ability to look up rates while I’m out, but it was also a need to learn to use the Eve VM properly. I’ve written a small test app in it, and that didn’t work on my HTC Touch Diamond, so I sorta just let it rest, but the people at the Eve VM forum are really helpful, so with their latest suggestions, I’m going to try and see if I can’t make a functional application for my mobile, and then afterward, I just might make a J2ME version of it as well.

Also, I just might write down and publish the steps I’m taking in programming this application, though first, I might publish a small tutorial on how to make Eve VM work in the newer versions of NetBeans.

Posted in Currency Converter, Eve VM, Java | Tagged , , , , , , , | 2 Comments

Deciding on my next project

I haven’t really been keeping this blog updated, which is a shame, but then again.. I wanted it to be tutorials and tips and such, and that hasn’t really worked out so well, because I never really know where to begin when writing a tutorial..

But perhaps a developer’s diary will be better anyway? I think it might be, and that’s what I’m going to try and do, as soon as I decide on a project, that is. It’s not that I’m lacking the inspiration for projects, because I actually have quite a few projects I’m thinking about these days.

My first idea is a game, actually.. One that exists in quite a lot of editions already, and creating it would mainly be for my own benefit anyway, unless someone actually found it useful.. Anyway, it’s Sudoku. It’s a simple game really, and shouldn’t take too long to program, once I get the interface created. The pros for this project are, other than the obvious satisfaction of writing a game, that I enjoy Sudoku, and I can make it the way I enjoy playing it.. But there are some cons as well, the biggest being that it’s not exactly a constructive piece of software.. It cannot be used for anything practical.

The next idea is a currency converter, like the one I’ve already made, only better and faster, and with support for more units, as I would write both a J2ME version, as well as a version for the Eve VM. This is a piece of software that I know I will eventually write, but is it something I want to focus on now? I’m not entirely sure it is..

There’s also an expense tracker that I’ve been thinking about creating. That would primarily be for Eve VM, but I might also consider making a J2ME version as well.. Again, I’m not entirely sure I want to do this right now, even if it could potentially be very useful.. Why? Because so far it’ll only be useful for me. I don’t have any readers here, I think, so it’s highly unlikely that anyone is going to find them, much less a chance that they will actually have a use for it. Of course, I could find a way to spread it around, but it would also be a learning experience, which is why I’m considering it in the first place.

The final project I’ve been considering, is a calorie counter. It would be an obvious choice, if it wasn’t for the fact that my friend is working on one too, and from what I’ve been told, it has quite a lot of potential to be good, but on the other hand, we note things down differently when we register calories, so perhaps I should try making a version for myself, just for kicks.. And just to have something to do.. I don’t know.. But at least now I have it down in writing, even if no one else is actually going to see it. So I can think it through a lot better.

Posted in Currency Converter, Eve VM, J2ME, Java | Tagged , , , , , , , , , | Leave a comment

My current project

I haven’t updated this blog in a while, and that’s a mistake really, because I want to keep it occupied, but I haven’t been able to figure out what to write in my tutorial, so it will be a while away still. I want it to be useful for people who decide to read it, so it will definitely also contain various screenshots and such.

That being said, however, I have been working quite a lot on some J2ME recently, more specifically a project for a client on the Rent-A-Coder site. It is proving to be quite the interesting project indeed, even though the workload is a lot bigger than originally assessed, but luckily that just means that I’ll get paid more to do it. Not proportional to the actual increase in workload, but that’s okay. :)

The project is forcing me to seriously consider things like best practices for J2ME applications, and how to make things work properly for even the older J2ME-phones, the so-called MIDP1 phones. Coding around problems like the lack of support for floating-point numbers and math is quite a challenge, but one I quite enjoy.

There’s a lot of other things I’ve been learning about here, such as optimization techniques for J2ME, and other such useful information, so what this basically means is, that I’m going to be rewriting the BSCurrency application to support MIDP1, and to be faster and lighter on the system.. Not to mention easier to maintain because I’ve come to realize that Netbeans’ “Visual MIDlets” are best for those trying to learn how to program for J2ME, and that making the switch over to just “MIDlets”, giving you full control of the process, is a good choice for many.

One more thing.. I finally figured out how to easily compile for, and manage the code for multiple versions of the platform, thus using one bit of code for devices with MIDP2, and another for those that only has MIDP1.

Anyway, this is all I have to write for now. I will update again soon with something more interesting. I promise. :)

Posted in J2ME, Java, Other | Tagged , , , | 1 Comment