Friday, November 23, 2018

Why I am Pro-proportional Representation

In British Columbia, we are finally getting serious about replacing the first past the post electoral system with one that will provide proportional representation.  Why?  For starters, the idea that our elected officials are representative of the desires of the voters just seems like a good idea.  Secondly, gerrymandering is quite frankly evil and should not be allowed to continue in BC (or anywhere).

There are some who say that the new electoral system will not allow our BC government to function at 100% efficiency.  I would state that no system can guarantee such, including the current one.

If you have not yet mailed in your ballot, please consider doing so.  Make our politicians represent what we want.

Monday, May 14, 2018

S/MIME and OpenPGP email easily hackable

I just came across a very cool article with detailed instructions on how to leverage a very simple attack vector to hack many email clients.  Using the scenario in the article, the attacker is able to accumulate encrypted emails and store these emails for some time before starting an attack.  The only constraint seems to be that the email account is still active and the operator of it uses one of the email clients that have failed to protect cyphertext. 

To decrypt one of the emails, he or she manipulates cyphertext using malleability gadgets. Social engineering (K. Mitnick et al) is used to understand basic environmental factors of the target's email client, O/S, encryption software etc. The attacker then transmists the manipulated email to either the original sender or anyone on the CC list.  The email uses new headers and the manipulated cyphertext is hidden within an invisible iFrame. The email can basically be transmitted in such a way as to avoid it appearing suspicious.  Once the receiver opens the email in his client, the manipulated ciphertext will be decrypted. First, the private key of the victim is used to decrypt the session key, and then this session key is used to decrypt the manipulated cyphertext. The decrypted plaintext is then sent to the attacker by using an exflitration channel (hyperlink, events to trigger it). 

The obvious defense is to use only plain text to render your emails or use one of the email clients that did not succumb to this method.

Full article:

Sunday, July 24, 2016

AmericanEHR Incorporates ONC’s Certified HIT Developer Transparency Data

I have always been proud of the work I was part of at Hot Tomali.  One of our most prolific endeavours was the work we did on American EHR pertaining to Electronic Health Records knowledge.  Hot Tomali CEO Thomas Stringham is a key co-founder of, the voice of the American medical community pertaining to ratings and readiness preparations for electronic health records software platforms. AmericanEHR is dedicated to the creation of an online community of clinicians who use IT to deliver first rate health care to American citizens. Through education, social media and the collection of peer contributed data, AmericanEHR provides tools and data to facilitate optimal decision making for potential EHR purchasers. The company has grown substantially and is largely considered the top source of accurate and timely data on the most common EHR software platforms.

On July 19 this new announcement came out:

ONC recently launched a dashboard listing new transparency information for certified health information technology. This data was released to help purchasers of health IT to access information about costs and limitations they may encounter when implementing and using certified health IT products. Developers must also make a Transparency Attestation indicating whether they will take additional voluntary actions to increase transparency regarding their products and business practices. This includes proactively providing meaningful information to prospective customers and to organizations that publish comparative information and tools for the benefit of health IT purchasers. The disclosure of this information is required under certification rules established by ONC on January 14, 2016.

AmericanEHR is proud to announce the full integration of ONC’s Certified Health IT Developer Transparency Attestation data into our certified EHR product profiles and our EHR comparison tool. Users can now see if a Certified Health IT developer supports or has declined to support the Transparency Attestation. Links to each developers Public Product Disclosure(s) are also available as downloadable PDF’s or web links.

Read the rest on

Monday, June 13, 2016

Neo4J Fundamentals Training in Vancouver, BC this week!

Neo4j Fundamentals
Duration:  8-hours/1 day
Skill Level: Beginner
Course Description
This course will give you a foundational knowledge of graph databases and use cases. You'll learn all the getting-started basics, including data import and creation, basic modeling, and querying. Learn to use Neo4j's powerful query language, Cypher, and how it can drastically improve your connected data problems.

Best Suited For:
  • Anyone with an interest in database technology
  • Developers, Administrators, DevOps engineers, DBAs, Business Analysts and students.
Skills taught:
  • An understanding of graph databases
  • How to use graph databases
  • Introduction to data modeling with Graph databases
  • How to get started working with Neo4j
  • Build confidence in building a graph enabled application
You don’t need any previous experience with Neo4j, NOSQL databases or specific development languages 
Course Outline
  • Introduction to Graphs
  • Introduction to Graph based Modeling
  • Neo4j and Cypher
  • Advanced Queries with Cypher
  • Real-world implementation use cases with Neo4j
Technical requirements
*You will need your own laptop.*  Please arrive early to quickly install the product and labs used in the class.

Where can I contact the organizer with any questions?
For any questions about the event, e-mail

Thursday, December 17, 2015

Energy Efficient Building Funding Available

As you all know, a large part of my work has been focused on energy efficiency including renewable and alternative energy development. I was fortunate enough to have worked directly with many great minds at the US Department of Energy and the National Renewable Energy Lab (NREL).

