Saturday, December 29, 2018

Java and JavaScript Objects

Dave Winer posted a lesson-learned tip about JavaScript. Although Java and JavaScript are unrelated languages, they have many similarities.

var d1 = new Date ("March 12, 1994");
var d2 = new Date ("March 12, 1994");
alert (d1 == d2); // false

It seems that JavaScript, like Java, is actually comparing the two Date objects, d1 and d2, to see if they're the same object in memory, not the same value. Since these instance variables are not referencing the same object the alert line of code returns false.

Although, at first blush, this seems unintuitive, it actually allows greater flexibility when making comparisons. If you don't want to compare the two objects, but rather the value of the two objects, then you can simply send the Date object the getTime() message which returns true.

var d1 = new Date ("March 12, 1994");
var d2 = new Date ("March 12, 1994");
alert (d1.getTime() == d2.getTime()); // true

And, finally, to prove my theory to myself...
var d1 = new Date ("March 12, 1994");
var d2 = d1;
alert (d1 == d2);  // true

Tuesday, December 25, 2018

Apple’s Future

During the Q&A portion of my Apple Talk, I’m frequently asked about Steve Job’s greatest invention and the future of Apple.

Steve Jobs's greatest invention was Apple, the company. This invention, and more importantly the principles it’s based on (best possible customer experience, simplicity, etc), is what keeps it going strong. Apple's greatest competitor isn't another company, product, or organization. Apple biggest threat is complexity. When looking at long term risk, Apple doesn’t focus on a thing, product, or event that threatens. Instead, Apple focuses on the principles of that threat to their core offerings and they have the imagination to immediately recognize threats when they're still small. 

Monday, December 17, 2018

Engineers Turned Entrepreneurs, Part 2

Imagine this...

A candidate for a software engineering position comes into your office to interview as your first hire to build your application. The candidate has virtually no experience at software engineering, design, development, or deployment, but they tell you how hard they're willing to work because they believe in your business vision. During the interview, they describe and quote numerous articles they've read about famous computer scientists and CTOs in the news and on Wikipedia. Plus they give you a high level overview of bubble sort, map and reduce, object oriented design, and big O notation, although they've never coded.

Do you hire them to be your first software engineer? Of course not. So why would an angel or VC invest in an unproven career engineer turned entrepreneur, no matter how good the business idea?

Engineers are smart people and they know they're smart. Where they're not so smart is in dealing with people, in general, be it customers, employees, or investors. They're not the best communicators and often focus on features, not benefits. Frequently, in the mind of an engineer, they believe that if someone doesn't understand their vision it's because their audience isn't as smart as they are. It might seem easy to market and sell your idea, but it's not. 

Part 1 in this series:

Part 3 in this series:

Saturday, December 15, 2018

Minor Bitcoin Epiphany


While in my hot tub, this afternoon, I had a minor Bitcoin epiphany: Since Bitcoin is based on supply and demand, the supply, once it's reached its pinnacle, will continue to decrease in perpetuity meaning its value will continue to increase, somewhat similar to gold but greatly accelerated. We may have reached, or are very close to, the zenith of Bitcoin in circulation because it's probably vanishing faster than it's being created.


I am not a fan of Bitcoin; not so much because of the technology, but because of how it's presented. The Bitcoin movement started as a fad with engineers, not economist or entrepreneurs. If you ask a technically-minded Bitcoin aficionado to described the benefits of Bitcoin, they won't tell you. Instead, they'll spout a list of features such as:

  • Laissez-faire: It's a currency that's not controlled by any country or central bank. Keep in mind that organized crime is also laissez-faire and Bitcoin has found a nice home there.
  • Anonymity: Transactions can be carried out without revealing the transacting parties. The same is true for cash and cash transactions typically have zero fees.

The truth of the matter is that Bitcoin comes with most of the same downsides as cash or gold. We don't keep cash under our mattresses because it's too dangerous. Bitcoin's personal security solution is the wallet, kept with a third party, which stores a Bitcoin transaction's credentials. So, now the Bitcoin community has effectively created banks without FDIC insurance. In other words, Bitcoin banks that are easily robbed without recourse or recovery.

Some people refer to Bitcoin as a currency and other's consider it an investment. The IRS considers Bitcoin to be property (like gold) which has helped it flourish since it's unconstitutional for any person, company, or state to print or coin money.

As an investment... and this is my key heartache with Bitcoin aficionados... there's no deep fundamental insight into Bitcoin. Rather, all speculation in the Bitcoin market is predominantly based on technical analysis (trading trends). This seems more like gambling at a blackjack table than crossing the British pound with Japanese yen, etc. Yes, people make money investing in Bitcoin, but so do lottery winners.


We've reached a point were it seems that Bitcoin is disappearing faster than it's being created and this trend will likely continue. The anonymous creator of Bitcoin, Nakamoto, has disappeared leaving an estimated one million Bitcoins in virtual limbo. Nakamoto Bitcoin accounts represent billions of dollars that haven't been touched since their creation. That is the equivalent of burning cash, never to be recovered.

So, if you own a Bitcoin, hold on to it as the supply dwindles.

Monday, December 10, 2018

Did We Invite in Big Brother?

Facebook Tracking My Movements With Breadcrumbs
Here's a fascinating podcast about how smartphone apps track your location (more than 14,000 times/day, in some cases) and how this anonymous data loses its anonymity.

The knowledge that you're being watched changes your behavior (the antithesis of privacy). It's the Heisenberg uncertainty principle at the macro level. This doesn't only apply to smartphones since even a basic cell phone needs to be tracked by cell phone towers, but not with the same level of granularity as a GPS enabled smartphone.

This screen shot, from a few years ago, shows how Facebook tracked me, unknowingly, as I went to visit a high school classmate at Club M at the Grand Del Mar resort.

You can always turn off location services for an app or smartphone. But the cell phone towers will still have a good idea of where you're at. Tracking isn't only limited to web browsers as the woman in this podcast mentions (visit to see the info Google keeps on you).

Note: This post is a follow up to the Facebook tracking privacy issues I first noticed about five years ago: