Tag Archives: tananyag

Microsoft Virtual Academy

Jópofa ez a Microsoft Virtual Academy oldal, érdemes megnézni: https://www.microsoftvirtualacademy.com

A Tracks oldalon lévő keresőben már lehet szűrni fejlesztői kurzusokra is, de egyelőre sajnos nincs rájuk találat. Reméljük hamarosan lesz. Addig elsősorban a Windows Server 2012 témákkal lehet ismerkedni, abból már van bőven.

Ha a jobb felső sarokban az országot átállítjuk Hungary-re, akkor a Top Students oldalon megjelennek a helyi ászok is Mosolygó arc

 

Technorati-címkék: ,

Ingyenes oktatás: Windows 8 alkalmazásfejlesztés Jump Start

jump-start-logoMiután szerdán hazajövünk a Lurdy Házból, azonnal neki is eshetünk a Windows 8 alkalmazások készítésének, méghozzá HTML, CSS és JavaScript segítségével. Mindehhez az apropót egy Microsoft Jump Start adja, ami lényegében egy demókban gazdag, de gyakorlat nélküli online oktatás.

A két napos Developing Windows 8 Apps with HTML, CSS & JavaScript Jump Startra október 10-11-én kerül sor,  magyar idő szerint 18-01 óra között, az oktatók pedig Jeremy Foster és Michael Palermo lesznek. A kurzus első napja a HTML5, a CSS és a JavaScript programozással foglalkozik, ami nem csak a Windows 8 programozáshoz lehet hasznos, hanem weboldalak készítéséhez is, sőt akár a 70-480 (Programming in HTML5 with JavaScript and CSS3) vizsgára is felkészíthet. A második nap már kizárólag a Windows 8-é, terítékre kerülnek a a contractok, a felhasználói felület, a vezérlők, az adatelérés és a hitelesítés, amik részben a 70-481 vizsga témakörei.

A regisztráció ingyenes, de nem teljesen névtelen. Az oldalon kitölthetjük a profilunkat, amit aztán megoszthatunk másokkal, így már nem egyoldalú webcastról van szó, hanem a résztvevők között is kialakulhat kommunikáció. Eddig hárman vagyunk Magyarországról, ki jön még?

Bővebben: http://msl-events.cloudapp.net/EventRegistration.aspx?eid=e3941d57-3299-4d9f-b5c5-e94a9a170654

 

Technorati-címkék: ,,

Ingyenes e-book: Programming Windows 8 Apps with HTML, CSS, and JavaScript

windows8-js-ebook-coverKorábban említettem, hogy a Microsoft Press júniusban kiadott egy ingyenesen letölthető előzetest Kraig Brockschmidt Programming Windows 8 Apps with HTML, CSS, and JavaScript című könyvéből, ami a maga mindössze 4 fejezetével is elég jó forrásnak számított azok számára, akik JavaScriptben akartak Metro stílusú Windows 8 alkalmazást készíteni. Nemrég megérkezett a folytatás, a második előzetesben már 12 fejezetet kapunk. Íme az újdonságok:

  • Chapter 5: Collections and Collection Controls
  • Chapter 6: Layout
  • Chapter 7: Commanding UI
  • Chapter 8: State, Settings, Files and Documents
  • Chapter 9: Input and Sensors
  • Chapter 10: Media
  • Chapter 11: Purposeful Animations
  • Chapter 12: Contracts

Az első előzetes 158 oldalas volt, a második már 537, és mire az október végi Buildre elkészül mind a 17 fejezet, súlyos mű válik belőle.

A második előzetes ingyenesen letölthető:

Akit nem érdekel ilyen mélyen a téma, vagy csak most vág bele a Windows 8 programozásba, annak a Beginning Windows 8 Application Development könyvet tudom ajánlani a Wrox kiadótól. Ebben körülbelül 70 oldal foglalkozik a JavaScriptes Windows 8 programozással, hasonló témákat érintve, mint az MS Press könyve, természetesen kevésbé mélyen tárgyalva. fog Bár ez a könyv hivatalosan csak jövő héten jelenik meg, már előrendelhető az Amazonnál.

 

Technorati-címkék: ,,

Ingyenes SQL kurzusok a Pluralsighttól

Májusban írtam arról, hogy a Pluralsight 30 napig ingyenesen kínálta az ASP.NET tananyagait. Most hasonló a helyzet, csak éppen SQL témában.

