Windows Mobile Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 31 January 2013

Fuslogvw.exe - assembly binding logger

Posted on 04:33 by Unknown


How many time did you had problems with your references of a project in .NET? Not very often but when this occurs you can spend a lot of hours trying to find what is the problem. Invalid version of assembly, incorrect path to your assembly can cause these problems.
Errors like the following can have the same source:

  • Could not load file or assembly 'xxx, Version=yyyy, Culture=neutral, PublicKeyToken=zzz' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
  • This assembly is protected by an unregistered version …

In these cases a great tool can be used to see the loading stack of each assembly. The name of the tool is Assembly Binding Log Viewer (Fuslogvw.exe). It is preinstalled if you have Visual Studio already installed.
This tool will log all the assembly bindings from all the processes that are running on the given computer. Based on this information we can see the exact problem of the binding, the path from where the assembly is loading and much more.
You can start the program using “fuslogvw.exe” command from VS command prompt. Don’t forget to run it as an Administrator.
You should know that all the logs are written in Internet Explorer temporary file folder. Because of this if the temporary folder of the IE is corrupt that you may have problem running this application. In the case you don’t see any kind of information, that you should clear the temporary folder of IE.
Also, don’t forget to click on the “Refresh” button. The UI is not automatically updated when new logs are available.
In the end, for a developer this tool can be very useful and you should try it.
Read More
Posted in | No comments

Wednesday, 30 January 2013

CellCast App for BlackBerry 10

Posted on 15:46 by Unknown

Oh what a difference a few years makes, eh?

Our team has been involved in mobile learning for enterprise customers for almost a decade now on devices spanning basic feature phones in the beginning (think old Nokia handsets with voice only service) through simple smartphone devices (remember Windows Mobile?) popular four or five years ago. The next few years of the enterprise mLearning landscape were focused on supporting mobile workers equipped with nearly ubiquitous BlackBerry smartphones from Research in Motion; sure, there were some new Apple iPhones out there and Google had just introduced Android into the market but real companies needed real devices with real security so most organizations sought to leverage those BlackBerry populations for their mobile learning needs.

What transpired next will become fodder for many future business case studies as the venerable RIM/BlackBerry began to lose market share to more sexy iOS and Android-based alternatives due to what the market perceived as a lack of innovation coming from the folks in Waterloo.  Enterprise IT organizations started thinking about devices that were fun to use, had more capable features and better web browsers, and provided extensive app ecosystems to meet address unique business requirements. Much of the pressure on these teams to start considering non-RIM hardware was driven at the grassroots level via the consumer-oriented adoption of Apple iPhones and iPads and Motorola Droids that began to sweep through the market. When the sales executive up in the corner office demands she needs her new personal handset or tablet working with corporate email server and connected to the office Wi-Fi network, yesterday’s mobile device risks were suddenly evaluated under different light thus driving a wedge into the restrictive mobile device policies enforced by many IT security teams.

None of these facts was lost on RIM, their ecosystem or their investors for that matter. Over the past year, RIM (now officially renamed BlackBerry in both name and core product) has transformed the company’s vision and strategy in the mobile computing market to dramatically transform both their product hardware and the underlying mobile device software with differentiated, next generation offerings that leverage past strengths as well as support future ones. All this culminated today with the official launch of the BlackBerry 10 operating system and announcement of the first two of six planned handsets – the touchscreen BlackBerry Z10 and the upcoming QWERTY-based BlackBerry Q10. These devices are launching globally in the coming weeks/months and are sure to not just energize the CrackBerry faithful with long-awaited features but also begin to rebuild their base with new customers who feel the current crop of mobile offerings leaves them wanting something different and more secure. 

Our team has had the good fortunate to work on project to bring our CellCast Solution platform for enterprise mobile learning to the BlackBerry 10 device platform and we officially launched our new offering in the BlackBerry App World earlier this month in support of today’s product introduction (along with 70K other applications). The core functionality of our new BB10 app is virtually identical feature-wise to all our other native smartphone, tablet and eBook reader apps in other popular App stores but what sets this new app apart from its siblings is the “wow factor” users gain from BlackBerry’s new Cascades-based development environment and interface. The level of what’s possible has easily changed by an order of magnitude from the current BlackBerry/BBOS7 operating environment versus this new realm.


As evidence, the picture above shows our current BlackBerry 7 CellCast app next to our new BlackBerry 10 CellCast app each configured with the same selection of features and options. The graphical interface is more engaging and simplified – hallmarks of the new “less is more” mobile design doctrine my friends like RJ Jacquez (@rjacquez) and Mayra Aixa Villar (@mayraAixaVillar) both espouse. Both apps allow users to access training content, complete surveys, interact within defined social networks, and actively participate in game-enabled learning environments and check their status on leader boards – the BB10 just makes all those formal and informal learning interactions more enjoyable.

Overall, the “look and feel” is truly wonderful as you’ll see in the short promo video included below that I produced using another excellent feature found on the BlackBerry 10 that’s not found on many other smartphone handsets – HDMI video output that can be recorded by an external video source. Add to that some other compelling BB10-only features like BlackBerry Hub, BlackBerry Balance and the new video-capable BlackBerry Messenger/BBM with cool screen sharing capabilities to amass even more reasons (beyond control and tight security) why enterprises are going include BlackBerry 10 solutions in their mobile computing universes. BlackBerry 10 will definitely improve the mobile learning experience for all who adopt and use one.


Finally, my thanks to our whole team who worked diligently to design, create, test and deploy our next generation app for all our BlackBerry 10 users, partners and customers – you make me proud! :)
Read More
Posted in | No comments

TSM Magazine - number 8 launch event - talking about cloud

Posted on 13:14 by Unknown
For Today Software Magazine, today was an important day. The first number of 2013 was launched. In this month number we can have different subject about web, SEO, IT management and much more.
In this number of the magazine I decided to talk about scalability points on the cloud, using some example that Windows Azure offer to us.
If you know Romanian I invite you to read the full article here, if not you will need to wait 1-2 until I will have time to traduce it.

My presentation slides can be found here: http://www.slideshare.net/raduvunvulea/radu-vunvulea#

Read More
Posted in Azure, Cloud, eveniment, Windows Azure | No comments

Password/Token/PIN definition

Posted on 03:13 by Unknown
Password, Token, PIN, Passcode… every day we use this items when we need to authenticate in different systems. I observed that there are times, during a discussions, when is not very clear what is the difference between this items and the terminology is used in a wrong way.
Let’s see what each item means:
Password: It is a set of characters used during authentication process and is known by the user. The user can also set the password.
Token: It is a temporary access key that is generated by a provider (server, hardware device …) and can be used by someone to have access to different resources. A token cannot be change manually by an end-user to a friendly-value
PIN: It is similar to a password and is used during the authentication process. Normally the PIN is used when the user is partial trusted (for example mobile phone). In general a PIN is not very long and after several attempts of using a wrong PIN the account/device is locked. 
Passcode: Is a combination between PIN and Token and is used to authenticate in secure environment. This Passcode is available only for a limit period of time. Because of this the system can request to the user after a specific period of time to enter the Passcode again.
 
Using the correct term is very important, because the way you implement the authentication process can be very different if you are using a token or a password for example.
Read More
Posted in | No comments

Monday, 28 January 2013

Windows Azure Storage Emulator and testing servers

Posted on 07:32 by Unknown
When you start to work with Windows Azure Storage Services like blobs or table you will need to specify an account name and a secret key. Working with the Windows Azure Storage Emulator you ask yourself what credentials I should use.
The good part of the story is that Microsoft offers us a default account name and key that can be used to access the storage. This can be used with success whey you want to use the local storage emulator:
Account Name: devstoreaccount1
Account Key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
Basically these are universal credentials that can be used on all the Windows Azure Emulator instances. The purpose of this is only for development and testing.
When you are staring development an application you should know that the path to the resources is a little bit different between the Windows Azure and your local machine. Your local resources are accessed using a path in the following format:
http(s)://127.0.0.1:10000/myAccount/myContainer/myContent.txt
When we are using a real blob, our path would be similar to this:
http(s)//myAccount.blob.core.windows.net/myConainer/myContent.txt
There is a little difference of the path. This small difference can make a big different when we want to start to isolate our testing machine 100%.
The first think that we can do is to set the connection string to “UseDevelopmentStorage=true”. This will solve your problem if you don’t have hardcoded file paths. Otherwise you should define different file path to blob storage if you are using an emulator or the storage from cloud.
If you are asking yourself – Where is the content of the blob stored where I’m using emulator? – the response would be in the following path:
C:\Users\myAccount\AppData\Local\dftmp\s0\...
This is the path to all your content.
Another solution for your problem is to map all your content from the blob on your servers IIS and play a little with the DNS. In this way you could “emulate” the real storage emulator without the need to have the Windows Azure Emulator installed on the server.
From my perspective the best solution to create a server where you test your application is to isolate all requests that use Windows Azure Storage and group them in a component. When you would test the application you would use a mock component that would use directories and files.
In this way your testing machine would be isolated 100%. Also testing that access to Windows Azure Storage works is an integration test of a component/resource and this is not your main goal.
Read More
Posted in Azure, test, Windows Azure | No comments

