A bad day for Mobile…

Today is turning into a really bad day for the majority of the mobile industry. First I noticed this #EpicFail…

To hack an Android phone, just type in a really long password
http://money.cnn.com/2015/09/16/technology/android-hack/index.html

… and right on it’s heels came this one:

Hundreds of legitimate iOS apps infected by malware; remove from App Store
http://lifehacker.com/hundreds-of-legitimate-ios-app-store-apps-infected-by-m-1732035828

I notice that Windows Phone hasn’t been mentioned yet; here to hoping it stays that way.

A bad day for Mobile…

Code Impact 2015

I had a great time during my Dev’ing with Cortana for the Win(10)! presentation at Code Impact 2015  today. Hopefully the folks who attended my session got something out of it too.

The materials I presented today are available here: http://1drv.ms/1AKnuJ8.

PLEASE MAKE SURE that you pay attention to ReadMe.txt file located here:

Location of the ReadMe.txt file in the solution
Location of the ReadMe.txt file in the solution.

Happy Coding!

Code Impact 2015

Sarasota/Bradenton UG Presentation Materials

I had the pleasure of speaking to a GREAT group this evening (8/18) about Cortana. As promised, here are the materials that we covered, as well as some source code.

The actual (shortened) link: http://1drv.ms/1TSOcsD

* IMPORTANT NOTE: You’ll need Visual Studio 2015 to run the code. (Don’t worry, it’s free!)

Happy Coding! 😀

Sarasota/Bradenton UG Presentation Materials

Interesting “findings” with Build 9926

I was afraid to pull the trigger on installing Windows 10 Tech Preview Build 9926 on my Surface Pro because it’s my personal daily driver and things “not working” isn’t an option. The I remembered that I have this Dell 8 Venue Pro which wasn’t getting much regular use since my Lumia 1520 is just about the same size.  🙂

So, with a little help from my good friend Jay K., I offered the little 8″ tablet as a willing sacrifice. So far the experience has been pretty doggone good. I’m VERY impressed with where the Belfiore gang are going with this. That being said, there are a few rough edges I’m going to point out just to make sure they’re on the development team’s radar.

1. The on-screen keyboard was mysteriously cut off during the post-installation initial setup.

This weird situation happened during the initial setup after my successful installation. Nearly half of the keyboard is simply invisible.
This weird situation happened during the initial setup after my successful installation. Nearly half of the keyboard is simply invisible.

As you can see in this image, nearly half of the keyboard is not visible. Luckily I was still able to guess where the keys were so I could finish the initial setup. Also, and not very photographable, was the fact that the top row of keys (regardless of which keyboard I was using) would become totally non-responsive until I hit some other key and THEN came back to the key I needed to use. It was scary at first… but once I figured out what was going on and the workaround it became very tedious and frustrating.

The keyboard kept acting weird for a portion of the day. It never disappeared on me again though. You’ll be happy to know that the on-screen keyboard works fine. I did notice an odd bit where part of the split mode keyboard was cut off at the bottom row keys. It is like that regardless of if the keyboard is docked or not. I just checked again today and the behavior is still happening. I probably should have snapped a photo of that one too. Oh well. 😉

2. The Account PIN creation dialog acted weird.

The Account Pin creation dialog.
The Account Pin creation dialog. It looks innocent, but it’s acting weird too.

You can’t really see it let me enter values in the fields but wouldn’t let me tap either the “OK” or “Cancel” buttons. Naturally my expectation is that itdidn’t save my entries. But when I went back and checked my Account Profile a PIN was already associated with it. I don’t know if that was my synced PIN from my other machine or the one I entered though. Also, when I went back through the dialog to attempt to change the PIN it accepted what I thought I originally entered… Hence the “huh?”.

3. Incorrectly reported Mail storage value – pretty much speaks for itself.

252 PB has got to be a typo.
I’m going to go ahead and call BS on this one… If I had 252 PB of ANYTHING other than DNA then I’m really missing out on something.

4. These two numbers definitely don’t match.

These two numbers don't match... do they?
The Modern Settings app Temporary Files value of 6.66 GB doesn’t quite jibe with the Disk Cleanup dialog’s value of 4.00 MB.

The Disk Cleanup dialog is acting weird. Originally this machine only had about 5.5 GB available. I went through and killed off all my local copies of my OneDrive files and that got me enough room to install the Build. However, once the Build was installed it gave me this number. So on a hunch I kept going through this dialog several times, hitting the “Clean up system files” each time. Every time I went back through the dialog it found more and more temporary files… and, excitingly, about the fourth time through it found the previous installations. Eventually I was able to get a total of about 15 GB back.

5. (No photo) “Hey Cortana” is some-timey.

There’s something wonky going on with the feature activation on this device. At first I thought that it doesn’t want to work at all unless I have a microphone plugged into the headphone jack. Then I figured I’d try turning the feature off and back on.  — worked like a champ. So, for now, if you can’t get Cortana to respond when you say, “Hey Cortana” just turned it off and back on and it will work (well, for the next request anyway).

