Awesome news – FIRST Robotics Team #4488 “Shockwave” is Silver medalist at World Championship

Awesome news – Today, Glencoe High School’s “Shockwave” FIRST Robotics Team #4488 was a Silver medalist in the Galileo division at the World Championship FIRST Robotics competition in St Louis, MS. This is an amazing achievement considering this is only the team’s 2nd year in robotics!

I was one of 15 volunteer engineering mentors to the team. The most amazing group of smart, passionate, eager and driven students I have been so lucky to have worked with in FIRST Robotics. Glencoe HS is located in Hillsboro, Oregon, USA.

Enhanced by Zemanta

Oregon to abandon its failed health exchange online marketplace

The system, developed by Oracle, never worked. Having spent $248 million, the State will dump the entire project and spend an estimated $4 to $6 million to use the Federal web site. The rest of the Cover Oregon operation is also running out of money and does not yet know how they will be funded for 2015.

While the Governor likes to call this a “technology failure”, his own personally selected outside consultant’s review of the project found the project failed due to leadership, management and organizational incompetence. Their report barely mentions technology.

This goes down as the largest information systems project failure in the State’s history. Other notable technology failures in Oregon include the completely failed Oregon Wireless Interoperability Network (OWIN) project and the Portland Water Bureau’s billing system disaster. In the case of OWIN, the State’s own project manager’s repeatedly lied to the Legislature, the Governor and the people. In the end, though, the only person who lost his job was the whistleblower.

In the case of the Cover Oregon disaster, the executive director of the Oregon Health Authority, Bruce Goldberg, was fired. The OHA’s CIO Carolyn Lawson was fired. The Director of Cover Oregon, Rocky King resigned for “medical reasons”. Since then, the CIO, CFO and COO of Cover Oregon have been fired. The wreckage left behind is substantial. The Governor will hopefully by fired by the voters in November.

I suspect this will become a classic case study in software engineering courses for the next one to two decades.

Enhanced by Zemanta

Scratch – Imagine, Program, Share

Historically, programming could be described as labor intensive, time consuming, error prone – and delivering projects late with defects and incomplete features. The failed Cover Oregon health exchange project suggests this is still a mostly accurate description 🙂

I have long been interested in software development improvement strategies. Back in MBA school, we were taught process improvement strategies used in manufacturing, and I saw the possibilities for software. Simultaneously, others saw this too and they invented the agile methodology.

New methods like Test Driven Development came along.  Tools like JUnit and NUnit made TDD practical.

New programming systems like Scratch (Scratch – Imagine, Program, Share) and App Inventor provide quick-to-learn, quick-to-build and generally easy systems for defining user interfaces and program behavior. But these are oriented towards teaching children to program, using graphical programming systems. Lego Mindstorms is another example, for constructing educational robots programmed in ROBOLAB. (ROBOLAB is built in LabView. LabView is a graphical data flow programming language used for professional applications, especially those involving control systems, such as running lab equipment or manufacturing systems.)

Some, like App Inventor, are reaching the point where they are quite usable for creating real-world apps – not just games and toy apps for educational examples.  We are seeing good progress towards better tools for different types of developers, ranging from children through adult learners to professional developers.

Enhanced by Zemanta

Teaching 1st year programming using MIT App Inventor

Good news and bad news: Reflections on Using AppInventor to Teach First-year Programming | blog@CACM | Communications of the ACM.

MIT App Inventor is a graphical programming system that runs in the cloud via your Internet browser. Programs are developed in the browser and then offloaded to an Android phone or tablet, or emulator, to execution and testing. App Inventor is likely the fastest and easiest way to create Android apps, certainly for the novice developer.

Good news: Beginners really take to using App Inventor to create Android apps.