Tuesday, 22 January 2013

Code refactoring - NULL check (Part 3)

Posted on 10:45 by Unknown
Part 1
Part 2
Part 3
In my last two posts I wrote about “Null Object Pattern” in different scenarios. This post is related to this subject and we will discover how we can use this “pattern” when we are working with interfaces.
Let’s assume that we have the following interface and implementation of the interface:
public interface IFoo
{
int A { get;set; }
int B { get;set; }
int C { get;set; }
}

public class Foo : IFoo
{
public int A { get;set; }
public int B { get;set; }
public int C { get;set; }

}
In this case we would need a mechanism to implement a null object. We could create a static property to the Foo object that represents the null (default) value. This could be a solution but is not the best one.
Off topic: I really don’t like the NULL naming. I would prefer a name like “Default”.
What about creating a class that represents our null interface?
Creating a class that implement our interface that represent our null object will help us a lot when we need to check if the object represent the “null” object or an initialize object. Also, in this way we will not have our Foo class polluted with different fields/properties.
public class NullFoo : IFoo  
{
private int _defaultA = 0;
private int _defaultB = -1;
private int _defaultC = -1000;

public int A { get { return _defaultA } }
public int B { get { return _defaultB } }
public int C { get { return _defaultC } }
}
What we gain using this solution? We have a code that is clearer and easier to understand. On the other hand, we added complexity to our code. Also we still need to initialize the object with value and detect if an object represent the “null” object.
In conclusion even if this solution adds complexity to our code, the code will be easier to read and our intention is very clear to the reader.
Part 1
Part 2
Part 3
Read More
Posted in | No comments

Friday, 18 January 2013

[Post-event] Cloud and Windows Azure in 2013 - Codecamp la Cluj-Napoca, 17 ianuarie

Posted on 22:03 by Unknown


This week we had the first Codecamp event in Cluj-Napoca - event link. We decided to start the New Year with cloud computing – Windows Azure.
Why we decided to do this? There are lots and lots of features that Windows Azure offer. People tend to see cloud as a place where you can scale up and down with instance – but is more than this.
We had 2 sessions and an open panel at the end.
  • Scalability in Cloud Applications (Radu Vunvulea)
  • Maintenance of Windows Azure applications (Mihai Tătăran)
  • Open Panel
In total were around 55 people and a part of them stayed with us until 10 PM. We would like to thanks to the sponsors for the location and for the great eggplant :-) - Yonder and Small Footprint
My pressentation can be found bellow:

Scalability in cloud applications from Radu Vunvulea 
Mihai T. presentation:

Mihai Tataran - Maintenance of Windows Azure Apps from ITCamp Romania
Here are some photos from the event:


Read More
Posted in codecamp, eveniment, Windows Azure | No comments

Code refactoring - NULL check (Part 2)

Posted on 21:33 by Unknown
Part 1
Part 2
Part 3

In my last post we played a little with how we can check if an object is null or not. What I forget to mention in the post is the way how you can construct the object that can be null.
In the given case the constructor of the object was pretty complicated and you could not create the object without initialize a lot of items around him. As Tudor mention in a comment we could use the “Null Object Pattern”.
Let’s see how the code would look like if we could create an instance of the object. The “Null Object Pattern” is based on a neutral object that is considered the equivalent for NULL. This object contains all the default value of the properties that are exposed.
Using an object like this we don’t need to check if our item is null or not. We can directly access a property of it. During the lifetime of an application we should have only one instance of our object (Null Object) – the instance can be stored in a static field.
Using this solution we would end up with this:
public class SomeFoo
{
public int A { get;set; }
public string B { get;set; }
public int C { get;set; }


private static SomeFoo _nullInstance = new SomeFoo()
{
A = 0,
B = null,
C = -1
}

public static SomeFoo NullInstance
{
get
{
return _nullInstance;
}
}
}

public class Foo
{
SomeFoo _some = SomeFoo.NullInstance;

...

public int GetA()
{
return _some.A;
}

public string GetB()
{
return _some.B;
}

public int GetTotalX()
{
return _some.A + _some.C;
}

}
This will work great if we don’t have cases when for the property “A” or “B” we need to return 0 and for a method that calculate “A”+”B” we need to return -1. But in the general case this solution works great.
In the next post we will see how we can implement this pattern when we are working with interfaces.
Part 1
Part 2
Part 3
Read More
Posted in | No comments

