Archive for the ‘Personal’ Category.

The dIntProg-Browser is uploaded

I’ve just uploaded my dIntProg-Browser — complete with color-coded sourcecode, Javadoc, and Danish documentation (the Javadoc is in English, and so are the other comments, so you should have a good chance of understand what’s going on.)

I’ve spend three weeks on it, and I’m very pleased with the result. The basic concept in the browser is a box. Some boxes, called flexible boxes, can contain other boxes, whereas some boxes, rigid boxes can’t. But regardless of the type, each box has the responsibility of drawing itself and any child-boxes. That system turned out to work very well. You can actually see the boxes if you run the browser like this:

$ java Browser -d

The flag -d turns debugging on, which makes some of the boxes draw their outline.

I hope someone finds this interesting — it was very interesting for me to try and make a webbrowser, as I’ve worked with HTML for several years now. This time I was the one who had to render the pages, not just design them…

I’ve made a webbrowser

Java I’ve been making a browser in Java as my final, big assignment in dIntProg — the introductory course in programming we’ve had this first semester. Today we had to demonstrate that we could make simple changes in the source. It wasn’t a real exam, but we had to pass to be allowed to go to the real exam in January.

There was five questions — I made all of them :-) They were all very easy, as the idea with the test is to check that people haven’t cheated and “borrowed” someone else’s source for the browser. If you had written the browser yourself, then they were easy, but if you didn’t know what was going on, the questions would be tricky.

Although it isn’t useful as a general browser, someone might find it interesting, so I’ll release it under the GPL when I’ve packaged it.

I’m on the Internet!

After waiting for more than two months, I’ve finally on the Internet again — most of the time, that is… The connection is pretty fast when it works, but I’ve had a lot of problems talking to the DHCP server. This has been a general problem for everybody here at Skejbygaard Kollegiet, so it’s not my computer that’s to blame.

But I’ve now downloaded about 2250 emails from my inbox — most of them were from maillinglists. But there were some personal mails amoung them — I’ll answer everything as quickly as possible. I’m sorry that I disappeared from the face of the Internet without a warning. Two months is a long time, and I have several projects that need some attention now (PHP Weather for one…)

That’s it for now!

Two more weeks!

Well, it seams that my last newspost was too uptimistic — as always… I’m still offline. But the good news is that they’ve published dates for when we’ll be connected to the Internet. Skejbygaard Kollegiet will be connected on November the 23rd — two weeks from now. So, until then — hang in there :-)

Two more weeks to go - I hope :-)

I’m still waiting for my Internet connection, which explains the lack of updates lately — sorry about that. The last thing I’ve heard is, that we should go online this or next week — it that holds true it will be great!

It’s been kind of strange to be without an Internet-connection for over a month — I can’t wait to get back online. I have tons of email to read, and lots of webpages to check out. A lot of my new friends use ICQ, so I guess that I’ll also have to give it a try. I’ve always preffered email over those instant-message protocols. Emails are nice because they allow you to read something, think about it for a while, and then answer it a couple of hours later.

I’ve borrowed a really good book about C++ from one of my neighbours. It’s called Navigating C++ and Object Oriented Design, if I remember correctly. So far I must say that I’m impressed by C++. The way objects are handled is sound and straight-forward, it’s surprisingly easy to overload operators like +, -, and so on. It’s also cool to play with generic containers and template functions. But the best think I’ve learnt is that you can avoid most of the pointer-madness from C by using references instead of pointers. Take this procedure as an example:

void triple(int & i) {
  i *= 3;
}
int n = 42;
triple(n);
cout << n << endl; // prints 126

It works just like a procedure in Pascal that takes a var-parameter. In C you would have to write it as

void triple(int *i) {
  *i *= 3;
}
int n = 42;
triple(&n);
printf("%d\n", n);

You have to call the procedure with the address of your integer instead of just passing it as a reference. I guess that I’ll buy the book by Stroustrup, as I’ve heard that it should be the Bible for C++, when I’ve read the other book.

That’s all for now :-)