30 April 2007

SMS-TO-IM Messaging And Beyond

Finally, I have built the modules for our first SMS-TO-IM messaging. It's really simple, just a Jabber messaging server, Jabber Client API, Serial Communications API to be used for the GSM Modem. All loosely integrated. This is one of the motives for setting up our corporate instant messaging server.

SMS-TO-IM integration is a vital part of the corporate instant messaging. It get's you in touch with your clients, staff and partners in a casual and comfortable way. Casual relationship is equally important as the formal one. Having a more comfortable and easy-going communication (sometimes having "open" communication is not just enough) system in place can make interaction less hostile and less tense which is very common to any corporate environment especially those with highly-charged, politically motivated enviroments.

Demonstration for this module we'll be up on Labor Day. Next thing on the list is the IM client build with a corporate custom skin. Of course, you don't want to use your "Yahoo" ID talking to your boss, otherwise you'll be hiding the whole day from your friends.

Trying-To-Stop-The-Weekend Syndrome

I hate it and it's becoming an illness. I just want to go home. Unless, there are other interesting stuff to do, not really the bleeding-edge things but something where we can have more control on things that we are building, where we are ACTUALLY BUILDING not taking care of someone's dirty codes. Where we can really collaborate with the customers, where we can say "Next" when the customer says "No" , believe me, it's not ideal. It's real. Back home we can do that, that's why customers can really collaborate and play nice, no surprises. That's fair customer service.

What I really don't like is that it seems we're really very afraid of upsetting our customers, we're a very afraid of losing business. In effect we're very afraid to make mistakes but we make them every single day. The more you fear something, the closer it gets. But our customers have no choice either, where will they go? Sigh, I still have around thirty-six Mondays more left to really call it quits, unless things will change. But I doubt it, I just won't let these changes rule my direction.

I Miss jared@darkstar

It means I miss Slackware. Sheez, why do I have to explain everything in plain words these days? Well, jared@darkstar is what appears in my command prompt after successfully installing a Slackware distribution in to my system.

The reason I miss it is first I'm using Winbloze (for crying out loud) 2 straight years now. Vista's desktop is a desperate attempt to really become Linux, and it's still way behind. Second, if I'm maintaining an application that is always deployed to another flavor of Unix such as AIX or Solaris or even HP UX, why am I coding in Windows? I should have a Linux in my laptop! It makes sense right? Because that's the closest simulation you can ever get, very helpful in testing too. Since BEA, Websphere starts up with a shell script *.sh then my Java applications should have the same thing too, not *.bat or *.cmd!

26 April 2007

DynamicBeans Corporate Instant Messaging Is Now Up!

DynamicBeans Corporate Instant Messaging is now up! What's the big deal about this corporate instant messaging? It's an instant messaging that works well like Yahoo, Google Talk, MSN, ICQ etc. but corporate instant messaging is different in many ways from consumer instant messaging. Unlike consumer instant messaging which is seen as a counter-productive communications application by certain entities because users have more time to chat with external parties on non-business related matters. As an alternative, some corporations will setup their own corporate instant messaging so that employees can collaborate and communicate with each other, but the problem with their homegrown setup is that it is only confined within their own corporate users. Customers and partners are seldom part of this corporate instant messaging network.

The real value of corporate instant messaging is with the involvement of customers and partners within its network where the host can provide a wide spectrum of support levels for their customers and near real-time information from their business partners. But there are certain drawbacks of setting up a corporate instant messaging, like for example, a shipping company can not just setup a corporate instant messaging network because it is not their business to do so but they understand the value. That's where DynamicBeans Corporate Instant Messaging is going to play a critical role.

20 April 2007

Agile Manifesto And The Politics of Software Development

"Customer collaboration over contract negotiation
Responding to change over following a plan"

It's funny when other developer's invoke these words while they rant against customers. On a looming deadline they will call for more customer collaboration because "software is abstract", on a never-ending change requests they will use the "contract negotiation" to avoid work for what they are paid for.

Now this is for the project managers..."Responding to change when the plan goes haywire". We still need a plan and the plan is expected to be followed and responding to change is just a contingency...a very unnecessary contingency. But where is the plan to start with?

16 April 2007

RCP + wxWidgets And All Things Nice