Code refactoring - NULL check

Posted on 04:59 by Unknown
Part 1
Part 2
Part 3

Let’s look over the following code:
public class Foo
{
SomeFoo _some;

...

public int GetA()
{
if(_some == null)
{
return 0;
}

return _some.A;
}

public string GetB()
{
if(_some == null)
{
return null;
}

return _some.B;
}

public int GetTotalX()
{
if(_some == null)
{
return -1;
}

return _some.A + _some.C;
}

}
We can see that the IF checks appears in more than one place. Even if is only a simple check, there can be a lot of places where it appears.
If we manage to extract this check in a generic method, than the code would be more legible. Because we don’t return each time the default value of an object we need to be able to return custom “default” value for the case when or object is null.
We can image a method that accept as parameter the object that we check if is null or not and another two parameters that represent the default value that need to be return and a generic function that return the expected value.
private TReturn ExecuteFuncOverObj<TReturn>(object obj, TReturn defaultValue, Func<TReturn> func)
{
if( obj == null)
{
return defaultValue;
}

return func.Invoke();
}
In this way our code would look like this:

public class Foo
{
SomeFoo _some;

...

public int GetA()
{
return ExecuteFuncOverObj(_some, () => _some.A, 0);
}

public string GetB()
{
return ExecuteFuncOverObj(_some, () => _some.B, null);
}

public int GetTotalX()
{

return ExecuteFuncOverObj(_some, () => _some.A + _some.C, -1);
}

}
If we need this behavior in other methods we could define a helper function or an extension method of Object.
Enjoy!
Part 1
Part 2
Part 3
Read More
Posted in clean code | No comments

Thursday, 17 January 2013

VM Depot - Stepping into a new era

Posted on 06:24 by Unknown
From last year, Windows Azure started to support any kind of system on Virtual Machines. We can install a Linux operating system on them without any kind of problem. Also we have some images created by default, with different operating system, that can be used by anybody.
This year we have a new feature related to these images.  Windows Azure offers VM Depot. This is a place where anybody can upload his image of operation system and share with others. For example we can create and share with others an image of Ubuntu that is preconfigured to run different application like Redmine, Moodle,  Glitorious and so on.
A nice feature of this system is the rating and feedback mechanism. Each user can rate an image and give feedback. In this way people can select more easily an image for themselves. Not only this, but you can take an image, change it and share it again with others.
When you want to deploy an image of a VM machine from Windows Azure, VM Depot will generate the command line that you need to run on Cloud to install the specific image on your virtual image. Publishing your machine is simpler than deploying it. You need to set a name, description and a URL path where the VHD is published. 
You don’t need to have a Windows Azure account to be able to navigate, get the deployments script or publish a new virtual machine.
The real value of this service is for the companies that have a product that can be run on cloud also. Image that you are a software company that has a great product for online payment. Your product is developed in C++ and runs on Ubuntu. You will be able to publish an image of your VM machine for all your customers very easily. In this way your customer will have images of your server pre-configured.
Using this new service we can share and deploy images for Windows Azure very easily.
Read More
Posted in Azure, virtual, Windows Azure | No comments

Tuesday, 15 January 2013

Data Model for Reporting over Windows Azure Tables (part 2)

Posted on 02:18 by Unknown
Part 1
In the last post we talked a little about how we can calculate TOP 5 visited URLs per day for each user and TOP 5 visited URL anytime. For these cases I propose some ways on how we can store information on Windows Azure Table in a way that we can generate these reports.
In today post we will see how we can resolve the concurrence problem. We can have 10, 20 or 100 commands that want to execute over the same entity from Windows Azure Table. Because of this we need to guaranty that the writer has the last version of the entity before update it. If we will not be able to guaranty this… than our reporting solution will be compromised.
Windows Azure Table comes with a simple solution. Each entity that is stored on tables contains a unique key named ETag. ETag is changed every time when the entity is updated or changed. Based on this value we can know if we have the last version of an entity or the entity was changed from the moment when we receive it. ETag is the secret that give us support for concurrency access to Windows Azure Storage (Tables and Blobs).
Each entity that is retrieved from Windows Azure Tables has the ETag set. When someone will update any field from the given entity, the ETag value will be changed. In the moment when another user tries to make an update with an invalid ETag, the merge option feature will be used.
The data context contains a merge option filed that can be set manually. Based on this value, we can provide a custom behavior when a conflict appears. The values that are supported for MergeOption enum are:
  1. AppendOnly (default value)
  2. OverwriteChanges
  3. PreserveChanges
  4. NoTracking
