Wednesday, July 20, 2011

#SharePint this Saturday


The first virtual #SharePint will be taking place on Saturday, July 23rd, 7:30 E.S.T. @ http://firestation-1.com.
Phone: (301) 585-1370
Address:
8131 Georgia Ave.
Silver Spring, MD 20910


If you want to participate, but cannot show up in person, join the hangout on #GPlus @ http://gplus.iOnline247.me
Hope to see you there!

Tuesday, July 19, 2011

My thoughts on Twitter and Google Plus

Twitter can rebound from the blow Google has delivered and still keep their ecosystem, however, they do have a lot to account for. Let's look at Circles...

Circles seem very similar to Lists on Twitter. The primary difference is audiences. It's trivial to post on G+ to a particular audience. However on Twitter, it's black and white. You either tweet it public or you don't. I propose a different skew on the Retweet button. Wouldn't it be nice if you could Retweet to a particular list and the followers of that list would be the only people that could see that tweet? Sound familiar? I'm sure it does... Sounds like a G+ Circle to me. I'm sure there is something in the works over on Twitter as we speak to offer some of these capabilities BUT...


The inherent problem with doing so would mean an architectural change within Twitter. There in lies a major hurdle. Twitter relies for the most part, 3rd party applications to handle it's interface. I know this to be true because 99% of the tweets I read are from TweetDeck, HootSuite, SilverBird, Seesmic, to name a few... Most of the tweets are not from the web.
If Twitter changed it's API, then you will only be able to use the new features from the web. Rest assured, the applications would race to add in these new features, but that's another issue altogether: Application Cohesiveness. Why am I offered, as a user, a new capability but only able to use it via the web? I remember not too long ago, the API changed on Twitter to handle DM's in a different manner. That forced me to deal with an error in Silver Bird for several days until it was fixed. You can only imagine the disconnect I felt with Twitter over that period of time.


G+ has the upper hand in this arena. There's one point of contact, the web. There are mobile apps for the Droid and iPhone, but updates for these apps are pushed automatically by none other than Google themselves. How can you beat that? For right now, G+ is keeping the API closed and I agree with the decision. The masses must now how to use the system before 3rd party apps go bonkers with it. And this is just how Circles affects Twitter. Let's look at Hangouts...


There's NOTHING like it on Twitter. Nothing even close! If you have been following my stream, then you may have noticed me sharing my hangout sessions. Every time one has ended, I've shared it and commented on the quality and effectiveness. I've enjoyed it so much, that I'm putting together a #SharePint this Saturday and I'm going to stream the even through the G+ Hangout. I've heard some talk about this being a form of ChatRoulette, but seriously, USE IT! It's enabled my team to not only be more productive, but I've been able to actually meet/talk/share thoughts Jim Bob Howard without ever actually shaking his hand in person. The old adage comes to mind: Don't knock it, 'til you try it. Change is difficult, but as IT professionals, this shouldn't come as a surprise. Major change happens every three years or so. Embrace it.


So where does Twitter fit in my realm of social these days? I love SharePoint <period /> It's an excellent platform and in order for me to continue to learn and share my thoughts with the community, I must maintain my status on Twitter. There are a few people that I follow that are holding out and that's a concern for me. SharePoint's community collaboration was built on Twitter and I'm not sure if that's something that will change. Change is difficult, but I for one and tired of using DM's as an Instant Messenger. Twitter wasn't built for that... G+ was. Let's move to a more collaborative environment, since that's what we are all here doing...

Just in case you were wondering, I did post this originally on G+.

Friday, April 22, 2011

The value of a $

What really does happen when you type $ into your code?  I know it’s magic, but what really is going on?  I keep that in mind when doing anything with jQuery.  I always ask, is this the most efficient way to handle this task?  No matter how far I’ve progressed, looking at code I’ve written in the past always makes me shiver.  YOU SHOULD TOO!  Everyday is a learning experience; finding new techniques and trying them out will catapult you to new levels.
As I progress along finding the happy medium between jQuery and it’s parent: Javascript, I’m always looking for simple tweaks to optimize my code.  I’ve taken the time out to show a simple example of two different ways to populate a drop down.  Can you guess why the .append() method takes longer?

