Hurtig & Let: Opret en mappe og tildele en indholdstype (Eller, Har din KPI'er og spise dem også)

For at løse et KPI-problem Jeg skrev om her, Jeg gjorde nogle test og opdagede at KPI arbejde mod mapper med metadata på samme måde, at de arbejder mod dokumenter eller listeelementer. Jeg viste det ud ved at oprette en ny indholdstype baseret på content mappetype og derefter tilføjet et par felter. Jeg lavet nogle indikatorer og viste sig til mig selv, at KPI'er arbejde som forventet. Dette var velkommen nyheder. Det er ikke perfekt, fordi drill-down får du fra er KPI mod mapperne ikke præcis hvad du vil. Dette er ikke for meget en ulempe i mit tilfælde, fordi 1) slutbrugere, der ikke kender nogen bedre og 2) drill-down går til en mappe. De klikker på mappenavnet, og de er på varen. Det er to klik i stedet for en, der er ikke slutningen af verden.

Det flød pænt med det arbejde jeg lavede. Jeg opretter en mappe til hvert dokument, der bliver uploadet. Dette gøres via en begivenhed modtager. Som et resultat, Det er en smal til at holde den overordnet mappes metadata i sync med KPI-drevet metadata fra selve filen da VVS er allerede på plads. Dette giver mig mulighed for at have mine KPI'er og også spise dem 🙂

Jeg ændrede begivenhed-modtager for at tilføje mappen og derefter angive denne nye mappe indholdstype til min brugerdefineret KPI-venlige indholdstype. Denne bit af kode gjorde tricket:

 SPFolderCollection srcFolders = targetWeb.GetFolder("Dokumenter").Undermapper;
  SPFolder addedFolder = srcFolders.Add(egenskaber.ListItem.ID.ToString());
  SPContentTypeId kpiCT = nye SPContentTypeId("0x0120002A666CAA9176DC4AA8CBAA9DC6B4039F");
  addedFolder.Item["Content-Type ID"] = kpiCT;
  addedFolder.Item.Update();

Til at finde det faktiske indholdstype-ID, Jeg adgang til denne indholdstype via indstillinger for websted og kopi/indsat det fra URL-adressen som vist:

billede

</slutningen>

Abonner på min blog!

Technorati Tags: ,

Hurtig og nem: Få SPFolder af en SPListItem i en begivenhed Receiver

Jeg hader at indrømme det., men jeg kæmpede med denne ene alle dag. Min begivenhed modtageren skal opdatere et felt i den overordnede mappe. Dette lidt viser hvordan man gør det:

privat void UpdateParentFolder(SPItemEventProperties egenskaber)
{

SPFolder thisItemFolder = egenskaber.ListItem.File.ParentFolder;
thisItemFolder.Item["ZZ godkendelsesstatus"] = "Gode nyheder, alle!";
thisItemFolder.Item.Update();


} // UpdateParentFolder

I dette tilfælde, Jeg arbejder med et dokumentbibliotek og egenskaber kommer fra en ItemAdded begivenhed.

Tricket er at du ikke kan få SPFolder af varen direkte fra selve emnet (dvs. egenskaber.ListItem.Folder er null). I stedet, gå til listeelementets tilknyttede fil og få den filmappe.

</slutningen>

Abonner på min blog!

Technorati Tags:

Endnu en anden begivenhed modtager Debug Trick

Jeg er sikker på, jeg ikke er den første person til at komme med denne. Dog, Jeg har ikke bemærket nogen udgiver et trick som det siden jeg startede med større opmærksomhed til Fællesskabet i juli. Så, Jeg tænkte jeg ville sende det denne hurtig og nem debug tip.

Jeg arbejder på en event-modtager, der begyndte at generere denne fejl i den 12 hive:

Fejl lastning og kører hændelse receiver Conchango.xyzzyEventReceiver i xyzzy, Version = 1.0.0.0, Kultur = neutral, PublicKeyToken = blahbalhbalh. Yderligere oplysninger finder du under. : Objektreferencen er ikke indstillet til en forekomst af et objekt.

Jeg vidste ikke hvor jeg havde introduceret denne fejl, fordi jeg havde gjort alt for mange ting i en af min kode/installere/test cykler.

Jeg har prøvet Denne løsning at få min FBF derinde med håb at SharePoint 12 hive ville vise staksporingen, men uden held. Jeg ved ikke, hvis det er muligt, og hvis nogen ikke, Lad mig vide 🙂

Jeg ved, at det er muligt at skrive din egen log beskeder til den 12 hive. Helt ærligt, Jeg ønskede noget lidt mindre skræmmende og hurtigere at gennemføre.

Den forekom mig, at jeg i det mindste kunne få nogle grundlæggende sporingsoplysninger ved fangst og re-throwing generic undtagelser som denne:

  Prøv {
    UpdateEditionDate(egenskaber);
  }
  fangst (Undtagelse e)
  {
    kaste nye Undtagelse("Dispatcher, UpdateEditionDate(): Undtagelse: [" + e.ToString() + "].");
  }

Dette viste i den 12 hive thusly:

Fejl lastning og kører hændelse receiver Conchango.xyzzyEventReceiver i xyzzy, Version = 1.0.0.0, Kultur = neutral, PublicKeyToken = blahblahblah. Yderligere oplysninger finder du under. : Senderen, UpdateEditionDate(): Undtagelse: [System.NullReferenceException: Objektreferencen er ikke indstillet til en forekomst af et objekt. på Conchango.xyzzyManagementEventReceiver.UpdateEditionDate(SPItemEventProperties egenskaber) på Conchango.xyzzyManagementEventReceiver.Dispatcher(SPItemEventProperties egenskaber, Streng eventDescription)].

Der gav mig alle detaljer I needed at opspore dette problem, og jeg forventer at bruge det et parti går fremad.

</slutningen>

Abonner på min blog!

Søndag Funny: “IKKE TIL EKSPORT”

Tilbage i nærheden af 1998, virksomheden jeg arbejdede på tidspunktet modtaget nogle midler til at skabe et nyt produkt, e-handel. Vi havde hele viften af forretningskrav til at opfylde. Det skulle være hurtig, let for slutbrugere, prangende, multi-sprog, osv. Trist at sige, Jeg ikke har sandsynligvis haft som en ambitiøs række arbejde at udføre siden de berusende dage.

Denne indsats præ-dateret Microsoft.NET. Plain vanilla ASP var stadig noget nyt (eller mindst meget uvant for min virksomhed). "Mursten og mørtel" virksomheder blev dømt. Dømt! Dette er for at sige, at det banebrydende arbejde. Ikke Hadron Collider pionerarbejde, men for os i vores lille verden, det banebrydende arbejde.

Vi var vanvittigt travlt. Vi lavede mini POCS næsten hver dag, regne ud, hvordan at opretholde staten i sagens natur statsløse medium, regne ud, multi-language spørgsmål, rækkeniveau sikkerhed. Vi havde endda oprette et ordforråd til at definere grundlæggende begreber (Jeg foretrak stat-vedvarende men nemlig noget anledning, det akavet "statefull" vandt dag).

Da vi vildt opfinde dette produkt, markedsførings- og folk var ude der forsøger at sælge det. En eller anden måde, de formåede at sælge det til vores mareridt. Selv om vi var at designe og gennemføre en virksomhedsløsning, vi virkelig forvente ikke den første kunde til at bruge hver eneste funktion vi indbygget i produkt dag nul. Denne kunde havde brug for flere sprog, en radikalt anderledes brugergrænseflade fra "standarden" system, men med den samme forretningslogik. Multi-sprog var især hårdt i dette tilfælde, fordi vi altid fokuseret på spansk eller fransk, men i dette tilfælde, Det var kinesiske (der er en dobbelt-byte tegnsæt angivet og kræver speciel håndtering i betragtning af den teknologi, vi brugte).

Hurtigt frem er et par måneder, og jeg på en Northwest airlines fly til Beijing. Jeg har været så travlt med at forberede til denne tur, som jeg har næsten ingen idé om hvad det vil sige for at gå der. Jeg havde læst en bog engang om hvordan en amerikansk havde været i Kina i flere år og havde lært sproget. En dag han var omvandrende byen og spurgte nogle mennesker for retninger. Samtalen gik noget dette:

  • Amerikansk: "Kan du fortælle mig hvordan man kommer til [XX] Street?"
  • kinesisk: "Sorry, Vi taler ikke engelsk".
  • Amerikansk: "Åh, godt taler jeg Mandarin." og han spurgte dem igen i kinesisk, men mere klart (så godt han kunne).
  • kinesisk: Meget høfligt, "Sorry, Vi taler ikke engelsk".

Samtalen gik, nemlig bit og amerikanske gav op i frustration. Da han forlod dem overhørte han en mand taler til den anden, "Jeg kunne har svoret, han spurgte om vej til [XX] Street."

Jeg havde samlet op et par stumper og stykker af andre Kina-relaterede kvasi oplysninger og "gode råd":

  • En koreansk Co arbejdet fortalte mig, at jeg skulle være forsigtig med kineserne, fordi "de ville forsøge at få mig beruset og drage fordel af dig" i forstand af presser mig dårlig forretningsbeslutninger i.
  • Vi fik ikke lov til at køre bil (der var nogen forvirring, om dette var en brugerdefineret, et lovkrav eller bare klientens regel).
  • Der var særlige regler for at gå igennem tolden.
  • Vi fik ikke lov til at bruge amerikanske penge til noget.
  • Du er ikke meningen for at forlade tips. Det er fornærmende, hvis du gør.

Og endelig, Jeg havde forholdsvis friske erindringer den Tiananmen massakren. Da jeg var på college, Jeg husker at se real-time Usenet udstationeringer som kiggede i horror-verden.

Kort sagt, Jeg var meget nervøs. Jeg var ikke bare normal-nervøs i den forstand, at jeg levere en løsning, der var størrelsesordener mere kompliceret end noget jeg nogensinde havde gjort før. Jeg var også bekymret over ved et uheld bryde en regel, der kunne få mig i problemer.

Jeg er på dette 14 timers flyvning og selvom det var businessclass, 14 timer er forbandet lang tid. Der er kun så mange måder at underholde dig selv ved at læse, du ser film eller spiller med magnetiseret bestik. Endnu en rigtig god bog er svær at læse i flere timer straight.

Til sidst, Jeg begyndte at læse emballagematerialet på et stykke software jeg hånd-bærer med mig til klienten, Netscapes webserver. Jeg læser kravene til hardware/software, de markedsføring blurbs, ser man på det smukke billede og pludselig, Jeg nul i på gigant "ikke til eksport" Advarsel, noget om 128 bit kryptering. Jeg proppede boksen tilbage i min taske, Advarsel forsiden nedad (som om der ville have hjulpet) og forsøgte at holde visioner om Midnight Express ud af mit hoved.

Ser tilbage på det nu, Jeg skulle have været bekymrede, Hvis du på alle, da jeg forlod USA, ikke, da jeg var på vej ind Kina 🙂 Nothing uheldige sket, og jeg mener stadig, at for at være den bedste og mest mindeværdige forretningsrejse, jeg har haft fornøjelsen af ​​at gøre.

</slutningen>

Abonner på min blog!

Technorati Tags: ,

Løsning: SPQuery søger ikke mapper

Denne sidste uge jeg gennemførelsen af en "udvikler" løsning til en klient, der bruger BDC- og SPQuery og løb ind i nogle problemer med at bruge SPQuery mod et dokumentbibliotek, der indeholder mapper. Bundlinjen: tildele "rekursive" til attributten visning af forespørgslen.

Min scenario:

  • På mandag, Jeg uploade et dokument og levere nogle metadata.
  • Den følgende uge, Jeg uploade et nyt dokument. Meget af dette nye dokument metadata er baseret på det dokument, jeg har uploadet på mandag (som vi kalder "hoveddokumentet").
  • Vi har lavet en web service facade, der giver en BDC-venlige interface til listen, så brugerne nemt kan finde mandag dokumentet via en titelsøgning.
  • En BDC-datakolonne giver en brugervenlig grænseflade. (Dette er en del af mit forsøg på at bruge BDC til en mere venlig opslagskolonne).

Den endelige BDC-facade service bruger en forespørgsel som dette for at gøre opslag:

 // Brugt U2U værktøj til at hjælpe med at skabe denne CAML forespørgsel.
      oQuery.Query =
        "<Hvor>";

      Hvis (titleFilter.Length > 0)
        oQuery.Query  =
          "  <Og>";

      oQuery.Query  =
        "    <Og>" +
        "      <Geq>" +
        "        <FieldRef navn =  "DocumentId" />" +
        "        <Værditype =  "Text">" + minId + "</Værdi>" +
        "      </Geq>" +
        "      <LEQ>" +
        "        <FieldRef navn =  "DocumentId" />" +
        "        <Værditype =  "Text">" + maxId + "</Værdi>" +
        "      </LEQ>" +
        "    </Og>";

      Hvis (titleFilter.Length > 0)
        oQuery.Query  =
          "    <Indeholder>" +
          "      <FieldRef navn =  "Title" />" +
          "      <Værditype =  "Text">" + titleFilter + "</Værdi>" +
          "    </Indeholder>" +
          "  </Og>";
      oQuery.Query  =
        "</Hvor>";

Under den indledende fase af udvikling, Indeværende arbejdede stor. Dog, vi indført mapper i mappen til at løse nogle problemer og pludselig, min BDC-picker ville ikke returnerer nogen resultater. Jeg sporede det ned til det faktum, at SPQuery aldrig ville vende tilbage nogen resultater. Vi brugte mapper primært for at tillade flere filer med samme navn til at blive uploadet, men med forskellige metadata. Når filen er uploadet, vi oprette en mappe baseret på listeelementets ID og derefter flytte fil, der (Jeg skrev om, at Her; Vi har haft blandede resultater med denne tilgang, men på hele, det fungerer godt). Brugeren er ligeglad om mapper og faktisk, ikke rigtig forstå at der er nogen mapper. Vi har konfigureret alle visninger på biblioteket for at få vist elementer mapper.

Jeg ramte problemet dobbelt så den tekniske gennemførelse udviklet sig og løst det forskelligt hver gang. Første gang, Jeg var ikke bruge operatoren indeholder i forespørgslen. Uden en indeholder operatør, Jeg var i stand til at løse problemet ved at angive visningen på den SPQuery pause. Istedet for benytter standardkonstruktøren:

SPList.Update() oList = web.Lister["Dokumenter"];

SPQuery oQuery = nye SPQuery();

I stedet brugte jeg en konstruktør, der er angivet en visning:

SPList.Update() oList = web.Lister["Dokumenter"];

SPQuery oQuery = nye SPQuery(oList.Views["Alle dokumenter"]);

At løst problemet og jeg begyndte at få mine resultater.

Jeg tilføjede derefter operatoren indeholder i mikset, og det brød igen. Det viser sig, at operatoren indeholder, så vidt jeg kan fortælle, virker ikke med visningen på samme måde som i en enklere GEQ / LEQ operatører. Jeg gjorde nogle søger og lært at forespørgslens ViewAttributes skal angives til "Rekursiv", som i:

oQuery.ViewAttributes = "Omfang = "Recursive"";

Det løste problemet for indeholder. Faktisk, dette også løst mit oprindelige søgning problem og hvis jeg havde angivet rekursivt attributten første gang, Jeg ikke ville have køre ind på spørgsmålet igen.

Det faktum, at en visningsbaseret SPQuery virker for nogle operatører (GEQ/LEQ) og ikke andre (INDEHOLDER), kombineret med det faktum, at KPI'er ikke synes at arbejde på alle med mappe, der indeholder dokumentet biblioteker fører mig til at tro, at SPQuery har nogle orthogonality spørgsmål.

Særlig tak:

  • De gode folk på U2U og deres forespørgselsværktøj.
  • Michael Hoffer store "læring ved at gøre" blog-indlæg, kommentarer og svar.

</slutningen>

Abonner på min blog!

MOSS KPI-bug? Listen indikator bundet til dokumentbiblioteket med mapper

OPDATERING 02/29/08: Jeg løste dette problem ved at oprette en mappe og derefter tildele en indholdstype til den mappe, som har metadata jeg har brug for KPI'erne. Jeg beskrev det lidt nærmere her.

Vi har gennemført en teknisk løsning, hvor brugerne uploade dokumenter i et dokumentbibliotek. En event modtager en mappe og flytter filen til denne mappe (ved hjælp af en teknik svarende til, hvad jeg skrev om Her). Vi har med held navigerede rundt de potentielle problemer forårsaget af hændelsesmodtagere, at omdøber uploadede filer (primært fordi brugerne aldrig starte deres dokument ved at klikke på "New" men i stedet skabe docs lokalt og derefter uploade dem).

Meta-data for disse dokumenter indeholder en Ja/ingen webstedskolonne kaldet "haster" og en anden webstedskolonne kaldet "Status". Vi har brug at møde en virksomhed krav, der viser procentdelen af "haster" dokumenter, hvis status er "Ventende".

Dette er normalt nemt at gøre og beskrev jeg noget meget lignende på SharePoint Beagle med masser af billeder af skærmen hvis du er interesseret.

I en nøddeskal, Jeg gjorde følgende:

  • Oprette en visning på doc bibliotek kaldet "Afventer".
  • Konfigurere visningen for at ignorere mappestruktur.
  • Oprette en KPI-liste.
  • Opret en indikator på listen, der peger på doc lib og der "afventer" Se.

Dette blot virker ikke. Nøgletallet viser mit mål (strømsparetilstand. fem hastende dokumenter) men altid viser det faktiske antal hastende dokumenter som nul. Paradoksalt nok, Hvis du bore ned detaljer, Det viser de fem hastende dokumenter på listen. Jeg skabt en meget enkel scenario med to dokumenter, en i en mappe og en ikke. Her er skærmbillede:

billede

Ovenstående skærmbillede viser tydeligt er der to dokumenter i visningen, men værdien"" er en. "CamlSchema" med tomt dokument-Id er i rodmappen og den anden er i en mappe med navnet "84".

Det forekommer mig, at selvom du angiver en visning, KPI'EN ære ikke den "Vis alle elementer uden mapper" indstilling og i stedet, begrænser sig til rodmappen.

Hvis jeg er forkert, venligst drop mig en linje eller efterlade en kommentar.

</slutningen>

Abonner på min blog!

Technorati Tags:

SPD Workflow “Indsamle Data fra en bruger”: Ændre den genererede Opgaveformular

Jeg arbejder på et projekt, der bruger fem forskellige arbejdsgange i SharePoint Designer til at håndtere nogle dokumentgodkendelser. SPD giver de "indsamle data fra en bruger" handling så at vi kan bede brugeren om forskellige bits af oplysninger, som om de godkender det, nogle bemærkninger og måske spørge, hvad de havde til middag forleden nat.

Formularerne, der er aldeles funktionel. De er bundet til en opgaveliste som en indholdstype. De er 100% systemgenereret. Dette er deres styrke og svaghed. Hvis vi kan leve med standardformularen, så er vi gode til at gå. Dog, Vi har ikke for meget kontrol over hvordan SPD skaber form. Hvis vi ikke kan lide at standard opførsel, Vi har brug at ty til forskellige tricks til at komme omkring det (for eksempel, angive prioritet på en opgave).

Jeg havde brug at give et link på skemaerne opgave, der åbnede op Vis egenskaber (DispForm.asxp) af den "relaterede vares" i et nyt vindue. Dette giver et enkelt klik adgang til metadata for den relaterede vares. Dette er hvad jeg mener:

billede

Heldigvis, Vi kan gøre det, og det er ikke meget svært. Generelt, fyre op SPD, Naviger til den mappe, der huser arbejdsproces filer og åbne ASPX-fil, du vil ændre. Disse er netop klassiske XSL-transformering instruktioner, og hvis du har mucked med itemstyle.xsl, Søg eller andre xsl-scenarier, Dette vil være let for dig. Faktisk, Jeg fandt det at være generelt lettere, da de genererede form er noget lettere at følge i forhold til webdelen Kerneresultater en søgning (eller den mareridtsagtige CWQP).

Selvfølgelig, der er en stor faldgrube. SPDS arbejdsgangseditoren forventer fuld kontrol over filen. Hvis du ændrer det, SPD vil lykkeligt overskrive dine ændringer giver højre sæt af omstændigheder. Jeg har to hurtige test for at se hvor slemt det kunne få. De begge forudsætter, at du har udformet en gyldig SPD arbejdsproces, som bruger den "indsamle data fra en bruger" trin.

Test 1:

  • Rediger filen ASPX i hånden.
  • Teste det. (Kontroller, at dine ændringer var ordentligt gemt og ikke ødelægge noget).
  • Åbner arbejdsprocessen og tilføje en ikke-forretningsmæssigt forbundne handling (som "log til historie").
  • Gem arbejdsprocessen.

Resultat: I dette tilfælde, SPD ikke oprette formularen igen.

Test 2:

  • Gør det samme som #1 undtagen direkte redigere den "Indsaml data fra en bruger" handling.

Resultat: Dette skaber ny form fra bunden, over-skrive dine ændringer.

Afsluttende bemærkninger:

  • Mindst to SPD handlinger oprette formularer som dette: "Indsamle Data fra en bruger" og "Tildele at gøre element". Begge disse handlinger’ formularer kan ændres manuelt.
  • Jeg var i stand til at generere mine link til dispform.aspx, fordi, i dette tilfælde, elementet relate har altid sin ID indlejret i den relaterede vares URL. Jeg var i stand til at udtrække det og derefter opbygge en <en href> baseret på at levere one-click meta data adgang indslag. Det er usandsynligt, at din webadresse følger denne regel. Der kan være andre måder at få ID for den relaterede vares men jeg har ikke haft til at krydse denne bro, så jeg ved ikke, om bliver til anden siden af kløften.
  • Jeg gjorde ikke undersøge, men jeg ville ikke blive overrasket, hvis der er en slags skabelonfil i den 12 hive at jeg kunne ændre, påvirker hvordan SPD genererer standardformularerne (ligesom vi kan ændre alert skabeloner).

</slutningen>

Abonner på min blog!

Er “Ukendt fejl” Meddelelser virkelig bedre end en staksporing?

Jeg læste Galeanstalts blogindlæg om hvordan man aktivere stack trace viser og nu jeg spekulerer på: Hvorfor gør vi altid viser en stack spore?

Hvem kom op med denne regel og hvorfor følger vi det?

Slutbrugere vil vide noget er galt i begge tilfælde. Mindst med en staksporing, de kan trykke på control-printscreen, Copy/paste i en e-mail og send det til det. Der ville klart reducere den tid og indsats, der kræves til at løse problemet.

</slutningen>

Technorati Tags:

Søndag (Pinligt) Sjov: “Mit navn er Paul Galvin”

En flok af år siden, min chef bedt mig om at træne nogle brugere på et produkt kaldet resultater. Resultaterne er en slutbruger, rapportering værktøj. Det svarer nogenlunde til SQL Server Reporting Service eller krystal. På tidspunktet, Det var designet til at køre på grønne rør (strømsparetilstand. Wyse 50 Terminal) tilsluttet en Unix boks via telnet.

Min standard svar på eventuelle spørgsmål, der starter med "kan du … " "ja" og det er, hvor alle problemer startede.

Kunden var en kemisk virksomhed ud i det sydlige Californien og havde bare om indsvøbt en større ERP implementering baseret på QADS MFG/PRO. Gennemførelsesplanen nu kaldes for uddannelse power slut brugernes på produktets resultater.

Jeg var ikke en stor bruger af dette værktøj og var helt sikkert aldrig uddannet nogen før. Dog, Jeg havde gennemført en række andre uddannelse klasser og var hurtig på fødderne, så jeg ikke var alt for bekymrede. Dennis, ægte fuldtids resultater instruktøren, havde givet mig sin undervisningsmateriale. Ser tilbage på det nu, Det er virkelig absurd. Jeg vidste ikke, at produktet godt, var aldrig formelt uddannet på det og havde aldrig lært det. Hvad jeg har træning alle på det?

At komplicere tingene logistisk, Jeg blev bedt om at gå og møde en person i Chicago som en del af en pre-sales engagement undervejs. Planen var at flyve ud af New Jersey, gå til Chicago, mødes i en time med udsigt og derefter fortsætte til Californien.

Godt, Jeg fik til Chicago og salg fyr på mit hold havde lavet nogle fejl og aldrig bekræftet mødet. Så, Jeg dukkede op og udsigten var der. Formidabelt. Jeg pakke sammen og forlade og fortsætte til CA. Et sted under denne proces, Jeg finde ud af, at klienten er at lære mindre end 24 timer før min ankomst at "Paul Galvin" underviser klassen, ikke Dennis. Klienten elsker Dennis. De ønsker at vide "hvem er denne person, Paul Galvin?" "Hvorfor skal vi stole på ham?" "Hvorfor skal vi betale for ham?" Dennis naturligvis ikke abonnere mit "give dårlige nyheder tidligt" filosofi. Formidabelt.

Jeg ankommer til lufthavnen og nogle utroligt dumme årsag, Jeg havde tjekket min bagage. Jeg gjorde det til LAX men min bagage ikke. For mig, at miste bagage er meget som at gå den syv stadier af sorg. Til sidst gøre jeg det til hotellet, med ingen bagage, træt, sultne og iført min (nu, meget krøllet) jakkesæt. Det tager lang tid at rejse fra Newark — til O'Hare — til en klient — tilbage til O'Hare — og endelig til LAX.

Endelig finder jeg mig selv siddende på hotelværelset, gumlede på en snickers bar, udmattet og forsøger at skaffe energi til at scanne gennem undervisningsmaterialet igen så at jeg ikke vil ligne en komplet røv foran klassen. Det var lidt af et lavpunkt for mig på tidspunktet.

Jeg vågnede op næste dag, gjorde mit bedste for at udjævne min dragt, så at jeg ikke ser som Willy Loman på en dårlig dag og ledes på over til klienten. Som det så ofte er tilfældet, personligt var hun dejlig, høflig og meget behagelig. Dette stod i stærk kontrast til hendes ekstremt vred e-mails/talemeddelelser fra den foregående dag. Hun fører mig om 3 miles gennem bygningen efter bygning til en sektioneret off område i en kæmpe kemisk lager hvor vi vil gennemføre klassen for de næste tre dage. Den 15 eller 20 studerende samle langsomt, de fleste dem stadig forventer Dennis.

Jeg har altid starte min uddannelse klasser ved at indføre mig selv, at give nogle baggrund og skrive mine kontaktoplysninger på det hvide bord. Som jeg siger, "God morgen, mit navn er Paul Galvin", Jeg skriver mit navn, e-mail og telefon nummer op på det hvide bord med store bogstaver så at alle kan se det tydeligt. Jeg henvender mig, at jeg erstatter Dennis og jeg kan forsikre dem, at jeg er en passende erstatning, osv. Jeg har alle kort fortælle mig deres navn og hvad de ønsker at opnå ud af klassen, så jeg kan skræddersy ting til deres specifikke krav, som jeg hen ad vejen. De sædvanlige ting.

Vi wrap det op og fyre op projektoren. Jeg går til at slette mine kontaktoplysninger og … Jeg havde skrevet det i permanent markør. Jeg var så flov. I mit sind 's øje, det lignede denne: Der er denne "Paul Galvin" person, sidste minut erstatning for vores elskede Dennis. Han iført en sammenkrøllet op jakkesæt og ubarberet. Han har netop skrevet sit navn store bogstaver på vores hvidt bord i permanent markør. Hvad et syn!

Det hele endte lykkeligt, dog. Dette var en kemisk virksomhed, Efter alt. A gråsprængte veteran medarbejder trukket noget fra hylden og, sandsynligvis i strid med EPA regler, ryddet bestyrelsen. Det lykkedes mig at bo 1/2 dag foran klassen i hele kurset og de gav mig en god anmeldelse i slutningen. Dette cementeret min "pinch hitter" ry på min virksomhed. Min bagage ankom den første dag, så jeg var meget mere præsentabel dage to og tre.

Da jeg tog den røde øjne tilbage hjem, Jeg overvejede "erfaringer". Der var masser at overveje. Kommunikation er nøglen. Fortælle kunder om ændringer i planen. Ikke nogensinde tjekke din bagage i lufthavnen hvis du muligvis kan undgå det.. Medbringe ekstra "ting" Hvis du tjekke din bagage og det gør det. Jeg tror, den vigtigste lektie lærte jeg, dog, var denne: Du bør altid teste en markør i nederste venstre hjørne af et hvidt bord før du skriver, i store bogstaver, "Paul Galvin".

</slutningen>

Technorati Tags: ,

Perspektiver: SharePoint vs. Large Hadron Collider

På grund af nogle særling United Airlines fly tog jeg i midten af 90 ' erne, Jeg en eller anden måde endte med et tilbud om at omdanne "ubrugte km" i en halv snes gratis magasin abonnementer. Thats hvordan jeg endte med at abonnere på Scientific American magazine.

Som software / høring af mennesker, vi møder mange vanskelige forretningsmæssige krav i vores karriere. Mest tid, Vi elsker opfyldelsen af disse krav og faktisk, Det er nok, hvorfor vi mener denne karriere er bedst i verden. Jeg spekulerer lejlighedsvis bare hvad i alverden ville jeg have gjort med mig selv hvis jeg havde været født på noget andet tidspunkt i historien. Hvor forfærdeligt ville det være glip af slags arbejde får jeg at gøre nu, på dette tidspunkt og sted i verdenshistorien? Jeg tror: temmelig forfærdeligt.

Gennem årene, nogle af de krav, jeg har mødt har været ekstremt udfordrende at opfylde. Komplekse SharePoint ting, opbygning af web processing rammer baseret på ikke-web-venlige-teknologi, komplekse BizTalk-havde instrumentering og lignende. Vi kan alle (forhåbentlig) Se stolthed tilbage på vores karriere og sige, "ja, Det var en hård en at løse, men i sidste ende jeg pwned at sumbitch!" Endnu bedre, endnu mere interessante og sjove udfordringer venter.

Personligt mener jeg, at mit CV, i denne henseende, er temmelig dybt, og jeg er temmelig stolt af det (selv om jeg ved min kone vil aldrig forstå 1/20th af det). Men i denne uge, Jeg læste en artikel om den Large Hadron Collider i min Scientific American magazine og havde en af disse sjældne ydmygende øjeblikke, hvor jeg indså, at trods min "giant" status i visse kredse eller hvor dybt jeg tror min godt af erfaring, der er virkelige giganter i helt forskellige worlds.

Folk i LHC teamet har nogle virkelig vanskelige spørgsmål at håndtere. Overveje månen. Jeg tror ikke rigtig meget om månen (Selvom jeg har været meget mistænksom over det, siden jeg lærte det opbremsning af jordens rotation, der kan ikke være en god ting for os mennesker på lang sigt). Men, LHC team behøver at bekymre dig. LHCS måleinstrumenter er så følsomme, at de er påvirket af månen (Earth-rotation-slowing-and-eventually-killing-All-Life) tyngdekraften. Det er en pokkers af et krav om at opfylde — producere korrekte målinger trods Månens interferens.

Jeg grundede dette spørgsmål, da jeg læste denne sætning: "Det første niveau vil modtage og analysere data fra kun en delmængde af alle detektorens komponenter, fra hvilke det kan udvælge lovende begivenheder på basis af enkeltstående faktorer, såsom hvorvidt blev en energisk muon spottet flyver ud i en stor vinkel fra lysbundtets akse." Virkelig … ? Jeg kan ikke spille i den slags sandkasse og aldrig vil.

Næste gang jeg er ude med nogle venner, Jeg har tænkt mig at hæve en skål for den gode folk, der arbejder på LHC, håbe de ikke held vejer Higgs boson partikel og forbande månen. Jeg foreslår du gør det samme. Det bliver noget af en skål 🙂

</slutningen>

Technorati Tags: