Just sharing some of my inconsequential lunch conversations with you... RSS  

Monday, November 23, 2009

Error converting Oracle VM

We’ve been converting out VMWare Server 1 and 2 to ESXi4. Today 2 of out Oracle servers stopped working after being VMWareConverted to ESXi. For some strange reason, oracle just managed to screw up the instance, and we got the following error:

ORA-01034 : ORACLE not available
ORA-27101 : shared memory realm does not exist

I had to re-register the service. Something like:

SET ORACLE_HOME=<my oracle home>
SET ORACLE_SID=<my oracle sid>

# delete service
oradim -delete -sid MCH9

# register service
oradim -new -sid <my oracle sid> -intpwd <my sysdba password> -startmode AUTO -pfile <my init.ora>

Friday, November 20, 2009

Thursday, November 19, 2009

Just received a new phone: TMN Silverbelt (ZTE Raise)

Finally my HTC 3300 gets to be replaced::

tmn silverbelt


Nothing much to say for now, it seems pretty fair for the 219.90€ I’m paying. Here’s what you get with one of this:

  • Windows Mobile 6.5
  • 5 MPixel camera
  • GPS and NDrive
  • 3.2’’ screen


Here’s the detailed data from PDAdb.net:


Brand: TMN
Browse TMN devices
Manufacturer: Zhong Xing Telecommunication Equipment
Browse all devices manufactured by Zhong Xing Telecommunication Equipment
Hardware:Designer: Zhong Xing Telecommunication Equipment
Project;Codename: ZTE Raise
Browse all devices under ZTE Raise codename
Release;Date: October, 2009
Predecessor_Model: ZTE e760
Dimensions 57 x 112 x 12.5 millimetres
(width x height x depth): 2.2 x 4.4 x 0.5 inches
Bounding_Volume: 79.8 cubecentimetres
Mass: 146 grams (battery included)
Embedded;Operating:System: Microsoft Windows Mobile 6.5 Professional
Browse devices running this OS
Operating:System_Kernel: Windows CE 5.2.2
CPU-Clock: 528 MHz
CPU: Qualcomm MSM7225
Browse devices based on MSM7225
Width_of+Machine-Word: 32 bit
CPU-Core: ARM1136EJ-S
Instruction+Set: ARMv6
RAM_capacity: 256 MiB
ROM+type: Flash EEPROM
ROM_capacity: 7630 MiB
ROM+capacity;in+bytes: 8 GB (billion bytes)
Display+Type: color transflective TFT display
Display:Color_Depth: 16 bit/pixel (65536 scales)
Display+Diagonal: 3.2 " (81 millimetres)
Display-Resolution: 400 x 240 (96000 pixels)
Viewable:Display_Size: 2.73 " x 1.64 " (69.46 x 41.67 millimetres)
Dot+Pitch: 146.3 pixel/inch (0.17364 millimetre/pixel)
Audio-Channel(s): stereo sound
Analog/Digital Converter 16 bit nominal quantization
(Recording): 44100 Hz sampling frequency
Digital/Analog Converter 16 bit resolution
(Playing): 44100 Hz holding frequency
Microphone(s): mono sound
Loudspeaker(s): mono sound
Audio:Output: Supported
Cellular-Networks: GSM850, GSM900, GSM1800, GSM1900, UMTS900, UMTS1900, UMTS2100
Cellular_Data;Links: CSD, GPRS, EDGE, UMTS, HSDPA, HSUPA
Cellular:Antenna: Internal antenna
Call-Alert: 40 -chord melody (polyphonic)
Vibrating;Alert: Supported
Speakerphone_: Supported
Positioning;Device: Touchscreen
Primary:Keyboard: Not supported
Directional;Pad: Not supported
Scroll:Wheel: Not supported
Expansion_Interfaces: microSD, microSDHC, TransFlash, SDIO
Supports High Capacity (SD 2.0/HC) memory cards with capacity of up to 32GB
USB: USB 2.0 client, Hi-Speed (480Mbit/s)
Bluetooth;(802.15): Bluetooth 2.0, Internal antenna
Wireless+LAN/Wi-Fi_(802.11): IEEE 802.11b, IEEE 802.11g, 54 Mbit/s
Internal antenna
Infrared-Gate: Not supported
Analog-Radio: FM radio (87.5-108MHz) with RDS radio reciever
Proprietary headset as antenna
Digital;Media+Broadcast: DVB-H digital tuner
Pull-out antenna
Built-in;GPS;module: Supported
GPS;Protocol: NMEA 0183
GPS+Antenna: Internal antenna
Complementary:GPS+Services: Assisted GPS
Sensor_Type: CMOS sensor
Resolution: 2560 x1920 pixels (4.92MP)
Autofocus+(AF): Supported
Optical+Zoom: 1 x
Macro:Mode: Not supported
Built-in:Flash: mobile light (LED)
Camcorder: 320x240 pixels
Recordable-Image;Formats: JPG
Recordable_Video-Formats: 3GP, MPEG4
Sensor+Type: CMOS sensor
Resolution: 640 x480 pixels (0.31MP)
Camcorder: 0x0pixels
Recordable-Image:Formats: JPG
Recordable_Video:Formats: 3GP, MPEG4
Battery-Technology: Lithium-ion battery
Battery_Build: removable
Battery+Capacity: 1250 mAh
Built-in+accelerometer: Supported
Additional;Features: GPRS Class 12
EDGE Class 12
HSUPA 5.76
Bluetooth stereo audio profile (A2DP
Related_Page: http://wwwen.zte.com.cn/en/products/mobile/mobile_detail_291.jsp?mobileName=ZT..
Datasheet:State: Preliminary specifications
Datasheet:Views: 5537 times
Datasheet_Added: Jul 28, 09 12:30:17

J2EE error: msg=bad version number in .class file

I’ve been loosing a lot of time with the dreadful:

java.lang.ClassNotFoundException: Unexpected error during load of: <somenamespace.someclass>, msg=Bad version number in .class file

After some googling I’ve soon discovered that this problem was related to compiling with a java version and executing with a different one. And finally our java Gurus (thanks Severino) manage to save the day:


Tuesday, November 17, 2009

Development Turnaround Time

Fact of life: in most development environments there’s a latency involved in the development stages of building and restarting. You can argue that interpreted, dynamic and highly untyped environments don’t suffer of this problem, but the sad truth is that .NET and J2EE environments are prone to this menace.

Some people call it turnaround time. It takes developing very expensive time, and introduces an extra payload: it ruins any change of maintaining the developer concentration and focus on the task they are working on.

Now that I’m entering the J2EE world I’m realizing that on these side of the world this problem is by far heavier. Let me give you an example on our project:

  Average time to graceful stop: 0m 30s

  Average time to build and deploy:

1m 30s

  Average time to start:

4m 30s
  Total turnaround time: 6m 30s

I was a little bit worried about this times until I' found that this times are considered acceptable on the J2EE world! Here are the results from a 1100 developer’s survey:









Now the good news is that there may be a solution to cut this times by 8-18%: ZeroTurnAround. I haven’t tried it yet but it looks fantastic. Anyone out there is using this tool?

Please note that this survey was issued by the company that made this tool, so let’s hope that the data is not somewhat biased… One thing is for sure: we have a problem here. At least on our project.

Sunday, November 15, 2009

Combining open-source efforts

I was searching for a linear programming lib on codeplex for one of my geek personal projects when I found FSharp.MathTools and the following change of plans message:

FSharp.MathTools: Change of Plans

In the interest of having one great open source library for the .NET platform we have refocussed our efforts and are now contributing to dnAnalytics. dnAnalyticsnow includes all the functionality that was in FSharp.MathTools and much more. Although dnAnalytics is written as a C# library with the choice of including fast native code, we have added an F# front end to accomodate the functional programming community. The code for FSharp.MathTools will still be available from this site.
Cheers, Jurgen

Ok, lets go to dnAnalytics. Wait, on the first page I have a similar message:

NOTE: dnAnalytics is merging with Math.NET Iridium into a new project Math.NET Numerics - http://mathnetnumerics.codeplex.com/. The 2009.08 release will be the last release of dnAnalytics.

So up to Math.NET Numerics we go. And my task has ended, here’s the final stop. For now.

Why is this relevant? Because although we need diversity, we also need a steady direction and joined forces, and this is what those guys did. And this is probably a problem with the part of the open-source community that tends to prefer branching over merging. Probably not immune to NIHS?

Just how much standard is EPCGlobal air interface?

The standardization of protocols is guarantee of:

  • Independence of hardware
  • Open-loop compliance

These concepts are fundamental for the modern supply chain, particularly for the competitiveness of the solutions and their economic viability. For this reason EPCGlobal defined standards, among them the tag air interface so that complaint interrogators can interact with compliant tags.

In my experience all the interrogators I’ve used can interact with all the tags. But there is an exception: we couldn’t read CAEN Temperature Logger UHF Semi-Passive Tag A927Z when using the IF61 Intermec interrogator. We can read it using a CAEN A928, but not with the Intermec. Not even the EPCID, let alone the data bank.

Ok, this is not your everyday logistic passive tag, but it EPC Gen2 compliant, so it should be read by any EPC Gen2 compliant interrogators.

We’ve being talking with Intermec and CAEN about it and the problem will soon be solved. But the problem still persists: for now, compliant certification is not enough, you’ll still have to depend on testing to guarantee it’s compliance.

Anyone else had this problems?

rfrbNET: RFID track & trace federated network

I’ve being devoting my last year to project rfrbNET, a RFID Track & Trace Federated Network (in Portuguese: Rede Federada de Rastreabilidade de Bens).

This project facilitates the building of a network of supply-chain participating peers over EPCGlobal standards. Objects represented by EPC tags transverse this peers, where these movements and respective business context is first captured and later delivered through a standard EPCIS interface. Although a reality right now, this interface is designed over a point-to-point logic, meaning you can query about EPC events directly against an EPCIS, but lacking the way to ask what EPCISes have information about these tags.

This problem is defined by the EPCGlobal as Discoverability, and is still a work in progress. To address the discoverability we have to solve problems like security, identity, privacy, protection of business data, policy rules and above all the architecture that can support it. To make it work, we have to frame it on a federation model that guarantee scalability and easy provisioning of accounts, and defining it's governance rules.

We are finishing the rfrbNET dissemination site, as soon as launch it announce it here.

Quadro de Referência Estratégico Nacional This project co-financed by the QREN (National Strategic Reference Framework), the framing for the application of the Community’s policy for economic and social cohesion in Portugal.

Integrating RFID in the supply-chain

I’ve been accompanying a series of M.Sc. around RFID. Last Friday Nuno Rodrigues defended his thesis on “Integrating RFID in the supply-chain supported over ERP”.

Here’s the abstract:

The field of logistics and distribution, in what concerns warehouse management, has clear needs of business process optimization regarding the reception and shipping of products. The Radio Frequency Identification (RFID) might be the solution to address those needs.
This document presents the study done regarding RFID technology, the emerging set of standards from EPCglobal, available RFID Middleware tools, analysis of the current business processes (typically supported by barcode technology) and a proposal of new business processes that explores the potential of RFID technology.
It is proposed an architecture for the implementation of an RFID system integrated with an ERP, which usually manage the warehouse, as well the integration with the suppliers and customers, in order to facilitate the exchange of important business information.

On this dissertation, Nuno tackled the problem of inefficiencies on the supply chain (high human intervention, high error rates and lack of item-level tracking), and how  RFID can help addressing this problems.

His dissertation starts making reference to the state-of-the-art, where is worth mentioning the comparison of platforms and their alignment with the EPCGlobal stack.

He devotes the next chapter to the business processes on a warehouse, defining both the AS-IS and the necessarily different TO-BE resulting upon the RFID re-engineering process. The scenario is a typical Order->Palletize->ASN->Ship->Receive Goods process, with all the usual electronic documents. As an extra challenge Nuno had to extend Dynamics NAV in order to support RFID,

The next chapters identifies the involved information entities, the solution architecture and the prototype implementation detail, concluding demonstrating that the integration of RFID addresses the identified problems.

The scenarios and architecture will be addressed on a future post. For now let me list the technologies:

  • BizTalk Server as Integration Middleware
  • BizTalk RFID as RFID MiddleWare
  • Dynamics NAV as ERP

Congratulations for a great thesis, Nuno.

Thursday, November 12, 2009

SQL Server ignored default schema

Ignorance is not always a bless… In this case, it took us a lot of time figuring out why wasn’t the default schema kicking in. This one is well documented:

The value of DEFAULT_SCHEMA is ignored if the user is a member of the sysadmin fixed server role. All members of the sysadmin fixed server role have a default schema of dbo.

Tuesday, November 10, 2009

Two cool Sci Fi movies

I’ve just seen two great movies: “Moon” and “District 9”.



Why do I feel they’re worth mentioning? Probably because they are not obvious Science Fiction movies, they make use of Sci Fi to tell us the problems behind the stories.

Monday, November 09, 2009

First Google Wave Impressions

I’ve just received an invitation to Google Wave and I’ve being trying it out. Here’s a screenshot for future reference:


Unfortunately I couldn’t get any of my geek friends online so I couldn’t experience the collaboration features. And Google Wave is not the kind of application that shines alone, so let’s wait for the first tête-à-tête to post about it. Until then the only thing worth mentioning is the Outlook look and the feel and the promise of open gadgets.

Hope to continue this post soon.

Thanks for the invitation, Pita :)


