Jan 072015
This morning my twitter feed was greeted by yet another tired, loaded question asking if Windows Phone is dead, this time from Venture Beat’s Chris O’Brien .  I like Chris, and odds are his headline is borne more of frustration than click-baitiness, so I’ll spare him my usual snarky reply and take a cold, sober look at the situation. Continue reading »

Sep 112014
Lately I’m working on a collaborative book project; three authors, one editor, and a small collection of raw content contributors.  It’s an exciting prospect but have to say, when it comes to co-managing a project like this sometimes little things become surprisingly big.  Like platform preferences.  Everyone has their pet tool and trying to get consensus on one easily reduces to finding the Least Worst Overall Not-Quite-Hated solution.  We’re working through that, but…

In our first conversation, Charlene the editor she asked me something about iPhones and the conversation went

Me: I wouldn’t know; I use a Windows Phone
Charlene: Oh, I’m sorry

So many ways to go with that… but suffice to say that from my perspective it proves how much more convincing a distortion field can be than reality.  I’m in no way impugning Charlene– she’s definitely sharp or I wouldn’t have started following her in the first place.  But Apple and others have done a spectacular job at misinforming even the discerning public.

Microsoft is included in that others category. Continue reading »

Jan 102014
I‘ve been working with various developer communities for several years, and there’s a common question I encounter regardless of the platform:

Q: “What should I work on?”

This isn’t always easy to answer specifically, because a great deal depends on the skills and interests of the person asking.  But there is an easy general response:

A: “Solve a problem for yourself.”

I’ve found that the developers not asking that question tend to do exactly that.  They have a need, see no available solution, and jump right into solving it for themselves.  Often enough, that tends to work for others as well. Continue reading »

Dec 062013
Greetings all!  It’s time to dive back into Windows Phone developer community land.  In this post I’ll be sharing the good and not-so-good news for WP development in my region, which is physically centered in the Dallas-Fort Worth area but also includes Oklahoma, Kansas, Colorado, Nebraska and South Dakota.  I’ll summarize the year and share some ongoing/upcoming stuff too.

Continue reading »

Oct 012013

Deliver HereI’ve just recently gotten serious about learning XAML for Windows Phone development, and it’s been a real rollercoaster.  Hours of bad-document-reading, tutorial-deciphering and hair-pulling punctuated by brief bursts of accidental success.  My wife has learned to ignore my cursing but my poor dog Peanut still runs under a corner desk when some seemingly innocent code breaks.

Part of the problem for myself (and others, based on threads on MSDN and stackoverflow) is that documentation is woefully incomplete.  Too many examples telling you WHAT needs to be done but annoyingly omitting critical HOWs.  Too many segments of potentially useful code lacking the necessary prerequisite references to run.

But I digress.  And if you just want to avoid further background and skip to the solution, scroll down.

I’m working on a C# Windows Phone geolocation app designed to route an email recipient to a person in need.  One of my goals as always is to craft the best user interface for the solution.  For touch devices, that often means stripping out conventional interface objects like buttons because they tend to occupy a layer between the user and what he or she wants to do.  In this case, I want the app’s Map object to be the center of attention, and most if not all user interaction to take place on or around it.  As is my norm, I dose this work with lots of context sensitivity.

I began with PNG objects like those shown in this post.  I got that working fine eventually; tap on the graphic, and a context menu of several options pops up.  Select one, and the graphic updates to reflect the user’s purpose.

But as I began the task of replacing Application Bar buttons with more Map-centric interaction objects, I began thinking that bitmap graphics were too low fidelity.  If I went with vectors, and added more Map layers, I could truly orient the user better and improve engagement.  The Map itself could host most of the UI.I Need HELP

It’s easy enough to add polygonal objects to XAML.  Many of the Windows Phone content objects can host them.  But once you get beyond simple shapes, editing can be a pain.  One quickly misses Adobe Illustrator.

