Quantcast
Channel: Infragistics Community
Viewing all 2223 articles
Browse latest View live

Exploring the new jQuery Tree Grid control

$
0
0

In our new 15.1 release, we’ve got a new ig Tree Grid control in our jQuery/HTML5 control set, Ignite UI. In this video we’ll take a closer look at the tree grid and show you all the cool new things you can do with it!

[youtube] width="560" height="315" src="http://www.youtube.com/embed/7fuA5TnzSUU" [/youtube]

The igTreeGrid presents hierarchical data by combining the principals of a tree and tabular data into one singular control. Inside this tree grid, you can see that  hierarchical data is rendered using the same columns and the end user is able to collapse and expand children rows.

The IG tree control inherits from the ig grid control, so all of the basic features are supported right out of the box, such as filtering. If you look at this example, you can see that the tree control is being used in a file explorer, and you can see here that filtering is supported. Sorting and paging are also supported right out of the box.

In addition, performance features such as virtualization, remote load on demand, and local load on demand are also included, allowing you to work with large sets of data while preserving a responsive user experience.

And that’s what our new igTree Grid is all about! If you haven’t already, go grab your free trial download of Infragistics Ultimate and check it out for yourself!


Using the Yammer API in your apps

$
0
0

Many Office 365 power users and IT professionals still struggle with understanding how Yammer - Microsoft’s Enterprise Social Network (ESN) offering - can be adopted by their organisation. Although Microsoft has offered the platform for a number of years now, there remains a substantial gap in understanding of how the tool can be used.

Research suggests that up to eighty percent of companies which introduce Enterprise Social Networks will see their installations fail. Whether as a result of poor preparation, a lack of training or simply by not making it relevant to business needs, making ESNs work is far from simple. No one wants to see their investment become an expensive failure, or maybe worse, simply ignored. Therefore, developing a strategy to encourage its adoption is good practice.

In addition to the usual training and encouragement, it’s also possible to adapt Yammer to an organisation’s specific needs by using its API to render changes that align with company goals. Many IT staff and power users are unaware of the possibility of developing company specific apps with the Yammer API, yet this can really impact on adoption. This post therefore is an introductory look at the Yammer API and its various possibilities.

Hold on, what is an API?

In simple terms, an API can be summarized as the methods in which one piece of software asks another to perform a service. These services aren’t typically visible to end-users however, even if they do enjoy their benefits. An API allows software developers to plug into the application (Yammer in this instance) to extend and enhance it. These may include the exchange of data, account verification and so forth. 

Microsoft, for years now, has allowed a strong and vibrant partner network to develop around their core products for exactly this reason; extensibility.  An API simply permits this to be done on a much more intimate level on an application by application basis.  The recent release of the Office 365 API (available here) shows how serious even Microsoft is at opening some of their cloud systems to third party utilization / development. The scope of this new determination also includes Yammer.

The Yammer Developer Centre

The Yammer Developer Centre is currently one of the best places to get started when looking to getting started with its API. It offers several useful content hubs that are well worth exploring and is especially useful for the non-expert. In brief, some of the principle guides cover:

 

  • Build your first app: A step by step guide on using the Yammer API & tools
  • Yammer App Directory: A useful index of currently available apps, with additional guides, partner list and FAQ
  • Authentication Information: Information on the various forms of authentication that can be used with Yammer
  • Open Graph: A slightly misleading title, this part of the developer network details how to write activity from your application into Yammer
  • Software Development Kits (SDK): Instructions on various flavours of Yammer SDK
  • Restful API: A lightweight API (covered below)

 

The Restful API

A Restful API is one that leaves less of a bandwidth related footprint whilst carrying out its requested duties. Yammer provide such an interface and this allows access to the various Yammer facets, such as groups, users, suggestions and so on.  These access points are available once a third party app has authenticated a Yammer network user. One additional thing to keep in mind is that, as with many cloud based utilities, there are threshold limits in place for how often your apps can pull data from Yammer itself.  If these breaches are limited, an application can and probably will be blocked. That said, for most casual developers, this API covers most of the bases.

Looking a little more at the SDK

The SDK’s that were alluded to earlier come in a variety of technological flavours, ranging from JavaScript, Ruby, Python and the iOS / Windows operating systems. JavaScript, as the de facto programming language for many applications in the modern era would be an apt language to explore Yammer development in. To give you your building blocks, check out this guide on JavaScript.

There’s a lot of potential for developing Yammer

There’s a lot of potential for developing Yammer and an introduction of this size could only hope to scratch the surface. Despite the fact that it’s not integrated into the Office 365 Stack as smoothly as we might like, the Yammer API still benefits from the decisions Microsoft is taking around development. 

The recent launch of the Office 365 development centre shows Microsoft’s commitment to making all their cloud platforms both mobile friendly and mobile first. Integral to this is movement is allowing developers to customize and extend potential experiences. Yammer, despite still not being fully part of the Microsoft or Office 365 experience (menu bar excluded) does offer development opportunity, which really should be taken advantage of.

5 Ways Going Mobile with SharePoint Increases Efficiency

$
0
0

SharePoint is about the integration of multiple technologies and purposes - it enables the creation of intranet portals, provides content and document management, enterprise search, business intelligence, and last, but not least, drives social collaboration. All seamlessly integrated inside the SharePoint platform, helping companies do their jobs more efficiently.

In an era of communication and instant access to information, SharePoint must go mobile. Users should be able to access important SharePoint information and communicate with their colleagues on the go.Mobile Sharepoint iOS and Android AppsIn this post, we’ll look at five interesting, game-changing ways in which mobile SharePoint can help you work better.

1. STAY PRODUCTIVE WHEN AWAY FROM THE OFFICE

Nowadays people work from airport lounges, hotels, cars, coffee shops, and at home. Some workers, such as consultants and salespeople, have to work on the go most of the time. They sometimes bring their own mobile devices (BYOD) or use the ones, given to them by their employers. Either way, no matter where they are, they have to stay productive at all times. They need a mobile SharePoint solution which utilizes mobile platforms’ advantages, and compensates for their limitations. As an example, SharePlus allows workers to edit items and documents offline and get access to their content whenever required. You can check your calendar meetings, update tasks, get notifications on document updates, or start conversations with colleagues, all within the same application, even when away from the office. If you need to check specific information quickly, with Enterprise Search and its advanced filters, you can easily find any content, buried in SharePoint.

2. STAY IN-SYNC WITH YOUR TEAM ANYWHERE

SharePoint social features can’t be left to the web only. Mobilizing a team shouldn’t hamper productivity, but increase it by fostering collaboration within the team. SharePlus successfully brings SharePoint social features to mobile devices, giving you access to your timeline and newsfeed, including activities and post updates. You can also start conversations with colleagues and get alerts on content changes, all designed to ensure a collaborative experience for your team no matter where they are.

3. EMBRACE A MOBILIZED CORPORATE CULTURE & IDENTIFY OPPORTUNITIES

Companies are expanding their global presence through M&A’s and partnerships with outsourcing service providers to reduce costs. This reality has increased the need for more flexible work arrangements that meet different work styles and wider time zones. Employees cannot always be present at their workstations any more. For their IT departments, this means goodbye to the old “Desktop First” and welcome to the new “Mobile First” device approach. Employees frequently work long hours at client offices, which further reduces the need to travel to the office and the need for an office space. The opportunities provided by mobility are numerous, but any newly mobilized office should take into account several key subjects, such as the cultural impact of working remotely, mobile technology adoption by employees, data security, and, of course, the ROI (return on investment) from going mobile.