Az SQLskills csapat (élén a  Paul S. Randal és Kimberly L. Tripp házaspár) ugyanis leszerződött a Pluralsighttal és a közeljövőben online fogják ontani magukból az adatbázisos bölcsességeket. Jelenleg ezek a kurzusok érhetők el (mindegyik több, mint 4 órányi online anyag):

  • SQL Server: Performance Tuning Using Wait Statistics
  • SQL Server: Transact-SQL Basic Data Retrieval
  • SQL Server: Collecting and Analyzing Trace Data

És ami még az év végéig jön:

  • SQL Server: Understanding Logging, Recovery, and the Transaction Log
  • SQL Server: Database Design Mistakes and Solutions
  • SQL Server: Extended Events Basics
  • SQL Server: Transact-SQL Basic Data Modification
  • Server Hardware Fundamentals
  • SQL Server: Benchmarking and Baselining

Bevezetésként most 30 napig ingyenesen érhető el az első három tananyag. Ehhez nem kell mást tenni, mint:

  1. Feliratkozni az @sqlskills követésére a Twitteren.
  2. Feliratkozni a @pluralsight követésére a Twitteren.
  3. Ellátogatni a http://pluralsight.com/training/TwitterOffer/sqlskills oldalra és megadni a saját Twitter azonosítókat.
  4. A postaládánkba érkező válaszban kapott kódot felhasználva belépni és megnézni az előadásokat.

A címek és a korábbi előadásaik alapján én biztos vagyok benne, hogy megéri.

További információ: SQLskills training goes online worldwide (and free in September!)

 

Technorati-címkék: ,,,

Windows Azure Training Kit – 2012. augusztus

A Windows Azure Training Kit az Azure lehetőségeit kiválóan bemutató, önálló tanulásra használható előadás és gyakorlat gyűjtemény. Ezt a gyűjteményt a Microsoft rendszeresen frissíti és bővíti, nemrég jelent meg a 2012. augusztusi változat az alábbi újdonságokkal:

  • 7 új Windows Azure DevCamp előadás
  • 4 új előadás SQL Azure témában
  • Új előadás biztonság témában
  • Új előadás skálázható és nagy rendelkezésre állású webalkalmazásokról
  • És természetesen javítások

Ebből talán már érezhető, hogy nem kis csomagról van szó, hiszen immár 42 gyakorlaton és 20 előadáson keresztül ismerhetjük meg a felhő képességeit. Aki szeret egyedül, a saját kényelmes tempójában tanulni, annak mindenképp érdemes letölteni.

watk-githubrepo

Mint minden tananyagban, természetesen előfordulhat, hogy ebben is vannak hibák, de a Microsoft nyitottságát jelzi, hogy az egész tartalom a GitHubon van több, egymástól független repoban, így ha hibát találunk, könnyen jelezhetjük a javítást.

 

Technorati-címkék: ,,

70-481 vizsgafelkészítő anyagok

A Windows 8 megjelenésével természetesen a Microsoft Certified minősítések rendszere is változik egy kicsit. Az MCSD: Windows Metro style Apps using HTML5 fokozat egyik vizsgája a 70-481: Essentials of Developing Windows Metro style Apps using HTML5 and JavaScript, ami egyelőre béta vizsga formájában érhető el. Mostanában sorra veszem ezeket a vizsgákat és mivel nem találtam még teljes vizsgafelkészítő anyagot, összegyűjtöttem pár linket, ami másnak is hasznos lehet.

programming-win8-ebookKezdetnek:

Aki őszre tervezi a vizsgát, annak hasznos lehet még a hamarosan megjelenő Beginning Windows 8 Application Development c. könyv is.

1. Design Metro style Apps (20%)

1.1. Design the UI layout and structure.
This objective may include but is not limited to: evaluate the conceptual design; decide how the UI will be composed; design for the inheritance and re-use of visual elements (e.g., styles, resources); design for accessibility; decide when custom controls are needed

1.2. Design for separation of concerns.
This objective may include but is not limited to: plan the logical layers of your solution to meet application requirements; design loosely coupled layers; incorporate WinMD components

1.3. Design and implement Process Lifetime Management (PLM).
This objective may include but is not limited to: choose a state management strategy; handle the suspend event (oncheckpoint); prepare for app termination; handle the onactivated event; check the ActivationKind and previous state