That’s it for now. I’ll be sure to share anything else I find.

Interesting “findings” with Build 9926

An open-letter to Joe Belfiore and Microsoft

Joe Belfiore presents Windows 10 and Windows 10 for Phone on January 21, 2015
Joe Belfiore presents Windows 10 and Windows 10 for Phone on January 21, 2015

Dear Mr. Belfiore,

I am undoubtedly one of the biggest, most vocal Windows Phone fans in the entire universe. Those that know me know that I’m not kidding with that statement. I take every opportunity to willingly market my Windows Phone to every person who doesn’t instantly flee… and nine times out of ten they come away from that experience with seeds planted for an eventual switch to Windows Phone. What’s more, I love the work you and your team are doing with Windows and Windows for Phone and the general direction you’re moving towards a truly converged user experience.

However, it will be an ENORMOUS MISTAKE to force us — the WP faithful — to wait until the holiday season for the next evolution in phone devices. It has been more than a year since the last new flagship phone was generally available to the US market. By “generally” I mean not locked into a particular carrier (as Verizon will *NEVER* be my provider).  And phones targeted to other countries don’t play nice with the high-speed towers here at home. Also, those “seeds” I mentioned earlier? Lately they’ve been dying off after taking root because people see all the horrendous fluff that (supposed) tech journalists keep spewing.

So just what am I proposing?

1. Please exponentially increase the pressure on the US carriers to release Denim for our existing handsets. Let’s face it, most people still buy and hold their phone until the wheels fall off. It would take something truly earth-shattering, game changing and affordable to break that particular habit. So please do get AT&T, T-Mobile and Verizon to release that update for our existing handsets.

2. Please release at least one flagship phone that will work on each major US carrier no later than July 1, 2015. That phone could even run Denim; as long as it will be able to make full use of Windows 10 for Phone it would be acceptable. This is for people like me who buy a flagship about once every 12 months. It’s also for those who’ve had a mishap (like my significant other) and the timing is just “right”.

These two “relatively simple” things will work to significantly discourage the ongoing platform hemorrhaging while making us — the faithful, independent WP developers — believe that Microsoft still cares about us and wants to continue working with us to make the world a better place.

Thanks for listening,

Kelvin

Image

Today’s PSA: Be sure to test your apps on OS versions you support (even if your app hasn’t changed)

<< sigh >>.

So a while ago I had a REALLY BAD review on one of my apps. I used up an entire weekend (and a bunch of honey-do credits) debugging scenarios I had to guess at and getting it to work *just right*. I published to the store and YES(!) — the author of that bad review came back and gave it a glowing rebuttal! Only to see my number of crashes for that app continue to climb.

I just figured out why that’s happening: It’s because my daily driver (and therefore test device) is running the latest version of the OS, while the app version that’s failing is for the previous version of the OS. As soon as I fired up that version of the app it became very clear  what the problem was. Unfortunately.

So that means this weekend I’ll be rewriting the app to cover whatever it is that changed in that previous version of the OS.

The take away? Always remember to re-test your app on every version of the OS your support, even if nothing has changed in that version of the app. Doing so would have saved me a lot of hair-pulling and headaches.

<< sigh >>

Today’s PSA: Be sure to test your apps on OS versions you support (even if your app hasn’t changed)

Microsoft Band: My thoughts after a few days of use

On 2014.11.05 a member of one of the .NET User communities I’m a part of asked how [paraphrasing] “those of us who were able to pick up the Band are liking it.” This is the response to that email.


I’m loving it. Prior to this I haven’t worn a watch in years so I don’t have a basis for saying “It doesn’t feel like a regular watch”. It doesn’t annoy me and the benefits far outweigh any minor inconvenience I might experience. For example it’s forcing me to use proper wrist posture on the keyboard to make sure I don’t bounce the Band on the desk. That’s actually helping me, and I would be doing the same thing if I were wearing an expensive wrist watch.

However I cannot stress enough how convenient it is to know exactly…
1. How many steps I’ve taken at any point of the day.
2. What email just made my phone vibrate (and from who).
3. Who is texting me and what they said.
4. Who is calling me.

All without taking my phone out of my pocket. Invaluable during meetings (business and personal).

