Development is a re-occuring cycle of testing

Published on by Karl Lindmark 0 comments.

The process of developing applications is a never-ending one, seeing that it's not developing if one ceases to do so. That's pretty much what's going on with the framework right now; it's getting upgraded and updated pretty much all the time.

During the last week or so, the main focus has been set on the security measures concerning the comments, including (but not limited to) the integrity of both the website and its users. I'm also looking at non-obtrusive ways to handle spam, by using a CAPTCHA of some sort, and I've got my eyes on , as it's a benificiary for both the service provider and the user. More about that in a near future.

Let there be comments!

Published on by Karl Lindmark 2 comments.

I can proudly present a new feature at this website, a feature that enables you people out there to comment news articles. How fun ain't that? Hoo-rah!

You're allowed to use basic bbcode; links, b/i/u/s as well as code-boxes. Images however, are not allowed, as it would open up to a whole new world of mischeivous behaviour. It might be added in a future revision, although that would either need comment moderation, or some sort of image scanner that makes sure that the linked image isn't nasty.

Oh well, what are you people waiting for, get started already!

Backup: check!

Published on by Karl Lindmark 0 comments.

Wow, what a development cycle it's been so far, I can't say that I haven't been enjoying the challenges. I never really knew how I'd build the backup solution, yet it seems to have turned out ok; awesome!

Now it's possible to take a snapshot of the websites content, and restore it at a later time. Sounds good? Great! Although it's fully functioning and everything, I'm already trying to figure out a way to improve it; maybe with some sort of validation upon requesting to restore. Obviously this is just a safety precaution, to make sure that it's not a faulty click, someone hijacking an unattended web browser or something similar.

This is actually the first time I'm trying out the auto-sharing capabilities with real content and everything, so let's take this baby out for a spin, and see what she can do!

Auto-sharing new content: check!

Published on by Karl Lindmark 0 comments.

Even though I'm aware that one shouldn't start celebrating before crossing the finish line, I can't help but feel all happy and proud of myself. I've finally managed to conquer OAuth and auto-sharing stuff on Twitter/Facebook is now something that's doable.

I'll have to test it a little more though, before moving it into the production enviroment. Best guess is that it'll be fully functional by the end of the week, as I've got to test how compatible the administration is with the other web browsers than Mozilla Firefox. My money's on Internet Explorer misinterpreting some code!

Good night everyone!

My task-list is actually getting shorter

Published on by Karl Lindmark 0 comments.

This just in: my task-list has gotten a lot shorter since I started filling it with things that needed to be done. Although I don't really know if it's because I've formatted it differently lately, but it might actually be cutting in size as I've been progressing through it.

Oh well, I guess I'll have to fetch some more BETA-testers, just a few people that use the system as they would've use any other one (and hopefully finding a quirk or two as they do it). Well, who's up for it?

If you feel like helping out, just send us an e-mail using the contact form and we'll get back to you shortly.

A version tracker would actually be useful here

Published on by Karl Lindmark 0 comments.

I should consider using a version tracker, just so that I'll be able to see which version number I'm currently at. Seeing that I started at version 2 this time around, my guess will have to be 2.38 or something like that. It all depends on how large your incremental gap is.

The question that I always seem to answer in each article is probably something similar to the following one that I'm wrapping in a quote(just because I can):


What have you been doing lately? Which functionality is the most important to show-off to the world?


I think I'll have to have a go at the full-blown URL-rewrite of the administration; revising a lot of documents at the same time can be quite exhausting. I think I'm pretty much done now though, meaning that I'll do one of the following later tonight:


  • a) Watch one (or more) movies
  • b) Keep working my way through this project's bucket list
  • c) Go out and enjoy myself
  • d) Switch on my '360 and chitchat with fellow gamers


My money's on either a, or b... I'd actually bet more on b, seeing that it's my default action/activity. At least that's what usually tends to happen. I'll be back with another post in a near future, with more (so called) announcments to make.

A few minor adjustments

Published on by Karl Lindmark 0 comments.

I finally took the bull by it's horns, and moved the theme/language-switching to an account-level, instead of just having a global setting. What this means, is basically that the user can override the default language/theme by choosing another one for his account, instead of the one chosen by the administrative group. A power button has also been added for the AJAX-functionality, making sure that the user is able to switch it off if necessary (although I don't really see why someone would want/neeed to do it).

Last but not least, I've implemented a few search bars in the administration, enabling the user to find what they're looking for in a much more user-friendly way. Now there's no need to scroll through a long list of articles/items just to find that special one!

Conclusion: this week has been a week devoted to making the administration a bit more accessible for the end-users. Great isn't it?

Information about the recent downtime

