Python i Microsoft

25
Python i Microsoft Razem czy osobno?

Transcript of Python i Microsoft

Page 1: Python i Microsoft

Python i MicrosoftRazem czy osobno?

Page 2: Python i Microsoft

Co ja tutaj robię ?

• Trochę dawnych doświadczeń z Pythonem• Od 6 lat pracuję w Microsoft:• 3 lata w środowisku developerskim• Od 3 lat w chmurach

[email protected]/in/mzylinski/

Page 3: Python i Microsoft

a. Narzędzia

Page 4: Python i Microsoft

Python Tools for Visual Studio (PVTS)

• Zarządzanie projektem i interpreterami• Intellisense• Refactoring kodu• Interactive Window (w tym IPy)• Debugging

http://pytools.codeplex.com

[właściwie] za darmo!

Page 5: Python i Microsoft

b. Django

Page 6: Python i Microsoft

Wsparcie dla Django

• Pełna integracja z Visual Studio• Gotowiec w galerii• Łatwe uruchamianie lokalne i zdalne• Wsparcie dla podpowiedzi w szablonach

Page 7: Python i Microsoft

c. Chmura

Page 8: Python i Microsoft

Windows Azure – co nowego?

• Pełna integracja z Visual Studio, w tym deployment• Oficjalne Windows Azure Python SDK (tabele, bloby, kolejki,

ServiceBus, elementy zarządzania)• Gotowy sterownik django-pyodbc-azure • CLI dla Linuxa, Mac OS i Windows (jako alternatywa dla PowerShella)• VM Depot

Page 9: Python i Microsoft

Azure CLI

> azure account download> azure account import> azure site list> azure site show pycon2013> azure site create --git> azure site scale instances –-instances 5 –size medium

Page 10: Python i Microsoft

Zarządzanie chmurą od kuchni

Unified Management RESTProxy, Batching & Security

Web Site Cloud Service IaaS Networking…

Application Manager Billing

Monitoring

Marketplace

SQL Azure3rd Party Service

Unified Management Portal

WebsiteCloud

Service3rd party

extension…

Scripting,

PowerShell, CLI

3rd Party Tools

Page 11: Python i Microsoft

d. Reactive Extensions

Page 12: Python i Microsoft

Reactive Extensions (Rx)

Socialmedia

Stock tickers

RSS feeds

GPS

Server managementUI e

vents

Page 13: Python i Microsoft

Architektura Reactive Extensions (Rx)

Concurrency

IScheduler TimeThreads Cloud Dispatchers

Event Streams

IObservable<T>

IObserver<T>ISubject<T>

LINQ to Events

from quote in stockwhere quote.Symbol == “MSFT”select quote.ValueProjectionFi

lteri

ng

AggregatingG

rou

pin

g

Join

s

WindowingSh

arin

g

SamplingTh

rottlin

g

Timeout

Merg

ing

Recovery

Page 14: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

from tick in ticks

Page 15: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

27.01

27.96

31.21

30.73

MSFT

21.75

22.54

20.98

INTC

from tick in ticks

group tick by tick.Symbol

Page 16: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

MSFT

INTC

from tick in ticks

group tick by tick.Symbol into companyfrom openClose in company.Buffer(2, 1)

[27.01, 27.96]

[27.96, 31.21]

[31.21, 30.73]

[21.75, 22.54]

[22.54, 20.98]

Page 17: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

MSFT

INTC

from tick in ticksgroup tick by tick.Symbol into companyfrom openClose in company.Buffer(2, 1)

let diff = (openClose[1] – openClose[0]) / openClose[0]

0.034 0.104-

0.015

0.036-

0.069

Page 18: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

MSFT

INTC

from tick in ticksgroup tick by tick.Symbol into companyfrom openClose in company.Buffer(2, 1)let diff = (openClose[1] – openClose[0]) / openClose[0]

where diff > 0.1

0.034 0.104-

0.015

0.036-

0.069

Page 19: Python i Microsoft

Stock Trade AnalysisMSFT27.01

ticks

INTC21.75

MSFT27.96

MSFT31.21

INTC22.54

INTC20.98

MSFT30.73

from tick in ticksgroup tick by tick.Symbol into companyfrom openClose in company.Buffer(2, 1)let diff = (openClose[1] – openClose[0]) / openClose[0]where diff > 0.1

select new { Company = company.Key, Increase = diff }

res

Company = MSFT

Increase = 0.104

Page 20: Python i Microsoft

Rx.py

# Subscribe to an observable

from rx import Observable, Observer

res = Observable.range(0, 10)

subscription = res.subscribe(

lambda x: print("Observer 1: OnNext: ", x),

lambda ex: print("Observer 1: OnError: ", ex.Message),

lambda : print("Observer 1: OnCompleted"))

http://rxpy.codeplex.com/

Page 21: Python i Microsoft

e. I po co to wszystko ?

Page 22: Python i Microsoft
Page 23: Python i Microsoft

http://wordpress.brandoo.pl/project/

Page 24: Python i Microsoft

Najświeższe informacje na temat Microsoft Openness w Europie Środkowo-Wschodniej

Kluczowe informacje na temat technologii firmy Microsoft współpracujących z innymi środowiskami.

Omawiamy tematy Open Goverment (w tym Open Data), Open Source, Web, Cloud i Mobile

Dołącz do nas na Social Media i być na bieżąco!

OpennessAtCEE

www.OpennessAtCEE.com

Microsoft | Openness At CEE

Page 25: Python i Microsoft

Konferencja InterOpConf Dla kogo?

Dla wszystkich osób, które chcą dowiedzieć się jak Microsoft współpracuje ze środowiskami Open Source

Cel?

Pokazanie rozwiązań, będących efektem dotychczasowej współpracy pomiędzy technologiami Open Source a Microsoft

Gdzie i kiedy?

Siedziba Microsoft Polska 30 Listopada – 1 Grudnia

Microsoft | Openness At CEE

www.InterOpConf.com