Bad news: Advanced students found App Inventor stifling and preferred using Android SDK and Eclipse once they reached that level of ability. App Inventor 1’s limitations hindered the advanced students development of the apps they wanted to produce.


  • Instructors found the training materials good but did not always work as expected: “Sometimes students told me that they worked through the exercises mechanically, without really absorbing the material“. Students learned better when they came up with their own project ideas. App Inventor 2, which is now available, is a significant advance over AI 1.
  • Students like the instructional materials but they were not challenging – in fact, the materials seem to me to geared to late elementary to middle school level.
  • They were using App Inventor 1 (version 2 is out now), which was known to have limitations and defects. Version 2 might yield different results.


They recommend that App Inventor be used for an initial introduction to programming for college students. Beyond that, App Inventor is good for teaching complete novices and non-computer science students, and younger students. Advanced students and computer science students will likely wish to migrate to Java programming in Eclipse and the Android SDK, relatively early on in their learning experience.

Enhanced by Zemanta

Labor Force Participation Rate

The decline in the labor force participation rate is worrisome: The Demise Of The American Dream In 2 Charts | Zero Hedge. Link shows a chart for men in the workforce, which is different than the general labor force workforce. That figure has dropped from 86% to 69%. But the general labor force participation rate is down quite a bit too – this chart is from the Bureau of Labor Statistics, a Federal agency:


Enhanced by Zemanta

Did Newsweek really find Bitcoin inventor Satoshi Nakamoto?

Newsweek has posted a cover story by Leah McGrath Goodman, claiming to have located the inventor of Bitcoin, publishing a photo of his house and his car license plate.

Goodman ties together weak correlations with one almost fact – saying the individual said “I no longer have any connection” when she allegedly asked him about Bitcoin. But the individual said he was misunderstood, saying his answer was in reference to no longer being involved in engineering, where he had made his career. She fingers Nakamoto because he’s an engineer, knows math, he’s really smart, he might have been out of work during the time bitcoin.pdf was designed, and the original bitcoin.pdf document references saving “disk space” and she says, only old engineers care about disk space.

There are other developments including that a long dormant Bitcoin account used by the inventor (here) came back to life to say Dorian is not the inventor of Bitcoin: BREAKING: Dorian Nakamoto Is NOT Satoshi Nakamoto—Source: Satoshi Nakamoto « Null Byte.

The accused has written many Amazon reviews and filed public comments with local government – and his writing is nothing like the writing of the person who invented Bitcoin. (See for yourself.)

Another person say’s Nick Szabo is probably the inventor of BitcoinOr the inventor may be the Dread Pirate Roberts. The evidence is at least as strong for those conclusions too.

And the reporter forgot her ethics thinking cap.


Disclosure: I have a BS in computer science, an MS in software engineering and an MBA.  I have computer and mathematics skills and have taken graduate courses in cryptography.  I took graduate finance and economics courses in MBA school.  I have a son whose first and middle name are the same as the lead programmer on Bitcoin today (and my son is also an engineer).  I have suspicious hobbies like having a ham radio license, a pilot’s certificate, a hovercraft, and I shoot 3D video. I tinker with electronics.  And I still care about disk space.  I often put two spaces after periods.  I am older than most software developers today.  I often use TOR, pay cash, turn off my cellphone to avoid being tracked and am concerned about our surveillance society.  That’s Newsweek’s evidence trail.  Obviously – OMG, I might be the creator of Bitcoin too!

Enhanced by Zemanta

Developing Android apps using App Inventor 2

Front Page | Explore MIT App Inventor.

App Inventor is perhaps the fastest and easiest way to develop custom Android applications. App Inventor uses a graphical programming model in a cloud-based development system. Sounds complicated, but its not at all. It’s easy.

App Inventor 2 is a significant update to version 1.

Application user interfaces are constructed using a WYSIWYG drag and drop style interface (similar to many such UI designers). Components are added, properties are edited.

Switch to the “Blocks” view and behaviors are attached to events by assembling program blocks that look like this:



