Monday, December 25, 2006

Eclipse with PHP and Java

I have been using Eclipse for some time now and it's the first IDE that I can compare to Visual Studio 2005. In some respects I'd say it's better than VS, but then I use them for different languages. I like the fact that Eclipse is multi-platform and free (as in open source).

Pluggabe!
One of the best things about Eclipse is that it is easily pluggable and has as a result lots of great plug-ins. I've been using the EasyEclipse Expert Java distribution with some of the EasyEclipse plug-ins, one of which is PHP Eclipse.

Slow?
I've heard some people speak of not using Eclipse because it's Java and "Slow". Now I don't have a fast computer (laptops are expensive things), but I'd have to say Eclipse is very responsive, way more so than VS.

Java and Eclipse
I found one site that is great for beginners of both Eclipse and Java. Dave Powell at Elon University has created a great video tutorial on everything from setting up Eclipse, debugging and GUI programming to unit testing in Java using Eclipse.

Experience with CakePHP and Eclipse
CakePHP is a rapid application development toolkit for PHP centered around the Model-View-Controller pattern. I've found it by way of searching for a PHP alternative to Ruby-On-Rails (as rails hosting is still harder to come by).
      Maybe I just don't know how, but I could not seem to make Eclipse use the correct coloring or syntax-helpers with the default .thtml view file suffix. I've solved this for now by using .phtml and in the controller set $this->ext = '.phtml';. After that Eclipse has been very comfortable to work with.
      Im using EasyPHP as my LAMP server.

Saturday, December 9, 2006

.NET game-related frameworks

Last Thursday I was at the first "Game Developers Evening" at KTH/Stockholm listening to a speech about XNA by Johan Lindfors.

This will be the first of a series of GDE's, hosted by various game development companies during the next year (have not found the schedule).

I will sum up some of the points of the XNA speech below.

One benefit of XNA could be said to be that you can develop games for both the PC (Windows) and the XBOX360. You have to have different projects for the XBOX360 and PC game but they claim that you can reuse 95% of your code.

Another benefit could be that it has a component structure that you can use to share game components, like an in-game browser or a special camera orientation.

As for using XNA to build games for the XBox360 you have to pay a subscription fee of $49 or $99 (4 months or a year I think) to get access to the runtime used. In the first release you would not have any way of distributing your games to others except by source to others that subscribe as developers on Live. Also you can't use networking in your game and subsequently the only option for more than one player is a split screen game.

At this point XNA uses DirectX 9, I'm not shure if this is supposed to change with a later release.

I think I will take this opportunity to mention about other .NET game related frameworks, namely BooGame and Axiom.

BooGame is a 2D-Game framework that is very similar to XNA in how you build the game, in other words, inherit from a base class, let BooGame run the game loop and have events or overrides tell you when to update or draw. The clear benefit of using BooGame is that you get a multi platform application. Also it never hurts to support an open source initiative. It uses OpenGL to render the 2D game which makes it very fast. I have not tried to use it with emulated OpenGL, but I guess that would work too.

I use BooGame for my NetPlanes game.

As for Axiom it's a 3D engine (not a game-engine like BooGame). It's a port of Ogre, a very good C++ 3D engine. There are a couple of wrappers for Ogre to use it with .NET programs. I have not personally decided what the best method is, Axiom isn't as mature as Ogre but the wrappers have some problems too.

My contribution to Axiom thus far is porting the first basic tutorial and writing a base code (inspired by that of Ogre) to use (inherit from) in examples.

Friday, December 1, 2006

.NET podcasts and more

.NET Rocks has a huge collection of hour long episodes (currently 204) which seems to be mostly interviews. Then there are Polymorphic Podcast that is smaller but has a lot of value to it (not just the show but the show notes with links and source code). Each, in it's own way is a good resource to keep track of the .NET world.

Another one is the Software As Shes Developed podcast which I haven't gotten into listening to yet. It's described to be about "Web/Ajax, Usability, Programming (Rails/Java/OO), Patterns, Agile" which are certainly interesting topics.

Monday, November 27, 2006

FreeMind

Some time back while browsing for something completely different I found this application called FreeMind. As it turns out I converted most of my text files into FreeMind mind maps and haven't turned back since =).

I love the way you can move nodes to change the tree structure and hide nodes you don't want to see. Or the feature where you can link to other FreeMind documents, web addresses and folders and have them open as you would expect them to.

Another neat thing is if you want to export the data to plain tab-structured text, you just copy-paste from the tree.

I'd recommend anyone who has to keep notes (for projects, studies, ... anything really), to go and check out FreeMind at http://freemind.sourceforge.net.

Thursday, November 23, 2006

First impressions: Ruby

People have been talking a lot about Ruby... and I haven't actually heard anything bad about it this far. And I like good things :), so I decided to try it out.

To start with many recommended this site: http://tryruby.hobix.com. And it's great except I never got past the File.copy section, seemed a bit buggy.

I'm quite used to C and C++ so I found To Ruby From C and C++ interesting. After reading that I went on to go trough the official Quickstart.

The best learning resource I've found this far would be Learning Ruby.

The .chm of "Programming Ruby" included in the Ruby documentation isn't bad either.

The way of installing a Ruby environment is generally said to be the One-Click Ruby Installer. It's a pack containing ruby, libraries, docs and the gem packet manager (and more). Never did get the included FreeRIDE to work (no output). SciTE and the Ruby In Steel plugin to VS2005 worked about equally as good (colors, no auto-completion).

As I'm on my way to becoming a .NET programmer I'm of course interested in the Ruby.NET project, and I've tried their beta version with some small programs. I'm a bit interested in using it for scripting, but I'll probably end up with Boo for that (as that language is written for .NET to begin with).

One of the best uses I've found this far for Ruby is with ruby-on-rails and I'm definitely going to try making a site with ruby-on-rails someday.

So.. what are my first impressions of Ruby?

I'd say it's about the same as I had with Perl or Python: it's fast and easy to write small applications but I miss the robust feeling of C++ or C#. However, you should certainly use the right tools for the job at hand so you'll never know when it might be usefull :).

Wednesday, November 22, 2006

Welcome to my blog =)

I've been thinking of creating some kind of homepage for myself, but it never really got further than that :). Some friends of mine started getting blogs and I like the simplicity of it all. This blog is intended to be about the tech side of my life. My intention is to use this blog to post information on various projects I'm working on and write about useful things I find as I keep myself updated on programming and technology in general.