Wednesday, 24 October 2012

Fat Food Tax? Carbon Tax!? What the future holds in terms of the governance of choice.


Governance of Choice - Part 1


Le Burgar

Fat Food is Bad?

The Ontario Medical Association has put out a set of public health recommendations accompanied by a campaign to fight childhood obesity. Amongst the recommendations there included a suggestion for a “Junk Food Tax” where fatty foods would be taxed more and would balance with a reduction of taxes on healthier options.


The issue in particular is that an un-healthy diet is considered to be a preventable disease and this issue has virtually unanimous agreement of all qualified medical professionals where the association between obesity and Type 2 Diabetes, Cardiovascular diseases (stroke, hypertension, heart disease), and other non-fatal conditions (gout, osteoarthritis, and infertility) is virtually undeniable.


Yet, Lobbyists Disagree…?

It wasn’t long before industry lobbyists were quick to make their voices heard as they challenged that there is no proof that additional taxes would reduce obesity, and that there would serve detrimental to the economy as jobs (not profit) would be at risk. Also Freedom.


Aren’t we are already taxed anyways!?

However, the economy already suffers from obesity as a disease. As costs as a result of obesity are estimated at 2 to 2.5 billion dollars a year in the province of Ontario alone. That cost translates to nearly $200 of your taxes a year paid toward fat people every year. And if you are not obese, you live longer, so you get to pay it longer.


Wait a minute sir… A Fat Food tax sounds a whole lot like a dang Carbon Tax.

I would not disagree with that heading at all (well at least I would hope so, seeing that I just wrote it). A fat food tax is essentially a carbon tax; Where the general intention is that the tax remain “Revenue Neutral”, there is near unanimous support by qualified professionals (scientists) that carbon emissions are detrimental to the environment, and taxation lowers emissions without preventing a society from their ability to emit carbon or eat unhealthy.


Then, Why the mixed feelings over taxes?

Typically, right of center folks outline that the government has no position to regulate choice, suggesting that the government should only regulate based on restrictions rather than recommendations. Such as pouring oil in the lake: restricted. Arsenic in food: restricted. But everything else should be determined by individuals through the freedoms they are empowered with #RonPaulForPresident. The issue with the libertarian view and complete freedom of such regard is that the “free” individual requires knowledge and information that only scientists, doctors and industry professionals who spend years and years in study best understand.


Furthermore the view of taxation as a punishment of such freedom where ‘if I choose to buy a Baconator from Wendies, I would have to pay more than a salad’ is a unpleasant experience for me exercising my rights to choose.


So, Why should we say “Yes” to taxes?!??

A tax imbalance does not restrict freedom (as we can still choose to buy the baconator) but they do influence choice, therefore, if the government can maintain bodies of experts with the intention to improve quality of life (such as the Ontario Medical Association) and as they announce a set of recommendations, it’s the responsibility of the government to “govern” according to those recommendations.


For example, cigarette taxes were once bitterly contested, as the recommendations were made by the Medical Associations years before they were implemented. But now, in retrospect, most people are curious to why they weren’t implemented sooner as they are credited to have worked significantly in reducing smoking even though most people still don’t fully understand the reason why smoking is bad.


The result is we alleviate the strain on our tax system paying for healthcare, we improve our living environment, and the up front costs become minor in comparison to the down-the-line costs of smoking, eating fatty foods, and polluting the environment.



I have an interesting theory on governing choice through taxation that I’ve been sitting on for a couple of years. And would love to share it!


Comments are welcome!




Fat Food Tax:

US Library of Medicine: 

Ontario Medical Association:

International Institute for Sustainable Development:

Nutrition of a Baconator:

Wednesday, 10 October 2012

Calculating the Difference Between Days

One task I tend to be I find unusually annoying in GUI operating systems is the ignorance of “small apps” to do “simple tasks” especially when the GUI interface makes such a task intuitive and easy.


I still find myself opening the system calendar and counting the number of days between two dates.

As a programmer this simple task is ridiculous, because, literally every programming language out there has a “DateDiff” function or method of calculating the difference betwixt two dates. So.. as a programmer, I decided to write my own DateDiff app and voila:

Date Difference:


The program is simple, it gives you two calendars. You can select the dates on those calendars, and the text box in the middle gives you the difference of said dates.

Alternatively, you can modify the text box, and the second calendar will adjust it’s selected date accordingly.

Very simple app.

Download it at:


Sunday, 23 September 2012

Dealing with SQL Errors in PHP


An associate of mine was asking how to track SQL errors in PHP, and thinking that this was a common activity I turned to Google for a quick, simple, and encompassing example only to find that most solutions were over-whelming and insufficient.


I resorted to making my own set of suggestions:

The easiest way to evaluate errors in SQL is to check for potential errors prior to executing the SQL statement by testing input variables or even using test SQL statements...

Take a generic “Model” class with an Insert Function:

Model->InsertFunction(var1, var2, var3)

Here knowing var1 is constrained to be unique, check if var1 exists in database with a select statement: if result is negative, proceed with Insert. Otherwise, return null and populate the $GLOBALS[‘ERROR’] variable with “var1 already exists in database


Consider This: Creating a global variable called “ERROR” instead of throwing exceptions. This prevents yourself from ending your script prematurely, and allows failures to be utilized as desired. This may serve beneficial as coding with multiple developers does not become a practice of debugging script ending errors that derive from code you do not have access to.

Most issues are handled in the “controller” level, but database specific issues are done in the model area including maintaining relationships, unique constraints, ect...


The alternative error checking mechanism for SQL Statements in PHP, is to check for the error upon execution.

Best way to demonstrate this is to outline an example (works in PERL as well)


$value = mysql_query($your_query)
    or die("A MySQL error has occurred.<br />
        Your Query: " . $your_query . "<br /> 
        Error: (" . mysql_errno() . ") " . mysql_error());


Again, the code here also “Dies” ending the script prematurely. For the same reasons above, it would probably be better to execute a function as an alternative. Such as:

$value = mysql_query($your_query)
    or CreateError("A MySQL error has occurred.<br />
            Your Query: " . $your_query . "<br /> 
            Error: (" . mysql_errno() . ") " . mysql_error());
if $GLOBALS['hasERROR'] { return null };

You may have noted that the global variable tested for was “hasERROR” rather than “ERROR” which is a combination of Global variables I tend to use when evaluating database errors. This combination allows you to add facilities to your database needs, such as warnings, error lists, ect.


In this simple example the “CreateError” function I had in mind is written as such:


function CreateError($errorString) {
    $GLOBALS['ERROR'] = $errorString;
    $GLOBALS['hasERROR'] = true;
    return true;


For best results, use both!

The two previous methods in combination are the best way to evaluate potential database errors... The first method will let you manipulate how the database is used based on what the specific problem could be... for instance, An existing username is found for a new user registering, a detailed error gets returned to the controller, allowing the controller to manipulate the error information explaining that the “Username Already exists, pick another one”


The second method takes care of all circumstances of unforeseen errors...

And a generic “There was an error processing your request” would be shown, without the website crashing and showing some unsightly PHP error to the user.

Thursday, 31 May 2012

Delete a Record / Row from Excel with ADO.NET


In a WPF project I’m working on, I’m using an Excel document as a data source, and utilizing ADO.NET to access and manage my data.


The benefits of such is I can create DataSet’s that represent my data as well as outline key fields (that really don’t exist in Excel) and relationships (that technically don’t exist in excel… there are calculated columns – but I would advice against using them especially if you want to use ADO.NET) and generate calculated columns during runtime and create custom adapters to maintain my SQL outside of my code.


But one super negative is:


Microsoft explains that excel has a different meaning of a row and a record, and has some sort of complicated excuse of why they give you this error when you try:


Deleting data in a linked table is not supported by this ISAM. 


Additionally, and perhaps unrelated. I found even the DataRow.Delete() method acts up with null reference errors when performing such activity during run time, even though I physically didn’t attempt to remove the data. This I can only assume is related as well – however I cannot confirm this.

The Blanking Key Field Workaround

Without the ability to delete a row, a usable workaround would be to use an UPDATE statement to blank out the Key Field and ensuring that the DataAdapter filters out blank key fields when SELECTing the data.


Here’s a Walk Through:


  1. Right Click on the Table Adapter in the Dataset Designer, and select it’s properties. There Change the “CommandText” of the “SelectCommand”

  2. At the end of the SQL Statement of the SelectCommand add a WHERE clause:

    WHERE (NOT (Key_Field = ''))

    The key field being the field you will use to identify Rows during Updates and Inserts. Be sure to ensure your “UpdateCommand” and “InsertCommand” reflect identification or records via a manually determined Key.

  3. When clicking OK a Dialog window will appear asking if you want to regenerate your Update commands. Say “No” as you should manually rewrite Update commands if needed.

  4. As well, Visual Studio will ask you if want to update alternative Queries you may have entered in the Data Adapter as well. Hit “No” as well, as the filter itself is simply a work around. However, do manually review your other SQL statements for accuracy.

  5. Finally, change or add a “DeleteCommand” removing the SQL from a typical DELETE statement entirely, and changing the Command type to Update

  6. Change “DeleteCommand” to reflect something similar to: 

    SET    Key_Field = ''
    WHERE (Key_Field = ?)


Now, when you want to delete a field in your Excel through ADO, when you tell the Adapter to delete a record, the result will be a blank cell under the key column you specified, and your ADO layer will never show such record due to your filtering it out upon selection. Thus, it’s an imperfect workaround, but it’s one that works.




Please feel free to comment or leave your questions, Sincerely,

Wednesday, 30 May 2012

Facebook: Great Social Network, Terrible Business

One attribute of Facebook that makes it succeed on the Social platform is that the website caters to connecting real users with real users before anything else.

So why is that bad business?

Lets look at possible revenue production Facebook can seek:


A real user social network cannot place advertising prior to it’s users, adding a step, a commercial, or interference outside of the real-people we want to connect with will only de-value the social nature of the site.

Granted, seeing that my friend “Likes Guinness” may be something of a word-of-mouth advertisement that Facebook may be able to monetize, the nature of the interest is that it’s my friend, and not Guinness brand itself.

Selling Social

One method Facebook can generate income is charge for facilitating businesses to access social information of it’s users (Either through Facebook Connect, Social Feeds, or sharing contacts). However, each connection to Facebook only adds value to Facebook more-so to the business connecting to it.

For example, the Windows Phone includes all your Facebook contacts on the phone, as well as feeding social data (through Windows Live) accessible by the phone. For the Windows Phone itself this connection to Facebook is seen simply as a feature, where as Facebook benefits doubly by facilitating more interaction between it’s users thorough its network. Essentially it’s more valuable for Facebook than the Windows Phone.

Forcing bidding for such connections will only restrict usage of the social network, and in turn, devalue connecting real-users to real-users.

Enhanced Experience

Offering it’s users for an upgraded experience at a fee would only open the door for competition to offer the free alternative. Facebook knows that there is more “social value” in having a free service than an enhanced service as outlined by their Photo sharing boom where they easily overtook Flikr with lower quality facilities, but, being free – unlimited – and easy while informing their users that they are getting the best they can offer gives Facebook the edge in adding real users to it’s user base.

But the value of social doesn’t essentially translate to business value, as Facebook management should be aware of seeing that their “social” enabled video sharing is no where close to over-taking YouTube. Where Youtube harbours it’s own social environment.

As a result, the enhanced experience will only prevent real users from using their network, and in turn, force users elsewhere.

Win a Monopoly, then tax everyone

Microsoft tried that (and continues to try it) with Internet Explorer. Essentially, the only reason why someone uses Internet Explorer is because they are participating in the monopoly nature of the browser where the browser comes packaged with Windows.

Granted it remains very popular (face it, it does the job) it’s popularity can be easily destroyed simply by charging for it’s use.

Facebook to can be destroyed simply by charging for it’s use.
Or, lose value instantly by charging to use it’s photo-sharing or any particular component.

Social Value being greater than Business Value is an illusion

Granted, this “Shouldn’t be” an illusion, it is. As long as advertising is the driving force of product sales: social will never properly exceed promotional assets. Even though people prefer word-of-mouth recommendations over advertising, The hunter-gatherer nature of individuals takes precedence over the society they participate in – we contribute to society by an accepted not-by-choice taxation/obligation, we hardly pursue such obligations but recognize their necessity.

In turn, Society enables us to mimic friends in hunting and gathering, advertising makes individuals aware of products – and there in an individual prefers to personally be the judge of a product than rely on social recommendations alone.

Now, The initial IPO for Facebook may have been over-valued. But there is still hope…

… If facebook can somehow harness the power of society over an individual, there might be an irresistible asset in connecting with real-users.

Charitable movements and Causes might be the framework Facebook can benefit financially from.

It’s remarkable to see societies using Youtube, Twitter, and Facebook to overthrow governments; Provide aid during disasters; Organize protest; And expose corruption. Granted the previous only facilitate human rights which have little uncorrupted financial reward – however – it is possible that other ‘social projects’ can be made financially rewarding.

For example, let’s say, I as an individual would like to see a bike lane on my street and will be willing to contribute $10 to it’s development only if 500 real people commit to the same project. Facebook there in can charge a minute fee for facilitating large scale projects that individuals “like” and produce a form of revenue in terms of managing such projects.

If this sounds like Governance, yes, that’s what it is. There is potential that Facebook can obtain revenue via competing with government and it’s money wasting time consuming bureaucracy. But, the question here in is, will people be interested in a social project, if the social project manager is interested in facilitating investors?

Who knows?

Maybe I’m becoming too hypothetical and we will see giant advertisements rule Facebook successfully in the near future – lets see where the NASDAQ takes Facebook. I’m expecting either a stock split, or a stock price around $10-$15 per share, unless Facebook manages some sort of strong revenue stream or some smart take overs or investments with the influx of money it just received. Only time will tell,

Saturday, 12 May 2012

Log Off, Desktop Taskbar Icon (for Windows)

Log Off Taskbar Button Screenshot

I never understood why “Logging Off” is more inaccessible than “Switching Users” especially when the nature of Windows itself works as a single user environment operating system.

So the question I ask is, why would anyone want to stay “Logged in” while someone else is using their computer? It’s beyond me, the only possible reasons I can think of are:
  1. To prevent updates from working correctly
  2. To appear to people that you are online, or available to chat with, even though you are not even there.
  3. To mis-sync all your cloud services
  4. To consume computer resources while you are gone.
Now granted, all those reasons sound tempting to the average user. For me, A simple way to log off is much more desirable. Especially in the newer Windows Vista/7 Operating Systems where the act of “Logging In” doesn’t take a quarter day.

Steps to make your very own Log Off Taskbar Icon:

Follow this extremely simple steps to get yourself Logged Off your computer (With ease)
  1.   Right Click your desktop and select “New”, and “Shortcut
  2. In the “Creatre Shortcut” wizard type in:

    C:\Windows\System32\shutdown.exe -L

    then hit “Next” 
  3. Be sure to the name the short cut “Log Off” then click “Finish”
  4. Right click the newly created shortcut and select “Properties”
  5. In the Shortcut Properties dialog window, select the “Shortcut” tab and hit the “Change Icon…” button, a warning will come up, click “Ok” to continue.
  6. The system should look for default icons in “%SystemRoot%\system32\SHELL32.dll” Search there if otherwise, there you should be able to find an ideal Logoff Icon:

    (The Key Icon usually is the Ideal Log Off icon, you can however use whatever you please, like the Tree, I’m amused by this Tree Icon.. What it’s for is beyond me)
  7. Be sure to hit “Ok” and “Ok” again to close the respective dialogs, and drag that Short cut into the taskbar, or Quick Launch folder as you see fit.
Other things to note, you may want to consider other “Shortcut properties” such as “Run as minimized” and “Run as administrator” to better facilitate the Log Off action, and if you haven’t guessed the shortcut could be used for other things, if you change it’s location accordingly.

Enjoy Logging Off,

Wednesday, 18 April 2012

City of Vaughan Volunteer Recognition Award



Presented by Vaughan Mayor Maurizio Bevilacqua, the Volunteer Recognition award is presented annually to volunteers who made a contribution to their city in their service. It was certainly a joy to be recognized for such an award, a nomination put forward by Immaculate Conception Parish, a small community which I have been part of for many years.

My service with the parish includes:

  1. Organizing the Pine Valley Carnival
  2. Various Religious presentations for Easter and Christmas
  3. Coordinating the Immaculate Conception Youth Group.
  4. Involvement within 4 different choirs
  5. And alter-service.

This has been my home parish since the inception of the church and her community, and I’m very thankful for the recognition I was honoured with.



My Award



With former mayor and active regional councillor, Michael DiBiase



Nice to see other familiar faces, get recognized as well including Mrs. Romano



And, very nice to get to participate in the front hall of the new city hall building… Though, such an expensive building should have had a larger front hall. It was definitely too many people for the unusually small room, where the hallway in front of the room was more spacious.

Update (More Pictures) courtesy Michelle DeBuono





Wednesday, 28 March 2012

Adding Calculated Columns to WPF DataGrids



I’m still fairly new to DataBinding in WPF/XAML, and still in awe to degree of learning required to accomplish simple tasks such as Adding a calculated column to a DataGrid.


The most basic of solutions I found required a gross exaggeration of work that I’m not willing to undertake, especially for the simplicity of the task at hand.


So, in order to avoid having to write a unpleasant number of classes just to multiply one DataBound column with another, I’ve decided to make my DataContext a DataTable in a DataSet. With that, I’ve added a virtual column in the DataTable’s definition, and rather then defining a “Source” I alternatively defined an expression, which in turn is my intended calculation.


Column Expression’s are very flexible, so please review Microsoft’s Reference to see what it can do for you.


  1. No need to define attributes of the data within XAML, or resort to binding to static resources which you have to code.
  2. DataTables are easy to code, or if your as lazy as me, accessible through the DataSet Designer in Visual Studio. (The designer additionally gives you facility to test your expression by right clicking the table and selecting “Preview Data…”)
  3. Your XAML doesn’t need to bind to one column differently to than the others… In turn, allowing for AutoGenerateColumns as an available option.

Some XAML example

            Binding="{Binding Path=Tenant_Name}" />
            Header="Sq Feet&#x0d;&#x0a;"
            Binding="{Binding Path=Tenant_SqFeet}" />                
            Header="Basic Rent&#x0d;&#x0a;"
            Binding="{Binding Path=Tenant_BaseRent}" />
            Header="&#x0d;&#x0a;x Sq Feet"
            Binding="{Binding Path=Tenant_Calc_SqFeetByBaseRent}" />                



My only concern with this solution is that it’s too graceful not to be posted elsewhere. So if anyone can explain to me why this is not the ideal method for displaying a calculated column, please let me know in the comments.



Sunday, 4 March 2012

Regulating Robocalls


Here’s an idea: Let’s improve privacy and protect democracy at the same time!


Courtesy: CBC


The “Robocalls” scandal brings another “Technology” related issue up to the forefront of the political arena, and while everyone focuses on the “Who done it?” we forget to focus on the core concern, “how do we regulate it?”


Let’s take a step back for a second, and look at what IS actually happening here. A robocall itself is an automated call where a list of numbers is attended to by either a recording, or by an operator “doing their job” which involves reading a script given to them.


With the facility for telephony technologies to process listings with ease and affordably, we (the public) have been getting harassed by various services such as:

  1. Air Duct Cleaning services.
  2. New Windows or Doors for your house.
  3. Got $10,000+ of credit card debt? Let us help you.
  4. Mortgage Consultants who can cut mortgage in half
  5. Home alarm services
  6. You won a Free Vacation for the most exotic locations in the world.

    That last one is interesting, because once the operator insinuated we were racist for not accepting a free cruise to Mexico.

Here is the worrisome part of the above list, each of the above mentioned robocall’s are answered in our home at least once a month  regardless of being on the national “Do Not Call” list since inception, as well we have consistently notified each caller of being on such list.


The National Do Not Call List in my opinion does not work – it is a failed mechanism implemented by the CRTC which fails at penalizing or policing existing robocalls sufficiently.


I further want to outline that providing the police with more capacity over policing such activity would be ill-advised, as is our current legal framework already allows police forces of every jurisdiction to tap phone calls without a warrant or obtain all your telecommunication data under investigation  and if we allow C-30 to pass, combined with certain technologies, we will literally give police unlimited access to everything we do with our cell phone (not just your internet usage)


We need to start focusing on legitimate privacy - I’m talking allowing our phone services to have the same privacy that our ISP currently provides us in regards to our IP address – I’m talking sans-Bill C-30 privacy here.


We should consider legislation for the following:

  1. Phone numbers should be easily changed without charge
  2. All phone listings should be opt-in only.
  3. Phone listing should be distinguished by use – marketing, surveys, personal, business, ect.
  4. Basic phone services such as call-display, ident-a-call, private call restriction and call source tracking should be available without charge (it costs the phone company literally nothing to enable or facilitate these services).
  5. Surveys (or other forms of robocalls) should be authorized by an authority.
  6. Having an un-authorized phone listing should be against the law.
  7. Telecommunication providers should not be able to obtain your call data to any extent without being authorized (this too can be considered a type of phone listing)
    And yes, this does happen. Even the content of your text messages:
  8. Call centers should be responsible/liable for callings regardless of whatever indemnity they may have on contract.
  9. Call centers must disclose who they are calling on behalf of at the beginning of any mass call service, as well offer opportunity for the call recipient to choose not to accept the call.
  10. And call centers must disclose details of their phone calls upon request by the authorities (Let’s take the privacy of those who are assaulting the citizens away, not the citizen’s for a change)

So, when elections Canada gives a politician a phone list with a stern warning not to abuse it and dispose it after the election. The politician would not be tempted to fail at disposing such list or distribute such list to a call center. Nor will a call center be too excited to have a list of phone numbers that is not authorized or facilitating fraud due to having no legal protection in terms of responsibility over the content of the calls themselves.


Therefore if our government were to implement an anti-Bill-C30 type bill,

it is possible…

and i might be going out of a limb by suggesting this..


protect democracy!


And privacy!





Thursday, 23 February 2012

Vic Toews Responds

I signed an online petition over at which included sending parliament a message that you are against the proposed Bill C-30. As a result, a (likely automated) response from Vic Toews comes back to you by email. I decided to post this email, with some comments of my own (highlighted in gray):

Thank you for contacting my office regarding Bill C-30, the Protecting Children from Internet Predators Act.

I’m with Bob Rae on this one, Why name this bill in such a manner that if you oppose it, you are Pro-Internet Predators?

Canada's laws currently do not adequately protect Canadians from online exploitation and we think there is widespread agreement that this is a problem.

Yes they do. The police didn’t mention any need for this level of access, and are working diligently and successfully under the current set of laws … also note that they were issued 76 warrants. Judges seem not to have trouble issuing warrants to police if they suspect child pornography. So what’s the deal with this bill?

We want to update our laws while striking the right balance between combating crime and protecting privacy.

Let me be very clear: the police will not be able to read emails or view web activity unless they obtain a warrant issued by a judge and we have constructed safeguards to protect the privacy of Canadians, including audits by privacy commissioners.

Oh?!? so why are we so interested in tracking email and web activity? Is it because you found an extra $80 million lying around? which… btw… sounds ridiculously low considering the level of tracking proposed in the bill

What's needed most is an open discussion about how to better protect Canadians from online crime. We will therefore send this legislation directly to Parliamentary Committee for a full examination of the best ways to protect Canadians while respecting their privacy.

For your information, I have included some myths and facts below regarding Bill C-30 in its current state.

Vic Toews
Member of Parliament for Provencher

This is my favourite part, where does this information come from!?
The supposed “facts” sounded so ridiculous and un-sourced that it didn’t take me long to find online someone who had some interesting comments on each of the claims. The following notes were taken directly from Neal Jennings who also blogged about this letter yesterday.

Myth: Lawful Access legislation infringes on the privacy of Canadians.

Fact: Our Government puts a high priority on protecting the privacy of law-abiding Canadians. Current practices of accessing the actual content of communications with a legal authorization will not change.

Neal Jennings – Debunk: Your Government’s priorities are thoroughly irrelevant.  Your bill clearly changes the practices of accessing the actual content of communications with a legal authorisation.  Isn’t that the whole point of the bill? If that isn’t the point – WHY THE HELL ARE YOU PASSING THIS BILL?"

Myth: Having access to basic subscriber information means that authorities can monitor personal communications and activities.

Fact: This has nothing to do with monitoring emails or web browsing. Basic subscriber information would be limited to a customer’s name, address, telephone number, email address, Internet Protocol (IP) address, and the name of the telecommunications service provider. It absolutely does not include the content of emails, phones calls or online activities.

Neal Jennings – Debunk: Authorities already have ability to monitor personal communications and activities, with a warrant… or, if they’re CSIS, they’ve always had the ability to do this for whomever they feel might possibly be a threat to national security (which as we’ve seen through declassified files over the years, includes pretty much anyone and everyone).

Myth: This legislation does not benefit average Canadians and only gives authorities more power.

Fact: As a result of technological innovations, criminals and terrorists have found ways to hide their illegal activities. This legislation will keep Canadians safer by putting police on the same footing as those who seek to harm us.

Neal Jennings – Debunk: The “fact” has nothing to do with the myth supposedly being disproven.  The benefit to average Canadians has to be measured with respect to the costs, too. This will be financially costly to our governments, and is costly to all individual Canadians in the loss of our privacy.  The benefit is not actually proven here by Mr. Toews so I’m not going to do that for him.

Myth: Basic subscriber information is way beyond “phone book information”.

Fact: The basic subscriber information described in the proposed legislation is the modern day equivalent of information that is in the phone book. Individuals frequently freely share this information online and in many cases it is searchable and quite public.

Neal Jennings – Debunk: Your IP Address is not “phone book information.”  Period. Individuals do frequently choose to share this information online — the difference is that this bill requires third parties to provide it to  law enforcement agencies.  Changing disclosure from optional to mandatory is very significant, and makes the sharing of such information different.  If I had a land line, I could choose for it to be unlisted.  This is not a choice given to me or anyone else by this legislation.

Myth: Police and telecommunications service providers will now be required to maintain databases with information collected on Canadians.

Fact: This proposed legislation will not require either police or telecommunications service providers to create databases with information collected on Canadians.

Neal Jennings – Debunk:Um, actually, section 6: “(1) For the purpose of enabling authorized persons to exercise their authority to intercept communications, every telecommunications service provider must have the capability to do the following: (a) provide intercepted communications to authorized persons; and (b) provide authorized persons with the prescribed information that is in the possession or control of the service provider respecting the location of equipment used in the transmission of communications.”  How could they possibly have the capability of providing intercepted communications to authorised persons if they aren’t required to intercept communications?
Further, section16: “(1) On written request by a person designated under subsection (3) that includes prescribed identifying information, every telecommunications service provider must provide the person with identifying information in the service provider’s possession or control respecting the name, address, telephone number and electronic mail address of any subscriber to any of the service provider’s telecommunications services and the Internet protocol address and local service provider identifier that are associated with the subscriber’s service and equipment.”  Again, how could they possibly provide this information without maintaining a database of this?

Myth: “Warrantless access” to customer information will give police and government unregulated access to our personal information.

Fact: Federal legislation already allows telecommunications service providers to voluntarily release basic subscriber information to authorities without a warrant. This Bill acts as a counterbalance by adding a number of checks and balances which do not exist today, and clearly lists which basic subscriber identifiers authorities can access.

Neal Makes reference to section 17, as posted:
17. (1) Any police officer may, orally or in writing, request a telecommunications service provider to provide the officer with the information referred to in subsection 16(1) in the following circumstances:
(a) the officer believes on reasonable grounds that the urgency of the situation is such that the request cannot, with reasonable diligence, be made under that subsection;
(b) the officer believes on reasonable grounds that the information requested is immediately necessary to prevent an unlawful act that would cause serious harm to any person or to property; and
(c) the information directly concerns either the person who would perform the act that is likely to cause the harm or is the victim, or intended victim, of the harm.
The police officer must inform the telecommunications service provider of his or her name, rank, badge number and the agency in which he or she is employed and state that the request is being made in exceptional circumstances and under the authority of this subsection.

Which clearly outlines the “without warrant” policy the bill intends to implement.

I am really concerned over how our government conducts itself: polarizing issues, making up facts, and proposing ridiculous bills that over-police people. This government should focus on investigating it’s own members, not it’s constituents. In fact… I’m certain that If I do a little digging I could find out a series of wrong-doings or questionable acts this current government is guilty of.

I’m in agreement with fellow blogger Neal Jennings, as well, as a computer programmer analyst my concerns over this bill should not be taken lightly.


Sunday, 19 February 2012

An Modified Letter To My Constituents


I’ve been following the recent bill to give police and more particularly the Canadian government more power over everything you do online, what kind of power?

Basically, a record of all your online activity without a warrant.

Aside from how easily it is to obtain a warrant in Canada, the concern I have is from a professional point of view as a computer programming analyst where Bill C-30 on the technological side of things will bring forward several issues:

  1. Cost. This kind of monitoring will force ISPs to implement huge databases (and I mean HUGE) just to store all the random activity you are doing online. How big? Google’s databases already consume the power of a quarter of a nuclear power plant on their own… Can you imagine the cost of monitoring ALL activity (not just search records where users can control) will involve? Who is going to pay for all these costs?
  2. The destruction of an actual internet. One particular facility of an IP network is that you can branch it, create alternative branches, alternative routings, variety of mediums, ect… ect… That’s why it so quickly overcame the existing phone network within a decade after the popularity of broadband. The internet by concept has a facility which ensures it’s own survival. Regulating this facility prevents the common user from participating in it. You will not exactly be on the internet or contribute to it, in fact, you won’t be allowed to! You (as a Canadian) will by law have to be behind a “Firewall” to the internet; Now granted, this bill suggests that there will not be any technological restriction to data (like in China) but you will be behind a legal firewall – which – one bad law comes into play and you can be jailed, fined, and lose your computer or private holdings without warrant. This concerns me deeply, especially with the track record of our current governance and policing.
  3. You are on the internet more than you think! The internet, is not, web browsing any longer… In fact, web browsing is only a small part of the internet you use. Here are some things that use the Internet that you might not be aware of include phone calls (like wire-tapping), emails, most transactions with a credit or debit card, Shipping and parcel services, and transportation systems. This to me sounds like an unavoidable unveiling of what should be considered private.
  4. The system for “tracking public records” is essentially a surveillance system, and can be triggered, almost by accident. Let’s say I wanted to look up a news report on the “PLO” which is deemed a terrorist organization by the Canadian government. And via an online search I am directed to their website… The government/police/csis/rcmp can essentially use that as a sufficient reason to survey everything I do online – it’s not like they need a warrant, they just need to create a list of “red flags” to commence monitoring. Yes, this does sound like a conspiracy theory from the movie “conspiracy theory” but this is actually the technology needed to enact such a conspiracy… .. .

With all the previous sentiments considered, a back lash on the Canadian side of the Internet has occurred, with one particularly interesting occurrence making plenty of news being the revelation of personal matters of Vic Toews via Twitter, the MP responsible for proposing the bill, and the individual arguing that those opposed support child pornography. Ironically, The personal information published of his life was obtained without the need of such technologies that the bill requires to implement.
In response to such unveiling of publically available personal information: The government forced the removal of the Twitter account @Vikileaks30 … which I don’t understand how that is even allowable, as well, Vic Toews  further requested a parliamentary investigation (even though no particular laws seem to have been broken) into the Vikileaks posting of the personal attacks, and most recently a letter by Vic Toews to his constituents responding to the public backlash.

To which – I happily modified (my modifications are in italics) to outline some hypocritical details in all his recent political posturing.

Here’s to you Vic Toews:

An Open Letter To My Constituents

Dear Constituents,

Over the last few weeks I have been subjected to an extensive personal attack by my political opponents as a result of certain legislation that I have introduced in the House of Commons on behalf of the federal government.

These attacks, which have included criminal acts, be it not criminal in terms of current laws, but what I feel to be considered criminal such as revealing private information to the public and threats of what I feel to be considered criminal acts against me and my family, have been referred to the police for investigation. Any further criminal activity or threats of criminal activity against me or my family will also be referred to the police.

As my constituents I would like you to know that the personal attacks, criminal acts and threats of future criminal acts against me will not dissuade me from carrying out my responsibilities as an elected Member of the House of Commons and as the Minister of Public Safety for Canada and I am certain that your private information would be in better hands of the government than the public to which the government holds no responsibility toward.

The personal attacks against me are based on allegations contained in affidavits filed in the course of my divorce proceedings a number of years ago. The affidavits are on the public record and filed with the Manitoba Court of Queen's Bench. These allegations have been the basis of prior personal attacks against me and I assume they will form the basis of attacks against me for many years to come. I know, I know… That does sound ironic that publishing publically available information is considered criminal, but it will be, under the new laws we implement.

I want you to know that I have never responded publicly to the specific allegations made in these affidavits nor will I ever do so mainly because it is easier to ignore facts than argue them. I will be fully accountable for any responsibility that I bear for the breakdown of my previous marriage but that accountability is not something I owe to the public generally or to my political opponents in particular. It is a personal accountability which I cannot avoid nor do I seek to do so.

However, I do want you to know that I have a spouse and a young son who I love more than life itself. And… it is very important to note that I’m focusing on my character and my privacy than the actual issue of your privacy which I don’t care for at all.

The other night, while I was reading my favourite poet, William Butler Yeats, I came across these lines:

“I hate journalists. There is nothing in them but tittering jeering emptiness. They have all made what Dante calls the Great Refusal, — that is they have ceased to be self-centered, have given up their individuality.... The shallowest people on the ridge of the earth…”

No words could ever describe how I feel about the government being publically accountable to its constituents meanwhile ensuring the public is accountable to the government - That is what I believe is the only way to ensure your security.


Vic Toews

MP for Provencher


Wednesday, 15 February 2012

IDEA BLOG #2: Mobile Home Phone.

Dear anyone,

Why can’t we de-mobilize our cell phones when we get home? or connect our home phone number to our cell phones…. or even our office line, optional forwarding to our cells when we are out of office? or vice-versa?

Now there are few solutions out there, take this neat bluetooth style option:

    This little hub allows cell phones in battery battery-vampire bluetooth range connect to home/office phone. Sort of like having a car phone at your home/office.

    nifty? not really. It really only de-mobilizes a cell phone while eating up it’s battery.

The problem is deeper than this, first, to understand this problem one must analyze

What’s in a phone number?

A phone number generally identifies one of many entities:
  1. A person – generally given to people with cell phones,
  2. A business – generally found on business cards,
  3. A location – the still too common home phone, or,
  4. A device – like a fax machine
The problem with this association of identity occurs when a phone number is made to identify two or more items on the above list.

Things start getting even-more cloudy when people use their cell phones for work. This becomes rather uncomfortable when someone answers a personal call professionally or vice versa.

but wait, Alex! there is a solution that phone company’s recommend because they like making money:

The typical solution is to give each specific item it’s own number where we often see people often involve themselves over many phones during the course of the day including home landline, personal mobile, business landline, business mobile, business fax. 

Unfortunately, because of this prescribed solution we often see things get out of hand when there is the two phones – one person issue. Where you get a cell phone call and a location call simultaneously, or, the most awkward of them all: two calls on two different cell phones for the same person issue. What? why? what is going on here???

The history of the problem comes from the recent history of how phones were used. 15-20 years ago, almost all phone numbers have been wired into the telephone network. Since wired networks are non-mobile, phone numbers were often issued according to location. For example, Area Codes typically identify an area to where a phone could be found. My area code is “905” which represents the Greater Toronto Area.

The impossible dream !!!

Ideally changing the structure of the phone networks and the numbering system could better facilitate the nature of landlines vs mobile phones. For example,

- Land lines should remain localized. duh. with less numbers though.
- an individual should optionally be connected to a location (up to 99 individuals per location)

1 (905) ### ## <- Location Number. Where (905) is the area code of said landline, this particular area code is Greater Toronto area.
1 (905) ### ##(15) –> connects to individual / extension associated with that location either call forwarding to a mobile/or designated ring type or specific phone in the office.
1 (905) ### ##(16) –> another individual associated to that location
1 (905) ### ##(00) –> the main phone number of a location. can connect to whoever.

1 (23) ### #### <- Individual Mobile Number. The area code in this instance can be an identifier of a plan and provider – allowing the caller to determine if a call is long distance, what type of mobile phone service they have, ect.ect… Adding additional meaning to the mobile number and allowing people to memorize one number less than they currently do.

Now… granted, the above is a |pipe dream| of sorts, re-structuring a phone network may not be too viable for everyone. And way too expensive to implement, there are, however alternative solutions that CAN be implemented, like… today:

We have the technology, we can fix many of these issues… now!

- Cell phones should have a dock option which automatically forwards cell phone calls to whichever dock it’s connected to such as Dock A forwards the cell phone to Number 1, Dock B = Number 2, Car Dock = Bluetooth, Alarm Clock Dock = straight to voicemail don’t bother me i’m sleeping. ect… Meanwhile offer alternative options like: charging your phone, avert being charged for calls that consume restrictive plans, play music off your phone, forward text messages to a computer’s instant messenger program. I don’t know… Think of things…

- Location based phones should easily enable call forwarding without charge (and include distinct identification to the forwarded phone) either via undocking a cell phone from said dock. Or, implementing a simple “*0#” sequence or something.

What I don’t get is, any of the above features would be great selling points of either a cell phone or a home phone service. If advertised correctly, these features could easily promote the sale of additional numbers / services / phones / features. That, get this… convenience the customer.

Is that too much to ask for?


Sunday, 5 February 2012

IDEA BLOG #1 : A Tablet instead of a newspaper.


Recently I was reading a news article of how India is supplying extremely affordable tablet computers to students in cooperation with a Montreal based company called "DataWind" 


The article outlines how costs were reduced by having content suppliers and advertisers contribute to the cost of the tablet itself, thus reducing the tablets price to only $50.

A $50 Tablet?! Oh My!!!Aakash-2-Ubislate-7

Granted most people receive their news online over newspapers, the newspaper still has a large audience, it allows for a very comfortable setting and provides a great collection of news with portability. Essentially, A newspaper is a daily tablet computer that gets delivered to your door.


However with the amount of paper, and paper advertising that gets assembled with the newspaper… Wouldn’t providing a cheap tablet instead of thousands and thousands of pages of paper over a course of a subscription be more economical?


All a newspaper would have to do essentially is to contract it’s subscribers for multiple seasons at a premium price (like $25 seasonally) and provide them a cheap tablet like DataWind’s UbiSlate with a built in android app that lets them access their online news reader account.


In fact most major newspapers are half way there with such apps already existing in the Android Marketplace. All they need to do is give their  existing call centers (or existing advertising mechanisms) an option to sell such a premium subscription and watch those (like myself) who have no appeal toward having a tablet get a tablet…

Come on newspaper company’s… Hurry up and take my money!

Wednesday, 25 January 2012

Set up your Rogers voicemail and more…

I found it interesting recently that Rogers did not give me basic instructions on how to access the home phone / business phone features for our newly acquired phone line. A simple “cheat sheet” would do, really…

Failure of their website to describe such a simple facility is seemingly absurd, and to call customer service for a question like, “how do i access/set up my voice mail?” also seems quite unnecessary. After getting such instructions, I realized if I searched such instructions Google would likely hook me up (and it did) with more information – and without a doubt Google managed to obtain a user guide for their home phone services:

PDF Guide for their home phone

To make life even easier (Seeing that various wireless customers have the same services) I’m also providing a cheat sheet, so that you too can set up your voicemail, and I don’t have to hear the message, “Inform this Rogers customer to set up their voicemail” next time I call you.

Rogers Phone Services Cheat Sheet:

How to access it
Voicemail *98
Away from phone:
Call your phone then press “9” when you hear your message
First time you use it, it will ask you for a temporary password which will be the last four digits of your phone number.

After that, you will be prompted for your new password
Block Numbers / Call Screen *60 To activate or deactivate, press “3”

To add a number, press “#” + The Number + “#”

To remove a number, press “*” + Number + “*”
Reject Anonymous Callers *77 *87 will deactivate rejection of anonymous callers
Call Forward *72 After dialling, provide number you wish to forward to. Wait 5 seconds, even if someone picks up, or until you hear 2 beeps
Call Transfer During a call press “Link” or “Transfer” or “Hang up” button Immediately after, when you hear a dial tone – call a local number you want to transfer to, once that number picks up – hang up and the call will be transferred.
Call Trace *57 This will allow the police to trace who is calling regardless of private name/number

I sincerely hope you set up your voicemail now, it’s super-annoying to decide to leave a voice-mail only to get a message that you can’t

Fix that,

Monday, 9 January 2012

Virus compromised Windows – new admin account work-around

I have seen far too many computers compromised by a Trojan virus that mimics legitimate antivirus software. Whereby the antivirus imitation program often disables all facilities of Windows (utilizing something called Shell Hooks) where you can’t open web pages, files, programs, or anything to any significant degree, because the mimic program interferes and offers to, “Buy me to get rid of me”
I known someone who did give their credit card number, guess what, it didn’t remove the malware… Figures.
The best way to fix this problem is by installing a legitimate antivirus program and running a full scan of the system. One I would most recommend is “AVG Free Basic” available at
Note: CNET’s contains a plethora of advertisements. And often those Advertisements themselves mimic download links to guess what!? a trojan that mimics a legitimate antivirus software. Always be mindful of what you are downloading.
Now… To accomplish this though, you will need to gain control of your system. Particularly your web-browser – which is a luxury you do not have. However, there is a “work-around” I like to use that works more often than not and allows you enough time to get online, get a legitimate anti-virus program, and scan away the malware.

New Admin Account Work-Around

  1. (Windows Key) [] + [R]   -> to launch the Windows Run Dialog.

  2. Type in “control userpasswords2” and press OK

  3. Click Add… to add a new Administrator account to the computer
  4. Be sure to choose a simple Username and Password, as well, ensure the account type is selected as Administrator, clicking Next and Finish until completed.
  5. (Windows Key) [] + [L]   -> to switch user accounts, switch to the new account you created.
In most cases new accounts are not completely inundated with Shell Hooks and should provide you with enough functionality to download, install, and run an antivirus or anti-malware program.

USE EXTREEME CAUTION – even when opening the browser. The existing malware may appear unsuspectingly (especially when you open the browser). DO NOT MINDLESSLY “OK” ANYTHING as any unsuspecting prompts may be related to the malware itself.

I hope this helps, Regards,


Page Hits