Pages

Monday, September 24, 2012

Windows 8 App-a-thon at Microsoft Belgium on September 28th

There will be 2 coding sessions, 1 for Day Birds from 10am – 4pm and one for Night Owls from 6pm – 12am. You can join us for one or both sessions. Build an app, have fun and go home with a fantastic prize!

Don’t forget to register.

Friday, September 21, 2012

Νεα ΡΟΜ για HTC Titan με WP 7.8 !!!



Εδω και μερες οι πληροφοριες ελεγαν οτι οι rom coockers ειχαν ηδη στα χερια τους τα αρχεια απο τα επερχομενα Windows Phone 7.8 .. 
Μια ΡΟΜ ειχε ηδη βγει αλλα σε πολυ πρωιμα σταδια για να ειναι λειτουργικη 

Ο χρηστης Azzelio στο Xda-Developers ανεβασε πριν λιγο ενα βιντεο που δειχνει μια πληρως λειτουργικη ΡΟΜ με Windows Phone 7.8 για το HTC Titan ... 



Δεν εχει ανεβασει ακομη τα αρχεια της ΡΟΜ αλλα το βιντεο που ακολουθει ειναι ενδεικτικο.
Οπως αναφερει στο θεμα του η ΡΟΜ περιεχει τα παρακατω 

 Background Colors 
- Google Search
- Update to 8779
- Nokia / Lumia App (Counters..)
- WhatsApp 2.0.0 
- DigitalPower_V0.5
- RegistryEditor
- FileBrowser
- DFT_BTFileTransfer
- USB 2 Video out



Πηγη

Thursday, September 20, 2012

The web template feature in SharePoint 2010

In SharePoint 2007 you had two options when you needed to create a new template for a SharePoint site:

In SharePoint 2010, there is a new replacement and improved framework for handling site templates. When you save a site as template it will create a normal SharePoint Solution Package (a wsp file – if this is new for you take a look at WSP – SharePoint Solution Files). The new webtemplate feature allows you to build a “site definition” which is scoped to a site collection – this way you can built templates of a site and still deploy them to the SharePoint solution gallery in sandbox mode.

Every webtemplate is based on an existing site definition – listed below is a code sample using the minimal set of attributes that you have to use when creating a new webtemplate.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<WebTemplate
BaseTemplateID="1"
BaseTemplateName="STS"
BaseConfigurationID="1"
Name="JOPX"
Title="JOPX WebTemplate"
>
</WebTemplate>
</Elements>


The WebTemplate has to reference the Template (BaseTemplateName) and the configuration of the site definition (BaseConfigurationId) the template is based on.



The example on MSDN How to: Create a webtemplate starts from importing an existing saved webtemplate but in some cases it is easier to start from an empty SharePoint project and manually adding a elements.xml incorporating the webtemplate feature as well as the ONET.XML from the site definition from which you want to start.



References:



Wednesday, September 19, 2012

Νεα ΡΟΜ στον Τιτανα με ασπρομαυρο θεμα


Επειδη σημερα ηταν μερα που δοθηκε το iOS 6 ειπα και εγω απο αντιδραση να βαλω νεα ΡΟΜ στον Τιτανα μου ...
Δειτε τις πρωτες φωτο













*****************************************************************************************************





Tuesday, September 18, 2012

ΟΔΗΓΟΣ : Φλασαρισμα HTC τηλ με την μεθοδο USB Y & GoldCard (1st & 2nd Gen)


Σημερα θα δουμε το 2ο μερος απο την την διαδικασια του debranding-Downgrating για τα τηλ WP της HTC. Aφου εχουμε ετοιμασει το καλωδιο και την καρτα (δες αυτον τον οδηγο) τωρα θα δουμε τα αρχεια που χρειαζομαστε τις συνδεσεις και την διαδικασια. 

ΑΡΧΕΙΑ (ROMs)

Παμε λοιπον πρωτα να δουμε τι αρχεια (Roms) πρεπει να κατεβασουμε για το τηλεφωνο που εχουμε. Kατεβαζουμε μια  nodo rom για την συσκευή μας και κανουμε extract το αρχειο Ruu_signed.nbh με το Winrar. 


Αυτο το αρχειο πρεπει να γινει Rename αναλογα με την συσκευη οπως πιο κατω   

1ης γενιας HTC 

1.-Sparimg.nbh for Spark (Trophy)
Rom-download: http://forum.xda-developers.com/show....php?t=1427904
2.-SCHUIMG.nbh for Schubert (HD 7)
Rom-download: http://forum.xda-developers.com/show....php?t=1427890
3.-MOZAIMG.nbh for Mozart
Rom-download: http://forum.xda-developers.com/show....php?t=1427893
4.- MONDIMG.nbh for Mondrian (HTC 7 Surround)
Rom-download: http://forum.xda-developers.com/show....php?t=1427902


2ης γενιας HTC 

5. -ETERIMG.nbh για το Titan 
Rom-download http://www.filefactory.com/f/db553db625fe2273/
Kατεβαζουμε το αρχειο "IMG_Eternity_HTC_Europe_1.09.401.02_Radio_16.23.02.09_A_16.24.00.23_Signed_ETERNITY_RELEASE.nbh"
6. -OMEGIMG.nbh για το Radar
Rom-download http://www.filefactory.com/f/6445c856576328d8/