Use of App Inventor 2 is presently free (its run by MIT) and uses a Google account for log in. Apps under development can be run in an emulator on your computer, or loaded into your actual Android phone using a Wi-Fi link, a USB connection, downloaded from a web site URL, or download the .apk file to your computer for transfer to your Android phone (USB or email it to your phone).

App Inventor was originally started by Google. MIT later took the project over and has made some very nice improvements to the original.

Can you do everything you would want to do in an app? No, but it is pretty amazing how much you can do in App Inventor. In some cases,  you could implement much of your app in App Inventor, and then special custom code that cannot be done can be written as a separate activity. Your App Inventor code can then launch your code to perform the required functions.

Enhanced by Zemanta

The challenge of health information data normalization

Different facilities and doctors use different terminology to describe the same things which makes the exchange of patient data difficult:

Until the data is normalized, the true potential of HIEs will be stunted. That potential lies in the ability to instantaneously act on the exchanged information. Ideally, two doctors sharing the same patient will be able to automatically absorb each other’s separate patient data.

via Health Information Exchanges Lack Standards – Healthcare –.

Providers used to jot down their diagnosis on a paper chart. Today, diagnoses are entered into an electronic medical record (EMR) and then may be transferred between providers – where the method of encoding the data is different. This problem is far more challenging than it seems on the surface (having studied graduate medical informatics, I have been introduced to the complexity).

Google Merchant Accounts: How do you change your business address?

Update: Multiple updates, below. Today (November 11) I received a reply from Google that says in order to change my address, I have to set up a new merchant account for my Android apps by setting up a new Google account, pay another $25 fee to Google, and then upload all my files, again. All because Google is incapable of changing the address of an account. Good grief.  Apparently no one at Google has ever moved in their life.

I am trying to submit both an app (to Google Play) and an e-book to Google Books/Play. They require that I set up a Google Merchant Account to receive incoming payments. Okay with that.

However, when I go to set up the account, Google pre-fills my old address in to the form and there is no obvious way to change the address. The page has a dead link for “Why Can’t I Edit My Address?”. Clicking it (in multiple browsers on both Mac OS X and Windows) displays nothing.

There’s no way to change the address.

I have not been able to find anything online about how to change my Google Merchant account mailing address – except, a strange Google help text that says clearly that I should delete my Google account, request a refund of the developer program fee, then create a new account – with a different name or change the name of my old account – and start uploading my stuff all over again. Google really says that on their support page. Insane.

The rest of the page implies it is impossible to do a change of address once an account is set up and you must start over and create a new account. They do give an option to change a “support address” but there is no way to get rid of the original mailing address.

Again, has anyone at Google ever moved?

I thought Google had smart staff so I am a bit surprised to encounter this obtuseness in their account setup process.

Any one? Any thoughts or ideas how to change this address?


Go to, click on the “gear” icon at upper right and then click on this icon for “Settings”. Go to bottom of the page and there you can edit your actual address. This is pretty hidden, to say the least, when you encounter the wrong address in the Play developer web site as there is no information there on how to change the address.

Update: Well, I did that but it still fills in the old address. Will try again tomorrow and see if the new address needs to propagate to the other servers first.

Update: Still does not work. Wallet now has my updated address. However, when I go to the Merchant account creation page, it still pre-fills in my old mailing address and further fills in a public business address with a mashup of my old and new postal addresses! It’s hopeless!

Enhanced by Zemanta

Why does Android’s Google Maps need access to your personal contacts list?

Google has updated the Maps app for Android. The update says the app now requires access to your contacts list.


To share with their business partner, the NSA? Who knows? I can only guess that they now wish to alert you to the locations of your contacts, on the map, based on their location, or something.

Would be nice if they would provide an explanation when seeking permission to install the updates. Instead all they say is this permission “Allows the app to read data about your contacts stored on your phone, including the frequency with which you’ve called, emailed, or communicated in other ways with specific individuals.”

Enhanced by Zemanta

Reality-based Thinkng on Business, Tech, Energy, Transportation