I recently had the chance to catch up with my friend Nick Palmer, the guy responsible for Palmnet. He’s recently launched Palmnet CodeBox, an online service allowing users all over the world to collaborate on code snippets. I’ve been given the opportunity to take a look behind the scenes and find out about CodeBox and other web 2.0 developments.
Phil: Hey Nick, how are you?
Nick: I’m great thanks, yourself?
Phil: I’m pretty good too. Lets get stuck in with some questions… what inspired you to develop Palmnet Codebox?
Nick: There is already a script called pastebin, but it has a few flaws. CodeBox was developed to iron out some of those flaws and create a better system for sharing snippets of code.
Phil: So you saw room for improvements?
Nick: Yes, I saw the original pastebin didn’t really give users ownership over their own scripts, and it didn’t even offer syntax highlighting while editing. I added these features in and a couple more, but you’ll have to go to the CodeBox to check those out.
Phil: How was it created?
Nick: Well I started late on a Saturday evening, probably more like Sunday morning! I just opened Adobe Dreamweaver and a few hours passed. I ended up with a simple database and about four PHP files, and thus it was created 🙂
Phil: What security implications did you identify and how have you overcome them?
Nick: Well there are rather a lot of XSS flaws that could have been potentially exploited. However, PHP has a really cool command: htmlentities(); that turns any normal code used in XSS exploits into standard and harmless HTML.
There were also a few database issues I had to patch up as you can submit SQL snippets, and obviously I didn’t want those running instead of being submitted to the database! But there are a few great articles on PHP and MySQL security I found through Google that helped me lock the system down.
Phil: What’s planned for the next revision?
Nick: In future CodeBox releases I plan to add more languages to the system. It runs using the Codepress syntax highlighter but I’ve already started to tweak it out.
I also plan to hone the system down some more, and add a search system in too, this way people can find snippets that might be related to their own.
Phil: So apart from the CodeBox system, what other web projects and tools do you make or help create?
Nick: Well I also run a questbar system, where people can show off their questing status for certain items. These need updating badly, but we’ll have to see.
There is a small group project of teenagers I’m a part of too. They basically all get together to learn about programming concepts and languages. Even though I don’t take an active part in the learning I help them along with the concepts of various languages and help some people out with their PHP.
There is also the great shoutbox system too. This is a cool little, well it used to be little, open source project which I took over from another person about a year ago now.
There is a new version in the works so I’ll tell you more about that nearer release date.
Phil: Can we expect more Palmnet tools soon?
Nick: I sure hope so! I plan to possibly open up the source to a few projects that are web based, like the CodeBox system, and perhaps start developing more offline applications too.
I’ve recently started getting back into Ruby development, so you might see some Ruby scripts rolling out soon.
Phil: You spend time developing these free, open services, what do you do to earn some money?
Nick: Well I have a fair amount of savings from my old job. Those seem to get me by in life and buy me my Subways daily.
Apart from that I work with you on commercial projects for PWnet, helping out with some of the more intensive backend systems. I recently designed a little events system for the BNTA, where they could post up events and do some quite neat stuff with the data, like use Google maps to plan journeys for people.
Phil: I see one of the greatest advantages over desktop applications is the ability to roll out software updates instantly for all users, do you see services such as Palmet Codebox replacing traditional desktop applications in the future?
Nick: Well, my CodeBox system won’t ever be as powerful as a full desktop IDE. But I do think that as online services progress, and alongside projects like Adobe Apollo, we will start to see more and more systems that are web based, only now with client side features too. However I don’t think they will ever be capable of the complexities of a modern desktop application, or at least not for a very long time.
Phil: In the world of web 2.0, what are you especially excited about at the moment?
Nick: I found a really cool search engine designed specifically round open source projects a while back called Krugle. It’s great. It has all this AJAX on it so it looks and runs really slick, and the search system is great.
You can look up source code from free open source projects, then if you find something good you can tag and comment it to help future Krugle users who might be after the same code, so it’s really innovative stuff.
Also I’ve been loving the Adobe Apollo system. It’s not out for the public yet as it’s still in the alpha stages of development, but it’s really nifty. It brings the web services aspect right to the desktop, which is neat. And anyone can develop for it too using a variety of languages.
I tried out some of the Digg API demo’s that use it and it was really neat, but there needs to be a bit more work done on it yet before I’d use it all the time. So I’m hopeful for the future of Apollo systems.
Oh, and Trillian Astra, some amazing features, too much to talk about! Go check out their preview site.
Phil: At one point many saw the web 2.0 revolution only in terms of its aesthetics, gradients and diagonal line fills! Nowadays the terms meaning is much more defined and we’re seeing a lot of sites centered around user created content and collaboration. What are your feelings on web 2.0?
Nick: Web 2.0 to me is pretty much summed up by cool websites with a minimalistic feel and a fair bit of AJAX. However, that’s not all. Web 2.0 for me is this new shift in the web, rather than static pages with static content about static things we’ve made it evolve into a much more dynamic place.
Blogs, for example. They get updated, tagged, searched, voted upon, commented… Much more than we ever would have thought about before. Thats web 2.0 for me.
Phil: Thanks for your time, Subway tomorrow?
Nick: Damn right 😉