The Great Divide

The great divide is here again. This comes in the form of COVID-19 pandemic. We are divided between vaccinated vs unvaccinated. Traveling becomes a hassle unless you are in VTL (Vaccinated Travel Lane). We also have frontliners jobs which bear the risk from pandemic. How will this great divide impact IT?

Differentiated IT

IT model closely to the reality. This is usually translated to data model. There is already emerging data to understand and mitigate the impact of the pandemic to economic data. This comes in the form of prolonged lockdown and the need to normalise with the pandemic. Thus, our existing data model will start to include differentiating factors with regards to the pandemic variables.

Resource Retention

IT resource retention becomes challenging because work boundaries are fluid. Hybrid model will allows ease of acquiring skills across boundaries. Off site becomes easier because of the pandemic. Collaboration tools becomes sophisticated enough to manage off short resources. Subsequently, this allows IT resources to move around with ease.

The great divide from COVID-19 pandemic created opportunities and challenges for IT. There are distinct differences for industries impacted by COVID-19. Data must be readily be available to help normalise living with the pandemic. On the other hand, it is a challenge to retain IT resource due to demand and ease of hybrid working model. Regardless of the impact, the pandemic has accelerated IT opportunities beyond the physical world.

High Availability in Cloud

The good part of Cloud is high availability (HA). It should be hard to find downtime if you are using PaaS or SaaS. This is because HA is often considered in the architecture design. Thus, this is a great push factor for you to move to Cloud. Traditionally, on premise architecture must cater the required licences for HA. Will you move to Cloud for the sake of HA?

HA will be Norm

You may notice that Cloud applications are all HA as a norm. It is not surprising that you should either upgrade your on premise to HA or move to Cloud. The cost of HA is definitely much higher and not affordable in the past. It is usually done for large global enterprise. Most of the time, only production environment is HA because of the high cost of maintenance.

Time to HA on Cloud

If one of your objectives is HA, it is worth consider the cost savings for moving to Cloud. Many Cloud cost do not explicitly state how much HA will be in their cost. Thus, you need to compute the HA costs into your existing total cost of ownership before comparing to cloud cost. You will see that HA will one of the key justification on why you want to move to Cloud.

Building HA into your architecture used to be a costly ordeal. Now, many applications have been included HA as part of their product offerings. It is a ripe time for you to move to Cloud if HA is a critical component. The cost savings can be substantial because you can have HA across different types of development environment beside your production.

Beyond IT Implementation

I always find it interesting to read how our information system (IS) textbook describe the success of IT implementation. These books are also compressed theoretical example of how other factors will affect IT deployment like system adoption and change management. In reality, there are other components that determine the real success of system deployment.

Culture and Relationship

Many of textbooks have been entrenched from the fundamentals of academic research. This is why the studies are less focused on the Asian context. You will find that culture and relationships are playing an important role in the deployment of new system initiatives in Asia. You will be surprise to know that the usage of system can be encouraged via relationships. In other cultures, these could be determined with hierarchy influences.

Resistance is Norm

As times passed, I come to realise that resistance to new system implementation is a norm. It is common to hear good feedback of the systems with the contradictions of data. Age do play a factor because it is really hard to accept change with it. A good cultural environment which embrace change and innovation will play a crucial antidote to resistance. Just as we accept resistance as norm, shouldn’t we create an acceptance environment?

The step beyond IT implementation is often missed out in reality. Cultures and relationships do play a key role in many of IT implementation on the field. Likewise, resistance to new system is norm. It is best that we create a favorable environment to accept resistance before we go for new system implementation.

Multi Languages Design

Multi languages design can be tricky at times. This is because of the way how natural languages are structured. In some cases, you may have to design to group the languages or separate the design. This are some considerations and impact you may face while developing for multi language support.

Careful of your Layout

A common but annoying issue from multi languages support is the length of text. This can totally screw up your layout design. There will come a stage you may have to css for a specific language due to the long text. Another common occurrence is the font size and type. The type of languages used will impact the selection of font size and types. As a rule of thumb, go for simple layout and standard font type and size.

Default or User Specific Language Locale

Another consideration is to determine if you are going to allow default or user specific languages setting. Majority of application captured user language preference to individual users. However, this may be applicable to secured applications. For public settings, you may consider to use browser language locale or allow a one time setup. These preferences are usually the options you can configure or develop. So, you should select the options that suits best.

Multi languages development will incur additional efforts and considerations to layout and user preferences. It is best to setup multi languages from start. This way, you could determine if your support for multi languages are sufficient.

2022 Clouded Space

2022 will see a year of COVID normalisation. Similarly, the “clouded” space will see emergence of key players. Every organisations are expected to deploy application in at least 3 major cloud platforms aka multicloud. By then, teams are expected to be equipped with cloud skills that are generic across different cloud platforms. The clouded space will continue to increase during 2022 as major software shifted to cloud.

Cloud Transformation

You will soon see that digital transformation will be changed to cloud transformation. The stabilisation of COVID pandemic will give rise to future cloud transformation that will work well across geographical locations. The increased usage of cloud creates demand for skills that can adapt and transform applications to cloud based platform.

Agile Applications

Applications time to market will continue to be DevOps and Agile. The redesign of AMS (Application Managed Support) towards DevOps will continue throughout 2022. Organisations will continue to invest for in-house capabilities and obtain the optimum Agile application and team. We will expect to see continuous struggle to eliminate traditional project managment approach in favor for Agile methods.

In 2022, it is near impossible to escape from the “clouded” space. Cloud transformation is expected to dominate with increasing usage of in-house generic cloud architect. We will continue the battle for full Agile approach to align with cloud capabilities.

Multi Languages Evaluation

Multi languages development can be a quite challenging for a lot of system products. So far, I have not seen any applications with full languages support. If you are designing for Asia, this can be quite a catch for the diversity. For product evaluation, users should not be charged if they request for local languages support. Instead, it is how your product can easily configure for different languages. This is how my dream multi languages configuration will look like.

Set and Get Language Locale

Language locale is a required parameter in today global application. The system product must have options to get and set language locale. There is also instance where your application have been configured for a preset language locale. The locale property must be enabled for all product objects used in the UI. It is common to see LOV (List Of Values) dropdown neglected for this parameter.

Languages Resource Bundle and Translation Service

Two other important factors in your software evaluation is the capability to configure resource bundle and translation service. We should not be held ransom to product vendor to pay for translated local languages. Thus, the software product must allow you to add and maintain any resource bundles for multi languages support. You should also be allowed to add translation API to support if the text is not found for the particular locale.

The applications of today must provide multi languages development or configuration. You must evaluate software product for multi languages capabilities. These common factors includes ability to set and get user locale, maintenance of your own language resource bundle and addition of translation api. Thus, do look out for these features if you are looking for a software to cover offices globally.

Omicron 2022

2021 Covid-19 is ending with Omicron variant in the limelight. Omicron is expected the grace the opening of 2022. Unlike the gate crashing Delta in 2021, we have been getting used to these variants. Economies will be opening despite the risks. After all, lockdown are counter productive to trade. Physically and psychological, we are immune to Covid-19. Many changes have been accelerated and adopted to suit the a world of Covid.

Maslow Needs

Covid is a reality check to Maslow Needs theory. The lockdown have jolted us to realise that simple things like eggs or rice are dependent on trade in Singapore. The acute mad rush to stock up even for toilet rolls are a reminder that needs will alway comes first. The prolonged Covid-19 situation have changed on how we managed our needs against this pandemic. Once we cross these needs, it is time to follow our wants.

Press on for Omicron

Omicron impact will not be severe as the rest of Covid-19. This is because we are now adept to handle the different kinds of variants. Variants are expected to keep coming as we develop resistance to Covid-19. We may still look forward to our days of “not wearing masks” and “no ART”. A hybrid model will become normal as organisations adopt a standard COVID org chart. Trade and crowds will resume in the tolerance for COVID risks.

