Thursday, November 30, 2006
How vista is made
http://moishelettvin.blogspot.com/2006/11/windows-shutdown-crapfest.html
Yet another summer job
Dear all, here is another summer job offer. Please contact me if you are interested!
This position requires probably a student that has completed 2nd year (B+ grades or better) and has undertaken papers that gave them experience with Java programming environment. We will need a student that is motivated and able to think pretty independently – eg be comfortable with searching web for the tools/compliers they may need, and setting up the environment on a PC. There will be plenty of help available but it won’t be a hand holding situation.
The project involves editing, compiling and testing J2ME applications (mobile games). The source code is already written and tested, our project is to edit it to work on different devices.
Let me know if you think you have a suitable candidate for this work. It will be for the whole summer vacation period (10 days off at Xmas), 30 to 40 hours per week, paid at Student Job Search type rates and based in
Tuesday, November 21, 2006
JUNG (Java Universal Network/Graph Framework)
I have found a very useful open source Java library that seems to be suitable for projects dealing with graph/network analysis, small world stuff and visualization.
Sunday, November 19, 2006
Next IIST Seminar
Presenter: Prof Dorina C. Petriu,
Title: Performance Analysis of UML Software Models
Date: Wednesday, 13th December 2006
Time: 13:00-14:00
Venue: AgH3.43A (student project room),
Wednesday, October 11, 2006
Interships @ State Service Comission Wllngtn
Internship @ SAP Research in Palo Alto
The Open Source Research group of SAP Research in
looking for interns (3-6 months), to start at any time (not just in summer).
Open source research comprises analysis (analysing and
understanding open source software development processes, projects,
communities) and construction (contributing to and building open-
source based applications and components as part of our research
development efforts).
See my for details if your are interested.
Sunday, October 01, 2006
Kiwiplan Presentation
Gareth Gronin from Kiwiplan will present the company on Wednesday, 4 October, 2-3PM in AgH 3.43A. See www.kiwiplan.com for company details, the company is interested in employing Massey graduates (Software Engineering and related disciplines), and in sponsoring post grad research projects.
Latex and Eclipse
VAJ
/Jens
NZHerald article about Roy Fielding
http://www.nzherald.co.nz/section/story.cfm?c_id=5&ObjectID=10403888
Monday, September 25, 2006
Latex session
/Jens
Thursday, September 21, 2006
Presentation by Kiwiplan
Wed, September 27, 2006, 12 - 1pm
SSLB6
Thursday, August 31, 2006
Wednesday, July 26, 2006
Business Computing and Web 2.0
Corporate America wakes up to Web 2.0
Web 2.0 meets the enterprise
That is what we (Jonathan and myself) were just thinking about. Note the nice features on the web page: there is a shortcut to bookmark the articles on delicious, and a mind map showing related articles.
Tuesday, July 25, 2006
Eclipse-based IE for Google's GWT
http://www.webpronews.com/topnews/topnews/wpn-60-20060720IDEforGoogleWebToolkitDebuts.html
Sunday, July 23, 2006
Presentation by ORION: give aways + jobs
There is a presentation by ORION on the 3 August at noon in SSLB3. They are given away a portable playstation! There are more good reasons to attent: Orion is one of the biggest Java shops in NZ and has employed our graduates in teh past. E.g. Jonathan Wright (Jared's brother) is working for them.
Java Actions
Java Actions let you move all gui component logic to an Action object, allowing it to
be used in multiple places (i.e. appear in multiple places in the gui).
There is clearly no reason to have any more than one Action object of
each type (I believe) - so that means Actions are inherently singletons.
If that is correct, does Java treat each Action as a singleton, or
should I explicitly make them all singleton classes.
The question arises due to code like this:
JMenuItem helpItem = new JMenuItem(new HelpAction());
.....
JButton helpBtn = new JButton(new HelpAction());
I have spent a bit of time rewriting the GUI components to deal with
Actions, as they tidy the code up quite considerably.
Cheers,
Jonathan.
Non-deterministic plugin loading and menubar item ordering
I was wondering if anyone knew in Eclipse how they went about placing menus
in the top menu bar. For example, how do they position 'Edit' after
'File', and how does the WOP plugin menu get added in the
place it was added.
This is the current problem I'm wanting to refine in Centruflow - as
little tweaks throughout my system can result in menus moving all around.
Cheers,
Jonathan
Wednesday, July 19, 2006
Opening files in Java
Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL \""+fileName+"\"");
and
Runtime.getRuntime().exec("cmd /c \""+fileName+"\"");
Both will equivalently load any (?) file, but only within Windows...
Then I stumbled upon two similar projects:
The JDIC library and similar functionality in the soon-to-be released Java 6.
Both of these abstract away the underlying way in which to load the files.
This is mighty handy, and so I thought I'd post it here to let everyone know.
Cheers,
Jonathan Giles.
Wednesday, July 05, 2006
Java Properties Rant
Grrrr, Sun's annoying me. I've been wasting my time trying to get a problem fixed that I don't think can be fixed other than by emailing Sun - but there is a chocolate fish there for anyone that solves this for me :)
Basically, Properties in Java can now be XML. I thought "swell, let's use that". As specified in the JavaDoc here it is necessary to include the DTD reference at the top of the properties file. That is no problem, as the file contents is listed on the page. When I save the xml in XML Spy however, it complains that the DTD is invalid. Looking at the file 'http://java.sun.com/dtd/properties.dtd', it is slightly different than what is on the page: it now has a nice copyright message and whitespace. It appears that this is causing the DTD to be invalid. It doesn't matter, the Properties object still happily parses it so no problem there.
Today I wrote some code to actually change property values and write them back to the XML (retaining all comments, etc). I set the DocumentBuilderFactory to not validate the file, as I knew it wasn't valid thanks to Suns DTD. However, I still get errors when trying to parse it due to the unexpected statement in the DTD.
I thought I could get around this by copying the DTD to my local codebase and using it there - but the Java Properties object expects a hard coded reference to their DTD or else it fails - so there goes that idea.
As far as I can tell, Sun is the single point of failure in my code, and they decided to fail.
Anyone have any ideas? It appears others have found my problem, like here.
[/rant]
Please let me know,
Jonathan Giles.
Sunday, June 25, 2006
Free visual XML Schema editor
/Jens
REST
- I have started with an XML Schema
- Communication is by plain POST requests
- I submit objects encoded as instances of the schema to the server, and get another encoded object back as part of the response
- The objects are actually Java objects, but this is irrelevant, I have generated the classes from the schema using Jaxb.
- I am using the Apache commons client to do the plumbing .
Object obj = ... ; // the object to be posted
HttpClient client = new HttpClient();
StringWriter stringWriter = new StringWriter();
// serialize object, uses the generated API !!
WopperRPCUtil.write(stringWriter,object);
// make request
PostMethod post = new PostMethod(url);
post.setRequestEntity(new StringRequestEntity(stringWriter.toString()));
int statusCode =statusCode = client.executeMethod(post);
Wednesday, June 07, 2006
Job offer at Toyota New Zealand
I have just received an email with the following job offer:
.. Once again thank you very much. Analyst job details below. Look forward to keeping in touch.
Good opportunity for a recent grad with the right attitude based at Toyota New
Customer Database Analyst
PALMERSTON NORTH
Are you interested in applying your IS skills within a business environment? Can you convert data into meaningful information for business users?
This role would see you:
• Extracting accurate and timely data for
internal customers
• Analysing campaign results and creating
reports
• Performing data mining and research to gain
customer insights
• Maintaining data integrity
• Contributing to new CRM systems
This exciting and varied role provides an immediate challenge to learn the existing database, as well as opportunities with the imminent transition to a new CRM system. As part of the Customer Dialogue Centre, you will be working across business areas and with various end-users and suppliers.
With a passion for accuracy and data integrity, you will also have a strong customer focus and an understanding of business. You will take ownership to meet project objectives and milestones; communicating easily with both technical and non-technical users.
Your proven knowledge of database theory will be evident in your tertiary level qualification or equivalent experience and you will have advanced MS Access and Excel skills. Familiarity with CRM systems and SQL programming would be an advantage.
This fantastic full-time opportunity provides a high level of variety, autonomy, room for growth plus the opportunity for you to work in a positive, friendly team environment.
To apply, please email your application to sarah@sterling.co.nz, or post to
Sterling Human Resources
Palmerston North
Phone 06 359 0024
Kind regards, Rodger
Rodger Spillane
Team Leader - Information & Research
Customer Dialogue Centre
Roberts Line │
p: +64 6 350 3474 │ f: +64 6 350 9359
Friday, June 02, 2006
Plugin-based Software Development
For example, I could have a static logging class that outputs to the console, or to file, email, etc - but how do I configure it on a per-customer basis? Configuration files? Sure, but I believe my solution is even better: drop the plugins you want into the plugins folder, and they'll just work.
This is very true - my build script compiles all files in a plugin into a single file, so each plugin truly is one file - making per-customer configuration simply a matter of reading the file names of the plugins.
So how does this work? I define a logging interface, and a logging extension point. Any plugin that wants to be a logger says it wants to be an extension to the logging extension point, and then simply implements the logging interface. Logging will then work regardless of the number of plugins I have that extend the logging extension point.
Clearly there may be instances where I only want one plugin to extend a certain extension point, such as only allowing one extension to the GUI extension point. This is also easily handled - simply state that the extension point multiplicity for this particular plugin is 'one'. Easy.
Ah well, That'll do for now,
Monday, May 22, 2006
Site Feeds
Tricky questions
- How does the initial handshake in TCP/IP look like?
- What happens if you kill a Java process with "kill -QUIT"?
SF Subversion
OpenSource in NZ
Tuesday, May 16, 2006
New books
Google plans Aussie internship program
Software engineer has been named the best job ..
http://money.cnn.com/magazines/moneymag/bestjobs/