I keep myself involved in many conversations around these subjects and wanted to share some great news.  The Building Technologies Office (BTO) Emerging Technologies Program (ETP) has announced the availability of $8 million USD for Funding Opportunity Announcement (FOA) DE-FOA-0001383, “Building Energy Efficiency Frontiers & Innovations Technologies (BENEFIT) – 2016.” BTO seeks to fund three Innovations topics and two Frontiers topics to support our efforts to reduce the energy use of commercial and residential buildings. In addition, a supplemental section will provide a maximum of $100K/year to encourage partnerships between universities and for-profit companies.

This is great news for those who have ideas that have not yet been implemented. Especially in cases where the prime reason for not implementing the ideas is funding related.

The Innovations section will support:
  • Open Topic for Energy Efficiency Solutions for Residential and Commercial Buildings 
  • Human-in-the-Loop Sensor & Control Systems 
  • Infiltration Diagnostic Technologies 
The Frontiers section will support:

  • Plug and Play Sensor Systems 
  • Advanced Air-Sealing Technologies for Existing Buildings 

Details are as follows:

Submission Deadline for Concept Papers: January 29, 2016
Submission Deadline for Full Applications: April 18, 2016
Informational Webinar: December 21, 2015, 2:00 PM ET

Apply Now


Monday, September 21, 2015

Google Places "Type" Dropdown list (Free HTML Code)

I've been working on a new venture named GoPage (  As part of our lookup through the Google Places API, we need to pass over the "type" parameter. The Google Places API is a REST based API that uses the URI to control facets of the returned data.  The type is added in based on the taxonomy containing over one hundred different types of locations expressed here.

The request is made by issuing the following post:,2.347589&radius=5000&types=food|cafe&keyword=vegetarian&key=API_KEY
The types=value parameter is shown in blue.  If you find yourself wanting to implement this in an HTML drop down list, you will not find that code on the internet (as I did not) and face the tedious task of having to write it yourself.  Well, today is your lucky day. Here is the code done for you. Now you have time to do something else (like play video games) and tell your boss you worked hard to copy and paste all 100 types into the HTML source.

Have fun!

(Remember to paste this as Plain Text and change the form action to your own code)

</form action="form_processor.php">
<select name="type">
<!-- Based on Google Types as of 2015-09-21
     First value is selected by default. If selected, no type should be written into the API -->
<option value="" selected="selected">Any</option>
<option value="accounting">Accounting</option>
<option value="airport">Airport</option>
<option value="amusement_park">Amusement_park</option>
<option value="aquarium">Aquarium</option>
<option value="art_gallery">Art_gallery</option>
<option value="atm">Atm</option>
<option value="bakery">Bakery</option>
<option value="bank">Bank</option>
<option value="bar">Bar</option>
<option value="beauty_salon">Beauty_salon</option>
<option value="bicycle_store">Bicycle_store</option>
<option value="book_store">Book_store</option>
<option value="bowling_alley">Bowling_alley</option>
<option value="bus_station">Bus_station</option>
<option value="cafe">Cafe</option>
<option value="campground">Campground</option>
<option value="car_dealer">Car_dealer</option>
<option value="car_rental">Car_rental</option>
<option value="car_repair">Car_repair</option>
<option value="car_wash">Car_wash</option>
<option value="casino">Casino</option>
<option value="cemetery">Cemetery</option>
<option value="church">Church</option>
<option value="city_hall">City_hall</option>
<option value="clothing_store">Clothing_store</option>
<option value="convenience_store">Convenience_store</option>
<option value="courthouse">Courthouse</option>
<option value="dentist">Dentist</option>
<option value="department_store">Department_store</option>
<option value="doctor">Doctor</option>
<option value="electrician">Electrician/option>
<option value="electronics_store">Electronics_store</option>
<option value="embassy">Embassy</option>
<option value="establishment">Establishment</option>
<option value="finance">Finance</option>
<option value="fire_station">Fire_station</option>
<option value="florist">Florist</option>
<option value="food">Food</option>
<option value="funeral_home">Funeral_home"</option>
<option value="furniture_store">Furniture_store</option>
<option value="gas_station">Gas_station</option>
<option value="general_contractor">General_contractor</option>
<option value="grocery_or_supermarket">Grocery_or_supermarket</option>
<option value="gym">Gym</option>
<option value="hair_care">Hair_care</option>
<option value="hardware_store">Hardware_store</option>
<option value="health">Health</option>
<option value="hindu_temple">Hindu_temple</option>
<option value="home_goods_store">Home_goods_store</option>
<option value="hospital">Hospital</option>
<option value="insurance_agency">Insurance_agency</option>
<option value="jewelry_store">Jewelry_store</option>
<option value="laundry">Laundry</option>
<option value="lawyer">Lawyer</option>
<option value="library">Library</option>
<option value="liquor_store">Liquor_store</option>
<option value="local_government_office">Local_government_office</option>
<option value="locksmith">Locksmith</option>
<option value="lodging">Lodging</option>
<option value="meal_delivery">Meal_delivery</option>
<option value="meal_takeaway">Meal_takeaway</option>
<option value="mosque">Mosque</option>
<option value="movie_rental">Movie_rental</option>
<option value="movie_theater">Movie_theater</option>
<option value="moving_company">Moving_company</option>
<option value="museum">Museum</option>
<option value="night_club">Night_club</option>
<option value="painter">Painter</option>
<option value="park">Park</option>
<option value="parking">Parking</option>
<option value="pet_store">Pet_store</option>
<option value="pharmacy">Pharmacy</option>
<option value="physiotherapist">Physiotherapist</option>
<option value="place_of_worship">Place_of_worship</option>
<option value="plumber">Plumber</option>
<option value="police">Police</option>
<option value="post_office">Post_office</option>
<option value="real_estate_agency">Real_estate_agency</option>
<option value="restaurant">Restaurant</option>
<option value="roofing_contractor">Roofing_contractor</option>
<option value="rv_park">Rv_park</option>
<option value="school">School</option>
<option value="shoe_store">Shoe_store</option>
<option value="shopping_mall">Shopping_mall</option>
<option value="spa">Spa</option>
<option value="stadium">Stadium</option>
<option value="storage">Storage</option>
<option value="store">Store</option>
<option value="subway_station">Subway_station</option>
<option value="synagogue">Synagogue</option>
<option value="taxi_stand">Taxi_stand</option>
<option value="train_station">Train_station</option>
<option value="travel_agency">Travel_agency</option>
<option value="university">University</option>
<option value="veterinary_care">Veterinary_care</option>
<option value="zoo">Zoo</option>
<input type="submit" value="Submit">

