CodeIgniter is a powerful object-oriented PHP framework that Nathaniel introduced me too. It saves a lot of time and pain by structuring your PHP-based application in a logical way while providing you the tools you need to easily render forms, safely access databases, and much more with minimal code. It also utilizes the popular Model-View-Controller (MVC) design, commonly seen in Java Enterprise and ASP.

Trademark of Code Igniter

Trademark of CodeIgniter

Unfortunately, CodeIgniter may not run nicely with certain configurations of PHP and non-Apache web servers due to the handling of the PATH_INFO variable (common diagnosis is only being able to hit your index page, no matter what the URL is). The following sets up PHP and Abyss Web Server to handle this issue.

Read More…

Posted by: Josh | December 2, 2008

School is eating all my spare cycles

First of all I’d like to state that this blog hasn’t been abandoned – I’ve just been overwhelmed recently with assignments, school projects and finals. It’s also introduced me to developing rich client applications/plug-ins on the Eclipse framework (see these tutorials from Eclipsecon 2005, old, but still very relevant) and sparked some interest in AspectJ and aspect-oriented programming.

Trademark of the Eclipse Foundation

Trademark of the Eclipse Foundation

For those of you that aren’t familiar with Eclipse, it’s well known as a Java-based development environment for software development after starting as a project within IBM. WIth Eclipse’s RCP and plug-in development tools, you can develop and deploy your own application on top of the Eclipse application framework.

Left, the Eclipse Java Development Environment developing a rich client application; right, the rich client application running the Eclipse framework

Left, the Eclipse Java Development Environment developing a rich client application; right, the rich client application running the Eclipse framework

As for current projects; the ResNet Quota Monitor has since been revived with a revamp to the UI and feature improvements. Also, I’m putting together a prototype for a Helpdesk agent assistant environment called the “IT Help Desker”. More on that and many other techy tidbits in the weeks to come!

It’s common to just take it out of the box, hook it into your network, and never touch it again. Remember that routers are miniature computers too! If you have the right hardware and a bit of spare time, you can make these little boxes do more than just share your Internet connection.

Unlocking your router's potential - not like this.

Some common uses include:

  • increase signal strength above factory settings
  • managing your network from the Internet
  • synchronizing a dynaminc dns address
  • additional layer of firewall protection and parental control
  • turn on your computers remotely
  • using it to access a wireless network/increase its range

Interested? There are countless other uses as well.  But how are these features possible, and why aren’t they all available when you buy your router?

Read More…

Ever wondered how to connect to your home computer from the office, school, or anywhere with an Internet connection? It’s possible, and that’s through a service called dynamic DNS.

Why would you want to have your home computer available on the Internet?

Of course, you restrict what your visitor can access using a firewall or router, so that the rest of the files on your computer and computers on the network are safe (you should be doing this anyways!)

xkcd - Map of the Internet

So what’s wrong with finding out your IP address ( example, by ) and using this?

Read More…

In this day and age, we expect websites to be more than information vectors. Just like your favourite sports car, not only does it have to get its job done, but it has to get its job done in style. Meet Nathaniel Sabanski, and he’s the Web equivalent of that Aston Martin engineer who puts all the right curves in all the right places.

It’s Nat’s birthday today, so I’d like to wish him a happy birthday! Nat has been my long-time tech collaborator and beta tester; he helped me to solve the Tetris Cube puzzle earlier this year and run several compatibility tests without any hesitation over the years and for this I thank him.

Nathaniel does one of the best theme integration I’ve ever seen – providing a balance of functionality and beauty. Some of his work includes… Read More…

Posted by: Josh | October 11, 2008

Evolution of Timetable Builder

In the beginning, there was darkness in the world of course registration. A certain coldness loomed over the inevitable scheduling of university courses every summer to make a timetable that works. Then, in 2007, Billy said “let there be automation” and Timetable Builder was born.

Read More…

Posted by: Josh | October 10, 2008

Download available: Resnet Quota Monitor

The first deployable for the Resnet Quota Monitor (build 1.2008.10.09) is now available from the Google Code repository. Enjoy! Note: you will need Java 1.6 or later for this application to run.

Please let me know if you encounter any problems, as well as providing feedback and such here.

Posted by: Josh | October 9, 2008

Project download repository available: Google Code

Well, I think I’ve found a location for project downloads – Google Code. I’ll be posting the latest stable releases of any deployable projects there, so make sure you check every so often to grab the latest versions.

Google Code Repository

Posted by: Josh | October 7, 2008

A guide to running Linux

Are you tired of hearing that endless bickering of who’s a mac and who’s a pc? Perhaps you’re just tired of looking through the same old windows or picking the same old fruit off the ol’ apple tree. Or perhaps you’d like to run applications on your computer like they’ve never been run before. Meet Linux.

Linux is an operating system, just like their other more-familiar counterparts. The difference is how it’s developed and maintained. For the most part, its pieces are open source, meaning the top developers from around the world can contribute to evolve this system.

This means:

  • faster updates and bug fixes
  • stronger protection of your personal security
  • more of what users want
  • a buzzing support community
You might’ve already seen Linux being run on the latest computers from Dell, the One-Laptop-Per-Child (OLPC) project, the eeePC, the Acer AspireOne, and the MSI Wind to name a few.

“Cool! I want to try this… but it’s an operating system – and mine seems to be working just fine!”

So there’s a number of ways you can get a get your feet wet with Linux without having to throw yourself into the deep end. We’ll explore some methods that don’t upset your existing system. Read More…

So you want to set up a web server? Why would you want to do that, you say? It’s great for a number of reasons:

  • hosting your own website, bulletin board, or blog
  • giving people read-only downloads (can be password protected!) to files
  • testing new versions of existing websites before they go live, without requiring an Internet connection, which even includes developing Facebook applications
  • run your own instance of WordPress
  • a great way to familiarize yourself with developing and deploying web applications
I’ll be guiding you to installing a server configured for the PHP Hypertext Processor (PHP). At the end, we can set up a MySQL database to store persistent data. Note that in this tutorial, there will be no direct linkage to this service – it’s up to your application to do this.
For most users, you should be following this basic server setup:

« Newer Posts - Older Posts »