SharePoint 2016, new stuff to get excited about

So, SharePoint 2016 will be upon us soon.  Gawd it seems like only yesterday SharePoint 2013 was released.  Stuff I’m liking:

 

1) Increasing focus on Client app development.

Good thinking Microsoft.  Let JavaScript/JQuery and other client side technologies do the work.  I don’t see the end of server side logic right away (REST/WCF is going nowhere especially for data storage), but the more this happens, the smoother the Internet experience will be for everyone.

2) Hybridization with the cloud

This one seems intriguing, setting up a Search Engine in Office 365 and let it search on Premises?  Great way to shed a lot of CPU Load from the farm.  Hoping this turns out with some cool new ideas…

3) Migration backwards and forwards from the cloud

It looks like we’ve got easier ways to move data around in general coming soon.  I’m hoping for ways to push data in both directions with as little effort as possible.

We shall see….

How to tell if you’re writing a “good” program…

(Yeah I know, it’s been awhile since I last posted, hey when you have writer’s block…)

People have always asked “What is the standard for good code.  When do I know that I’m a good programmer for what I’ve done?”  I’d argue that hey if your employer is still paying you, you must be doing something right :-)

Though more  seriously, I’ve started evaluating code produced around me on a four point scale with points awarded for each bullet below:

  1. Did your code complete when you say it would?  Did you follow Greg’s rules of the deadline in the creation of this code?  Score one point if yes, else no.
  2. Is your code functional?  By that I mean:
    1. Does it perform its principal function without breaking?
    2. Are all common uses tested and performing properly?  No major functionality impeding issues?
    3. Are all obvious security issues handled?These combined score one more point if you’ve earned it.
  3. Is your code acceptable to its audience?  If the complaints are down to a dull roar, score a point.
  4. Can another programmer of reasonable talent in your programming language and technique step in and modify your code with a minimum of ramp up?  If so, score yourself a point.

So if you’ve built a program that scores 4 points in this system, I consider you and your program truly awesome and rock-star material.  Three points is good, two points is marginal and zero-one point is generally unacceptable.

Some noteworthy things I do not include here:

  1. Architecture, I don’t care if you’re a MVC buff, MVVM fanatic or whatever, if you prefer particular patterns, etc.  in fact picking a non-normal pattern can cost you main point #4 if I have to hit the books to figure out what you did.
  2. Code separation, separate your data, business and view tiers, or don’t…again just make sure I can follow well. Similar point to architecture
  3. Business process behind the code, ok be an Agile/Scrum person, or don’t be…show me the results.  Now to its credit I’ve grown fond of Agile/Scrum as it’s a solid business process, but if it won’t produce quality code for you, then come up with a better way.
  4. How you test exactly.  Unit testing is awesome, but again do what makes sense and employ the best tools to accomplish point #2.

 

Deadlines and Successful IT Projects

One post I’ve always wanted to do, is my reflections on the types of deadlines make the most successful projects out there.  In my experience, these rules are inviolate if you want a successful IT Project.  These are:

  1. There must always be a deadline, projects without deadlines go nowhere
    • This deadline must be respected by all, a deadline that is acknowledged as “useless”and “not going to happen” is not a deadline.  Reset your deadline.
    • A deadline that has been passed is not a deadline, reset again for a new deadline after following some of the other rules below.
    • One occasionally allowed exception, vague deadlines on farther horizon projects of lower priority.  Be sure to firm up deadlines as they near.
  2. Deadlines must be agreed upon by the parties under pressure to perform by the deadline
    • A deadline imposed on someone against their will is absolutely asking for trouble.
    • A deadline suggested, coaxed or otherwise persuaded upon these people in any fashion is only a slightly lighter shade of grey, making a project person stand up to you may get you in trouble depending on the bravery of the people under pressure to perform.
    • If there is a firm limit to how long a project can continue (budgetary constraints, etc.) do not mention it to the people under pressure to perform by the deadline.  Let them estimate the project, then do battle with fitting the features you want within the timeframe you can afford.  Do not “Timebox” the project by giving the people under pressure to perform the hours in budget and watch them get just within the amount of time in a subconscious desire to please those up ahead.
  3. There must be carrots for those who make it on or before the deadline and sticks for those who are late
    • Bonuses and perks about for the early finishers, cuts in bonuses, pay, even termination in extreme cases for the latecomers, provided rules #1 and #2 above were followed.
    • Some exceptions can be made if a project wasn’t completed due to no fault of the people under pressure to perform the deadline (acts of god, third-party developers, etc.)
  4. Retrospectives on every successful and failed project are key, one must learn from their history so that one shall not repeat it.

These rules are traverse any methodology (Agile, Waterfall, etc.), technique, etc.  If these rules are violated, do not hold me responsible for your project failure.

My Treatise With Every Internet Content Provider Out There

It seems more and more these days, content providers are doing things to turn me off to their sites.  The recent offender has been Yahoo.  They put some annoying ads on “My Yahoo” portal site, I install Adblock Plus, they try to sneak around that, I stopped visiting and decided Google News was worthier.  So let’s get this straight websites, here are the rules, and I think they apply to everyone who provides content out there.

1) I want your content, I don’t need your content.  This rule is paramount, above all else.

It falls upon the website to give me content that I find pleasing that I may visit again.  If this premise isn’t met, I’ll never visit, or visit once and never again.

2) If your content is pleasing to me, I do hope your website will thrive, and will do what I can to make it thrive.

This can include:

  • Paying for better content
  • Allowing you to insert relevant ads into my content

3) Advertising is content too

It is rated on a similar pleasing or not pleasing scale.

4) I control the content when it comes in.

This means I can often filter and block what is pleasing and not pleasing.

5) What is non-pleasing content, is simply noise.