Just stared working with Pita. First impressions: it works, but at the present time we can’t figure out what to use it for :) IM? Social networking the FaceBook way? Pure collaboration?


Joining the dark side of the force

I’ve finally embraced an old objective: to get my hands on a large-size J2EE project!

For years I’ve been working on Microsoft Platforms, and though I’ve started developing on Unix, java wasn’t present back on those days. And though I’ve been in contact with J2EE projects, these were usually small Master of Science projects, not the real thing.

This project will allow me to benchmark the two evil brothers. In my evaluation, here are my first thoughts:

  • Boy, do these environments starve for memory! Our typical .NET VMs can settle for 700MB of RAM, the J2EE are crying for 2.5GB…
  • Compared to these environment, the .NET platform is quite monolithic. The good side being: there’s way less to consider, projects tend to be more cohesive among themselves
  • Methodological these J2EE projects are more solid than .NET ones
  • On the other hand, the development experience in .NET is way better, the IDE is more robust and responsive
  • J2EE environments depend heavily on bunches of XML configuration files. .NET tend to depend on wizards and graphic DSL tooling
  • J2EE developers tend to accept with somewhat religious abnegation the shortcomings of their platform, .NET developers are not as forgiven


The baseline of our environment:

  • JBoss
  • JBoss Portal
  • ORM: hibernate
  • Container: this will be a subject for a future post…