For example, some companies find it useful to share the same device among a few employees, who can access SharePoint through a session-based app. SharePlus can also be used in this way, if needed, but the main point here is that mobility technologies provide a new way of doing things. Embracing a mobilized corporate culture is about rethinking a company’s way of working and implementing new mobile solutions, better suited for the world’s changing realities.

4. EXPERIENCE A SEAMLESS AND OPTIMIZED ACCESS TO INFORMATION

What does a SharePoint mobile user really want? The answer is easy - a mobile solution that helps them work efficiently and that is easy to use. But what does efficiency mean in the mobile scenario, and how can it be addressed? And how can users be presented with a familiar enough user interface that will make it easier for them to adopt a new mobile solution? SharePlus is the answer to both questions.

Companies usually invest in custom SharePoint experiences, allowing users to access optimized intranet portals merging different purposes, technologies, and sources of information. All of them are successfully integrated and presented together. For a SharePoint mobile solution, efficiency means being able to extend these custom experiences to mobile devices.

With Launchpads, SharePlus can extend a custom SharePoint experience by presenting mobile users with optimized, coherent, and visually appealing personalized views that are also accessible offline. Custom mobile Launchpads can include users’ most important information, such as calendars and appointments, libraries with relevant documents, forms to save new orders, price lists, etc. Sales representatives, managers, and even executives can all take advantage of a seamless integration of their daily work information while they are online or offline.

Launchpads can be displayed as the start screen for a SharePlus app and also as the main view for any SharePoint site. Either way, Launchpads’ greatest strengths are customization and versatility, allowing you to control how the Launchpad looks and behaveSharePlus - Your Mobile SharePoint Solution

5. INTEGRATE DATA ANALYSIS INTO YOUR SOLUTION AND GET INSIGHTS ON THE GO

Companies gather huge amounts of data stored in a variety of formats that include not only SharePoint, but also external databases, business applications, Excel spreadsheets, etc. SharePoint provides business intelligence tools, such as Excel Services and Microsoft Reporting Services for desktop platforms. SharePlus extends these and even more reporting capabilities to mobile platforms by integrating both content and data analysis.

Thanks to SharePlus’ integration with ReportPlus, you can easily transform your business data into real insights. Easy dashboard authoring allows you to create rich, interactive dashboards that consolidate content from multiple sources in a visually stunning way. You are empowered to access data from virtually any source, including SalesForce, Excel, SQL Server, MySQL, Oracle, Google Analytics, and more. Once you enable access to the data, you can filter, aggregate, and fully customize the way information is displayed. Easily slice and dice your data, as required, and, once ready, integrate your dashboard into your solution. Like Launchpads, ReportPlus dashboards can also be displayed as SharePlus’ start screen or the main view for any SharePoint site.

SharePlus and ReportPlus make viewing and creating reports on mobile platforms easier. More importantly, they allow the creation of an optimized mobile solution which integrates both content and data analysis. If we take a Marketing Manager as an example for a mobile SharePoint user, let’s see how they could use SharePlus and ReportPlus: They could have a Launchpad consolidating their marketing calendar, shared documents, campaign visuals, basically all relevant to them marketing content. Within the same application, a reporting dashboard can be used to track the effectiveness of marketing campaigns with information from the CRM, Google Analytics, and other sources. The Marketing Manager could filter and pivot the data by date, product, or campaign, all from their own mobile device within an integrated mobile SharePoint solution.ReportPlus - Your Reports on iPad and Android

FINAL THOUGHTS

There is one lingering question in front of enterprise IT decision makers: Will going mobile with SharePoint make my company more efficient? The answer is yes, and Infragistics is here to help you analyze and embrace your mobile opportunities. Contact us to discover how we can help your teams work smarter and better with SharePoint on the go.

SharePlus for SharePoint - Download for iOS

What’s New in the Ignite UI HTML5 Page Designer

$
0
0

In this video we’re going to take a look at two significant improvements you’ll find in the latest 15.1 release of Infragistics HTML5 page designer: improved theming and data source support.

[youtube] width="560" height="315" src="http://www.youtube.com/embed/czacCtRDeKY" [/youtube]

First we’ll take a look at how we’ve enhanced your theme support. Previously, the page designer explicitly supported the default ignite UI theme, but now you get additional support for other ignite UI themes, as well as some common bootstrap-based themes that you can easily select with the built-in theme picker. To change the theme, you simply select the theme picker, and pick whatever theme you want to apply. Here you can see the Infragistics default, a couple of other Infragistics themes that we supply such as Metro, and then you also have your boot strap themes.

Another improvement we’ve made is around your data source experience. One of the challenges with designing in the browser is the difficulty, of course, of accessing your various data sources.

In this release, we’ve tried to make it easier to understand, and work with, the limitations in the designer by adding explicit support for JSON P data source, and local data sources. You can see here, this is our JSON P data source, which allows you to easily connect to JSON P data source type.

So there you have it! A quick look at two of the neat new features you’ll find in the latest version of Infragistics HTML5 Page Designer. We hope you’ll enjoy – now go get coding!

Windows Presentation Foundation vs WinForms

$
0
0

For a long time we’ve been using WinForms when it comes to building Desktop applications. WinForms provides access to the native Microsoft Windows interface elements by wrapping the existing Windows API in managed code. WPF on the other hand, is the new platform for Microsoft Windows application development, based on the .NET Framework. This framework provides a clear, object-oriented, extensible set of classes that enable you to develop rich Windows applications.

Microsoft Windows Presentation Foundation (WPF) is a user interface (UI) framework for building Windows client applications with immersive and intuitive user experiences. It is a subset of the Microsoft .NET Framework and was first introduced by Microsoft as part of .NET 3.0. It combines the application UI, 2D graphics, 3D graphics, documents, and multimedia into a single framework to help developers create rich and interactive applications.

WinForms

WinForms applications have always been used to develop desktop applications where you want the entire processing burden to be rested on the client machine. This includes everything from drawing of graphics applications to data-entry systems to point-of-sale systems and games.

Below are some of the pros & cons for using the WinForms when developing an application.

 

PROS

  • Extensive documentation can be found on the Internet
  • Plenty of examples and tested thoroughly for years
  • Supports WPF
  • There are lot of 3rd party controls in the market to make the job easier
  • The designer in Visual Studio is still, as of writing, better for WinForms than for WPF, where you will have to do more of the work yourself with WPF

 

CONS

  • Designing your own look and feel in an application is a lot of work
  • Extra cost incurred to buy third party controls

 

WPF

WPF is a next-generation presentation system for building Windows client applications with visually stunning user experiences. With WPF, you can create a wide range of standalone and browser-hosted applications. Although releases for WPF were stagnant for a while, Microsoft recently announced the future roadmap for WPF.

Below are some of the pros & cons of using WPF when developing applications:

PROS

  • Powerful styling and skinning structure
  • Easy to create an own look and feel
  • It’s very flexible so you can re design your own controls without buying new controls
  • It's newer and thereby more in tune with current standards of technology
  • Does support Windows Forms
  • XAML makes it easy to create and edit your GUI, and allows the work to be split between a designer (XAML) and a programmer
  • Highly advanced data binding possible.
  • Uses hardware acceleration for drawing the GUI, for better performance
  • The ability to reuse existing code
  • Declarative vs. procedural code

 