Οταν εχουμε κατεβασει την ρομ που ειναι για την συσκευη μας την μεταφερουμε στην goldcard που φτιαξαμε πριν (ΠΡΟΣΟΧΗ !! να εχουμε αλλαξει το ονομα της ρομ με βαση την συσκευη μας).



Συνδεσεις - Debranding/Downgrading 


1. Συνδέουμε το τηλέφωνο με το USB καλωδιο στην μια θηλυκη ακρη του καλωδιου μας και στην αλλη τον αναγνωστη sd καρτων (η το usb στικακι) Τελος στην αρσενικη ακρη συνδεουμε τον φορτιστη του τηλεφωνου.
2. Ανοιγουμε το τηλεφωνο μας κρατωντας τα κουμπια vol (-) και Κουμπι φωτογραφικης ταυτοχρονα για να μπει η συσκευη σε usb host mode.
3. Βαζουμε τον φορτιστη στην πριζα και αν ολα ειναι καλα αυτοματα θα αρχισει η διαδικασια φλασαρισματος της ΡΟΜ...

Ισως να χρειαστει να βαλετε πρωτα τον φορτιστη και μετα να ανοιξετε το τηλ για να γινει σωστα η διαδικασια

Προσοχη !!! Να μην κοπει το ρευμα οταν φλασαρουμε ...
Η διαδικασια αυτη θα κρατησει αρκετη ωρα και εχει διαστηματα που δειχνει να εχει κολησει ...
Μην το πειραξετε και περιμενετε να τελειωσει... Οταν τελειωσει κλειστε το τηλ ..(βγαζοντας την μπαταρια) 

Εγκατάσταση SSPL...


Τωρα παλι σε σχεση με το τηλεφωνο που εχουμε κατεβαζουμε τα αρχεια για HSPL

A. Για την 1η γενια τηλ δειτε εδω τον αναλυτικο οδηγο ΕΔΩ

B. Και για την 2η γενια (Titan Radar) η διαδικασια ειναι διαφορετικη ...


Κατ αρχην κατεβαζουμε τα αρχεια HSPL απο ΕΔΩ

Συνδεστε τον αναγνωστη καρτων στον υπολογιστη σας και σβηστε το αρχειο της ΡΟΜ που υπαρχει εκει ...
Αν εχετε Titan αντιγραψτε απο το αρχειο 
\DFT__HSPL_WP7SG1_GoldCrad\DFT_HSPL_WP7SG1\1_SPL205\TITAN\ETERIMG.nbh 
αν εχετε Radar το αρχειο \DFT__HSPL_WP7SG1_GoldCrad\DFT_HSPL_WP7SG1\1_SPL205\OMEGA\OMEGIMG.nbh
στην καρτα. Συνδεστε και παλι τον αναγνωστη στο usb Y καλωδιο και με τον ιδιο τροπο οπως καναμε και πριν με την ΡΟΜ βαζουμε το τηλ σε USB host mode και θα αρχιζει να περναει το SPL στο τηλ. 

Αυτο γινεται πολυ γρηγορα (5 λεπτα) και οταν τελειωσει βγαζουμε παλι την μπαταρια γι ανα κλεισει το τηλ και ειμαστε ετοιμοι να περασουμε HSPL και την Custom ROM. 


Εγκατάσταση HSPL...

1. Εξαγάγουμε όλα τα αρχεία από το rar αρχείο του RSPL/HSPL που κατεβάσαμε και τρέχουμε (σαν administrator) το αρχείο DFT_HSPL_WP7SG1_INSTALL.exe.

2. Κλείνουμε με power off το τηλέφωνο και κρατώντας πατημένο τα Volume-Up and Down (μέχρι να εμφανιστεί η οθόνη OSLP ). Στο κάτω μέρος της οθόνης έχει την λέξη Serial.

3. Συνδέουμε το τηλέφωνο στον υπολογιστή και περιμένουμε να εγκατασταθούν οι drivers (αν το έχετε ξανακάνει δεν θα περιμένετε καθόλου).

4. Όταν τελειώσει η εγκατάσταση των drivers από τα Windows και είναι όλα εντάξει η λέξη serial θα γίνει USB. 
Στην εφαρμογή που τρέχει πατάμε το next και θα αναγνωριστεί το τηλέφωνο μας. Αν όχι τότε ελέγξτε το καλώδιο (πρέπει να είναι το original), την θύρα USB και τέλος τους Drivers που πρέπει να έχουν εγκατασταθεί σωστά.

5. Μετά την αναγνώριση του τηλεφώνου, διαλέξτε από την λίστα της εφαρμογής, την έκδοση OSLP με βάση αυτό που γράφει στο τηλέφωνο. Οι οδηγίες της εφαρμογής είναι ξεκάθαρες. 

6. Πατήστε επόμενο και όταν τελειώσει η εγκατάσταση, η συσκευή θα κάνει επανεκκίνηση σε RSPL. 
Aν στην οθόνη του τηλεφώνου δείτε «CotullaRSPL» τότε έχει εγκατασταθεί σωστά το RSPL και είμαστε έτοιμοι για το φλασάρισμα της RΟΜ. Αν όχι τότε κάπου κάνατε λάθος και πρέπει να επαναλάβετε τα βήματα από την αρχή.