Published on by Karl Lindmark 0 comments.

As some of you might've noticed, ninetwozero.com has been experiencing some issues the last couple of days, and access to the site had to be restricted; sorry about that. The website wasn't behaving properly due to the bbcode-parser and how the data on the website's stored, which prompted a semi-rewrite of the storage code to achieve better security and portability.

Now that we're almost fully recovered, we can resume our continous enhancement process, and start making those ideas we have a reality.

The BBCODE-parser is malfunctioning.

Published on by Karl Lindmark 0 comments.

Just dropped in to let you guys know that the BBCODE-parser is currently broken, and this issue affects the article about markItUp!. So yeah, sorry for the inconvinience. I'll drop in once again and edit this article when the problem's been resolved, just so we can set the record straight!

Let's take markItUp! for a spin!

Published on by Karl Lindmark 0 comments.

New to javascript and jQuery, I decided to try to make my own (extremely simple) "rich text editor", or as one might prefer calling it; RTE. RTE's are basically just textareas with extended functionality, making them more accesible for the user(s).

Adding an RTE to the administration panel felt like the right thing to do, seeing that you're able to use a restricted chosen set of formatting tools. After searching the web for an RTE suitable for my interface, I finally decided to take markItUp! for a spin. Let's see what the authour Jay Salvat has to say about his product:


markItUp! is not meant to be a “Full-Features-Out-of-the-Box”-editor. Instead it is a very lightweight, customizable and flexible engine made to meet the developer's needs in their CMSes, blogs, forums or websites. markItUp! is not a WYSIWYG editor, and it never will be.


MarkItUp! is as stated above, very lightweight, customizable and flexible; I got it up and running in a matter of only a few minutes. If you're looking for an alternative to tinyMCE and ckEditor, I highly recommend that you check markItUp! out; I'm pretty sure you won't regret it.

I've also added support for different themes in the administration panel, enabling the user to style the interface according to their own liking. Having a choice is great, isn't it?

Sessions are now controllable!

Published on by Karl Lindmark 0 comments.

Sessions are great, but if you can't control properly them - they're sometimes a hassle. I have the perfect scenario to illustrate why I consider them being that, as well as a solution to it all.

Let's say we have two accounts; Tom and Phil. Tom is the head of the page, and Phil is simply "just" a regular user. One day, Tom forgets to sign out his account while heading home, and unfortunately, Phil see's his chance to create chaos and misery.

Phil starts of by setting his own account as administrator, which gives him all the privileges to the website, and demotes Tom to the lower ranks. After doing such, he feels like putting Tom in an uncomfortable situation by posting multiple articles containing foul language and other inappropriate things using his personal account.

Seeing that the sessions are just set and then let loose, Tom watches the content go live from his PDA/laptop from his home an hour away, knowing that he can't do anything to stop him, except call the technicians to cut the power to the server.

My little anecdote above is actually one of the main reasons that I chose to implement some form of session management. This safety procedure could easily be compared with that big red safety-button on you can find pretty much anywhere. If someone tries to do something like the thing Tom did, we could easily boot him off the web page or just simple change his user account to something unusable.

Pretty neat huh? Power to the session management!

ATOM: check!

Published on by Karl Lindmark 0 comments.

Seeing that I've already put some RSS-functionality in the system, I couldn't just skip out on ATOM (an upcoming aggregating standard). If you click on the up in the address bar, you should be able to see the following two feeds:

ninetwozero.com RSS
ninetwozero.com ATOM

Use whichever you may or may not prefer, as the content in both are identical - it's just the formatting and structure of the file that's the big deal in this case.

Password recovery: check!

Published on by Karl Lindmark 0 comments.

I've never actually tried to make a password recovery-mechanism, as I thought that it'd be extremely hard to do. Guess what? It really wasn't, at least not the way I made it.

With that said, I'll (hopefully) never lock myself out of the administration panel without a (virtual) spare key. Function of the year? Yeah, at least until I come up with something better.

The next website upgrade will be a... surprise, as always!

Multilingual support: check!

Published on by Karl Lindmark 0 comments.

The (currently unnamed) framework has once again been updated, and the most recent update is the support for different languages, provided in a simple, structured language file.

The multilingual support enables the administrator(s) to switch between different languages for the control panel - how great ain't that?

The supported languages at the time being is English and Swedish, but we're looking into our chances to translate everything to French, Spanish and German too. We might even translate it to Arabic, no promises though!

Manufrog.com - it can't get any better than this

Published on by Karl Lindmark 0 comments.

When my web development-era began, I didn't really know where to put my creations so that they could be viewed on the Internet. For a short period of time, I borrowed some space on Sebastian Tornéus' web page until I set up ninetwozero.com at my current host - Manufrog.