I found a really sweet XAML export plugin for Illustrator, but the creator has been unable to update it past CS4.  I’m using Creative Cloud, and older plugins no longer function [edit: as one reader pointed out in comments, Microsoft’s Blend can import AI files.  Part of my purpose here was to identify a completely free solution.  For many uses, Inkscape works fine].  I discovered that the free vector editor Inkscape supports XAML export, so it was a no-brainer to bring my AI graphics into it and export.  Below is an SVG file of my Map Pushpin object:

`<?xml version=”1.0″ encoding=”utf-8″?>
<!– Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  –>
<!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd“>
<svg version=”1.1″ id=”Layer_1″ xmlns=”http://www.w3.org/2000/svg” xmlns:xlink=”http://www.w3.org/1999/xlink” x=”0px” y=”0px”
width=”28.263px” height=”72.538px” viewBox=”0 0 28.263 72.538″ enable-background=”new 0 0 28.263 72.538″ xml:space=”preserve”>
<circle fill=”#3D5EAB” fill-opacity=”0.9″ cx=”14.132″ cy=”7.041″ r=”7.041″/>
<path fill=”#3D5EAB” fill-opacity=”0.9″ d=”M14.132,16.012C6.327,16.012,0,22.339,0,30.143v0v42.395l28.263-28.263V30.143
C28.263,22.339,21.936,16.012,14.132,16.012z M22.332,44.275h-3.956v-8.347H9.814v8.347H5.872V23.784h3.942v8.076h8.562v-8.076

I next exported that to XAML, getting:

`<?xml version=”1.0″ encoding=”UTF-8″?>
<Viewbox xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” Stretch=”Uniform”><Canvas Name=”Layer_1″ Width=”28.263″ Height=”72.538″ Canvas.Left=”0″ Canvas.Top=”0″><Canvas.RenderTransform><TranslateTransform X=”0″ Y=”0″/></Canvas.RenderTransform><Canvas.Resources/><!–Unknown tag: metadata–><!–Unknown tag: sodipodi:namedview–><Ellipse xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” Canvas.Left=”7.1″ Canvas.Top=”0″ Width=”14.1″ Height=”14.1″ Name=”circle3405″ Fill=”#E63D5EAB”/><Path xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” Name=”path3407″ Fill=”#E63D5EAB”><Path.Data><PathGeometry Figures=”M14.132 16.012C6.327 16.012 0 22.339 0 30.143v0v42.395l28.263-28.263V30.143  C28.263 22.339 21.936 16.012 14.132 16.012z M22.332 44.275h-3.956v-8.347H9.814v8.347H5.872V23.784h3.942v8.076h8.562v-8.076  h3.956V44.275z” FillRule=”NonZero”/></Path.Data></Path></Canvas></Viewbox>`

I am LOSTOther than redundant schema info and unknown tags, it looked okay.  I cut out the portion I needed (Canvas tag content) and plopped it into a XAML MapOverlay in my project.  Visual Studio immediately complained:

TypeConverter for “PathFigureCollection” does not support converting from a string

The offending bit was the Figures object.  Time to Bing for an explanation… but while I found many examples of people encountering the error, there were no useful solutions.  Some mentioned Kaxaml, which I downloaded.  While it’s a very helpful tool for visualizing and troubleshooting XAML, it didn’t see any problems with my code and offered no way that I could see to refactor what I had into something Visual Studio would like.

The Solution

But reading more about the PathGeometry object tickled a few brain cells.  I found a Path example that looked like it would work for what I wanted.  So I changed the essential code to what follows (key portion in bold):

`<Canvas Name=”Layer_1″ Width=”28.263″ Height=”72.538″><Canvas.RenderTransform><TranslateTransform X=”210″ Y=”300″/></Canvas.RenderTransform><Ellipse Canvas.Left=”7.1″ Canvas.Top=”0″ Width=”14.1″ Height=”14.1″ Name=”circle3405″ Fill=”{StaticResource PhoneAccentBrush}” Opacity=”0.8″/><Path Name=”path3407″ Fill=”{StaticResource PhoneAccentBrush}” Data=”M14.132 16.012C6.327 16.012 0 22.339 0 30.143v0v42.395l28.263-28.263V30.143 C28.263 22.339 21.936 16.012 14.132 16.012z M22.332 44.275h-3.956v-8.347H9.814v8.347H5.872V23.784h3.942v8.076h8.562v-8.076 h3.956V44.275z” Opacity=”0.8″ /></Canvas>`I Want to Play