7. Αφήστε το τηλέφωνο όπως είναι και πάμε για την RΟΜ.

Εγκατάσταση RΟΜ..

1. Αφού έχουμε ήδη κατεβάσει την RΟΜ εξάγουμε όλα τα αρχεία της σε ένα κατάλογο

2. Από τον κατάλογο τρέξτε το αρχείο ROMUpdateUtility.exe (σαν administrator), ακολουθείστε τις οδηγίες στην οθόνη και θα αρχίσει η διαδικασία φλασαρίσματος. Χρειάζεται περίπου 8-10 λεπτά και μόλις τελειώσει θα κάνει επανεκκίνηση και θα έχετε την νέα RΟΜ στο τηλέφωνο σας.

Η διαδικασία είναι πολύ εύκολη και απλή. Στο μόνο σημείο που μπορεί να κολλήσετε είναι στη σύνδεση με το usb και τους drivers. Προτείνεται να κάνετε τη διαδικασία σε φορητό υπολογιστή (για το φόβο διακοπής ρεύματος) που τρέχει Windows 7, καθώς αναφέρονται πολλά προβλήματα με την σύνδεση και drivers σε Windows XP.

Για τα Ελληνικά στην πρώτη σύνδεση μετά το φλασάρισμα θα σας ζητήσει τη γλώσσα και επιλέξτε Ελληνικά. Αν βάλουμε παντού Ελληνικά στις ρυθμίσεις τότε το πλήκτρο της αναζήτησης θα μας πηγαίνει στο site του Bing (www.bing.com) και όχι στην εφαρμογή Bing. Για να το αλλάξετε αφού τελειώσετε την εγκατάσταση πηγαίνετε στις Ρυθμίσεις/Περιοχή + Γλώσσα και στο τέλος της λίστας αλλάξτε σε Αγγλικά Ηνωμένου Βασιλείου την ρύθμιση Γλώσσα Αναζήτησης/Προγράμματος Αναζήτησης.

Καλό φλασάρισμα ...




Monday, September 17, 2012

ΟΔΗΓΟΣ : Εγκατάστασης RSLP/Custom Roms σε HTC (1ης γενιας)


ΠΡΟΣΟΧΗ !!! Η διαδικασία αυτή είναι ΜΟΝΟ για τα τηλέφωνα της HTC που έχουν λειτουργικό Windows Phone 7.
Αυτά είναι: 1. Trophy 2. HD7 3. Mozart 4. Surround 5. HTc 7 pro

Σε αυτό τον οδηγό θα περιγράψουμε τα βήματα που χρειάζονται για να εγκαταστήσετε στο τηλέφωνο σας πρώτα το RSPL και μετά Custom ROM. Να ξεκαθαρίσουμε εδώ ότι η μόνη διαφορά μεταξύ RSPL και HSPL είναι η εξής: Tο HSPL είναι μόνιμη λύση και το κάνουμε μονό μια φορά, και μετά από αυτό μπορούμε αμέσως να κάνουμε το φλασάρισμα custom ROM ενώ το RSPL είναι λύση της «μιας χρήσης» και χάνετε μετά από το φλασάρισμα και την επανεκκίνηση του τηλεφώνου, συνεπώς θα πρέπει να γίνεται κάθε φορά που θέλουμε να βάλουμε κάποια RΟΜ.


Σε πρώτη φάση θα περιγράψουμε την διαδικασία του RSPL (που δεν διαφέρει ιδιαιτέρα από το HSPL) μιας και είναι αρχή και όλοι κάνουμε δοκιμές, και επίσης δεν αφήνει κανένα «ίχνος» παραβίασης σε θέματα εγγύησης.

Τα αρχεία που πρέπει να κατεβάσουμε είναι:
α) Τα αρχεία RSPL/HSPL
Από αυτό το link στο XDA
Το αρχειο που θα κατεβασετε ειναι το DFT_XSPL_WP7FG3.rar

β) Τα αρχεία της RΟΜ
Από το XDA κατεβάστε τη RΟΜ για τη συσκευή σας όπως δίνονται links πιο κάτω. Σε όλες τις περιπτώσεις κατεβάζουμε την RΟΜ που έχει στο όνομα της τη λέξη ELL. Για κάθε ΡΟΜ έχει 3 links, προτιμήστε το 3ο που είναι στο filefactory

1. Trophy 
http://forum.xda-developers.com/showthread.php?t=1523976 
2. HD7 http://forum.xda-developer...php?p=16383783
3. Mozart http://forum.xda-developer....php?t=1205360
4. Surround http://forum.xda-developer...php?p=16379674
5. HTc 7 Ρro http://forum.xda-developer....php?t=1205111


Εγκατάσταση RSPL...

1. Εξαγάγουμε όλα τα αρχεία από το rar αρχείο του RSPL/HSPL που κατεβάσαμε το DFT_XSPL_WP7FG1.rar και τρέχουμε
(σαν administrator) το αρχείο DFT_RSPL_WP7FG1_LAUNCH.exe.


2. Κλείνουμε με power off το τηλέφωνο και κρατώντας πατημένο το Volume-Down (μέχρι να εμφανιστεί η οθόνη OSLP με τα 3 χρώματα) το ανοίγουμε και πάλι. Στο κάτω μέρος της οθόνης έχει την λέξη Serial.

