Browse Category

Programming

Big News

Well once again me like some of my friends find it hard to actually get to the content page and add new stuff to their blogs but I think the news of the last 2 weeks really deserves a blog post.

Well probably the biggest news is from this week, Merinda and I have bought a block of land! And get this it’s in Mernda, that will make for interesting conversations and lots of spelling names over the phone. And it only took us a week to go from looking at existing properties to buying land and looking at houses to build!

With stamp duty here in Victoria being so high it doesn’t really make much sense to buy a fairly expensive property that will be over 20 years old.

The other big news is that I received a employee recognition award which is always quite strange. It was for integrating one of Microsoft’s better technologies into our product, the ability to write mini-dumps in the event of crash. Which then allows us to see the stack and trace the line of code that the crash occurs on.

Finally I wish to say that mustang (or JDK6 as it is now known) ROCKS it makes programs such as jbidwatcher seem so much more polished. With true double buffering the windows no longer goes gray when repainting, and the new register allocator that I talked about a while ago makes every java application fly. It’s still in beta but when it releases for real it will be a great step forward and with the open sourcing of the platform to be complete by ruffly the end of 2007 I’m looking forward to more java technology into the future.

Undelivered Mail And Incredible Building

Well aren’t I the lazy boy I haven’t put up a post in ages….

Well this week has been a bit stressful in getting a build ready so hopefully I can be excused.

If you are a /. reader you may have heard about a small start up called blue security who had a novel concept of fighting spam by sending thousands of un-subscribe emails to the perpetrators of the spam. I signed up for this free service and started fighting my spam.

However one of the leading spammers in the world didn’t like this idea much and started a campaign to stop the company. Bringing down websites such as tucows and typepad in the process. And eventually Blue Security threw up their hands and called it a day.

This has left me without a spam fighting technique and now with my email address well and trully in their address books. To the point now that I am receiving 2-5 emails a day saying that mail was undelivered so these quite insidious people are now using my address as a return address for the spam they send out. How Great!!!

On a note of the more professional nature we are trialling Xoreax Incredibuild, a distributed C++ build system for Visual Studio and it is going well. Nothing quite like your colleagues cpu idle cycles working for you instead of against.

Well I guess that is enough angst for one day.

Laptops and Email

Well it’s the start of a new year and I am back here at work. I have decided to get a laptop this year and finally replace my aging desktop. I got a Benq S52 v54 and got it salary sacrifice which is great.

A not about this laptop and Ubuntu though.. it doesn’t work, I got it working in widescreen using the 915resolution hack but that really doesn’t matter because the sound doesn’t work and acpi doesn’t work. So the laptop under ubuntu is basically useless. So I am using the WinXP (shiver) but I guess I will wait for Dapper Drake to come out and hopefully every thing is hunky dory. But for now I will just have to settle for windows and keep hacking on the Teachers tool for my wife there.

But here at work I have come across another interesting problem, we needed to integrate a c++ library for sending email to people to alert them to different situations. So I went on the hunt for a free smtp libarary that support HTML email, because we support multi-byte character sets such as Chinese as our main market. I came across a fantastic library from PJ Naughter called CPJNSMTPConnection which even contains a demo app. However for almost two days I fought with it getting a WSAECONNABORTED error on the connect command from WinSock. I eventually found the problem is with McAfee AntiVirus 8.0, you can see a full write up on it here.

But basically I put the information here for anyone else who comes up with this problem and goes for a Google.

Software Engineering

It’s been a long time since my last post, in that time I have moved house, done summer school and started full time work. And that goodness for that last point I am so sick of study. Only one more exam tomorrow to go yey.

Anyway today I came across such a great article that I just have to share it with the no readers I have here :P. Software Engineering, Not Computer Science it talks about how Software Development should really be thought as engineering and not a science or an art so much.

Lucky for me I am now a qualified Software Engineer however with the decline in numbers my Course at Swinburne will no longer be offered. And such a relevant course to do o well alot of maths isn’t for everyone.

MMMM Mustang

I hate to just blog about someone else’s blog but hey improvements in Java like this don’t come around everyday.