Friday, July 24, 2015

Looking for Neo4J Help in Vancouver?

If you are in Vancouver, BC or the surrounding areas, including Nanaimo, Victoria or anywhere else in the Province, there are some great resources for Neo4J.  Personally, I've been working with Neo4J for several years and co-manage the Vancouver Graph Database User Group.  I love the technology and think it is great.

For companies interested in hearing more about Neo4J, there are many online resources.  I've published quite a few blog articles for developers on how to get started and supplied code examples and technical help in many contexts.  If you or your company is interested in having someone come in to help discuss Neo4J, please contact me at Hot Tomali. In business since 1998, Hot Tomali has survived the best and the worst times for High Tech.  Hot Tomali is working with Neo4J on a number of fronts including a Sitefinty CMS <-> Neo4J connector that allows developers to bring Neo4J data right into the Sitefinity environment and bind the data to objects.

DISCLAIMER: I am working as the CTO for Hot Tomali.

Thursday, July 23, 2015

More on Geothermal Energy in British Columbia

The article below recently surfaced via the Vancouver Sun.  As a person who has been a large proponent of Geothermal energy and a former consultant with the United States Department of Energy (US DOE), I have been advocating that BC MUST start developing geothermal power for years. Every other country in the ring of fire uses this abundant, clean and reliable/renewable source of energy, except Canada.

Our current BC Geothermal Resources Act, a BC statute, reads like a manual for keeping geothermal development to a minimal. Our provincial policies and processes are not conducive for geothermal companies to work in BC, nor have our politicians taken the necessary steps to start this clean and renewable energy industry in BC.

When I ran as an MLA candidate, my platform was strongly advocating the use of geothermal power instead of options like Site C or Fossils Fuels. If BC begins to use electric cars en masse, we will need a huge increase in power. even without, we can develop and sell power to other jurisdictions to replace their reliance on fossil fuels.

My dream is one day that we will start to use this form of power.

B.C. geothermal projects promising, but ‘high very risk’
Developer eager to work on proposal with BC Hydro
Bruce Constantineau
Vancouver Sun
July 22, 2015 5:55 PM

VANCOUVER — Two potential geothermal energy projects near Pemberton could
generate electricity for about seven cents a kilowatt hour — only slightly
higher than the 5.8 cents to 6.1 cents a kilowatt hour cost estimate of
the Site C dam project.

That's the conclusion of a recent Kerr Wood Leidal Associates study on the
economic viability of geothermal resources in B.C., which considered nine
of the most favourable geothermal sites in the province.

There are no geothermal energy projects operating in B.C. but the study
estimated the cost per kilowatt hour for the nine sites would range from
6.9 to 7.1 cents for Pebble Creek and Meager Creek near Pemberton to 17.6
cents for Clarke Lake near Fort Nelson.

BC Hydro senior strategic technology specialist Alex Tu said some of the
projects appear promising but stressed the cost estimates are still "very
uncertain" and carry a lot of risk.

"Even though it says seven cents a kilowatt hour, it's still a risky
proposition," he said. "All the geothermal in the province is still looked
at as very uncertain and very high risk but if you can make the project
happen, seven cents is a good price."