Friday, November 06, 2009

Hyper-V Physical to Virtual: Disk2vhd

SysInternals has just released an utility, disk2vhd, that creates VHD versions of physical disks for use in Microsoft Virtual PC or Microsoft Hyper-V virtual machines. As it uses Windows’ Volume Snapshot capability, it can copy an image of an online system. Not that the competition doesn’t do it for long…

Download Disk2vhd (751 KB)

The Machine SID Duplication Myth

I’ve been using NewSID for years, first with disk cloning and on the last years with VM images. And it comes as a great surprise for me that it’s okay to have duplicate machine SIDs!

According to Mark Russinovich:

This blog post debunks the myth with facts by first describing the machine SID, explaining how Windows uses SIDs, and then showing that - with one exception - Windows never exposes a machine SID outside its computer, proving that it’s okay to have systems with the same machine SID

The exception to the rule is quite obvious: domain controllers.

Oops. How can so many people (me included) be so wrong for so long?

Wednesday, November 04, 2009

BizTalk Project Creation Failure

Strangely enough we lost the ability to create BizTalk projects on one of out dev VMs. The solution we chose was to repair the installation.

VMWare Player 3

I’ve upgraded VMWare Player to v3, and I’m having some mixed thoughts about it:


The good:

  • We can create and update VM settings from within VMWare Player – no more VMX Builder for the majority of tasks
  • VMWare tools are self-updatable from the net
  • update: Multiple display support
  • update: Unity support


