DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Latest Articles - DZone

article thumbnail
Generating CSV-files on .NET
I have project where I need to output some reports as CSV-files. I found a good library called CsvHelper from NuGet and it works perfect for me. After some playing with it I was able to generate CSV-files that were shown correctly in Excel. Here is some sample code and also extensions that make it easier to work with DataTables. Simple report Here’s the simple fragment of code that illustrates how to use CsvHelper. using (var writer = new StreamWriter(Response.OutputStream)) using (var csvWriter = new CsvWriter(writer)) { csvWriter.Configuration.Delimiter = ";"; csvWriter.WriteField("Task No"); csvWriter.WriteField("Customer"); csvWriter.WriteField("Title"); csvWriter.WriteField("Manager"); csvWriter.NextRecord(); foreach (var project in data) { csvWriter.WriteField(project.Code); csvWriter.WriteField(project.CustomerName); csvWriter.WriteField(project.Name); csvWriter.WriteField(project.ProjectManagerName); csvWriter.NextRecord(); } } Of course, you can use other methods to output whole object or object list with one shot. I just needed here custom headers that doesn’t match property names 1:1. Generic helper for DataTable Some of my projects come from service layer as DataTable. I don’t want to add new models or Data Transfer Objects (DTO) with no good reason and DataTable is actually flexible enough if you need to add new fields to report and you want to do it fast. As DataTables are not supported by default (yet?), I wrote simple extension methods that work on DataTable views. When called on DataTable it selects default view automatically. The idea is – you can set filter on default data view and leave out the rows you don’t need. If you just want to show DataTable to screen as table then check out my posting Simple view to display contents of DataTable. public static class CsvHelperExtensions { public static void WriteDataTable(this CsvWriter csvWriter, DataTable table) { WriteDataView(csvWriter, table.DefaultView); } public static void WriteDataView(this CsvWriter csvWriter, DataView view) { foreach (DataColumn col in view.Table.Columns) { csvWriter.WriteField(col.ColumnName); } csvWriter.NextRecord(); foreach (DataRowView row in view) { foreach (DataColumn col in view.Table.Columns) { csvWriter.WriteField(row[col.ColumnName]); } csvWriter.NextRecord(); } } } And here is simple MVC controller action that gets data as DataTable and returns it as CSV-file. The result is CSV-file that opens correctly in Excel. [HttpPost] public void ExportIncomesReport() { var data = // Get DataTable here Response.ContentType = "text/csv"; Response.AddHeader("Content-disposition", "attachment;filename=IncomesReport.csv"); var preamble = Encoding.UTF8.GetPreamble(); Response.OutputStream.Write(preamble, 0, preamble.Length); using (var writer = new StreamWriter(Response.OutputStream)) using (var csvWriter = new CsvWriter(writer)) { csvWriter.Configuration.Delimiter = ";"; csvWriter.WriteDataTable(data); } } One thing to notice – with CsvHelper we have full control over a stream where we write data and this way we can write more performant code. Related Posts .Net Framework 4.0: string.IsNullOrWhiteSpace() method Exporting GridView Data to Excel Code Contracts: Hiding ContractException How to dump object properties My object to object mapper source released The post Generating CSV-files on .NET appeared first on Gunnar Peipman - Programming Blog.
June 26, 2015
by Gunnar Peipman
· 4,748 Views · 1 Like
article thumbnail
Custom oAuth Login to Facebook for Windows Store Apps
Intro: the joy of third party dependencies At Wortell I am currently working on an app that uses some kind of Facebook integration. Last Friday (June 20) something odd occurred: some POC code that I got from my awesome colleague Melvin Vermeer where I had been toying with, suddenly stopped working. Assuming I had messed something up, I started tinkering with it, then checked the Facebook settings to see if Melvin had used some odd setting that only worked temporarily. This was not the case – so I even tried it on a different computer and later at home (operating on the assumption I had somehow blacklisted the Wortell offices). To no avail. The error I kept getting was: Given URL is not permitted by the Application configuration One or more of the given URLs is not permitted by the App's settings. It must match the Website URL or Canvas URL, or the domain must be a subdomain of one of the App's domains. Not a good way to start a weekend, I can tell you. Then I decided to employ the ‘wisdom of the crowd’, aka twitter. My fellow MVP András Vélvart responded immediately by acknowledging he had the same problem, and pointed me to this Facebook bug report. I hadn’t messed anything up, neither had Melvin. Facebook itself had pulled the rug from under us. Now at the point of this writing I have ascertained Facebook apparently have fixed the error, but that was not the case yesterday with a deadline looming I needed a plan B, and I got one with the help of Tamás Deme, aka 'tomzorz', a Hungarian Windows Phoneconsumer MVP that I did not knew nor followed yet (shame on me!). Although the ‘normal’ way now works again, I decided to blog about the alternative approach anyway, to make sure this plan B is available to everyone in case, ehm … excrement hits the cooling device … again. The prescribed way of getting a Facebook access token In a world where everything works as it should you can get a Facebook token using WebAuthenticationBroker and a Facebook C# SDK, which is also available as a NuGet package. The code I got from my colleague basically came down to this: using Facebook; namespace FacebookNormal { public sealed partial class MainPage : Page { private const string AppId = "your app id here"; private const string ExtendedPermissions = "publish_actions, user_managed_groups, user_groups"; public MainPage() { this.InitializeComponent(); } private async void ButtonBase_OnClick(object sender, RoutedEventArgs e) { var result = await AuthenticateFacebookAsync(); var md = new MessageDialog("your token is: " + result); await md.ShowAsync(); } private async Task AuthenticateFacebookAsync() { try { var fb = new FacebookClient(); var redirectUri = WebAuthenticationBroker.GetCurrentApplicationCallbackUri().ToString(); var loginUri = fb.GetLoginUrl(new { client_id = AppId, redirect_uri = redirectUri, scope = ExtendedPermissions, display = "popup", response_type = "token" }); var callbackUri = new Uri(redirectUri, UriKind.Absolute); var authenticationResult = await WebAuthenticationBroker.AuthenticateAsync( WebAuthenticationOptions.None, loginUri, callbackUri); return ParseAuthenticationResult(fb, authenticationResult); } catch (Exception ex) { return ex.Message; } } public string ParseAuthenticationResult(FacebookClient fb, WebAuthenticationResult result) { switch (result.ResponseStatus) { case WebAuthenticationStatus.ErrorHttp: return "Error"; case WebAuthenticationStatus.Success: var oAuthResult = fb.ParseOAuthCallbackUrl(new Uri(result.ResponseData)); return oAuthResult.AccessToken; case WebAuthenticationStatus.UserCancel: return "Operation aborted"; } return null; } } } You get the callback URL to your own app, create a login Url, ask the WebAuthenticationBroker to do it’s stuff and show the “connecting to a service” window with the Facebook login, you parse the result, and if all goes well, you have a token. All code sits in the code behind – this was a POC, so that is very much OK. Plan B – using a custom login using a WebViewThis looks very much the same, except that I have replaced both the AuthenticateFacebookAsync and the ParseAuthenticationResult methods. private const string FbSuccess = "https://www.facebook.com/connect/login_success.html"; private async Task AuthenticateFacebookAsync() { try { var fb = new FacebookClient(); var loginUri = fb.GetLoginUrl(new { client_id = AppId, redirect_uri = FbSuccess, scope = ExtendedPermissions, display = "popup", response_type = "token" }); var authenticationResult = await FacebookAuthenticationBroker.AuthenticateAsync(loginUri); return ParseAuthenticationResult(authenticationResult); } catch (Exception ex) { return ex.Message; } } private static string ParseAuthenticationResult(string authResult) { var pattern = string.Format("{0}#access_token={1}&expires_in={2}", FbSuccess,"(?.+)", "(?.+)"); var match = Regex.Match(authResult, pattern); return match.Groups["access_token"].Value; } Now what is that mysterious FacebookAuthenticationBroker? The framework for that I got from Tamás, and I added some stuff to it namespace FacebookCustom { /// /// This class is a helper to replace the default WebAuthenticationBroker /// public static class FacebookAuthenticationBroker { public static Task AuthenticateAsync(Uri uri) { var tcs = new TaskCompletionSource(); var w = new WebView { HorizontalAlignment = HorizontalAlignment.Stretch, VerticalAlignment = VerticalAlignment.Stretch, Margin = new Thickness(30.0), }; var b = new Border { Background = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255)), Width = Window.Current.Bounds.Width, Height = Window.Current.Bounds.Height, Child = w }; var p = new Popup { Width = Window.Current.Bounds.Width, Height = Window.Current.Bounds.Height, Child = b, HorizontalOffset = 0.0, VerticalOffset = 0.0 }; Window.Current.SizeChanged += (s, e) => { p.Width = e.Size.Width; p.Height = e.Size.Height; b.Width = e.Size.Width; b.Height = e.Size.Height; }; w.Source = uri; w.NavigationCompleted += (sender, args) => { if (args.Uri != null) { if (args.Uri.OriginalString.Contains("access_token")) { tcs.SetResult(args.Uri.ToString()); p.IsOpen = false; } if (args.Uri.OriginalString.Contains("error=access_denied")) { tcs.SetResult(null); p.IsOpen = false; } } }; p.IsOpen = true; return tcs.Task; } } } A lot of it is just setting up a UI of a popup with a WebView, then navigating to the Facebook authentication url. This will show a ‘normal’ web Facebook login (without the “Connecting to service” header). The interesting part I annotated in red and bold – when this event handler detects either “access_token” or “error=access_denied” in the url it’s navigated to, it considers it’s work done. Facebook navigates to a page with an url that either contains one of these strings, and we have a token again. Or not. I know, it’s crude, probably has a lot of edge cases, but it will get you through the day when time is tight ;) One more thing To get this to work, you will have to add in your Facebook app settings (on Facebook developer) under section “Settings/Advanced” the return url to whatever you decided to use for the Facebook success url ( see FbSuccess constant). Conclusion As always you can find a ready to run demo on GitHub although in this case ‘ready to run’ is stretching it a little, as you will need to define an app in Facebook developer to get this actually working. And a great big of thanks to my colleague and the awesome #wpdev community for getting this to work.
June 26, 2015
by Joost van Schaik
· 2,062 Views
article thumbnail
What is ASP.NET console application?
One mystery in ASP.NET 5 that people are asking me about are ASP.NET 5 console applications. We have web applications running on some web server – what is the point of new type of command-line applications that refer by name to web framework? Here’s my explanation. What we have with ASP.NET 5? CoreCLR – minimal subset of .NET Framework that is ~11MB in size and that supports true side-by-side execution. Yes, your application can specify exact version of CLR it needs to run and it doesn’t conflict with another versions of CLR on same box. DNX runtime – formerly named as K runtime, console based runtime to manage CLR versions, restore packages and run commands that our application defines. Framework level dependency injection – this is something we don’t have with classic console applications that have static entry point but we have it with ASP.NET console applications (they have also method Main but it’s not static). More independence from Visual Studio – it’s easier to build and run applications in build and continuous integration servers as there’s no need (or less need) for Visual Studio and its components. Applications can define their commands for different things like generating EF migrations and running unit tests. Also ASP.NET 5 is more independent from IIS and can be hosted by way smaller servers. Microsoft provides with ASP.NET 5 simple web listener server and new server called Kestrel that is based on libuv and can be used also on Unix-based environments. Application commands Your application can define commands that DNX runtime is able to read from your application configuration file. All these commands are actually ASP.NET console applications that run on command-line with no need for Visual Studio intsalled on your box. When you run command using DNX then DNX is creating instance of class and it looks for method Main(). I come back to those commands in future posts. Framework level dependency injection What we don’t have with classic console applications is framework-level dependency injection. I thinks it’s not easy to implement it when application is actually a class with one static entry point. ASP.NET console applications can be more aware of technical environment around them by supporting dependency injection. Alse we can take our console program to all environments where CoreCLR is running and we don’t have to worry about platform. New environments Speculation alert! All ideas in this little chapter are pure speculation and I have no public or secret sources to refer. This is just what I see that possibly comes in near future. But I’’m not a successful sidekick. CoreCLR can take our ASP.NET applications to different new environments. On Azure cloud we will possibly see that Webjobs can be built as ASP.NET console applications and we can host them with web applications built for CoreCLR. As CoreCLR is very small – remember, just 11MB – I’m almost sure that ASP.NET 5 and console applications will find their way to small devices like RaspberryPi, routers, wearables and so on. It’s possible we don’t need web server support in those environments but we still want use CoreCLR from console. Maybe this market is not big today but it will be huge tomorrow. Wrapping up Although the name “ASP.NET console application” is little confusing we can think of those applications as console applications for DNX. Currently the main usage for those applications are ASP.NET 5 commands but by my speculations we will see much more scenarios for those applications in near future. Related Posts ASP.NET MVC 3: Using controllers scaffolding Visual Studio 2010: Web.config transforms Creating gadget-like blocks for Windows Home Server 2011 web add-in user interface ASP.NET MVC 3: Using multiple view engines in same project Starting with ASP.NET MVC The post What is ASP.NET console application? appeared first on Gunnar Peipman - Programming Blog.
June 26, 2015
by Gunnar Peipman
· 3,412 Views
article thumbnail
[On-Demand Webinar] JSON+SQL: Query Without Compromise
watch the on-demand webinar » this webinar introduces n1ql, couchbase’s query language for json. n1ql is the first query language to leverage the complete flexibility of json and the full power of sql. while json benefits from sql because it enables developers to model and query data with relationships, sql benefits from json because it removes the “impedance mismatch” between the data model and the application model. join gerald sangudi, couchbase’s chief architect of query, for an introduction to the n1ql language, architecture, and ecosystem. watch and learn how you can: create a data model that is not based on query limitations query the same data in different ways without duplicating it build applications with ad-hoc, intelligent, and precise access to data leverage the entire sql ecosystem for enterprise integration watch the on-demand webinar »
June 26, 2015
by Chris Smith
· 1,315 Views · 4 Likes
article thumbnail
Mobile App UI/UX – Top 10 Trends to Watch Out in 2015 and Beyond
Great mobile apps are those which are useful in a unique way and to become useful in a unique way an app needs to assure good user interface and user experience. When every app designer has his own set of preferences often present trends can be guiding enough to meet the user expectation with design attributes. After so many so called rocking design elements in mobile apps ruling the scene for years, 2015 can as well e considered a year of fresh break. Yes, this year the focus once again rests on app design than any other aspects. With mobile devices reaching their soaring high in respect of variety of features, functionalities and demands of maneuverability, design elements are going to play key role in making apps win the heart and mind of users. At least latest mobile app design trends offer a great testimony to this. Trends show how people react and what they prefer in their apps and what they can feel without finding their preferred usability. Naturally, however avant-garde or breakthrough a notion you have concerning your mobile app development concept and implementation, you have to come in terms with these trends if you want to ensure lovable UI and UX in your app. Let us introduce here top 10 trends in mobile app UI and UX to watch out in 2015. Contextual UI and UX as per user situation Interface consistency no longer is a stringent norm as long as breaking it you can make the app more useful. Powerful device sensors now can make you informed regarding the user’s situation or what he is doing, their location, activity and attention level and the environment they are in. Accordingly the UI can be molded for contextual use. So the UI does not need to be same all the time. It can vary according to the situation or environment or user need. When the user is having his daily exercise or jogging in the park the UI can contextually make the buttons larger for ease of access. Similarly, a booking app can show the available hotels, restaurants contextually whenever you reach a new place. Flat UI with subtle layering Flat UI design has been around for quite some time and still attracts majority of apps because of the simplicity and usefulness that it offers. Especially for mobile focused websites and mobile apps they flat design is still adorable as in small screen it offers easy navigation, faster access and better usability. But obviously, flat design evolved as well offering lot of value additions and changes that can make apps more useful. Just at a glance they look simple, straight to the point and contextual, all that users want. With new elements introduced within flat design like subtle color layers, few gradients and animation the design looks even more awesome. Hiding the functional buttons and menu Achieving a clutter free design with minimum elements grabbing the attention is more acceptable on smaller screens than in larger desktops and laptops. So, hiding menu and other functional buttons and appearing contextually when and where you need them is smart and it saves the app from unnecessary visual clutter. Drop down menu is a good way to deliver menu. Offering menu and function buttons with device tilting or with screen swipe is another smart UI element to achieve this. High quality life size images Full sized high density background images ruled the web last year and eventually entered as a new design trend for countless mobile apps as well. This year the trend shows no sign to stop and it is here now to stay. Maintaining pixel density, color contrast and consistent appearance across devices, these 3 aspects are important for implementing this design element. It is important to see whether the image responsively takes the size of screens across all devices. Augmenting visual coherence with perfect combination of color contrast in front content and background image is important. The image should be thoroughly relevant and meaningful to the app purpose. Thumb friendly navigation Most smartphone users these days hold the phone on his palm while navigating through the thumb over the screen. This posture is common to millions of users across the world and accordingly it is important that your navigation buttons and flow must address this posture and rule of ‘thumb’. Maintain the page flow in a manner that makes navigation with thumb while holding the phone on palm become easy. The function buttons that quickly makes use of device capabilities like camera, calls or message should be appropriately placed on the lower side offering quicker navigation through thumb movement. Tiled navigation interface A major UX optimizing trend of this year that has been embraced successfully by many great apps is the tiles in interface that present the app content into a card or tile like format offering enhanced visibility and readability. Tiles in interface are great for unequalled flexibility in arranging content as per the user choice. Tiled navigation is quicker and orients the user to the app content and purpose instantly. Multi-Device and wearable approach This trend has two distinct faces, respectively as multi device approach and design focused for wearable devices. There is a vast majority of users who prefer to accomplish their task through multiple connected devices. Consequently, the apps need to be built with agile app UIs. As wearable devices are growing robust with better display and communication capabilities more agile interfaces with swift capability between phones and wearable is increasingly becoming important. With multi device approach the apps need to have architecture to make it easy for data flow with context. Delivering consistent app performance across multiple mobile and wearable devices is important. Parallax scrolling Parallax scrolling has been popular web design element for quite some time. Now it became popular with mobile apps as well, especially with gaming apps like Angry Birds. It makes a stunning impression by offering three dimensional effects to the UX of the app. This design element is particularly effective if you want to tell a story with your app. Visually catchy superb graphic animation will make this a great design element. Visual coherence and stylish typography Finally it is all about achieving a visual coherence and sense of conformity with your app that matters more than any disjointed design aspect. The typography and font size should enhance the visual effect without creating clutter and it should make the app look beautiful and organized. The color shapes and order of elements together should make a brand statement. Smart visual hierarchy should be the smart way to guide users in navigation or in call to action buttons. Prominent, simple, readable and engaging typography is must for an impressive UI. Telling a story Telling the story of your brand or simply your app offerings through a simple storyline is the new way of engaging users with an app. With several new UI features and technologies making it easier to present a storytelling effect in your UI, it is popular among various apps. Use of animation, graphics and parallax scrolling can be effective for this UI approach. This new design technique is further enhanced with an array of new capabilities from HTML5. Conclusion These trends are helpful to understand the gross elements and influences in mobile apps. But even these trends are far from static and they are constantly in a flux to come up with new dimensions and effects.
June 26, 2015
by Keval Padia
· 831 Views
article thumbnail
Mercury xRM agrees deal with Hitachi Solutions Europe
LONDON - June, 2015. Mercury xRM has agreed a deal with Hitachi Solutions Europe (Hitachi Solutions) to enable the two companies to work together to deliver enterprise level implementations of its advanced recruitment software. The partnership is the latest move from Mercury xRM to cater for the enterprise recruitment market, leaning on the successful implementation track record that Hitachi Solutions already has in a range of different industries. The deal comes following an increase in demand for Mercury xRM from larger, multi-site recruitment consultancies, after the largest specialist SAP recruiter in the world, RED, purchased the software to be installed in eight different offices across the globe. Mercury xRM is a revolutionary technology solution designed to transform the way recruitment consultancies do business. Built upon the robust Microsoft Dynamics CRM platform, the software allows recruiters to fill job roles faster and more efficiently via a single platform. As Microsoft Dynamics CRM Global Partner of the Year 2014, Hitachi Solutions, brings industry leading expertise and resources to large scale Microsoft implementation projects, putting Mercury xRM in a strong position to perform enterprise level implementations to multiple large global recruitment organisations. Commenting on the partnership, Chris Kendrick, Sales Director and Product Visionary for Mercury xRM said, "Hitachi Solutions has the knowledge, expertise and resources to help us successfully deliver Mercury xRM to large global organisations. We've already made positive strides forward working with the enterprise market and we are very excited to be working with Hitachi Solutions as we strengthen our delivery offering to the enterprise recruitment market." Steven French, Executive Vice President at Hitachi Solutions Europe, also commented, "The recruitment industry represents an important sub-sector of Service Industries, a key vertical industry for us. Currently the industry is very fragmented and we see huge potential in this agreement to deliver an industry leading technology solution to large global recruitment consultancies across the globe."
June 25, 2015
by Fran Cator
· 952 Views
article thumbnail
George Kadifa Joins Perfecto Mobile’s Board of Directors
Former Executive Vice President of HP Software and Operating Partner at Silver Lake Partners Brings Deep Experience to Accelerate Continuous Quality and Digital Engagement Boston, MA – June 25, 2015: Perfecto Mobile, the world’s leader in mobile app quality and experience, today announced the appointment of George Kadifa to its Board of Directors. As a Board member, Kadifa will expand Perfecto Mobile’s vision towards enterprise digital engagement and accelerate the momentum with Agile and DevOps teams. Kadifa has extensive expertise in growing and managing technology businesses, having held leadership positions at HP, IBM, Silver Lake Partners, Corio, Oracle, and Booz-Allen & Hamilton. As Operating Partner at Silver Lake Partners, Kadifa was responsible for driving the growth of a 24-company enterprise portfolio from the firm’s large-cap investment fund. Most recently, Kadifa served as Executive Vice President of HP Software and Strategic Relationships, where he led HP’s multi-billion dollar software portfolio under the direction of HP’s CEO. “We are delighted to welcome George Kadifa to Perfecto Mobile’s Board of Directors,” said David Reichman, Chairman of the Board at Perfecto Mobile. “His extensive leadership experience at the top global technology companies, paired with his deep operational knowledge, will add a valuable dimension to the Board as he supports Perfecto Mobile’s vision into the next phase of digital engagement.” Kadifa is currently the Managing Director at Sumeru Equity Partners, Director at Velocity Technology Solutions and serves as a trustee for the University of Chicago Booth School of Business. "As someone with first-hand experience leading both a new breed of companies as well as some of the largest technology organisations in the world, I have come across many companies who set out to change an industry,” said Mr. Kadifa. “It is quite rare to find a company such as Perfecto Mobile, with superior technology, a vast market to penetrate, and a visionary executive team. In addition, it offers a highly disruptive business that is transforming legacy tools and waterfall methodologies to an open and continuous approach, matching the way DevOps, Agile and Mobile teams work. I am excited to work with CEO Eran Yaniv, the Perfecto Mobile executive team and the Board to support Perfecto Mobile’s explosive growth becoming the standard in the mobile and digital quality market.”
June 25, 2015
by Fran Cator
· 1,060 Views
article thumbnail
CUBA Platform was Introduced to the Public at Devoxx UK
CUBA Platform was introduced to the public at Devoxx UK 2015: we met many of the 1000 participants, held over 50 comprehensive discussions, got some great feedback, had pleasant meeting with colleagues from Vaadin… All that has lead to a range of new fruitful ideas - thanks to Devoxx! CUBA team presented a speech illuminating the hidden side of building a new framework and explaining the choice of key technologies and the philosophy of the CUBA platform.
June 25, 2015
by Aleksey Stukalov
· 1,033 Views · 6 Likes
article thumbnail
Interoute’s cloud platform chosen by European technology company, BQ, to deploy its Unified Communications
BQ deploys its call centre and telephony solution on Interoute Virtual Data Centre to improve international customer and employee communications Madrid, June 25th, 2015 - Interoute, owner operator of Europe's largest cloud services platform has announced that BQ, a leading European technology company, has chosen Interoute Virtual Data Centre (VDC), to host its new customer and employee unified communications solution. BQ has deployed a new telephony and call centre solution on Interoute VDC, leveraging the throughput, flexibility and scalability provided by this cloud platform. The BQ solution supports its 1,000 employees across different international offices, using Interoute VDC to provide the global reach they need. The solution is complemented with telephony services and worldwide DDIs from Interoute with great cost savings thanks to the economies of scale provided by Interoute's global infrastructure. Since it was founded in Spain, BQ has grown its business inside and outside the country thanks to its latest generation technology devices catalogue and highly competitive prices, as well as its full commitment to its users through a comprehensive support service. Mario Fernández, IT Manager at BQ, has said: "One of the main BQ objectives is to give the best user support. So, we chose Interoute to provide and guarantee the performance of our telephony service. The VoIP solution provided by Interoute meets all our needs: hosted private cloud, high availability and the ability to quickly scale and expand when needed." Interoute Virtual Data Centre is Interoute's scalable, fully automated Infrastructure as a Service (IaaS) solution. Interoute VDC provides on-demand computing, storage and applications integrated into the heart of its customers' IT infrastructure. This networked cloud replaces the need to buy, manage and maintain physical IT infrastructure and is built into Interoute's fibre connected physical Data Centres world-wide. It's simple to provision, scalable, compliant and cost effective. Diego Matas, General Manager at Interoute Iberia, has added: "We are proud that a Spanish company such as BQ, committed to education and pioneering innovation in exciting fields like robotics and 3D printing, has chosen our cloud platform for its networked communications. Interoute's networked cloud will enable BQ to continue to build upon its excellent reputation for high quality service. We look forward to working with this innovative company to support its future ICT needs."
June 25, 2015
by Fran Cator
· 784 Views
article thumbnail
InfinityQS launches ProFicient Now! program to help manufacturers leverage cloud technology
- Now available with limited-time pricing, package brings together InfinityQS’ cloud-based enterprise quality hub, ProFicient on Demand, with training and ongoing services to ensure a successful deployment - InfinityQS International, Inc., the global authority on real-time quality and Manufacturing Intelligence, announces the launch of ProFicient Now!, a program that blends InfinityQS’ cloud-based enterprise quality hub, ProFicient on Demand, with training and ongoing services to ensure a successful deployment. Available with limited-time pricing, ProFicient Now! aims to give manufacturers the knowledge, tools and continued guidance needed to realise the benefits of a cloud-based quality management program and quickly gain a competitive advantage. “In today’s fast-paced market, manufacturers are looking for ways to better align their quality systems with overall manufacturing excellence goals,” said Doug Fair, Chief Operating Officer, InfinityQS. “By combining the power of the cloud with ongoing expert guidance from our engineering team, ProFicient Now! helps both new and existing clients track towards their goals and achieve a competitive edge through their quality initiatives.” With ProFicient Now!, manufacturers receive expert engineering guidance that leads them through their deployment. Included in the ProFicient Now! package is: Training: Administrators obtain comprehensive skills for building and maintaining the system. Solution Design: The client works closely with InfinityQS to examine the current environment and establish goals for the deployment. Onsite Services: An InfinityQS engineer creates the initial system configurations. Quarterly Consultations: InfinityQS experts guide clients in data analysis and help uncover opportunities for improvement and cost reduction. Executive Review: The InfinityQS engineer leads a review with the client senior management team to review successes, quality enhancements and opportunities for improvement that were uncovered during the use of ProFicient Now! InfinityQS ProFicient is a proven enterprise quality hub powered by a robust, centralised Statistical Process Control (SPC) software engine. ProFicient enables global manufacturers to proactively monitor, analyse and report on Manufacturing Intelligence to improve quality, decrease costs and make smarter business decisions. With a cloud-based deployment option, ProFicient streamlines global data collection and analysis with a unified data archive. For more information about ProFicient Now, including its limited-time pricing, visit here: http://www.infinityqs.com/ProFicient-Now-EMEA
June 25, 2015
by Fran Cator
· 1,005 Views
article thumbnail
Roundup: Benchmarking Social Business Tools, Scaling Customer Experience, and more
We’re happy to share some of the most interesting recent content we’ve come across about social business, the future of work, and customer experience that we hope you’ll find interesting and valuable. Benchmarking Social Business Tools A complete social business strategy requires more than publishing social media guidelines for employees. This ComputerWeekly article argues that leaders need to change their thinking and understanding of the enterprise as a social ecosystem. Four Tactics to Become More Responsive Businesses must be continuously adaptive and innovative in order to be successful. However, when shifts in the marketplace occur, many are still reluctant to adjust. In this Forbes article, Reuven Gorsht shares four tactics companies can use to be more responsive to opportunities and challenges. Social Business Application Market Growth According to 451 Research, the social business applications market is expected to more than double in revenue from 2014 to 2019. Meet the Boss of the Future The makeup of the U.S. workforce is changing dramatically; as of 2014, one in every three working Americans is some kind of freelancer. In this Fast Company article, Jane Porter explains how management must adjust to ever-changing teams mixed with full-time and freelance employees. How to Use Social Media in Sales In this Huffington Post article, John Rampton gives examples of how successful salespeople are using social media to connect with difficult-to-reach buyers who ignore cold calls and beat their quotas. Scaling Customer Experience Consumers and small business owners alike are enjoying the benefits of today’s sharing economy. However, the industry is lacking a consistent, positive, customer experience due to the fast growth of services like Lyft, Favor, and Uber. In this Forbes article, Blake Morgan talks about the importance of training, onboarding, and coaching to scale customer experience. Tech Hacks for a Balanced Life As companies are paying more attention to work/life balance by implementing new policies, employees are also finding their own ways to balance their careers and personal lives. This Mashable article by Eli Epstein offers 6 Tech Hacks to Master Your Work/Life Balance. We’ll continue to share these roundups every few weeks, and would love your recommendations. The articles included here have all been shared on our Twitter feed, @bloomfire, and we would love to connect with you there also.
June 25, 2015
by Bloomfire Marketing
· 1,009 Views
article thumbnail
Simplified API Monitoring for DevOps Teams
[This article was written by Laura Strassman] AlertSite is now integrated with Ready! API. This means that developers, testers and operations teams can collaborate together on API quality using the same tests and metrics, simplifying configuration of monitoring assets and ultimately turning around performance problems in real time. There are several advantages to this approach: You should be monitoring your APIs in production. When your API moves into production from test, the environment changes – there is no way to know if theAPI performanceis compromised unless you look. Furthermore, you can find problems that may be a result of the location or variance in traffic. There is no easier method. You can simply click a button from right in the Ready! API interface and see the status of your APIs in production it can’t get any easier. You take your already created test cases and turn them into monitors whenever you have a new API or test you want to keep an eye on. Troubleshooting is like shooting fish in a barrel. You wrote the functional test, you know it works, and when something comes back as not working you can isolate it quickly. All of this makes it easy to be ahead of problems, solve them quickly when they happen and keep customers happy. You can be monitoring your APIs in less than 3 minutes: <br>
June 25, 2015
by Denis Goodwin
· 1,573 Views
article thumbnail
How to Debug Your Maven Build with Eclipse
When running a Maven build with many plugins (e.g. the jOOQ or Flyway plugins), you may want to have a closer look under the hood to see what’s going on internally in those plugins, or in your extensions of those plugins. This may not appear obvious when you’re running Maven from the command line, e.g. via: C:\Users\jOOQ\workspace>mvn clean install Luckily, it is rather easy to debug Maven. In order to do so, just create the following batch file on Windows: @ECHO OFF IF "%1" == "off" ( SET MAVEN_OPTS= ) ELSE ( SET MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compile=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005 ) Of course, you can do the same also on a MacOS X or Linux box, by usingexport intead of SET. Now, run the above batch file and proceed again with building: C:\Users\jOOQ\workspace>mvn_debug C:\Users\jOOQ\workspace>mvn clean install Listening for transport dt_socket at address: 5005 Your Maven build will now wait for a debugger client to connect to your JVM on port 5005 (change to any other suitable port). We’ll do that now with Eclipse. Just add a new Remote Java Application that connects on a socket, and hit “Debug”: That’s it. We can now set breakpoints and debug through our Maven process like through any other similar kind of server process. Of course, things work exactly the same way with IntelliJ or NetBeans. Once you’re done debugging your Maven process, simply call the batch again with parameter off: C:\Users\jOOQ\workspace>mvn_debug off C:\Users\jOOQ\workspace>mvn clean install And your Maven builds will no longer be debugged. Happy debugging!
June 25, 2015
by Lukas Eder
· 25,037 Views
article thumbnail
Quick Tip: Exception Handling in Message Driven Beans
Let’s do a quick review of exception handling with regards to Message Driven Beans. The entry point into a MDB is the overridden onMessage method. It does not provide any scope for throwing checked exceptions and as a result, you will need to propagate unchecked exceptions (subclass of java.lang.RuntimeException) from your code if you want to handle error scenarios. Types of exceptions There are two categories of exceptions defined by the EJB specification and the container differentiates one from the other based on well stated semantics (again, in the EJB specification). Application Exception If you throw a checked exception (not possible for MDB but other EJBs can use this) which is not a java.rmi.RemoteException or it’s subclass, OR a RuntimeException (unchecked) which is annotated with @javax.ejb.ApplicationException, the container treats this as an Application Exception. As a result, it rolls back transaction if specified by [email protected] rollback attribute and retains the MDB instance for reuse – this is extremely important to note. @ApplicationException(rollback = true) public class InvalidCustomerIDException extends RuntimeException { public InvalidCustomerIDException(){ super(); } } System Exception If you throw a java.rmi.RemoteException (a checked exception) or it’s subclass, OR a RuntimeException (unchecked) which is not annotated [email protected], the container treats it as a System Exception. As a result, it executes certain operations like transaction rollback and discards the MDB instance (this is critical). public class SystemExceptionExample extends Exception { public SystemExceptionExample(){ super(); } } What about the critical part ?? It is important to take into account, the discarding of the MDB instance. In case of System Exceptions, the container always discards the instance – so make sure that you are using these exceptions for their intended reason. In case you are using Application Exceptions and they are unchecked ones (they have to be in case of MDBs), make sure you annotate them with @javax.ejb.ApplicationException – this will ensure that the MDB instance itself is not discarded. Under heavy loads, you would want to have as many MDBs in the pool as possible and you would want to avoid MDB instances being moved out of service. Sensible exception handling can help you realize this goal. It’as simple as annotating your exception class [email protected] and leaving the rest to the container :-) References The EJB (3.2) specification is a 465 page PDF which might look intimidating at the outset, but it’s a great resource nonetheless and not that hard to grasp. In case you want to understand Exception Handling semantics in further detail, please do check out Chapter 9which is dedicated to this topic Cheers!
June 25, 2015
by Abhishek Gupta DZone Core CORE
· 2,921 Views · 1 Like
article thumbnail
Spring Integration Kafka 1.2 is Available, With 0.8.2 Support and Performance Enhancements
Spring Integration Kafka 1.2 is out with a major performance overhaul.
June 25, 2015
by Pieter Humphrey
· 3,040 Views
article thumbnail
What's Coming With JSF 2.3?
There seems to be a good deal of excitement in the Java EE community around the new MVC specification. This is certainly great and most understandable. Some (perhaps more established) parts of the Java EE community has in the meanwhile been more quietly contributing to the continuing evolution of JSF 2.3. So what is in JSF 2.3? The real answer is that it depends on what the JSF community needs. There is a small raft of work that's on the table now, but I think the JSF community should be very proactive in helping determining what needs to be done to keep the JSF community strong for years to come. Just as he did for JSF 2.2, Java EE community advocate Arjan Tijms has started maintaining a regularly updated blog entry listing the things the JSF 2.3 expert group is working on. So far he has detailed CDI injection improvements, the newly added post render view event, improved collections support and a few others. You should definitely check it out as a JSF developer and provide your input. Arjan also has an excellent collection of Java EE 8 blog entries generally onzeef.com. On a related note, JSF specification lead Ed Burns wrote up a very interesting recent blog entryoutlining the continuing momentum behind the strong JSF ecosystem. He highlighted a couple of brand new JSF plugins that we will explore in depth in future entries.
June 25, 2015
by Reza Rahman
· 4,595 Views · 2 Likes
article thumbnail
Announcing the Release of Couchbase Mobile 1.1
[This article was written by Ali LeClerc, Product Marketing Manager, Mobile at Couchbase.] We’re excited to announce the release of Couchbase Mobile 1.1, available now for download. We’ve focused on building new features and enhancements in Couchbase Mobile 1.1. Highlights include: Couchbase Lite for iOS A newly overhauled Core Data adapter, CBLIncrementalStore, which allows you to easily add sync to your Core Data apps by using Couchbase Lite as your backing store Support for multiple data persistence libraries, including a preview of our storage engine of the future: ForestDB Query your database using NSPredicate via the new CBLQueryBuilder class Couchbase Lite for .NET Peer-to-peer sync allows two or more apps using Couchbase Lite to replicate directly with each other Self-hosted HTTP REST endpoint enables apps to expose a REST API Sync Gateway Support for Couchbase Server 4.0 (Beta 1) and our upcoming 3.1 release Webhooks, a new integration mechanism, provides change notifications so you can easily integrate Couchbase Mobile with line of business apps, 3rd party services, etc. You can read more in the blog by Dev Advocate James Nocentini PouchDB compatibility, so you can build HTLM5/JavaScript apps with Couchbase Mobile Download Couchbase Mobile 1.1 today Read the Couchbase Mobile 1.1 release notes Get started with Couchbase Mobile 1.1
June 25, 2015
by Chris Smith
· 1,124 Views · 3 Likes
article thumbnail
Investing in Your Infrastructure
Having mentored and invested in startups I have come to learn what works and doesn’t websites. The reality of getting out of startup mode and scaling takes vision and the ability to anticipate how you may need to pivot. There are two main reasons why startups do not scale. The first is a lack of experience and mentorship. This is closely followed by a lack of a working capital. An effective entrepreneur understands not only how to pivot but how to utilize capital investment. This article aims to demystify the need for investing in site infrastructure. When scaling a business there are several huge issues that executives tend to forget. whether you are a startup or a fortune 500 company your website is the organizations public face. Maintaining a clean and secure site will help to avoid deep routed problems that could potentially destroy not only you site by your reputation. Hackers can be devastating and end up costing you millions. Another aspect of your site to consider is funnel optimization. By making this a priority you will be able to effective guide customers step by step into a conversion. American With Disabilities Act (ADA) The ADA can be a freighting legal area for many entrepreneurs. Many think that ADA only applies to physical boundaries such as implementing ramps for wheelchairs and accessible bathroom stalls. However this is far from the case. Few people know that the digital world also counts. Is your website written in HTML5? If not you are in violation of ADA. This newest version of the HTML coding language allows for an audible version of a web site for those facing impaired vision. However there are some quick an easy ways to gain some ADA points to allow for more leeway in other more long-term solutions. Implementing closed captioning into your promotional videos will allow for increased accessibility for those facing an auditory disability. Investing in infrastructure is not a single step but a constant to building a good company culture where employees can feel proud of where they work and remain safe. Please comment on this article if you have any additional suggestions.
June 25, 2015
by David Schwartz
· 1,118 Views
article thumbnail
How To Ensure Application Quality with Vendor Management Vigilance
Hear Stephanie Moore, Vice President and Principal Analyst at Forrester, discuss a major challenge that 48% of IT executives say they face with existing outsourcing relationships -- poor quality. Expanding on findings in the July 2011 report "Maintaining Vendor Management Vigilance in the Overheated Global Sourcing Market", Stephanie will talk about how quality is at the heart of vendor management---whether in the processes and standards used by your vendors, the staff assigned to your projects, or the application code itself.
June 25, 2015
by Frances Lash
· 1,020 Views
article thumbnail
7 Things I Didn’t Expect to Hear at Gartner’s IT Ops Summit
Last week’s Gartner IT Operations Strategies & Solutions Summit in Orlando, Fla., was exactly what you’d expect—a place to talk about the IT operations issues impacting some of the largest companies in the world. Even so, there were a few interesting surprises. Among them: 1. Bi-modal is big. Not everyone will succeed. Gartner continued to tell its customers to employ two modes of IT—a traditional, slower moving capability for older, typically internal systems of record; and a high-speed, experimental one for new, typically customer-facing Web and mobile apps. “This is a time of experimentation and innovation,” said Gartner VP and distinguished analyst Chris Howard in his opening keynote. Organizations can’t ignore that there are multiple speeds and they should participate in all. Gartner managing VPRonni Colville added that by 2017, 75% of IT orgs will have this “bi-modal” IT capability. See also: Bi-Modal IT: Gartner Endorses Both Disruptive and Conservative Approaches to Technology However, “50% will make a mess of it,” Colville said. Why? Not necessarily because of technology failings, but more often because of a lack of people skills. 2. IT success is all about people. Donna Scott, also a Gartner VP and distinguished analyst, told her keynote audience that “you will be judged on agility, speed, and innovation.” However, the biggest problems Gartner sees for infrastructure and operations team engagement and innovation are lack of time, company culture that’s not conducive to these approaches, and a lack of business skills in IT. More than half of the people responding to an in-room poll said “people” are the part of IT ops that must change first. Not technology. Gartner research director George Spafford underscored similar issues in large organizations trying to use DevOps at scale: people and “human factors” are the biggest concerns from his in-room poll. All these probably contributed to hiring best-selling author Daniel Pink as a keynote speaker on the opening day of the conference. His focus? Not IT or architecture. Instead, he pounded home the importance of influencing people and selling internally. 3. Big orgs are trying DevOps. But the issues are different at scale. In numerous sessions I saw many hands go up when analysts asked, “Who here is trying DevOps?” Clearly, the approach is getting traction in large companies. But there’s lots of learning still to do. In fact, that was Spafford’s biggest bit of advice. “Always be learning,” he said, “trying to see what works and what breaks, especially at scale.” And, even once you’ve had some initial success, keep learning. “If you’ve done ‪DevOps, stay humble,” he advised. 4. Looking to innovative organizations for ideas … analytics on the rise. Many sessions addressed how large organizations are taking on ideas fostered by smaller, more risk-tolerant companies, and offered advice for doing so successfully. In addition to multiple discussions of DevOps, an entire session was devoted to establishing your own “Genius Bar®—a “walk-up IT support center” as explained in this CIO article. As at previous conferences, Gartner research VP Cameron Haight ran several sessions on lessons learned from firms running massive, Web-scale IT systems. “You need lots of data … and access to it inexpensively,” he said. Some commercial monitoring companies (New Relic included!) got a shout out for taking the lessons of Web scale IT to heart in their offerings. In addition, Haight said, “Analytics are increasingly important for application performance monitoring given the huge amount of data now available.” 5. Cloud: Enterprises want it, but aren’t very good at it yet. Gartner research director Dennis Smith talked through the enterprise’s interest in cloud computing. A huge majority of his in-room poll wanted some mix of both public and private cloud, while only 9% wanted to use only a private cloud environment and a measly 4% were looking to move entirely to the public cloud. The most popular choice (41%) was an 80/20 split between private and public cloud infrastructure. “Enterprises don’t make the dean’s list,” for cloud usage, Smith said, earning no more than a C average in his opinion. Large organizations are doing well at visibility, governance, and delivering standardized stacks, he said, but are less skilled at optimizing for these new environments. Still, Smith said the trends point toward enterprises improving on all fronts. 6. Cloud security can be better than yours. Importantly, Gartner VP and distinguished analyst Neil MacDonald gave the cloud a vote of confidence: noting that, for a variety of reasons, “Well-managed public cloud can be more secure than your own data center.” For example, on-premise software can pose serious security risks, he said, because of “deployment lag” where customers are stuck using software releases with unpatched security vulnerabilities. With a cloud-based Software-as-a-Service (SaaS), security updates can be more quickly rolled out to all customers. But cloud security can be different, requiring a shift to information-level security from OS-level security. Best practices include doing away with a huge pool of all-powerful sysadmins in favor of JEA, or “just enough administration,” where sysadmins have just enough privileges to do their job, and no more. An analogous security practice for compute resources is “least privilege,” where apps and microservices can’t talk to each other unless they specifically need to do so. Audience polling supported MacDonald’s optimistic view of cloud security, which suggests that large enterprises may struggle less with their cloud policies moving forward. 7. Containers: Try ’em! Ahead of this week’s DockerCon in San Francisco, Gartner devoted significant airtime to educating the audience on containers and microservices. My summary of ‪Gartner VP and distinguished analyst Tom Bittman’s advice on containers was simple: Try ’em. Now. Complement them with VMs. ‪And Docker (the company) is important, but not the be-all and end-all in this space. Bittman (copping to some deja vu from Gartner presentations he made on server virtualization 13 years ago) noted that while virtualization has been focused on admin and ops functions, containers are focused on value for developers. But because containers are well suited for driving up VM utilization for workloads that share the same OS, we can expect to see more combinations of containers and server virtualization. Finally, Bittman underscored that Gartner doesn’t see containers having much impact on premise, but making a huge difference in the cloud. That doesn’t necessarily fit with what’s been shown in other research, such as this 2015 State of Containers Survey sponsored by VMblog.com and StackEngine, so we’ll want to watch how this plays out. This is all a lot to digest. The Gartner IT Operations Strategies & Solutions Summitacknowledges the importance of dealing with existing IT systems and practices as well as promising new technologies and thinking, and tries to point a way forward. In fact, Haight had a very good quote about microservices that I thought also served to wrap up the entire event: “If you want to run with the big dogs, you need to rethink application architecture,” he said. That can be very difficult for an enterprise to fully implement … but also very appealing. Note: Al Sargent contributed to this post. All product and company names herein may be trademarks of their registered owners. Server, tortoise and hare, business team, and cloud security images courtesy ofShutterstock.com.
June 24, 2015
by Fredric Paul
· 1,820 Views
  • Previous
  • ...
  • 1462
  • 1463
  • 1464
  • 1465
  • 1466
  • 1467
  • 1468
  • 1469
  • 1470
  • 1471
  • ...
  • Next
  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook
×