Tu noted BC Hydro invested tens of millions of dollars drilling at the two
Pemberton area sites in the 1970s and 1980s but could only produce enough
steam for a 20-kilowatt demonstration facility that operated for 18

Geothermal power facilities work by drilling into the earth and
redirecting steam or hot water into turbines that convert the energy from
the fluid into electricity.

Tu said Hydro has always been open to geothermal power as an alternative
energy source but no geothermal projects have ever been submitted to Hydro
in any of its calls for power from independent power producers.

Hydro's standing offer program offers to pay producers $100 a megawatt
hour for smaller energy projects of up to 15 megawatts. The two Pemberton
area geothermal sites each have estimated capacities of 50 to 100

Borealis GeoPower chief geologist Craig Dunn, whose Calgary-based firm
hopes to build two geothermal power plants in B.C. by 2018, said he was
excited by the Kerr Wood study, which was commissioned by BC Hydro and
Geoscience BC.

"I think it's a giant step forward in recognizing that geothermal is a
viable energy opportunity for the province of British Columbia," he said.

Dunn said the drilling and turbine technology associated with geothermal
power continues to improve, making that form of energy more economically
viable than ever.

"As a private developer, I know that my costs are significantly less than
the estimates," he said.

Tu estimated the cost of the two proposed Borealis geothermal sites near
Valemount and Terrace at about $120 to $140 a megawatt hour but Dunn said
current drilling economics — with many drilling rigs now inactive due to
the oil industry slowdown — could cut that estimate by 25 to 50 per cent.

"We look forward to working with BC Hydro within the standing offer
program pricing (of $100 a megawatt hour)," he said. "We believe that we
can be economic."

Thursday, May 14, 2015

More Neo4J Training - Vancouver, BC

Back for the fourth time in two years, Hot Tomali is presenting two solid days of developer training for Neo4J.  Whether you are a skilled developer or just beginning, this course features an easy learning curve and tough challenges to cater to all levels.  At the very basic level, attendees will learn the basics of graph data basics, the Cypher language and how to embed Neo4J within applications.  On day two, we will dive into modelling databases and learn how to represent several domains into various data structures.

The classes are designed to maximize the learning over the 8 hour day and teach students what graph databases are, how they differ from RDBMS systems, the data model, Cypher (the query language), and how to build and use graph databases.

So, what is Neo4J and what are graph databases?

A graph database stores data as nodes and relationships.  Both particles have properties, expressed in key:value pairs.  Unlike RDBMS systems, graph database's schemas are determined by the instance data itself and not a separate structure.

Neo4J is the world’s leading graph database, meaning it is used by more customers than any other graph database. It offers several advantages over fixed schema databases, especially for startups given the immaturity of their data models. Neo4J does not require a schema like Relational DataBase Management Systems (RDBMS). Instead, Graph databases save data as “Nodes” that are connected with “Relationships”. Nodes and relationships both have “properties” which is how humans think about concepts in the real word. Nodes may be arbitrarily added or removed without re-writing an entire database schema, a true savings of costs and effort.

The Neo4J implementation of a graph database has become the industry standard. Cypher itself, a language similar to the Structured Query Language (SQL) has become a sort of Pseudo standard within the space. The course will cover the basics of Cypher and some advanced topics like sorting and filtering return values.

If there are still seats available by the time you’ve finished reading this article, sign up here! The cost is less than $100, an absolute rarity in technical courses in today's world.

All you have to bring is yourself and a laptop.

Monday, March 30, 2015

My Referendum Thoughts

I have been asked by many people what my thoughts are on the Transit Referendum.  For the record, I will repeat what I had earlier stated.  A referendum is not something I feel is needed in most cases as the process has flaws.  We elected the current government and with that election, have given them permission to move ahead with their stated election promises.  Nevertheless, we find ourselves in a referendum situation.

I have a good mind to vote no for the single reason I view a "yes" or "no" vote on the entire proposal as flawed.  If we are going through the time and effort of a referendum, it is a good time to maybe break out some of the programs into individual yes or no votes.

In general, I support far more infrastructure in public transit because it is both healthy for the economy and for the environment, but only if done properly.  Allowing hundred of kilometers of new bike lanes to be built without proper scientific research and oversight is a problem in my eyes.  As a cyclist, I do not support making cycling more dangerous as has been the result of some changes.  As an environmentalist, I do not support putting more CO2 into the atmosphere.  Unfortunately, the closure of Point Grey road does absolutely nothing to improve cycling safety (how can you improve over “zero” bike accidents in five years) and does a lot of cause further congestion which causes far more CO2 to be placed into the road.

Unfortunately, I have been born with a scientific and quantitative mind.  I actually read bills, study the fine print and do the math calculations.  There is not such thing as a free lunch and many of the current left wing propaganda is littered with the notion of “let’s throw up a few solar panels and ride a bike and we’re green!”.  Sadly, this is green washing and very far from the truth.  The average person amongst us, myself included, uses about nine times too much energy in general as we should be allowed to use.