H εικόνα είναι από HD7 με HSPL. H Δική σας θα έχει διαφορετικά στοιχεία.

3. Συνδέουμε το τηλέφωνο στον υπολογιστή και περιμένουμε να εγκατασταθούν οι drivers (αν το έχετε ξανακάνει δεν θα περιμένετε καθόλου).

4. Όταν τελειώσει η εγκατάσταση των drivers από τα Windows και είναι όλα εντάξει η λέξη serial θα γίνει USB.
Στην εφαρμογή που τρέχει πατάμε το next και θα αναγνωριστεί το τηλέφωνο μας. Αν όχι τότε ελέγξτε το καλώδιο (πρέπει να είναι το original), την θύρα USB και τέλος τους Drivers που πρέπει να έχουν εγκατασταθεί σωστά.

5. Μετά την αναγνώριση του τηλεφώνου, διαλέξτε από την λίστα της εφαρμογής, την έκδοση OSLP με βάση αυτό που γράφει στο τηλέφωνο. Οι οδηγίες της εφαρμογής είναι ξεκάθαρες. Αν έχετε mango διαλέξτε το 10.

6. Πατήστε επόμενο και όταν τελειώσει η εγκατάσταση, η συσκευή θα κάνει επανεκκίνηση σε RSPL.
Aν στην οθόνη του τηλεφώνου δείτε «CotullaRSPL» τότε έχει εγκατασταθεί σωστά το RSPL και είμαστε έτοιμοι για το φλασάρισμα της RΟΜ. Αν όχι τότε κάπου κάνατε λάθος και πρέπει να επαναλάβετε τα βήματα από την αρχή.

7. Αφήστε το τηλέφωνο όπως είναι και πάμε για την RΟΜ.

Εγκατάσταση RΟΜ..

1. Αφού έχουμε ήδη κατεβάσει την RΟΜ εξάγουμε όλα τα αρχεία της σε ένα κατάλογο

2. Από τον κατάλογο τρέξτε το αρχείο ROMUpdateUtility.exe (σαν administrator), ακολουθείστε τις οδηγίες στην οθόνη και θα αρχίσει η διαδικασία φλασαρίσματος. Χρειάζεται περίπου 8-10 λεπτά και μόλις τελειώσει θα κάνει επανεκκίνηση και θα έχετε την νέα RΟΜ στο τηλέφωνο σας.

Η διαδικασία είναι πολύ εύκολη και απλή. Στο μόνο σημείο που μπορεί να κολλήσετε είναι στη σύνδεση με το usb και τους drivers. Προτείνεται να κάνετε τη διαδικασία σε φορητό υπολογιστή (για το φόβο διακοπής ρεύματος) που τρέχει Windows 7, καθώς αναφέρονται πολλά προβλήματα με την σύνδεση και drivers σε Windows XP.

Για τα Ελληνικά στην πρώτη σύνδεση μετά το φλασάρισμα θα σας ζητήσει τη γλώσσα και επιλέξτε Ελληνικά. Αν βάλουμε παντού Ελληνικά στις ρυθμίσεις τότε το πλήκτρο της αναζήτησης θα μας πηγαίνει στο site του Bing (www.bing.com) και όχι στην εφαρμογή Bing. Για να το αλλάξετε αφού τελειώσετε την εγκατάσταση πηγαίνετε στις Ρυθμίσεις/Περιοχή + Γλώσσα και στο τέλος της λίστας αλλάξτε σε Αγγλικά Ηνωμένου Βασιλείου την ρύθμιση Γλώσσα Αναζήτησης/Προγράμματος Αναζήτησης.

Καλό φλασάρισμα ...


Nα θυμισω οτι ο πιο πανω οδηγος δημοσιεύτηκε για πρωτη φορα απο μενα στο myphone στις 7 Αυγ 2011 (ΕΔΩ) 

Οδηγος: Δημιουργια USB Y cable και Gold Card για τηλεφωνα HTC


Καλημερα σημερα θα ασχοληθω με ενα θεμα που απασχολει πολλους κατοχους HTC smartphones.
Αν εχουμε κανει ολα τα update στο τηλ μεχρι και την tango (8773) τοτε δεν μπορουμε να βαλουμε custom roms. O μονος τροπος για να φλασαρουμε ειναι με την μεθοδο Gold Card & USB Y cable ...
ΜΗΝ ΠΡΟΣΠΑΘΗΣΕΤΕ ΝΑ ΒΑΛΈΤΕ HSPL ΜΕ ROM ΠΟΥ ΕΧΕΙ BOOTLOADER 4.XXX ΚΑΙ ΠΑΝΩ

Οι πιο κατω πληροφοριες ειναι κατα κυριως απο αυτο το θεμα sto XDΑ  και εχουν συμπληρωθει απο φωτο και πληροφοριες που κατα καιρους εχω μαζεψει απο το διαδυκτιο.
Η διαδικασια ειναι ευκολη αν ακολουθησουμε τις οδηγιες κατα γραμμα αλλα πρεπει να ξερουμε τι κανουμε.
Με λιγα λογια ειναι για προσωρημενους χρηστες ..




