Skip to main content


Showing posts from October, 2012

Logging best practice

Do not use the work ERROR unless there is an actual error.  "0 Errors" or "No Errors" will always give a false positive without doing more regex work and some search/filter tools don't do it right anyway.

PS: That includes not naming functions, variables or classes with "error" in the name.

What does it cost to charge your electric car?

[caption id="attachment_1550" align="aligncenter" width="300"] plug in your electric car[/caption]

If you are the owner of the car in the picture then you are not likely to be paying anything. This is a pseudo public space but I'm certain that the property owner was not expecting to have to burden the cost of charging every electric car out there. And I'm certain that homeowners are not interested in replacing all of their receptacles with secure alternatives.

Rethinking software development

When I read that Apple was ejecting Java from it's browsers I believe my heart skipped a beat. On the one hand Java, when it was managed by Sun, was very good to me. And now that Oracle owns it I've been reluctant to use it and that has nothing to do with Apple's decision. It's just the way I see Oracle.

Coincidentally Google announces Dart 1.0, Firefox announces Rust 0.4, Google's GO is making headway ... but most telling is the article, I read today, criticizing FogBugz for implementing their cornerstone application using a proprietary and internal language and toolchain (Wasabi which looks like VB).

So my intuition tells me that if Oracle does not make some serious corrections "we" are about to experience a paradigm shift akin to the magnetic swap that the mad scientists have been talking about for the last 10 years; because:

business owners need to reduce their risk - general security and maintain control of the API
increase their intellectual property - …

Back on privacy issues

In a conversation with my father in-law this morning...

(a) there was a time when your social security number was truly secret. Now everyone from the cable company, ISP, newspaper boy, lawn service, High School, University, hospital and doctor wants your SSN and we give it freely and without challenge. Who really knows why a doctor or newspaper delivery service needs my SSN. Are they going to sue me into and after I'm buried? In Sweden the SSN is sacred; I'm just not sure how they get around the problems we have. (could be functional and/or legal)

(b) There is no privacy on the internet. Whether your using any of the big name browsers, you never login, you always use other people's computers or cyber cafes. The challenge is that between the ISP, browser manufacturers, super/affiliate advertisers, search engines; they where where you have been and where you are going. Not even the like of TOR is going to save you. Same goes for the anonymous breadcrumbs you thing you are drop…

The spotify business plan?

Does spotify really generate $120.00 in advertising per user per year or is the advertising merely the friction that is necessary to get the user to convert to a subscription?The crazy thing... spotify offers two subscriptions at $60 and $120 per year. And Pandora offers a similar subscription at $38/year ... but pandora's player might be enough friction to get me to move.

Is Gmail privacy gone?

There are a couple of things that the average user should know.

There is no such thing as email privacy.
Most email travels through the internet from point to point in the clear
So called legalese on the email footer about intended recipient and communication has not been tested in court and it not binding.

That said, if you have a private email server that you think is secure and you use it exclusively because you want secure email that is not to be seen by the prying eyes of big brother or even Google, Yahoo, Hotmail, Facebook or other... then you are sadly mistaken and misinformed.

Just because you have an uber secure email server does not mean that the recipient has the same. So then the real question becomes... Why not use Gmail yourself?

Pay for Ubuntu Desktop?

You've got to be kidding me!!! I'm not even certain this is a real thing or if it's some hoax. But for the moment let's just say it's real. My first inclination is/was "where do I send my check?" But as I started to think about Canonical I started to reconsider. What is it that these guys actually do and where is there revenue stream currently? They hire loads of people and have several pay-for products... In fact the general public does most of the real heavy lifting anyway. Including the testing.

However, there is one thing that I have to remind myself of. "Trusted Source". With that recent Russian malware scare I can only imagine that the internet scale is going to slow and that sandboxing and trusted source are going to be required. For that matter I have already started to adjust to a Microsoft desktop at work and in my VMWare at home.

And of course if it's a hoax ... then I wish a thousand papercuts on the perpetrator.

PS: I'd rather …

One Pager - Death March -- Yourdon

Death March is is fairly easy to describe. I particularly like the wikipedia description. The part that always gets me is "...informed member can see is destined to fail...". How many times have you been a part of a project that felt that it was going to fail from the day you heard the idea or when the initial details arrived.

Some of the foreshadowing can be seen in the book Mythical Man-Month although it's never addressed as such. Being in the thick of things I see this time and time again yet even if the project really is going to fail; at the very least it should not be a self fulfilling prophecy. If the project is going to fail then let it fail on it's own merits and not from a lack of trying. (Just my two cents).
(1) defines the death march and the forces/actions that make it happen

(2) death march projects come in all sizes

(3) Why? Dilbert, Politics, Promises, Optimism, Startup Mentality, Marine Corps Mentality, Intense Competition, Intense Regulation…

One Pager - Who Moved My Cheese -- Johnson

At various times in a person's life they may react to change in many different ways. Johnson provides a classification akin to mice and their cheese. The 4 rodent behavior types are:

Sniff - "sniff's out change early" - this rodent senses that change is coming and prepares early looking for new cheese.

Scurry - "scurries into action" - this rodent is never satisfied with the current stash of cheese and is always on the move looking for more cheese.

Hem - "denies and resists change as he sees it will lead to something worse" - this rodent will consume the current stash of cheese and once finished might still not be inclined to look more cheese thinking that the cheese might come to him.

Haw - "learns to adapt when he sees changing can lead to something better" - this rodent is waiting for for proof that there is something better out there.

And in summary Johnson directs us to the handwriting on the wall:

Change Happens - they keep moving the ch…

Writing good log messages

Writing good log messages is part design, part good practice, part knowing what and when to say it.
(1) You need to decide what exactly you hope to get out of a logging session. Are you going to be debugging bugs, crashes, or other critical events like a forensic accountant or like a whack-a-mole?

(2) Are you going to use flat files, how big will they get, how many files will you keep around? All very important when thinking about backups, disk space, maintenance, recovery, and so on. You might also be thinking about the different versions of syslog-like tools where you can ship the events remotely.

(3) Are you going to store the logs in a DB on the local system and then use sharding to allow for more permanent maintenance? This is interesting because the searching can be easier than grep, awk, etc... Also, considering (4) grouping related messages is easier and you can use SQL-like reporting tools.

(4) Are there some pre-optimizations you want to perform like all logged entries are…

Review - Programming Interviews Exposed - Mongan, Suojanen

I was going to add this book to my list of one-pagers but then I decided against it. (a) because much of the planning stage of the book is outdated. (b) in the last 12 years Silicon Valley has played a much more influential role in defining the interview process. (c) as I previously wrote of resumes, github, and social scoring. (d) it fails to include modern languages or at least a discussion on the pros/cons of the different languages. It might actually be time for version 2. (e) there was focus on fermi-type problems. (f) some of the text seemed contemptuous in tone and diction.

What I did like was the inclusion of detailed questions and answers. In many ways I felt like a dungeon master preparing for battle with the players.

The book was intended for the job seeker, however, I wish there were a book for the hiring manager. While smart and get's things done is an interesting book it fails to be a true guide book. If you owned a business would you defer your hiring selection or vet…