At first glance, Manufrog seemed too good to be true; I mean, a yearly fee at 100 SEK for a sufficient amount of storage and bandwidth, as well as unlimited MySQL-databases and probably anything else one might need? Most web hosts provide the same things, but for ten times the price... ten times!

So I tried them out and now, 3½ years later, I'm still as fascinated as I used to be. Their support is invaluable even though the staff just consists of two people. You can pretty much send them an e-mail any hour, and you'll have a response in no time at all.

That's one of the main reasons why I recently decided to upgrade my account from the Lite to the UK Standard. Instead of switching host, I just got the UK-package instead, which pretty much ment ten times the space, three times the bandwidth and somewhat faster loading times for us Europeans... all this in addition to the heartwarming support.

Was it worth it? You bet; keep up the good work Manufrog!

Readable links: check!

Published on by Karl Lindmark 0 comments.

I thought that I'd make an effort towards Search Engine Optimization (SEO) and make the links more readable under the News- and Portfolio sections. Most of you people out there won't notice the difference, so I feel like I'll have to demonstrate it here.

If we use my previous post about RSS as a starting point.
Link before the change: news.php?id=7
Link after the change: news/7/rss_check.htm

In my opinion, it looks a lot better with a title in it than without; a random number by itself doesn't display that much information does it?

I'll get back to translating the administration now, and I'll probably be doing that for some time.

RSS: check

Published on by Karl Lindmark 0 comments.

I've finally managed to repair the RSS-feed, which means that you people out there can subscribe to this page and receive notifications upon submission of new posts - wonderful ey?

We will also be sending out notifications through Twitter (probably even Facebook too) in a near future, but I'll get back to you about that when that part is up and running!

Add pages on-the-fly: check

Published on by Karl Lindmark 0 comments.

I've been working pretty much lately, trying to seal the deal with myself concerning the functionality of this site. For most of you out there, the most recent posts have been a little too technical, but that's mostly because I'm adding features and need to remember exactly what I've done.

So... changes made the last couple of days include handling of dynamic subpages (such as about and services), as well as fine-tuning of the user account controllers. I've got a list of changes that I want to do, and I guess I'll just keep putting things on it as I progress downwards.

Back to work!

BBCODE-support: check

Published on by Karl Lindmark 0 comments.

We now have support for a couple of BBCODE-tags, and there are more to come in the future, as the demand of additional tags hit the surface. The currently supported tags are: [url=http://www.ninetwozero.com]url as in a link[/url], img as in an image , b as in bold, i as in italic, u as in underline and last but not least; s as in strike-through!

Next up is... checking out OAUTH, and how to implement the uprising authentication standard. If I ever manage to wrap my head around it, I'll be able to add some Twitter-support too, i.e. tweeting upon a submission.

Back to work!

Kvarnafriskola.se - new feature

Published on by Karl Lindmark 0 comments.

I just put the finishing touches on Kvarnå Friskola's website, and I'm pretty sure that they're gonna like it.

This time around it was time for a bigger upgrade; a gallery. I gotta admit that I found the assignment pretty interesting, seeing that I'd get to try some stuff I haven't been using that much - pagination for example.

Hope you put your new feature to good use, so that we can get some perspective of what the school looks like and things like that!

Ps. I'm aware that the Services-page lacks information, but I'm working on it. We have a saying in Swedish, that goes something like this "The one who awaits something good, never waits too long". That might be the case right now, but I guess you'll have to wait either way!

About-page updated!

Published on by Karl Lindmark 0 comments.

Just stopped by to let you know that the "About"-page is now filled with content. Does it feel like some information is missing? Send me an email about it and I'll be happy to throw it in!

Now I just got to compose some text, describing what I can do for you people out there and then I'm pretty much done with the basic content of the page. Wish me luck!

Portfolio updated!

Published on by Karl Lindmark 0 comments.

Wow, what a day. First the launch of this website early this morning, then the 10 kilometer-sprint I've participated in and last, but not least, the portfolio-update.

I just wanted to drop in a few minutes and tell you all that the portfolio's been updated and there's more content to put on this page, under the "Services" and "About us"-links. Those will be crammed with information in a near future!

Welcome back to ninetwozero.com!

Published on by Karl Lindmark 0 comments.

Welcome back to ninetwozero.com! It's been quite a while since you last saw this page, and back then it wasn't this fancy either, heh.

Although it might seem fully functional and everything, chances are that some things aren't and I'll have to straighten them out when I find them. After all, nobody, or in this case - nothing, is perfect!

So, let's end this entry in the same way we started it - welcome back to ninetwozero.com!