GOLD CARD & USB
Eιναι πολυ ευκολο να φτιαξουμε ενα usb Y καλωδιο απο μονοι μας και θα σας δωσω εδω οδηγιες  Το καλωδιο ειναι στην μια ακρη του αρσενικο και οι δυο αλλες ακρες ειναι θηλυκες. Στην ακρη που ειναι αρσενικο βαζουμε τον φορτιστη του τηλεφωνου και στις αλλες στην μια θα συνδεσουμε το usb stick (η μια memory card) και στην αλλη με το usb καλωδιο το τηλεφωνο







ΠΩΣ ΦΤΑΧΝΟΥΜΕ ΤΟ ΚΑΛΩΔΙΟ
Παιρνουμε 2 καλωδια προεκτασης usb (αρσενικο-θηλυκο) και τα κοβουμε. Κραταμε τις 2 θηλυκες ακρες και μια αρσενικη. Καθε καλωδιο usb εχει 4 καλωδια με χρωματα ΑΣΠΡΟ-ΠΡΑΣΙΝΟ (για data) ΚΟΚΚΙΝΟ-ΜΑΥΡΟ (για ρευμα). Απο το αρσενικο θα χρειαστουμε μονο τα ΚΟΚΚΙΝΟ κ  ΜΑΥΡΟ (το πρασινο ασπρο δεν θα τα χρησιμοποιησουμε καθολου).
Με τον τροπο που φαινετε στην φωτο διπλα ενωνουμε τα 3 ΜΑΥΡΑ και τα 3 ΚΟΚΚΙΝΑ καλωδια μεταξυ τους και το ιδιο για τα 2 ΑΣΠΡΑ και τα 2 ΠΡΑΣΙΝΑ. Τα κολαμε με μονωτικη ταινια και το USB Y καλωδιο ειναι ετοιμο.





ΠΩΣ ΦΤΙΑΧΝΟΥΜΕ ΤΗΝ GOLDCARD
Χρειαζομαστε μια sd η microSD καρτα μνημης μεγεθους 1GB τουλαχιστον και ενα cardReader για να την διαβασουμε. Αν δεν εχετε καρτα δοκιμαστε με καποιο usb stick. Δεν δουλευουν ολα αλλα ισως ειστε τυχεροι...
1. Φορμαρουμε την καρτα (η το στικακι) σε FAT32 και Allocation unit size να ειναι  "4096"
2. Τρεχουμε το αρχειο Goldcardtool.exe (με δεξι πληκτρο επιλεγουμε "Run as Administrator") 
3. Επιλεγουμε την καρτα μας απο την λιστα (htc mmc) και μετα παταμε το κουμπι "Load Goldcard.img και επιλεγουμε αυτο το αρχειο  goldcard.img .
(Επειδη το λινκ ειναι νεκρο φτιαχνουμε το αρχειο απο αυτο το σαιτ )
Μολις φορτωθει και αυτο παταμε το κουμπι "Patch MMC" και περιμενουμε μεχρι να τελειωσει και να βγει το μηνυμα που θα λεει αν πηγαν ολα καλα

Αυτο ηταν ..Τωρα εχουμε ενα USB Y και μια Gold Card  και ειμαστε ετοιμοι να κανουμε debrand η downgrade οποιοδηποτε τηλεφωνο της HTC ...

Ακολουθει ο οδηγος για το φλασαρισμα HSPL και Custom ROMs ...



Saturday, September 15, 2012

Exploring an App for SharePoint 2013 Visual Studio 2012 project – SharePoint hosted apps

After having installed Visual Studio 2012 together with the Microsoft Office Dev Tools which are distributed with the Web Platform Installer 4.0 (Just search for Office within Web PI) you can start building your first SharePoint 2013 apps. There is only one project type for building SharePoint 2013 apps.

After having selected the SharePoint 2013 app template, you will need to decide what type of app you want to build.

Let’s start with exploring what is included in the Visual Studio 2012 project after you have selected SharePoint hosted app.

Visual Studio 2012 SharePoint 2013 App structure:

  • Features folder – which contains a .feature configuration file, which is used to deploy features to the server that's running SharePoint. This file is typically edited using the VS Feature Designer
  • Package folder - which contains a Package.package file, which is used to deploy the solution to the server that's running SharePoint.
  • Content folder
            • App.css : CSS file to style your SharePoint 2013 app. For guidelines about the different styles take a look at Apps for SharePoint UX design guidelines
            • Elements.xml: provisions the CSS file into the App web
  • Images folder
          • AppIcon.png : serves the icon for the app in the home page
          • Elements.xml: provisions the icon into the App web
  • Pages folder
          • default.aspx : Main/starter page of the app which is shown in full screen mode. Every app needs a least one page likes this. Appmanifest.xml points to this app starter page
          • Elements.xml: provisions the default.aspx file into the App web
  • Scripts folder
          • App.js – Script file for adding your own Javascript logic
          • JQuery-1.6.2.js – If you are not familiar with JQuery yet – you should definitely pick up some learning material on this topic – it is quite essential for building SharePoint 2013 apps. In essence JQuery is a Javascript library which allows you to easily select and manipulate items in the DOM. See JQuery.com for more information
          • JQuery-1.6.2.min.js – Minified version of the JQuery library
          • JQuery-1.6.2.vsdoc.js – Used to provide intellisense capabilities – see How do I get intellisense for JQuery? for more info
  • Root of the project
          • Appmanifest.xml - defines the various elements of the SharePoint 2013 app itself. The appmanifest.xml tells SharePoint what it must know about the app and defines the app's most important properties such as ProductID, Version, Title, Tile and StartPage Urls
            , different AppEvent Urls: Installed, Uninstalling, Upgraded and the App Permission requests.
          • For more information, see Explore the app manifest and the package of an app for SharePoint
          • Packages.config - When creating a SharePoint 2013 app  project in Visual Studio 2012, NuGet packages are used for the JQuery libraries. This means that instead of using whatever version is installed on your machine (via the SDK), Visual Studio will pull the latest version from NuGet. You can see this by looking into the packages.config file in your project.