For a description of this values please take a look here.
We saw that Windows Azure tables already have support for object “versioning” and automatic detecting and resolve merge conflict.
This can be used with success in our problem, when  in the case when the entity was update by another client we will need to retrieve the last version of the entity and update it.
Read More
Posted in Azure, Windows Azure | No comments

Friday, 11 January 2013

Data Model for Reporting over Windows Azure Tables

Posted on 06:29 by Unknown
One of my colleague tried implemented a browser history mechanism for MVC. Based on this data he would like to generate two simple reports:
  1. Top 5 web addresses accessed by a given user per day
  2. Top 5 web addresses accessed by all user
When the data store is implemented using SQL Azure, this problem can be resolved very simple.  The question that appeared here is: Can we implement a data store model using Windows Azure Table Services?
I will try to propose a possible data model that is using Windows Azure Table.
In the default implementation (using SQL Azure), there were 3 kind of information that is stored in the SQL tables:
  • URL visited
  • User
  • Date
Because we don’t have an order by, count or a max function in a query over Windows Azure Table we need to think at a model that would help us with this. We will start with the first requirement:

Top 5 web addresses accessed by a given user per day
To be able to solve this problem we need a data model that permit us to refer to URLs for a given day and user.
Theoretically, we can have an unlimited number of tables in Windows Azure Tables (and we don’t need to pay for each table in part). Because of this we can have a different table for each day. In this way the cleanup mechanism will be extremely simple. Also, when we want to access historical, selecting a specific day will be very easily.
We already know that each table from Windows Azure Tables contains two fields that play the role of keys: Partition Key and Row Key. Partition key can be used with success when we have different items types saved in the same table. Entities could be grouped based on the user, because of this we can save in the Partition Key the user id. In this way we will be able to specify a specific date and user.
In the row key we can store the visited URL. Another property (column) will be needed to store how many times the URL was visited in a specific day. On the server we can define a mechanism that will add or increment a visited URL.
The downside of this solution is that we will need to make two different transactions when we want to increment the history counter. One transaction that brings the current counter for the given user and URL (if exist) and another one that update (insert) the counter value.
When we need to generate the TOP 5 for a given day per user we will have to load all URLs for specific user and order this by the counter value. We don’t need to forget that in Windows Azure Tables we don’t have support for Order By and Top N functions of a query – because of this we need to retrieve all the URLs that a user visited in a given day.

Top 5 web addresses accessed by all user

Option 1
To full fit this request we need to create another Windows Azure Table that will store the URL and the counter for each URL. To be able to support Top 5 not only for URL but also for domains we will store in the Partition Key the URL domain and the Row Key the rest of the URL path.
Another solution would be to have in the Partition Key the same values for all rows and in the Row Key the full URL. We don’t want to have in the Partition Key the URL (and in the Row Key the counter) because in this case we risk having a table that is fragmented – when a Windows Azure Table is too big, Windows Azure can split our table based on the Partition Key and move our spited table on different machines (this is not visible for consumer – is an implementation detail).
The biggest downside of this solution in the moment when we need to retrieve the top 5 most visited URLs. We will need to retrieve all the content from our table and calculate the top 5.

Option 2
Another possible solution for this problem is to have more than one table. Based on how many a URL was visited we will be stored in a specific table. For example we would have
  • VisitedUrls1to100
  • VisitedUrls101to1000
  • VisitedUrls1001to10000
  • VisitedUrls10001to100000
For example when the URL is in the first table (VisitedUrls1to100) and the counter value will reach 101, that the entity will be moved to the next table and so on. In this implementation we will have a big problem to find a URL to increment the counter. To optimize this we would need to use another table that would store the URL and the table name where our URL counter can be found (VisitedUrls1to100).
The good part of this implementation is in the moment when we need to calculate top 5 and we can retrieve only a part of the URLs.

These were the possible implementation that I see using Windows Azure Tables. I think that this problem is not suitable for Windows Azure Table and a relational database is better for this case.
I didn’t forget about a problem that needs to be solved here – concurrency. I will come with a post tomorrow.
Part 2
Read More
Posted in MVC, table, Windows Azure | No comments

Thursday, 10 January 2013

Scheduled Backend Tasks - Windows Azure Mobile Services

