Recently in Tech Notes Category

So "what graphical programming technique or tool do you use most?"

Survey results from kuro5hin.org

survey results

Expression Blend 4

| No Comments | No TrackBacks
Ok, Lynda.com is done, now Microsoft's tutorials: http://www.microsoft.com/expression/resources/blendtraining/ http://www.microsoft.com/expression/resources/blendtraining/Day.aspx?day=2#Learn

Expression Blend 3

| No Comments | No TrackBacks

Chapter 9 - Layout Controls Use "Alt" to bring objects "inside" the layouts

  • Grid - objects inside are "relative": properties of objects change as the properties of the grid changes. Use "locks" to divide it into rows and columns.
  • Canvas - objects inside are "absolute": properties do not change.
  • Dock
  • Stack - you can "stack" objects inside. for a space between use "margins"
  • Wrap
Chapter 10 - Transformations
Chapter 11 - Animation and Interactivity
  • Timelines
  • Keyframes
  • Motion paths
  • Triggers
  • Manipulating animations in XAML
Chapter 12 - WPF Controls
  • Control styling
  • Using SimpleStyles
  • Creating a UserControl (right click on project -> add new item -> *.xaml)

Expression Blend 2

| No Comments | No TrackBacks
Chapter 7 - Using 3Din Blend
Chapter 8 - Media Integration (basic buttons coding):



Expression Blend 1

| No Comments | No TrackBacks

Lynda.com has some nice tutorials on Expression Blend. Here is the result of my experiments (first 6 chapters)


Expression Studio

| No Comments | No TrackBacks

Microsoft Expression Studio

Microsoft Expression Studio is a suite of tools for designing and building web and Windows client applications and rich digital media contents.

The suite consists of:

  • Microsoft Expression Web: Website designer and HTML editor.
  • Microsoft Expression Blend + SketchFlow: Visual user interface builder for Windows Presentation Foundation and Silverlight applications.
  • Microsoft Expression Design: Raster and vector graphics editor.
  • Microsoft Expression Encoder: Digital video encoder for authoring VC-1 and H.264/MPEG-4 AVC contents.


WPF et al

| No Comments | No TrackBacks

download the presentation

Windows Presentation Foundation

WPF is a platform for developing and running .NET programs. It consists of two elements:

  1. A set of DLLs designed for creating programs with the following characteristics:
    • User interfaces
    • Data binding
  2. A public application programming interface (API), allowing our programs to access those DLLs.[1]

More definitions:

  • WPF - user interface platform - for collaboration of designers and developers to create software [5]
  • WPF builds on a vector based rendering engine [4]
  • WPF is a presentation system for building applications
  • WPF is Microsofts' UI framework to create applications with rich user experiences. WPF separates the appearance of an user interface from its behavior. The appearance is generally specified in the Extensible Application Markup Language (XAML), the behavior is implemented in a managed programming language like C# or Visual Basic. The two parts are tied together by databinding, events and commands. [4]


Dynamic-link library

A DLL is a library that contains code and data that can be used by more than one program at the same time.[2]


Application Programming Interface

An application programming interface (API) is an interface implemented by a software program that enables it to interact with other software. It facilitates interaction between different software programs similar to the way the user interface facilitates interaction between humans and computers.[3]


Extensible Application Markup Language

XAML - declarative XML-based UI language. (New markup language to represent user interfaces.) Some other notes:

  • HTML, are the evidence of the success of using markup for displaying user interfaces. (A key to the success of markup syntax is the ability to be at once human readable and machine readable.)
  • XML-based markup languages are well-suited to represent hierarchies and parent/child/sibling relationships that appear in a user interface
  • Microsoft's Silverlight, a cross-platform plug-in for creating rich interactive Web experiences, also uses XAML.


Declarative programming

Declarative programming is a way of specifying what a program should do, rather than specifying how to do it. Most computer languages are based on the steps needed to solve a problem, but some languages only indicate the essential characteristics of the problem and leave it to the computer to determine the best way to solve the problem. The former languages are said to support imperative programming whereas the latter support declarative programming.[6]


WPF tools

Microsoft provides two development tools for WPF applications. One is Visual Studio (code and XAML editing, rare support for graphics), made for developers and the other is Expression Blend (graphics, rare support for code and XAML editing) made for designers.


References

  1. Illustrated WPF book
  2. Miscrosoft website
  3. Wikipedia
  4. WPFtutorial website
  5. Windowsclient website, white paper on WPF
  6. Wisegeek website on declarative programming

Cyclic or Acyclic?

| No Comments | No TrackBacks

Testing whether a graph is acyclic

To test a graph for being acyclic:

  1. If the graph has no nodes, stop. The graph is acyclic.
  2. If the graph has no leaf, stop. The graph is cyclic.
  3. Choose a leaf of the graph. Remove this leaf and all arcs going into the leaf to get a new graph.
  4. Go to 1.
        acyclic         cyclic

Source