CONS

  • Requires .NET Framework 3.0
  • Compared to Windows Forms, still in evolving phases.
  • Requires Dx9 compatible video card for advanced graphics

 

 

When to use WPF & WinForms

It’s clear that both the technologies have pros and cons to be considered before developing an application. Most of the arguments around using the WPF focus on the fact that it lets you build a flashy User Interface which can easily be created with little effort. That said, WPF is not just for applications which require a bit of “eye candy”. Sure, WPF has a lot of support for visuals and animations. However, that’s not all it’s good for. 

WPF is an especially good platform to use if your applications involve various media types. For example, it’s great if you need to incorporate video, documents, 3D content or animated transitions between a sequence of images - or a combination of the above. WPF is also great if you need to create a skinned user interface, if you need to bind to XML data, dynamically load portions of a user interface from a Web service or want to create a desktop application with a Web-like navigation style.

WinForms definitely still has a role to play however. If you are building applications with no need for the extensive modern functionality in WPF, then there is no compelling reason to leave behind a time-tested, developer-approved platform.  WinForms certainly has more third party controls available, online resources, and developer communities than WPF currently does. It’s also much easier to find WinForms developers than WPF developers and WinForms currently has a much better design-time experience in Visual Studio than WPF. That fact alone is a very compelling reason to stick with WinForms.

WPF is the natural successor to WinForms…

In the end, choosing between WinForms and WPF depends on the application’s requirements. WPF is definitely the new kid on the block and WinForms might seem old and boring. Nonetheless, development choices depend on the situation and Microsoft is continuing to deliver and support WinForms so it won't be going away anytime soon.

So, should Windows developers drop WinForms and adopt WPF?

We say, why choose one when you can have the best of both? It’s always exciting to learn new things as a developer, especially techniques related to graphics, so WPF is a great tool to learn. Nonetheless, WinForms is dependable and remains incredibly powerful. Going forward there’ll continue to be support for both so learning more skills just adds another string to your bow.

Visual Studio CTP 6: What's new?

$
0
0

Wouldn’t you just love to hand Microsoft a wishlist of your dream changes and improvements to Visual Studio? How often have you thought “if only it could…” when trying to carry out some unusual coding task?

Unsurprisingly, you’re not the only one! As impressive as Visual Studio is, playing catching up with the demands of modern technology is a game that Microsoft have to take part in constantly. For every new Visual Studio update there are many corresponding developments in the cloud, in hardware, in operating systems and in browsers. Developers constantly need new tools to write in this ever fluctuating landscape and Microsoft are constantly under pressure to release updates and improvements. Put simply, the updates can never stay relevant for long - the reason why Microsoft have released improved versions of the environment every couple of years since 1997.

Why CTP 6?

Developers who work in the Microsoft universe have good reason to be excited about the latest Visual Studio 2015 CTP (Community Technology Preview). Invited to have a look around the development environment (you can get your hands on a download here), reviewers have reported some pretty exciting updates and improvements. Since it’s still in CTP mode, it’s not surprising that it does not yet contain everything and still has some bugs. It might not tick every box on your wish list, nonetheless, the improvements give us a lot to be excited about.

That said, do you actually need to download CTP 6, or even Visual Studio 2015 (once the final version is released)? This is of course down to you and needs. Keeping abreast of changes and being aware of what’s around the corner is essential, especially in the constantly fluctuating world of tech.

For Microsoft, releasing this CTP demonstrates their openness to involving the wider community in their developments. Collecting the feedback of professionals ‘on the front line’ and having a conversation with end users to find out how the environment could be improved also helps them improve the technology in the run up to Visual Studio 2015’s final release. The full list of improvements can be found in Visual Studio’s website, but our favourite new features include the following:

 

Improved Android emulator

A real bugbear for developers has been testing their builds in Visual Studio on devices and operating systems outside of the Windows universe. Visual Studio is generally regarded as the developer’s toolkit and so being able to test builds you’ve knocked together inside Visual Studio is awesome. No longer will you have to export it to some third party cloud testing service, it’s all there in the studio.

The improvements in CTD 6 include Lollipop debug targets, support for OpenGL ES and this is reportedly pretty fast and smooth. The emulator will also include multi touch input simulation so you can try out pinching and zooming and we also have access to some advanced camera simulation capabilities. Have a go and let Microsoft know what you think!

Better credential authentication

When you’re working in the cloud it’s likely you’ll have a long list of services you use when working. Whether it’s Azure, Visual Studio Online or MSDN, going through all the necessary authentications whenever you log in can be a real pain. This should no longer be an issue in Visual Studio 2015 however, as CTP 6 lets you log into all your different accounts once you’re logged into one. This should mean many different features of Visual Studio and your cloud development work will mesh together more fluidly - something you’ll appreciate when you’ve got deadlines coming up!

CodeLens - track changes

In CTP6, Microsoft have made it easier to understand changes to your builds by using CodeLens to help you zoom in on code changes and history while you work in C++, JavaScript and SQL files stored in Git. This was previously only available in C# and Visual Basic files and will allow you to find out where changes have occurred in your build and work out how to deal with mistakes.

Find your way around with Code Maps

If you find working your way around your own codes complicated, doing so around someone else’s can be mind boggling! Fortunately, Visual Studio 2015 should make this a lot easier. Architecture menus are simplified, visibility is much simpler and display faster and there’s less clutter with code elements and dependency links receiving optional filters. This should essentially mean navigating the environment will be much easier.

How’s that wish list looking?

With all these updates, improvements and new features, Visual Studio 2015 promises to be a powerful and intuitive environment for developer. At Infragistics we love building amazing User Experiences and we reckon CTP6 will give most professionals a lot to get excited about. We’re looking forward to playing with Microsoft’s new toys and ticking some boxes off of our wish lists!

 

The Office 365 API vs. SharePlus for Building Mobile SharePoint Solutions

$
0
0

An API is a set of protocols with which a developer can interface with a given system or platform. Late last year Microsoft released the long awaited APIs for Office 365, finally giving developers a standard way to customize the popular collaboration platform. See here for a good overview from the MSDN site on the various ways you can now develop for the Office 365 platform.

For example, it is possible to write an HTML5 and JavaScript based website that reads data from Office 365 and displays it to users. Or you can build a Windows App which pulls data from a SharePoint Tasks list stored inside SharePoint Online.

But, if we focus on mobile, should you take that much time to create a mobile app from scratch for SharePoint 2013 users? What if you can easily develop personalized enterprise-wide solutions for both Android and iOS platforms right now? And even make them available for SharePoint 2007, 2010, 2013 and Office 365 users. With SharePlus you can develop enterprise apps using your HTML5 and JavaScript skills, saving time and taking advantage of a huge range of existing, tested features for both iOS and Android mobile platforms.

In this post, we’ll look at five facts that shed some light on the similarities and differences between both platforms.

1. FOCUS ON PARTNER ENGAGEMENT

Microsoft is actively encouraging developers to think of Office 365 as a platform and to integrate its data and services into applications for various platforms. The recently relaunched Office Dev Center is a testament to this. SharePlus is also helping developers of SharePoint and Office 365-based mobility applications go to market faster with Infragistics’ Partner Program.

