Netsurf examinedBy Chris Williams. Published: 2nd Jun 2003, 20:50:41 | Permalink | Printable
We talk to the developers of the open source web browserInterview Although the RISC OS platform has, in many areas, a good range of commercial software, having a base of freely available tools and applications is ideal for new users, who can later purchase commercial alternatives. Connecting to the internet is one area of RISC OS that's a smooth enough journey with applications like Sockeeter, Messenger, Newsbase, Nettle, FTPc and others to guide you; it's a smooth ride until you try to find something most users take for granted on other platforms - a modern, competent and free web browser.
This is why Netsurf is rather important and also rather ambitious. It's an open source project to develop a freely available native HTML 4 and CSS supporting web browser from scratch, for RISC OS. Firstly, let's get one thing clear: Netsurf is still very much in development and it's still finding its feet; producing a web browser from scratch is a big task and already the source code is over 600KB. However, having learnt this week that the pace of development has recently picked up, we were eager to find out more about this emerging software.
Earlier today, we spoke to James Bursa, who is one of the Netsurf project leaders to hear his side of the Netsurf story.
"I decided to get involved when there was a discussion about writing a browser on an Iconbar forum", James told us. "I'd already done a bit of experimental code because I was interested in rendering HTML / CSS, so I contributed that as a start.
"My approach to developing it was to start with what I thought would be the hardest part, which is rendering HTML using CSS. It's kind of interesting to see the web from the other side than writing pages".
James commented that amongst the project developers, there is an emphasis on having fun. However, he would like to spend the Summer working on improving communication within the development team. As James doesn't have access to his RISC OS machine all the time, he instead cross-compiles NetSurf on a PC with the GCCSDK and tests builds in the emulator ArcEm.
"GCCSDK is an excellent environment, because I can use tools such as make, parser generators, perl etc. very easily", James added.
"I always look for libraries implementing stuff before attempting to write it myself", James continued, on the subject of Netsurf using libpng, libcurl and other open sourced libraries. "...We use libxml to parse HTML, libcurl to fetch files. Porting these libraries with GCCSDK and Unixlib is trivial, it's no work at all.
"I've tried to make the code as simple as possible so the renderer uses CSS for everything internally. Most HTML elements aren't hardcoded, they're just a rule in the default CSS. You can see it in !NetSurf.Resources.CSS.
"As for developers, things have woken up recently. Most of the code there at the moment is by monkeyson [Phil Mellor] (front end) and me (back end), but jmb [John Bell] is now adding functionality (forms and proxies) and Phil Pemberton is looking at doing GIFs. I've also had contributions from Justin Fletcher, Andrew Duffel has been doing graphics and stuff."
The browser has a modular approach to supporting image formats, making it easier to add in code to allow a new format to be rendered by the browser software. The file fetching code has also been re-written. James admits that there's still a lot of work to do although the project team welcomes any patches and code from outside of their group.
"Firstly, we're just a fraction of the way [through] implementing the HTML 4 and CSS 1 (or even 2) standards completely. Then, we need to work on the quality of the code. For example, there are many leaks, the code is badly documented, and NetSurf will exit on any kind of error.
"I'm sure there will be many areas which have to be rewritten again as we reach limitations in them. I guess I'm pleasantly surprised by our progress though, things have really been picking up recently. I wouldn't have been surprised if the project didn't make it, but I think that possibility has passed now.
"In a year, I'd hope that we're being used as a primary RISC OS browser by people, but it's really difficult to predict. It's just over a year since the project was set up. I'd like to concentrate on getting NetSurf to display valid websites nicely first, but we have to deal with the actual web I guess. It's frustrating that there are so many badly written sites out there."
Click on one of the thumbnails below to see the current developmental build of Netsurf in action with various websites that don't upset it. And yes, they do appear to be using a theme designed for Castle Technology's commercial Oregano web browser.
NetSurf project homepage
Previous: Printers+ really open sourced
Next: GAG 2003 show news
DiscussionViewing threaded comments | View comments unthreaded, listed by date | Skip to the end
Please login before posting a comment. Use the form on the right to do so or create a free account.
Search the archives
Today's featured article
Star Fighter 3000: The Next Generation review
Star Fighter 3000: The Next Generation was born from the 3D0 version of the original SF3K that was ported back to RISC OS and this year freed from programmers' hard discs for the platform to enjoy, writes Andrew Weston. In this review Andrew weighs up much-improved graphics and sound against playability and stability.
19 comments, latest by AW on 9/12/08 8:45PM. Published: 17 Nov 2008
Castle cooks up another Iyonix special offer
Flogging a dead horse?
36 comments, latest by jess on 07/06/05 12:09AM. Published: 2 Jun 2005
News and media:
RISCOS Ltd •
RISC OS Open •
MW Software •
Advantage Six •
CJE Micros •
Liquid Silicon •
Chris Why's Acorn/RISC OS collection •
The Register •
The Inquirer •
Apple Insider •
BBC News •
Sky News •
Google News •