Posted on 07:20 by Unknown
Using Windows Azure Mobile Services we can create in a short period of time a simple backend for our application. In the last period of time a great feature appeared – Scheduled Backend Tasks
This feature permit users to create jobs that can run at a specific time interval. Imagine that you have an application that track the GPS location of users for the last 6 hours. All the information those are older than 6 hours can be removed. This problem could be solved by a manual trigger, but we are the XXI century, everything needs to be automatized. In this case you would have a job on a server that would make this cleanup. But wait; way would you need something like this when Mobile Services give you the possibility to create your backed very easily.
The scheduled job support gives us the possibility to create a job that run at specific time intervals or demand. Each job that is created can be enabling or disable anytime. Also, jobs can be run manually, using the “RUN ONCE” functionality. 
The language that can be used to define each job is JavaScript. It is the same language used to define custom scripts over tables from Mobile Services. From this job we can execute any kind of code over tables from Mobile Services or we can call remote services. You can imagine any kind of scenarios. The script need to added from the Windows Azure Portal, in this moment there is no support to define it in Visual Studio and make a deploy.
I tried to find what are the current limitation (January 2013) of Scheduled Backed Tasks. What I found until now is:
  • The smallest time interval is 15 minutes
  • Modules supported in this moment are: “azure”, “sendgrid”, “request” (but this list will expand)
  • There is no maxim time limit and you don’t pay for computation time. BUT (yes, there is a but), if you run scripts that drain the CPU that the task will be terminated
Don’t forget that scheduled backend task can be used with success when we want to use push notifications at a time interval. Another case when you can use this feature is to test custom scripts that are defined over tables from Mobile Services.
Read More
Posted in Azure, Windows Azure | No comments

Tuesday, 8 January 2013

Cloud and Windows Azure in 2013 - Codecamp la Cluj-Napoca, 17 ianuarie

Posted on 11:01 by Unknown
Link pentru inregistrare
Acest an se anunță un an extrem de interesant. Soluțiile cloud devin mature, iar miza creşte atât pentru provideri cât şi pentru dezvoltatori. Cu această ocazie Codecamp vă invită la "Windows Azure in 2013". În cadrul acestui eveniment o să vedem ce ne oferă Microsoft în lumea cloud.


Participarea la eveniment este gratuită. Mulțumim în special sponsorilor pentru susținere.
Agendă

18:15-18:30
Sosirea participanților

18:30-19:30
Scalability in a Cloud Application
Radu Vunvulea
In this session we will see what are the scalabilities points of a cloud application. In the first part of the session we will look over the services offered by Windows Azure.
19:30-19:40
Pauza


19:40-20:40
Maintenance of Windows Azure applications
Mihai Tătăran
After you have developed version 1 of your Windows Azure solution, you need a strategy and strict procedures in place for application maintenance and support. In this session you will learn the basics on Windows Azure applications operations.
20:40-21:40
Open Panel
All about Windows Azure and cloud applications.



Sponsori:

Yonder



Pentru mai multe informații

  • Radu Vunvulea
    • vunvulear@yahoo.com
    • 0766562375
    •  
Link pentru inregistrare
Read More
Posted in codecamp, eveniment, Windows Azure | No comments
Newer Posts Older Posts Home
Subscribe to: Comments (Atom)

Popular Posts

  • Service Bus Topic - Automatic forward messages from a subscription to a topic
    Windows Azure Service Bus Topic is a service that enables us to distribute the same messages to different consumers without having to know e...
  • CDN is not the only solution to improve the page speed - Reverse Caching Proxy
    I heard more and more often think like this: “If your website is to slow, you should use a CDN.” Great, CDN is THE solution for any kind of ...
  • Content Types - Level 6: Rich Media
    Level 6: Rich Media NOTE: This is part 7 of 7 and the conclusion of this continuing series; please see earlier posts for more background inf...
  • Publishing our CellCast Widget for iPad
    The rush has been on this week as our development team worked to design a new version of our CellCast Widget specifically for Apple's up...
  • Patterns in Windows Azure Service Bus - Message Splitter Pattern
    In one of my post about Service Bus Topics from Windows Azure I told you that I will write about a post that describe how we can design an a...
  • E-Learning Vendors Attempt to Morph Mobile
    The sign should read: " Don't touch! Wet Paint !" I had a good chuckle today after receiving my latest emailed copy of the eLe...
  • SQL - UNION and UNION ALL
    I think that all of us used until now UNION in a SQLstatement. Using this operator we can combine the result of 2 queries. For example we wa...
  • Cum sa salvezi un stream direct intr-un fisier
    Cred ca este a 2-a oara când întâlnesc aceasta cerința in decurs de câteva săptămâni. Se da un stream și o locație unde trebuie salvat, se c...
  • Task.Yield(...), Task.Delay(...)
    I think that a lot of person already heard about these new methods. In this post I want to clarify some things about these new methods that ...
  • Content Types - Level 4: Reference
    Level 4: Reference Materials & Static Content NOTE: This is part 5 of 7 in a continuing series; please see earlier posts for more backgr...