Success!  In a nutshell, the trick was to remove the PathGeometry and use the Figures string as Path Data…. which just makes sense.  My custom Pushpin rendered exactly as it should, and looked much sharper than the PNG bitmap.  Now to construct other UI elements, add Map layers, and wire up the events.  I’ll post more later, and will provide the full code on app release.

Hope you find this technique useful!


Aug 232013

I’m behind on publishing some content but an opportunity has come up that trumps just about everything else.  Except beer and pizza.  First the background.

Many of you know that for several years now I’ve been supporting creative communities, both on and offline.  If I really want to date myself then this activity goes back further than I’ll usually admit, to a stint as a writing forum moderator in the heyday of America Online.  Don’t judge: it meant free dial-up.  ;)

As you can see on LinkedIn, my more recent history has gone from Maemo to MeeGo to Windows Phone plus local Makers.  An interesting mix of communities that has helped me understand myriad arguments for and against various platforms and preferences, as well as learn to socialize with creative types from all walks of life.  This understanding has pushed my thinking above and away from the sort of religious dogma that can cripple a project, and in turn helped me (I think) be a really good all-around community leader.  And even as I’ve helped Nokia’s efforts to pull in Windows Phone developers, I’ve kept a watchful eye on Jolla and kept fairly current with Qt developments.  I even assisted Tuukka Ahoniemi with Qt outreach in Dallas (although other activities got in the way, something I would fix if I got this role).

Which leads me back to the opportunity.

Against all odds, I will be interviewing with Digia soon for an Online Community Manager position.  Exciting!  I think I’m the ideal candidate, and so do a few others who have already spoken on my behalf.  But landing this position will take some serious effort: they really want someone situated in Norway, Finland or Berlin.  I have to prove that I can do even better than someone in close proximity.

Now, I’ve done the remote working thing both voluntarily for the aforementioned communities and professionally for Nokia.  I know I can perform this role with the same success.   Heck, I’ve always said I can work from Antarctica as long as I had Internet.  I just need to convince Digia.

To that end, I’m looking to the communities I serve for advice.  What should I emphasize?  In what areas do I still require polish?  Feel free to add comments here.  Be critical if you feel led.  Or contact me privately, too.

I had a similar opportunity with Scarlet Motors at one point, and touched on that in an article about keeping a childlike aspect in communities, but unfortunately they lacked the means at the time to make it a paid position.  The Digia role will be full time, and involves work I love and have been preparing for.  I relish the opportunity to take lessons learned from other communities and see where it will support Qt’s desire for broader adoption.

I really, really want this job.  Your feedback will help, and perhaps so will lobbying Digia.  Make sure to hit Qt Project and Qt by Digia on twitter, as well as their Facebook page.  After all, a good online community manager should mobilize Internet citizens, right?  ;)


Aug 042013

In the last community update I included one upcoming hackathon and omitted some promotions.  Time to rectify the latter and expand on the former!

General Promotions

Unity has a new contest going for Windows platforms.  Big prizes involved!  From their website:

Unity and Microsoft are inviting Unity developers to enter a new contest by submitting beautifully crafted, high-quality new or existing games or content for the upcoming Windows Store Apps and Windows Phone 8 platforms. Over $100,000 in cash and prizes will be awarded to a number of talented and lucky winners.

Deadline is September 30, 2013.  Get your game on now!

In arandallarnoldddition, Microsoft has created a program slightly similar in goals to Nokia’s DVLUP, called App Builder Rewards.  Might as well double-dip!