2. BUILDING NATIVE INTRANET APPS FOR MOBILE DEVICES

While Office 365 has a good mobile Web view, accessing over the web isn’t the best approach for everyone. By creating a mobile app, specific for the company's own Office 365 Intranet, users can access a totally bespoke version of the Intranet on the move. Various Microsoft and third party apps exist, but most of them cannot always be easily modified and branded. SharePlus is one of the exceptions with its unique user interface possibilities. Although tailoring the UI to the user’s needs takes time, for large scale deployments and systems, it could pay real dividends.

3. EASE OF CREATING CUSTOMIZED MOBILE EXPERIENCES

Both the Office 365 and SharePlus platforms empower you to create custom solutions that access and interact with your customer’s data. The new Office 365 APIs can be used to build solutions across all mobile, web, and desktop environments for SharePoint 2013 and Office 365. SharePlus was designed for mobilizing SharePoint and Office 365, yet it can easily meet any needs for a multi-purpose solution that ensures a consistent user experience across all mobile environments. Building a custom mobile SharePoint solution is much faster with SharePlus as a basis, because you have all necessary SharePoint functionalities already working – data access, on-the-go collaboration, built-in security features, data synchronization and offline access, an easy-to-use JavaScript API, and ReportPlus BI dashboards. In addition, SharePlus supports SharePoint 2007, 2010, 2013 and Office 365.

4. OFFICE 365 AND OFFLINE CAPABILITIES

Office 365 has one obvious drawback. Like most cloud software, it requires a working Internet connection to display content. So, users on the move, far from a network connection, or in any other way offline, have limited options to stay productive. A solution to this problem would be to build an app that synchronizes certain data while connected, and provides an offline mode while disconnected. SharePlus already has you covered in terms of offline Office 365 capabilities on mobile devices.

5. CROSS-PLATFORM CONSISTENCY, PERSONALIZATION AND BYOD

When considering to build a mobile SharePoint solution, it’s not about choosing one or the other mobile platform. Employees are increasingly using their personal mobile devices for company goals on the go, which has brought up the BYOD (Bring Your Own Device) trend to new heights. SharePlus is specialized in mobile environments (iOS and Android) while the Office 365 API targets web-based environments primarily. You could potentially create a Chrome extension to enrich Office 365 content, using the API - in this way people browsing the desktop web could also access company or employee specific data from Office 365. Based on user account data, SharePlus provides employees with a seamless SharePoint experience across devices. For example, you can start working on a document on your desktop computer, then continue editing it on your iPad while offline on the road, and in the end sync it with your company SharePoint whenever you have connectivity again. You could also share the file and collaborate on it with a colleague, who is using an Android device – the user experience when handling the document remains the same across platforms.

A GLIMPSE INTO THE FUTURE

True mobile enablement of employees is not simply about giving them mobile access to enterprise portals, but about providing them with an optimized mobile experience on mobile devices. The vastness of the SharePoint platform calls for a mobile-first approach as opposed to building web-based mobile applications. Using the SharePlus platform, you can easily create native mobile SharePoint solutions with much less effort than if you built everything from scratch. The new Office 365 APIs could also be used in conjunction with SharePlus APIs in order to cover both native and mobile web environments. As we touched on earlier, Microsoft is putting a lot of effort in documentation and guidelines to help the developer community. So be sure to check out the Office Dev Center and our mobile SharePoint and Business Intelligence solution, and get started!

Developer News - What's IN with the Infragistics Community? (4/13-4/19)

$
0
0

I've been told many times that the best way to avoid making costly mistakes is to learn from those who have come before. Not one, but two of this week's highest rated articles focus on different types of mistakes you can make when developing your products. Why not check them out and save yourself from making the same mistakes these authors did?

5. Skipping Functional Requirements is a Costly Mistake (SogetiLabs)

4. Visual Studio Time Saver -- Faster HTML Coding (CDN News)

3. What was the First Computer Programming Language? (Computer Hope)

2. ASP.NET Web API: Understanding OWIN/Katana Authentication (CodeProject)

1. 10 Ways to Ruin Your Product (The Product Club)


Too Big Data: Coping with Overplotting

$
0
0

Scatter plots are a wonderful way of showing (apparent) relationships in bivariate data. Patterns and clusters that you wouldn't see in a huge block of data in a table can become instantly visible on a page or screen. With all the hype around Big Data in recent years it's easy to assume that having more data is always an advantage. But as we add more and more data points to a scatter plot we can start to lose these patterns and clusters. This problem, a result of overplotting, is demonstrated in the animation below.

The data in the animation above is randomly generated from a pair of simple bivariate distributions. The distinction between the two distributions becomes less and less clear as we add more and more data. So what can we do about overplotting?

One simple option is to make the data points smaller. (Note this is a poor "solution" if many data points share exactly the same values.) We can also make them semi-transparent. And we can combine these two options:

These refinements certainly help when we have ten thousand data points. However, by the time we've reached a million points the two distributions have seemingly merged in to one again. Making points smaller and more transparent might help things; nevertheless, at some point we may have to consider a change of visualization. We'll get on to that later. But first let's try to supplement our visualization with some extra information. Specifically let's visualize the marginal distributions. We have several options. There's far too much data for a rug plot, but we can bin the data and show histograms. Or we can use a smoother option - a kernel density plot. Finally, we could use the empirical cumulative distribution. This last option avoids any binning or smoothing but the results are probably less intuitive. I'll go with the kernel density option here, but you might prefer a histogram. The animated gif below is the same as the gif above but with the smoothed marginal distributions added. I've left scales off to avoid clutter and because we're only really interested in rough judgements of relative height.

Adding marginal distributions, particularly the distribution of Variable 2, helps clarify that two different distributions are present in the bivariate data. The twin-peaked nature of Variable 2 is evident whether there are a thousand data points or a million. The relative sizes of the two components is also clear. By contrast, the marginal distribution of Variable 1 only has a single peak, despite coming from two distinct distributions. This should make it clear that adding marginal distributions is by no means a universal solution to overplotting in scatter plots. To reinforce this point, the animation below shows a completely different set of (generated) data points in a scatter plot with marginal distributions. The data again comes from a random sample of two different 2D distributions, but both marginal distributions of the complete dataset fail to highlight this separation. As previously, when the number of data points is large the distinction between the two clusters can't be seen from the scatter plot either.

Returning to point size and opacity, what do we get if we make the data points very small and almost completely transparent?

We can now clearly distinguish two clusters in each dataset. It's difficult to make out any fine detail though.

Since we've lost that fine detail anyway, it seems apt to question whether we really want to draw a million data points. It can be tediously slow and impossible in certain contexts. 2D histograms are an alternative. By binning data we can reduce the number of points to plot and, if we pick an appropriate color scale, pick out some of the features that were lost in the clutter of the scatter plot. After some experimenting I picked a color scale that ran from black through green to white at the high end. Note, this is (almost) the reverse of the effect created by overplotting in the scatter plots above.

In both 2D histograms we can clearly see the two different clusters representing the two distributions from which the data is drawn. In the first case we can also see that there are more counts from the upper-left cluster than the bottom-right cluster, a detail that is lost in the scatter plot with a million data points (but more obvious from the marginal distributions). Conversely, in the case of the second dataset we can see that the "heights" of the two clusters are roughly comparable.

