Why I still have a land line

Among the tech-savvy peers is the notion of leaving traditional phone systems for cheaper VOIP systems. I am one of the hold-outs in that I still have a POTS (plain old telephone system) line at home, not even a Rogers Cable Home Phone. Why? 911.
Continue reading Why I still have a land line

Share Button

Speed up development of Curam web client by not using RSA

Curam does quite a bit of code generation from the web client side. These include JSP files which are not normally modified by the developers. Unfortunately, just because you have JSP files and JavaScript files will tend to bog down your IDE to the point that it is barely usable. So a solution I use is to not bother loading up the webclient project on the IDE as a web project.
Continue reading Speed up development of Curam web client by not using RSA

Share Button

Implementing JASPIC in the application

One of the nice things about JASPIC is it does not have to be limited to just a container installation, but can be put as part of the application.  One of the key advantages of this over web tier solutions such as Shiro is the authentication subject can be passed all the way down to the EJB tier via @Inject Principal .

However to do this is a bit tricky, JASPIC isn’t really as straight forward and one key information is buried deep inside the specs and not immediately visible in the Javadocs.

This blog post assumes the reader to have gone through the motions of creating a ServerAuthModule.  The purpose of this is to somehow call the initialize() method with the settings.
Continue reading Implementing JASPIC in the application

Share Button

Quickly set up an HTTP Server with NodeJS

Here is some quick instructions on how to set up an HTTP Server to host your local files in Windows or other platforms.
Continue reading Quickly set up an HTTP Server with NodeJS

Share Button

Things I don’t like about iOS8

Each iOS iteration introduces new features, iOS8 is no execption and some of them I like even at the expense of privacy such as Medical ID which I hopefully won’t need anytime soon. However, it had added a few other features that I am not too fond of. Some of them are likely due to peer pressure to give more of what Android provides, but it is implemented no better than Android itself.

Here’s the list of the three things that I had turned off:

  • Predictive Text
  • Third party keyboard support
  • Transparency effects

Continue reading Things I don’t like about iOS8

Share Button

Predictiability and versioning JAX-RS REST API

Over the course of time, your REST APIs will change to accommodate new client requirements. Using javax.ws.rs.core.Application and javax.ws.rs.ApplicationPath, you can enable multiple active client API versions in your WAR file.
Continue reading Predictiability and versioning JAX-RS REST API

Share Button

Enable Personal Hotspot on iOS 8

When I upgraded to iOS 8, I noticed that tethering on my Mac stopped working on Wind Mobile. After looking around for it, I found out how to enable it again, simply copy the values from the Cellular Data APN to the Personal Hotspot APN.
Continue reading Enable Personal Hotspot on iOS 8

Share Button

Explaining Dependency Injection and Inversion of Control

In a normal programming sense, your code generally tells the system what to do and what resources such as databases or authentication system to use. In Inversion of Control reverses that idea and the system instead tells which of your code to run. Hence, inversion of control, IoC for short.

Normally when we code we tend to have dependencies on resources. When coding in an IoC fashion, these dependencies are “injected” into your codde when needed. Hence the name Dependency Injection.
Continue reading Explaining Dependency Injection and Inversion of Control

Share Button

Screen time vs Paper Time

Screen time vs Paper Time

I think the above comic sums up my view when I hear parents limiting their kids use of screens.  Personally, setting arbitrary limits to kids creativity isn’t my cup of tea.  Most things on the iPad [that PM-1 will get when he is big enough] have a lot of  apps that promote creative expression so why hamper? Continue reading Screen time vs Paper Time

Share Button

JET-NG

When I was doing my JPA Anntation Processor, I used JET to do my code generation because it was the only templating engine that I have seen that creates Java code that can return a String. The problem with using JET was the Maven plugin that was is available on central doesn’t have any of its sources and is no longer actively developed (as shown by the lack of source pointed by their POM). Using JET that comes from Eclipse apparently requires the entire Eclipse runtime and their direction with JET2 seems to force more Eclipse dependencies. However, JET in itself is a pretty neat standard so I decided to reduce the chance of having trouble with lack of support I decided to make my own with an associated Maven plugin. This blog post defines the requirements I had for my implementation
Continue reading JET-NG

Share Button