If you take a look at default.aspx you will notice the following javascript snippet added in to the page – this is quite important – and provides the binding with the business logic which is added into app.js

   1: <script type="text/javascript">



   2:     $(document).ready(function () {



   3:         SP.SOD.executeFunc('sp.js', 'SP.ClientContext', function () { sharePointReady(); });



   4:     });



   5: </script>




The snippet above uses the jQuery document ready event handler – “ $(document).ready(function())” to call SP.SOD.ExecuteFunc(). This is an example of a common pattern in Javascript called anonymous function calls. SP.SOD.ExecuteFunc(key,functionname,fn) ensures that the specified file - sp.js - that contains the specified function – SP.ClientContext - is loaded and then runs the specified callback.



So when both the DOM and SP.js are loaded and the ClientContext object is initialized the code will call the sharePointReady() function which is located in App.js.



If you look at the code in App.js – you will notice that the general way of working with the  Javascript Client Object Model hasn’t changed a lot in SharePoint 2013.





   1: // The code creates a context object which is needed to use the SharePoint object model



   2: function sharePointReady() {



   3:     context = new SP.ClientContext.get_current();



   4:     web = context.get_web();



   5:  



   6:     getUserName();



   7: }




References:







About intent, recall, relevance and precision of search solutions

One of the challenges of designing a good search solution is understanding the range of different search requirements from users. When you look at the Google search screen (or a SharePoint search center screen for that matter) it is quite minimalistic. The trick is to look for the intention of the user who is performing a search operation.

So what is the user looking for?

Key in delivering a good search result is the fact whether the search engine has understood the unstated question. Traditional metrics which are commonly used to measure the efficiency and effectiveness of search are the following:

  • Relevance = whether a document is relevant depends on your intent in the search. Basically, relevant results will help you achieve the goals that made you perform the search in the first place
  • Recall = the amount of total relevant documents which are retrieved by your search. A good recall means that not many documents are missing. If you know that there are 1000 relevant documents and the search would retrieve 100, the recall would be 10%. This metric is quite hard to measure in real life and is you should use this during a search validation phase where you are using a controlled, experimental environments.
  • Precision: the percentage of relevant documents in relation to the number of documents retrieved. If your search retrieves 100 documents and 20 of these are relevant, your precision is 20%. The opposite measure is called fallout, if you retrieve 100 documents and 20 are relevant, your fallout is 80%. Fallout becomes a bigger problem as the size of your search corpus become larger and your retrieved result set also gets larger. Scanning 80 irrelevant documents to fin 20 relevant ones may not be so bad, but with a 1000 results returned – this can be quite painful. Precision and recall typically go in opposite directions, when the query is broad, the recall is high, but precision is low and vice versa ….

The measure with which it all start is relevance – and relevancy is dependent on the intent of the user. In any organization there will be a range of different search requirements from users, depending on the purpose for which they are searching. If you are serious about building a good search experience you should identify common tasks that user are trying to achieve when performing a search. These requirements are best identified though the development of search personas and scenarios. For more information on identifying personas and search information design take a look at the links listed below:

Monday, September 10, 2012

Visual Studio 2012 Virtual Launch Event September 12th

Don’t forget to mark September 12th 9:30 AM Pacific Time (for Belgium – 18:30 PM) in your agenda and follow the Visual Studio 2012 Virtual Launch event on http://www.visualstudiolaunch.com

Thursday, September 6, 2012

Phone Call screen in Windows Phone

   I've wanted to write this post for quite a while but I've always postponed it as it is a very subjective matter. In the end I decided to write my opinion. Windows Phone is really great but there are some aspects that could be improved and seem that have been designed in a hurry and never finished. One of this aspects, and it is not what this post is about, is the Application List. It is ugly and not very usable. How is it possible that Windows Mobile had before anyone else folders/groups but they are still missing in Windows Phone after more than 2 years? The application list really needs improvements/redesign.
    This post instead is about the Phone call screen. I've have always had problems with my windows phone devices starting with the Omnia 7 and ending with my Lumia 800 (I've actually tried 3 different Lumia 800 all of them gave me the same problem). The short story is that I am able to drop the call with my face by pressing the Endcall button, put the call on speaker, put it on mute or hold. I am not the only person that has these problems: my wife has the same problem with her new Lumia 710 and also heard from other people. It is a combination between the proximity sensor that activates the screen and the way I am holding the phone. So I've wondered if maybe there is a better location for the Endcall button.
    Lets start with a photo I've found on the web  (have no idea who she is) :
 