1.4. Plan for an application deployment.
This objective may include but is not limited to: plan a deployment based on Windows 8 Application certification requirements; prepare an app manifest (capabilities and declarations); sign an app; plan the requirements for an enterprise deployment

2. Develop Metro style Apps by Using WinRT (20%)

2.1. Access and display contacts.
This objective may include but is not limited to: call the ContactsPicker (windows.applicationmodel.contacts) class; filter which contacts to display; display a set number of contacts; create and modify contact information; select specific contact data

2.2. Design for charms and contracts.
This objective may include but is not limited to: choose the appropriate charms based on app requirements; design an application to be charm- and contract-aware; configure the application manifest for correct permissions

2.3. Implement search.
This objective may include but is not limited to: provide search suggestions using the SearchPane class; search and launch other apps; provide and constrain search within an app, including inside and outside of search charm; provide search result previews; implement activation from within search

2.4. Implement Share in an app.
This objective may include but is not limited to: use the DataTransferManager class to share data with other apps; accept sharing requests by implementing activation from within Share; limit the scope of sharing using the DataPackage object; implement in-app Share outside of Share charm

2.5. Manage application settings and preferences.
This objective may include but is not limited to: choose which application features are accessed in AppSettings; add entry points for AppSettings in the Settings window; create settings flyouts using the SettingsFlyout control; add settings options to SettingsFlyout; store and retrieve settings from the roaming app data store

3. Create the User Interface (21%)

3.1. Implement WinJS controls.
This objective may include but is not limited to: flipview; flyout; grid layout; list layout; menu object

3.2. Implement HTML layout controls.
This objective may include but is not limited to: implement layout controls to structure your layout; support scrolling and zooming with CSS3; manage text flow and presentation, including overflow

3.3. Create layout-aware apps to handle view states.
This objective may include but is not limited to: handle viewState events; choose among application view states; use CSS3 media queries to handle different view states; respond to ApplicationViewStateChangedEvent

3.4. Design and implement the app bar.
This objective may include but is not limited to: determine what to put on the app bar based on app requirements; style and position app bar items; design the placement of controls on the app bar; handle AppBar events

3.5. Apply CSS styling.
This objective may include but is not limited to: implement gradients, grid layouts, zooming, scroll snapping, and media queries

4. Program User Interaction (20%)

4.1. Manage input devices.
This objective may include but is not limited to: capture gesture library events; create custom gesture recognizers; listen to mouse events or touch gestures; manage Stylus input and inking; handle drag and drop events

4.2. Design and implement navigation in an app.
This objective may include but is not limited to: handle navigation events, check navigation properties, and call navigation functions by using the WinJS.Navigation namespace; design navigation to meet app requirements; Semantic Zoom; load HTML fragments

4.3. Create and manage tiles.
This objective may include but is not limited to: create and update tiles and tile contents; create and update badges (the TileUpdateManager class); respond to notification requests; choose an appropriate tile update schedule based on app requirements

4.4. Notify users by using toast.
This objective may include but is not limited to: enable an app for toast notifications; populate toast notifications with images and text by using the ToastUpdateManager; play sounds with toast notifications; respond to toast events; control toast duration

5. Manage Security and Data (19%)

5.1. Choose a data access strategy.
This objective may include but is not limited to: choose the appropriate data access strategy (file based; web service; remote storage, including Windows Azure storage) based on requirements

5.2. Retrieve data remotely.
This objective may include but is not limited to: use XHR to retrieve web services; set appropriate HTTP verb for REST; handle progress of data requests; consume SOAP/WCF services; use WebSockets for bidirectional communication

5.3. Implement data binding.
This objective may include but is not limited to: choose and implement data-bound controls, including WinJS.UI.ListView, to meet requirements; bind data to item templates such as WinJS.Binding.Template; bind data to controls by using data-win-control and data-win-bind; configure an iterator with data-win-options; enable filtering, sorting, and grouping data in the user interface

5.4. Manage Windows Authentication and Authorization.
This objective may include but is not limited to: retrieve a user’s roles or claims; store and retrieve credentials by using the PasswordVault class; implement the CredentialPicker class

5.5. Manage Web Authentication.
This objective may include but is not limited to: use the Windows.Security.Authentication.Web namespace; set up OAuth2 for authentication; CredentialPicker; set up single sign-on (SSO); implement credential roaming; implement the WebAuthenticationBroker class