So back to the current referendum. It would have been far better if each line item was listed separately and the ballot had a place to vote on improvements to the plan.  Where do I sit?

I would implement the following changes:

1. Require an external audit of the bike lanes with a stated goal, a scientific assessment of our track record towards the goal and an openness to hear ways the process can be improved. NO new bike lanes without some proper oversight please!

2. Instead of building more cars space on highways, I would like to see enhanced electric rail services around our region. I would vote for little improvements to be made to roads, instead having our region served uop with improved electric rail service.  If I lived in Langley, I would much rather ride a 180 KPH commuter rail and be downtown in 18 minutes and be able to read or work on the train than simply one more lane for cars.  Since the costs are about equal, it is worth thought.  Same for the new Massey Tunnel.  Why not electric rail that one could take from downtown Victoria to Vancouver (connected with the ferry system)?

3. The old Skytrain is an obsolete technology.  I would rather see more street level trains.

4. For Broadway corridor, use existing rail rights of way and augment it with branch lines.  If the data suggests that a tunnel will accomplish the goals while using existing rail corridors wont, then I will be ok with a tunnel. I would much rather see a New York style train than our hated Skytrain system.  It is bloated, old and costly.

As for walking, all for it. 

The tax itself is a bit of an issue.  We are taking on a very large debt here and it might be better to ask ourselves “do we really want 1,000,000 more people here?”.  Why not help other cities develop instead of Vancouver becoming this major metropolis?

All of this needs more discussion.  This is a band aid on a cast sitting on top of stitches to hold things together.  We, as a society, cannot keep growing like this.

I just stuffed my ballot. I voted “yes” despite the flaws.  After all, what is the real alternative?  Another flawed process with more wasted money?   GAH!  To think how much good I could have done if elected to the provincial legislature..

Tuesday, January 13, 2015

How Trans Mountain Project Will Pump Profits to Its Texas Owners

True journalism requires tireless hours of investigation, a disciplined mind that can separate fact from story, a dedication to one's profession that cannot be bought or traded and people who devote their lives to the profession.  Sadly, I have noted that with the massive cuts in funding to the mainstream press, more and more of our stories on news events are read from untrained writers.  Blogs, pseudo-news outlets and pure infotainment outlets masquerading as press (such as Fox News) have turned professional journalism into a rare commodity.  Any true democracy requires an impartial, well trained and fully funded independent press to keep those in power honest.  These journalists must force truths, question statements and seek the answers that lie beneath the rhetoric dumped on to society by an assuming leadership.

I recently encountered one such example of a journalist who seeks the truth behind the masquerade.  Robyn Allen of the Tyee has worked hard to trace the trail of money behind Kinder Morgan.  She has turned over many stones in her quest to find the facts and read behind the accounting statements.  I would encourage anyone who is interested in seeking the truths in this matter to give the story below a read and share it with others.

"U.S.-based Kinder Morgan says its Trans Mountain expansion project represents financial and economic benefit to the Canadian economy, and our federal and provincial public treasuries. Who would spend a year investigating such claims, rooted as they are in complex tax law, regulations and corporate structure? I did. What I found made me conclude the opposite -- Kinder Morgan drains financial wealth from our economy and does not pay its fair share of taxes. I have written about the project's complicated design to yield meagre tax revenues for Canadians in a previous Tyee article. Now let me examine just how Canadian Kinder Morgan Canada Inc. is. The answer: hardly at all."
Read the full story here.

IT is an interesting read of Richard Kinder and William Morgan, two former Enron executives who run what appears on the face to be a Canadian company.  When we hear of Kinder Morgan as a company caring for it's fellow Canadian's financial well being, we must balance this out with the fact that the two former Enron executives are both natives of the US, not Canada.  Who's best interests?  I can only guess it might not be mine.

You will recall Enron as the single largest house of cards in US history.  It was a fraud on a massive scale.  Tax avoidance, fictitious profits, creative accounting and storytelling on a scale never before seen were just some of the ingredients of Enron.  Now, we Canadians have to ask ourselves if we trust the same individuals to keep our best interests in mind.  Guess where I set on the matter.

Please support Robyn and others like her who keep real journalism alive.  

Tuesday, December 02, 2014

Mac OSX Won't Acknowledge New JDK, Set Java Version

Java on OSX has always been much messier than Java on Linux.  The very way that Apple finds the current JDK is simply in-elegant and to be honest, quite ugly.  I've been shifting Java JDK's and JVM's back and forth for quite a while now in my dev machine and ran into this problem many times.  I tried using the System Preferences to set the default Java to 1.7.  It stated that it was 1.7 but every time I went back to the Terminal, I ran "java -version" and
got the old 1.6.  I tried everything!!  Nothing seemed to work as promised.