The bad:


These last 2 seem to be dependent on a licensed Workstation copy. I can understand that VMWare wants to support its business, what I find hard to understand is why do they keep announcing the bloody features on the menu if they don’t intent to support it? Argh…

Oh well, still a great update.


I forgot to mention it: the display driver seems substantially slightly slower on my Windows 7…


Sunday, November 01, 2009

Encompassing the Globe: Portugal and the World in the 16th and 17th Centuries

c2bcd84f[1] For better or for worse Portugal has its share of responsibility over the globalization we so well known today. The exploration voyages experienced from the 15th century Portuguese sailors connected the world, “discovered” continents and cultures, ended old fears and monopolies, opened the commerce to the word and laid the grounds for the world we live in.

As a Portuguese I always wanted to see an exhibit that portrayed this time of world history as told by non-europeans. Smithsonian has made it possible with a fine exhibit that made its way back home to Lisbon, at the Museu Nacional de Arte Antiga.

Though in my opinion this exhibit somehow lacked the needed articulated view of the so called “discoveries age”, the choice and relevance of the exposed objects was enough to make a great exposition. I’m talking about 300 objects gathered from museums in China, India, Japan, South America and Europe.

Here is the exhibit international link, the Portuguese one and some photos. Finally here’s a cool Google Earth kml file.


Development Catharsis :: Copyright 2006 Mário Romano