3D charts are overused, but here (see below) I think they actually work quite well in terms of providing a broad picture of where the data is and isn't concentrated. Feature occlusion is a problem with 3D charts so if you're going to go down this route when exploring your own data I highly recommend using software that allows for user interaction through rotation and zooming.

In summary, scatter plots are a simple and often effective way of visualizing bivariate data. If, however, your chart suffers from overplotting, try reducing point size and opacity. Failing that, a 2D histogram or even a 3D surface plot may be helpful. In the latter case be wary of occlusion.

Register Now for Infragistics’ Webinar series on migration from desktop technologies to web-based environment

$
0
0

The concept of migrating from desktop application to web technologies has been on the commercial scene for the past few years. With the success and popularity of services like SoundCloud, which gives you the freedom to listen your favorite tracks with absolutely no constraints on devices and no download required, more and more people now realize the huge potential and usability this transition will have in the enterprise world. Smartphones and tablets have become an inseparable part not only of people’s everyday life but they are getting into our professional lives at full speed as well. With executives in business-trip mode so often, those who want to work from home or on their commute and so many inventory situations, where a portable device to do the job is needed, the concept of enabling people to work comfortably outside the office is arguably taking a center stage these days.

The migration from desktop applications to modern web-based environment though can be an overwhelming and challenging process, especially when options on the table are far from clear.

At Infragistics we know that, and we’ve created a webinar series to make things much clearer and easier for you, featuring the solutions offered in our latest release of Infragistics Ultimate 15.1. These webinars cover everything from design and prototyping to development so you can get an in-depth overview of the whole process, which will have you building beautiful, high-powered web applications with greater reach, easier deployment, and lower total cost of ownership, in no time.

The series will be an ideal meeting point for desktop and web developers, UX architects, visual designers and anyone who is involved in the transition of moving either an existing desktop technology or server side web applications, which are not working well on devices.

Starting with our first webinar this Thursday, the 23rd, our Director of User Experience Kevin Richardson will reveal to you why it is so important to have a UX strategy when embarking on this important transition. Taking an existing desktop application and having it looked the same way but available on web is not as simple as it sounds. There are many aspects that need to be considered such as various design patterns, which allow you to use the application differently when you can access it remotely without being dependent on your office desk.

The following week, on the 30th of April, our very own George Abraham will show us the prototyping wonders which Infragistics’ Indigo Studio can do for your line-of-business development process. Being first with new and useful products on the market and staying ahead of the curve has always been crucial for businesses, but nowadays this process takes a whole new level. Brand new products or updated versions are out on the market in shorter time than the changing of the seasons. This change, however, includes a solid investment from enterprises in infrastructure, developer’s time, and knowledge, which in turn significantly raises the total cost of ownership. When prototyping with Indigo studio, you will not have to worry about whether the idea is good or not as your prototypes will help you determine this right from the beginning, before even writing a single code line, saving you valuable time and financial costs.

Our final presentation on the 7th of May, featuring Infragistics’ Director of Product Development Ambrose Little, will explore in detail the challenges found in enterprise-grade desktop applications, and will investigate the ways that migrating to the web will ultimately lower the cost of new software. Ambrose will also walk you through the technologies developers need to learn when starting that transition, using Infragistics’ jQuery/HTML5 toolset Ignite UI to help  you create high-performance web applications.

As an added bonus, all attendees will be entered into a raffle to win a free iPad Mini 3! Space is limited, so reserve your spot today. When you register for one webinar, you automatically gain access to all three – we make it easy!

We hope to see you in  the front row: the knowledge and practices our market-leading experts will share with you will certainly give you the competitive edge in your development process, and will provide your business undeniable benefits as well. Register here!

Upcoming Webinar: The Top 3 Must-Haves for a Successful Enterprise Mobility Solution

$
0
0

Upcoming Webinar: The Top 3 Must-Haves for a Successful Enterprise Mobility Solution

$284 billion – that’s the astonishing projected value for the global market for BYOD and enterprise mobility solutions by 2019. Currently valued at $72 billion, MarketsandMarkets expects an annual growth of 26.6 percent in the mobile enterprise business application market with North America as the largest region in terms of market size.

Without any doubt, enterprise mobility enablement has become a high-priority task in the strategy of many of today’s CIOs. Mobility, though, is no longer about simply supporting access to company email on certain devices. Enterprise mobility is about digital transformation and rethinking the ways employees engage with technologies to do their job whenever and wherever they are.

Pressured by BYOD (Bring Your Own Device) trends, executive and line-of-business manager needs, and a fast-moving mobility market, CIOs feel the need to embrace the right enterprise mobility solution, and to do so quickly. Making the decision on which technologies, platforms, and devices to use in order to mobilize their workforce comes with a number of challenges.

In our upcoming webinar “The Top 3 Must-Haves for a Successful Enterprise Mobility Solution”, Anand Raja, Global Solutions Consulting Manager at Infragistics and Technical Evangelist, will explore the 3 secrets of successfully leveraging your mobility opportunities and will show you how to capitalize on mobile platforms.

Mobile opportunities in front of enterprises are numerous – the question is, which ones should you pick and how can you utilize them in the most efficient way? Register now for our webinar and find out on April 30th - Reserve your spot today!

SharePlus for SharePoint - Download for Android

Windows RT is dead. What does that mean for Apps?

$
0
0

After an enthusiastic launch in 2012, Windows RT (Microsoft’s tablet which looked, but didn’t perform like Windows 8) received a cool welcome from consumers, lost the support of hardware manufacturers and has now been dropped by Microsoft too. Until now, Windows developers have been writing apps differently for Microsoft’s different hardware and operating systems, coding for different screen shapes and sizes. However, with the dropping of Windows RT, Microsoft are signalling a change in course when it comes to building apps for their diverse platforms.

Microsoft are now making a lot of noise about universal apps which promise to help designers write for all devices in C++, C# and JavaScript from Visual Studio. Using the Universal Windows app template, it should be a lot easier to translate your code to the specifics of different devices and systems. For developers in the Microsoft universe, getting to grips with this new approach will be essential. Already available for app design in Windows 8.1 for desktop and mobile, the universal app designer will be ubiquitous in Windows 10. This is all part of a broader move to unify and streamline coding in an increasingly diverse and specialized marketplace and it’s a considerable undertaking on Microsoft’s part.

Why did the old model need to be replaced?

Microsoft is indeed a massive corporation, and if these figures are to be believed, were it a country it would outstrip the economy of Croatia. Given its size and range of offerings - from software to hardware and consumer to business markets - it’s hardly surprising that the architecture behind its many tools is diverse. While a rich mix of tools and approaches can be a strength, it can also lead to flabbiness and confusion. At present, developers need to write apps for Microsoft’s different systems in different ways and this makes building apps for Windows a complex and challenging task.

Windows RT was a classic example of the limits to this approach. While it received some good reviews, it was simply too limited to become popular. Developers needed to write apps for Windows RT differently to how they wrote apps for Windows 8. Since it didn’t include many apps to begin with, few consumers bought into the system and, surprise, surprise, few developers wanted to put in the effort of writing apps that no one would use.

What are Universal apps and what to expect from them?