Ha tudsz még jó forrást, írd ide, hogy másnak is hasznos legyen!

 

Technorati-címkék: ,,

.NET architect állásinterjú kérdések

Az állásinterjú sorozat előző részeiben írtam már C# programozás kérdésekről illetve a fejlesztői kompetenciákról. Az alábbi kérdéseket egy .NET senior architect pozícióval kapcsolatban tették fel nekem angolul, egy 20 perces telefonos interjú során, villámkérdések formájában:

Általános .NET kérdések

  • Mi az objektum orientált programozás három alapelve?
  • Mi a különbség az interfész és az absztrakt osztály között?
  • Mit jelent az egységbe zárás (encapsulation)?
  • Milyen láthatóságok (scopes) vannak C#-ban?
  • Mit jelent az öröklés (inheritance)?
  • Mi a különbség az override és a new kulcsszavak között C#-ban?

Webfejlesztéssel kapcsolatos kérdések

  • Miért rossz az ASP.NET ViewState?
  • Mit jelent az MVC tervezési minta?
  • Mire szolgálnak az action filterek ASP.NET MVC-ben?

Adatbázis kérdések

  • Mi a különbség az outer és az inner join között?
  • Mi a különbség a clustered és a nonclustered index között?
  • Milyen hátrányai vannak az indexeknek?
  • Mi a tranzakció?

Bevallom, a senior architect pozícióhoz képest szerintem igencsak alapvető kérdésekről van szó, de tegyük hozzá rögtön, hogy ez csak az első kör volt egy többlépcsős interjú sorozatban.

 

Technorati-címkék: ,,,,

Állásinterjú: fejlesztői kompetenciák

Minden állásinterjú alapvető célja, hogy az interjúztató gyorsan képet kapjon a jelentkező képességeiről és tapasztalatairól. A szoftverfejlesztés nagyon sokrétű terület, aki most jelentkezik egy állásra vagy épp azt kapja feladatul, hogy egy pozícióra megfelelő embert találjon, bizony nehéz feladat előtt áll, amikor a szempontokat kell végiggondolnia. A Programmer Competency Matrix táblázat ebben nyújt segítséget, ugyanis öt csokorba szedi a témákat:

  • Computer science
  • Software engineering
  • Programming
  • Experience
  • Knowledge

Nekem azért tetszik ez a táblázat, mert minden témánál mutat egy fejlődési irányít, így mindenki ötleteket kaphat, hogy minek érdemes utánanéznie a hiányosságok pótlására.

A táblázat persze vitatható, én például egy “soft skills” témakört erősen hiányolok. Ti mit tennétek még bele?

 

Technorati-címkék: ,

Régebbi Technet tananyagok

Többen írtak nekem, hogy a régebbi cikkekben szereplő Technet oldalakra mutató hivatkozások egy része nem érhető már el, ezért összeszedtem a legfontosabb tartalmak új helyét:

A videók többsége megtalálható a videótárban és a Technetklub TV oldalon is, az e-bookok pedig a PDF-ek között.

 

Technorati-címkék: ,,,,,

Interaktív router demó

Meggyőződésem, hogy az alapok biztos ismerete nélkül nem szabad építkezni. Ha desktop alkalmazást fejlesztesz, ismerd a Windowst és a Windows hálózatokat. Ha webalkalmazást, akkor ismerd az Internet és a böngészők működését. Sokkoló, amikor többé éve főállásban programozó szakemberek megkérdezik, hogy mi az a Windows service, mi a különbség a workgroup és az AD között vagy hogy miért kell tanúsítvány a HTTPS-hez.

A webfejlesztős kurzusok elején ezért általában röviden végig szoktunk menni az Internet működésének alapjain. Ez egyrészt azért jó, mert utána mindenkivel közös nevezőről indulunk, másrészt azért, mert a netet mindenki használja, és bárki belefuthat olyan oldalba, amivel mások még nem találkoztak.

Nemrég például ezt az oldalt ajánlották figyelmembe, ahol egy WLAN router admin felülete (pontosabban az opciók többsége) próbálható ki: http://www.dd-wrt.com/demo/

dd-wrt

Köszönöm, Villányi Gábor!

 

Technorati-címkék: ,