As we are welcoming 2022, the fear of omicron will be lesser and normalise. Many have accepted on how our needs are achieved in the post pandemic world. However, we know that these will not sustain for long because wants will push our acceptance towards COVID. It will be a busy 2022!

Bring Your Process

Many of software projects are technically driven in nature. That includes the users mindset where the software will solve daily issues. That is half correct because software is usually built with best practices from known industry SOP (standard operating procedures). Thus, we tend to ignore the existing process that will be impacted by the new system. Customisation and change management are common reactions when you bring your own process into the software projects.

Customising

Customisation is the most common approach taken when evaluating the current business process. Change is resistance and the demand to customise will echo in major projects. It is known that you should limit customisation to less than 20%. If you are facing more than that, it means that the software product you have is not a good fit and you are better off doing turnkey development.

Change Your Process

The fear of change is major factor towards project failures. If getting top notch software products is the key reason, it is worth considering change management for existing SOP. It also makes no economical sense to customise process by each office. The driver to change management is usually triggered by cost reduction and operational efficiency.

The strategy for new software implemented must be done with the understanding of existing processes. Often, this is neglected during the pre project phase. The approaches in your project will be either a mix of customisation and change management to leverage on the features and conforming to local business processes.

Apex Dashboard

After weeks of tearing hair over Oracle Apex and REST, I finally understand the basic approaches of using REST in Apex. Now, I finally can have fun with Apex Dashboard. Transactional data can now be presented nicely with Apex Dashboard. This is not to be mistaken with analytical Dashboard like Tableau. These are my review of Apex Dashboard which I manage to setup within a day or two.

Photo by Ethan
Why Apex Dashboard?

Data always comes in two flavors: a list or diagram. Thus, it is nice to see dashboard as a standard template in Apex. We do not really need complex dashboard like Tableau. This is because we are dealing with operational data. Therefore, a chart presentation in dashboard format can easily relate to the user. A flexible part of Apex dashboard is the ability to use SQL. Viola! That is why I can churn out a decent dashboard within a day!

Agile your Dashboard

The quick and lightweight dashboard suits operational users and agile method. I can easily pilot the dashboard and update user requirements with ease. The rapid iteration allows users to visualise the data in an efficient manner. Sometimes, I even redo my dashboard quickly because the older version is not to my liking. You can even mix and match dashboard in region in Apex page.

It is good to have a tool with simple lightweight features like dashboard. I do not need to separate dedicated dashboard tools for operational users. Finally, the dashboard template adds a nice additional and visual appeal to users. After all, we like to be appealed with good UI and visual data.

ORA-20001: You have exceeded the maximum number of web service requests per workspace.

Today, I got a rude shock when our Oracle Apex workspace display this error ORA-20001. Thankfully, this seems to be a common occurrence when setting up REST.

ORA-20001: You have exceeded the maximum number of web service requests per workspace.

Solution

There are actually two solutions to tackle this issue. Interestingly, the solution are applied differently. The first solution is to login Apex Instance with admin. You can select administration services link below the standard workspace login.

Go to Workspace > Security settings > Workspace Isolation > Maximum Web Service Requests

Increase the number for maximum web service requests. That will solve this issue. However, you may not find this option in the UI. If this is the case, you will need to amend this parameter with SQL apex_instance_admin functions. Start your database console for your apex autonomous database.

To view the parameters, you can run below SQL command.

select apex_instance_admin.get_parameter
(‘MAX_WEBSERVICE_REQUESTS’) as max_service_requests from dual;

To amend the parameters, you can run below SQL.

begin
apex_instance_admin.set_parameter
(‘MAX_WEBSERVICE_REQUESTS’, ‘500000’); — increase to 500000
commit;
end;

To our relief, this works and I wonder why is this necessary. REST is a common requests and perhaps this is good from a security standpoint. However, the error is too technical in nature to be solved by standard user. Another error to clear and we are good to go.