Dropping Windows RT must have been a blow for Microsoft, but their new approach demonstrates a willingness to adapt and be pragmatic. Put simply, Microsoft have adjusted their approach to the diversity of modern devices by reigning in the enormous number of APIs and frameworks which are currently proliferated around their empire. Rather than having many different ways of writing code, the plan is to offer one single place to write for all the different devices.

What this means is that you’ll no longer have to write different code for different devices - Visual Studio will take care of this for you. Whether it’s for tablet, Windows phone, laptop or PC, the apps you write will be configured for the specifics of each. Whatever the hardware, users will experience a consistent design and UX and appropriately tailored experiences for their devices. Additionally, all Windows apps will now be available in one Store and this should save developers a lot of time.

Universal app design is in fact already available for apps running from Windows 8.1. However, come the release of Windows 10 (which could be as soon as mid-2015), this will become the way of building apps for the future. Windows are a little cagey about exactly when all this will be ready. Nonetheless, more information will be released over the coming months prior to launch and you can get an idea of what it will look like here. For those who have developed apps for previous versions Microsoft have produced some handy guidelines on how you can upgrade your ready built apps to the universal model.

One code everywhere

The explosion in hardware and types of device over the last few years has produced a revolution in design and technology. It’s an exciting time to build apps but the challenges for of writing code for the diversity of devices available is also considerable. Windows Universal apps is a signal that one of the industry’s giants is responding to this change however.

Going further, tools like Xamarin.Forms take the idea of writing in one code and then let designers build amazing User Experiences for different operating systems. Given the range of products out there, allowing developers to write in one language for all platforms is an important offering from Microsoft, and we’re looking forward to seeing how this simplifies coding in the future. 

Developer Humor: Grocery Shopping

$
0
0

This is an absolute classic for you to enjoy on this hump-day. I've seen quite a few iterations of this joke over the years, but I've actually never seen it illustrated... so here you go!

Share With The Code Below!

<a href="http://www.infragistics.com/products/wpf"><img src=" http://www.infragistics.com/community/cfs-filesystemfile.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/d-coding/6153.Tech-toon-_2D00_-2015-_2D00_-med-res-06.jpg " height="3406" width="612" /> </a><br /><br /><br />Grocery Shopping by Infragistics <a href="http://www.infragistics.com/products/wpf">WPF Controls</a>

Three iOS UX elements to use in your App

$
0
0

Since the release of iOS7, App developers and designers have been adjusting to a whole new look in the Apple universe. Accustomed to embellishments and rich layers, the development community were taken by surprise with the shift to a very flat, simple interface. Regardless of your take on this, design and development for iOS will require a different approach to building apps if you wish to be consistent with Apple’s new look. Given this context it’s worth reviewing popular elements for iOS UX design and thinking imaginatively about how they can be used most effectively.

There are a number of considerations any developer needs to take into account when building for the iTunes store; successful app design is all about planning, testing and reviewing. It’s also important to maintain consistency across the app, both in terms of aesthetics but also when it comes to functioning and layout - users get spooked easily and will drop your app if it’s confusing. Good practice is to imitate the workings of native apps as users will feel instantly at home with your developments, although for immersive experiences such as games this is not necessarily the case.

Whether you have the greatest idea for a lifestyle tool, a travel planner or a weight loss programme, User Experience (UX) should run through everything you do. It’s essential to think how end-users will employ your app to do what they need and whether it will make sense to them. In this post we’ll look at three iOS UX elements which, when deployed effectively, make using your apps a joy.

1. Animations

As insignificant as they can seem, the animations which run through your apps can have an enormous impact on UX. They can turn your build from something purely functional and to a tool which is a real pleasure to turn on. 

When thinking about the kinds of animations you want to use therefore, it’s necessary to bear in mind those same UX essentials: consistency and needs of the user. Animations can have a variety of purposes:

 

  • Communicate and feedback to the user what is going on. The classic example of a spinning sand timer tells users something is loading so they don’t feel lost as to what the app is doing
  • Animations enhance the sense of direct manipulation. As technology develops, the more we want to forget we’re actually dealing with an interface. So, vibrations, pages which move like paper ones or the impression that pages are physically on top of others make users feel more at home
  • Animations can also help users visualize the results of their actions; buttons which seem to ‘push in’ when tapped also give users greater confidence in what they’re doing

 

With all the variety of possible animations out there, it can become tempting to use them heavily throughout your product. This is fine for immersive video games, but their overuse can become confusing and even slow down the app. You should therefore employ them sparingly; ideally users shouldn’t even notice they’re there!

2. Represent data and ideas succinctly

At base, a large proportion of apps are about conveying information of some sort to their users. Whether it’s baseball statistics, healthcare figures or economic forecasts, capturing this data in a clear way really improves the UX. However, too many apps demonstrate these figures in bland or confusing ways and when set out in tedious tables, data becomes hard to read and correlations difficult to comprehend. Tools which allow you to build visual representations of information can really improve UX however.

3. Typography - words are only half the story

In the new iOS, the flatness of the interface is married with a new approach to typography. Apple have replaced many buttons and icons with text. While it can occasionally be less clear what a button is and what’s simply text, it does make reading what they say a lot easier.

If, in your app, you decide to imitate Apple’s new approach or not, thinking about the layout of your content is essential. It’s recommended to never show text below font size 11 and also plan for users zooming in and out - be sure that your dynamic type auto-adjusts spacing and height.

As before, the real key with UX is consistency and thinking about end-user needs. Of course, keep styles consistent throughout your build but also consider what they look like:

 

  • Does your font colour show up against the background?
  • Do size adjustments correspond with what the user wants to read?
  • Does text show up clearly in different lights?

 

Don’t tempt me!

Considering the variety of touches, tones, colours and visualizations available, it can be tempting to go overboard on your app UX. However, as the saying goes, less is more. The above UX elements are important things to take into account when you design apps, but by far the most important points to bear in mind are about consistency and user needs. Regularly asking yourself if the design is consistent with other pages and if it actually serves a user need will help focus your work and turn your apps into streamlined and extraordinary experiences.

Want to know how your Web, desktop, or mobile application idea will look and work before even writing a single code of line? Here is the solution for you. Download our Indigo Studio free trial now and see this rapid prototyping tool in action!


Open source .NET: CoreCLR now on GitHub

$
0
0

At the beginning of February, Microsoft announced their release of CoreCLR on GitHub, where developers can now get their hands on the roughly 2.6 million lines of source code of which it is comprised. This move comes as part of their wider open sourcing of the .NET Core and a lot of people are already finding interesting ways of using the code. The releases are currently restricted to Windows, but will soon be available in Linux and Mac OS too (although there are means of getting at it already from different Operating Systems as this article explains).

We looked at Microsoft’s choice to begin outsourcing some of their proprietary coding in an earlier post and it’s exciting to see how these releases are panning out. For years - ever since they released .NET in 2002 - this information was kept well under wraps. The community are, of course, ecstatic about this move and for many, the ability to access, fork, clone and copy Microsoft’s fundamental codes is a big deal. What this means for developers, how the community can get involved and what the repercussions of Microsoft’s open sourcing will be are all compelling questions. In this post we’ll be delving into these issues.

CoreCLR - an overview

The .NET Framework is built out of a collection of interrelated architectures which relate to one another and is mainly written in C#. The CoreCLR fits in underneath the various parts of this structure and has the fundamental role of compiling code into machine language. It also has other functions such as garbage collection and IL bytecode loading.

