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.

Observations

  • 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.

Recommendations

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:

latest_numbers_LNS11300000_2004_2014_all_period_M02_data

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 Bitcoin. Or 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:

TextAppBlocks

 

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?

Update: 

Go to http://wallet.google.com/manage, 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.

Why?

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

Health Care and Insurance Fees to Consume 1/3d of typical family income by 2022

Look for insurance savings – San Francisco Chronicle.

By 2022, the typical family will pay 1/3d of their income to the health insurance and health industry industrial complex:

It is difficult to see how the U.S. will remain competitive in any economic activity when, over time, all of our income will be spent on health insurance and health care industries.

Individual purchasers of pre-paid health care (aka health insurance) – and only individual purchasers – are required by ObamaCare to purchase a rich package of Federally defined “benefits”.  Corporations and government are exempt from this requirement.

Among the oddities, under ObamaCare, the elderly and women who have had hysterectomies and men who have had vasectomies are required by ObamaCare to purchase maternity care insurance. Those who do not drink, smoke or do drugs are required by ObamaCare to purchase drug abuse counseling insurance.

Those who purchase medical devices – say an Epi-Pen to prevent loss of life due to food allergies – will pay an additional 2.3% tax to fund ObamaCare. (Epi-Pens, which used to be sold individually, are now sold only as a pair. Why sell one when you can sell two for twice as much? Cost: $232 every year.)

In the past two weeks, Sen. Max Baucus who wrote the law, and Sen. Harry Reid, the Majority Leader  who pushed the legislation through, both said ObamaCare looks to be a “looming train wreck”.

What a mess. That certainly inspires confidence 🙂

Enhanced by Zemanta

HR is often a road block to hiring good workers

Ask The Headhunter: The Talent Shortage Myth and Why HR Should Get Out of the Hiring Business | The Business Desk with Paul Solman | PBS NewsHour | PBS.

At many companies there are layers of HR-related staff and automated resume scanners that pre-screen applications.

But as the author of the linked article points out, the HR staff generally lack the technical skills to adequately evaluate technical applicants, and they are not held accountable for the good people they inappropriately reject.

The author’s recommendation is that HR should not be involved in the recruiting and hiring process – that job properly belongs with the managers who are trying to fill positions. In other words, outsourcing (or insourcing) the recruitment process is not working, he says.

————–

Why my posting here has been light – we’ve bought a home in the Portland, OR area and are wrapping up prep’ing our current home for sale. Plan to call some real estate sales people later today. Anyway, this has been intensely time consuming and blogging fell off the task list.

Business, Tech, Energy, Transporation, Thinking