After some research, I found this little tidbit of help that worked.  It seems that there is a file installed with OSX that tells the OS what version of Java to use.  The file is a symbolic link to the location of the Java you want to use.

To find what version of Java you have, open the Terminal and type "java -version".  The output will be something like this:

java version 1.6
Java (TM) SF Runtime Environment (build 1.6.0_22-b11)
Java HotSpot (TM) 64-Bit Server VM (build 1.6.0_22-b11 - mixed mode)

OK.  So you have already installed Java 1.7 and tried to set the JAVA-HOME environmental variable, tried the System Preferences and nothing works?  Try this.

1. Install the new version of Java.

2. Open System Preferences and click on the Java icon. Open it up and make sure that Java 1.7 is selected.

3. Open up your Terminal and navigate to /System/Library/Frameworks/JavaVM.framework/Versions/ .  This is done by using the command "cd /System/Library/Frameworks/JavaVM.framework/Versions/".

There is a file there named "CurrentJDK".  This is simply a symbolic link to the Java home directory. Do not delete it, but do the following:

4. In Terminal, type "sudo mv ./CurrentJDK ./CurrentJDK_old". This simply renames the file in case something goes wrong.  To execute a command with sudo, you will be asked for your password. This is the admin password to your computer. Go ahead and enter it.

The CurrentJDK symlink was pointing to an older Java version. Removing this file (directories are actually "files" in Unix systems)  and create a new one pointing to the new Java JDK.  Since the current directory is owned by a privileged admin, you will need to use the sudo command.

5. In the Terminal, type "sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/ ./CurrentJDK" 

6. In the Terminal, type "ls -la" to make sure your new file was created and the old one is there, renamed.  You should see something like this:

That is it!  You may delete the old CurrentJDK_old file if you wish to.  If you now type in "java -version", you should see the new Java.

If this worked for you, please consider sharing this on Facebook or Twitter.  

Monday, December 01, 2014

Some Neo4J Training Spots Still Available!

Neo4j's Graph Academy Training provides you with the required skills to be effective with graph data and productive with Neo4j. You will gain key modeling and implementation skills to tackle graph data management on Neo4j with ease. While the course is offered using Neo4J, chosen because it is the world's most popular Graph Database, the skills learned would be applicable to other Graph Databases.

I will be leading two courses in Vancouver, BC at Hot Tomali Headquarters on December 9th and 10th of 2014.  Every course attendees will be provided with food and coffee as well as soft drinks and course materials.

The courses are as follows:

Neo4j Fundamentals - Dec 9

Who should attend? Developers, Administrators, DevOps engineers, DBAs, Business Analysts and students.

Executives and others who want an overview of the Neo4j technology. Skills taught An understanding of graph databases Install and operate Neo4j Use the Neo4j development tools productively Exploit the strengths of the Labeled Property Graph model and the Cypher query language Build confidence in building a graph enabled application.

Prerequisites: Bring a computer (laptop) and be prepared to learn.

Register Now

Graph Data Modeling with Neo4j - Dec 10

Who should attend? Developers, DBAs, Business Analysts and students.

Skills taught An understanding of the labeled property graph How to apply the property graph to common modelling problems Common graph structures for modelling sophisticated, connected data scenarios Criteria for choosing between different modelling options.

Learn how to modify an existing model to accommodate new requirements.

Prerequisites You will need some familiarity with Neo4j and Cypher.

The material from the Intro to Neo4j course is sufficient knowledge to understand this course.

Register Now

Friday, November 28, 2014

Geothermal Energy within British Columbia, a Potential Gold Mine for BC!

On Tuesday, November 25, 2014 CanGEA released the full copy of their Geothermal Report to the public. The title of the report is Geothermal: The Renewable and Cost Effective Alternative to Site CNew information and analysis contained in the CanGEA Report demonstrates that geothermal energy is a low cost, clean, viable alternative to the proposed $8 Billion Site C Dam project (“Site C”).

I have been a strong proponent of Geothermal energy since working with the United States Department of Energy on a Geothermal project alongside colleagues from the National Renewable Energy Laboratory (NREL) and others.  During the 2013 BC Provincial election, I campaigned on a platform of using Geothermal to kickstart a strong renewable energy industry in BC, creating thousands of new permanent high tech jobs and at the same time moving BC into the top quadrant for being a sustainable region with advanced energy policies and reversing the trend of a high carbon future.  I believe that actions like this, not carbon taxes, are going to be the most effective way to combat environmental pollution and moving away from fossil fuels.

Geothermal has the potential to provide firm energy at a lower cost than Site C in a manner that benefits ratepayers, taxpayers, the economy and the environment. It can provide for our regional energy needs a thousand times over.  Unlike solar and wind, Geothermal is not intermittent.  It works 24/7, day and night, all four seasons of the year to provide energy at a reasonable cost while respecting our planet.   Geothermal has a far lower carbon footprint than Site C and would provide far more jobs.  Our energy production would be diverse as well. If some radical shift in climate patterns created a situation where the rivers lowered their flow volumes, Site C would represent a catastrophic failure.  Smaller, regionally distributed Geothermal projects would meet our needs without putting al our energy eggs on one basket.

