Entries in Public Announcement (14)

Saturday
Apr212012

SPSPerth 2012 Update

This is my first time in Perth!  Hello Perthites!

I even took a train to Cottesloe beach - a very nice beach, I watched the sunset and did what any geek would do, I checked in the Indian Ocean.

I will update this post with links after the sessions. In the mean time, you can reference my current collection of articles on these topics regarding REST, custom service, and Knockout

http://johnliu.net/rest/

Downloads

Reference

Make sure you follow Matt Menezes
http://spmatt.wordpress.com/

He's a regular at Perth user group circles and knows a lot about Knockout.  I think he is slotted in for a future session in the upcoming months - don't miss it!

Friday
Mar232012

Re: Sorry dad, you'll understand, someday

This is a quick blog post, in response to Zac Gorman's excellent Magical Game Time comic.

http://magicalgametime.com/post/19718347285/ill-stop-when-ive-saved-the-world-and-fallen-in

As you play through the game Earthbound as the kid protagonist Ness, your phone would ring every few hours, and your dad would ask you if you'd like to take a break.  If you say Yes, it'd save the game and switch it off.

The comic cleverly replies as Ness: I'll stop when I've saved the world and fallen in love.  (Sorry dad, you'll understand someday).

 

My boy is still three, he doesn't understand about saving the world, or falling in love, yet.  I'm sure he will soon.  And here'd be my response to him:

  • All dads were boys once.
    We already understood.
  • So off you go, save the world.
    Go and fall in love with your girl.
  • You do what you have to do.
    This is your time, we don't expect you to hold back, or stay at home.
  • When you are tired from saving the world, stop by and have some hot chocolate and ice cream.
    We will always be your biggest fan.

 

We will return to our regular SharePoint updates soon. 

Tuesday
Mar202012

AUSPC 2012 quick update

I'm in the strange and calm interlude between day 1 and day 2 of awesomeness in the annual Australian SharePoint Conference (AUSPC) 2012.

Day 1 has been a lot of fun.  Manned the user group booth in the morning with Dan Brown.  Met many of the SharePoint guys in the community that I haven't seen for the last 6 month to a year.  Talked to a number of vendors, and attended a number of awesome sessions on the developer track.

I also got to sit on the panel answering developer questions amongst the legends like Nick Hadlee, Ishai Sagi, Brian Farnhill and Jeremy Thake

The oddest part is probably with MCA SharePoint Wayne Ewington sitting in the audience.  Every time we said something silly he'd start shaking his head and we'd all stop.  Hilarious.

 

Tomorrow morning, my session on Building your own custom REST Service and consuming them with jQuery AJAX is running in the developer track at 10:30am.  Hope to see everyone there.

All my related resources and presentations on this topic are summarized on http://johnliu.net/rest

Thursday
Mar012012

Dummy guide to install Win 8 on VHD for Boot to VHD

 

Summarized from:

You'll need:

 

Set up boot to VHD!

  1. Create a VHD

clip_image001

clip_image002

Note: I make this a dynamic disk, although I allocated up to 60GB, it only uses what it needs which was about 10 GB.

 

clip_image003

clip_image004

clip_image005

clip_image006

clip_image007

clip_image008

clip_image009

Created, and attached the VHD to Y:

 

Load the ISO into a virtual CD drive, mine is G:

I use virtualclonedrive to load ISO - this is a free utility.

clip_image001[5]

 

Next install the windows image into the VHD

Easiest way that worked for me is this wonderful powershell script.

 

clip_image001[7]

Remember to unblock this script

 

If you see:

File C:\Install-WindowsImage.ps1 cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help about_signing" for more details.

You will need to allow remote script

PS C:\>set-executionpolicy remotesigned

 

PS C:\> .\Install-WindowsImage.ps1 -WIM G:\sources\install.wim

Index   Image Name

[1]     Windows Consumer Preview

Done.

PS C:\> .\Install-WindowsImage.ps1 -WIM G:\sources\install.wim -Apply -Index 1 -Destination Y:

PS C:\> .\Install-WindowsImage.ps1 -WIM G:\sources\install.wim -Apply -Index 1 -Destination Y:
Applying "Windows 8 Consumer Preview" to Y:...
WARNING: This may take up to 15 minutes...

Elapsed Time: 00:08:40.4870618

PS C:\>

 

Lastly, make the VM a boot record.

 

PS C:\> bcdboot Y:\Windows\
Boot files successfully created.

 

You can check it with bcdedit

PS C:\>bcdedit

Windows Boot Loader
-------------------
identifier              {default}
device                  partition=Y:
path                    \Windows\system32\winload.exe
description             Windows 8 Consumer Preview
locale                  en-us
inherit                 {bootloadersettings}
custom:17000077         352321653
osdevice                partition=Y:
systemroot              \Windows
resumeobject            {1abc7489-8e4b-11e0-877a-af036ca44d2f}
nx                      OptIn
custom:250000c2         1
detecthal               Yes

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {1abc7482-8e4b-11e0-877a-af036ca44d2f}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {1abc7480-8e4b-11e0-877a-af036ca44d2f}
nx                      OptIn

 

Restart and you are off to go

 

Your PC will boot into Windows 8, which has a new happy looking boot loader.  If you feel the 30 second delay is too long, you can change the delay to 5 seconds from the boot loader options.

Thursday
Feb162012

Curiosity drives creativity. The only limit for your kid are there because you put them there.

I watched this YouTube recently, Neil DeGrasse Tyson was being interviewed and was asked a question: what would you do as a nation to increase scientific literacy.

Neil's answer:  What do you do at home?  What do you do with your kids?  Kids needs to be able to explore freely.  The home, he argues, is not a great place for exploration.  Play in the toilet?  No.  Garage?  No.  Kitchen?  No, no, no.

The kid goes to the kitchen and starts to bang pots together, you tell him to stop.  The consequence of stopping a kid, is stopping a kid from exploring.  The seeds of curiosity are the foundations of science.  The parents need to get out of the way. 

If the kid pulls petals from a  $10 flower you bought from the florist, but discovers an interest in biology.  That's the cheapest $10 you've ever spent on his education!

 

iPad, and Technology

fernbedienung2.jpg (700×503)Many of us marvelled at our children being able to pick up an iPad and use it right away.  We say surely this is proof of Apple's solid design principles, even a three year old kid can master this technology at ease.

That may be the case, but I've beginning to really wonder.  When was the last time you let your kid explore your keyboard?  He's banging and breaking your keys?  If you don't let him experiment, how would he know what banging the keys together does? 

Mr 3 presses the back button on the iPad.  It quit his favourite game.  He knows for certain that is NOT the button he wants to press when he is playing his favourite game.

I got a new Samsung LCD TV, it comes with an extremely complicated remote control.  Mr 3 learned how to use it to get to his cartoons in the morning and switch to Simpsons in the evening before sleep.  He can even switch input sources between HDMI (XBox) and normal Digital TV channels!  Look at this thing: My kid can operate this, can you?

 

Dungeons and Dragons, and story telling

I was convinced that he will enjoy playing board game, and in particular, dungeons and dragons with me. 

Lots of parents are doing this.  A game that you can play with your kid, and helps them on mathematics, story telling, spelling, imagination.

Considering that he is still wet behind the ears, I opted for D&D-lite: HeroQuest.

WP_000443

He is three.  He is playing his dwarf hero here, trying to cheat the dice roll because he knows he needs to get "skulls" on the dice to hit the Ogre.  Along the way, he has already fought off:

A goblin, an orc, 3 chaos warriors - one whose helmet is now stuck in the fireplace, and 1 skeleton.  The goblin had a pretty nasty bump on the head - he says the goblin shouldn't sleep on the floor because it's dirty.  We put him on the table, and use the empty treasure chest as a pillow.

  • I asked him as he comes near a door - do you want to open the door?
  • He says: Yes, open the door, see what's inside.
  • I put down a skeleton
  • He says: Skeleton! 
  • I asked him, what are you going to do?
  • He says: Run away - and proceed to yank the dwarf all the way back to the beginning.  I had to stop him and tell him that he can fight by rolling the dice.

Dungeon Master tip for dads:

If your kid is running low on HP, make sure he "finds" a healing potion next time he searches a table, door, monster's dead body.  Don't make things too easy, but don't get them killed.

 

I'm realizing something

This is probably my take home message and something I'll try to remind myself my whole life.

Your kid knows no limits. 

All the limits in his life, are put there by adults

 

People tell him he can't try to do something.  He can't go somewhere.  He isn't tall enough to go on a ride. 

The box on HeroQuest says ages 7+.  Did that stop Mr 3?  Who puts these age limits on game boxes?

You know, I hope it's not yet too late.  I ask him to do something, and he tries, but he fails, and he tells me:

I can't do it

It breaks my heart.  No, it's OK, you can.  Try again, I'll help you, let's try again.

 

Let your kid paint their room

This is something I've read separately, and actually got Lina to agree:

We will leave the interior decoration of our kid's room to himself.  Within his room, he can paint his walls.

We're in a new house.  He is free to paint anywhere on the walls in his room.  Why limit him?  Re-painting his wall is easy.  But the memories and his creativity being cultivated - those are absolutely priceless.

 

Say less No.  Say more Try

This is so much easier to write than to live.  When your kid is being silly and driving you crazy, can you really hold back on the No?

John, let your kid try.  Say less NO, say more TRY.

Saturday
Jan212012

Australian SharePoint Conference 2012, March 20-21, Melbourne

2012 will be the third Australian SharePoint Conference [agenda], and my third time speaking at this fantastic event. In my opinion, the AUSPC conference has some of the world's best speakers (and I gladly exclude myself from that list), exceeding even the Australian Tech-Ed event in terms of breadth and depths of SharePoint content. There are simply no other event this dedicated to SharePoint within Australia.

In the year 2011 we saw tremendous growth in SharePoint, and new techniques with jQuery becoming very popular.

Silverlight is now moving towards a backseat, to my dismay - I argue that it remains a very useful arsenal in providing the tools to extend SharePoint's capabilities, but with the advances in HTML5 and the myriad of devices that our users are now plugging to SharePoint, a different future is fast approaching, and it doesn't look that great for Silverlight.

In the new year 2012, I think there will be stronger focus in using HTML5 and JavaScript going forward, with may be a good sprinkle of Metro, pending Windows 8's release.

I will be presenting an updated version of my talk "Building your own Custom REST services and consuming them with jQuery AJAX". Time permitting, I want to add a tiny section on KnockoutJS. Aside from future SharePoint Saturday events, I'll be posting the entire REST services talk in a series of blog posts in the upcoming months.

Also, consider the sad cancellation of January's Sydney SharePoint User Group, I hope to be able to present a talk on KnockoutJS in a Developer session as early as February, fingers crossed. A previous version of my talk on REST services is still here.

If you thought you've seen everything there is to know about SharePoint, hold on to your seatbelts, because you are about to be blown away! See you soon around Australia, our first stop, in the Australian SharePoint Conference, March 20-21.

Wednesday
May272009

serverfault.com hasn't launched and I hate it already

http://serverfault.com/ launched, and I hate it already.

edit: SF.com is Open to Public, so this should have read: serverfault.com hasn't launched yet and I hate it already

It’s basically http://stackoverflow.com/ for sys admins.  Great in concept, and probably a well-requested idea by SOers to keep SO pure… 

But then you’ve got guys like me.  I’m not a pure developer.  I’m a knowledge sponge.

I want to know everything to do with SharePoint, because I know there’s a lot that I don’t know, so anything new to read is awesome.

And now, I’ve got one extra place I have to check.

  • StackOverflow search RSS
  • SharePointMVPs twitter
  • MS SP General Forums RSS
  • Various MVP blogs
  • SP Team Blog
  • don’t want ServerFault.com

So…

SharePoint Configuration – SF.com
SharePoint Application Development – SO.com

And possibly the worse part of it is that I now have 2 reputations to grind – this is just like another WOW reputation grind.

FAIL FAIL FAIL!

 

Already, people are asking:

http://serverfault.com/questions/7384/site-collections-in-sharepoint-2007-how-many-and-why

Great questions, but I hate having to check two places.  Why couldn’t they just stick a tag on SO just baffles me…

Who came up with this stupid idea anyway!

 

What’s next?

http://ArchitectureInstability.com for architects?

 

Anyway, if you are a sys admin and never wants to see a line of .NET code, feel free to head over and never see SO again – but as for me…

</3 ServerFault.com

Friday
May222009

SharePoint: MOSS SP2 Major Bug

The SharePoint Team blog announced a major bug with SharePoint MOSS SP2:

This is funny, but extremely serious and important.

During the installation of SP2, a product expiration date is improperly activated. This means SharePoint will expire as though it was a trial installation 180 days after SP2 is deployed. The activation of the expiration date will not affect the normal function of SharePoint up until the expiration date passes. Furthermore, product expiration 180 days after SP2 installation will not affect customer’s data, configuration or application code but will render SharePoint inaccessible for end-users.

http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx

  • Does not affect data
  • But it will silently deactivate after 180 days
  • Users can come to work without warning and SharePoint will be unavailable.
  • If you are installing SP2 - apply hot-fix from MSDN immediately afterwards.

Get the word out.

Monday
May112009

What am I looking for in SquareSpace

Going to spend this next week seriously giving SquareSpace a twirl.  I'm looking for:
  • Easy maintenance
  • Import from spaces.live.com without doing something really stupid
  • Better traffic tracking - compared to Windows Live probably anything is better
  • Comments with OpenID

 UPDATE:

Maintenance - I seem to be able to make the changes I wanted - looking for info in the FAQ / forum is awful though.

From Windows Live Spaces to SquareSpace - ended up writing my own MetaBlogAPI export for Live Spaces to MoveableType txt format, then get squarespace to import it.  Again the help dialog is bad and it wasn't clear why things weren't working - have to go back to import page to see the error.

Traffice tracking - I know it was better already

No comments with OpenID - I think in this generation if you have to force someone to create an account in your particular blogging system just to comment - there's something wrong about it.

Monday
Apr062009

SharePoint – IE8 standards mode causes trouble in SharePoint

Running SharePoint on IE8 – JavaScript errors when using the rich text editor.

‘null’ is null or not an object – in form.js

clip_image002

 

The debugger shows that the SharePoint javascript code was trying to call:

document.getElementById("ctl00_PlaceHolderMain_EditModePanel3_ctl04_ctl00_RichHtmlField_displayContent_LTR")

The id of that element is actually: ctl00_PlaceHolderMain_EditModePanel3_ctl04_ctl00_RichHtmlField_displayContent_ltr

In IE7’s incorrect JavaScript behavior – it finds the element and returns it.

In IE8’s correct JavaScript behavior – it doesn’t find the element and returns null.  -> Error!

---

IE8 will attempt to use IE7 compatibility mode when accessing intranet sites.  It will use IE8 standards mode when accessing public internet sites.

This means that when accessing your SharePoint site via the extranet URL – http://sharepoint.company.com/ you will get this error, but accessing it internally – http://sharepoint/ will be OK.

----

Ways to fix this (easy to hard):


  1. Custom Header in web.config (site-wide)
    http://msdn.microsoft.com/en-us/library/cc817572.aspx
  2. Meta tag in master page (specify per masterpage)
    http://msdn.microsoft.com/en-us/library/cc817574.aspx 
  3. Use Telerik’s RadEditor Lite – free alternative
    http://www.telerik.com/products/aspnet-ajax/sharepoint.aspx
  4. Wait for MS SharePoint hotfix
    UPDATE: waiting for MOSS service pack 2 - which contains IE8 support
  5. UPDATE: tell your editors to run SharePoint in compatibility mode