Finally, I missed that Microsoft Tech Affiliate had restarted the great APPortunity sweepstakes.  Submit your apps for August ASAP.

Remote/Virtual Hackathons/Events

Nothing to report yet– let me know if you discover any!  In addition to online events, those in any region I cover will be promoted here.

DFW Hackathons/Events

Here’s more info on what’s coming (I will not attend all events and/or all times; more on that as details firm up):

August 2013 NDDNUG Meeting
August 8 6:00 PM to 8:30 PM 2013
5543 Legacy Drive, Plano, TX (MedAssets bldg)
link: http://northdallas.net/location/

August 2013 FWDNUG Meeting
August 20 6:00 PM to 8:00 PM 2013
100 Pier 1 Pl, Fort Worth, TX (Pier 1 Home Office)
link: http://fwdnug2013aug-es2.eventbrite.com/?rank=1

UTD-Microsoft Windows 8 app dev workshop
August 20 9 AM to August 23 5 PM 2013
800 West Campbell Road, Richardson, Texas (University of Texas at Dallas, ECSS 2.412)
link: https://ezpay.utdallas.edu/C20239_ustores/web/product_detail.jsp?PRODUCTID=1055

UNT Startup Primer
September 6 6:00 PM to September 8 6:00 PM, 2013
Sycamore Hall 119, University of North Texas
307 Ave. B, Denton, TX 76201
link: http://untuniontickets.universitytickets.com/user_pages/event.asp?id=187&utm_source=Co-Founder&utm_campaign=CoFoundersLab+08082013

UNT Music Hackathon
September 13 6:30 PM to September 15 8:30 PM 2013
1155 Union Circle #305189 Denton, TX (Innovation Greenhouse)
link: http://innovation.unt.edu/events/september-2013/music-hackathon

20 over 20 Hackathon
September 19 12:00 PM to September 22 4:00 PM 2013 (team announcement September 18)
315 S. Cesar Chavez Blvd, 2nd Floor, Dallas, TX 75201 (Dialexa)
link: http://the20over20.com/

AIGA DFW Hackathon with Open Dallas
September 21 8:00 AM to 7:00 PM 2013
2919 Commerce St, Dallas , TX,
link: http://thecommondesk.com/event/aiga-dfw-hackathon-with-open-dallas/

HackerNest DFW September Tech Social
September 30 8:00 PM 2013
(No location yet)
link: http://www.meetup.com/HackerNestDFW/events/123491032/

LeadingAge Hackfest
October 25 7 PM (optional meetup) to October 27 5 PM 2013
650 Griffin Street, Dallas, TX (Convention Center)
link: http://leadingagehackfest.org/
link: http://www.meetup.com/LeadingAge-HackFest-in-Dallas-Group/events/132040302/

HackerNest DFW November Tech Social
November 25 8:00 PM 2013
(No location yet)
link: http://www.meetup.com/HackerNestDFW/events/123496772/

Others with no firm dates (more details to follow):

August?  September?  2013

UNT Aged Well Hackathon
September 2013

Mobile Monday DFW – Windows Phone App Showcase
October? 2013

Nokiathon DFW
October?  November? 2013

UNT Energy Hackathon
November 2013

Hope to see some of you at one or more of these events!  Again, send me any I may have missed.

Jul 272013
In 2012 I “attended” Microsoft’s //build/ developer-focused event virtually, envious of friends with the good fortune to attend.  Thanks to my Nokia Developer Ambassador gig, this summer I got to enjoy the excitement first hand.  Instead of a lot of text, though, I’ll share some highlights with the focus on photos (all taken with a Nokia Lumia 920): Continue reading »

May 282013

For those who have been active in the Dallas-Fort Worth Windows Phone developer scene for some time, the headline here may seem odd.  After all, the Meetup.com group has been gathering on occasion since this time last year.

But what’s been missing, according to the most common feedback I receive, are semi-social gatherings with a focus on Getting Stuff Done.  Attendees have had enough consumption; they’re ready to create.