The CanGEA report identifies 10 key advantages that Geothermal has over Site C:
  1. Geothermal power has a lower Unit Electricity Cost (UEC) and capital cost.
  2. Geothermal heat is a valuable by-product.
  3. More permanent jobs are generated by geothermal operations than other alternatives.
  4. Costly BC Hydro system transmission upgrades are avoided or minimized.
  5. The power grid is strengthened through ancillary services, including geothermal energy’s unique base load and the capacity to dispatch energy.
  6. Geothermal fluids create strategically significant mineral and rare earth elements recovery opportunities.
  7. Geothermal power plants can be built to meet demand and manage or reduce the risk of project cost overruns associated with large-scale projects.
  8. Geothermal offers increased food security and price stability.
  9. The physical and environmental footprint of geothermal is small.
  10. Geothermal offers a means to “green” oil & gas and mining operations.

Based on the report findings CanGEA urges the government to adopt the following five-point plan to become a world leader in geothermal:
  1. Implement a one year moratorium on the final investment decision on Site C to allow time for further due diligence on geothermal. 
  2. Refer geothermal to the BC Utilities Commission (BCUC) for review and recommendations by November 2015 in accordance with section 5 of the Utilities Commission Act. This BCUC review would include review of our findings by independent international experts and a public hearing. 
  3. Establish a public education program on geothermal energy production in BC, which includes the development of demonstration projects.
  4. Form a task force to make recommendations on the policy and regulatory changes required to support cost effective and efficient development of a geothermal industry in BC by 2020. 
  5. Hold a government and industry sponsored international symposium on geothermal energy production in Vancouver in 2016.
Additionally, I would also argue that the BC Geothermal Resources Act needs an immediate overhaul to create conditions more friendly to Geothermal prospectors.  Note that in the ring of fire, a coastline that surrounds the entire Pacific Ocean, Canada is one of only a few nations that have no Geothermal energy production.  Since we have almost the highest capacity, this is shameful and we have to ask ourselves "how could this have happened?".  The answer is within the BC legislature.  The BC Geothermal Resources Act must be revised and we must make our region open to Geothermal energy production.  This must happen now!

I may have committed political suicide by running on this platform.  After all, why would fixing our CO2 emission problems, creating thousands of permanent high paying jobs, creating clean, renewable energy and becoming a world leader in clean energy be of any interest to the average voter. They are more concerned with running red lights in a car with children in the back seat, what happens within our labour unions and other trivial matters.  I set out to provide a solution and it did not appeal to voters.

You can get a copy of the report backgrounder here.

If you would like to show your support for CanGEA's efforts to bring a clean, renewable, and cost effective energy source to Canadians, please consider contributing to this report through our powEARTHful 2.0 campaign.

Thursday, November 27, 2014

Sitefinity Certification

At Hot Tomali we are doing some great work with Sitefinity, a Content Management System (CMS) for the .NET world.  Sitefinity is published by Telerik and Hot Tomali has been a partner in their ecosystem for a few years.  As part of the new enrolment process, many of us are being certified.

To that end, I have just been certified with the business accreditation.  I suspect the developer certification will be next in my career path.

If you are interested in Sitefinity, please drop us a line and we are happy to provide some ideas and share knowledge from our experiences.  Sitefinity is a category winner for .NET CMS in every way shape and form.  From it's ability to quickly re-purpose content for mobile apps to the fine grained access control over individual blocks of content, it delivers a solid ROI for just about any enterprise.

Contact Hot Tomali directly using this form ->

Tuesday, September 16, 2014

A "Must-Attend" Geothermal Energy Talk

BCSEA Webinar: Geothermal Energy - BC's Enormous Potential

Join us for a free BCSEA Webinar on Tuesday September 23 at noon PDT (3:00 PM EDT)

Reserve your free Webinar seat now at:
Beate Fischer Title SlideJoin us for another free BCSEA Webinar.
Our Earth stores an enormous source of renewable energy right beneath our feet: geothermal power.
Geothermal energy is delivering clean, base-load and low cost electricity in 25 countries as well as commercial heating in 70 countries.
  • is price competitive with other renewables
  • is the only renewable base-load option with higher capacity factors than other sources
  • provides a source of useful byproduct heat
  • is especially attractive for northern and remote communities
  • is found right across Canada, especially in the West and North
  • runs indefinitely with proper heat resource management
