Apple Naming Chart

Apple Naming Chart
mini air pro
iPad mini & mini-Retina iPad & iPad Air ???
iPod shuffle nano touch
iPhone 5c 6 6+
macbook macbook air pro
mac mini iMac pro
watch sonofabitch

PS – I know that the mac line could/should be split into two lines (computers with monitors integrated & computers without monitors), but when viewing the product offerings this way it becomes eminently clear that a iPad Pro makes inevitable sense. My day job is in enterprise software – I can tell you many of our customers opted with an iPad mini vs the iPod touch/iPhone 5s that was available when we launched our first iOS solution due to size. I firmly believe the iPhone 6+ is a great device for task orientated software that is still “pocketable” – hence my belief it is the pro of the phones.

PSS – I’m not claiming that all the devices should follow the mini/air/pro labeling – but it would certainly make things easier to compare :)

JS Template Concept

These are the not properly fleshed out thoughts of a non-developer on js templating solutions.

Compiled Assets

I hate them. When I start playing with a project – the last thing I want to do is jump through 50 hoops to build something before I can start tinkering. Speed & ease of tinkering is paramount.

I feel like good solutions to start with include pre-compiled assets. Everything works by default as is and if you want optimized/built/compiled/semi-compiled code those should be available, but not required. Bootstrap does this and includes css, as well as, the less assets. Building is possible, but not required.

However, there could be a better way. In the case of css assets via less/scss – I think a sane approach would be to load those from a folder rather than a specific file.

Essentially, go to this folder and fetch the compiled .css if it exists if not then, fetch the .less or .scss files and compile them with an included js compiler. Something like:

Although this probably sounds like heresy, what it does is allows for much more discoverability and tinkering for non-devs and for people unfamiliar with particular frameworks.

To get around potential performance problems caused by missing something – a test script could be added which would flag which assets that are not pre-compiled and should be before deploying to production.

Include Template


This is nothing terribly complex. It loads these components, with this data, and (optionally) this configuration. This is a very clean way of separating concerns. It should also make it easier to work with different team members regardless of experience or backgrounds – by trying to make the logic explicit.

This suggestion comes back down to “color me stupid” – but reasoning about other developers projects is extremely hard for me (again not a developer – so it’s probably me). When I read about React – I got excited about the components angle, but I got most excited about GraphQL. It seems like a huge boon. Explicitly stating the data requirements of each component as part of the components syntax allows for a higher level component to grab all the data requirements and merge them.

Allowing for the system to dynamically load these components, data, & configs while developing/testing and then compiling them for production would provide the same benefit of ease of use as previously mentioned.

Template Syntax

Using a mustache or mustache like templating language makes the most sense; however, the template should only contain html & the curly bracket syntax. The data & configuration files should provide for the logic on how the template should load & function. This has the desired effect of making the 3 parts of the template capable of being managed by 3 different functional roles (although in most use cases this would not need to be the case).

Nested Templates


In this case we have pushed the data-src up one level from the component to the collection of components; I’m not sure what the best approach is for this, but that’s all I was able to put together in the time I allotted to write this.

Disclaimer

I’m trying to get in the habit of writing a little more often. I make no claims of quality for this post.

You don’t always know how people will use your solution.

Often when you create a product you know exactly how you would use it, but you have no clue how the end user will use it. Years ago, I ripped out an advertisement from a magazine to remind me of this.

washing-machine-yogurt-blender

Today, I was reminded of this (and had to dig out this advertisement from hiding) while looking at HubSpot’s Facewall.

hubspot-wall

You see this was intended to provide you with a way of showcasing internal employees to other employees and add to the sense of team. I immediately thought, I wonder if we should put up dedicated monitors for our enterprise clients and load the top 20/30/50 contacts in those companies in there so everyone can see who we are working with.

Then I got the idea that this would be a really cool solution to tie into a CRM. It’s too bad HubSpot doesn’t have a CRM… oh wait they do.

Black Hat Badassery

I was meeting with someone and we were talking about conversion flows and targeted marketing.  I mentioned I always had an idea to target visitors based on if they had visited a competitor.

Black hat CSS

So this guy {rename nameless to protect the guilty} – says I looked into it and the browsers disabled the :visited css hack you were thinking about using.

I bounced a couple ideas around in my head and came up with this.

Black hat Javascript

Let’s see if this theoretical workaround would work:

  1. Browser: Set Visitor ID
    visitor-id: 123456
  2. Browser: Create the CSS for the Visitor
    .competitor-1, 
    .competitor-1:visited 
    {position:absolute; top:0px; right:0px;}
    .competitor-1
    {background-image: black-pixel.jpg
    ?visitor-id=123456&competitor-1;}
    .competitor-1:visited  
    {background-image: white-pixel.jpg
    ?visitor-id=123456&competitor-1;}
    
  3. Browser: Create the Link with JS
  4. Browser: Apply the Styles with JS
  5. Server: Read the Meta Data Collected from Image Call
  6. Server: Add that Meta Data to User Profile (preferably something like the leadin profile)
  7. Both: Cycle Through Other Competitors
  8. Server: Serve Marketing Content
  9. Server: Check to see if the user has left the site and come back – if so re-run and then
    tag if competitor has visited the site (now you can add within a specific time period)

Targeted Customization

So what can this help with?

  • Calling out specific features/functions/pricing relative to a competitor
  • This can help guide c2a, popups, on-page content, & even pricing (for instance people on a Mac get charged more on some e-commerce sites)

Competitor Page

But, I think it could make for a really compelling competitor analysis page. Only show the competitor you know they have visited already : ) and dynamically change the pricing according to the features/funtions/pricing you have for those competitors.

Disclaimer: These are just thoughts…

Ok – I must admit I enjoy thinking about the dark arts of marketing sometimes. This one is mostly a puzzle challenger and not something I endorse (publicly).  Certainly not something, I’m technical enough to do, but thinking about the ability to automatically add tags for all the competitors to the leadin/crm profile of your users – should make marketers weep tears.

Does anyone see a reason this wouldn’t work?

Don’t Break RSS – It’s Not Dead

TL;DR; Too many people change their RSS feeds. Lots of lost potential.

Google, Reeder, & Feedly oh my!

  • Google Reader Died
  • Used Reeder (mac app)
  • Switched to Feedly because it was easiest (auto-import all feeds for Google)
  • Feedly has had a rough week
  • Bought a new version of Reeder to go local
  • Decided to cull the list so I didn’t read as much every week
  • HOLY HELLthere were 50 out of about 500 (10%) of the blogs that had moved to a
    different RSS feed (which I had to check manually) that I still wanted the articles from

Even “Marketers” Suck at this

During this process I noticed only 3-4 of the sites that switched RSS feeds had all their old articles on their new feed. The sad thing is many of these sites were in my marketing (seo, cpc, conversion) folder.

How many people go through their RSS list and clean it up and take this amount of time? Not many.

If you are going to switch your RSS make sure to do a special post warning people.

PS – I did cut about 100 (40/60 bad content/abandoned sites)

Google Reader debacle could help cement Facebook over Google+

As everyone know Google is killing Google Reader.

Google Screws Opportunity

Imagine if Google had transitioned Reader into Google+ and added the RSS feeds directly into peoples profile. It would have caused at least some portion of the population to use Google+ (more actively or for the first time) that currently don’t.

Facebook’s Opportunity

If I were Zuckerberg – I’d build in an RSS reader into Facebook. What could Facebook get out of a reader:

  • more time on site
  • more data about users
  • more sharing of content (presumably)
  • integrated facebook comments into more sites (I bet if their reader used their comments by default many sites would use it)
  • a subscribe option added to the like button – super easy RSS for people who may never use RSS, but understand Facebook

The Missing Feature

Frankly, it seems like RSS is a duh missing option that should be built into social networking.

WoW Landed Me a Job: Hobby Networking Works

Here is the story of how I got my current job.

I am a reformed WoW player, but not before I was part of the Warlord Grind (in vanilla WoW). I was a sad man with little life. My typical day looked something like:

We had a system for farming honor. It was an insane grind. I believe in gamification because I have seen myself fall victim to its charms, but that’s for another post.

The Conversation that Started it All

One night we had a presentation at school. I stayed late after the presentation. When Tchyk logged in late that night. One of the other characters, Xelor started the conversation with:

Xelor Why are you on so late?
Tchyk I was doing a presentation on commercialization of technology [insert boring business topic I can’t remember].
Xelor My company, Mintek could use some help with that
Chris [quickly googles mintek]
Tchyk Umm, you guys are in Dunedin? I’m going to USF.
Xelor Yeah, I live in Oldsmar.
Tchyk I live in Palm Harbor.

Xelor We should have lunch.

Seriously what are the odds that someone I play 20-40 hours a week ends up living 10 minutes away?

Nice Guy or Asshole?

Now my potential future boss didn’t really know much about me other than I was driven (as evidenced by having a full time job, going to grad school for 2 degrees, and doing the Warlord grind) – but he took a shot and hired me on as a consultant.

He took me around the office when I first got there. He introduced me to 5 different people as Tchyk (not my real name). Turns out I played with most of the techies at the company and didn’t know it. One guy said to me, “[Xelor] told me he was bringing [Tchyk] in and I thought – that guy could be a serial axe murderer.”

Tchyk was both the best and worst of my personality. It was me screaming in a microphone at 39 other players trying to organize and demolish the competition in Alterac Valley. I was a mediocre player at best. But, I had a knack for the strategy, a loud voice, a little bit of credibility on the server, & the capacity to organize the queueing before cross-server battlegrounds (a pain).

At one point we even had people from 2-3 other servers on our vent server. We had them script a macro that said something along the lines of “Its the Lightning’s Blade Organized AV!!!! Do what the leader says.” All I did during the event was press a combination of different macros to tell people what to do. The people who were in Vent would receive an earful.

Why Hire a Screaming Lunatic Axe Murderer?

I like to think it was because we won a lot. In reality, it was because I was a nerd who played with other nerds and it was a chance conversation that led to a lunch meeting. During that lunch meeting, we talked strategy and I proved that I really wasn’t just a pimply faced video game nerd.

World of Warcraft Was My Hobby. Your Hobby Can Get You A Job Too.

How do I know this? One of my best friends was a tennis coach after graduating with his Masters in Economics. He got his first professional job from… one of his tennis clients. His first job: M&A consulting.

TL;DR

Nerd gets job by doing nerd things and talking to other nerds. Treat every networking opportunity (not just professional) as a networking opportunity.

PS

It was great getting to know the real people at Mintek behind the characters on WoW:

Xelor – Jerimi Ford, CTO
Woohaa – Jason Pappolla, Network Administrator
Nadaj – Bruce Knapp, Mobile Developer
Druiden – Fred Johnson, Senior Developer
Dekz – Jacob Lafond, Tech Support
Nukk – Richie Kriever, Tech Support

I had to ask these guys what their characters names were. One guy said, “Are we starting again?” I swear he sounded like he missed it. I can’t imagine playing it or anything like it again.

PSS

I was inspired to write this story by seeing this article about someone running for office being crucified for what they said in WoW. I guess I should just go ahead and apologize to anyone I screamed at too much.