With that in mind, I have spent the past few months scouring DFW for good venues for this activity.  I put together the following criteria for sites:

  • Should be free (or at least low-cost)
  • Should have easy facility access (preferrably no security hurdles)
  • Must have decent, dependable WiFi
  • Must have easy access to power
  • Must have comfortable seating for at least 15 attendees for 3+ hours
  • Should have easy access to food and drink (including catering)
  • Must be available weekends and/or evenings

This is not an easy bill to fill.  I encountered many potential venues that had one or more of the must-have items but lacking something critical (usually weekend/eveing access).  To increase our prospects, I asked community members to aid in the search.  Pointing out a possible location wasn’t enough– I needed these foot soldiers to compare sites against the requirement list, talk to managers, and even take pictures.

It may come as a surprise to readers that grocery stores turned out to be generally good locations.  Specifically, the Tom Thumb flagship stores, which meet every Must and Should.  The only drawbacks I’ve run into were man-made… such as the strange reluctance of one store manager (who was worried about us displacing customers, when I saw only 3 people occupying a 35-seat area) and human mistakes.  Mostly mine.

I had scheduled a meetup for May 25 at a Tom Thumb store in Arlington after one member, Dallas .NET’s Omar Villarreal, got clearance from the manager.  Unfortunately I misread Omar’s instructions and secured the wrong store.  When the group arrived, we discovered that there was no WiFi or Starbucks.


We waited for stragglers to show before moving to another Tom Thumb a few miles north.  This cost us an hour and a half of valuable time.  Lesson learned: read the fine print.

The second store turned out to be acceptable.  WiFi was mostly reliable (I had a couple of brief drops) and the deli sandwiches were excellent (I recommend the pulled pork).  The 5 other attendees seemed fairly pleased.  However, the late start combined with another error on my part got in the way of getting any work done.

I had set aside the beginning of the meetup for introductions and announcements, which would be okay for social meetups but took way too much productive time from this one.  Socializing is certainly useful, but we’ll hold separate events for that.

I would like to think that the attendees at least benefitted one way or another, but I welcome constructive criticism to help shape future get-togethers.  I definitely need to arrive early to get things set up.

The good news is that this somewhat-rough experience was useful in certain contexts, especially since we had new members attend, and allowed me to get a good idea of what works and doesn’t work.  Going forward, I will put together a handout for updates and trim the initial verbal presentation down to about 5 to 10 minutes.  Less time of me chatting, more time Getting Stuff Done.

Ideally, we will see a good mix of skill levels and experience at these sessions.  I really want to pair mentors and experienced app publishers with beginners, for one.  Same with bringing in more data modelers and UI designers.  To motivate members in that regard, I am offering a recruting incentive: bring in any new member with any useful skills for app creation, and get a $10 gift card.  Bring in any new member with at least one published app, and that amount goes up to $20.  Stipulation: new members must agree to sign up at DVLUP and also provide me full contact information before I award the gift cards.  This promotion runs until I am broke or we have too many members.  ;)

Speaking of DVLUP, I’m also considering holding specific “DVLUP Days” events with the goal of just tackling DVLUP challenges at the event.  XP building opportunities, if you will.  I’m also working on partnering with various companies and instructors for educational meetups– stay tuned!

My intent is to “bounce around” the metroplex and hold these sessions in various parts of the area, with a preference for central locations.  If you know of any, let me know!  By all means, ask the managers about the items on my list, and pictures of the venue are very helpful.  And ask your employers about hosting!

We’ll probably hold another such event in North Dallas next, at an office near highway 35E and Beltline Road.  Registration will be at the Meetup.com website, and I will announce in the usual social channels.

Ultimately, we’ll get into a rhythm that will benefit everyone involved.  I can’t wait to see the results!

Mar 102013

SMU Hackathon

The last time I did a “Where I’m At” post was too long ago, so let’s get this thing going without much preamble.  And no, this isn’t about US college basketball playoffs.  Just feels like it sometimes. Continue reading »

%d bloggers like this: