09 března 2006

Časový posun aneb kterak se ve 4 hodiny ráno probouzeti aniž stařeckou nespavostí trpěti

Stát Massachusetts se nachází v časovém pásmu UTC-5, Česká republika je v časovém pásmu UTC+1. Letadlo odlétávající z Paříže v 16 hodin středoevropského času letí dohromady 8 hodin a přistane v 18 hodin východoamerického času v Bostonu. V zimě je takový let o to krásnější, že během něho velmi pomalu a dlouho zapadá slunce.

Po přístání jsem si tedy samozřejmě přeřídil hodinky o 6 hodin zpátky. Nicméně člověk má v sobě i vnitřní biologické hodiny. Ty zhruba rozhodují, kdy se chce člověku opravdu spát a kdy člověk vstává. Přeřídit tyto hodiny je poněkud obtížnější.

Na rady kolegů tedy nechodím spát dříve jak o půlnoci místního času, abych se sám donutil probudit až v rozumnou ranní hodinu. Přesto jsem dnes vstal už ve 4 hodiny ráno (10:00 evropského) a už jsem nedokázal usnout. Ranní procházka po okolí a hurá do práce. Na fotce v popředí hotel v pozadí budova kde sídlí i naše firma (malá budka u silnice je autobusová zastávka).

V kanceláři ale nejsem sám. Předběhl mne náš americký účetní, který je už v důchodu a ve 4 hodiny se probudil také, ale narozdíl ode mne to bylo pro něj v obvyklou dobu.

9 hodin v práci se dá vcelku vydržet. Krize přichází ve 4 hodiny odpoledne, kdy se mi začíná chtít neuveřitelně spát. Trocha pohybu, teplá káva a studená voda pomáhají, takže se rozhoduju přece jenom zajet si večer do centra Bostonu a trochu se ještě projít.

Uvidím kolik toho naspím dnes.

08 března 2006

Boston - Burlington 2

Cesta do Bostonu s přestupem v Paříži se vydařila. Z Paříže do Bostonu jsem navíc seděl s jedním Čechem o rok mladším, který tam jel za přítelkyní. Prý studuje v Ostravě angličtinu a ekonomii. Řeč nestála a během letu jsme vypili každý z nás všeho všudy 4 dcl vína, 2 dcl pravého šampaňského a protože jsme byli turistická třída, tak nám letušky další víno a šampaňské jednoduše schovaly.
V Bostonu jsme šli už každý vlastní cestou, já si půjčil auto se satelitním navigátorem. A rozjel se směrem k Burlingtonu. Navigátor je bohužel v tunelech nepřesný, navíc jsem se nechal takto navigovat jen pomocí přístroje poprvé. Takže hned první odbočku jsem vyjel dříve a místo do Burlingtonu jsem se najednou ocitl na dálnici do New Yorku. Chvilku jsme se navzájem přesvědčovali kudyma pojedeme, ještě několikrát jsem špatně odbočil, než jsem narazil už na tu správnou trasu. Bydlím nakonec v hotelu Summerfield Suites v prvotřídním apartmá s kuchyní a obývákem, ložnící a s koupelnou.

25 září 2005

Remote X connection

It's possible to run X application remotelly.

First an X server should be started on local machine
Linux - xserver or X
Windows - CygwinX - http://x.cygwin.com/

Optionally allow connection to your XServer from remote machine
xhost +
check firewalls etc.

Connect to your remote machine
ssh -Y

Optionally set your DISPLAY variable to point back to your local machine
export DISPLAY=10.0.0.1:0.0

Start your X application
xclock

Other information on mini HOWTO http://www.xs4all.nl/~zweije/xauth.html

22 srpna 2005

Knowledge base:Web Service Description Language - WSDL

WSDL is XML document which describes the web service. Specification is at http://www.w3.org/TR/wsdl. It consists of following parts

Type definition


<types>
<xsd:schema xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="p0" nillable="true" type="xsd:string"/>
<xsd:element name="string_Response" nillable="true" type="xsd:string"/>
</xsd:schema>
</types>

which defines 'p0' element and 'string_Response', both could contain any string.

Message definition

<message name="HelloService_hello_Request_Soap">
<part element="ns0:p0" name="p0">
</message>
<message name="HelloService_hello_Response_Soap">
<part element="ns0:string_Response" name="response"/>
</message>

This defines two types of messages. The part element attribute refers to the type definition of 'p0' and 'string_Response' elements defined in types section.

Port definition

<porttype name="HelloService">
<operation name="hello" parameterorder="p0">
<input message="tns:HelloService_hello_Request_Soap"/>
<output message="tns:HelloService_hello_Response_Soap"/>
</operation>
</porttype>

This defines the set of abstract operations and the abstract messages involved. message attribute refers to the previously defined 'messageHelloService_hello_Request_Soap' and 'HelloService_hello_Response_Soap' from message section.

binding definition

<binding name="HelloService" type="tns:HelloService">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="hello">
<soap:operation
style="document"/>
<input>
<soap:body parts="p0" use="literal"/>
</input>
<output>
<soap:body parts="response" use="literal"/>
</output>
</operation>
</binding>

This defines the message format and protocol details. The "document" style is used (also "rpc" is an option) and literal style in message body is used (also "encoded" is an option). An operation element specifies binding information for the operation with the same name within the portType.

Service definition

<service name="HelloService">
<port binding="tns:HelloService" name="HelloService">
<soap:address location="urn:unknown-location-uri"/>
</port>
</service>
Service groups ports. Each port defines an individual endpoint. Port with name "HelloService" refers to "HelloService" binding in 'binding' attribute.

17 srpna 2005

Knowledge base: Java Authentication and Authorization Service (JAAS)



JAAS is an API that enables Java applications to access authentication and access control services without being tied to those services.

Typically an application creates JAAS LoginContext, tell to use Login Module which is associated with given entry name and put the callback handler which could be used by LoginModule to retrieve other information e.g. from user like 'user name', 'password', 'confirmation'.

JAAS specification, documentation etc at http://java.sun.com/products/jaas/

JAAS authentication tutorial provided at http://java.sun.com/j2se/1.4.2/docs/guide/security/jgss/tutorials/AcnOnly.html#AcnFullCode

JAAS authorization tutorial provided at http://java.sun.com/j2se/1.4.2/docs/guide/security/jgss/tutorials/AcnAndAzn.html

Knowledge base: Lightweight Directory Access Protocol (LDAP)

LDAP is protocol mostly used to interchange information about user/login names/emails. Complex definition with links to RFC at wikipedia http://en.wikipedia.org/wiki/LDAP

LDAP provider (directory) is typically database of users/groups. Examples of providers: MS Active Directory, Sun ONE Directory Server, IBM Tivoli server

LDAP client can communicate with LDAP provider and can ask for authentication and according the result returned it could decide what to do. LDAP client can retrieve list of other users/groups.

LDAP client can connect (bind) to LDAP provider using host, port login distinguished name (DN) and password - login DN and password could be empty if LDAP provider allows anonymous bind. Other anonymous operation could be done such a list of users in LDAP etc.

Java program can access to LDAP via JNDI API http://java.sun.com/products/jndi/ or via any other libraries e.g. OpenLDAP http://www.openldap.org/jldap/

25 května 2005