Noise can include, but is not limited to:

  • Ads that don’t please me
  • Attempts to hurt me (Malware, scum ware that tries to advertise even if I’m not on your site, etc. this is typically a capital offense)

6) When there is noise, I will block noise, I prefer to see and hear what is pleasing.

This is when you see Adblock plus going on duty on your site

7) If this doesn’t solve the noise problem, then you are no longer pleasing to me and I leave your site

8) Premium content is held to a higher signal to noise ratio

After all I’m paying now for this.  I expect my signal ratio to be very high here.

9) For premium content only, in correlation with rule 8, the noise threshold at which I’m willing to leave is much higher.  Ergo I weigh your prices vs. the noise and content I receive from your site.  If the benefit comes out too low (possibly you’re putting in more clutter, or raising prices), I leave your site.  Probably the reason I no longer subscribe to the Wall Street Journal online.

10) If you want my money more than I want your content, likely you need to resolve this equation by wanting less money or providing better content.

Sadly, both with Yahoo and Wall Street Journal this is functioning backwards.  They ask more and provide less.

 

Card Fraud Strikes Me Again

So 2 days ago, someone apparently lifted my PIN Number, copied my debit card number and was hitting up ATM’s in Florida for my daily withdraw limit.  Good thing I caught it early or I would have had an empty checking account.  As it is, I’ll be OK even before my stolen balance is refunded.  However while it is the thief’s fault I couldn’t help but stop and reflect on a few things that bank could have done or let me configure to stop a lot of this kind of problem.

1) How hard would it be to implement some more common sense in the ATM/Credit card system?  Or if that day I bought lunch in Colorado, then in Florida someone is hitting up the ATM’s with my card, shouldn’t a brain somewhere state “Ok, we had one transaction in Colorado, his home area, and one in Florida 20 minutes later, he can’t be in 2 places at the same time, so we better deny the one that appears highest risk.”  Right there, that could have saved the bank some grief.

2) Better still just let me configure what physical locations my card can be spent in.  With most of my card transactions in the state of Colorado and a few on the Internet and my occasional visits to Wyoming, this could be livable.  Maybe let me override by calling an 800 number and fully unlocking the card.

3) How about a configurable daily withdraw limit?  I don’t like to carry that much cash, so throttling the cash out per day to $100 instead of $600 would have been easy to live with,  and saved the bank some money out and grief.

Hopefully someone will add some more common sense to the system some day.

Referral Checking and the World of Employment

So today on LinkedIn I stumbled into this article.  Couldn’t help but think if you’re thinking that if all you’re going to get from a candidate’s referral is a group of polished candidates he has chosen for you, then you are getting referrals wrong in the world of HR.  When I’ve been on the interviewing/hiring end there have been a few things I’ve done to maximize what a referral gives me, and getting the “bad news” as well as the good.  Two of them offhand:

  1. Make sure you clear it with legal and HR before actually doing this, but ask the candidate for some “tough” referrals where the referral in question may not have just good news.  This one is dicey, may get you in trouble with a lawsuit happy candidate, but there is no law against doing this.  So make your potential candidate confess one sin.  We’ve all had them.
  2. Ask the referral you’re calling “Did anyone else at your company/school/whatever also know the candidate that I may not have in my notes?  Do you have a phone/email for them?”  Sometimes a referral from a reference (or 2 levels down) may be a bit more candid having less time to form his thoughts and polish up for his referral statement on your candidate.

 

Congratulations Amazon

Welcome to the world of the Smartphone, you have created a phone truly drool worthy by me, all sorts of cool features and a free prime membership to boot with purchase.  There’s just one problem, you’ve married your phone to AT&T.  AT&T charges me an arm and a leg compared to Sprint, ergo I’m not that compelled.  See you when you decide to lose your exclusivity Amazon.

Back!

Sorry for my long hiatus.  Lots of stuff been going on my life and that’s the joys of having a one-man website team :-) some of it great and some of it downright horrid.

Anyways for those of you who don’t already know I’ll be speaking on a mix of 2 of my favorite topics  or “So you want to be a SharePoint Tech Trainer”.  At SharePointFest in Denver, check this out for more information: http://www.sharepointfest.com/Denver/

Promise I’ll start writing more soon.  Take care everyone!

Checking in…

I’m still alive.  Just suffering a case of temporary writer’s block on my blog.  Hope to have it fixed soon.  Take care!

Computer Security and Apathy…

Increasingly I’ve noticed a disturbing trend with me and computer security.  I’ve become somewhat apathetic.  My parents are telling me not to shop at Target anymore because they disclosed a zillion credit cards.  My response is “Meh, damage is already done, if anything Target is more secure now.  I think the more logical response is to avoid shopping at Wal-Mart because they haven’t been targeted for massive Credit Card  theft, yet.  So they’re not as conditioned to the response.”

Though the reality is,  near as I can tell, no major credit card or identity breach has hurt me directly yet.  I do follow my credit reports semi-regularly and haven’t seen a thing yet.  Chances are the bulk of Americans never will.  In fact I’ve had nobody who’s been a victim of Credit Card fraud in recent times tell me they could link their fraud incident to the Target data breach definitively.  Wonder why I just shrug my shoulders and think “Much Ado over nothing?”

So far my one credit card fraud incident I suspected was a local guy who ripped off my credit card when he had it in hand.  In fact I think I had a sneaking suspicion of which restaurant it could have been given my legitimate charge history at the time.

So folks, live life, take some comfort that the credit card companies are responsible for eating any fraud losses and move on.  It’s likely you’ll have a credit card issue at some point in your life so just be vigilant so you can catch it early.  With credit reports being free and banking accounts online where you can see up to the minute transactions, there really isn’t an excuse.