I'm doing a research on two things tonight, how to create a non-rectangular frame or a "skin". I just found out that SWT can do it and wxWidgets can do it very well. wxWidgets is more powerful because I only had to specify the image file of the "skin" I want to paint, without going through a lot of painful codes.

How will these developments affect the DynamicBeans Way? First the stategy can be fine-tuned again to be more specific when RCP is the choice and when wxWidgets is a necessity. For things that ends with "...management systems" RCP is the outright choice. For novelty apps that requires the software to really look totally different and radical, wxWidgets is the primary weapon of choice.

Prior to pushing through all this, I'll be completing the content of the DynamicBeans Website by end of this week.

13 April 2007

wxWidgets regrets

I think I was really bitten again by the C/C++ bug. But I don't really have the time to allocate and to really get my hands dirty to code in wxWidgets. I really regret the time that I didn't take a serious look at this framework in the past. I could have churned more cute apps that no Swing or SWT can replicate.

These days the use for wxWidgets specially in the commercial apps development is becoming more evident. Because it's easier to build your custom widgets whether your developing another IM application or a new media player software with your own custom skins and buttons that will look the same whether the app is compiled for Linux or Windows. We'll use the help of wxWidgets to get back the desktop!

07 April 2007

Packing Up?

Alright, from my personal timeline, I still have another year in Singapore, we have passed the first quarter and it's three to go. I'm sure as of this writing it's going to be really quick, time flies. Some of my to-do list will include:

  1. Getting Rid of my DSLR - I'm out of digital photography. I have proven my point. The greatest chance you'll going to make it big is if you're The Queen's Royal Cousin. Anything lower than that, you're work will just be as doable as others. I'll be keeping my Olympus OM10 handy, it's humble but kick-ass.
  2. Getting a Refurbished Laptop - To install Slackware 10.x Linux, I miss it so much! I don't want to install Linux on a brand new laptop coz I don't want to complicate warranty matters.
  3. Getting a Toshiba Tecra M5 - I'll be handing down my current notebook to my wife, and this machine will be my primary dev rig.
  4. Build the DynamicBeans Custom Widgets - First requirement is no virtual machine, so wxWidgets is the choice for the base. Sorry, Java. Second requirement is performance so it's C/C++ on C/C++. Ruby, Python etc. will just be a consolation.
  5. Organize the First DynamicBeans Product Strategy Summit - We really, really need this :), Need to plan out the Agenda too.
  6. Throw away some "bad luck" clothes.
  7. Build projection of costs for DynamicBeans self-funded operations.
  8. Get the DynamicBeans.com site on full-content.
  9. Build the team which is more focus-driven. If necessary, build another team for another endeavor(I'm smelling POS!) .
  10. Identify "The DynamicBeans Way"
And that's about it. Enough with antiquated stuff and sissy ideas.

02 April 2007


Believe me, I am really learning nothing. That's why I keep investing on good books that I'm supposed to get 3 years ago. Before everything washes away.

01 April 2007

C/C++ Revisited

It's been 22 years for C++ and C is earlier. And most Java veterans I met started in this language before moving to Java. And up to this time the C/C++ developer's community is still vibrant. Still churning out new codes(programmers will really not reuse any code whenever they can) from building CORBA services to developing XBox and PS3 games and more. Although the area of development for C/C++ programmers is becoming niche due to popularity of "enterprise frameworks" in Java and .Net, C/C++ is still the popular choice for projects where the presence of a virtual machine is not required. As Java and .Net becomes more cumbersome and boring due to a lot of automated frameworks that makes job even more complicated. Developers for niche projects using C/C++ today still enjoys a relative simplicity in what they do. I never heard a C++ programmer complains about an application server issue(laughs).

10 years ago, my encounter with C/C++ was in the development of RS232 Communications API that we need to make a couple of PC talk to each other or another device to a PC talk to each other. And still using the same communications API that we built, we played with it on ATMEL microcontrollers. It's relatively simple, no relational database, no application servers, no transactions, no hassle. Strange enough, the job market for such programmers dwindled. But these days it's making a "comeback" (though it didn't really left) and companies with specific needs are looking for such skill to develop their products but I won't be a troop-on-the-ground programmer anymore, I'll be the vendor.