Microsoft have explained that since originally launching .NET, they’ve gradually built in various verticals with different APIs into the overall architecture which have the same source code. Each of these projects was run by different teams and gradually ended up working at different paces on different projects. This was fine to begin with but it eventually became clear that building in horizontal components shared across the different verticals was becoming increasingly complex. The underlying aim of the .NET Core project therefore, is to write one code base which is interoperable across the whole platform and the choice to invite the developer community in here is part of a bid to gradually improve the whole structure. Open Sourcing CoreCLR was therefore a necessary but significant step in this process.

How can developers get involved?

Besides diving straight in and playing with CoreCLR’s code, there are a number of sources of guides and information on the release. The Mono Project is aimed at supporting the open sourcing of the .NET framework in general and it has handy guides for developers including a specific wiki for CodingCore CLR and this is a great place to start. Mono also has a community section where questions and topics can be discussed. In addition, GitHub also includes developer guides for working on CoreCLR.

So what’s Microsoft's game plan? 

There’s a variety of reasons that Microsoft are going down this route of open sourcing their code bases. While for many coders this is a dream come true - and something they’ve been waiting on for years - Microsoft have bigger motives than simply keeping the coding community happy. In many ways the CoreCLR is their “secret ingredient”, so releasing it to the world at large might seem like an illogical move. Why let everyone get their hands on the highly advanced code they’ve kept secret for so long; is this not a risky strategy?

It says a lot about Microsoft’s confidence of their place in the world that they’re ready and willing to reveal this information at all; only a company which is so assured of its relevance would take such a step. However, beyond this, there are a number of other reasons why they would release this data.

To a degree, Microsoft are drawing on the intelligence of the crowd. In their announcements about open sourcing, Microsoft have expressed their confidence in the open source community - through long experience they’ve come to recognize that collaboration with the community can in fact be very useful. When developers fork, clone and copy code they can make real contributions to Microsoft’s overall plans of developing .NET.

It’s a win win situation however, as developers too can take advantage of this information. It can help inform builds and projects, and give an insight into Microsoft’s internal code writing, which really is state of the art.

Get involved

By making CoreCLR available on GitHub, Microsoft have demonstrated their dedication to a more transparent and open business model, yet also displayed their confidence in their position in the world. For devs this is also an exciting opportunity to contribute to .NET and help better understand Microsoft’s work.

Want to see what the fastest grid on the market can do for you? Download Infragistics ASP.NET Data Grid and enjoy the ride!

 


See You at Build!

$
0
0

If I wasn't excited enough about heading out to the Bay Area next week for Microsoft's //BUILD, with my Infragistics colleagues, earlier today in Malta Microsoft's General Manager of Developer Experience, Bryan Biniak made some interesting commentary about the news we'll be hearing at next week's event.

It's common knowledge that we're in the midst of Windows 10's marketing and impending launch, but the surprise that Bikiak alluded to in his special press session was that there are "new products and services" that will also be announced at next week's big event.

What is Microsoft announcing next week? Do you have any guesses?

You can bet that I'll be there right beside you to hear the news at //BUILD. Make sure to visit me at booth #313 and pick up one of Infragistics' brand new surprise t-shirts. What are they? You'll just have to stop by to find out!

See you soon! If you need to reach the Infragistics event team while we're on site at the event and can't get to the booth, feel free to tweet @Infragistics or directly to me @DokiDara. We're happy to help you!

What is a Windows Universal App and why should I care?

$
0
0

One of the key drivers behind a mobile or desktop platforms’ success are the number of apps available in its corresponding app store. The Windows Phone store is catching up, but is still very much behind iOS and Android. The Windows store faces the same issue - it just does not contain enough apps (although it’s improving).

The biggest issue Windows 8 and Windows Phone 8.1 stores had was that they were two separate stores. So, if you wanted to build an app for both Windows 8 and Windows Phone 8, you’d have to create two apps. It was possible though to reuse code between those two apps, using Portable Class Libraries, but reusing UI was not possible.

Microsoft acknowledged this issue, and has introduced the solution: Universal Apps. Universal apps allow developers to create one app, and deploy it to both the Windows 8 and Windows Phone 8 stores. You are now able to create a different package for each store with a single action; your app will be published to all users with a Windows device! This brings some major benefits to end users too: their identity is shared between the Windows 8 and Windows Phone app and purchases are synchronized so users only have to buy the app once.

Windows 8.1 vs Windows 10

There are subtle differences between Universal apps for Windows 8.1 and for Windows 10. In Windows 8.1, you’ll still create two app packages when publishing. One for Windows 8.1 and one for Windows Phone 8.1 as the two still technically use different stores. Windows 8.1 and Windows Phone 8.1 share a lot of code, user controls and templates, but still require custom code for each platform.

In Windows 10 this has changed. The two app stores have been merged into one store: The Windows 10 store. You only create one package, and it will be available on any Windows device. This also allows you to virtually reuse all code between Windows 10 for mobile, tablets, and desktop devices.

The rest of this post is split in two parts, one aiming at Windows 8.1 & Windows Phone 8.1, and one at Windows 10. Before opening Visual Studio, make sure you have updated to at least Visual Studio 2013 Update 2. We also focus on Visual C#, but you can use the language of your choice.

Build a Universal App for Windows 8.1 and Windows Phone 8.1

Open File -> New Solution and open the following template category: Visual C# => Store Apps -> Universal Apps.

  • The Blank App will create an almost empty solution, with no pre-baked code. You’ll have to create everything yourself.
  • The Hub App contains a three-page universal app that uses a Hub control. The Hub control is very useful for content that can be organized in different sections or categories.
  • A portable class library is a project template that allows for reusable components. It will be created for you when you choose Blank App or Hub App, but you may want to add more class libraries later on.
  • Windows Runtime Component: This project type is necessary when you want to build a JavaScript app, and run compiled code in a DLL.

 

The future: Build a Universal App for Windows 10

Windows 10 will be released this year and the big difference is that the Windows 8.1 and Windows Phone 8.1 stores will merge into the Windows 10 store. Every app will run on every available Windows 10 device, and will adapt to the device specifications. Universal apps for Windows 10 allows you to create one single app for all devices, and configure it to render as required.

In Visual Studio, go to File -> New Solution and browse to the category Visual C# -> Windows 10.

  • Blank Application creates a new, empty Windows 10 universal app,
  • Class Library and Windows Runtime Component: See the earlier description in the section about Windows 8.1 universal apps.
  • The Unit Test App template is a project template to create unit tests for a Windows 10 universal app.

 

The biggest challenge in a Windows 10 app is to design your pages to render properly on every device. The same page will be used on a Windows 10 desktop machine with Full HD resolution and on a Lumia 530 Windows 10 mobile phone with “only” 854 x 480 resolution. New controls have been introduced to help you achieve this, e.g. the RelativePanel and SplitView controls. Read more about adaptive controls here.

Reach more people with less effort

The introduction of Universal apps enables developers to create one app and publish it to multiple platforms. In Windows 10 this will be even better, as it will be truly one single app, whereas in Windows 8.1 the mobile and desktop/tablet app stores are still two different entities.

