I am a generalist by nature. I like to know at least a little about everything, and preferably a lot about most things. When it comes to software development, it means I’ve used a whole bunch of languages and frameworks and keep working on learning new ones when I can. Well these days, in addition to the Android and BB projects, I have some time to learn more stuff as well. Some things I have to relearn since a consequence of using lots of different languages is that you tend to forget details in the lesser used languages. For no reason whatsoever, here is a list of some things I’ve decided to work on.
Mainly because of the Mindr project and the fact that I wanted to get into mobile app development (one goes with the other), I’ve been doing some Android development. It’s Java based, so not that hard to get into other than having to learn the framework and application lifecycle. Not difficult, just new. I like the openness and ease of development and publication which makes it really nice for developers. It’s given me a lot of ideas for other projects, once I get the time. Of course, I should probably get a newer Android phone to play with as well. And as I work on them, I’ll post here since that was the main intent of the blog.
These kind of all go together. When I was starting the BB port of the Mindr project, I looked at doing BB native or Webworks. Since BB10 native development is significantly different from pre-BB10 native development, Webworks won. At least code could be shared between the two versions even if they can’t be identical. I’ve actually done web development in the past, but that was a long time ago and it has evolved significantly. I really like it now and there are just so many things that can be done with it. Plus, with Webworks or PhoneGap, I can still target mobile devices and make mobile apps with it if I want, which I may. Some of those Android projects may well end up being PhoneGap.
Originally, I wanted to learn Ruby on Rails, but I didn’t have the time to get into the relatively steep learning curve required for Rails. I’ve done PHP in the past, and figure if I’m going to have any kind of server/web app, I need something. The nice thing is that PHP has a ton of frameworks out there. A couple I’ve started looking at (but not learning yet) are CakePHP and Yii. Leaning towards Yii right now as it seems to be more flexible and newer (although the creator worked on another PHP framework so it isn’t really completely new). PHP is also supported by more hosts than Rails so may be a little easier to use in the real world.
I’ve done a lot of .Net client development. I’ve even designed an ASP.Net site and directed the actions of developers on the project, but not a lot of actual development. If I ever decide to do a real job again, this is one option, so I’ll be at least reading up on it. .Net development is more expensive to get into (vs free) so that is a bit of an issue. Historically, it’s also been more verbose and less efficient than other solutions, but it’s still used quite a bit.
You may notice the lack of iDevices on here. Mainly that is because I do not have any iDevices or a Mac. It is probably something I will look at at some point, but I’m cheap and don’t want to buy a Mac. From what I’ve heard, Apple also makes it a little more difficult to develop on than the others. Plus, Android now has a greater market share, so may as well start there.