Also…
5. Did I mention the range on this thing is great? That I can check email from entirely across the room?
6. For the most part you don’t get the usual Bluetooth drop outs with this because it’s not transmitting audio data.
7. Having that “dumb” alarms, stop watch and timer functions on my wrist is awesome.
8. I still have access to all the “smart” functions (in #7 above) via the phone as well.
9. ANY app that throws toast notifications automatically* notifies the Band.

* You have to have the Notification Center app enabled on the Band.

Now for the”bad”; I *don’t* like…
1. How display apparently is not Gorilla Glass.
2. How the unit scratches so easily.
3. The band material likes to attract dirt and lint.
4. There’s no app to control music; I have to use Cortana.
5. It doesn’t work directly with indie apps unless they are Cortana enabled.
6. When using Cortana for queries through the Band… unless Cortana has a specialized interface for the query response you’ll have to take out the phone to see the results.
7. I can’t do “everything” via Cortana that I can on the  on the phone… I get lots of “sorry, I don’t support that yet” messages. This one will only affect MAYBE 3% of users though. 😉

Seems like a lot of gripes but in all actuality I LOVE THIS THING.

Microsoft Band: My thoughts after a few days of use

CHALLENGE ACCEPTED: Microsoft Band vs. The Garmin Forerunner 610

So I was reading through coverage of the Band on Ars Technica and of course I was pumped when I saw an opportunity to compare the Band with the vaunted Garmin Forerunner 610. I’m very satisfied with Band in every area… except for accurate HR readings while exercising.

Let me be clear; the Band did provide good heart readings and they were consistent for whatever they were measuring; I just have no idea what that was. Eventually I’ll do some research and probably discover that it’s monitoring a subset vs. the entire array that the 610 measures. While the differences are significant the representative curves, once they are averaged and smoothed out, are similar enough to satisfy me. See for yourself.

Microsoft Band Screenshot
Microsoft Band App Screenshot
Readings from Garmin 610 (via Garmin Connect)
Readings from Garmin 610 (via Garmin Connect)

I wish I could have taken some pics of the Band and the 610 while I was out for my brisk walk… but it was dark out and I would have been “that guy”.  😉

So, the final verdict is that the Band is perfect (for me) for just about everything except knowing my *exact* heart rate while exercising. In fact, it’s great for anyone who is into any level of fitness and doesn’t need highly granular data tracking. If you need highly accurate HR readings to compare against exact elevation or pace markers then you’re going to want to stick with your existing solution.

For everyone else? This thing is great. It syncs *immediately* with your phone over BT4.0, so no need for a computers and pesky dongles.

Enjoy!

CHALLENGE ACCEPTED: Microsoft Band vs. The Garmin Forerunner 610

It’s time to let USB drives go the way of the Dodo…

… because they are insecure in a fundamental way that currently isn’t defendable or fixable.

UPDATE: I’ve edited the section dealing with alternatives after some further research.

Here’s the background:
Worse yet, you see in Article #2 above that the exploit is IN THE WILD AND FREELY AVAILABLE.
So what are we supposed to do? The alternatives are simple:
  • Use Cloud services.
    – Such as OneDrive, Dropbox, Box, Google Drive, etc.
    – The downside is that you have to be connected and allowed to reach that service to get your files.
  • Use other storage media.
    – The SD card family (standard, mini, micro, etc).
    – The first downside is that SD cards aren’t supported by everything.
    – The second downside is that, hands down, USB is the current ruler of connected media.
    – The third downside is that SD cards also have a controller chip inside and eventually those might be co-opted like the USB controller chips have.
  • Use storage media that has a different physical interface.
    – FireWire is a good example.
    – Unfortunately, the same issue exists here because drives using this cable standard have controller chips too.
  • Use storage media that ha no physical interface.
    – WiFi Drives are currently a decent alternative but are not intuitive enough for everybody, and open up a whole different can of worms.
If these things aren’t feasible then you can still purchase brand new drives from “big box” stores (BestBuy, TigerDirect, etc.). Just be aware that you’re potentially in the same boat as if you had an infected USB drive. Infected drives infect the machines they are plugged into, and infected machines infect USB drives that are plugged into them. As of right now there’s simply no “protection” for this type of infection.
It’s time to let USB drives go the way of the Dodo…

Love the Internet? Then get involved, FAST

I just stumbled upon this eye-opening piece regarding the discrepancies of a lot of things… most noticeably the games that politicians play and who their real constituents are.

You can read it in all its glory here: How the FCC Plans to Save the Internet By Destroying It: An Explainer (via Medium)

Please do take the 5 or so minutes necessary to quickly skim the article. Once you’ve done that, get involved. Trust me when I say that the quick skim will likely be enough for you to want to get involved. I’m going to try to figure out a relatively easy way to do this for as many people as possible but you really shouldn’t wait on me.

Just why is our participation in this one so important? Because everything you (think you) know, understand, expect and love about the Internet (with its easy, fast and relatively affordable access to everything) is about to drastically change. And all because elected officials pander more to the companies that lobby and pamper them than the people who put them in office. Please note that the people who need “the courage” (as pointed out in the article) are appointed by those we elected, *not* elected themselves. What’s more, they are charged with keeping things fair — and I think they are on their way to a failure of truly epic proportions.

It’s important to point out that I’m not making any party delineations here. ALL parties are guilty on this one.

Please do get involved; stir up the pot by pestering your political representatives to take the action WE VOTERS, nay, REGULAR PEOPLE want — and not the vote that big businesses are trying to buy. Once I figure out how to do this expediently I’m going to put those ideas in another post. Again, DON’T WAIT ON ME; this it’s one effort we don’t want to come up short on.

Love the Internet? Then get involved, FAST