Categories

  • .NET
  • .NET nice to have
  • #if DEBUG
  • 15 iunie 2011
  • 15 octombrie 2011
  • 2011
  • abstracta
  • action
  • adaugare
  • ajax
  • Amsterdam
  • Android
  • aplicatii
  • App Fabric
  • Apple iSlate
  • array
  • as
  • ASP.NET
  • AsReadOnly
  • Assembly comun
  • async
  • Asynchronous programming
  • asyncron
  • Autofac
  • AutoMapper
  • az
  • Azure
  • Azure AppFabric Cache
  • Azure backup solution
  • Azure Storage Explorer
  • azure. cloud
  • backup
  • BCP utility
  • bing maps v7
  • BitArray
  • BlackBerry
  • blob
  • BlobContainerPublicAccessType
  • breakpoint
  • bucuresti
  • C#
  • cache
  • CallerMemberName
  • CellCast
  • Certificate
  • CES
  • change
  • ChannelFactory
  • clasa
  • classinitialize
  • clean code
  • click event
  • close
  • Cloud
  • Cluj
  • cluj-napoca
  • Code contracts
  • code retrat
  • codecamp
  • CollectionAssert
  • Compact Edition
  • compara
  • Comparer T .Default
  • CompareTo
  • comparison
  • comunitate
  • concurs
  • Conditional attribute
  • configurare
  • connection string
  • container
  • content type
  • control
  • Convert
  • convertAll
  • convertor
  • cross platform
  • CRUD
  • css
  • custom properties
  • custom request
  • DACPAC
  • Daniel Andres
  • data sync service
  • database
  • date time
  • datetime
  • debug
  • default
  • delegate
  • dependency injection
  • deploy
  • DeploymentItem
  • design patterns
  • Dev de Amsterdam
  • development stoage
  • dictionary
  • diferente
  • digging
  • director
  • Directory.Exist
  • disable
  • dispatcher
  • dispose
  • dropdown
  • dynamic
  • EF
  • email
  • encoding
  • entity framework
  • enum
  • enumerable
  • Environment.NewLine
  • error
  • error 404
  • error handling
  • eveniment
  • event
  • ews
  • excel
  • exception
  • exchange
  • exita
  • explicit
  • export
  • extension
  • field
  • File.Exist
  • finalize
  • fire and forget
  • Fluent interface pattern
  • format
  • func
  • GC.SuppressFinalize
  • generic
  • getdirectoryname
  • globalization
  • gmail
  • hackathon
  • Hadoop
  • handle
  • HTML
  • html 5
  • Html.ActionLink
  • http://www.blogger.com/img/blank.gif
  • HttpModule
  • IComparable
  • IE
  • ienumerable
  • IIS
  • image
  • implicit
  • import
  • int
  • internationalization
  • Internet Explorer
  • interop
  • Ioc
  • IP Filter
  • iPhone
  • iQuest
  • IStructuralEquatable
  • ITCamp
  • itspark
  • java script
  • javascript
  • July 2012
  • KeyedByTypeCollection
  • KeyNotFoundException
  • Kinect SDK
  • lambda expression
  • LightSwitch Microsoft Silverlight
  • linq
  • list
  • lista
  • lista servicii
  • liste
  • Live Connect
  • Live ID
  • load
  • localization
  • lock
  • m-learning
  • MAC
  • Mango
  • map
  • mapare
  • mapare propietati
  • messagequeue
  • meta properties
  • method
  • MethodImpl
  • Metro App
  • Microsoft
  • Microsoft Sync Framework
  • mlearning
  • mlearning devices
  • Mobile Apps
  • mobile in the cloud
  • mobile learning
  • mobile services
  • Mobile Web
  • mongoDb
  • monitorizare
  • msmq
  • multitasking
  • MVC
  • MVC 3
  • MVVM
  • namespace
  • nextpartitionkey
  • nextrowkey
  • Ninject
  • nivel acces
  • no result
  • normalize
  • nosql
  • null expcetion
  • null object pattern
  • NullReferenceException
  • OAuth API
  • office
  • offline
  • Open ID
  • openhackeu2011
  • operations
  • operator
  • optimization
  • option
  • outputcache
  • OutputCacheProvider
  • override
  • paginare
  • pagination
  • path
  • persistare
  • Portable Library tool
  • Post event – CodeCamp Cluj-Napoca
  • predicate
  • predictions
  • prezentare
  • process
  • proiect
  • property
  • propietati
  • query
  • ReadOnlyCollection
  • ReadOnlyDictionary
  • referinta
  • reflection
  • remote
  • reply command
  • request
  • request response
  • resouce
  • REST
  • REST Client
  • RESTSharp
  • ronua
  • rss
  • rulare
  • salvare in fisier
  • sc
  • schimbare timp
  • select
  • select nodes
  • send
  • serializare
  • serialization
  • Server.Transfer. Resposen.Redirect
  • service bus
  • ServiceBase
  • servicecontroller
  • sesiune
  • session
  • Session_End
  • Session_Start
  • setup
  • Sibiu
  • signalR
  • Silverlight
  • sincronizare
  • Single Responsibility Principle
  • SkyDrive
  • skype
  • smartphones
  • smtp
  • Snapguide
  • sniffer
  • socket
  • solid
  • spec#
  • sql
  • Sql Azure
  • SQL CE
  • sql server 2008 RC
  • SRP
  • startuptype
  • stateful
  • stateless
  • static
  • stergere
  • store
  • store procedure
  • stream
  • string
  • string.join
  • struct
  • StructuralEqualityComparer
  • submit
  • switch
  • Symbian
  • Synchronized
  • system
  • tabele
  • table
  • techEd 2012
  • tempdata
  • test
  • testcleanup
  • testinitialize
  • testmethod
  • thread
  • timer
  • ToLower
  • tool
  • tostring
  • Total Cost Calculator
  • trace ASP.NET
  • transcoding
  • tuplu
  • tutorial
  • TWmLearning
  • type
  • unit test
  • unittest
  • UrlParameter.Optional
  • Validate
  • validation
  • verificare
  • video
  • view
  • ViewBag
  • virtual
  • visual studio
  • VM role
  • Vunvulea Radu
  • wallpaper
  • WCF
  • WebBrower
  • WebRequest
  • where clause
  • Windows
  • windows 8
  • Windows Azure
  • Windows Azure Service Management CmdLets
  • windows live messenger
  • Windows Mobile
  • Windows Phone
  • windows service
  • windows store application
  • Windows Task
  • WinRT
  • word
  • workaround
  • XBox
  • xml
  • xmlns
  • XNA
  • xpath
  • YMesseger
  • Yonder
  • Zip