If you look at the way she is holding her phone (which I think is 90% of the cases) the upper part of the screen is in contact with the face. Let's presume that by a faulty behavior (bad driver, hardware fault, OS fault or the fact that the hardware and the software are not designed by the same company) the screen turns on while you talk. The highest probability to touch the screen with the face is in the upper half of the screen. Let's see what it means in Windows Phone:
So it is Endcall, Speaker, Hold, and Mute (exactly my case).

If you look again at the picture you can see that the less exposed part of the touchscreen(so the better choice for the buttons location)  is the lower part of the screen. The lower you go the smaller the probability is, so the best choice for the End call button is the lower part of the screen (this way you minimize the probability to press the button on faulty behavior). This is exactly (I don't know if this is the reason) what iPhone and Android did:
Both of them have chosen to put the End call button near the lower part of the touch screen. For Android (which also depends on the hardware implementation) Google concentrated all the buttons at the lower part of the screen. On the iPhone they kept the other buttons in the center region but they do have really good control over the hardware and putting a call on hold or mute is not as bad as dropping the call.
So it would be better to move the buttons in the lower part of the screen. The blank space could be filled with social information, last call, email, sms. 
Hope we will see some improvements in Phone Call screen in Windows Phone 8
NAMASTE

Tuesday, September 4, 2012

Exploring the REST API options in SharePoint 2013– Part I

In SharePoint 2010 the Client Side Object Model (CSOM) was made available through the _vti_bin/client.svc. Client.svc wasn’t really build to be accessed directly but calls would go through supported entry points (proxies)  being the 3 flavours of the CSOM:

  • Silverlight Client Side Object Model
  • Javascript Client Side Object Model
  • .Net Client Side Object Model

Unfortunately the Javascript CSOM was harder to use then the managed version and also more limited in functionality. SharePoint 2010 also provided oneREST/oData enabled service called  ListData.svc also referred to as WCF Data Services (See Introduction to oData and SharePoint Server 2010 for more info)

In SharePoint 2013 the client.svc service is extended with REST capabilities and it now support direct access from REST clients which makes it easier for javascript and non .NET code to access it.  There is also a new shorthand notation for accessing the REST API where CSOM URLs can go through the _api folder.

This means that you can now replace

http://sharepoint/_vti_bin/client.svc/web

with

http://sharepoint/_api/web

The new SharePoint 2013 REST API follows the oData protocol specification but also extends it in some ways to support more complex SharePoint specific operations. The SharePoint 2013 Preview REST service responses are formatted by using the Atom protocol by default. But it is also possible to use HTTP Accept headers that enable you to specify that the response is returned in JSON format which is easier to use in Javascript code.

Since a number of REST calls are simple GET operations it is possible to learn the syntax by creating the URL in a browser and looking at the ATOM response being returned. Next are a number of examples to get you started:

  • https://[yoursharepointsite]/_api/web/ – access a specific site and retrieves different properties
  • https://[yoursharepointsite]/_api/web/?$select=Title,Id – only retrieves the Title and ID for a specific site
  • https://[yoursharepointsite]/_api/lists  - retrieves all lists on a specific site
  • https://[yoursharepointsite]/_api/lists/getByTitle(‘Consultants’) – retrieves a single list based on the title used
  • https://[yoursharepointsite]/_api/lists/getByTitle(‘Consultants’)/Items – retrieves all items in the list with all the fields returned
  • https://[yoursharepointsite]/_api/lists/getByTitle(‘Consultants’)/Items/?$select=Title,LastName – retrieves for all items in the list only the Title and LastName field
  • https://[yoursharepointsite]/_api/web/lists/getByTitle('Consultants')/Items/?$select=Title,FirstName&$filter=startswith(Title,'C') – retrieves  items in the list where the Title starts with a C and retrieves the Title and LastName field

In a next post I’ll explore the extensions in the REST API for SharePoint Server 2013.

More information:

What MediaLibrary needs/is missing (Windows Phone)


      As we (average developers :) ) still don’t have access to the Windows Phone 8 SDK I decided to write a post on the current MediaLibrary limitations for Windows Phone. I only hope that someone from the team will read this post and maybe there is still time to improve some aspects in the new version. Everything here is my personal  opinion.

So what is missing from the MediaLibrary?

1.     The Token property exposed on the Picture object

The most important for me. Why? Let’s open Internet Explorer on the emulator and go on a webpage that has a picture in it, tap-n-hold and save it twice. If we use Windows Phone commands to launch the Pictures hub in the emulator and go to the Saved pictures album we will see both pictures (same picture but different items). Now let’s create a new project and see what we can get using the MediaLibrary class. I will use this simple code to debug and stop on the pictures to watch its properties:

MediaLibrary ml = new MediaLibrary();
//MediaPlayer.Queue.ToString(); ;
varalbums = ml.RootPictureAlbum.Albums;
foreach(var album in albums)
if (album.Pictures.Count>0)
foreach(Picture pct in album.Pictures)
{
boolstophere = true;
}


  
We can see both pictures but the BIG problem is that the only way to differentiate between the two of them is the Date property (not very elegant, Handle is not public property). The Token property  makes a lot of sense to tell which picture is which (maybe also a Path member could be added but Token is way better as we already have the method to open a picture from its Token and you won't have to iterate all the MediaLibrary just to get the picture we want).

This property should be fairly easy to add as it already exists internally (when we use the PhotoChooser we will get the token associated with the selected picture and we will be able to open the picture) . 

The token could be extended also to the PictureAlbum class. It doesn’t make much sense to iterate the MediaLibrary to find a specific album if I already know what PictureAlbum I want.

2.     The possibility to create new picture albums

In this moment the Pictures Hub already has built-in albums but it is not possible to create new albums directly from the phone. It is possible to do it from Zune (which will not be used anymore) but it is not a trivial task (at least till you understand how it works). So we are mainly stuck with two “containers”: Camera Roll and Saved Pictures which is not enough for a device that theoretically could hold up more than 1GB of photos. From here the need to have tools to organize your photos better by creating new albums and copying/moving photos between albums. Maybe it is a little late to implement it in the "standard" WP8 UI as we are two months away from the official launch of the first phones on the market but maybe not too late to add the functionality in the development tools so the developers can implement it in their apps. This way a photo app could create its album and then the users will know in which album to look when they want to find pictures modified/created by a certain app.

3.     Access to the videos on the device

Needed since the first version of windows phone but still no sign of it. Videos are an important part of the device media and developers need access to this part of the MediaLibrary to enable applications like video processing, video backup, video creation and more.

4.     Make the Favorites Pictures album work

This functionality already exists in the Windows Phone Mango/Tango but it doesn’t work in the current version of the SDK. I’ve already posted a question on the forum with no answer till now. The count of the Favorites album is always 0.


5.     Enable MediaLibrary access in the background task

Useful for applications that want to backup the pictures from the device automatically. If it’s a problem of security see 6 but if the user already agreed at some point (capabilities, ask permission) it doesn’t make sense to lock the access to the medialibrary from the background tasks.

6.    Security/capabilities

I think the current ID_CAP_MEDIALIB  is too generic. It would be better to have specific CAP for pictures, videos and songs. They are pretty distinctive and a photo editor wouldn't need access to the songs on the device? Also the user should be warned that his photos might contain GPS data in the EXIF header and he should agree to let the application access those informations.

P.S. Almost all of the features requested are already implemented in the iOS development tools.

NAMASTE

Monday, September 3, 2012

SharePoint 2013 App Developer videos

There is lot of hours of video material available  around building apps for SharePoint – check out SharePoint 2013 Developer training videos for all modules.  To get you started you should  with SharePoint 2013 app development, you should definitely take a look at the following modules (in total around 7 hours of training material around SharePoint 2013 app development alone)

  • Module 1 – Introduction to Office 2013 and SharePoint 2013 development
          • New features for Office 2013 and SharePoint 2013 (00:06:59)
          • App scenarios for Office 2013 and SharePoint (00:06:20)
          • Development options for Office 2013 and SharePoint 2013 (00:10:20)
  • Module 5 – SharePoint 2013 app model for developers
          • Why apps for SharePoint 2013? (00:04:16)
          • Introducing the app model for SharePoint 2013: Part I (00:19:46)
          • Introducing the app model for SharePoint 2013: Part II (00:20:07)
  • Module 6 – SharePoint 2013 developer tools
          • Development model for apps for SharePoint 2013 (00:21:45)
          • Design Patterns for apps for SharePoint 2013 (00:12:59)
          • Create SharePoint 2013 app projects (00:19:37)
          • Package and deploy apps for SharePoint 2013 (00:11:55)
  • Module 7 – Create hosted apps in SharePoint 2013
          • SharePoint hosted-apps model for SharePoint 2010 (00:21:34)
          • SharePoint hosted app model for SharePoint 2013 (demo - 00:15:28)
          • Using Javascript and Jquery for SharePoint 2013  (00:26:25)
          • Using Javascript and Jquery for SharePoint 2013 (demo - 00:20:36)
          • SharePoint 2013 chrome control (00:11:47)
    • Module 8 – Create cloud-hosted apps for SharePoint 2013
        • SharePoint 2013 App Hosting models (00:16:07)
        • Developer hosted apps for SharePoint 2013 (00:21:31)
        • Windows Azure auto-provisioned apps for SharePoint 2013 (00:13:19)
    • Module 9 – SharePoint 2013 client object model (CSOM) and REST API
          • SharePoint 2013 strategy for SharePoint client object model (CSOM) and REST (00:09:13)
          • Programming SharePoint client object model (CSOM) with C# and Javascript for SharePoint 2013 (00:16:03)
          • SharePoint 2013 REST and oData fundamentals (00:17:58)
          • Making REST calls with C# and Javascript for SharePoint 2013 (00:17:30)
          • Making REST calls with C# and Javascript for SharePoint 2013 (demo - 00:17:43)
    • Module 10 – oAuth and application identity in SharePoint 2013
        • SharePoint 2013 application identiy and permissions (00:15:56)
        • Requesting and granting application permissions in SharePoint 2013 (00:16:54)
        • SharePoint 2013 oAuth implementation (00:21:01)
        • Authentication using server-to-server high trust in SharePoint 2013 (00:18:46)

Happy SharePoint-ing