In the latest build of Java 6.0, Mustang, they have implemented a better register allocator and have managed to speed up the Hotspot Client by 58%. Now that is amazing and with other improvements like lock coarsening and escape analysis this platform is just going to fly. I can’t wait.

Study

You know what one of the hardest things to do after a year off (I was on IBL for a year at VSL) is STUDY.

I was trying all of last week, I got a little bit done but really not enough. After last year when I could come home and forget about work to this year being back on 24/7 with everything really sucks. So what did I do I started coding… Probably not the best idea but it has been fun.

I’m working on a program I call “TimeTracker” which is really a task timer for work so that at the end of the week I know where my 7.5 hours a day go at work. It is mainly based on TimeTool for Windows. It’s written in Java of course and is a lot of fun to get back into the coding side so here is a pre-alpha screenshot of TimeTracker.

Pre-Alpa screenshot of TimeTracker

Marked Up Code?

Wow look at that I haven’t posted in almost one whole month :mrgreen:. O yeah I have been on holidays from work for 3 weeks…. That would be it…. Nothing like camping in the middle of no where (Cumberland River) for a week to ween you off the Internet and blogging….. Anyway on to the good stuff….

I have just finished reading one of the most interesting and thought provoking articles I have read in quite a while: Extensible Programming for the 21st Century. However be warned if you are not a programmer you wont be that interested :P.

It raises quite a good point we have XML based office documents in OpenOffice.org for Documents, Spreadsheets, Presentations and Drawings why don’t we have XML documents for coding. We use Rational Rose Real-Time here at work to code using uml diagrams but to actually remove your source code for the display of it would be an interesting thought.

You could end up with one language to rule them all really. What would a programming language be if you suddenly took out it’s syntax. It would only be the standard API of each language that would separated them in the end. Would it be the death of scripting languages such as python and perl. Or would these new XML documents just be parsed into the target language.

Just thinking now it would be possible if people had the motivation to do something like this around the eclipse platform. As a plug-in, I would defiantly try it out and with the way companies like everything documented it would be a fantastic way to do it. Suddenly you don’t have your UML diagram and your source code. Your diagram would form part of your source code.

One thing the writer forgot to mention was that COM+ isn’t the only thing that works in that way the Linux world now has d-bus and bonobo so it is there.

Anyway have a read and a think it will be interesting in the years to come to see if tools actually start appearing that work in this vein.

Crazy XUL

I have started to learn XUL over at XULPlanet and looking at the way Firefox works and have just been playing around and I made something cool.

And no this wasn’t created using the GIMP it was created using only Firefox so give it a whirl just click chrome://browser/content/browser.xul.

WARNING: This will most likely cause a NULL pointer exception when you close the window You have been warned.

That’s it for now but just wait for my XUL applications coming your way soon :)

Editited 2/01/2005: Fixed chrome link as noted in comment

Java 5 Released

Java 5 was released by Sun today. You get can get your J2SE development kit or JRE from here it’s been a long time coming but word has it that 6 will be out next year, or so says NewsForge we will see.

I haven’t had a chance to acctually code anything yet but playing around with the demo applets that came with it shows promise. Also the new Ocean look and feel works well when I fired up the most recent release of JEdit. Now… time for some J5 codeing :mrgreen:.

Are you ready for Java 5.0?

Surfing around today I found that the next major release of Java will not be the long awaited 1.5 but have decided to go straight for 5.0.

Java has always had a rather strange numbering system as they called Java 1.2, Java 2. This saw the inclusion of the swing toolkit among other things which was the real start for Java as a multi-platform solution as it allowed programmers to create one program with a GUI that could be run on any OS(Operating System) with a Java Runtime Environment or JRE.

But what is getting into Java 5.0 that makes Sun’s marketing department justify such a large jump in numbering? Well from the user perspective we will see another improvement in speed but not all that much new functionality. However programmatically we programmers will see a great deal of change and most likely many more pages into Java in a Nutshell 5th edition when it’s released. Some of these features include:

  • Generics – Similar to templates from C++
  • Automatic type conversion – from primitives to objects ie. int to Integer, double to Double…

This probably doesn’t really explain the fact that the people at Sun can not count but it’s probably more logical than when Netscape went from version 4.5 to 6 just to be at the same version number as Internet Explorer.