Friday, March 18, 2011

The dead grandmother syndrome

being an academic, I get to see bright and enthusiastic students every day who cheer me up with their joy, their views of life and wonder at the future. .... except...

now I am also the course coordinator for the BSc(Information Technology) and academic advisor for the faculty of engineering and IT for IT undergraduates. This means, apart from my normal teaching and research workload, I have the additional joy of dealing with special considerations, misconduct appeals, exclusion "suspension" appeals, heaps of paperwork and administrivia and ... blarghhh!!!

Normally it's great. But one thing I have noticed (and my fellow coordinators and directors) is the dreaded .... drumroll ... DEAD GRANDMOTHER SYNDROME.

It seems that for some unknown reason, grandmothers start to get sick just before the final assignments are due at the end of semester, then die just before the exam. In fact, sometimes students claim all 5 grandmothers   have died over their past 3 years at uni. Oh, wait, was that the other grandma? Oh, sorry, we don't have death notices or records in vietnam. Oh, I meant my girlfriend's grandmother.

But seriously, here is a paper on the dead grandmother syndrome, also called the "The Toadstool Waxing Plan" in bulgaria. See http://www.cis.gsu.edu/~dstraub/Courses/Grandma.htm


Further research is needed over why grandfathers don't have the same problem...

Wednesday, October 27, 2010

Callan Park - OUR plan, OUR say

This website is the worst example I have ever seen of 'push polling' - your options are only to 'support this plan' or do some minor tinkering with 'my options' questions which are specifically designed so you can't change the major parts of the plan.

As an academic, I find this planning/survey question process quite un-transparent and would violate/fail our ethics committee on the structure of the questions.

I would almost laugh at this attempt to push an opinion, except instead I am crying since I am a local resident.
How on earth did this so-called survey occurred? Who approved it?

Monday, September 20, 2010

TinEye Reverse Image Search

TinEye Reverse Image Search

Tried this out today - you can upload an image, or provide an image URL and it will detect (using image recognition) where else in the web is the picture. It's quite remarkable and works quite well. I'm using it to track where students are copying images and diagrams from, without acknowledgements..

Now only if turnitin does the same thing for essays/reports ...

Wednesday, September 08, 2010

Bug in Helios - J2EE Module dependencies KAPUT!

Those idiots in charge of Eclipse WTP have done it again.

Apparently they have removed the J2EE module dependencies feature in Eclipse 3.6 Helios WTP 3.2.0
What this means that if you have user libraries which your project will depend on (like.. say... JSTL or JDBC or something like that) normally under the old Galileo version you would:

1. Add a user library (or external jar or whatever) to the Java build path (Libraries -> Add External Jars).
2. Modify the J2EE Module Dependencies to export this (so it will get copied into the WEB-INF/lib directory or / depending on whether it's a WAR, JAR or EAR project)

Helios way:
They removed J2EE module dependencies, and now have a new feature called "Deployment Assembly" - which by itself looks interesting (directly map the source paths to deployment paths - this is goodness indeed). However, it forgets completely about the Java build path - ahem folks, how the F^*(^ do you mark the libraries to be exported to WEB-INF/lib ?? ooops... bbzzztt... epic fail.


Effectively, the missing libraries will appear due to the "Classpath dependency validator" which will indicate which libraries will be missing from the Webapp. You then select each miscreant and press QuickFix (Ctrl-1) to fix - ie: "Mark the associated raw classpath entry as a publish/export dependency"
(or the negative case: Exclude the associated raw classpath entry from the set of potential publish/export dependencies")

From what I gather, this is the ONLY way to do this until this bug is fixed.

The referenced bug may be fixed in Helios SR1: https://bugs.eclipse.org/bugs/show_bug.cgi?id=306462

Pain.

UPDATE: New way around this stupidity
Choose Deployment Assembly:
Click Add > Classpath Container > User Library > whatever
Now it will work. Geez!!


Wednesday, August 25, 2010

Android still sucks - still no WPA2 enterprise support!

Now I am running android 2.1, update 1, and still Google have not updated their fricking UI for WPA2 Enterprise.
Are they mad? Are they INSANE?
Even worse my wireless no longer works - their update overwrote my /etc/wifi/wpa_supplicant.conf with a dummy WRITE PROTECTED one so my old wifihelper app (and wifinder) can't write to it.

This means my Motorola Milestone does not work with most common university/corporate networks. My ipod touch seemlessly works. Android developers - I HATE YOU.

Oh, of course, I could ROOT my phone so I could update it myself (or use wifinder again). Pain in the (*^(*^(!

What is so embarrassing is that we teach android at this uni and our students can't connect to the network here - we use UTS-WPA (a WPA2 Enterprise network - simple set up,  just use WPA2 + AES for stage one, and EAP = PEAP for stage 2. Just use student/staff number and your email password)

For eduroam, you use EAP-TTLS, and use the PAP (nnnnn@uts.edu.au, password) instead.

SIMPLE EH?

Monday, August 02, 2010

Quality-oriented teaching of programming

Quality-oriented teaching of programming

Worth reading. I see this all the time too.
Why is there a double hump marks distribution with programming subjects?

This post is a good reason why.

mmm...

Tuesday, July 27, 2010

What is your personal organisation style?

Love this quote:
Schlenger and Roesch describe five distinct styles to organizing time:


 

  
  • The Hopper quickly and and frequently switches tasks throughout the day. Hoppers often enjoy variety and like to feel the gratification of completing small tasks, but they may be easily distracted by other people or technology. This is the most common of the temporal organizing styles.
  • The Perfectionist Plus seeks excellent performance in every activity, sets very high standards for herself and others, and may have difficulty distinguishing between valuable and less-valuable uses of her time.
  • The person who is Allergic to Detail enjoys thinking about the big picture and new ideas, sometimes neglecting smaller details or follow-through.
  • The Fence Sitter can see both sides of an issue and thoroughly researches upcoming decisions, both large and small, sometimes to the point of forestalling action.
  • The Cliff Hanger thrives on adrenaline, deadlines, and external pressure, but sometimes loses track of all the commitments he's juggling.
 
Schlenger and Roesch describe five styles of organizing physical space:


 

 
  • The Everything Out likes to have reminders, mementoes, and project materials in plain sight and within easy reach.
  • The Nothing Out prefers to have surfaces cleared off and materials stored away.
  • The Right Angler enjoys having things look a certain way, with the appearance of precision.
  • The Pack Rat keeps almost everything.
  •  The Total Slob believes that organizing things is a waste of time that could be spent on creative pursuits.

Chinese spam

Recently there have been a large number of chinese spamsters hitting my website with comments about their hackware websites (or some just plain strange ones). naturally these are blocked by me since I moderate every single comment.

But why do they pick on me, not the other ones I am aware of?

If you are a chinese blog-spamster,  F*** off!!

Blackboard aka UTS Online - how I hate thee

Our learning management system here at UTS is a pile of dog poo. It's so tedious to do anything and adds a lot of work to make life as an instructor painful.

There are so many websites and blogs  (google it)  bemoaning the pile of crap Blackboard inc. have written.

Sigh.

Tuesday, July 13, 2010

App Inventor for Android

App Inventor for Android

Oh dear, does this make us programmers redundant?

Apps for Android made easy - I now see a million iFart applications appearing...

Incidentally, It's amazing how your mind explores links - from this website I got to Kawa, then qexo (Xquery) which then leads back to HTML + JSP vs HTML generation via Xquery (http://www.gnu.org/software/qexo/XQ-Gen-XML.html) ...

Monday, June 14, 2010

Go Ahead: Next generation Java Programming Style

Code Monkeyism: Go Ahead: Next Generation Java Programming Style

here is a brief summary of style changes recommended:
Final is your new love
No setters
Do not use loops for list operations (hint: Use functional programming style)
Use one liners
Use many, many objects with many interfaces (ie: domain driven design)   
Use Erlang-Style Concurrency (huh?)
Use Fluent Interfaces (and Domain Specific Languages)
Data Transfer Objects without setters and getters (yeah, makes your code look simpler)

Sunday, May 30, 2010

Too Smart for good?


Being an academic, I find this article too close to the truth - I see the "honour roll" student and "gifted slacker" students in the same classes everyday.
Both need special motivation techniques. And I find them the greatest students to teach of all!!

What disturbs me is the "completely clueless" student who got in via "alternative" enrolment conditions. Most of these got into their enrolment WELL below the cut off marks.
Most universities offer "bonus" marks - some make sense (eg: 4 bonus HSC marks if you got high marks in Math for an engineering degree), but some of the marks are well ... pure charity...

Enterprise Software Development with Java: Spring and Google vs. Java EE 6


Quote:
Spring and everything around it is heading for the could. Literally with the speed of light. It only takes few weeks between new announcements around this topic. At the end of the day, Spring, VMWare and Google are providing a cloud based deployment platform for Spring based Java applications. That sounds modern, fast, easy and is potentially very interesting. It may provide the easiest, no-comprise way to publish Java applications. If you look at other cloud alternatives they are either more restrictive for the developers ("old" Google AppEngine) or provide services at an infrastructure level like Amazon's EC2. 

But: Spring and VMware are going to build their own Java universe where they dictate momentum, their 'standards' and more and more the commercial consequences as well. From an Enterprise Java point of view it's simpler. Too many things are called "Spring". And this makes it easy on the first look. You don't have to talk about 30 something specifications but about one big framework. And while Spring and Rod Johnson in particular have been extremely valuable in influencing the direction of Java (2)EE after the 1.4 release to the new, much more pragmatic world of Java EE 5, Spring has also caused polarization and fragmentation. Instead of helping forge the Java community together, it has sought to advanced its own cause. Which is perfectly valid - but should be recognized for what it is. Spring is not necessarily open, is not free, is not a community or even multi-vendor effort. Lock in with Spring is just another type of vendor-lockin. And that is, why it will never be a replacement for Java EE.
But there is another takeaway for the Java community and the owner of Java. The hype around innovative and integrated solutions is a proof for the Java EE universe moving too slowly along. Bring in more flexibility. Have more courage with changes. Find a way to adopt trends faster and support better modularity.

Monday, April 12, 2010

All Your Apps Are Belong to Apple: The iPhone Developer Program License Agreement | Electronic Frontier Foundation

UPDATED: All Your Apps Are Belong to Apple: The iPhone Developer Program License Agreement | Electronic Frontier Foundation

Oh boy. Apple have really made me angry. They are forcing this agreement down our throats.

Here is a partial quote:

The entire family of devices built on the iPhone OS (iPhone, iPod Touch, iPad) have been designed to run only software that is approved by Apple—a major shift from the norms of the personal computer market. Software developers who want Apple's approval must first agree to the iPhone Developer Program License Agreement.

So what's in the Agreement? Here are a few troubling highlights:

Ban on Public Statements: As mentioned above, Section 10.4 prohibits developers, including government agencies such as NASA, from making any "public statements" about the terms of the Agreement. This is particularly strange, since the Agreement itself is not "Apple Confidential Information" as defined in Section 10.1. So the terms are not confidential, but developers are contractually forbidden from speaking "publicly" about them.

App Store Only: Section 7.2 makes it clear that any applications developed using Apple's SDK may only be publicly distributed through the App Store, and that Apple can reject an app for any reason, even if it meets all the formal requirements disclosed by Apple. So if you use the SDK and your app is rejected by Apple, you're prohibited from distributing it through competing app stores like Cydia or Rock Your Phone.

Ban on Reverse Engineering: Section 2.6 prohibits any reverse engineering (including the kinds of reverse engineering for interoperability that courts have recognized as a fair use under copyright law), as well as anything that would "enable others" to reverse engineer, the SDK or iPhone OS.

No Tinkering with Any Apple Products: Section 3.2(e) is the "ban on jailbreaking" provision that received some attention when it was introduced last year. Surprisingly, however, it appears to prohibit developers from tinkering with any Apple software or technology, not just the iPhone, or "enabling others to do so." For example, this could mean that iPhone app developers are forbidden from making iPods interoperate with open source software, for example.

...

Kill Your App Any Time: Section 8 makes it clear that Apple can "revoke the digital certificate of any of Your Applications at any time." Steve Jobs has confirmed that Apple can remotely disable apps, even after they have been installed by users. This contract provision would appear to allow that.

We Never Owe You More than Fifty Bucks: Section 14 states that, no matter what, Apple will never be liable to any developer for more than $50 in damages. That's pretty remarkable, considering that Apple holds a developer's reputational and commercial value in its hands—it's not as though the developer can reach its existing customers anywhere else. So if Apple botches an update, accidentally kills your app, or leaks your entire customer list to a competitor, the Agreement tries to cap you at the cost of a nice dinner for one in Cupertino.

Overall, the Agreement is a very one-sided contract, favoring Apple at every turn. That's not unusual where end-user license agreements are concerned (and not all the terms may ultimately be enforceable), but it's a bit of a surprise as applied to the more than 100,000 developers for the iPhone, including many large public companies. How can Apple get away with it? Because it is the sole gateway to the more than 40 million iPhones that have been sold. In other words, it's only because Apple still "owns" the customer, long after each iPhone (and soon, iPad) is sold, that it is able to push these contractual terms on the entire universe of software developers for the platform.

In short, no competition among app stores means no competition for the license terms that apply to iPhone developers.

Thursday, April 01, 2010

Oracle purchases Apache foundation

The Apache Software Foundation Receives Approval for Sale to Oracle Corporation for $US1.5Billion.

Tsk tsk tsk.

Apparantly Oracle will change the Apache Software Licence (ASL) to the Apache Full and Open Oracle License (AFOOL) :-)