In Canada, the geothermal industry has yet to gain traction despite having world class resources. It has great promise... but what will it take to turn the promise into reality?Our guest presenter Alison Thompson has dedicated a substantial part of her career to investigating and demonstrating the technical and commercial viability of high enthalpy geothermal energy. Since 2007, she has been the Managing Director and Executive Director of the Canadian Geothermal Energy Association.
With over 15 years of experience in project management, business and technology development in the North American energy sector, Ms. Thompson has successfully sought changes in federal tax regulations that now include geothermal energy. She has also been influential in creating eligibility for geothermal projects and reports for provincial and federal government funding. She was the inaugural recipient of the Belle Mulligan Award for Leadership from the Canadian Investor Relations Institute, and is a frequent contributor to published geothermal papers.
She is Chair of Borealis GeoPower, and a board member of Deep Earth Energy Production; a past Officer of Alterra Power (formerly Magma Energy); and an external evaluator for the Canada Foundation for Innovation. Globally, she has a seat on the Executive Committee of IEA-GIA; is a board member of the IGA; and was Geothermal Energy Forum Chair at the 20th World Petroleum Congress. She has also served on the European Union’s Enhanced Geothermal Innovative Network for Europe’s (ENGINE) Stakeholders Committee. 

Ms. Thompson holds Bachelor and Master of Chemical Engineering degrees from McGill University, a Professional Engineering designation from the Association of Professional Engineers and Geoscientists of Alberta, a U.S. Engineer Intern designation, and a Master of Business Administration degree from Queen’s University. She lives in Calgary, Alberta, with her husband and son.
See BCSEA's previous webinars at 
Title: BCSEA Webinar: Geothermal Energy - BC's Enormous Potential
Date: Tuesday, September 23, 2014
Time: 12:00 PM - 1:00 PM Pacific Daylight Time (3:00 PM Eastern Daylight Time)
System Requirements
PC-based attendees - Required: Windows® 8, 7, Vista, XP or 2003 Server
Macintosh®-based attendees - Required: Mac OS® X 10.6 or newer
Mobile attendees - Required: iPhone®/iPad®/Android™ smartphone or tablet

Thursday, September 04, 2014

Google use of TLS as an SEO Ranking Signal

The Google webmaster blog has recently made it known what we at Hot Tomali/Technoracle had suspected for some time. The announcement, made last month, clarified that the Google search engine has been noting the use of HTTPS (using the Hyper Text Transfer Protocol with SSL or TLS) and providing a higher weight to those websites that use it.

Google has claimed that the adjustments to SEO scores are very minimal at the present time however we suspected they will rise in the future. The blog article seems to concur with our assessment and notes the following:

“…over the past few months we’ve been running tests taking into account whether sites use secure, encrypted connections as a signal in our search ranking algorithms. We've seen positive results, so we're starting to use HTTPS as a ranking signal. For now it's only a very lightweight signal — affecting fewer than 1% of global queries, and carrying less weight than other signals such as high-quality content — while we give webmasters time to switch to HTTPS. But over time, we may decide to strengthen it, because we’d like to encourage all website owners to switch from HTTP to HTTPS to keep everyone safe on the web…” 

Dissecting the Details 

Google is committed to security as a core principle of the future of the internet. Sites using HTTPS are providing two fundamental benefits to web users. First, they are helping keep the web more anonymous by masking the contents of data during its’ transportation. TLS uses certificates to create cypher text, a human-unreadable format for data, that can be safely transported without prying eyes seeing the content. TLS ensures your rights online are being protected and one of the core principles of the web is the right to that privacy.

Secondly, HTTPS makes sure that no one tampers with content as it is transported around the internet. This keeps the web safer and more secure.

What should you do?

If you haven’t done so, it may be beneficial to add security to your website to help with Search Engine Optimization (SEO) and security. It is not difficult for seasoned webmasters to set up.

The following steps are required: 

  • Conduct some research on the type of certificate you need: single, multi-domain, or wildcard certificates are the most common and your selection will depend on your server’s domain name structure. If you use several sub-domains (examples:; etc.), you will most likely need a wildcard certificate. 
  • Decide on the certificate strength. We like to use 2048-bit key certificates for our customers websites as they are stronger than 512-bit keys. 
  • Your webmaster will need to review your source code of our website to ensure the use of relative URLs for resources that reside on the same secure domain. Cross-domain security requests are frowned upon for obvious reasons. 
  • If you have content from other domains, make use of protocol relative URLs for such content. 
  • Read up on Google’s Site move article for more guidelines on how to change your website’s addresses. Contact Hot Tomali for help with your existing or newly planned websites. 
  • Once implemented, ensure that your HTTPS enabled content is not blocked from Google or other search engines crawling it. This can be accomplished by using the robots.txt directive. More data on the robots.txt declarations can be found at
  • Also be sure to allow search engines to index your pages by avoiding the noindex robots meta tag. 

And Finally! 

Make sure to contact Hot Tomali for any website or digital enterprise needs. We make your IT work and keep it working for you by ensuring it matures with the rest of the world. From mobile applications to advanced digital branding, we can provide value for you and create new opportunities for your business.