The future could be very exciting indeed. Windows 10 will be a free upgrade for all existing Windows 7 & 8 users, and apps will be available to a very big audience. Creating apps for both tablet/ desktop devices and mobile phones will be very easy with universal apps. By providing a universal app, customers with multiple devices will have a seamless experience between laptops, desktops, phones and tablets!

On the lookout for creating amazing native experience with mobile controls ? Here is your best stop - get Infragistics Windows Phone Controls now as part of the ULTIMATE Developer toolkit for a Free 30-day trial!


Prototyping a Sales Dashboard for a Mobile Device

$
0
0

[youtube] width="560" height="315" src="http://www.youtube.com/embed/qqmkv_DrTGw" [/youtube]

In this video we created an Indigo Studio prototype to design the global sales dashboard for a mobile device form factor - an iPhone 6 to be precise! Much of the design that was introduced in the tablet version has also been implemented here, so I'm going to go ahead run the prototype so you get a better idea on how the  interactions of the design work on a mobile device.

The landing screen of the phone version shows three zones: month to date, quarter to date, and year to date figures. If someone is interested in any of the zones, they can just go ahead to drill down.

Here it shows the breakdowns of the sales figures by different regions and I can change to different divisions. I can access the chart from bottom. If I am interested in particular segment, for example the region of Americas, I can also access the chart of that particular segment from one click. It will demonstrate the global sales Americas from the chart.

If I decide to change to a different time range, for example, if I'm interested in the figures of previous months of sales figures, I can do so by swiping the time range up or down. Now I changed to June 2015. Because June falls into the second quarter, the quarter also reflects a change to Q2 that spans from April to June, and that is still within the range of 2015. So any of the time range change will also be reflected from other time ranges.

In this Indigo Studio prototype we were able to what the sales dashboard will look like on a mobile device. It helped us test the interactions and the navigations before the dashboard was developed, which in the end saved valuable time and money. To explore this for yourself, you can download the Indigo Studio files here.

Developer News - What's IN with the Infragistics Community? (4/20-4/27)

$
0
0

Live from the west coast this afternoon, I'm bringing you your Developer News! This week has some highlights from Visual Studio Community 2013, as well as some awesome UX insight. Check it out and I hope you enjoy!!

5. 3 Life Lessons I Learned from Coding (Lynda)

4. Introducing Visual Studio Community 2013 (Channel 9)

3. Communicating UX Goals Through Interface Design (Vandelay Designs)

2. 10 Things to Know Before You Become a Programmer (DevBattles)

1. Techniques for Breaking Down Technically Complex User Stories (Agile42)

Localize Property Names, Descriptions, and Categories for the XamPropertyGrid

$
0
0

I was browsing the Infragistics WPF Forums the other day and ran into this question asking how to localize the descriptions of properties in the xamPropertyGrid control.  The original poster looked at other solutions including the use of attributes, but thought those solutions were overly complicated and not very straightforward.  Of course my first thought was “then they’re are doing it wrong”.  So I wanted to see if I could adapt my blog post about how to localize Enum descriptions in WPF to accommodate the xamPropertyGrid, but take it a little further by also localizing the DisplayName and Category as well.  I mean heck, we are in a property grid with a lot of property information, why localize just the Description?  Heck no, let’s localize it all!

Adding Localization Support

My first step was to use my LocalizedDescriptionAttribute“as-is” from my other post to see if it would just work.  So I just copied and pasted this class into my project.

publicclassLocalizedDescriptionAttribute : DescriptionAttribute
{
    readonlyResourceManager _resourceManager;
    readonlystring _resourceKey;

    public LocalizedDescriptionAttribute(string resourceKey, Type resourceType)
    {
        _resourceManager = newResourceManager(resourceType);
        _resourceKey = resourceKey;
    }

    publicoverridestring Description
    {
        get
        {
            string description = _resourceManager.GetString(_resourceKey);
            returnstring.IsNullOrWhiteSpace(description) ? string.Format("[[{0}]]", _resourceKey) : description;
        }
    }
}

Now, I wanted to add support for the DisplayName and for the Category of the properties.  So I created two other classes that used a very similar approach that I used for the LocalizedDescriptionAttribute.

The LocalizedDisplayNameAttribute looks almost identical.

publicclassLocalizedDisplayNameAttribute : DisplayNameAttribute
{
    readonlyResourceManager _resourceManager;
    readonlystring _resourceKey;

    public LocalizedDisplayNameAttribute(string resourceKey, Type resourceType)
    {
        _resourceManager = newResourceManager(resourceType);
        _resourceKey = resourceKey;
    }

    publicoverridestring DisplayName
    {
        get
        {
            string displayName = _resourceManager.GetString(_resourceKey);
            returnstring.IsNullOrWhiteSpace(displayName) ? string.Format("[[{0}]]", _resourceKey) : displayName;
        }
    }
}

But, the LocalizedCategoryAttribute has a slight modification.  I had to override the GetLocalizedString method.  Other than that, the logic is the same.

publicclassLocalizedCategoryAttribute : CategoryAttribute
{
    readonlyResourceManager _resourceManager;
    readonlystring _resourceKey;

    public LocalizedCategoryAttribute(string resourceKey, Type resourceType)
    {
        _resourceManager = newResourceManager(resourceType);
        _resourceKey = resourceKey;
    }

    protectedoverridestring GetLocalizedString(string value)
    {
        string category = _resourceManager.GetString(_resourceKey);
        returnstring.IsNullOrWhiteSpace(category) ? string.Format("[[{0}]]", _resourceKey) : category;
    }
}

Now we can go ahead and add a couple of Resource.resx files to the project and target your desired cultures.  I am supporting English and Japanese (Nihongo).

Person resources

PersonResources.resx(English)

english person resources

PersonResources.ja-JP.resx (Japanese)

japanese person resources

Since we have resources, we need some properties to start localizing.  I’ll keep it simple and just use a Person class with a single property.

publicclassPerson
{
    [LocalizedDisplayName("NameDisplayName", typeof(PersonResources))]
    [LocalizedDescription("NameDescription", typeof(PersonResources))]
    [LocalizedCategory("PersonCategory", typeof(PersonResources))]
    publicstring Name { get; set; }
}

Let’s run our app and see what we have.  The default will be our English resources.  This means all of the values being displayed are being retrieved from the PersonResources.resx file.

xamPropertGrid localized with English

What happens when we want to change to use our Japanese localized values?  Well, let’s find out.  Open up your App.xaml.cs and override the startup method and change the culture.

protectedoverridevoid OnStartup(StartupEventArgs e)
{
    CultureInfo info = newCultureInfo("ja-JP");
    Thread.CurrentThread.CurrentCulture = info;
    Thread.CurrentThread.CurrentUICulture = info;
}

Now, run the applications again.

xamPropertyGrid localized with Japanese

Works like a charm!  It is obvious that our values are being retrieved from our Japanese resources stored in the PersonResources.ja-JA.resx file.

Pretty slick, right?  I don’t think this is overcomplicated or difficult to follow at all.  Looks pretty straight forward to me.  What do you think?  Hopefully you will find this useful, and maybe even use this approach in your WPF applications.  Be sure to check out the source code, and start playing with it.  As always, feel free contact me on my blog, connect with me on Twitter (@brianlagunas), or leave a comment below for any questions or comments you may have.

Viewing all 2223 articles
Browse latest View live