There’s a good reason why.  During the for loop, each option is being appended to the select.  That means I’m calling jQuery to work it’s magic EVERY time within this loop.  In this example, the code literally has to traverse the DOM 100 different times.  Even though each option is going to the same destination!  So, let’s look at it this way. 

If you had to walk across a fiery pit barefooted multiple times, would you carry as much as you possibly could each time or would you continually make that trip over and over again?  Personally, I’d run and not walk, but that’s just me…  Hopefully, that makes some sense.  Building an array full of the options and then traversing the DOM once, is infinitely more efficient.  I only make a call into jQuery once.  That’s an important distinction between these two techniques.  Traversing the DOM using jQuery is a slow task in some regards, especially in the example above.
Feel free to play around with the code sample provided and see if you can come up with some more techniques where this same logic can be applied.  It may just save you some time…

Sunday, April 3, 2011

Use Notepad++ instead of SharePoint Designer

I build and configure a lot of VM’s and I found a need to keep my IDE consistent across all of them.  Since I use Notepad++ for most, if not all, of my code; it’s absolutely necessary for me to have the same toolset no matter what VM I’m working in.  I’ve taken what I liked most about SPD and added it to Notepad++.  You’ll notice when you right click, you can select a tag, for example.  I’ve added a whole lot more capabilities also.  Check out the video to see what you can do with it. 

How to get it installed?

Unfortunately DropBox allows you to only share files.  For now, you can download the ProgramFiles/AppData from here.  You don’t need DropBox to make this work either.  All you have to do is install Notepad++ and then rename the Notepad++ folders.  Put a new Notepad++ folder in its place instead, then copy the files from above into those folders. 

The Sysinternals Suite helps by providing the junction.exe tool.  Without this, I’d have to manage my IDE in many different environments and I would never have the same experience across the board.  I highly recommend to have these tools on your box if you want to do anything remotely fun with your computer.

What can I do with it?

Lots!  This is just a glimpse into what you can do with it.  I didn’t even have enough time to go over the code snippets.  I hope you enjoy your new Notepad++ capabilities.  Definitely click on the Plugins menu and explore.  There’s a whole lot of interesting things you can do with it.

Update: I almost forgot to mention where I learned the junction.exe technique from.  My buddy Ravikanth Chaganti first introduced me to the technique with this post.  Excellent work Ravi!

 

Technorati Tags: ,,

Thursday, February 24, 2011

Windows Update–How to stop being annoyed #TipOfTheDay

We all have been there before, whether you are in the middle of working on your laptop/desktop or logged into a Remote Desktop session, that pesky Windows Update appears.  No matter what you do, you can’t get rid of how annoying that restart box is. 

imageBeyond that, if you click postpone, it’s just going to prompt you later on.  Hey Microsoft: 4 hours isn’t long enough for me!  On top of all of that, the Restart Now button is locked an loaded.  If, and I say if meaning “When”, you click on it, you are done.  Gone goes the tabs of research, the document that wasn’t saved, the sweet blog post; the list goes on and on.  Yes, there are measures built into Win7 and Vista to stop accidental reboots, however, it’s extremely inconvenient, and on XP non-existent.  At my prior job, we used Remote Desktop Services heavily and this was a constant gripe from my users.  I tried to do updates on the weekends, but being a 1 man shop, I like having a life Smile.  Here’s my solution. STOP CLICKING POSTPONE!  That’s right, treat it like any other window you don’t have time for.  Drag that bugger off the screen and leave it there until you, YOU, yes YOU, want to restart.

image

Doing this you get rid of two major annoyances of mine.  First, there isn’t a nuke button popping up on your screen.  Second, it’s completely out of sight and out of mind.  Windows Update, I WILL REBOOT WHEN I FEEL LIKE ITHow do you like them apples?

Update:  After doing some digging, I figured these settings could be controlled via Group Policy.  If you open gpedit.msc, the settings sure enough are there:

GPO - DisableAutoReboot

Like I said before, Home versions of Windows do not have this capability, so what to do?  Regedit!  Apply these regedits and you, yes YOU, can disable the nuclear time bomb yourself.  Make sure you know what you are doing within the registry before you start editing.  I cannot assume any responsibility and will offer no help if you nuke your PC doing so.

DisableAutoReboot