Blog Archive

  • ▼  2013 (139)
    • ►  November (17)
    • ►  October (12)
    • ►  September (10)
    • ►  August (7)
    • ►  July (8)
    • ►  June (15)
    • ►  May (12)
    • ►  April (17)
    • ►  March (16)
    • ►  February (9)
    • ▼  January (16)
      • Fuslogvw.exe - assembly binding logger
      • CellCast App for BlackBerry 10
      • TSM Magazine - number 8 launch event - talking abo...
      • Password/Token/PIN definition
      • Windows Azure Storage Emulator and testing servers
      • Code refactoring - NULL check (Part 3)
      • [Post-event] Cloud and Windows Azure in 2013 - Cod...
      • Code refactoring - NULL check (Part 2)
      • Code refactoring - NULL check
      • VM Depot - Stepping into a new era
      • Data Model for Reporting over Windows Azure Tables...
      • Data Model for Reporting over Windows Azure Tables
      • Scheduled Backend Tasks - Windows Azure Mobile Ser...
      • Cloud and Windows Azure in 2013 - Codecamp la Cluj...
      • Quality Attributes Scenario Components
      • Lambda expression and threads
  • ►  2012 (251)
    • ►  December (9)
    • ►  November (19)
    • ►  October (26)
    • ►  September (13)
    • ►  August (35)
    • ►  July (28)
    • ►  June (27)
    • ►  May (24)
    • ►  April (18)
    • ►  March (17)
    • ►  February (20)
    • ►  January (15)
  • ►  2011 (127)
    • ►  December (11)
    • ►  November (20)
    • ►  October (8)
    • ►  September (8)
    • ►  August (8)
    • ►  July (10)
    • ►  June (5)
    • ►  May (8)
    • ►  April (9)
    • ►  March (14)
    • ►  February (20)
    • ►  January (6)
  • ►  2010 (26)
    • ►  December (1)
    • ►  November (1)
    • ►  October (1)
    • ►  June (2)
    • ►  May (1)
    • ►  April (4)
    • ►  March (1)
    • ►  February (1)
    • ►  January (14)
Powered by Blogger.

About Me

Unknown
View my complete profile